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
path: root/docs
diff options
context:
space:
mode:
authorAntenore Gatta <antenore@simbiosi.org>2020-05-19 10:15:45 +0300
committerAntenore Gatta <antenore@simbiosi.org>2020-05-19 10:15:45 +0300
commit5e618d9fead713ff6b8b44425eb8b74e738782cd (patch)
treea34941187d2357dae6307cd3d0bccf85e19c85fd /docs
parent09795f861be8a5980fe9d9ab0365a32aa06c2862 (diff)
Automatic doc build by remmina-ci
Diffstat (limited to 'docs')
-rw-r--r--docs/__sidebar_8md.html103
-rw-r--r--docs/__sidebar_8md_source.html101
-rw-r--r--docs/_c_h_a_n_g_e_l_o_g_8md.html103
-rw-r--r--docs/_c_h_a_n_g_e_l_o_g_8md_source.html101
-rw-r--r--docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md.html103
-rw-r--r--docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md_source.html101
-rw-r--r--docs/_compilation-guide-for-_r_h_e_l_8md.html103
-rw-r--r--docs/_compilation-guide-for-_r_h_e_l_8md_source.html101
-rw-r--r--docs/_compilation_8md.html103
-rw-r--r--docs/_compilation_8md_source.html101
-rw-r--r--docs/_compile-on-_arch-_linux_8md.html103
-rw-r--r--docs/_compile-on-_arch-_linux_8md_source.html101
-rw-r--r--docs/_compile-on-_debian-10-_buster_8md.html103
-rw-r--r--docs/_compile-on-_debian-10-_buster_8md_source.html101
-rw-r--r--docs/_compile-on-_debian-9-_stretch_8md.html103
-rw-r--r--docs/_compile-on-_debian-9-_stretch_8md_source.html101
-rw-r--r--docs/_compile-on-_free_b_s_d_8md.html103
-rw-r--r--docs/_compile-on-_free_b_s_d_8md_source.html101
-rw-r--r--docs/_compile-on-_ubuntu-14_804_8md.html103
-rw-r--r--docs/_compile-on-_ubuntu-14_804_8md_source.html101
-rw-r--r--docs/_compile-on-_ubuntu-16_804_8md.html103
-rw-r--r--docs/_compile-on-_ubuntu-16_804_8md_source.html101
-rw-r--r--docs/_compile-on-_ubuntu-18_804_8md.html103
-rw-r--r--docs/_compile-on-_ubuntu-18_804_8md_source.html101
-rw-r--r--docs/_compile-on-_ubuntu-20_804_8md.html103
-rw-r--r--docs/_compile-on-_ubuntu-20_804_8md_source.html101
-rw-r--r--docs/_development-_notes_8md.html103
-rw-r--r--docs/_development-_notes_8md_source.html101
-rw-r--r--docs/_g_t_k-versions-on-various-distributions_8md.html103
-rw-r--r--docs/_g_t_k-versions-on-various-distributions_8md_source.html101
-rw-r--r--docs/_h_o_w_t_o-generate-the-changelog_8md.html103
-rw-r--r--docs/_h_o_w_t_o-generate-the-changelog_8md_source.html101
-rw-r--r--docs/_home_8md.html103
-rw-r--r--docs/_home_8md_source.html101
-rw-r--r--docs/_how-to-translate-_remmina_8md.html103
-rw-r--r--docs/_how-to-translate-_remmina_8md_source.html101
-rw-r--r--docs/_problems-with-_wayland_8md.html103
-rw-r--r--docs/_problems-with-_wayland_8md_source.html101
-rw-r--r--docs/_r_e_a_d_m_e_8md.html103
-rw-r--r--docs/_r_e_a_d_m_e_8md_source.html101
-rw-r--r--docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html103
-rw-r--r--docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md_source.html101
-rw-r--r--docs/_remmina-_s_s_h-_terminal-colour-schemes_8md.html103
-rw-r--r--docs/_remmina-_s_s_h-_terminal-colour-schemes_8md_source.html101
-rw-r--r--docs/_remmina-_usage-_f_a_q_8md.html103
-rw-r--r--docs/_remmina-_usage-_f_a_q_8md_source.html101
-rw-r--r--docs/_remmina-_user's-guide_8md.html103
-rw-r--r--docs/_remmina-_user's-guide_8md_source.html101
-rw-r--r--docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md.html103
-rw-r--r--docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md_source.html101
-rw-r--r--docs/_systray-menu_8md.html103
-rw-r--r--docs/_systray-menu_8md_source.html101
-rw-r--r--docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html103
-rw-r--r--docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md_source.html101
-rw-r--r--docs/_update-gettext-messages_8md.html103
-rw-r--r--docs/_update-gettext-messages_8md_source.html101
-rw-r--r--docs/annotated.html203
-rw-r--r--docs/annotated_dup.js102
-rw-r--r--docs/bc_s.pngbin0 -> 676 bytes
-rw-r--r--docs/bdwn.pngbin0 -> 147 bytes
-rw-r--r--docs/classes.html137
-rw-r--r--docs/closed.pngbin0 -> 132 bytes
-rw-r--r--docs/dir_025b464d54bdde1478f0775784ca5da1.html113
-rw-r--r--docs/dir_059c6fae417c75ea7479b164feca3607.html133
-rw-r--r--docs/dir_102f75735b5d16c1e789df8d2c0a1a6f.html119
-rw-r--r--docs/dir_1a3d72b38ed81de42b4df14ef8f2e809.html117
-rw-r--r--docs/dir_22645d582cc18eda0ab074b7cd176c78.html109
-rw-r--r--docs/dir_35e28620351c095f44ad7f2993dd5d9f.html109
-rw-r--r--docs/dir_38c8d24aef3972a7f87b834274e76e31.html131
-rw-r--r--docs/dir_4050fc95b5648853ed3ab4946fbaca56.html115
-rw-r--r--docs/dir_44f4a4140b93ab2b1a3d54fe93f215e1.html107
-rw-r--r--docs/dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html115
-rw-r--r--docs/dir_5d25c70afac6b002f7f51ae199ab2b04.html107
-rw-r--r--docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html291
-rw-r--r--docs/dir_8ac755c0af1da912ea6f652cb1f7edd7.html109
-rw-r--r--docs/dir_9662584a5e3ef571a4f03ea844ef6687.html109
-rw-r--r--docs/dir_96b2009824cf1ba1b83e0aec485e7d03.html115
-rw-r--r--docs/dir_a8375b506f1bd5852742b6f9cedbe093.html111
-rw-r--r--docs/dir_ae0d860c7818897e816988ff8df918dc.html107
-rw-r--r--docs/dir_b0856f6b0d80ccb263b2f415c91f9e17.html107
-rw-r--r--docs/dir_d1989cceabdfad53225af373aeeb6953.html107
-rw-r--r--docs/dir_fa8c5cacd6671c1854478287e377f3ab.html109
-rw-r--r--docs/dir_ff91815d22ef8e3219147b7ca619fdb5.html109
-rw-r--r--docs/doc.pngbin0 -> 746 bytes
-rw-r--r--docs/doxygen.css1596
-rw-r--r--docs/doxygen.pngbin0 -> 3779 bytes
-rw-r--r--docs/dynsections.js104
-rw-r--r--docs/exec__plugin_8c.html474
-rw-r--r--docs/exec__plugin_8c.js15
-rw-r--r--docs/exec__plugin_8c_source.html138
-rw-r--r--docs/exec__plugin__config_8h.html103
-rw-r--r--docs/exec__plugin__config_8h_source.html101
-rw-r--r--docs/files.html255
-rw-r--r--docs/files.js154
-rw-r--r--docs/folderclosed.pngbin0 -> 616 bytes
-rw-r--r--docs/folderopen.pngbin0 -> 597 bytes
-rw-r--r--docs/functions.html176
-rw-r--r--docs/functions_8sh.html103
-rw-r--r--docs/functions_8sh_source.html101
-rw-r--r--docs/functions_b.html239
-rw-r--r--docs/functions_c.html454
-rw-r--r--docs/functions_d.html272
-rw-r--r--docs/functions_dup.js27
-rw-r--r--docs/functions_e.html221
-rw-r--r--docs/functions_eval.html161
-rw-r--r--docs/functions_f.html244
-rw-r--r--docs/functions_func.html101
-rw-r--r--docs/functions_g.html149
-rw-r--r--docs/functions_h.html143
-rw-r--r--docs/functions_i.html166
-rw-r--r--docs/functions_k.html135
-rw-r--r--docs/functions_l.html184
-rw-r--r--docs/functions_m.html175
-rw-r--r--docs/functions_n.html134
-rw-r--r--docs/functions_o.html141
-rw-r--r--docs/functions_p.html446
-rw-r--r--docs/functions_q.html139
-rw-r--r--docs/functions_r.html242
-rw-r--r--docs/functions_s.html447
-rw-r--r--docs/functions_t.html216
-rw-r--r--docs/functions_u.html176
-rw-r--r--docs/functions_v.html177
-rw-r--r--docs/functions_vars.html176
-rw-r--r--docs/functions_vars.js27
-rw-r--r--docs/functions_vars_b.html239
-rw-r--r--docs/functions_vars_c.html454
-rw-r--r--docs/functions_vars_d.html269
-rw-r--r--docs/functions_vars_e.html221
-rw-r--r--docs/functions_vars_f.html199
-rw-r--r--docs/functions_vars_g.html149
-rw-r--r--docs/functions_vars_h.html143
-rw-r--r--docs/functions_vars_i.html166
-rw-r--r--docs/functions_vars_k.html135
-rw-r--r--docs/functions_vars_l.html184
-rw-r--r--docs/functions_vars_m.html175
-rw-r--r--docs/functions_vars_n.html134
-rw-r--r--docs/functions_vars_o.html141
-rw-r--r--docs/functions_vars_p.html446
-rw-r--r--docs/functions_vars_q.html139
-rw-r--r--docs/functions_vars_r.html233
-rw-r--r--docs/functions_vars_s.html438
-rw-r--r--docs/functions_vars_t.html216
-rw-r--r--docs/functions_vars_u.html176
-rw-r--r--docs/functions_vars_v.html177
-rw-r--r--docs/functions_vars_w.html133
-rw-r--r--docs/functions_vars_x.html111
-rw-r--r--docs/functions_vars_y.html108
-rw-r--r--docs/functions_w.html133
-rw-r--r--docs/functions_x.html111
-rw-r--r--docs/functions_y.html108
-rw-r--r--docs/gettranslator_8sh.html103
-rw-r--r--docs/gettranslator_8sh_source.html101
-rw-r--r--docs/glibsecret__plugin_8c.html447
-rw-r--r--docs/glibsecret__plugin_8c.js15
-rw-r--r--docs/glibsecret__plugin_8c_source.html125
-rw-r--r--docs/glibsecret__plugin_8h.html103
-rw-r--r--docs/glibsecret__plugin_8h_source.html101
-rw-r--r--docs/globals.html103
-rw-r--r--docs/globals_a.html103
-rw-r--r--docs/globals_b.html109
-rw-r--r--docs/globals_c.html195
-rw-r--r--docs/globals_d.html146
-rw-r--r--docs/globals_dup.js27
-rw-r--r--docs/globals_e.html112
-rw-r--r--docs/globals_enum.html167
-rw-r--r--docs/globals_eval.html121
-rw-r--r--docs/globals_eval.js19
-rw-r--r--docs/globals_eval_d.html106
-rw-r--r--docs/globals_eval_e.html103
-rw-r--r--docs/globals_eval_f.html121
-rw-r--r--docs/globals_eval_g.html106
-rw-r--r--docs/globals_eval_l.html111
-rw-r--r--docs/globals_eval_n.html112
-rw-r--r--docs/globals_eval_o.html103
-rw-r--r--docs/globals_eval_p.html106
-rw-r--r--docs/globals_eval_r.html637
-rw-r--r--docs/globals_eval_s.html130
-rw-r--r--docs/globals_eval_t.html118
-rw-r--r--docs/globals_eval_u.html103
-rw-r--r--docs/globals_eval_v.html103
-rw-r--r--docs/globals_eval_w.html115
-rw-r--r--docs/globals_eval_x.html103
-rw-r--r--docs/globals_f.html128
-rw-r--r--docs/globals_func.html103
-rw-r--r--docs/globals_func.js23
-rw-r--r--docs/globals_func_a.html103
-rw-r--r--docs/globals_func_b.html106
-rw-r--r--docs/globals_func_c.html154
-rw-r--r--docs/globals_func_d.html106
-rw-r--r--docs/globals_func_e.html103
-rw-r--r--docs/globals_func_f.html103
-rw-r--r--docs/globals_func_g.html123
-rw-r--r--docs/globals_func_h.html103
-rw-r--r--docs/globals_func_i.html103
-rw-r--r--docs/globals_func_k.html103
-rw-r--r--docs/globals_func_l.html103
-rw-r--r--docs/globals_func_m.html103
-rw-r--r--docs/globals_func_n.html115
-rw-r--r--docs/globals_func_o.html118
-rw-r--r--docs/globals_func_r.html3987
-rw-r--r--docs/globals_func_s.html106
-rw-r--r--docs/globals_func_u.html112
-rw-r--r--docs/globals_func_v.html103
-rw-r--r--docs/globals_func_w.html122
-rw-r--r--docs/globals_g.html147
-rw-r--r--docs/globals_h.html103
-rw-r--r--docs/globals_i.html107
-rw-r--r--docs/globals_k.html110
-rw-r--r--docs/globals_l.html126
-rw-r--r--docs/globals_m.html109
-rw-r--r--docs/globals_n.html133
-rw-r--r--docs/globals_o.html124
-rw-r--r--docs/globals_p.html115
-rw-r--r--docs/globals_q.html108
-rw-r--r--docs/globals_r.html5161
-rw-r--r--docs/globals_s.html171
-rw-r--r--docs/globals_t.html131
-rw-r--r--docs/globals_type.html428
-rw-r--r--docs/globals_u.html118
-rw-r--r--docs/globals_v.html106
-rw-r--r--docs/globals_vars.html621
-rw-r--r--docs/globals_w.html140
-rw-r--r--docs/globals_x.html106
-rw-r--r--docs/i18nstats_8sh.html103
-rw-r--r--docs/i18nstats_8sh_source.html101
-rw-r--r--docs/index.html133
-rw-r--r--docs/jquery.js87
-rw-r--r--docs/kwallet__plugin_8h.html220
-rw-r--r--docs/kwallet__plugin_8h.js8
-rw-r--r--docs/kwallet__plugin_8h_source.html106
-rw-r--r--docs/kwallet__plugin__main_8c.html380
-rw-r--r--docs/kwallet__plugin__main_8c.js12
-rw-r--r--docs/kwallet__plugin__main_8c_source.html125
-rw-r--r--docs/launcher_8sh.html103
-rw-r--r--docs/launcher_8sh_source.html101
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html171
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html113
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html113
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html107
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html111
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html108
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html122
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html107
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html107
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html124
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html109
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html114
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html125
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__home.html159
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html117
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html103
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html140
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html105
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html117
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html108
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html136
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html110
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html149
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html113
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html116
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html112
-rw-r--r--docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html156
-rw-r--r--docs/md__c_h_a_n_g_e_l_o_g.html661
-rw-r--r--docs/md__c_o_n_t_r_i_b_u_t_i_n_g.html163
-rw-r--r--docs/menu.js26
-rw-r--r--docs/menudata.js151
-rw-r--r--docs/multi-monitor-support_8md.html103
-rw-r--r--docs/multi-monitor-support_8md_source.html101
-rw-r--r--docs/nav_f.pngbin0 -> 153 bytes
-rw-r--r--docs/nav_g.pngbin0 -> 95 bytes
-rw-r--r--docs/nav_h.pngbin0 -> 98 bytes
-rw-r--r--docs/navtree.css146
-rw-r--r--docs/navtree.js517
-rw-r--r--docs/navtreedata.js79
-rw-r--r--docs/navtreeindex0.js253
-rw-r--r--docs/navtreeindex1.js253
-rw-r--r--docs/navtreeindex10.js253
-rw-r--r--docs/navtreeindex11.js253
-rw-r--r--docs/navtreeindex12.js253
-rw-r--r--docs/navtreeindex13.js253
-rw-r--r--docs/navtreeindex14.js253
-rw-r--r--docs/navtreeindex15.js24
-rw-r--r--docs/navtreeindex2.js253
-rw-r--r--docs/navtreeindex3.js253
-rw-r--r--docs/navtreeindex4.js253
-rw-r--r--docs/navtreeindex5.js253
-rw-r--r--docs/navtreeindex6.js253
-rw-r--r--docs/navtreeindex7.js253
-rw-r--r--docs/navtreeindex8.js253
-rw-r--r--docs/navtreeindex9.js253
-rw-r--r--docs/nx__plugin_8c.html1176
-rw-r--r--docs/nx__plugin_8c.js37
-rw-r--r--docs/nx__plugin_8c_source.html238
-rw-r--r--docs/nx__plugin_8h.html193
-rw-r--r--docs/nx__plugin_8h.js13
-rw-r--r--docs/nx__plugin_8h_source.html128
-rw-r--r--docs/nx__session_8c.html1491
-rw-r--r--docs/nx__session_8c.js46
-rw-r--r--docs/nx__session_8c_source.html177
-rw-r--r--docs/nx__session_8h.html951
-rw-r--r--docs/nx__session_8h.js37
-rw-r--r--docs/nx__session_8h_source.html139
-rw-r--r--docs/nx__session__manager_8c.html390
-rw-r--r--docs/nx__session__manager_8c.js10
-rw-r--r--docs/nx__session__manager_8c_source.html144
-rw-r--r--docs/nx__session__manager_8h.html132
-rw-r--r--docs/nx__session__manager_8h.js4
-rw-r--r--docs/nx__session__manager_8h_source.html103
-rw-r--r--docs/open.pngbin0 -> 123 bytes
-rw-r--r--docs/org.remmina.Remmina.pngbin0 -> 7791 bytes
-rw-r--r--docs/pages.html134
-rw-r--r--docs/plugin_8c.html312
-rw-r--r--docs/plugin_8c.js10
-rw-r--r--docs/plugin_8c_source.html121
-rw-r--r--docs/plugin_8h.html316
-rw-r--r--docs/plugin_8h.js28
-rw-r--r--docs/plugin_8h_source.html181
-rw-r--r--docs/plugin__config_8h.html103
-rw-r--r--docs/plugin__config_8h_source.html101
-rw-r--r--docs/rcw_8c.html4944
-rw-r--r--docs/rcw_8c.js136
-rw-r--r--docs/rcw_8c_source.html399
-rw-r--r--docs/rcw_8h.html485
-rw-r--r--docs/rcw_8h.js22
-rw-r--r--docs/rcw_8h_source.html126
-rw-r--r--docs/rdp__channels_8c.html174
-rw-r--r--docs/rdp__channels_8c.js5
-rw-r--r--docs/rdp__channels_8c_source.html119
-rw-r--r--docs/rdp__channels_8h.html174
-rw-r--r--docs/rdp__channels_8h.js5
-rw-r--r--docs/rdp__channels_8h_source.html103
-rw-r--r--docs/rdp__cliprdr_8c.html998
-rw-r--r--docs/rdp__cliprdr_8c.js30
-rw-r--r--docs/rdp__cliprdr_8c_source.html168
-rw-r--r--docs/rdp__cliprdr_8h.html314
-rw-r--r--docs/rdp__cliprdr_8h.js11
-rw-r--r--docs/rdp__cliprdr_8h_source.html113
-rw-r--r--docs/rdp__event_8c.html1712
-rw-r--r--docs/rdp__event_8c.js45
-rw-r--r--docs/rdp__event_8c_source.html247
-rw-r--r--docs/rdp__event_8h.html366
-rw-r--r--docs/rdp__event_8h.js12
-rw-r--r--docs/rdp__event_8h_source.html112
-rw-r--r--docs/rdp__file_8c.html316
-rw-r--r--docs/rdp__file_8c.js10
-rw-r--r--docs/rdp__file_8c_source.html118
-rw-r--r--docs/rdp__file_8h.html208
-rw-r--r--docs/rdp__file_8h.js7
-rw-r--r--docs/rdp__file_8h_source.html106
-rw-r--r--docs/rdp__graphics_8c.html810
-rw-r--r--docs/rdp__graphics_8c.js20
-rw-r--r--docs/rdp__graphics_8c_source.html147
-rw-r--r--docs/rdp__graphics_8h.html132
-rw-r--r--docs/rdp__graphics_8h.js4
-rw-r--r--docs/rdp__graphics_8h_source.html103
-rw-r--r--docs/rdp__plugin_8c.html1834
-rw-r--r--docs/rdp__plugin_8c.js54
-rw-r--r--docs/rdp__plugin_8c_source.html306
-rw-r--r--docs/rdp__plugin_8h.html630
-rw-r--r--docs/rdp__plugin_8h.js65
-rw-r--r--docs/rdp__plugin_8h_source.html265
-rw-r--r--docs/rdp__settings_8c.html718
-rw-r--r--docs/rdp__settings_8c.js25
-rw-r--r--docs/rdp__settings_8c_source.html151
-rw-r--r--docs/rdp__settings_8h.html214
-rw-r--r--docs/rdp__settings_8h.js7
-rw-r--r--docs/rdp__settings_8h_source.html105
-rw-r--r--docs/remmina_8c.html382
-rw-r--r--docs/remmina_8c.js12
-rw-r--r--docs/remmina_8c_source.html156
-rw-r--r--docs/remmina_8h.html128
-rw-r--r--docs/remmina_8h.js4
-rw-r--r--docs/remmina_8h_source.html102
-rw-r--r--docs/remmina__about_8c.html132
-rw-r--r--docs/remmina__about_8c.js4
-rw-r--r--docs/remmina__about_8c_source.html106
-rw-r--r--docs/remmina__about_8h.html132
-rw-r--r--docs/remmina__about_8h.js4
-rw-r--r--docs/remmina__about_8h_source.html102
-rw-r--r--docs/remmina__applet__menu_8c.html578
-rw-r--r--docs/remmina__applet__menu_8c.js19
-rw-r--r--docs/remmina__applet__menu_8c_source.html132
-rw-r--r--docs/remmina__applet__menu_8h.html364
-rw-r--r--docs/remmina__applet__menu_8h.js19
-rw-r--r--docs/remmina__applet__menu_8h_source.html120
-rw-r--r--docs/remmina__applet__menu__item_8c.html278
-rw-r--r--docs/remmina__applet__menu__item_8c.js8
-rw-r--r--docs/remmina__applet__menu__item_8c_source.html121
-rw-r--r--docs/remmina__applet__menu__item_8h.html276
-rw-r--r--docs/remmina__applet__menu__item_8h.js15
-rw-r--r--docs/remmina__applet__menu__item_8h_source.html121
-rw-r--r--docs/remmina__avahi_8c.html469
-rw-r--r--docs/remmina__avahi_8c.js12
-rw-r--r--docs/remmina__avahi_8c_source.html122
-rw-r--r--docs/remmina__avahi_8h.html244
-rw-r--r--docs/remmina__avahi_8h.js10
-rw-r--r--docs/remmina__avahi_8h_source.html112
-rw-r--r--docs/remmina__chat__window_8c.html517
-rw-r--r--docs/remmina__chat__window_8c.js14
-rw-r--r--docs/remmina__chat__window_8c_source.html119
-rw-r--r--docs/remmina__chat__window_8h.html245
-rw-r--r--docs/remmina__chat__window_8h.js10
-rw-r--r--docs/remmina__chat__window_8h_source.html112
-rw-r--r--docs/remmina__crypt_8c.html184
-rw-r--r--docs/remmina__crypt_8c.js6
-rw-r--r--docs/remmina__crypt_8c_source.html109
-rw-r--r--docs/remmina__crypt_8h.html154
-rw-r--r--docs/remmina__crypt_8h.js5
-rw-r--r--docs/remmina__crypt_8h_source.html103
-rw-r--r--docs/remmina__exec_8c.html391
-rw-r--r--docs/remmina__exec_8c.js12
-rw-r--r--docs/remmina__exec_8c_source.html175
-rw-r--r--docs/remmina__exec_8h.html298
-rw-r--r--docs/remmina__exec_8h.js26
-rw-r--r--docs/remmina__exec_8h_source.html122
-rw-r--r--docs/remmina__ext__exec_8c.html188
-rw-r--r--docs/remmina__ext__exec_8c.js5
-rw-r--r--docs/remmina__ext__exec_8c_source.html117
-rw-r--r--docs/remmina__ext__exec_8h.html148
-rw-r--r--docs/remmina__ext__exec_8h.js5
-rw-r--r--docs/remmina__ext__exec_8h_source.html108
-rw-r--r--docs/remmina__external__tools_8c.html228
-rw-r--r--docs/remmina__external__tools_8c.js6
-rw-r--r--docs/remmina__external__tools_8c_source.html113
-rw-r--r--docs/remmina__external__tools_8h.html142
-rw-r--r--docs/remmina__external__tools_8h.js4
-rw-r--r--docs/remmina__external__tools_8h_source.html106
-rw-r--r--docs/remmina__file_8c.html962
-rw-r--r--docs/remmina__file_8c.js32
-rw-r--r--docs/remmina__file_8c_source.html177
-rw-r--r--docs/remmina__file_8h.html831
-rw-r--r--docs/remmina__file_8h.js33
-rw-r--r--docs/remmina__file_8h_source.html137
-rw-r--r--docs/remmina__file__editor_8c.html1917
-rw-r--r--docs/remmina__file__editor_8c.js47
-rw-r--r--docs/remmina__file__editor_8c_source.html243
-rw-r--r--docs/remmina__file__editor_8h.html357
-rw-r--r--docs/remmina__file__editor_8h.js16
-rw-r--r--docs/remmina__file__editor_8h_source.html118
-rw-r--r--docs/remmina__file__manager_8c.html412
-rw-r--r--docs/remmina__file__manager_8c.js14
-rw-r--r--docs/remmina__file__manager_8c_source.html134
-rw-r--r--docs/remmina__file__manager_8h.html301
-rw-r--r--docs/remmina__file__manager_8h.js12
-rw-r--r--docs/remmina__file__manager_8h_source.html115
-rw-r--r--docs/remmina__filezilla__sftp_8sh.html103
-rw-r--r--docs/remmina__filezilla__sftp_8sh_source.html101
-rw-r--r--docs/remmina__filezilla__sftp__pki_8sh.html103
-rw-r--r--docs/remmina__filezilla__sftp__pki_8sh_source.html101
-rw-r--r--docs/remmina__ftp__client_8c.html2132
-rw-r--r--docs/remmina__ftp__client_8c.js63
-rw-r--r--docs/remmina__ftp__client_8c_source.html223
-rw-r--r--docs/remmina__ftp__client_8h.html742
-rw-r--r--docs/remmina__ftp__client_8h.js54
-rw-r--r--docs/remmina__ftp__client_8h_source.html167
-rw-r--r--docs/remmina__icon_8c.html779
-rw-r--r--docs/remmina__icon_8c.js25
-rw-r--r--docs/remmina__icon_8c_source.html178
-rw-r--r--docs/remmina__icon_8h.html247
-rw-r--r--docs/remmina__icon_8h.js9
-rw-r--r--docs/remmina__icon_8h_source.html107
-rw-r--r--docs/remmina__key__chooser_8c.html242
-rw-r--r--docs/remmina__key__chooser_8c.js7
-rw-r--r--docs/remmina__key__chooser_8c_source.html115
-rw-r--r--docs/remmina__key__chooser_8h.html223
-rw-r--r--docs/remmina__key__chooser_8h.js8
-rw-r--r--docs/remmina__key__chooser_8h_source.html110
-rw-r--r--docs/remmina__log_8c.html548
-rw-r--r--docs/remmina__log_8c.js20
-rw-r--r--docs/remmina__log_8c_source.html130
-rw-r--r--docs/remmina__log_8h.html244
-rw-r--r--docs/remmina__log_8h.js8
-rw-r--r--docs/remmina__log_8h_source.html106
-rw-r--r--docs/remmina__main_8c.html2746
-rw-r--r--docs/remmina__main_8c.js85
-rw-r--r--docs/remmina__main_8c_source.html311
-rw-r--r--docs/remmina__main_8h.html1132
-rw-r--r--docs/remmina__main_8h.js35
-rw-r--r--docs/remmina__main_8h_source.html170
-rw-r--r--docs/remmina__marshals_8c.html222
-rw-r--r--docs/remmina__marshals_8c.js5
-rw-r--r--docs/remmina__marshals_8c_source.html104
-rw-r--r--docs/remmina__marshals_8h.html218
-rw-r--r--docs/remmina__marshals_8h.js5
-rw-r--r--docs/remmina__marshals_8h_source.html103
-rw-r--r--docs/remmina__masterthread__exec_8c.html267
-rw-r--r--docs/remmina__masterthread__exec_8c.js9
-rw-r--r--docs/remmina__masterthread__exec_8c_source.html140
-rw-r--r--docs/remmina__masterthread__exec_8h.html203
-rw-r--r--docs/remmina__masterthread__exec_8h.js8
-rw-r--r--docs/remmina__masterthread__exec_8h_source.html174
-rw-r--r--docs/remmina__message__panel_8c.html823
-rw-r--r--docs/remmina__message__panel_8c.js24
-rw-r--r--docs/remmina__message__panel_8c_source.html146
-rw-r--r--docs/remmina__message__panel_8h.html744
-rw-r--r--docs/remmina__message__panel_8h.js29
-rw-r--r--docs/remmina__message__panel_8h_source.html127
-rw-r--r--docs/remmina__mpchange_8c.html628
-rw-r--r--docs/remmina__mpchange_8c.js22
-rw-r--r--docs/remmina__mpchange_8c_source.html159
-rw-r--r--docs/remmina__mpchange_8h.html160
-rw-r--r--docs/remmina__mpchange_8h.js4
-rw-r--r--docs/remmina__mpchange_8h_source.html107
-rw-r--r--docs/remmina__nslookup_8sh.html103
-rw-r--r--docs/remmina__nslookup_8sh_source.html101
-rw-r--r--docs/remmina__ping_8sh.html103
-rw-r--r--docs/remmina__ping_8sh_source.html101
-rw-r--r--docs/remmina__plugin_8h.html128
-rw-r--r--docs/remmina__plugin_8h.js4
-rw-r--r--docs/remmina__plugin_8h_source.html104
-rw-r--r--docs/remmina__plugin__manager_8c.html822
-rw-r--r--docs/remmina__plugin__manager_8c.js28
-rw-r--r--docs/remmina__plugin__manager_8c_source.html246
-rw-r--r--docs/remmina__plugin__manager_8h.html501
-rw-r--r--docs/remmina__plugin__manager_8h.js18
-rw-r--r--docs/remmina__plugin__manager_8h_source.html126
-rw-r--r--docs/remmina__pref_8c.html832
-rw-r--r--docs/remmina__pref_8c.js32
-rw-r--r--docs/remmina__pref_8c_source.html245
-rw-r--r--docs/remmina__pref_8h.html902
-rw-r--r--docs/remmina__pref_8h.js53
-rw-r--r--docs/remmina__pref_8h_source.html249
-rw-r--r--docs/remmina__pref__dialog_8c.html631
-rw-r--r--docs/remmina__pref__dialog_8c.js19
-rw-r--r--docs/remmina__pref__dialog_8c_source.html316
-rw-r--r--docs/remmina__pref__dialog_8h.html272
-rw-r--r--docs/remmina__pref__dialog_8h.js13
-rw-r--r--docs/remmina__pref__dialog_8h_source.html197
-rw-r--r--docs/remmina__protocol__widget_8c.html3290
-rw-r--r--docs/remmina__protocol__widget_8c.js112
-rw-r--r--docs/remmina__protocol__widget_8c_source.html381
-rw-r--r--docs/remmina__protocol__widget_8h.html2130
-rw-r--r--docs/remmina__protocol__widget_8h.js76
-rw-r--r--docs/remmina__protocol__widget_8h_source.html193
-rw-r--r--docs/remmina__public_8c.html976
-rw-r--r--docs/remmina__public_8c.js28
-rw-r--r--docs/remmina__public_8c_source.html128
-rw-r--r--docs/remmina__public_8h.html976
-rw-r--r--docs/remmina__public_8h.js28
-rw-r--r--docs/remmina__public_8h_source.html126
-rw-r--r--docs/remmina__scheduler_8c.html206
-rw-r--r--docs/remmina__scheduler_8c.js6
-rw-r--r--docs/remmina__scheduler_8c_source.html112
-rw-r--r--docs/remmina__scheduler_8h.html160
-rw-r--r--docs/remmina__scheduler_8h.js5
-rw-r--r--docs/remmina__scheduler_8h_source.html108
-rw-r--r--docs/remmina__scrolled__viewport_8c.html460
-rw-r--r--docs/remmina__scrolled__viewport_8c.js13
-rw-r--r--docs/remmina__scrolled__viewport_8c_source.html120
-rw-r--r--docs/remmina__scrolled__viewport_8h.html219
-rw-r--r--docs/remmina__scrolled__viewport_8h.js10
-rw-r--r--docs/remmina__scrolled__viewport_8h_source.html112
-rw-r--r--docs/remmina__sftp__client_8c.html1092
-rw-r--r--docs/remmina__sftp__client_8c.js26
-rw-r--r--docs/remmina__sftp__client_8c_source.html188
-rw-r--r--docs/remmina__sftp__client_8h.html260
-rw-r--r--docs/remmina__sftp__client_8h.js11
-rw-r--r--docs/remmina__sftp__client_8h_source.html123
-rw-r--r--docs/remmina__sftp__plugin_8c.html594
-rw-r--r--docs/remmina__sftp__plugin_8c.js19
-rw-r--r--docs/remmina__sftp__plugin_8c_source.html186
-rw-r--r--docs/remmina__sftp__plugin_8h.html170
-rw-r--r--docs/remmina__sftp__plugin_8h.js5
-rw-r--r--docs/remmina__sftp__plugin_8h_source.html104
-rw-r--r--docs/remmina__sodium_8c.html221
-rw-r--r--docs/remmina__sodium_8c.js7
-rw-r--r--docs/remmina__sodium_8c_source.html107
-rw-r--r--docs/remmina__sodium_8h.html208
-rw-r--r--docs/remmina__sodium_8h.js7
-rw-r--r--docs/remmina__sodium_8h_source.html105
-rw-r--r--docs/remmina__ssh_8c.html499
-rw-r--r--docs/remmina__ssh_8c.js15
-rw-r--r--docs/remmina__ssh_8c_source.html247
-rw-r--r--docs/remmina__ssh_8h.html1072
-rw-r--r--docs/remmina__ssh_8h.js52
-rw-r--r--docs/remmina__ssh_8h_source.html211
-rw-r--r--docs/remmina__ssh__plugin_8c.html1377
-rw-r--r--docs/remmina__ssh__plugin_8c.js51
-rw-r--r--docs/remmina__ssh__plugin_8c_source.html262
-rw-r--r--docs/remmina__ssh__plugin_8h.html338
-rw-r--r--docs/remmina__ssh__plugin_8h.js11
-rw-r--r--docs/remmina__ssh__plugin_8h_source.html116
-rw-r--r--docs/remmina__stats_8c.html539
-rw-r--r--docs/remmina__stats_8c.js18
-rw-r--r--docs/remmina__stats_8c_source.html160
-rw-r--r--docs/remmina__stats_8h.html138
-rw-r--r--docs/remmina__stats_8h.js4
-rw-r--r--docs/remmina__stats_8h_source.html102
-rw-r--r--docs/remmina__stats__sender_8c.html389
-rw-r--r--docs/remmina__stats__sender_8c.js13
-rw-r--r--docs/remmina__stats__sender_8c_source.html126
-rw-r--r--docs/remmina__stats__sender_8h.html176
-rw-r--r--docs/remmina__stats__sender_8h.js6
-rw-r--r--docs/remmina__stats__sender_8h_source.html104
-rw-r--r--docs/remmina__string__array_8c.html442
-rw-r--r--docs/remmina__string__array_8c.js15
-rw-r--r--docs/remmina__string__array_8c_source.html116
-rw-r--r--docs/remmina__string__array_8h.html425
-rw-r--r--docs/remmina__string__array_8h.js15
-rw-r--r--docs/remmina__string__array_8h_source.html113
-rw-r--r--docs/remmina__string__list_8c.html539
-rw-r--r--docs/remmina__string__list_8c.js17
-rw-r--r--docs/remmina__string__list_8c_source.html141
-rw-r--r--docs/remmina__string__list_8h.html313
-rw-r--r--docs/remmina__string__list_8h.js13
-rw-r--r--docs/remmina__string__list_8h_source.html129
-rw-r--r--docs/remmina__sysinfo_8c.html186
-rw-r--r--docs/remmina__sysinfo_8c.js6
-rw-r--r--docs/remmina__sysinfo_8c_source.html106
-rw-r--r--docs/remmina__sysinfo_8h.html186
-rw-r--r--docs/remmina__sysinfo_8h.js6
-rw-r--r--docs/remmina__sysinfo_8h_source.html104
-rw-r--r--docs/remmina__trace__calls_8h.html128
-rw-r--r--docs/remmina__trace__calls_8h.js4
-rw-r--r--docs/remmina__trace__calls_8h_source.html102
-rw-r--r--docs/remmina__traceroute_8sh.html103
-rw-r--r--docs/remmina__traceroute_8sh_source.html101
-rw-r--r--docs/remmina__unlock_8c.html359
-rw-r--r--docs/remmina__unlock_8c.js12
-rw-r--r--docs/remmina__unlock_8c_source.html128
-rw-r--r--docs/remmina__unlock_8h.html200
-rw-r--r--docs/remmina__unlock_8h.js8
-rw-r--r--docs/remmina__unlock_8h_source.html113
-rw-r--r--docs/remmina__utils_8c.html757
-rw-r--r--docs/remmina__utils_8c.js27
-rw-r--r--docs/remmina__utils_8c_source.html130
-rw-r--r--docs/remmina__utils_8h.html594
-rw-r--r--docs/remmina__utils_8h.js19
-rw-r--r--docs/remmina__utils_8h_source.html117
-rw-r--r--docs/remmina__widget__pool_8c.html343
-rw-r--r--docs/remmina__widget__pool_8c.js11
-rw-r--r--docs/remmina__widget__pool_8c_source.html113
-rw-r--r--docs/remmina__widget__pool_8h.html295
-rw-r--r--docs/remmina__widget__pool_8h.js10
-rw-r--r--docs/remmina__widget__pool_8h_source.html108
-rw-r--r--docs/resize.js114
-rw-r--r--docs/rmnews_8c.html577
-rw-r--r--docs/rmnews_8c.js20
-rw-r--r--docs/rmnews_8c_source.html156
-rw-r--r--docs/rmnews_8h.html199
-rw-r--r--docs/rmnews_8h.js8
-rw-r--r--docs/rmnews_8h_source.html115
-rw-r--r--docs/search/all_0.html26
-rw-r--r--docs/search/all_0.js83
-rw-r--r--docs/search/all_1.html26
-rw-r--r--docs/search/all_1.js29
-rw-r--r--docs/search/all_10.html26
-rw-r--r--docs/search/all_10.js25
-rw-r--r--docs/search/all_11.html26
-rw-r--r--docs/search/all_11.js1710
-rw-r--r--docs/search/all_12.html26
-rw-r--r--docs/search/all_12.js143
-rw-r--r--docs/search/all_13.html26
-rw-r--r--docs/search/all_13.js55
-rw-r--r--docs/search/all_14.html26
-rw-r--r--docs/search/all_14.js36
-rw-r--r--docs/search/all_15.html26
-rw-r--r--docs/search/all_15.js31
-rw-r--r--docs/search/all_16.html26
-rw-r--r--docs/search/all_16.js28
-rw-r--r--docs/search/all_17.html26
-rw-r--r--docs/search/all_17.js8
-rw-r--r--docs/search/all_18.html26
-rw-r--r--docs/search/all_18.js4
-rw-r--r--docs/search/all_2.html26
-rw-r--r--docs/search/all_2.js50
-rw-r--r--docs/search/all_3.html26
-rw-r--r--docs/search/all_3.js162
-rw-r--r--docs/search/all_4.html26
-rw-r--r--docs/search/all_4.js69
-rw-r--r--docs/search/all_5.html26
-rw-r--r--docs/search/all_5.js48
-rw-r--r--docs/search/all_6.html26
-rw-r--r--docs/search/all_6.js59
-rw-r--r--docs/search/all_7.html26
-rw-r--r--docs/search/all_7.js35
-rw-r--r--docs/search/all_8.html26
-rw-r--r--docs/search/all_8.js22
-rw-r--r--docs/search/all_9.html26
-rw-r--r--docs/search/all_9.js27
-rw-r--r--docs/search/all_a.html26
-rw-r--r--docs/search/all_a.js19
-rw-r--r--docs/search/all_b.html26
-rw-r--r--docs/search/all_b.js39
-rw-r--r--docs/search/all_c.html26
-rw-r--r--docs/search/all_c.js34
-rw-r--r--docs/search/all_d.html26
-rw-r--r--docs/search/all_d.js27
-rw-r--r--docs/search/all_e.html26
-rw-r--r--docs/search/all_e.js23
-rw-r--r--docs/search/all_f.html26
-rw-r--r--docs/search/all_f.js118
-rw-r--r--docs/search/classes_0.html26
-rw-r--r--docs/search/classes_0.js81
-rw-r--r--docs/search/classes_1.html26
-rw-r--r--docs/search/classes_1.js4
-rw-r--r--docs/search/classes_2.html26
-rw-r--r--docs/search/classes_2.js4
-rw-r--r--docs/search/classes_3.html26
-rw-r--r--docs/search/classes_3.js5
-rw-r--r--docs/search/classes_4.html26
-rw-r--r--docs/search/classes_4.js4
-rw-r--r--docs/search/classes_5.html26
-rw-r--r--docs/search/classes_5.js5
-rw-r--r--docs/search/classes_6.html26
-rw-r--r--docs/search/classes_6.js16
-rw-r--r--docs/search/classes_7.html26
-rw-r--r--docs/search/classes_7.js4
-rw-r--r--docs/search/close.pngbin0 -> 273 bytes
-rw-r--r--docs/search/enums_0.html26
-rw-r--r--docs/search/enums_0.js4
-rw-r--r--docs/search/enums_1.html26
-rw-r--r--docs/search/enums_1.js4
-rw-r--r--docs/search/enums_2.html26
-rw-r--r--docs/search/enums_2.js23
-rw-r--r--docs/search/enums_3.html26
-rw-r--r--docs/search/enums_3.js4
-rw-r--r--docs/search/enumvalues_0.html26
-rw-r--r--docs/search/enumvalues_0.js10
-rw-r--r--docs/search/enumvalues_1.html26
-rw-r--r--docs/search/enumvalues_1.js5
-rw-r--r--docs/search/enumvalues_2.html26
-rw-r--r--docs/search/enumvalues_2.js4
-rw-r--r--docs/search/enumvalues_3.html26
-rw-r--r--docs/search/enumvalues_3.js25
-rw-r--r--docs/search/enumvalues_4.html26
-rw-r--r--docs/search/enumvalues_4.js5
-rw-r--r--docs/search/enumvalues_5.html26
-rw-r--r--docs/search/enumvalues_5.js6
-rw-r--r--docs/search/enumvalues_6.html26
-rw-r--r--docs/search/enumvalues_6.js7
-rw-r--r--docs/search/enumvalues_7.html26
-rw-r--r--docs/search/enumvalues_7.js4
-rw-r--r--docs/search/enumvalues_8.html26
-rw-r--r--docs/search/enumvalues_8.js5
-rw-r--r--docs/search/enumvalues_9.html26
-rw-r--r--docs/search/enumvalues_9.js185
-rw-r--r--docs/search/enumvalues_a.html26
-rw-r--r--docs/search/enumvalues_a.js16
-rw-r--r--docs/search/enumvalues_b.html26
-rw-r--r--docs/search/enumvalues_b.js9
-rw-r--r--docs/search/enumvalues_c.html26
-rw-r--r--docs/search/enumvalues_c.js4
-rw-r--r--docs/search/enumvalues_d.html26
-rw-r--r--docs/search/enumvalues_d.js4
-rw-r--r--docs/search/enumvalues_e.html26
-rw-r--r--docs/search/enumvalues_e.js8
-rw-r--r--docs/search/enumvalues_f.html26
-rw-r--r--docs/search/enumvalues_f.js4
-rw-r--r--docs/search/files_0.html26
-rw-r--r--docs/search/files_0.js4
-rw-r--r--docs/search/files_1.html26
-rw-r--r--docs/search/files_1.js15
-rw-r--r--docs/search/files_10.html26
-rw-r--r--docs/search/files_10.js6
-rw-r--r--docs/search/files_11.html26
-rw-r--r--docs/search/files_11.js6
-rw-r--r--docs/search/files_12.html26
-rw-r--r--docs/search/files_12.js8
-rw-r--r--docs/search/files_13.html26
-rw-r--r--docs/search/files_13.js4
-rw-r--r--docs/search/files_2.html26
-rw-r--r--docs/search/files_2.js4
-rw-r--r--docs/search/files_3.html26
-rw-r--r--docs/search/files_3.js5
-rw-r--r--docs/search/files_4.html26
-rw-r--r--docs/search/files_4.js4
-rw-r--r--docs/search/files_5.html26
-rw-r--r--docs/search/files_5.js7
-rw-r--r--docs/search/files_6.html26
-rw-r--r--docs/search/files_6.js6
-rw-r--r--docs/search/files_7.html26
-rw-r--r--docs/search/files_7.js4
-rw-r--r--docs/search/files_8.html26
-rw-r--r--docs/search/files_8.js5
-rw-r--r--docs/search/files_9.html26
-rw-r--r--docs/search/files_9.js4
-rw-r--r--docs/search/files_a.html26
-rw-r--r--docs/search/files_a.js4
-rw-r--r--docs/search/files_b.html26
-rw-r--r--docs/search/files_b.js9
-rw-r--r--docs/search/files_c.html26
-rw-r--r--docs/search/files_c.js7
-rw-r--r--docs/search/files_d.html26
-rw-r--r--docs/search/files_d.js118
-rw-r--r--docs/search/files_e.html26
-rw-r--r--docs/search/files_e.js10
-rw-r--r--docs/search/files_f.html26
-rw-r--r--docs/search/files_f.js11
-rw-r--r--docs/search/functions_0.html26
-rw-r--r--docs/search/functions_0.js4
-rw-r--r--docs/search/functions_1.html26
-rw-r--r--docs/search/functions_1.js4
-rw-r--r--docs/search/functions_10.html26
-rw-r--r--docs/search/functions_10.js5
-rw-r--r--docs/search/functions_11.html26
-rw-r--r--docs/search/functions_11.js7
-rw-r--r--docs/search/functions_12.html26
-rw-r--r--docs/search/functions_12.js4
-rw-r--r--docs/search/functions_13.html26
-rw-r--r--docs/search/functions_13.js9
-rw-r--r--docs/search/functions_2.html26
-rw-r--r--docs/search/functions_2.js5
-rw-r--r--docs/search/functions_3.html26
-rw-r--r--docs/search/functions_3.js21
-rw-r--r--docs/search/functions_4.html26
-rw-r--r--docs/search/functions_4.js6
-rw-r--r--docs/search/functions_5.html26
-rw-r--r--docs/search/functions_5.js4
-rw-r--r--docs/search/functions_6.html26
-rw-r--r--docs/search/functions_6.js4
-rw-r--r--docs/search/functions_7.html26
-rw-r--r--docs/search/functions_7.js8
-rw-r--r--docs/search/functions_8.html26
-rw-r--r--docs/search/functions_8.js4
-rw-r--r--docs/search/functions_9.html26
-rw-r--r--docs/search/functions_9.js4
-rw-r--r--docs/search/functions_a.html26
-rw-r--r--docs/search/functions_a.js4
-rw-r--r--docs/search/functions_b.html26
-rw-r--r--docs/search/functions_b.js4
-rw-r--r--docs/search/functions_c.html26
-rw-r--r--docs/search/functions_c.js4
-rw-r--r--docs/search/functions_d.html26
-rw-r--r--docs/search/functions_d.js8
-rw-r--r--docs/search/functions_e.html26
-rw-r--r--docs/search/functions_e.js8
-rw-r--r--docs/search/functions_f.html26
-rw-r--r--docs/search/functions_f.js1160
-rw-r--r--docs/search/mag_sel.pngbin0 -> 563 bytes
-rw-r--r--docs/search/nomatches.html12
-rw-r--r--docs/search/pages_0.html26
-rw-r--r--docs/search/pages_0.js8
-rw-r--r--docs/search/pages_1.html26
-rw-r--r--docs/search/pages_1.js4
-rw-r--r--docs/search/pages_2.html26
-rw-r--r--docs/search/pages_2.js4
-rw-r--r--docs/search/pages_3.html26
-rw-r--r--docs/search/pages_3.js5
-rw-r--r--docs/search/pages_4.html26
-rw-r--r--docs/search/pages_4.js4
-rw-r--r--docs/search/pages_5.html26
-rw-r--r--docs/search/pages_5.js4
-rw-r--r--docs/search/pages_6.html26
-rw-r--r--docs/search/pages_6.js10
-rw-r--r--docs/search/pages_7.html26
-rw-r--r--docs/search/pages_7.js7
-rw-r--r--docs/search/pages_8.html26
-rw-r--r--docs/search/pages_8.js4
-rw-r--r--docs/search/pages_9.html26
-rw-r--r--docs/search/pages_9.js6
-rw-r--r--docs/search/pages_a.html26
-rw-r--r--docs/search/pages_a.js5
-rw-r--r--docs/search/search.css271
-rw-r--r--docs/search/search.js791
-rw-r--r--docs/search/search_l.pngbin0 -> 604 bytes
-rw-r--r--docs/search/search_m.pngbin0 -> 158 bytes
-rw-r--r--docs/search/search_r.pngbin0 -> 612 bytes
-rw-r--r--docs/search/searchdata.js39
-rw-r--r--docs/search/typedefs_0.html26
-rw-r--r--docs/search/typedefs_0.js4
-rw-r--r--docs/search/typedefs_1.html26
-rw-r--r--docs/search/typedefs_1.js4
-rw-r--r--docs/search/typedefs_2.html26
-rw-r--r--docs/search/typedefs_2.js4
-rw-r--r--docs/search/typedefs_3.html26
-rw-r--r--docs/search/typedefs_3.js105
-rw-r--r--docs/search/variables_0.html26
-rw-r--r--docs/search/variables_0.js28
-rw-r--r--docs/search/variables_1.html26
-rw-r--r--docs/search/variables_1.js48
-rw-r--r--docs/search/variables_10.html26
-rw-r--r--docs/search/variables_10.js127
-rw-r--r--docs/search/variables_11.html26
-rw-r--r--docs/search/variables_11.js119
-rw-r--r--docs/search/variables_12.html26
-rw-r--r--docs/search/variables_12.js38
-rw-r--r--docs/search/variables_13.html26
-rw-r--r--docs/search/variables_13.js28
-rw-r--r--docs/search/variables_14.html26
-rw-r--r--docs/search/variables_14.js26
-rw-r--r--docs/search/variables_15.html26
-rw-r--r--docs/search/variables_15.js11
-rw-r--r--docs/search/variables_16.html26
-rw-r--r--docs/search/variables_16.js6
-rw-r--r--docs/search/variables_17.html26
-rw-r--r--docs/search/variables_17.js4
-rw-r--r--docs/search/variables_2.html26
-rw-r--r--docs/search/variables_2.js119
-rw-r--r--docs/search/variables_3.html26
-rw-r--r--docs/search/variables_3.js61
-rw-r--r--docs/search/variables_4.html26
-rw-r--r--docs/search/variables_4.js44
-rw-r--r--docs/search/variables_5.html26
-rw-r--r--docs/search/variables_5.js35
-rw-r--r--docs/search/variables_6.html26
-rw-r--r--docs/search/variables_6.js23
-rw-r--r--docs/search/variables_7.html26
-rw-r--r--docs/search/variables_7.js16
-rw-r--r--docs/search/variables_8.html26
-rw-r--r--docs/search/variables_8.js25
-rw-r--r--docs/search/variables_9.html26
-rw-r--r--docs/search/variables_9.js16
-rw-r--r--docs/search/variables_a.html26
-rw-r--r--docs/search/variables_a.js32
-rw-r--r--docs/search/variables_b.html26
-rw-r--r--docs/search/variables_b.js29
-rw-r--r--docs/search/variables_c.html26
-rw-r--r--docs/search/variables_c.js12
-rw-r--r--docs/search/variables_d.html26
-rw-r--r--docs/search/variables_d.js16
-rw-r--r--docs/search/variables_e.html26
-rw-r--r--docs/search/variables_e.js107
-rw-r--r--docs/search/variables_f.html26
-rw-r--r--docs/search/variables_f.js18
-rw-r--r--docs/spice__plugin_8c.html844
-rw-r--r--docs/spice__plugin_8c.js29
-rw-r--r--docs/spice__plugin_8c_source.html175
-rw-r--r--docs/spice__plugin_8h.html132
-rw-r--r--docs/spice__plugin_8h.js5
-rw-r--r--docs/spice__plugin_8h_source.html112
-rw-r--r--docs/spice__plugin__file__transfer_8c.html413
-rw-r--r--docs/spice__plugin__file__transfer_8c.js12
-rw-r--r--docs/spice__plugin__file__transfer_8c_source.html120
-rw-r--r--docs/spice__plugin__usb_8c.html184
-rw-r--r--docs/spice__plugin__usb_8c.js5
-rw-r--r--docs/spice__plugin__usb_8c_source.html107
-rw-r--r--docs/splitbar.pngbin0 -> 314 bytes
-rw-r--r--docs/st__plugin_8c.html549
-rw-r--r--docs/st__plugin_8c.js18
-rw-r--r--docs/st__plugin_8c_source.html148
-rw-r--r--docs/st__plugin__config_8h.html103
-rw-r--r--docs/st__plugin__config_8h_source.html101
-rw-r--r--docs/struct___remmina_applet_menu.html152
-rw-r--r--docs/struct___remmina_applet_menu.js5
-rw-r--r--docs/struct___remmina_applet_menu_class.html170
-rw-r--r--docs/struct___remmina_applet_menu_class.js6
-rw-r--r--docs/struct___remmina_applet_menu_item.html260
-rw-r--r--docs/struct___remmina_applet_menu_item.js11
-rw-r--r--docs/struct___remmina_applet_menu_item_class.html134
-rw-r--r--docs/struct___remmina_applet_menu_item_class.js4
-rw-r--r--docs/struct___remmina_avahi.html170
-rw-r--r--docs/struct___remmina_avahi.js6
-rw-r--r--docs/struct___remmina_avahi_priv.html204
-rw-r--r--docs/struct___remmina_avahi_priv.js8
-rw-r--r--docs/struct___remmina_cell_renderer_pixbuf.html132
-rw-r--r--docs/struct___remmina_cell_renderer_pixbuf.js4
-rw-r--r--docs/struct___remmina_cell_renderer_pixbuf_class.html150
-rw-r--r--docs/struct___remmina_cell_renderer_pixbuf_class.js5
-rw-r--r--docs/struct___remmina_chat_window.html170
-rw-r--r--docs/struct___remmina_chat_window.js6
-rw-r--r--docs/struct___remmina_chat_window_class.html152
-rw-r--r--docs/struct___remmina_chat_window_class.js5
-rw-r--r--docs/struct___remmina_color_pref.html458
-rw-r--r--docs/struct___remmina_color_pref.js22
-rw-r--r--docs/struct___remmina_connection_object.html294
-rw-r--r--docs/struct___remmina_connection_object.js13
-rw-r--r--docs/struct___remmina_connection_window.html152
-rw-r--r--docs/struct___remmina_connection_window.js5
-rw-r--r--docs/struct___remmina_connection_window_class.html152
-rw-r--r--docs/struct___remmina_connection_window_class.js5
-rw-r--r--docs/struct___remmina_entry_plugin.html224
-rw-r--r--docs/struct___remmina_entry_plugin.js9
-rw-r--r--docs/struct___remmina_f_t_p_client.html152
-rw-r--r--docs/struct___remmina_f_t_p_client.js5
-rw-r--r--docs/struct___remmina_f_t_p_client_class.html206
-rw-r--r--docs/struct___remmina_f_t_p_client_class.js8
-rw-r--r--docs/struct___remmina_f_t_p_task.html314
-rw-r--r--docs/struct___remmina_f_t_p_task.js14
-rw-r--r--docs/struct___remmina_file.html188
-rw-r--r--docs/struct___remmina_file.js7
-rw-r--r--docs/struct___remmina_file_editor.html152
-rw-r--r--docs/struct___remmina_file_editor.js5
-rw-r--r--docs/struct___remmina_file_editor_class.html134
-rw-r--r--docs/struct___remmina_file_editor_class.js4
-rw-r--r--docs/struct___remmina_file_plugin.html296
-rw-r--r--docs/struct___remmina_file_plugin.js13
-rw-r--r--docs/struct___remmina_group_data.html170
-rw-r--r--docs/struct___remmina_group_data.js6
-rw-r--r--docs/struct___remmina_icon.html222
-rw-r--r--docs/struct___remmina_icon.js9
-rw-r--r--docs/struct___remmina_key_chooser_arguments.html188
-rw-r--r--docs/struct___remmina_key_chooser_arguments.js7
-rw-r--r--docs/struct___remmina_key_val.html150
-rw-r--r--docs/struct___remmina_key_val.js5
-rw-r--r--docs/struct___remmina_log_window.html168
-rw-r--r--docs/struct___remmina_log_window.js6
-rw-r--r--docs/struct___remmina_log_window_class.html132
-rw-r--r--docs/struct___remmina_log_window_class.js4
-rw-r--r--docs/struct___remmina_main.html584
-rw-r--r--docs/struct___remmina_main.js29
-rw-r--r--docs/struct___remmina_main_priv.html260
-rw-r--r--docs/struct___remmina_main_priv.js11
-rw-r--r--docs/struct___remmina_n_x_session.html528
-rw-r--r--docs/struct___remmina_n_x_session.js26
-rw-r--r--docs/struct___remmina_news_dialog.html278
-rw-r--r--docs/struct___remmina_news_dialog.js12
-rw-r--r--docs/struct___remmina_plugin.html206
-rw-r--r--docs/struct___remmina_plugin.js8
-rw-r--r--docs/struct___remmina_plugin_data.html168
-rw-r--r--docs/struct___remmina_plugin_data.js6
-rw-r--r--docs/struct___remmina_plugin_exec_data.html186
-rw-r--r--docs/struct___remmina_plugin_exec_data.js7
-rw-r--r--docs/struct___remmina_plugin_nx_data.html386
-rw-r--r--docs/struct___remmina_plugin_nx_data.js18
-rw-r--r--docs/struct___remmina_plugin_rdpset_grid.html492
-rw-r--r--docs/struct___remmina_plugin_rdpset_grid.js24
-rw-r--r--docs/struct___remmina_plugin_rdpset_grid_class.html132
-rw-r--r--docs/struct___remmina_plugin_rdpset_grid_class.js4
-rw-r--r--docs/struct___remmina_plugin_screenshot_data.html206
-rw-r--r--docs/struct___remmina_plugin_screenshot_data.js8
-rw-r--r--docs/struct___remmina_plugin_service.html1394
-rw-r--r--docs/struct___remmina_plugin_service.js74
-rw-r--r--docs/struct___remmina_plugin_sftp_data.html168
-rw-r--r--docs/struct___remmina_plugin_sftp_data.js6
-rw-r--r--docs/struct___remmina_plugin_spice_data.html260
-rw-r--r--docs/struct___remmina_plugin_spice_data.js11
-rw-r--r--docs/struct___remmina_plugin_spice_xfer_widgets.html204
-rw-r--r--docs/struct___remmina_plugin_spice_xfer_widgets.js8
-rw-r--r--docs/struct___remmina_plugin_ssh_data.html208
-rw-r--r--docs/struct___remmina_plugin_ssh_data.js8
-rw-r--r--docs/struct___remmina_plugin_vnc_coordinates.html152
-rw-r--r--docs/struct___remmina_plugin_vnc_coordinates.js5
-rw-r--r--docs/struct___remmina_plugin_vnc_cuttext_param.html168
-rw-r--r--docs/struct___remmina_plugin_vnc_cuttext_param.js6
-rw-r--r--docs/struct___remmina_plugin_vnc_data.html602
-rw-r--r--docs/struct___remmina_plugin_vnc_data.js30
-rw-r--r--docs/struct___remmina_plugin_vnc_event.html310
-rw-r--r--docs/struct___remmina_plugin_vnc_event.js14
-rw-r--r--docs/struct___remmina_plugin_w_w_w_data.html330
-rw-r--r--docs/struct___remmina_plugin_w_w_w_data.js15
-rw-r--r--docs/struct___remmina_plugin_xdmcp_data.html258
-rw-r--r--docs/struct___remmina_plugin_xdmcp_data.js11
-rw-r--r--docs/struct___remmina_pref.html1538
-rw-r--r--docs/struct___remmina_pref.js82
-rw-r--r--docs/struct___remmina_pref_dialog.html1646
-rw-r--r--docs/struct___remmina_pref_dialog.js88
-rw-r--r--docs/struct___remmina_pref_dialog_priv.html134
-rw-r--r--docs/struct___remmina_pref_dialog_priv.js4
-rw-r--r--docs/struct___remmina_pref_plugin.html242
-rw-r--r--docs/struct___remmina_pref_plugin.js10
-rw-r--r--docs/struct___remmina_protocol_feature.html206
-rw-r--r--docs/struct___remmina_protocol_feature.js8
-rw-r--r--docs/struct___remmina_protocol_plugin.html440
-rw-r--r--docs/struct___remmina_protocol_plugin.js21
-rw-r--r--docs/struct___remmina_protocol_setting.html224
-rw-r--r--docs/struct___remmina_protocol_setting.js9
-rw-r--r--docs/struct___remmina_protocol_setting_opt.html224
-rw-r--r--docs/struct___remmina_protocol_setting_opt.js9
-rw-r--r--docs/struct___remmina_protocol_widget.html170
-rw-r--r--docs/struct___remmina_protocol_widget.js6
-rw-r--r--docs/struct___remmina_protocol_widget_class.html224
-rw-r--r--docs/struct___remmina_protocol_widget_class.js9
-rw-r--r--docs/struct___remmina_protocol_widget_priv.html600
-rw-r--r--docs/struct___remmina_protocol_widget_priv.js30
-rw-r--r--docs/struct___remmina_protocol_widget_signal_data.html150
-rw-r--r--docs/struct___remmina_protocol_widget_signal_data.js5
-rw-r--r--docs/struct___remmina_s_f_t_p.html152
-rw-r--r--docs/struct___remmina_s_f_t_p.js5
-rw-r--r--docs/struct___remmina_s_f_t_p_client.html224
-rw-r--r--docs/struct___remmina_s_f_t_p_client.js9
-rw-r--r--docs/struct___remmina_s_f_t_p_client_class.html134
-rw-r--r--docs/struct___remmina_s_f_t_p_client_class.js4
-rw-r--r--docs/struct___remmina_s_s_h.html512
-rw-r--r--docs/struct___remmina_s_s_h.js25
-rw-r--r--docs/struct___remmina_s_s_h_shell.html278
-rw-r--r--docs/struct___remmina_s_s_h_shell.js12
-rw-r--r--docs/struct___remmina_s_s_h_tunnel.html584
-rw-r--r--docs/struct___remmina_s_s_h_tunnel.js29
-rw-r--r--docs/struct___remmina_scrolled_viewport.html170
-rw-r--r--docs/struct___remmina_scrolled_viewport.js6
-rw-r--r--docs/struct___remmina_scrolled_viewport_class.html134
-rw-r--r--docs/struct___remmina_scrolled_viewport_class.js4
-rw-r--r--docs/struct___remmina_secret_plugin.html314
-rw-r--r--docs/struct___remmina_secret_plugin.js14
-rw-r--r--docs/struct___remmina_string_list.html386
-rw-r--r--docs/struct___remmina_string_list.js18
-rw-r--r--docs/struct___remmina_string_list_priv.html170
-rw-r--r--docs/struct___remmina_string_list_priv.js6
-rw-r--r--docs/struct___remmina_tool_plugin.html224
-rw-r--r--docs/struct___remmina_tool_plugin.js9
-rw-r--r--docs/struct___remmina_tp_channel_handler.html366
-rw-r--r--docs/struct___remmina_tp_channel_handler.js17
-rw-r--r--docs/struct___remmina_tp_handler.html134
-rw-r--r--docs/struct___remmina_tp_handler.js4
-rw-r--r--docs/struct___remmina_tp_handler_class.html134
-rw-r--r--docs/struct___remmina_tp_handler_class.js4
-rw-r--r--docs/struct___remmina_unlock_dialog.html242
-rw-r--r--docs/struct___remmina_unlock_dialog.js10
-rw-r--r--docs/struct_mp_run_info.html186
-rw-r--r--docs/struct_mp_run_info.js7
-rw-r--r--docs/struct_p_con___spinner.html188
-rw-r--r--docs/struct_p_con___spinner.js7
-rw-r--r--docs/struct_profiles_data.html228
-rw-r--r--docs/struct_profiles_data.js9
-rw-r--r--docs/struct_remmina_message_panel_private.html168
-rw-r--r--docs/struct_remmina_message_panel_private.js6
-rw-r--r--docs/structdistro__info.html150
-rw-r--r--docs/structdistro__info.js5
-rw-r--r--docs/structlsb__distro__info.html150
-rw-r--r--docs/structlsb__distro__info.js5
-rw-r--r--docs/structmpchanger__params.html438
-rw-r--r--docs/structmpchanger__params.js21
-rw-r--r--docs/structon_main_thread__cb__data.html394
-rw-r--r--docs/structon_main_thread__cb__data.js18
-rw-r--r--docs/structregion.html188
-rw-r--r--docs/structregion.js7
-rw-r--r--docs/structremmina__masterthread__exec__data.html960
-rw-r--r--docs/structremmina__masterthread__exec__data.js60
-rw-r--r--docs/structremmina__plugin__rdp__event.html543
-rw-r--r--docs/structremmina__plugin__rdp__event.js26
-rw-r--r--docs/structremmina__plugin__rdp__keymap__entry.html152
-rw-r--r--docs/structremmina__plugin__rdp__keymap__entry.js5
-rw-r--r--docs/structremmina__plugin__rdp__ui__object.html724
-rw-r--r--docs/structremmina__plugin__rdp__ui__object.js36
-rw-r--r--docs/structremmina__protocol__widget__dialog__mt__data__t.html330
-rw-r--r--docs/structremmina__protocol__widget__dialog__mt__data__t.js15
-rw-r--r--docs/structrf__bitmap.html170
-rw-r--r--docs/structrf__bitmap.js6
-rw-r--r--docs/structrf__clipboard.html325
-rw-r--r--docs/structrf__clipboard.js16
-rw-r--r--docs/structrf__context.html1051
-rw-r--r--docs/structrf__context.js56
-rw-r--r--docs/structrf__glyph.html152
-rw-r--r--docs/structrf__glyph.js5
-rw-r--r--docs/structrf__pointer.html152
-rw-r--r--docs/structrf__pointer.js5
-rw-r--r--docs/structrs_sched_data.html206
-rw-r--r--docs/structrs_sched_data.js8
-rw-r--r--docs/structsc__tdata.html150
-rw-r--r--docs/structsc__tdata.js5
-rw-r--r--docs/sync_off.pngbin0 -> 853 bytes
-rw-r--r--docs/sync_on.pngbin0 -> 845 bytes
-rw-r--r--docs/tab_a.pngbin0 -> 142 bytes
-rw-r--r--docs/tab_b.pngbin0 -> 169 bytes
-rw-r--r--docs/tab_h.pngbin0 -> 177 bytes
-rw-r--r--docs/tab_s.pngbin0 -> 184 bytes
-rw-r--r--docs/tabs.css1
-rw-r--r--docs/telepathy__channel__handler_8c.html732
-rw-r--r--docs/telepathy__channel__handler_8c.js18
-rw-r--r--docs/telepathy__channel__handler_8c_source.html139
-rw-r--r--docs/telepathy__channel__handler_8h.html160
-rw-r--r--docs/telepathy__channel__handler_8h.js4
-rw-r--r--docs/telepathy__channel__handler_8h_source.html102
-rw-r--r--docs/telepathy__handler_8c.html403
-rw-r--r--docs/telepathy__handler_8c.js11
-rw-r--r--docs/telepathy__handler_8c_source.html117
-rw-r--r--docs/telepathy__handler_8h.html177
-rw-r--r--docs/telepathy__handler_8h.js8
-rw-r--r--docs/telepathy__handler_8h_source.html108
-rw-r--r--docs/telepathy__plugin_8c.html232
-rw-r--r--docs/telepathy__plugin_8c.js8
-rw-r--r--docs/telepathy__plugin_8c_source.html116
-rw-r--r--docs/todo.html136
-rw-r--r--docs/travis-build_8sh.html103
-rw-r--r--docs/travis-build_8sh_source.html101
-rw-r--r--docs/types_8h.html487
-rw-r--r--docs/types_8h.js65
-rw-r--r--docs/types_8h_source.html173
-rw-r--r--docs/ubuntu-build_8sh.html103
-rw-r--r--docs/ubuntu-build_8sh_source.html101
-rw-r--r--docs/update-translations_8sh.html103
-rw-r--r--docs/update-translations_8sh_source.html101
-rw-r--r--docs/vnc-key-mapping-configuration_8md.html103
-rw-r--r--docs/vnc-key-mapping-configuration_8md_source.html101
-rw-r--r--docs/vnc__plugin_8c.html2710
-rw-r--r--docs/vnc__plugin_8c.js77
-rw-r--r--docs/vnc__plugin_8c_source.html303
-rw-r--r--docs/vnc__plugin_8h.html251
-rw-r--r--docs/vnc__plugin_8h.js16
-rw-r--r--docs/vnc__plugin_8h_source.html150
-rw-r--r--docs/www__config_8h.html103
-rw-r--r--docs/www__config_8h_source.html101
-rw-r--r--docs/www__plugin_8c.html1026
-rw-r--r--docs/www__plugin_8c.js29
-rw-r--r--docs/www__plugin_8c_source.html184
-rw-r--r--docs/www__plugin_8h.html320
-rw-r--r--docs/www__plugin_8h.js15
-rw-r--r--docs/www__plugin_8h_source.html114
-rw-r--r--docs/www__utils_8c.html318
-rw-r--r--docs/www__utils_8c.js8
-rw-r--r--docs/www__utils_8c_source.html107
-rw-r--r--docs/www__utils_8h.html286
-rw-r--r--docs/www__utils_8h.js7
-rw-r--r--docs/www__utils_8h_source.html105
-rw-r--r--docs/xdmcp__plugin_8c.html739
-rw-r--r--docs/xdmcp__plugin_8c.js23
-rw-r--r--docs/xdmcp__plugin_8c_source.html169
1188 files changed, 194393 insertions, 0 deletions
diff --git a/docs/__sidebar_8md.html b/docs/__sidebar_8md.html
new file mode 100644
index 000000000..595b6697f
--- /dev/null
+++ b/docs/__sidebar_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _sidebar.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('__sidebar_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">_sidebar.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="__sidebar_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="__sidebar_8md.html">_sidebar.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/__sidebar_8md_source.html b/docs/__sidebar_8md_source.html
new file mode 100644
index 000000000..9f5c0f2db
--- /dev/null
+++ b/docs/__sidebar_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _sidebar.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('__sidebar_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">_sidebar.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="__sidebar_8md.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;### Table of contents</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;- [Home](https://gitlab.com/Remmina/Remmina/-/wikis/Home)</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;- [Usage](https://gitlab.com/Remmina/Remmina/-/wikis/Usage)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160; - [Remmina SSH terminal colour schemes](https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-SSH-Terminal-colour-schemes)</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160; - [Remmina usage FAQ](https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-Usage-FAQ)</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160; - [Remmina user’s guide](https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-User&#39;s-guide)</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;- [Compilation](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; - [Compilation guide for CentOS](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS)</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; - [Compile on Arch Linux](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux)</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; - [Compile on Debian 10 Buster](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster)</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; - [Compile on Debian 9 Stretch](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch)</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; - [Compile on Fedora 20 ~ 26](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26)</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; - [Compile on FreeBSD](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD)</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; - [Compile on Ubuntu 14.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04)</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; - [Compile on Ubuntu 16.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04)</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; - [Compile on Ubuntu 18.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04)</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; - [Compile on Ubuntu 20.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04)</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;- [Development](https://gitlab.com/Remmina/Remmina/-/wikis/Development)</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; - [Development Notes](https://gitlab.com/Remmina/Remmina/-/wikis/Development/Development-Notes)</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; - [multi-monitor support](https://gitlab.com/Remmina/Remmina/-/wikis/Development/multi-monitor-support)</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;- [Contribution](https://gitlab.com/Remmina/Remmina/-/wikis/Contribution)</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; - [HOWTO generate the changelog](https://gitlab.com/Remmina/Remmina/-/wikis/Contribution/HOWTO-generate-the-changelog)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;- [Localisation](https://gitlab.com/Remmina/Remmina/-/wikis/Localisation)</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; - [How to translate Remmina](https://gitlab.com/Remmina/Remmina/-/wikis/Localisation/How-to-translate-Remmina)</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; - [Update gettext messages](https://gitlab.com/Remmina/Remmina/-/wikis/Localisation/Update-gettext-messages)</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;- [Testing](https://gitlab.com/Remmina/Remmina/-/wikis/Testing)</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; - [Testing under Ubuntu with the remmina next daily PPA](https://gitlab.com/Remmina/Remmina/-/wikis/Testing/Testing-under-Ubuntu-with-the-remmina-next-daily-PPA)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;- [Problems and tweaks](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks)</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; - [GTK versions on various distributions](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/GTK-versions-on-various-distributions)</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; - [Problems with Wayland](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Problems-with-Wayland)</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; - [Remmina RDP and HiDPI scaling](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Remmina-RDP-and-HiDPI-scaling)</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; - [Remmina VNC to Raspbian Stretch](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Remmina-VNC-to-Raspbian-Stretch)</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; - [Systray menu](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Systray-menu)</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; - [vnc key mapping configuration](https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/vnc-key-mapping-configuration)</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="__sidebar_8md.html">_sidebar.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_c_h_a_n_g_e_l_o_g_8md.html b/docs/_c_h_a_n_g_e_l_o_g_8md.html
new file mode 100644
index 000000000..e3fa91b08
--- /dev/null
+++ b/docs/_c_h_a_n_g_e_l_o_g_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: CHANGELOG.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_c_h_a_n_g_e_l_o_g_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">CHANGELOG.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_c_h_a_n_g_e_l_o_g_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_c_h_a_n_g_e_l_o_g_8md.html">CHANGELOG.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_c_h_a_n_g_e_l_o_g_8md_source.html b/docs/_c_h_a_n_g_e_l_o_g_8md_source.html
new file mode 100644
index 000000000..018d374e9
--- /dev/null
+++ b/docs/_c_h_a_n_g_e_l_o_g_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: CHANGELOG.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_c_h_a_n_g_e_l_o_g_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">CHANGELOG.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_c_h_a_n_g_e_l_o_g_8md.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;# Changelog</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;## 1.4.3</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.4.2...1.4.3)</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;* KB grabbing fixes (mostly for Wayland) [!2036](https://gitlab.com/Remmina/Remmina/merge_requests/2036) *@giox069*</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;* Adding Freerdp 3 compile option and using FreeRDP tag 2.0.0 as default [!2034](https://gitlab.com/Remmina/Remmina/merge_requests/2034) *@antenore*</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;* Adding remmina terminal dependencies [!2035](https://gitlab.com/Remmina/Remmina/merge_requests/2035) *@antenore*</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;* Translated using Weblate (Turkish) by Oğuz Ersen &lt;oguzersen@protonmail.com&gt;</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;* Translated using Weblate (Swedish) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;* Translated using Weblate (Albanian) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;* Translated using Weblate (Dutch) by Jennifer &lt;jen@elypia.org&gt;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;* Translated using Weblate (Norwegian Bokmål) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;* Translated using Weblate (Burmese) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;* Translated using Weblate (Korean) by Justin Song &lt;mcsong@gmail.com&gt;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;* Translated using Weblate (Japanese) by anonymous &lt;noreply@weblate.org&gt;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;* Translated using Weblate (Japanese) by FeLvi_zzz &lt;felvi.zzz.coffee@gmail.com&gt;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;* Translated using Weblate (Italian) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;* Translated using Weblate (Basque) by Osoitz &lt;oelkoro@gmail.com&gt;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;* Translated using Weblate (Spanish) by Adolfo Jayme Barrientos &lt;fitojb@ubuntu.com&gt;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;* Translated using Weblate (English (United Kingdom)) by Barbul Gergő &lt;barbul.gergo@stud.u-szeged.hu&gt;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;* Translated using Weblate (Arabic) by ButterflyOfFire &lt;ButterflyOfFire@protonmail.com&gt;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;* Translated using Weblate (Spanish) by Allan Nordhøy &lt;epost@anotheragency.no&gt;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;* Translated using Weblate (Hebrew) by Yaron Shahrabani &lt;sh.yaron@gmail.com&gt;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;* Translated using Weblate (Spanish) by Juan Ignacio Cherrutti &lt;juancherru@gmail.com&gt;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;* Translated using Weblate (Slovak) by Dušan Kazik &lt;prescott66@gmail.com&gt;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;* Translated using Weblate (German) by Johannes Weberhofer &lt;jweberhofer@weberhofer.at&gt;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;* Translated using Weblate (Czech) by Pavel Borecki &lt;pavel.borecki@gmail.com&gt;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;## 1.4.2</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.4.1...1.4.2)</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;* Spelling: Doublespace removed [!2011](https://gitlab.com/Remmina/Remmina/merge_requests/2011) *@kingu*</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;* Adds ClientBuild settings to RDP plugin to specify client version build number [!2012](https://gitlab.com/Remmina/Remmina/merge_requests/2012) *@mskalski*</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;* Spelling: Smaller bullet points, RDP plugin, Git [!2014](https://gitlab.com/Remmina/Remmina/merge_requests/2014) *@kingu*</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;* Allow formatting for SSH session filename [!2015](https://gitlab.com/Remmina/Remmina/merge_requests/2015) *@juarez.rudsatz*</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;* include juarezr in AUTHORS [!2017](https://gitlab.com/Remmina/Remmina/merge_requests/2017) *@juarez.rudsatz*</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;* web-browser plugin fixes [!2016](https://gitlab.com/Remmina/Remmina/merge_requests/2016) *@antenore*</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;* Make duplicate session sensitive only if a profile exists [!2019](https://gitlab.com/Remmina/Remmina/merge_requests/2019) *@antenore*</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;* Using updated Contribution page from website [!2021](https://gitlab.com/Remmina/Remmina/merge_requests/2021) *@kingu*</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;* Issue template reworked [!2020](https://gitlab.com/Remmina/Remmina/merge_requests/2020) *@kingu*</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;* Fix null pointer dereference in remmina_main_quickconnect [!2022](https://gitlab.com/Remmina/Remmina/merge_requests/2022) *@Flow*</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;* SFTP with tunnel fixes [!2023](https://gitlab.com/Remmina/Remmina/merge_requests/2023) *@giox069*</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;* Cppcheck and PVS Studio Fixes [!2018](https://gitlab.com/Remmina/Remmina/merge_requests/2018) *@qarmin*</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;* VNCI fixes [!2025](https://gitlab.com/Remmina/Remmina/merge_requests/2025) *@antenore*</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;* Flatpak - Updating gnome to 3.36 [!2026](https://gitlab.com/Remmina/Remmina/merge_requests/2026) *@antenore*</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;* Typo fix in remmina_ssh.c [!2024](https://gitlab.com/Remmina/Remmina/merge_requests/2024) *@gunnarhj*</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;* Spelling: Select a folder, choose a folder [!2027](https://gitlab.com/Remmina/Remmina/merge_requests/2027) *@kingu*</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;* Allow enter key in domain textbox of authentication dialog to submit [!2028](https://gitlab.com/Remmina/Remmina/merge_requests/2028) *@piecka*</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;* rcw event sources cleanup [!2029](https://gitlab.com/Remmina/Remmina/merge_requests/2029) *@giox069*</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;* Contact file replaces CoC and new README [!2030](https://gitlab.com/Remmina/Remmina/merge_requests/2030) *@kingu*</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;* THANKS reworked [!2031](https://gitlab.com/Remmina/Remmina/merge_requests/2031) *@kingu*</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;* Merge weblate translations in master [!2032](https://gitlab.com/Remmina/Remmina/merge_requests/2032) *@antenore*</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;## 1.4.1</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.4.0...1.4.1)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;* SSH fixes, should fix #2094 [!2009](https://gitlab.com/Remmina/Remmina/merge_requests/2009) *@giox069*</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;* Update remmina_filezilla_sftp.sh [!2010](https://gitlab.com/Remmina/Remmina/merge_requests/2010) *@greenfoxua*</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;## 1.4.0</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.10...1.4.0)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;* Rdp clipboard fixes [!2007](https://gitlab.com/Remmina/Remmina/merge_requests/2007) *@giox069*</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;* Ssh authentication fixes [!2006](https://gitlab.com/Remmina/Remmina/merge_requests/2006) *@giox069*</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;* Compiler warnings [!1992](https://gitlab.com/Remmina/Remmina/merge_requests/1992) *@antenore*</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;* flatpak manifest update [!1993](https://gitlab.com/Remmina/Remmina/merge_requests/1993) *@dgcampea*</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;* Spelling: System proxy settings [!1994](https://gitlab.com/Remmina/Remmina/merge_requests/1994) *@kingu*</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;* Update ru.po [!1995](https://gitlab.com/Remmina/Remmina/merge_requests/1995) *@hopyres*</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;* SSH tunnel refactoring [!1996](https://gitlab.com/Remmina/Remmina/merge_requests/1996) *@antenore*</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;* Parameters passed individually, notation, &quot;Press any key to continue…&quot; [!1997](https://gitlab.com/Remmina/Remmina/merge_requests/1997) *@kingu*</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;* Replace apt with apt-get [!1999](https://gitlab.com/Remmina/Remmina/merge_requests/1999) *@kingu*</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;* Updated boolean expressions [!2000](https://gitlab.com/Remmina/Remmina/merge_requests/2000) *@kingu*</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;* Add end of options escaping [!2002](https://gitlab.com/Remmina/Remmina/merge_requests/2002) *@kingu*</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;* Remove double-quotes escaping early [!2001](https://gitlab.com/Remmina/Remmina/merge_requests/2001) *@kingu*</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;* Ending code block whitespace line removed [!1998](https://gitlab.com/Remmina/Remmina/merge_requests/1998) *@kingu*</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;* Safer removal of build directory [!2003](https://gitlab.com/Remmina/Remmina/merge_requests/2003) *@kingu*</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;* Spelling: Could not access the RDP server x7 [!2004](https://gitlab.com/Remmina/Remmina/merge_requests/2004) *@kingu*</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;* Removing double struct declaration. [!2005](https://gitlab.com/Remmina/Remmina/merge_requests/2005) *@antenore*</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;## v1.3.10</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.9...v1.3.10)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;* VNC: Fix a buffer overflow during cuttext [!1987](https://gitlab.com/Remmina/Remmina/merge_requests/1987) *@giox069*</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;* Fix KB/pointer grabbing again and add warning when GTK is using [!1988](https://gitlab.com/Remmina/Remmina/merge_requests/1988) *@giox069*</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;* GDK_CORE_DEVICE_EVENTS refactoring [!1989](https://gitlab.com/Remmina/Remmina/merge_requests/1989) *@antenore*</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;* Proxy support fixes [!1990](https://gitlab.com/Remmina/Remmina/merge_requests/1990) *@antenore*</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"> 89</span>&#160;## v1.3.9</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.8...v1.3.9)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;* Grab and focus out woes [!1985](https://gitlab.com/Remmina/Remmina/merge_requests/1985) *@giox069*</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"> 94</span>&#160;## v1.3.8</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.7...v1.3.8)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;* Avoid clearing username/domain when saving RDP password [!1981](https://gitlab.com/Remmina/Remmina/merge_requests/1981) *@giox069*</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;* Make Remmina news dialog modal to the main window [!1982](https://gitlab.com/Remmina/Remmina/merge_requests/1982) *@antenore*</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;* Change switch notebook page idle func order. Fixes #2034 *@giox069*</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;* Fixing bad seat grabbing behaviour (grab all keys not working) *@antenore*</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;* Adding cmake option to use latest FreeRDP symbols when compiling. Fixes #2024 [!1977](https://gitlab.com/Remmina/Remmina/merge_requests/1977) *@antenore*</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;* Spelling: Private key, direct explanations [!1964](https://gitlab.com/Remmina/Remmina/merge_requests/1964) *@kingu*</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;* Spelling: Colour theme [!1973](https://gitlab.com/Remmina/Remmina/merge_requests/1973) *@kingu*</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;* Spelling: Error messages [!1965](https://gitlab.com/Remmina/Remmina/merge_requests/1965) *@kingu*</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;* Spelling: URL moved to avoid ending dot [!1966](https://gitlab.com/Remmina/Remmina/merge_requests/1966) *@kingu*</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;* Spelling: &quot;web-browser plugin&quot; [!1967](https://gitlab.com/Remmina/Remmina/merge_requests/1967) *@kingu*</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;* Spelling: &quot;simple terminal&quot; [!1968](https://gitlab.com/Remmina/Remmina/merge_requests/1968) *@kingu*</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;* Spelling: &quot;Secure password storage in KWallet&quot; [!1969](https://gitlab.com/Remmina/Remmina/merge_requests/1969) *@kingu*</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;* Spelling: Connection name [!1971](https://gitlab.com/Remmina/Remmina/merge_requests/1971) *@kingu*</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;* Spelling: Their desktop, do you accept? [!1970](https://gitlab.com/Remmina/Remmina/merge_requests/1970) *@kingu*</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;* Spelling: &quot;Warning:&quot; [!1972](https://gitlab.com/Remmina/Remmina/merge_requests/1972) *@kingu*</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;* Pluralized string for closing active connections [!1975](https://gitlab.com/Remmina/Remmina/merge_requests/1975) *@kingu*</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;* Spelling: Log SSH session when exiting Remmina [!1976](https://gitlab.com/Remmina/Remmina/merge_requests/1976) *@kingu*</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;* GitLab landing page now only links to installation instructions [!1978](https://gitlab.com/Remmina/Remmina/merge_requests/1978) *@kingu*</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;* Spelling: -on, , [!1979](https://gitlab.com/Remmina/Remmina/merge_requests/1979) *@kingu*</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;* Adding default application symbolic icons [!1980](https://gitlab.com/Remmina/Remmina/merge_requests/1980) *@antenore*</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;## v1.3.7</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.6...v1.3.7)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;* Better authentication MessagePanel API [!1937](https://gitlab.com/Remmina/Remmina/merge_requests/1937) *@giox069*</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;* Adding hidden proxy/socks settings for the RDP plugin [!1927](https://gitlab.com/Remmina/Remmina/merge_requests/1927) *@antenore*</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;* Debian Lintian, appstream and AppImage detected issues fixes [!1901](https://gitlab.com/Remmina/Remmina/merge_requests/1901) *@antenore*</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;* Using antenore/ubuntu docker image for standard build [!1903](https://gitlab.com/Remmina/Remmina/merge_requests/1903) *@antenore*</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;* Tooltips in the remmina profile editor [!1904](https://gitlab.com/Remmina/Remmina/merge_requests/1904) *@antenore*</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;* Fix for issue #1949 (and #1968). It also relocates --version and --full-version in local istance. [!1905](https://gitlab.com/Remmina/Remmina/merge_requests/1905) *@giox069*</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;* Enumerate and share all local printers. [!1908](https://gitlab.com/Remmina/Remmina/merge_requests/1908) *@antenore*</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;* Manually specify more then one printer&amp;driver when connecting via RDP [!1909](https://gitlab.com/Remmina/Remmina/merge_requests/1909) *@antenore*</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;* Printer sharing remediation for !1909 [!1915](https://gitlab.com/Remmina/Remmina/merge_requests/1915) *@antenore*</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;* Remove useless include [!1910](https://gitlab.com/Remmina/Remmina/merge_requests/1910) *@Zlika1*</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;* VTE is a suggested package [!1911](https://gitlab.com/Remmina/Remmina/merge_requests/1911) *@Zlika1*</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;* Adding official Ubuntu Docker images [!1913](https://gitlab.com/Remmina/Remmina/merge_requests/1913) *@antenore*</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;* AppImage path fixes [!1914](https://gitlab.com/Remmina/Remmina/merge_requests/1914) *@antenore*</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;* Using remmina image for gnome 3.28 [!1916](https://gitlab.com/Remmina/Remmina/merge_requests/1916) *@antenore*</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;* Fix crash when clicking AR-button [!1918](https://gitlab.com/Remmina/Remmina/merge_requests/1918) *@qgroup_f.beu*</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;* snap: Update yaml to use GNOME extension [!1922](https://gitlab.com/Remmina/Remmina/merge_requests/1922) *@hellsworth*</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;* Use ubuntudesktop/gnome-3-28-1804 docker image for snap build [!1925](https://gitlab.com/Remmina/Remmina/merge_requests/1925) *@kenvandine*</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;* Various Fixes [!1931](https://gitlab.com/Remmina/Remmina/merge_requests/1931) *@antenore*</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;* Fix RDP failed auth after credentials panel: big rework on plugin connection close flow [!1935](https://gitlab.com/Remmina/Remmina/merge_requests/1935) *@giox069*</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;* Add RDP option to use old license workflow [!1961](https://gitlab.com/Remmina/Remmina/merge_requests/1961) *@antenore*</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;### L10n, language and interface</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;* Language reworked [!1938](https://gitlab.com/Remmina/Remmina/merge_requests/1938) *@kingu*</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;* Spelling: Turn off scaling to avoid screenshot distortion. Scrolled fullscreen. Comments. [!1939](https://gitlab.com/Remmina/Remmina/merge_requests/1939) *@kingu*</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;* Reworked [!1943](https://gitlab.com/Remmina/Remmina/merge_requests/1943) *@kingu*</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;* Spelling: Connect via SSH, SFTP, details, comments [!1940](https://gitlab.com/Remmina/Remmina/merge_requests/1940) *@kingu*</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;* Spelling: Reworked, labels, toggle, Show/hide * shown in the * [!1942](https://gitlab.com/Remmina/Remmina/merge_requests/1942) *@kingu*</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;* Spelling: The file %s, Last connection was made, , which is not [!1944](https://gitlab.com/Remmina/Remmina/merge_requests/1944) *@kingu*</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;* Keep it snimple snupple [!1945](https://gitlab.com/Remmina/Remmina/merge_requests/1945) *@kingu*</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;* Spelling: secrecy plugin [!1941](https://gitlab.com/Remmina/Remmina/merge_requests/1941) *@kingu*</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;* Are you sure you want to delete? HTTPS [!1947](https://gitlab.com/Remmina/Remmina/merge_requests/1947) *@kingu*</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;* Adding comments for translators [!1948](https://gitlab.com/Remmina/Remmina/merge_requests/1948) *@antenore*</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;* Spelling: Time, keepalive, TCP [!1949](https://gitlab.com/Remmina/Remmina/merge_requests/1949) *@kingu*</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;* L10n/comments [!1950](https://gitlab.com/Remmina/Remmina/merge_requests/1950) *@antenore*</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;* Spelling: SSH changed, could not x3 [!1952](https://gitlab.com/Remmina/Remmina/merge_requests/1952) *@kingu*</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;* Spelling: Small/big versals, could not, library names [!1953](https://gitlab.com/Remmina/Remmina/merge_requests/1953) *@kingu*</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;* No news widget when in kiosk mode. Fixes #2012 [!1954](https://gitlab.com/Remmina/Remmina/merge_requests/1954) *@antenore*</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;* Markup: Button + [!1951](https://gitlab.com/Remmina/Remmina/merge_requests/1951) *@kingu*</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;* SSH plugin minor fixes and enhanced debug output [!1946](https://gitlab.com/Remmina/Remmina/merge_requests/1946) *@antenore*</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;* Adding autostart profiles at remmina startup, closes #2013 [!1955](https://gitlab.com/Remmina/Remmina/merge_requests/1955) *@antenore*</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;* Adding expand/collpse all in the popup menu, closes #955 [!1956](https://gitlab.com/Remmina/Remmina/merge_requests/1956) *@antenore*</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;* Spelling: shortcuts [!1919](https://gitlab.com/Remmina/Remmina/merge_requests/1919) *@kingu*</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;* Language reworked [!1920](https://gitlab.com/Remmina/Remmina/merge_requests/1920) *@kingu*</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;* Spelling: may cause Remmina not to respond [!1926](https://gitlab.com/Remmina/Remmina/merge_requests/1926) *@kingu*</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;* Spelling: Website, About, GTK, ©, en dash + HTTPS link [!1924](https://gitlab.com/Remmina/Remmina/merge_requests/1924) *@kingu*</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;* Language reworked [!1929](https://gitlab.com/Remmina/Remmina/merge_requests/1929) *@kingu*</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;* Language reworked [!1932](https://gitlab.com/Remmina/Remmina/merge_requests/1932) *@kingu*</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;* Language reworked [!1933](https://gitlab.com/Remmina/Remmina/merge_requests/1933) *@kingu*</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;* Various string improvements [!1934](https://gitlab.com/Remmina/Remmina/merge_requests/1934) *@kingu*</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;* Spelling: spatial navigation, - a x2 [!1936](https://gitlab.com/Remmina/Remmina/merge_requests/1936) *@kingu*</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;* Update danish translation [!1907](https://gitlab.com/Remmina/Remmina/merge_requests/1907) *@scootergrisen*</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;* Removed unnecessary word [!1921](https://gitlab.com/Remmina/Remmina/merge_requests/1921) *@hellsworth*</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;* remmina_preferences: Improve file chooser words [!1928](https://gitlab.com/Remmina/Remmina/merge_requests/1928) *@rafaelff*</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;* Brief on custom display numbers in usage. [!1902](https://gitlab.com/Remmina/Remmina/merge_requests/1902) *@kocielnik*</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;* Fixing preferences layout [!1930](https://gitlab.com/Remmina/Remmina/merge_requests/1930) *@antenore*</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;* Translations (Arabic) @Hosted Weblate</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;* Translations (Basque) @Hosted Weblate</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;* Translations (Bosnian) @Hosted Weblate</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;* Translations (Catalan) @Hosted Weblate</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;* Translations (Chinese (Traditional)) @Hosted Weblate</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;* Translations (Croatian) @Hosted Weblate</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;* Translations (Czech) @Hosted Weblate</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;* Translations (Danish) @Hosted Weblate</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;* Translations (Dutch) @Hosted Weblate</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;* Translations (Finnish) @Hosted Weblate</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;* Translations (French) @Hosted Weblate</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;* Translations (German) @Hosted Weblate</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;* Translations (Greek) @Hosted Weblate</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;* Translations (Hebrew) @Hosted Weblate</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;* Translations (Italian) @Hosted Weblate</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;* Translations (Japanese) @Hosted Weblate</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;* Translations (Norwegian Bokmål) @Hosted Weblate</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;* Translations (Occidental) @Hosted Weblate</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;* Translations (Polish) @Hosted Weblate</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;* Translations (Portuguese (Brazil)) @Hosted Weblate</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;* Translations (Portuguese (Portugal)) @Hosted Weblate</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;* Translations (Spanish) @Hosted Weblate</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;* Translations (Swedish) @Hosted Weblate</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;* Translations (Turkish) @Hosted Weblate</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;* Translations (Ukrainian) @Hosted Weblate</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;* Translations (Uyghur) @Hosted Weblate</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;* Translations (Uzbek) @Hosted Weblate</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</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;## v1.3.6</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.5...v1.3.6)</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;* Fix fullscreen switching [!1895](https://gitlab.com/Remmina/Remmina/merge_requests/1895) *@ToolsDevler*</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;* Fullscreen fixes [!1897](https://gitlab.com/Remmina/Remmina/merge_requests/1897) *@giox069*</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;* rdpr channel initialization for special devices sharing. Closes #1955 [!1892](https://gitlab.com/Remmina/Remmina/merge_requests/1892) *@antenore*</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;* Fixing remminamain destroy issues [!1896](https://gitlab.com/Remmina/Remmina/merge_requests/1896) *@antenore*</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;* Makes Rmnews modal to avoid that it steals input to the RCW [!1899](https://gitlab.com/Remmina/Remmina/merge_requests/1899) *@antenore*</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;* Make some cmake targets optional to avoid packaging isssues [!1887](https://gitlab.com/Remmina/Remmina/merge_requests/1887) *@antenore*</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;* SNAP fixing dependencies for the plugin WWW [!1890](https://gitlab.com/Remmina/Remmina/merge_requests/1890) *@antenore*</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;* Updating Remmna icon to the yaru/suru icon set. [!1891](https://gitlab.com/Remmina/Remmina/merge_requests/1891) *@antenore*</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;* Adding harfbuzz headers, closes #1941 [!1894](https://gitlab.com/Remmina/Remmina/merge_requests/1894) *@antenore*</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;* New stats [!1898](https://gitlab.com/Remmina/Remmina/merge_requests/1898) *@antenore*</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;* *.md: typo corrections [!1889](https://gitlab.com/Remmina/Remmina/merge_requests/1889) *@Cypresslin*</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;* Remove G+ from documents [!1888](https://gitlab.com/Remmina/Remmina/merge_requests/1888) *@Cypresslin*</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;## v1.3.5</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.4...v1.3.5)</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;**ATTENTION** New dependencies.</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;* -DWITH_KF5WALLET=ON is needed for the KDE Wallet plugin (and the kf5wallet libs to build it).</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;* webkit2gtk3 is needed to build the WWW plugin.</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;* libsodium is needed to buil Remmina</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;* rcw refactoring [!1815](https://gitlab.com/Remmina/Remmina/merge_requests/1815) *@giox069*</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;* Remmina files refactoring [!1814](https://gitlab.com/Remmina/Remmina/merge_requests/1814) *@antenore*</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;* RCW fixes [!1817](https://gitlab.com/Remmina/Remmina/merge_requests/1817) *@giox069*</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;* Update Czech translation [!1818](https://gitlab.com/Remmina/Remmina/merge_requests/1818) *@asciiwolf*</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;* Improve English wording [!1819](https://gitlab.com/Remmina/Remmina/merge_requests/1819) *@DevDef*</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;* Typographic fixes [!1820](https://gitlab.com/Remmina/Remmina/merge_requests/1820) *@DevDef*</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;* Fix typo timout → timeout [!1821](https://gitlab.com/Remmina/Remmina/merge_requests/1821) *@DevDef*</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;* Unset “120” (duration before locking) as a translatable string [!1822](https://gitlab.com/Remmina/Remmina/merge_requests/1822) *@DevDef*</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;* Update Czech translation [!1824](https://gitlab.com/Remmina/Remmina/merge_requests/1824) *@asciiwolf*</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;* Translate the new strings [!1823](https://gitlab.com/Remmina/Remmina/merge_requests/1823) *@DevDef*</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;* Patch 1 [!1825](https://gitlab.com/Remmina/Remmina/merge_requests/1825) *@DevDef*</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;* Unset “300” as a translatable string + grammar fix (some widget*s*) [!1829](https://gitlab.com/Remmina/Remmina/merge_requests/1829) *@DevDef*</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;* Update German translation [!1828](https://gitlab.com/Remmina/Remmina/merge_requests/1828) *@jweberhofer*</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;* Updated translation [!1830](https://gitlab.com/Remmina/Remmina/merge_requests/1830) *@DevDef*</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;* Restore a translation deleted after the removing of a wrong comma in its original string [!1831](https://gitlab.com/Remmina/Remmina/merge_requests/1831) *@DevDef*</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;* Updated Russian translation (sent from Soltys Sergey by e-mail) [!1832](https://gitlab.com/Remmina/Remmina/merge_requests/1832) *@DevDef*</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;* Replace non-interpreted HTML lists by text lists [!1833](https://gitlab.com/Remmina/Remmina/merge_requests/1833) *@DevDef*</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;* Remmina news dialog [!1835](https://gitlab.com/Remmina/Remmina/merge_requests/1835) *@antenore*</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;* Fixing unlock called in the wrong places [!1836](https://gitlab.com/Remmina/Remmina/merge_requests/1836) *@antenore*</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;* Show an error dialog instead of crashing, fixes issue #1896 [!1837](https://gitlab.com/Remmina/Remmina/merge_requests/1837) *@giox069*</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;* Resolve &quot;Remmina profile file always gets overwriten when connecting&quot; [!1838](https://gitlab.com/Remmina/Remmina/merge_requests/1838) *@antenore*</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;* Translate two new strings [!1839](https://gitlab.com/Remmina/Remmina/merge_requests/1839) *@DevDef*</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;* WWW plugin - A new plugin to connect to Webbased administration consoles fixes #551 [!1841](https://gitlab.com/Remmina/Remmina/merge_requests/1841) *@antenore*</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;* Fixes #1904 - Change Address to URL [!1842](https://gitlab.com/Remmina/Remmina/merge_requests/1842) *@antenore*</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;* Adding default settings on startup [!1843](https://gitlab.com/Remmina/Remmina/merge_requests/1843) *@antenore*</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;* Adding default settings on startup [!1844](https://gitlab.com/Remmina/Remmina/merge_requests/1844) *@antenore*</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;* flatpak: enable smartcard support [!1834](https://gitlab.com/Remmina/Remmina/merge_requests/1834) *@larchunix*</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;* WWW screenshot features [!1845](https://gitlab.com/Remmina/Remmina/merge_requests/1845) *@antenore*</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;* WWW Plugin improvements [!1846](https://gitlab.com/Remmina/Remmina/merge_requests/1846) *@antenore*</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;* Multiple fixes: duplicate tab, remmina_file warning, audible bell setting [!1847](https://gitlab.com/Remmina/Remmina/merge_requests/1847) *@antenore*</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;* Workaround for #1633 - re-ask user and password when auth error [!1848](https://gitlab.com/Remmina/Remmina/merge_requests/1848) *@antenore*</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;* Www enhance2 [!1850](https://gitlab.com/Remmina/Remmina/merge_requests/1850) *@antenore*</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;* Remmina main window improvements to gain space and reduce code [!1851](https://gitlab.com/Remmina/Remmina/merge_requests/1851) *@antenore*</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;* Updating italian translations [!1852](https://gitlab.com/Remmina/Remmina/merge_requests/1852) *@antenore*</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;* Updating German translation [!1853](https://gitlab.com/Remmina/Remmina/merge_requests/1853) *@jweberhofer*</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;* Complete the French translation [!1854](https://gitlab.com/Remmina/Remmina/merge_requests/1854) *@DevDef*</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;* Fixing typos of X.Org, Java and H.264 [!1855](https://gitlab.com/Remmina/Remmina/merge_requests/1855) *@antenore*</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;* Translations fixes [!1856](https://gitlab.com/Remmina/Remmina/merge_requests/1856) *@antenore*</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;* Complete the French translation [!1858](https://gitlab.com/Remmina/Remmina/merge_requests/1858) *@DevDef*</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;* Updated German translation [!1857](https://gitlab.com/Remmina/Remmina/merge_requests/1857) *@jweberhofer*</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;* www policies [!1859](https://gitlab.com/Remmina/Remmina/merge_requests/1859) *@antenore*</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;* Remove msgmerge -N option to enable fuzzy strings [!1860](https://gitlab.com/Remmina/Remmina/merge_requests/1860) *@DevDef*</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;* One more string translated to French [!1861](https://gitlab.com/Remmina/Remmina/merge_requests/1861) *@DevDef*</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;* Replace ru.po [!1862](https://gitlab.com/Remmina/Remmina/merge_requests/1862) *@TreefeedXavier*</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;* Update Croatian language [!1864](https://gitlab.com/Remmina/Remmina/merge_requests/1864) *@muzena*</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;* Remove outdated strings [!1865](https://gitlab.com/Remmina/Remmina/merge_requests/1865) *@DevDef*</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;* Fixing preferences menu in the rcw toolbar [!1866](https://gitlab.com/Remmina/Remmina/merge_requests/1866) *@antenore*</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;* UI Stats and News refactoring [!1868](https://gitlab.com/Remmina/Remmina/merge_requests/1868) *@antenore*</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;* Update tr.po [!1869](https://gitlab.com/Remmina/Remmina/merge_requests/1869) *@TeknoMobil*</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;* Update da.po [!1867](https://gitlab.com/Remmina/Remmina/merge_requests/1867) *@scootergrisen*</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;* Removed unused string in the remmina_news.glade file [!1870](https://gitlab.com/Remmina/Remmina/merge_requests/1870) *@antenore*</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;* Complete the French translation [!1871](https://gitlab.com/Remmina/Remmina/merge_requests/1871) *@DevDef*</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;* Adding support for internationalization [!1872](https://gitlab.com/Remmina/Remmina/merge_requests/1872) *@antenore*</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;* Kwallet [!1873](https://gitlab.com/Remmina/Remmina/merge_requests/1873) *@giox069*</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;* remmina.pref readonly patches [!1874](https://gitlab.com/Remmina/Remmina/merge_requests/1874) *@antenore*</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;* Add uid to news GET request [!1876](https://gitlab.com/Remmina/Remmina/merge_requests/1876) *@giox069*</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;* Remember last quickconnect selected protocol [!1875](https://gitlab.com/Remmina/Remmina/merge_requests/1875) *@giox069*</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;* Refactoring - warnings cleanup [!1877](https://gitlab.com/Remmina/Remmina/merge_requests/1877) *@antenore*</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;## v1.3.4</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.3...v1.3.4)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;* Updated to use core18 and gnome-3-28-1804 [!1797](https://gitlab.com/Remmina/Remmina/merge_requests/1797) *@kenvandine*</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;* Snap: Build snap in CI and publish to the edge channel for builds against master [!1810](https://gitlab.com/Remmina/Remmina/merge_requests/1810) *@kenvandine*</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;* Resolve &quot;SSH public key cannot be imported: Access denied for &#39;none&#39;. Authentication that can continie: publickey&quot; [!1811](https://gitlab.com/Remmina/Remmina/merge_requests/1811) *@antenore*</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;* snap: Ensure the icon is installed [!1812](https://gitlab.com/Remmina/Remmina/merge_requests/1812) *@kenvandine*</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;## v1.3.3</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;[full changelog](https://gitlab.com/Remmina/Remmina/compare/v1.3.2...v1.3.3)</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;* Fix “Utranslated” typo + XHTML 1.0 strictness + move div CSS rule in style block [!1785](https://gitlab.com/Remmina/Remmina/merge_requests/1785) *@DevDef*</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;* Revert autoclosed &lt;script&gt; tags. It seems to be badly surported [!1786](https://gitlab.com/Remmina/Remmina/merge_requests/1786) *@DevDef*</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;* Remmina connection window refactoring [!1787](https://gitlab.com/Remmina/Remmina/merge_requests/1787) *@antenore*</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;* Adding Serial and parallel ports sharing [!1788](https://gitlab.com/Remmina/Remmina/merge_requests/1788) *@antenore*</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;* Translation of the new strings [!1790](https://gitlab.com/Remmina/Remmina/merge_requests/1790) *@DevDef*</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;* Update de.po [!1789](https://gitlab.com/Remmina/Remmina/merge_requests/1789) *@OzzieIsaacs*</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;* Updating zh_CN.po from Zheng Qian [!1792](https://gitlab.com/Remmina/Remmina/merge_requests/1792) *@antenore*</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;* L10N Updating Italian translations [!1793](https://gitlab.com/Remmina/Remmina/merge_requests/1793) *@antenore*</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;* RemminaMain window refactoring - Removing deprecated functions. [!1794](https://gitlab.com/Remmina/Remmina/merge_requests/1794) *@antenore*</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;* Update fr.po [!1795](https://gitlab.com/Remmina/Remmina/merge_requests/1795) *@DevDef*</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;* Fix #1836 implementing the correct message panel when authenticating [!1796](https://gitlab.com/Remmina/Remmina/merge_requests/1796) *@antenore*</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;* Make ssh tunnel pwd user manageable and public key import [!1798](https://gitlab.com/Remmina/Remmina/merge_requests/1798) *@giox069*</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;* Update tr.po turkish translation [!1799](https://gitlab.com/Remmina/Remmina/merge_requests/1799) *@TeknoMobil*</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;* Translate 3 new strings [!1800](https://gitlab.com/Remmina/Remmina/merge_requests/1800) *@DevDef*</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;* Vnci fixes [!1801](https://gitlab.com/Remmina/Remmina/merge_requests/1801) *@antenore*</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;* Update fr.po [!1802](https://gitlab.com/Remmina/Remmina/merge_requests/1802) *@DevDef*</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;* Translate new strings to German [!1803](https://gitlab.com/Remmina/Remmina/merge_requests/1803) *@jweberhofer*</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;* Fix Yes/No inversion [!1805](https://gitlab.com/Remmina/Remmina/merge_requests/1805) *@DevDef*</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;* Update Danish translation [!1804](https://gitlab.com/Remmina/Remmina/merge_requests/1804) *@scootergrisen*</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;* Remmina release v.1.3.3 [!1807](https://gitlab.com/Remmina/Remmina/merge_requests/1807) *@antenore*</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"> 322</span>&#160;## [v1.3.2](https://gitlab.com/Remmina/Remmina/tags/v1.3.2) (2019-01-31)</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;* Change rcw size allocation wait algorithm, see issue #1809 (by Giovanni Panozzo)</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;* Fix a couple of VNCI crashes, see issue #1821 (by Giovanni Panozzo)</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;* Fix spice authentication, issue #1820 (by Giovanni Panozzo)</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;* Update translations script fixes (by Antenore Gatta)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;* Add a missing end point in an SSH error message (by Davy Defaud)</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;* Complete the French translation (by Davy Defaud)</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;* New strings for it.po (by Giovanni Panozzo)</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;* Remmina Translations Statistics (by Antenore Gatta)</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;* Remmina Translation Report (by Antenore Gatta)</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;* Cosmetics fixes: (by Antenore Gatta &amp; Davy Defaud)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;* Development Documentation fixes (by Antenore Gatta)</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;## [v1.3.1](https://gitlab.com/Remmina/Remmina/tags/v1.3.1) (2019-01-28)</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;### Bug Fixing release</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;[Giovanni Panozzo](@giox069) has fixed many issues that have been introduced during the last release.</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;Additionally a great rework has been done by [Davy Defaud](@DevDef) to fix many</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;typographic errors and translations.</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;[Wolfgang Scherer](@wolfmanx) has fixed an annoying clipboard bug in the VNC plugin.</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;### List of changes</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;* Updated author files (Antenore Gatta)</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;* Version bump (Antenore Gatta)</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;* Merge branch &#39;german-translation&#39; into &#39;master&#39; (Davy Defaud)</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;* Updated german translation (Johannes Weberhofer)</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;* Updated translations (Antenore Gatta)</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;* Fixed pot generation (Antenore Gatta)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;* Fixed LINGUAS format (Antenore Gatta)</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;* Merge branch &#39;typographic_fixes&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;* Use uppercase for VNC, SSH, SFTP and RDP protocol names (Davy Defaud)</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;* Gettextize more SSH error messages (Davy Defaud)</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;* Replace single quotes by true apostrophes (Davy Defaud)</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;* Replace all triple points by ellipsis characters (Davy Defaud)</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;* Remove space before colons in English strings (Davy Defaud)</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;* Fix English typo transmittion → transmission (Davy Defaud)</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;* Fix a bad indent (spaces instead of a tab) (Davy Defaud)</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;* Merge branch &#39;vnc-blocks-after-clipboard&#39; into &#39;master&#39; (Giovanni Panozzo)</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;* VNC: prevent client from blocking when remote clipboard is changed (Wolfgang Scherer)</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;* Merge branch &#39;master&#39; into &#39;master&#39; (Davy Defaud)</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;* Updated ru.po for more human-like language (TreefeedXavier)</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;* Merge branch &#39;patch-5&#39; into &#39;master&#39; (Davy Defaud)</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;* Performance improvement (Antenore Gatta)</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;* Bump documentation version (Antenore Gatta)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;* Fixing docker image (Antenore Gatta)</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;* Add background class to message panel (Giovanni Panozzo)</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;* Merge branch &#39;css_fix&#39; into &#39;master&#39; (Giovanni Panozzo)</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;* Fix password field focusing, see issue #1811 (Giovanni Panozzo)</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;* Fix CSS of message panel and tab page (Giovanni Panozzo)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;* Merge branch &#39;master&#39; of gitlab.com:Remmina/Remmina (Antenore Gatta)</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;* Logo documentation (Antenore Gatta)</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;* Merge branch &#39;italian-strings&#39; into &#39;master&#39; (Davy Defaud)</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;* Remove the duplicate of the first header line (Davy Defaud)</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;* Some strings for it.po (Giovanni Panozzo)</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;* Merge branch &#39;rcw_fixess&#39; into &#39;master&#39; (Giovanni Panozzo)</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;* rcw fixes for fullscreen mode (Giovanni Panozzo)</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;* all rows translated (Serdar Sağlam)</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;* Merge branch &#39;master&#39; of https://gitlab.com/Remmina/Remmina (Giovanni Panozzo)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;* Fix border appearing in VIEWPORT_FULLSCREEN_MODE when not needed (Giovanni Panozzo)</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;* Merge branch &#39;1813-a-few-fixes-improvements-for-the-po-files&#39; into &#39;master&#39; (Davy Defaud)</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;* Fix scrolling in VIEWPORT_FULLSCREEN_MODE (Giovanni Panozzo)</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;* Correctly reparent MessagePanel when moving a tab (Giovanni Panozzo)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;* Make ftb visible before connecting (Giovanni Panozzo)</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;* Add the missing plural forms of a translation (yet to be translated…) (Davy Defaud)</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;* Add missing format specification in a Spanish translation string (Davy Defaud)</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;* Fix missing language code in po some file headers (Davy Defaud)</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;* Merge branch &#39;patch-4&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;* Update tr.po (Serdar Sağlam)</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;* Merge branch &#39;blackmp&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;* remove black background (Antenore Gatta)</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;* Merge branch &#39;issue-1809&#39; into &#39;master&#39; (Giovanni Panozzo)</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;* Set notebook current page to 1st page on new cnnwin (Giovanni Panozzo)</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;* Merge branch &#39;issue1810-icons&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;* Removed edit-delete.svg from the repository (Antenore Gatta)</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;* Merge branch &#39;issue1810-icons&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;* Removed edit-delete icon - fixes #1810 (Antenore Gatta)</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;* Merge branch &#39;patch-1&#39; into &#39;master&#39; (Antenore Gatta)</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;* flatpak: update spice-gtk from 0.35 to 0.36 (Denis Ollier)</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;* Translate the two new strings recently added (Davy Defaud)</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;## [v1.3.0](https://gitlab.com/Remmina/Remmina/tags/v1.3.0) (2019-01-18)</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;### Most notable</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"> 417</span>&#160;* Use window resolution #1 (by Giovanni Panozzo)</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;* rcw_preopen complete (by Giovanni Panozzo)</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;* RDP: new global parameter rdp_map_keycode (by Giovanni Panozzo)</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;* Use decimal instead of hex on rdp keycode map (by Giovanni Panozzo)</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;### Translations</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;* Adding basic script to update the po files (by Antenore Gatta)</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;* Added remmina.pot (by Antenore Gatta)</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;* Change es_VE.po header (Language-Team and Language) (by Antenore Gatta)</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;* Fixed some Italian translations (by Antenore Gatta)</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;* Fixing es_VE Spanish #1797 (by Antenore Gatta)</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;* French translation update for v1.3.0 (by Davy Defaud)</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;* Improving i18n subsystem (by Antenore Gatta)</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;* Russian translation updated (fully translated) (by TreefeedXavier)</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;* Translations - Fixing errors reported in the issue #1797 (by Antenore Gatta)</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;* Update Hungarian translation (by Meskó Balázs)</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;* Update de.po (by Ozzie Isaacs)</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;* Update tr.po (by Serdar Sağlam)</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;* Updated german translation (by Ozzie Isaacs)</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;* Updated ru.po (by TreefeedXavier)</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;* Updated translators list ru.po (by TreefeedXavier)</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;* Updating da.po (by Antenore Gatta)</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;* Updating po translation files (by Antenore Gatta)</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;* Updating translation credits (by Antenore Gatta)</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;### Other enhancements and fixes</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;* Added xrdp friendly options Closes #1742 (by Antenore Gatta)</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;* Adding language detection (by Antenore Gatta)</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;* Auth panel widget placement (by Antenore Gatta)</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;* CSS modifications to adapt to stock Gnome and Gtk themes (by Antenore Gatta)</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;* Correctly set focus after rcw_preopen (by Giovanni Panozzo)</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;* Deprecates dynamic_resolution_width and height cfg params (by Giovanni Panozzo)</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;* Disable glyph cache by default (by Antenore Gatta)</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;* Fix crash when showing password panel (by Giovanni Panozzo)</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;* Fix gtk_window_present_with_time() time (by Giovanni Panozzo)</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;* Fixed build for the flatpak (by Antenore Gatta)</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;* Fixed missing icons (by Antenore Gatta)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;* Gtk deprecation and CSS restzling (by Antenore Gatta)</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;* Gtk icon cache update during install phase (by Antenore Gatta)</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;* Icons and gtk fixes for rcw_reopen (by Antenore Gatta)</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;* Make menu items paintable by the application (by Antenore Gatta)</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;* Open connection window before connecting (by Giovanni Panozzo)</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;* Prevent toolbar signals while reconfiguring toolbar (by Giovanni Panozzo)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;* RDP fixes: remove redundant rfi-&gt;width/rfi-&gt;height and more (by Giovanni Panozzo)</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;* RDP: correctly destroy rfi-&gt;surface during a desktop resize (by Giovanni Panozzo)</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;* RDP: move gdi_resize() to a better place (by Giovanni Panozzo)</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;* RDP: remove unneeded OrderSupport struct init (by Giovanni Panozzo)</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;* Remove deprecated floating toolbar toplevel window (by Giovanni Panozzo)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;* Search box clear icon (by Giovanni Panozzo)</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;* Update CONTRIBUTING.md (by Antenore Gatta)</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;* Update README.md (by Antenore Gatta)</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;* Update toolbar button handling (by Giovanni Panozzo)</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;* Updated CSS to have black background in fullscreen (by Antenore Gatta)</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;* Updated sponsor list (by Antenore Gatta)</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;* Updated wiki URLs (by Antenore Gatta)</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;* Updating Doxygen config (by Antenore Gatta)</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;* Updating coyright for year 2019 (by Antenore Gatta)</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;* VNC: Fix possible crash during connection (by Giovanni Panozzo)</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;* allow closing tab after error message panel is shown (by Giovanni Panozzo)</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;* flatpak: update freerdp from 2.0.0-rc3 to 2.0.0-rc4 (by Denis Ollier)</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;* flatpak: update gnome sdk from 3.28 to 3.30 (by Denis Ollier)</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;* flatpak: update libssh from 0.8.5 to 0.8.6 (by Denis Ollier)</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;* flatpak: update libvncserver from 0.9.11 to 0.9.12 (by Denis Ollier)</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;* flatpak: update nx-libs from 3.5.99.16 to 3.5.99.17 (by Denis Ollier)</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;* flatpak: update six from 1.11.0 to 1.12.0 (by Denis Ollier)</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;## [v1.2.32.1](https://gitlab.com/Remmina/Remmina/tags/v1.2.32.1) (2018-11-14)</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;* Add desktop-gnome-platform and fix themes in SNAP, fixes issue #1730 and fixes missing SNAP localization (Giovanni Panozzo)</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;* Fix SNAP icon (Giovanni Panozzo)</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;* flatpak: update libssh from 0.8.2 to 0.8.3 (Denis Ollier)</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;* flatpak: update libssh from 0.8.3 to 0.8.4 (Denis Ollier)</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;* flatpak: update libssh from 0.8.4 to 0.8.5 (Denis Ollier)</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;* flatpak: update lz4 from 1.8.2 to 1.8.3 (Denis Ollier)</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;* flatpak: update pyparsing from 2.2.0 to 2.2.1 (Denis Ollier)</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;* flatpak: update pyparsing from 2.2.1 to 2.2.2 (Denis Ollier)</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;* flatpak: update pyparsing from 2.2.2 to 2.3.0 (Denis Ollier)</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;* Implement smartcard name setting. Should fix #1737 (Antenore Gatta)</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;* man+help: elaborate on file types of -connect and -edit cmd line options (Mikkel Kirkgaard Nielsen)</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;* RDP: add FREERDP_ERROR_SERVER_DENIED_CONNECTION message (Giovanni Panozzo)</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;* Removing X11Forwarding code as it is wrong and causing issues (Antenore Gatta)</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;* Update fix tr.po (Serdar Sağlam)</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;## [v1.2.32](https://gitlab.com/Remmina/Remmina/tags/v1.2.32) (2018-10-06)</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;* Avoid to save last_success property if stats are not enabled. @antenore</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;* GW auth data was saved in the server auth data. @antenore</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;* Do not register socket plugins when X11 is not available. @antenore</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;* Screenshot enhancements. @antenore</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;* RDP GW authentication. @antenore</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;* Adding global preference for search bar visibility. @antenore</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;* Allow wayland backend again when GTK &gt;= 3.22.27. @giox069</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;* tr.po @TeknoMobil</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;* Add option to honour https_proxy and http_proxy environment variable. @antenore</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;* Force program name to app id. @antenore</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;* Printing builds flags with remmina --full-version command option. @antenore</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;* New plugin Simple Terminal. @antenore</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;* Fix KB grabbing when switching workspace. @giox069</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;* Dealing correcthly with some deprecations, getting rid of most of G_GNUC_BEGIN_IGNORE_DEPRECATIONS. @antenore</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;* Improving file type hadling. @antenore</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;* Adding error check on remmina_pref_save. @antenore</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;* Many bug fixing as usual.</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;## [v1.2.31.4](https://gitlab.com/Remmina/Remmina/tags/v1.2.31.4) (2018-08-24)</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;This is a bug fixing release.</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;**Fixed bugs:**</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;* Fix KB grabbing when switching workspace.</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;* Fix some possible crashes when reading a remminafile.</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;* Fixes a crash deleting XDMCP profile.</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;* Fixing libssh deprecations.</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;**Implemented enhancements:**</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;* Improving file type hadling.</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;* flatpak: update libssh from 0.7.5 to 0.8.1</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;* flatpak: update freerdp from 2.0.0-rc2 to 2.0.0-rc3</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;* Snap: update to libssh 0.8.0.</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;## [v1.2.31.3](https://gitlab.com/Remmina/Remmina/tags/v1.2.31.3) (2018-08-14)</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;This is a bug fixing release.</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;**Fixed bugs:**</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;* Do not send stats if the remmina.pref file is read-only.</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;* cmake: include libssh_threads only when available.</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;* Set program class to REMMINA_APP_ID, fixes #1706.</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;**Implemented enhancements:**</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;* Implement send ctrl+alt+fn keys. Closes #1707.</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;## [v1.2.31.1](https://gitlab.com/Remmina/Remmina/tags/v1.2.31.1) (2018-07-31)</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;This is a bug fixing release.</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;**Fixed bugs:**</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;* Cannot minimize in fullscreen mode.</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;* Crash with the RDP plugin.</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;* Missing manual pages for Debian.</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;**Closed issues:**</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;* Minimize window doesn&#39;t minimize the window [\#1696](https://gitlab.com/Remmina/Remmina/issues/1696)</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;* Minimize window button is disable, after connecting to RDS [\#1700](https://gitlab.com/Remmina/Remmina/issues/1700)</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;## [v1.2.31](https://gitlab.com/Remmina/Remmina/tags/v1.2.31) (2018-07-28)</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;This is the first release on GitLab and we are still moving and adapting tools and</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;integrations, therefore this changelog is quite short than usually.</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;Notables changes since the last release are:</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;* Custom color schemes per profile for the SSH plugin (@denk_mal).</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;* Flatpak updates and fixes (@larchunix)</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;* Kiosk mode with integration in the login manager (@antenore).</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;* New Icons (@antenore and @larchunix).</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;* SFTP tool password fixes (@Feishi).</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;* Several fixes around RDP and compilations issues (@giox069 and @larchunix).</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_c_h_a_n_g_e_l_o_g_8md.html">CHANGELOG.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md.html b/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md.html
new file mode 100644
index 000000000..ae5acbe34
--- /dev/null
+++ b/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: CONTRIBUTING.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_c_o_n_t_r_i_b_u_t_i_n_g_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">CONTRIBUTING.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_c_o_n_t_r_i_b_u_t_i_n_g_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_c_o_n_t_r_i_b_u_t_i_n_g_8md.html">CONTRIBUTING.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md_source.html b/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md_source.html
new file mode 100644
index 000000000..6225399a4
--- /dev/null
+++ b/docs/_c_o_n_t_r_i_b_u_t_i_n_g_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: CONTRIBUTING.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_c_o_n_t_r_i_b_u_t_i_n_g_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">CONTRIBUTING.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_c_o_n_t_r_i_b_u_t_i_n_g_8md.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;Welcome, we are a kind, open-minded, simple community. All help welcome, in any way you can think of.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;## Coding</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;**Remmina** uses the [fork and pull](https://stackoverflow.com/questions/11582995/what-is-the-fork-pull-model-in-github) model.</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;If you&amp;#8217;d like to make changes to this project, the following steps will get you there!</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160; 1. Fork [this repo](https://gitlab.com/Remmina/Remmina/forks/new)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; 2. Make your changes</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; 3. [Submit a merge request](https://gitlab.com/Remmina/Remmina/merge_requests/new)</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;The [wiki](https://gitlab.com/Remmina/Remmina/wikis/home) has details on how to compile Remmina and FreeRDP.</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;Look for issues labeled [&amp;#8220;help wanted&amp;#8221;](https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=help+wanted). There are also paid bounties available.</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;Know how to fix a bug or implement anything requested or completely new, but lack the time? Get in touch, **We can pay for some hours of your time. Don&#39;t be shy.**</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;### Fix existing bugs</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;In general, this is the most important task.</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;To see all the issues already labeled as bugs, you can use [this query](https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=bug)</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;### Implement most wanted features and fixes (_bounty $305_)</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;Similarly, we have a quite important list of feature requests, that are labeled as [enhancement](https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=enhancement&amp;sort=created_date&amp;state=opened), of which some that have a [bounty](https://gitlab.com/Remmina/Remmina/issues?scope=all&amp;utf8=%E2%9C%93&amp;state=opened&amp;label_name[]=enhancement&amp;label_name[]=bounty) for those that will be able to implement them.</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; * [#476](https://gitlab.com/Remmina/Remmina/issues/476) : Favorite and recent connections [$5]</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; * [#376](https://gitlab.com/Remmina/Remmina/issues/376) : RDP: Multi monitor support [$15]</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;### Internal projects</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; * Refactoring [remmina\_connection\_window.c](https://gitlab.com/Remmina/Remmina/blob/master/src/remmina_connection_window.c) as it is big, complicated and hard to extend.</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; * Simplify the user interface.</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; * Separate plugin processes from the main process to improve stability.</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; * Write an additional plugin system to write plugins also in Python and eventually Ruby.</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;## Documentation</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;Submit user and developer guides in any (accessible) format you want (screencasts, PDF, HTML, Open Document, .gs, .ps, LaTeX, GitLab wiki , etc).</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;* [Wiki](https://gitlab.com/Remmina/Remmina/wikis/home)</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;* [Dev documentation](https://remmina.gitlab.io/remminadoc.gitlab.io)</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;Commenting the source code and writing checks is also an ongoing process.</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;## Donating</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;Financial contributions help make Remmina a lot.</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;More info to be found on the [Remmina website donation page](/donations/).</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;[List of all the great supporters](https://remmina.org/donations/#donors).</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;## Merchandise</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;From our store on [TEEPUBLIC](http://tee.pub/lic/CfbUoWiygXM) you can get [mugged](http://tee.pub/lic/fgVKOyGjHgc), your ThinkPad [covered](http://tee.pub/lic/fgVKOyGjHgc) and clad in this most compelling [T-shirt](http://tee.pub/lic/fgVKOyGjHgc).</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;## Report bugs, ideas, issues</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;Install it, use it and report What doesn&amp;#8217;t work, is missing, or ugly. Don&amp;#8217;t hesitate to let us know.</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;For bug and feature requests, use [GitLab issues](https://gitlab.com/Remmina/Remmina/issues) or ask on IRC. #remmina on freenode.</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;## Screenshots</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;Send in pictures or screengrabs of your setup.</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;## Translation</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;Help translate Remmina to your language.</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;* [Weblate](https://hosted.weblate.org/projects/remmina/)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;## Videos</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;- As short as you can. Around 2 minutes to maximum 4 minutes.</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;- Avoid showing copyrighted and distracting content, even custom/other desktop icons should not be shown.</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;Videos demonstrating different ways to use Remmina, the more the merrier!</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;The original video is needed, as it will be uploaded to video streaming services, if you need support let us know.</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;These would make good topics for videos:</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;- Configuration and use of a basic RDP profile, quickly showing the most common controls (resizes, toolbar placement, screenshots, …).</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;- Creation of a default profile.</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;- Cration of and connection to a VNC server.</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;- Using a basic SSH tunnel.</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;### Disclaimer</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;Your video will be uploaded to video streaming services, under the respective Remmina account at each site.</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;You can add a watermark with the details you want to share, and a caption will be added in the linked video.</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;Pick a suitable license, like CC-BY-SA 4.0-intl.</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;Sending an unedited video is fine too.</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;### Desktop/screen video recorder</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;- [SimpleScreenRecorder](https://www.maartenbaert.be/simplescreenrecorder/)</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;- [OBS Studio](https://obsproject.com/)</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"> 78</span>&#160;### Video editors</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;There are many video editors for Linux|GNU. [OpenShot](https://www.openshot.org/) is good.</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;To produce good looking videos choose a 1080p profile.</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;### Share your videos with us</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;If you don&#39;t want to use reep.io, get in contact at admin@remmina.org.</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;[reep.io](https://reep.io/) is a P2P file-sharing system, meaning there are no servers in the middle.</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_c_o_n_t_r_i_b_u_t_i_n_g_8md.html">CONTRIBUTING.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compilation-guide-for-_r_h_e_l_8md.html b/docs/_compilation-guide-for-_r_h_e_l_8md.html
new file mode 100644
index 000000000..dccafb421
--- /dev/null
+++ b/docs/_compilation-guide-for-_r_h_e_l_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation-guide-for-RHEL.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compilation-guide-for-_r_h_e_l_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation-guide-for-RHEL.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compilation-guide-for-_r_h_e_l_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compilation-guide-for-_r_h_e_l_8md.html">Compilation-guide-for-RHEL.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compilation-guide-for-_r_h_e_l_8md_source.html b/docs/_compilation-guide-for-_r_h_e_l_8md_source.html
new file mode 100644
index 000000000..953bcbd39
--- /dev/null
+++ b/docs/_compilation-guide-for-_r_h_e_l_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation-guide-for-RHEL.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compilation-guide-for-_r_h_e_l_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation-guide-for-RHEL.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compilation-guide-for-_r_h_e_l_8md.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;These are the instructions for people who want to test the latest version of Remmina (`master` branch) on RHEL-like operating systems.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Current version of this guide was tested on vanilla CentOS 7 GNOME Desktop (specifically: [CentOS-7-x86_64-DVD-1908.iso](http://tux.rainside.sk/centos/7.7.1908/isos/x86_64/)), CentOS 8 Workstation (specifically: [CentOS-8.1.1911-x86_64-dvd1.iso](http://tux.rainside.sk/centos/8.1.1911/isos/x86_64/)) and Fedora 31 x86_64 (specifically: [Fedora-Workstation-Live-x86_64-31-1.9.iso](https://download.fedoraproject.org/pub/fedora/linux/releases/31/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-31-1.9.iso)). However, it should work on all CentOS 7+, Red Hat 7+ and Fedora 20+ versions. If you find anything not working, raise an [issue](https://gitlab.com/Remmina/Remmina/issues/new).</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;Note that although on CentOS 8 and Fedora, they use `dnf` package manager, there is still the `yum` symlink to `dnf`, so we decided to keep `yum` in this guide to make it usable on all of these distributions without any modifications.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;If you want to uninstall the program, follow the instructions in the step 0.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;**0.** It is important that no other Remmina or FreeRDP version is installed, therefore we need to remove it.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;```bash</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;# To check if a program is installed, we can use `whereis [program(s)]`</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;whereis freerdp remmina</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;# When FreeRDP is installed from the CentOS repo, use this command to remove it</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;sudo yum -y remove freerdp*</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;# When FreeRDP is installed from source code, enter the FreeRDP source code folder</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# and run the following command</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;cd ${HOME}/freerdp</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;sudo rm $(cat install_manifest.txt)</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;# When Remmina is installed from the CentOS repo, use this command to remove it</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;sudo yum -y remove remmina*</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;# When Remmina is installed from source code, enter the `build` folder</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;# in Remmina source code folder and run the following command</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;cd ${HOME}/remmina/build</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;sudo make uninstall</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;# Finally, we need to delete the empty folders of Remmina and FreeRDP</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;# This needs to be run for uninstallation of either programs</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;sudo rmdir $(find $(whereis freerdp remmina | grep -Po &quot;^[^:]*: \K.*$&quot;) -type d | tac)</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;**1.** Add necessary repos. Note that on CentOS 7 GNOME Desktop only `epel` and `rpmfusion-free-updates` are not installed by default. I presume that `base`, `extras` and `updates` repos are installed on all version of CentOS 7.</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;```bash</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;# Get some information of the currently installed distribution</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;# Note: This is used to determine what repositories are need to be be installed</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;# and to create the relevant URLs</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;distro_name=&quot;$(grep -Po &#39;^ID=&quot;*\K[^&quot;]*&#39; /etc/os-release)&quot;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;distro_version=&quot;$(rpm -E %$distro_name)&quot;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; distro_name_short=&#39;fedora&#39;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;else</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; distro_name_short=&#39;el&#39;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; epel_repo=&#39;epel-release&#39;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;fi</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;# epel (on CentOS only): required for `openjpeg2-devel`, `openssl-devel`</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;# rpmfusion-free-updates (on both CentOS and Fedora): required for `ffmpeg-devel`</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;# PowerTools (on CentOS 8+ only)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;# okay (on CentOS 8+); required for `avahi-ui-devel`, `openh264`, `libopenh264-devel`, `libx264-devel`</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;sudo yum -y install $epel_repo \</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;if [ &quot;$distro_name&quot; = &#39;centos&#39; ] &amp;&amp; [ &quot;$distro_version&quot; = 8 ]; then</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; sudo dnf config-manager --enable PowerTools</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; sudo rpm -ivh http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm</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; # Disable okay repo for potential package conflicts</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; sudo dnf config-manager --disable okay</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;fi</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; sudo dnf config-manager --enable fedora-cisco-openh264</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;fi</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;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;**3.** Update `yum` cache and packages. This step might require a reboot.</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;```bash</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;sudo yum -y upgrade</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;```</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;**4.** Install dependencies of FreeRDP and Remmina. Note that the installation dependencies for FreeRDP and Remmina was merged. If you want to know exactly which program requires which package, see the [Dependencies](#dependencies) section at the end of this document.</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;```bash</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;sudo yum -y install alsa-lib-devel atk-devel avahi-ui-gtk3 cairo-devel cmake3 \</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ git glib2-devel gnutls-devel \</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; gstreamer1-devel gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel \</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; json-glib-devel libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel \</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; libsecret-devel libSM-devel libsodium libsodium-devel libsoup-devel libssh-devel \</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; libusb-devel libvncserver-devel libX11-devel libXcursor-devel libXdamage-devel \</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; libXext-devel libXi-devel libXinerama-devel libxkbfile-devel libXrandr-devel libxslt \</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; libxslt-devel libXtst-devel libXv-devel make ninja-build openjpeg2-devel \</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; openssl-devel pango-devel pulseaudio-libs-devel vte291 vte291-devel webkitgtk4-devel \</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; xmlto xorg-x11-server-utils</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;# On CentOS 8</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;if [ &quot;$distro_name&quot; = &#39;centos&#39; ] &amp;&amp; [ &quot;$distro_version&quot; = 8 ]; then</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; sudo yum -y install --enablerepo=okay avahi-ui-devel openh264 libopenh264-devel libx264-devel</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;fi</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;# On Fedora</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; # TODO: Do we really need `libx264`? Or even `openh264` (that for CentOS too)?</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; sudo yum -y install avahi-ui-devel libx264 libx264-devel openh264 openh264-devel</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;fi</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;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;**5.** Clone FreeRDP and Remmina repos. You may want to modify the `${HOME}/{freerdp,remmina}` paths and the folder names.</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;```bash</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git ${HOME}/freerdp</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git ${HOME}/remmina</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;```</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;**6.** Build FreeRDP.</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;```bash</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;mkdir ${HOME}/freerdp/build</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;cd ${HOME}/freerdp/build</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;# In the following line, the `DWITH_PULSE=ON` option needs to be included</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is required when `-DCMAKE_INSTALL_PREFIX:PATH`</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;# is not `/usr`; otherwise Remmina will not find the `libfreerdp*` libraries</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;# Note: `-DWITH_OPENH264=ON -DWITH_X264=OFF` makes FreeRDP use H264 which results</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;# in extreme good quality for a quite good performance</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;cmake3 -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off \</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; -DCMAKE_INSTALL_LIBDIR=/usr/lib64 -DCMAKE_INSTALL_PREFIX:PATH=/opt -DWITH_OPENH264=ON \</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; -DWITH_X264=OFF ..</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;make &amp;&amp; sudo make install</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;# If you install FreeRDP and Remmina to `/opt`, you need to add `/opt/bin` to PATH</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;export PATH=&quot;$PATH:/opt/bin&quot;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;echo &#39;export PATH=&quot;$PATH:/opt/bin&quot;&#39; &gt;&gt; ${HOME}/.bashrc</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;# You can test FreeRDP by connecting to an RDP host</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</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;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;```bash</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;sudo ldconfig</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;```</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;**8.** Build Remmina.</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;```bash</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;mkdir ${HOME}/remmina/build</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;cd ${HOME}/remmina/build</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;# Note: `-DCMAKE_INSTALL_LIBDIR=/usr/lib64` is not required to successfully run Remmina,</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;# but `/usr/lib64` is the proper location for the libraries; again, it is not required</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;# at all when Remmina is installed to `/usr`</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt -DCMAKE_INSTALL_LIBDIR=/usr/lib64 \</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; -DCMAKE_PREFIX_PATH=/opt --build=build ..</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;```</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;**9.** If Remmina is installed to a custom path (e.g. for use `/opt`), we need to create some symlinks in order to .</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;```bash</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;sudo mkdir -p /usr/share/icons/hicolor/scalable/panel /usr/share/icons/hicolor/apps</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"> 150</span>&#160;for old in /opt/share/applications/*desktop $(find /opt/share/icons -type f | grep &#39;svg$\|png$&#39;); do</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; new=&quot;${old/opt/usr}&quot;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; sudo ln -s $old $new</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;done</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"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;**10.** Now you should be able to run Remmina with the following command or using the GUI.</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;```bash</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;remmina &amp;&gt; /dev/null &amp;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;```</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;## Notes</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;### Remmina in the system tray on GNOME 3</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;Current GNOME Shell versions does not include system tray, therefore vanilla GNOME will not show the Remmina system tray icon and menu. Press &lt;kbd&gt;Super&lt;/kbd&gt;+&lt;kbd&gt;M&lt;/kbd&gt; to see the Remmina icon on the message bar. If you want to fix this, you could install either [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/).</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;Below is a guide how to install the extension. For more information on installing the `chrome-gnome-shell` , see the [documentation](https://wiki.gnome.org/Projects/GnomeShellIntegrationForChrome/Installation)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;&lt;details&gt;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; &lt;summary&gt;&lt;b&gt;How to install [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) extension&lt;/b&gt;&lt;/summary&gt;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;This method installs the extension locally (i.e. for current user only).</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;1. Install `chrome-gnome-shell` package.</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;```bash</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;sudo yum -y install chrome-gnome-shell</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;```</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;2. Install the browser extension. Go to [GNOME extension website](https://extensions.gnome.org) and click on _Click here to install browser extension_; or you can install it from [Firefox Browser Add-ons](https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/).</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;3. Install the [KStatusNotifierItem/AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/) extension by clicking on the toggle on that page (it must be on `on` position). Then confirm the installation.</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;4. Don&#39;t forget to re-login the GNOME. :smiley:</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;&lt;/details&gt;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;### Remmina in the system tray on Xfce</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;&gt; :information_source: This might be outdated. If you know the current state of this issue or any workaround(s), open an [issue](https://gitlab.com/Remmina/Remmina/issues/new).</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;Xfce and other desktop environments without app indicator support, will not show you the system tray icon if you are executing Remmina from its compilation folder (e.g. `~/remmina`) because it contains a folder named `remmina`. For more infomation, see [Bug #1363277 on Launchpad](https://bugs.launchpad.net/libappindicator/+bug/1363277).</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"> 193</span>&#160;### Dependencies</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;1. If you are cloning the repositories, you need `git`.</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;2. FreeRDP dependencies:</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;```bash</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;# Official guide (src: https://github.com/FreeRDP/FreeRDP/wiki/Compilation [rhel based])</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;gcc cmake ninja-build openssl-devel libX11-devel libXext-devel libXinerama-devel \</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; libXcursor-devel libXi-devel libXdamage-devel libXv-devel libxkbfile-devel \</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; alsa-lib-devel cups-devel ffmpeg-devel glib2-devel libusb-devel</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;# We had to install these at least on CentOS 8, but they are probably required on CentOS 7 too;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;# otherwise the build failed</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;make gcc-c++ pulseaudio-libs-devel libXrandr-devel</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;# Recommended: these are required to build man pages</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;libxslt libxslt-devel docbook-style-xsl</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;# Recommended: for multimedia redirection, audio and video playback</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;gstreamer1-devel gstreamer1-plugins-base-devel</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;# Recommended: for some X11 addon</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;xorg-x11-server-utils</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;# Recommended: at build-time, FreeRDP states that this is &#39;required by virtual:world&#39;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;cairo-devel</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;```</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;3. Remmina dependencies (besides FreeRDP and its dependencies):</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;```bash</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;atk-devel avahi-ui-devel avahi-ui-gtk3 cmake3 gnutls-devel gtk3-devel harfbuzz-devel \</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; json-glib-devel libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel \</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; libgcrypt-devel libopenh264-devel libsecret-devel libSM-devel libsodium libsodium-devel \</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; libsoup-devel libssh-devel libvncserver-devel libx264-devel libXtst-devel openh264 \</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; openjpeg2-devel pango-devel vte291 vte291-devel webkitgtk4-devel xmlto</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compilation-guide-for-_r_h_e_l_8md.html">Compilation-guide-for-RHEL.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compilation_8md.html b/docs/_compilation_8md.html
new file mode 100644
index 000000000..91bf6a49c
--- /dev/null
+++ b/docs/_compilation_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compilation_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compilation_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compilation_8md.html">Compilation.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compilation_8md_source.html b/docs/_compilation_8md_source.html
new file mode 100644
index 000000000..5054ab5cc
--- /dev/null
+++ b/docs/_compilation_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compilation_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compilation_8md.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;We have tested the compilation of Remmina on several operating systems. Unfortunately, some of these guides are outdated. If you find some issues (or even better: their solutions), raise an [issue](https://gitlab.com/Remmina/Remmina/issues/new) please. :smiley:</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;- [Compilation guide for CentOS](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;- [Compile on Arch Linux](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux)</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;- [Compile on Debian 10 Buster](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster)</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;- [Compile on Debian 9 Stretch](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch)</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;- [Compile on Fedora 20 ~ 26](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;- [Compile on FreeBSD](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD)</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;- [Compile on Ubuntu 14.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04)</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;- [Compile on Ubuntu 16.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04)</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;- [Compile on Ubuntu 18.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04)</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;- [Compile on Ubuntu 20.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04)</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compilation_8md.html">Compilation.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_arch-_linux_8md.html b/docs/_compile-on-_arch-_linux_8md.html
new file mode 100644
index 000000000..93bf16fbc
--- /dev/null
+++ b/docs/_compile-on-_arch-_linux_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Arch-Linux.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_arch-_linux_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Arch-Linux.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_arch-_linux_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_arch-_linux_8md.html">Compile-on-Arch-Linux.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_arch-_linux_8md_source.html b/docs/_compile-on-_arch-_linux_8md_source.html
new file mode 100644
index 000000000..b5a2effe8
--- /dev/null
+++ b/docs/_compile-on-_arch-_linux_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Arch-Linux.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_arch-_linux_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Arch-Linux.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_arch-_linux_8md.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;# Quick and dirty guide for compiling remmina on Arch</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;These are the instructions for people who want to test the latest version of Remmina on Arch linux</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;You will obtain Remmina compiled under the /opt/remmina_devel/ subdir, so it will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You must be **root** to follow this guide.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;**1.** Update your system</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;```</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;pacman -Syu</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;```</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;and reboot if needed.</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;Install packages needed to compile FreeRDP and Remmina:</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;```shell</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;pacman -S base-devel git libssh libvncserver gnome-keyring libgnome-keyring libpulse \</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; vte3 cmake libappindicator-gtk3 docbook-utils docbook-xsl spice-gtk spice-protocol</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;```</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;**2.** Remove installed versions of remmina and freerdp</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;```</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;pacman -Rs remmina freerdp</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;```</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;```</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;```</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;```</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;cd FreeRDP</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;```</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;```</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;```</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;```</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;make &amp;&amp; make install</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;```</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Arch x64:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;```</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;echo /opt/remmina_devel/freerdp/lib64 | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;sudo ldconfig</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;Please note: in your system the above lib directory could be different (`/opt/remmina_devel/freerdp/` in manjaro)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;**8.** Link executable in /usr/local/bin</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;```</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;```</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;**9.** Test the new freerdp by connecting to a RDP host</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;```</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;```</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;**10.** Now clone remmina repository, to your devel dir:</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;```</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</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;**11.** Configure Remmina for compilation</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;cd Remmina</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;cmake -DWITH_TELEPATHY=off -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DWITH_APPINDICATOR=off -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;```</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;**12.** Compile remmina and install it</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;```</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;make &amp;&amp; make install</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"> 78</span>&#160;**13.** Link the executable</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;ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;```</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;**14.** Run remmina</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;```</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;remmina</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;NOTES for execution:</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;* Icons and .desktop files are not installed, so don&#39;t search for remmina in Gnome Shell. You can only launch it from a terminal or pressing ALT-F2 and typing remmina.</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;* Gnome Shell will never show you the system tray icon and menu. Press Super+M to see the remmina icon on the message bar.</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;## Uninstall everything</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;**1.** Remove the devel directory</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;rm -rf ~/remmina_devel/</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;**2.** Remove the binary directory and the symlink</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;```</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;rm -rf /opt/remmina_devel/ /usr/local/bin/remmina</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_arch-_linux_8md.html">Compile-on-Arch-Linux.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_debian-10-_buster_8md.html b/docs/_compile-on-_debian-10-_buster_8md.html
new file mode 100644
index 000000000..dc2f98ee3
--- /dev/null
+++ b/docs/_compile-on-_debian-10-_buster_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Debian-10-Buster.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_debian-10-_buster_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Debian-10-Buster.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_debian-10-_buster_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_debian-10-_buster_8md.html">Compile-on-Debian-10-Buster.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_debian-10-_buster_8md_source.html b/docs/_compile-on-_debian-10-_buster_8md_source.html
new file mode 100644
index 000000000..3c5ca4a3a
--- /dev/null
+++ b/docs/_compile-on-_debian-10-_buster_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Debian-10-Buster.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_debian-10-_buster_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Debian-10-Buster.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_debian-10-_buster_8md.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;# Quick and dirty guide for compiling remmina on Debian 10</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;These are instructions for people or software developers who want to contribute to the development of Remmina on Debian 10 Stretch.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You need to execute the following commands as root or as a user with sudo privileges (member of the sudo group).</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;Execute te following commands as root</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;```</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;sudo apt install build-essential git-core libssh-dev cmake libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; libxi-dev libavutil-dev libjson-glib-dev\</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt20-dev libpulse-dev \</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; libgnutls28-dev libsecret-1-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; libsodium-dev libkf5wallet-dev</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;```</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;**2.** As root, remove freerdp-x11 package and all packages containing the string remmina in the package name.</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;```</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;```</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;```</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;```</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;cd FreeRDP</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;```</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;```</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;```</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;```</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;```</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;```</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;sudo ldconfig</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;**8.** Create a symbolik link to the executable in /usr/local/bin</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</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;**9.** Test the new freerdp by connecting to a RDP host</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;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;**10.** Now clone remmina repository to your devel dir:</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;```</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</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;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;**11.** Configure Remmina for compilation</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;```</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;cd Remmina</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_KF5WALLET=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;```</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;**12.** Compile remmina and install it</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;make &amp;&amp; sudo make install</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;```</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;**13.** Create a symbolik link to the the executable</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;```</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;```</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;**14.** Run remmina</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;remmina</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;```</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</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"> 89</span>&#160;## Uninstall everything</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;**1.** Remove the devel directory</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;```</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;rm -rf ~/remmina_devel/</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"> 94</span>&#160;**2.** Remove the binary directory</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;sudo rm -rf /opt/remmina_devel/</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;```</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;**3.** Cleanup symlinks and dynamic loader</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;```</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;sudo ldconfig</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_debian-10-_buster_8md.html">Compile-on-Debian-10-Buster.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_debian-9-_stretch_8md.html b/docs/_compile-on-_debian-9-_stretch_8md.html
new file mode 100644
index 000000000..b44227df3
--- /dev/null
+++ b/docs/_compile-on-_debian-9-_stretch_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Debian-9-Stretch.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_debian-9-_stretch_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Debian-9-Stretch.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_debian-9-_stretch_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_debian-9-_stretch_8md.html">Compile-on-Debian-9-Stretch.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_debian-9-_stretch_8md_source.html b/docs/_compile-on-_debian-9-_stretch_8md_source.html
new file mode 100644
index 000000000..d1766121b
--- /dev/null
+++ b/docs/_compile-on-_debian-9-_stretch_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Debian-9-Stretch.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_debian-9-_stretch_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Debian-9-Stretch.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_debian-9-_stretch_8md.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;# Quick and dirty guide for compiling remmina on Debian 9</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;****NOTE: THIS IS NO LONGER REQUIRED, [REMMINA IS NOW AVAILABLE FROM DEBIAN BACKPORTS](https://www.remmina.org/wp/debian-the-boys-are-backport-in-town).****</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;These are instructions for people or software developers who want to contribute to the latest version of Remmina on Debian 9 Stretch.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;**Changelog**</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;* Initial write: May 1 2017.</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;You need to execute the following commands as root or as a user with sudo privileges (member of the sudo group).</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;Execute te following commands as root</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;```</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;sudo apt purge libssl-dev</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;sudo apt install build-essential git-core libssh-dev cmake libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; libxi-dev libavutil-dev libjson-glib-dev\</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libpulse-dev \</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; libgnutls28-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; libsodium-dev</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;```</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;**2.** As root, remove freerdp-x11 package and all packages containing the string remmina in the package name.</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;```</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;```</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</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;mkdir ~/remmina_devel</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;```</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;```</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;cd FreeRDP</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"> 46</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</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;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;```</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;```</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;```</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;sudo ldconfig</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;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;**8.** Create a symbolik link to the executable in /usr/local/bin</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;```</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;```</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;**9.** Test the new freerdp by connecting to a RDP host</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;```</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;```</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;**10.** Now clone remmina repository to your devel dir:</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;cd ~/remmina_devel</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;```</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;**11.** Configure Remmina for compilation</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;```</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;cd Remmina</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;```</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;**12.** Compile remmina and install it</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;```</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;make &amp;&amp; sudo make install</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;**13.** Create a symbolik link to the the executable</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;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;```</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;**14.** Run remmina</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;```</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;remmina</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"> 94</span>&#160;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</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;## Uninstall everything</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;**1.** Remove the devel directory</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;rm -rf ~/remmina_devel/</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;**2.** Remove the binary directory</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;```</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;sudo rm -rf /opt/remmina_devel/</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;```</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;**3.** Cleanup symlinks and dynamic loader</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;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;sudo ldconfig</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_debian-9-_stretch_8md.html">Compile-on-Debian-9-Stretch.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_free_b_s_d_8md.html b/docs/_compile-on-_free_b_s_d_8md.html
new file mode 100644
index 000000000..953034451
--- /dev/null
+++ b/docs/_compile-on-_free_b_s_d_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-FreeBSD.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_free_b_s_d_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-FreeBSD.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_free_b_s_d_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_free_b_s_d_8md.html">Compile-on-FreeBSD.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_free_b_s_d_8md_source.html b/docs/_compile-on-_free_b_s_d_8md_source.html
new file mode 100644
index 000000000..13264cc0e
--- /dev/null
+++ b/docs/_compile-on-_free_b_s_d_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-FreeBSD.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_free_b_s_d_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-FreeBSD.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_free_b_s_d_8md.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;# Compiling Remmina on FreeBSD 11</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;In order to use Remmina, you need at least one plugin, here we explain you how to build Remmina with most plugins but mainly with FreeRDP support.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;## How to compile FreeRDP</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;Follow the next procedure to compile FreerRDP</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;### Install FreeRDP dependencies</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;```sh</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;pkg install cmake gccmakedep git pkgconf libX11 libXext libXinerama libXcursor libXdamage libXv libxkbfile alsa-lib cups ffmpeg pulseaudio libssh libXi libXtst libXrandr xmlto gstreamer1 gstreamer1-plugins ffmpeg libx264 qt5-qmake qt5-buildtools</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;```</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;### Get FreeRDP code in you development environment</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;**1.** Prepare your dev environment</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;```</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;```</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;**2.** Get the source code</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;```</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;git clone --branch stable-2.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;cd FreeRDP</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;```</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;**3.** Configure FreeRDP</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;```</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;```</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;**4.** Compile and install</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;```</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;**5.** Add the freerdp library path to ldconfig</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;Edit the file `/etc/ld-elf.so.conf`, create it if it does not exits. A add the line</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;/opt/remmina_devel/freerdp/lib/</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;```</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;And then restart ldconfig with</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;```</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;service ldconfig restart</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;```</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;**6.** Link the xfreerdp executable</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;If you use Gnome, you probably have FreeRDP installed under /usr/local. Gnome needs vinagre that needs FreeRDP, so you won&#39;t be able to remove FreeRDP, that shouldn&#39;t be an issue as we installed the git version under /opt... But keep this in mind if you&#39;ll have troubles.</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;If you don&#39;t have Gnome, you can link xfreerdp under /usr/local/bin</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;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;```</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;**7.** Test xfreerdp</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;```</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;## How to compile Remmina</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;**1.** Install Remmina dependencies.</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;pkg install avahi-gtk3 gtk3 libgcrypt gnutls avahi vte3 telepathy-glib libSM openjpeg libvncserver libsodium libappindicator</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;**2.** Install gnome keyring or similar password storage for your specific desktop</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;pkg install gnome-keyring</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;**3.** Clone Remmina</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;```</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;```</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;**4.** Configure compile settings</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;```</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;cd Remmina</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_APPINDICATOR=OFF -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</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;**5.** Compile remmina and install it</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;```</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;make &amp;&amp; make install</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;**6.** Run Remmina</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;```</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;/opt/remmina_devel/remmina/bin/remmina</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_free_b_s_d_8md.html">Compile-on-FreeBSD.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-14_804_8md.html b/docs/_compile-on-_ubuntu-14_804_8md.html
new file mode 100644
index 000000000..d2d8f2ad0
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-14_804_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-14.04.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-14_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-14.04.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_ubuntu-14_804_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-14_804_8md.html">Compile-on-Ubuntu-14.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-14_804_8md_source.html b/docs/_compile-on-_ubuntu-14_804_8md_source.html
new file mode 100644
index 000000000..c706fa173
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-14_804_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-14.04.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-14_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-14.04.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_ubuntu-14_804_8md.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;# Quick and dirty guide for compiling remmina on ubuntu 14.04</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;### WARNING: remmina is no longer supported on ubuntu 14.04, see this [blog post](https://remmina.org/ubuntu-14-04-end-of-support/)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 14.04.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;If you are an end user and you want to install the latest version of remmina, please use the &quot;Remmina Team Ubuntu PPA - next branch&quot;, as explained on the [homepage of the wiki](https://github.com/FreeRDP/Remmina/wiki).</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;**Changelog**</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;* Initial write: Aug 20 2014.</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;* Update Oct 3 2014: changed branch name from gtk3 to next</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;* Update Oct 15 2014: addedd -DWITH_CUPS=on -DWITH_WAYLAND=off to freerdp parameters</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;* Update Oct 23 2014: tested on ubuntu 14.10</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;* Update Oct 29 2014: tested on Mine 17.2 (based on Ubuntu 14.04)</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;* Update Oct 29 2015: Found a load of install issued on step 1, changed recommendation from apt-get to aptitude as it reports issues far more lucidly and they all boil down to my having later versions of packages these depend on.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;* Update Nov 23 2015: Added libsecret-1-dev to packages to be installed</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;* Update Jan 16 2016: Added libsystemd-dev</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;* Update Jan 23 2016: Added libwebkit2gtk-3.0-dev</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;* Update Mar 12 2016: Added apt-get remove of some freerdp packages installed from the PPA, removed ubuntu 14.10</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;* Update Jan 08 2018: Added libsoup2.4-dev libjson-glib-dev to dependencies</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;```</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;sudo aptitude install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; libxrandr-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; libvte-2.90-dev libxkbfile-dev libfreerdp-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; libgnutls-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-3.0-dev \</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; libsoup2.4-dev libjson-glib-dev</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;And try also to install libsystemd-dev (available only in newer ubuntu)</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;sudo aptitude install libsystemd-dev</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;```</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;**2.** Remove freerdp-x11 package and all packages containing the string remmina in the package name.</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;sudo apt-get --purge remove freerdp-x11 \</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc remmina-plugin-gnome \</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; remmina-plugin-nx remmina-plugin-telepathy remmina-plugin-xdmcp</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;sudo apt-get --purge remove libfreerdp-dev libfreerdp-plugins-standard libfreerdp1</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;```</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;```</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;```</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;cd FreeRDP</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;```</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;```</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;```</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;```</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;```</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;```</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;sudo ldconfig</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;```</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;For ubuntu 32 bit you have to change the path of the source lib folder in the first line.</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;**8.** Link executable in /usr/local/bin</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;```</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;```</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;**9.** Test the new freerdp by connecting to a RDP host</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;```</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</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;**10.** Now clone remmina repository to your devel dir:</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;cd ~/remmina_devel</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;git clone https://github.com/FreeRDP/Remmina.git</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;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;**11.** Configure Remmina for compilation</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"> 94</span>&#160;cd Remmina</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;```</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;**12.** Compile remmina and install it</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;make &amp;&amp; sudo make install</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;**13.** Link the executable</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;```</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;```</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;**14.** Run remmina</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;remmina</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;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</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;## Uninstall everything</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;**1.** Remove the devel directory</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;```</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;rm -rf ~/remmina_devel/</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;**2.** Remove the binary directory</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;```</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;sudo rm -rf /opt/remmina_devel/</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;**3.** Cleanup symlinks and dynamic loader</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;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;sudo ldconfig</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-14_804_8md.html">Compile-on-Ubuntu-14.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-16_804_8md.html b/docs/_compile-on-_ubuntu-16_804_8md.html
new file mode 100644
index 000000000..a221ca282
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-16_804_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-16.04.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-16_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-16.04.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_ubuntu-16_804_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-16_804_8md.html">Compile-on-Ubuntu-16.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-16_804_8md_source.html b/docs/_compile-on-_ubuntu-16_804_8md_source.html
new file mode 100644
index 000000000..0639a7799
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-16_804_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-16.04.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-16_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-16.04.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_ubuntu-16_804_8md.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;# Quick and dirty guide for compiling remmina on ubuntu 16.04</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 16.04.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;If you are an end user and you want to install the latest version of remmina, please use the &quot;Remmina Team Ubuntu PPA - next branch&quot;, as explained on the [homepage of the wiki](https://github.com/FreeRDP/Remmina/wiki).</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;```</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;sudo apt-get install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; libxrandr-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; libgnutls-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; libsoup2.4-dev libjson-glib-dev libavresample-dev libusb-1.0-0-dev</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;```</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;**2.** Remove freerdp-x11 package and all packages containing the string remmina in the package name.</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;```</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;sudo apt-get --purge remove freerdp-x11 \</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc remmina-plugin-gnome \</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; remmina-plugin-nx remmina-plugin-telepathy remmina-plugin-xdmcp</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;sudo apt-get --purge remove libfreerdp-dev libfreerdp-plugins-standard libfreerdp1 \</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; libfreerdp-utils1.1 libfreerdp-primitives1.1 libfreerdp-locale1.1 \</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; libfreerdp-gdi1.1 libfreerdp-crypto1.1 libfreerdp-core1.1 libfreerdp-common1.1.0 \</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; libfreerdp-codec1.1 libfreerdp-client1.1 libfreerdp-cache1.1</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;sudo apt-get --purge remove \</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; libfreerdp-rail1.1 libwinpr-asn1-0.1 libwinpr-bcrypt0.1 libwinpr-credentials0.1 libwinpr-credui0.1 \</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; libwinpr-crt0.1 libwinpr-crypto0.1 libwinpr-dev libwinpr-dsparse0.1 libwinpr-environment0.1 \</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; libwinpr-error0.1 libwinpr-file0.1 libwinpr-handle0.1 libwinpr-heap0.1 libwinpr-input0.1 \</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; libwinpr-interlocked0.1 libwinpr-io0.1 libwinpr-library0.1 libwinpr-path0.1 libwinpr-pipe0.1 \</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; libwinpr-pool0.1 libwinpr-registry0.1 libwinpr-rpc0.1 libwinpr-sspi0.1 libwinpr-sspicli0.1 \</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; libwinpr-synch0.1 libwinpr-sysinfo0.1 libwinpr-thread0.1 libwinpr-timezone0.1 libwinpr-utils0.1 \</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; libwinpr-winhttp0.1 libwinpr-winsock0.1 freerdp2-x11 &quot;libfreerdp2*&quot; &quot;libwinpr2*&quot;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;```</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;```</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;cd ~/remmina_devel</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;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;```</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;cd FreeRDP</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;```</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;```</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</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;**6.** Compile FreeRDP and install</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;make &amp;&amp; sudo make install</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;```</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;sudo ldconfig</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;```</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;**8.** Create a symbolik link to the executable in /usr/local/bin</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;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</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;**9.** Test the new freerdp by connecting to a RDP host</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;```</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</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"> 78</span>&#160;**10.** Now clone remmina repository to your devel dir:</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;cd ~/remmina_devel</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;```</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;**11.** Configure Remmina for compilation</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;cd Remmina</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</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"> 89</span>&#160;**12.** Compile remmina and install it</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;make &amp;&amp; sudo make install</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;**13.** Create a symbolik link to the the executable</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;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;```</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;**14.** Run remmina</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;remmina</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;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;## Uninstall everything</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;**1.** Remove the devel directory</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;```</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;rm -rf ~/remmina_devel/</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;```</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;**2.** Remove the binary directory</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;sudo rm -rf /opt/remmina_devel/</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;```</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;**3.** Cleanup symlinks and dynamic loader</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;```</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;sudo ldconfig</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-16_804_8md.html">Compile-on-Ubuntu-16.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-18_804_8md.html b/docs/_compile-on-_ubuntu-18_804_8md.html
new file mode 100644
index 000000000..4242fb5cd
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-18_804_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-18.04.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-18_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-18.04.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_ubuntu-18_804_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-18_804_8md.html">Compile-on-Ubuntu-18.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-18_804_8md_source.html b/docs/_compile-on-_ubuntu-18_804_8md_source.html
new file mode 100644
index 000000000..d7a09ee71
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-18_804_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-18.04.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-18_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-18.04.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_ubuntu-18_804_8md.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;# Quick and dirty guide for compiling remmina on ubuntu 18.04</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 18.04.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;If you are an end user and you want to install the latest version of remmina, please use the &quot;Remmina Team Ubuntu PPA - next branch&quot;, as explained on the [homepage of the wiki](https://gitlab.com/Remmina/Remmina/wikis/home).</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;```</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;sudo apt install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; libxi-dev libavutil-dev \</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; libgnutls28-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; libsoup2.4-dev libjson-glib-dev libavresample-dev libsodium-dev \</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; libusb-1.0-0-dev</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;```</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;**2.** Remove freerdp-x11 package and all packages containing the string remmina in the package name.</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;```</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;```</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;```</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;```</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;cd FreeRDP</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;```</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;```</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;```</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;```</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;```</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;```</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;sudo ldconfig</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;**8.** Create a symbolik link to the executable in /usr/local/bin</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</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;**9.** Test the new freerdp by connecting to a RDP host</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;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;**10.** Now clone remmina repository to your devel dir:</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;```</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</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;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;**11.** Configure Remmina for compilation</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;```</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;cd Remmina</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;```</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;**12.** Compile remmina and install it</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;make &amp;&amp; sudo make install</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;```</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;**13.** Create a symbolik link to the the executable</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;```</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;```</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;**14.** Run remmina</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;remmina</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;```</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</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"> 89</span>&#160;## Uninstall everything</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;**1.** Remove the devel directory</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;```</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;rm -rf ~/remmina_devel/</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"> 94</span>&#160;**2.** Remove the binary directory</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;sudo rm -rf /opt/remmina_devel/</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;```</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;**3.** Cleanup symlinks and dynamic loader</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;```</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;sudo ldconfig</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-18_804_8md.html">Compile-on-Ubuntu-18.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-20_804_8md.html b/docs/_compile-on-_ubuntu-20_804_8md.html
new file mode 100644
index 000000000..57d23fc70
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-20_804_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-20.04.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-20_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-20.04.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_compile-on-_ubuntu-20_804_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-20_804_8md.html">Compile-on-Ubuntu-20.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_compile-on-_ubuntu-20_804_8md_source.html b/docs/_compile-on-_ubuntu-20_804_8md_source.html
new file mode 100644
index 000000000..405bcc9e5
--- /dev/null
+++ b/docs/_compile-on-_ubuntu-20_804_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compile-on-Ubuntu-20.04.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_compile-on-_ubuntu-20_804_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compile-on-Ubuntu-20.04.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_compile-on-_ubuntu-20_804_8md.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;# Quick and dirty guide for compiling remmina on ubuntu 18.04</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 20.04.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;If you are an end user and you want to install the latest version of remmina, please use the &quot;Remmina Team Ubuntu PPA - next branch&quot;, as explained on the [homepage of the wiki](https://gitlab.com/Remmina/Remmina/wikis/home).</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;You will also find the uninstall instructions at the bottom of this page.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;**1.** Install all packages required to build freerdp and remmina:</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;```shell</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;sudo apt install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160; libxi-dev libavutil-dev \</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt20-dev libssh-dev libpulse-dev \</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; libgnutls28-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; libsoup2.4-dev libjson-glib-dev libavresample-dev libsodium-dev \</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; libusb-1.0-0-dev</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;```</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;**2.** Remove freerdp-x11 package and all packages containing the string remmina in the package name.</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;```shell</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;sudo apt purge &quot;?name(^remmina.*)&quot; &quot;?name(^libfreerdp.*)&quot; &quot;?name(^freerdp.*)&quot; &quot;?name(^libwinpr.*)&quot;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;```</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;**3.** Create a new directory for development in your home directory, and cd into it</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;```shell</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;mkdir ~/remmina_devel</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;cd ~/remmina_devel</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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;**4.** Download the latest source code of FreeRDP from its master branch</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;```shell</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;git clone --branch stable-2.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;cd FreeRDP</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;```</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"> 46</span>&#160;**5.** Configure FreeRDP for compilation (don&#39;t forget to include -DWITH_PULSE=ON)</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;```shell</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;```</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;**6.** Compile FreeRDP and install</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```shell</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;make &amp;&amp; sudo make install</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;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;**7.** Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```shell</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;sudo ldconfig</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;```</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"> 67</span>&#160;**8.** Create a symbolik link to the executable in /usr/local/bin</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;```shell</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;```</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;**9.** Test the new freerdp by connecting to a RDP host</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;```shell</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</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"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;**10.** Now clone remmina repository to your devel dir:</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;```shell</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;cd ~/remmina_devel</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;git clone https://gitlab.com/Remmina/Remmina.git</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;**11.** Configure Remmina for compilation</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;```shell</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;cd Remmina</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;```</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;**12.** Compile remmina and install it</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;```shell</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;make &amp;&amp; sudo make install</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;```</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;**13.** Create a symbolik link to the the executable</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;```shell</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</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;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;**14.** Run remmina</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;```shell</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;remmina</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"> 111</span>&#160;Please note that icons and launcher files are not installed, so don&#39;t search for remmina using Unity Dash.</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;## Uninstall everything</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;**1.** Remove the devel directory</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;```shell</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;rm -rf ~/remmina_devel/</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;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;**2.** Remove the binary directory</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"> 123</span>&#160;```shell</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;sudo rm -rf /opt/remmina_devel/</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"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;**3.** Cleanup symlinks and dynamic loader</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;```shell</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;sudo ldconfig</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;```</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_compile-on-_ubuntu-20_804_8md.html">Compile-on-Ubuntu-20.04.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_development-_notes_8md.html b/docs/_development-_notes_8md.html
new file mode 100644
index 000000000..4f84af59a
--- /dev/null
+++ b/docs/_development-_notes_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Development-Notes.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_development-_notes_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Development-Notes.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_development-_notes_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_development-_notes_8md.html">Development-Notes.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_development-_notes_8md_source.html b/docs/_development-_notes_8md_source.html
new file mode 100644
index 000000000..95a79d007
--- /dev/null
+++ b/docs/_development-_notes_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Development-Notes.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_development-_notes_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Development-Notes.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_development-_notes_8md.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;Use this page to add useful links and notes to help out with the development</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;# Remmina generated documentation</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;https://daguniverse.github.io/RemminaDoc/index.html</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;# GTK3</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;## GTK3 Deprecation mini guide</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;* [GTK3 Reference Manual](https://developer.gnome.org/gtk3/unstable/index.html)</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;* [Icon names standard](http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html#names)</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;* [GTK+ Stock Item Deprecation](https://docs.google.com/document/d/1KCVPoYQBqMbDP11tHPpjW6uaEHrvLUmcDPqKAppCY8o/pub)</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;* [Stock Items Migration Guide](https://docs.google.com/spreadsheet/pub?key=0AsPAM3pPwxagdGF4THNMMUpjUW5xMXZfdUNzMXhEa2c&amp;output=html)</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;* Menu and GtkActionGroup deprecation: [what to use instead](http://stackoverflow.com/questions/24788045/gtk-action-group-new-and-gtkstock-what-to-use-instead)</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;* _&quot;GtkAlignment has been deprecated in 3.14 and should not be used in newly-written code. The desired effect can be achieved by using the “halign”, “valign” and “margin” properties on the child widget.&quot;_ In remmina GtkAlignment has been replaced by a GtkAspectFrame, used by the &quot;scaler&quot; code to scale the remote desktop.</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;* Icons in menu are being removed. See [here](https://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnemonics/). Also mnemonics should be removed.</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_development-_notes_8md.html">Development-Notes.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_g_t_k-versions-on-various-distributions_8md.html b/docs/_g_t_k-versions-on-various-distributions_8md.html
new file mode 100644
index 000000000..a58061cc6
--- /dev/null
+++ b/docs/_g_t_k-versions-on-various-distributions_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: GTK-versions-on-various-distributions.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_g_t_k-versions-on-various-distributions_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">GTK-versions-on-various-distributions.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_g_t_k-versions-on-various-distributions_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_g_t_k-versions-on-various-distributions_8md.html">GTK-versions-on-various-distributions.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_g_t_k-versions-on-various-distributions_8md_source.html b/docs/_g_t_k-versions-on-various-distributions_8md_source.html
new file mode 100644
index 000000000..e2c97d172
--- /dev/null
+++ b/docs/_g_t_k-versions-on-various-distributions_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: GTK-versions-on-various-distributions.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_g_t_k-versions-on-various-distributions_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">GTK-versions-on-various-distributions.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_g_t_k-versions-on-various-distributions_8md.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;Distribution|GTK+3 version|libssh version|libvncserver version|</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;---|---:|---:|---:</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Debian 7 Wheezy|[3.4.2][gtk-wheezy]|[0.5.4][ssh-wheezy]|[0.9.9][vnc-wheezy]</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;Debian 8 Jessie|[3.14.5][gtk-jessie]|[0.6.3][ssh-jessie]|[0.9.9][vnc-jessie]</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;Debian 9 Stretch (current Raspbian)|[3.22.11][gtk-stretch]|[0.7.3][ssh-stretch]|[0.9.11][vnc-stretch]</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;Debian Sid|[3.22.30][gtk-sid]|[0.8.0][ssh-sid]|[0.9.11][vnc-sid]</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;CentOS 7/RHEL 7|[3.8][gtk-centos]|[0.6.4][ssh-centos]|[0.9.9][vnc-centos]</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;Fedora 26|[3.22.16][gtk-fedora]|[0.7.5][ssh-fedora]|[0.9.11][vnc-fedora]</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;Fedora 27|[3.22.24][gtk-fedora]|[0.7.5][ssh-fedora]|[0.9.11][vnc-fedora]</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;Fedora 28|[3.22.30][gtk-fedora]|[0.7.5][ssh-fedora]|[0.9.11][vnc-fedora]</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;Ubuntu 10.04 LTS (Lucid Lynx)|-|[0.4.2][ssh-lucid]|[0.9.7][vnc-lucid]</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;Ubuntu 12.04 LTS (Precise Pangolin)|[3.4.2][gtk-precise]|[0.5.2][ssh-precise]|[0.9.8.2][vnc-precise]</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;Ubuntu 14.04 LTS (Trusty Tahr)|[3.10.8][gtk-trusty]|[0.6.1][ssh-trusty]|[0.9.9][vnc-trusty]</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;Ubuntu 14.10 (Utopic Unicorn)|[3.12.2][gtk-utopic]|[0.6.3][ssh-utopic]|[0.9.9][vnc-utopic]</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;Ubuntu 15.04 (Vivid Vervet)|[3.14.7][gtk-vivid]|[0.6.3][ssh-vivid]|[0.9.9][vnc-vivid]</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;Ubuntu 16.04 (Xenial Xerus)|[3.18.9][gtk-xenial]|[0.6.3][ssh-xenial]|[0.9.10][vnc-xenial]</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;Ubuntu 17.04 (Zesty Zapus)|[3.22.11][gtk-zesty]|[0.7.3][ssh-zesty]|[0.9.11][vnc-zesty]</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;Ubuntu 18.04 (Bionic Beaver)|[3.22.30][gtk-bionic]|[0.8.0][ssh-bionic]|[0.9.11][vnc-bionic]</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;Arch Linux|[3.22.30][gtk-arch]|[0.7.5][ssh-arch]|[0.9.11][vnc-arch]</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;Solus|[3.22.26][gtk-solus]|[0.7.5][ssh-solus]|[0.9.11][vnc-solus]</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;[gtk-wheezy]: https://packages.debian.org/wheezy/libgtk-3-0</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;[gtk-jessie]: https://packages.debian.org/jessie/libgtk-3-0</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;[gtk-stretch]: https://packages.debian.org/stretch/libgtk-3-0</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;[gtk-sid]: https://packages.debian.org/sid/libgtk-3-0</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;[gtk-centos]: https://git.centos.org/summary/rpms!gtk3.git</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;[gtk-precise]: http://packages.ubuntu.com/precise-updates/libgtk-3-0</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;[gtk-trusty]: http://packages.ubuntu.com/trusty-updates/libgtk-3-0</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;[gtk-utopic]: http://packages.ubuntu.com/utopic-updates/libgtk-3-0</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;[gtk-vivid]: http://packages.ubuntu.com/vivid/libgtk-3-0</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;[gtk-xenial]: http://packages.ubuntu.com/xenial/libgtk-3-0</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;[gtk-zesty]: http://packages.ubuntu.com/zesty/libgtk-3-0</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;[gtk-bionic]: http://packages.ubuntu.com/bionic/libgtk-3-0</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;[gtk-arch]: https://www.archlinux.org/packages/extra/x86_64/gtk3</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;[gtk-fedora]: https://apps.fedoraproject.org/packages/gtk3</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;[gtk-solus]: https://dev.solus-project.com/source/libgtk-3/</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;[ssh-wheezy]: https://packages.debian.org/wheezy/libssh-4</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;[ssh-jessie]: https://packages.debian.org/jessie/libssh-4</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;[ssh-stretch]: https://packages.debian.org/stretch/libssh-4</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;[ssh-sid]: https://packages.debian.org/sid/libssh-4</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;[ssh-centos]: https://git.centos.org/summary/rpms!libssh.git</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;[ssh-lucid]: http://packages.ubuntu.com/lucid-updates/libssh-4</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;[ssh-precise]: http://packages.ubuntu.com/precise-updates/libssh-4</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;[ssh-trusty]: http://packages.ubuntu.com/trusty-updates/libssh-4</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;[ssh-utopic]: http://packages.ubuntu.com/utopic-updates/libssh-4</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;[ssh-vivid]: http://packages.ubuntu.com/vivid/libssh-4</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;[ssh-xenial]: http://packages.ubuntu.com/xenial/libssh-4</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;[ssh-zesty]: http://packages.ubuntu.com/zesty/libssh-4</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;[ssh-bionic]: http://packages.ubuntu.com/bionic/libssh-4</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;[ssh-arch]: https://www.archlinux.org/packages/extra/x86_64/libssh</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;[ssh-fedora]: https://apps.fedoraproject.org/packages/libssh</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;[ssh-solus]: https://dev.solus-project.com/source/libssh/</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;[vnc-wheezy]: https://packages.debian.org/wheezy/libvncserver0</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;[vnc-jessie]: https://packages.debian.org/jessie/libvncserver0</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;[vnc-stretch]: https://packages.debian.org/stretch/libvncserver1</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;[vnc-sid]: https://packages.debian.org/sid/libvncserver1</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;[vnc-centos]: https://git.centos.org/summary/rpms!libvncserver.git</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;[vnc-lucid]: http://packages.ubuntu.com/lucid/libvncserver0</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;[vnc-precise]: http://packages.ubuntu.com/precise-updates/libvncserver0</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;[vnc-trusty]: http://packages.ubuntu.com/trusty-updates/libvncserver0</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;[vnc-utopic]: http://packages.ubuntu.com/utopic/libvncserver0</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;[vnc-vivid]: http://packages.ubuntu.com/vivid/libvncserver0</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;[vnc-xenial]: http://packages.ubuntu.com/xenial/libvncserver1</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;[vnc-zesty]: http://packages.ubuntu.com/zesty/libvncserver1</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;[vnc-bionic]: http://packages.ubuntu.com/bionic/libvncserver1</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;[vnc-arch]: https://www.archlinux.org/packages/extra/x86_64/libvncserver</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;[vnc-fedora]: https://apps.fedoraproject.org/packages/libvncserver</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;[vnc-solus]: https://dev.solus-project.com/source/libssh/</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_g_t_k-versions-on-various-distributions_8md.html">GTK-versions-on-various-distributions.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_h_o_w_t_o-generate-the-changelog_8md.html b/docs/_h_o_w_t_o-generate-the-changelog_8md.html
new file mode 100644
index 000000000..f36b71b42
--- /dev/null
+++ b/docs/_h_o_w_t_o-generate-the-changelog_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: HOWTO-generate-the-changelog.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_h_o_w_t_o-generate-the-changelog_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">HOWTO-generate-the-changelog.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_h_o_w_t_o-generate-the-changelog_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_h_o_w_t_o-generate-the-changelog_8md.html">HOWTO-generate-the-changelog.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_h_o_w_t_o-generate-the-changelog_8md_source.html b/docs/_h_o_w_t_o-generate-the-changelog_8md_source.html
new file mode 100644
index 000000000..2c9c86709
--- /dev/null
+++ b/docs/_h_o_w_t_o-generate-the-changelog_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: HOWTO-generate-the-changelog.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_h_o_w_t_o-generate-the-changelog_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">HOWTO-generate-the-changelog.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_h_o_w_t_o-generate-the-changelog_8md.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;# Requirements</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;## [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;You can install using gem</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;```sh</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;gem install github_changelog_generator</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;```</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;If you want to contribute back to the project you can clone the repository and build it.</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;## [GitHub token](https://github.com/skywinder/github-changelog-generator/blob/master/README.md#github-token)</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;You need the token because github doesn&#39;t accept more than 50 request per day with it&#39;s API.</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;It&#39;s for free...</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# Generate the CHANGELOG.md</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;github_changelog_generator -t 689c2dd09acaebf4ce92fecaeed2ec8140b6bfbf</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;# Commit the new CHANGELOG.md</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;The CHANGELOG.md should be committed only after a new release.</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_h_o_w_t_o-generate-the-changelog_8md.html">HOWTO-generate-the-changelog.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_home_8md.html b/docs/_home_8md.html
new file mode 100644
index 000000000..215cddd48
--- /dev/null
+++ b/docs/_home_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Home.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_home_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Home.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_home_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_home_8md.html">Home.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_home_8md_source.html b/docs/_home_8md_source.html
new file mode 100644
index 000000000..c3212a095
--- /dev/null
+++ b/docs/_home_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Home.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_home_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Home.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_home_8md.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;## *Welcome to the Remmina wiki*</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Remmina is developed on [GitLab](https://gitlab.com/Remmina/Remmina), as of the 20th of June 2018.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;Use these [wiki](https://gitlab.com/Remmina/Remmina/wikis/home) and [issues](https://gitlab.com/Remmina/Remmina/issues) links instead of GitHub equivalents.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;---</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;Usually Remmina is [included in your distribution](https://repology.org/project/remmina/versions), or in an external repository you can add.</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;[![Packaging status](https://repology.org/badge/vertical-allrepos/remmina.svg?columns=4&amp;minversion=1.3?allow_ignored=1)](https://repology.org/project/remmina/versions)</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;## [Ubuntu](https://ubuntu.com/) and [Linux Mint](https://linuxmint.com/)</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;An official PPA with the latest Remmina release can be install by copying and pasting this in a terminal:</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;```</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;sudo apt-add-repository ppa:remmina-ppa-team/remmina-next</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;sudo apt update</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;sudo apt install remmina remmina-plugin-rdp remmina-plugin-secret</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;```</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;Make sure Remmina is not running. Either close it, reboot, or kill it by pasting this in a terminal:</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;```</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;sudo killall remmina</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;```</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;List available plugins with `apt-cache search remmina-plugin`. By default RDP, SSH and SFTP are installed.</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;To test a daily built development version, do the above, but start with</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;```</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;ppa:remmina-ppa-team/remmina-next-daily</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;```</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;## [Debian](https://www.debian.org/)</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;### 10 [Buster](https://wiki.debian.org/DebianBuster) (stable), [Bullseye](https://wiki.debian.org/DebianBullseye) (testing), and [Sid](https://wiki.debian.org/DebianUnstable) (unstable)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;Remmina is in the official stable, testing and unstable repositories.</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;### 9 [Stretch](https://wiki.debian.org/DebianStretch) (oldstable)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;Here Remmina can be [installed from backports](https://www.remmina.org/debian-the-boys-are-backport-in-town/) by copying and pasting this in a terminal:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;```</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;echo &#39;deb http://ftp.debian.org/debian stretch-backports main&#39; | sudo tee --append /etc/apt/sources.list.d/stretch-backports.list &gt;&gt; /dev/null</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;sudo apt update</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;sudo apt install -t stretch-backports remmina remmina-plugin-rdp remmina-plugin-secret remmina-plugin-spice</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;```</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;## [Raspberry Pi](https://www.raspberrypi.org/)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;Remmina operates its own package repository for Raspbian Buster (10.x) you can install by copying and pasting this in a terminal:</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;```</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;sudo apt install dirmngr</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;sudo apt-key adv --fetch-keys https://www.remmina.org/raspbian/remmina_raspbian.asc</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;sudo bash -c &#39;echo &quot;deb https://www.remmina.org/raspbian/ buster main&quot; &gt; /etc/apt/sources.list.d/remmina_raspbian.list&#39;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;sudo apt update</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;sudo apt install remmina</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;```</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;(Tested on RPi 3B and 3B+)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;It is strongly advised to also install gnome-keyring to let Remmina save encrypted passwords in a safer place than .remmina textfiles in the /home user folder.</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;```</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;sudo apt install gnome-keyring</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;```</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;(The remmina-next PPA can be used on Raspberry Pi 2 and 3, provided you are running one of the supported *buntu derivatives.)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;## [Flatpak](https://flathub.org/)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;This is a system agnostic package that works on just about every distribution.</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;```shell</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;# In order to have H.264 codecs</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;flatpak install org.freedesktop.Platform</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;flatpak install org.freedesktop.Platform.openh264</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;flatpak install --user flathub org.remmina.Remmina</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;flatpak run --user org.remmina.Remmina</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;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;If you use SSH agent (https://github.com/flatpak/flatpak/issues/1438 )</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;```shell</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;flatpak run --filesystem=$SSH_AUTH_SOCK --env=SSH_AUTH_SOCK=$SSH_AUTH_SOCK org.remmina.Remmina</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;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;Flatpak stores data for installed applications (the XDG config/data folders) under `$HOME/.var`</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;If you have previously installed Remmina with another package manager, you will have to transfer what was under `$HOME/.config/remmina` and `$HOME/.local/share/remmina` under, respectively `~/.var/app/org.remmina.Remmina/config/remmina` and `~/.var/app/org.remmina.Remmina/data/remmina`</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;## [Snap](https://snapcraft.io/)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;This also is a system agnostic package that works on many distributions, but mainly Ubuntu.</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"> 94</span>&#160;If you run into issues, try something else first, and then [report the issues](https://github.com/FreeRDP/Remmina/issues).</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;Our Snap package does not work on Ubuntu 17.10 if you use Wayland, see [issue #1414](https://github.com/FreeRDP/Remmina/issues/1414)._</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;First make sure you have `snapd` installed. Then install the last release from the Ubuntu Software Center by looking for `Remmina`, or install it from a terminal with:</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;```shell</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;sudo snap install remmina</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;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;The Snap subsystem has limitations, so some features, for example password storage via keyring is missing and *must* be fixed manually:</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;```shell</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;sudo snap connect remmina:avahi-observe :avahi-observe # servers discovery</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;sudo snap connect remmina:cups-control :cups-control # printing</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;sudo snap connect remmina:mount-observe :mount-observe # mount management</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;sudo snap connect remmina:password-manager-service :password-manager-service # password manager</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;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;Some features just don&#39;t work on Snap, for example accessing your personal ~/.ssh directory is not possible.</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;You have to manually copy your ~/.ssh/* files to ~/snap/remmina/common/.ssh/</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;If you want to install latest Git revision of Remmina as Snap, get it from the `edge` channel:</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;```shell</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;sudo snap install remmina --edge</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;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;**Or**, update your Remmina Snap install with your channel of choice:</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"> 123</span>&#160;```shell</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;sudo snap refresh remmina --channel=edge # use --channel=stable otherwise</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"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;Snaps are updated with the system and include both latest `FreeRDP` Git and the latest `libssh 0.7` release (for better security).</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;## [Fedora](https://getfedora.org/) and [Red Hat](https://www.redhat.com)</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;As of March 2018 Remmina is available on most Fedora testing and stable, we still have a (not updated) Copr provided by [Hubbitus](https://github.com/Hubbitus) (Pavel Alexeev), to install, paste this in a terminal as root:</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;```shell</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;dnf copr enable hubbitus/remmina-next</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;dnf upgrade --refresh &#39;remmina*&#39; &#39;freerdp*&#39;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;```</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;## [Red Hat](https://www.redhat.com)</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;Install Remmina from the EPEL repository by pasting this in a terminal:</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;```shell</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;rpm -ivh epel-release-latest-7.noarch.rpm</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;```</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;## [Gentoo](https://www.gentoo.org/)</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;To build and install</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;```shell</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;emerge -av net-misc/remmina</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"> 155</span>&#160;To build a binary and install</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;```shell</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;emerge -avb net-misc/remmina</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;```</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;```shell</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;emerge -avk remmina*.tar.bz</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;# From cp /usr/portage/packages/net-misc remmina* &gt; /mnt/some-usb-stick to multiple boxes</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;emerge -avk =net-misc/remmina-#??Version number</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;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;## [Sabayon](https://www.sabayon.org/)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;```</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;equo -i net-misc/remmina</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; ```</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;## [Arch Linux](https://www.archlinux.org/) (and friends)</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;There is an official Arch Linux Remmina package. **Or**, if you want to use the AUR, install [remmina-git](https://aur.archlinux.org/packages/remmina-git).</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;There are also some external, not supported plugins provided by [Muflone](https://github.com/muflone) and other</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;Arch Remmina [Protocol plugins](https://aur.archlinux.org/packages/?O=0&amp;SeB=nd&amp;K=Remmina&amp;outdated=&amp;SB=n&amp;SO=a&amp;PP=50&amp;do_Search=Go)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;## [Solus](https://getsol.us/home/)</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;```shell</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;sudo eopkg update-repo</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;sudo eopkg install remmina</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;```</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;## [Build from source](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation)</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;- [Compilation guide for CentOS](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS)</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;- [Compile on Arch Linux](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux)</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;- [Compile on Debian 10 Buster](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster)</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;- [Compile on Debian 9 Stretch](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch)</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;- [Compile on Fedora 20 ~ 26](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26)</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;- [Compile on FreeBSD](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD)</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;- [Compile on Ubuntu 14.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;- [Compile on Ubuntu 16.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04)</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;- [Compile on Ubuntu 18.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04)</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;- [Compile on Ubuntu 20.04](https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04)</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;Code development and bugfixes take place on the master branch.</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;It compiles with the current FreeRDP master branch, and will compile with [FreeDRP](http://www.freerdp.com/) 2.0 when released as stable.</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;# Links</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;- [Remmina website](https://www.remmina.org/)</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;- [Remmina subreddit](https://reddit.com/r/Remmina)</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;- [Remmina Development Doc](https://remmina.gitlab.io/remminadoc.gitlab.io)</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;- [Versions for various operating systems](https://repology.org/project/remmina/versions)</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_home_8md.html">Home.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_how-to-translate-_remmina_8md.html b/docs/_how-to-translate-_remmina_8md.html
new file mode 100644
index 000000000..ac98297f1
--- /dev/null
+++ b/docs/_how-to-translate-_remmina_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: How-to-translate-Remmina.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_how-to-translate-_remmina_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">How-to-translate-Remmina.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_how-to-translate-_remmina_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_how-to-translate-_remmina_8md.html">How-to-translate-Remmina.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_how-to-translate-_remmina_8md_source.html b/docs/_how-to-translate-_remmina_8md_source.html
new file mode 100644
index 000000000..0fd190059
--- /dev/null
+++ b/docs/_how-to-translate-_remmina_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: How-to-translate-Remmina.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_how-to-translate-_remmina_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">How-to-translate-Remmina.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_how-to-translate-_remmina_8md.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;Please follow the [CONTRIBUTING guide](https://gitlab.com/Remmina/Remmina/blob/master/CONTRIBUTING.md) for general informations on how to contribute to Remmina.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Remmina uses xgettext to generate the translated strings, you don&#39;t necessarily need to have a good understanding of it but in the case you need an high level overview check [this](https://www.gutenberg.org/wiki/Gutenberg:GNU_Gettext_Translation_How-To)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;# Using Weblate</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;[![Translation status](https://hosted.weblate.org/widgets/remmina/-/remmina/287x66-black.png)](https://hosted.weblate.org/engage/remmina/?utm_source=widget)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;- [Translate](https://hosted.weblate.org/projects/remmina/)</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;- [View project languages](https://hosted.weblate.org/projects/remmina/#languages)</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;# Using Git and and a Text or PO Editor</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;## To add a new language</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;Download the [remmina.pot](https://gitlab.com/Remmina/Remmina/blob/master/po/remmina.pot) and using a po editor (poedit, gtranslator, ...) create the po file of your language.</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;When you are done send it to l10n@lists.remmina.org , alternatively you can fork the Remmina repository and submit a merge request.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;## To update an existing translation.</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;All the existing po files are under https://gitlab.com/Remmina/Remmina/blob/master/po</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;Grab the one you want to update and use a po editor to update it, than you can either send to us at l10n@lists.remmina.org, either submit a merge request.</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;## Translations status </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;[![Translation status](https://hosted.weblate.org/widgets/remmina/-/remmina/horizontal-auto.svg)](https://hosted.weblate.org/engage/remmina/?utm_source=widget)</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_how-to-translate-_remmina_8md.html">How-to-translate-Remmina.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_problems-with-_wayland_8md.html b/docs/_problems-with-_wayland_8md.html
new file mode 100644
index 000000000..3ddda782d
--- /dev/null
+++ b/docs/_problems-with-_wayland_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Problems-with-Wayland.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_problems-with-_wayland_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Problems-with-Wayland.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_problems-with-_wayland_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_problems-with-_wayland_8md.html">Problems-with-Wayland.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_problems-with-_wayland_8md_source.html b/docs/_problems-with-_wayland_8md_source.html
new file mode 100644
index 000000000..0bf843d84
--- /dev/null
+++ b/docs/_problems-with-_wayland_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Problems-with-Wayland.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_problems-with-_wayland_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Problems-with-Wayland.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_problems-with-_wayland_8md.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;* Composing a indicator menu with 250-300 elements takes a lot of time (up to 2-3 seconds some times). This composition is done outside remmina: after remmina sets the menu with app_indicator_set_menu() and builds it, remmina returns to the event loop. Then something external to remmina freezes the mouse cursor for 1-3 seconds when building that menu. Tested on ubuntu 18.04 with wayland.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;* Remmina is not receiving clipboard owner-changes when it has not focus: https://gitlab.com/Remmina/Remmina/issues/2084</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;* The Windows/Super key cannot be captured (to be verified)</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_problems-with-_wayland_8md.html">Problems-with-Wayland.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_r_e_a_d_m_e_8md.html b/docs/_r_e_a_d_m_e_8md.html
new file mode 100644
index 000000000..2305db2fa
--- /dev/null
+++ b/docs/_r_e_a_d_m_e_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: README.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_r_e_a_d_m_e_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">README.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_r_e_a_d_m_e_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_r_e_a_d_m_e_8md_source.html b/docs/_r_e_a_d_m_e_8md_source.html
new file mode 100644
index 000000000..c57fce66b
--- /dev/null
+++ b/docs/_r_e_a_d_m_e_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: README.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_r_e_a_d_m_e_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">README.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_r_e_a_d_m_e_8md.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;[![](https://img.shields.io/liberapay/receives/Remmina.svg?logo=liberapay)](https://liberapay.com/Remmina/donate)</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;[![Build Status](https://gitlab.com/Remmina/Remmina/badges/master/pipeline.svg)](https://gitlab.com/Remmina/Remmina/pipelines)</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;[![Translation status](https://hosted.weblate.org/widgets/remmina/-/remmina/svg-badge.svg)](https://hosted.weblate.org/engage/remmina/?utm_source=widget)</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;[![remmina](https://snapcraft.io//remmina/badge.svg)](https://snapcraft.io/remmina)</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;## Remmina remote desktop client</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;*Use other desktops remotely, from a tiny screen or large monitors.*</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;* RDP, VNC, SPICE, NX, XDMCP, SSH and EXEC network protocols are supported.</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;* Written in GTK, with a port to Qt underway. </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;* Released as &quot;remmina&quot; (the main program) and &quot;remmina-plugins&quot;.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;### Installation</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;[How to install Remmina](https://remmina.org/how-to-install-remmina/),</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;editable on [the wiki](https://gitlab.com/Remmina/Remmina/wikis/home).</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;### Configuration</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;Set up everything from the graphical interface, or from $HOME/.remmina or $HOME/.config/remmina</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;### Contributing</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;1. Fork it</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;2. Create your feature branch (`git checkout -b my-new-feature`)</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;3. Commit your changes (`git commit -am &#39;Add some feature&#39;`)</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;4. Push to the branch (`git push origin my-new-feature`)</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;5. Create a new merge request</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;There are [other ways](CONTRIBUTING.md) to contribute too, get in contact on IRC (#remmina on freenode), or send an e-mail to the [mailing list](https://lists.remmina.org/listinfo/users).</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;### Donations</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;This is the website [donation page](https://remmina.org/wp/donations/).</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;[THANKS](THANKS.md) is a list of supporters.</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;### Authors</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;Maintained by [Antenore Gatta](https://gitlab.com/antenore), [Giovanni Panozzo](https://gitlab.com/giox069) and [Dario Cavedon](https://gitlab.com/ic3d).</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;Add yourself in [AUTHORS](AUTHORS) if you have contributed.</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;### Resources</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"> 46</span>&#160; * [Website](https://www.remmina.org/)</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; * IRC room on freenode.net, in the #remmina channel, you can also use a [web client](https://kiwiirc.com/client/irc.freenode.net/?nick=remminer|?#remmina/).</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;### License</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;Copylefted libre software, licensed [GPLv2+](https://gitlab.com/Remmina/Remmina/blob/master/COPYING).</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;Initially developed by [Vic Lee](https://github.com/llyzs).</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html b/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html
new file mode 100644
index 000000000..cd1717301
--- /dev/null
+++ b/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-RDP-and-HiDPI-scaling.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-RDP-and-HiDPI-scaling.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html">Remmina-RDP-and-HiDPI-scaling.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md_source.html b/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md_source.html
new file mode 100644
index 000000000..4c02ae836
--- /dev/null
+++ b/docs/_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-RDP-and-HiDPI-scaling.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-RDP-and-HiDPI-scaling.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.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;TL;DR all the RDP remote desktops are blurred on a HiDPI monitor with scaling enabled. And there is no way to fix it under Gnome Shell. Read issues #1778 #1878 to find a workaround for gnome shell, or switch to KDE desktop.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;## How is it supposed to work</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;The RDP protocol, starting with Windows 8.1, requires that scaling be done at the server-side. Your local Remmina client should simply draw unscaled the bitmaps it receives from the server.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;## Why it does not work</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;GTK3 and Gnome Shell have a horrible implementation of HiDPI scaling.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;When you enable scaling on your Gnome Shell settings, you enable an integer scaling factor, i.e. 1x 2x 3x. After enabling scaling under Gnome Shell, GTK 3 will scale all bitmaps we draw to a GtkDrawingArea by that scaling factor. It will also scale all cursor bitmaps and mouse positions/movement.</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;As we told before, RDP requires that all those scaling operations to be done at the server-side by windows, not by the client.</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;We tried to neutralize GTK integral scaling factor for Remmina application, but we did not reach acceptable results:</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;* Neutralize bitmap scaling: can be done in code with cairo, but requires some dozen lines of code in various Remmina parts</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;* Neutralize cursor position scaling: can be done just by multiplying by the scaling factor, but we lose precision in mouse position.</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;* Neutralize window dimension/allocation scaling: again this can be done by multiplying or dividing by the scaling factor the GtkDrawingArea width and height. But we lose precision.</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;* Neutralize cursor scaling: seems to be impossible to do with GTK. So we could scale down the cursor bitmap, but it will be shown pixelated due to the duplication of pixels done by GTK.</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;All this effort took around 100 lines of code, 3-4 hours of development and many hours of testing. And the result is really bad: cursor is still bad, code became more complex, a bit of mouse precision is lost.</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;Note that the first problem &quot;neutralize bitmap scaling&quot; could be also partially solved using the current Remmina scaler and a fix remote resolution, provided that every time you change the remote resolution you should recalculate your local window size. A simpler approach is to enable the Remmina scaler, set the remote resolution as your monitor full resolution and use Remmina full screen only. But cursors are still not scaled See [issue 1878](https://gitlab.com/Remmina/Remmina/issues/1878).</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;## Even worse: fractional scaling experimental feature</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;Recently an experimental feature has been added to Gnome Shell to enable fractional scaling (i.e: 1.7x), both for X.Org and Wayland. This feature seems to set GTK scaling to 2x and then apply a global screen scaling via Xrandr or similar.</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;This makes Remmina impossible to correctly deal with local scaling: Remmina can no longer disable scaling done by Xrandr, and is also unable to determine your current monitor scaling factor to send to the remote server. The result is very blurry.</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;## How should it work</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;Windows 10, MacOS, KDE/Qt have a simple approach to HiDPI: an application can declare itself to be HiDPI aware. When the application declares itself HiDPI aware, all graphical drawings to the monitor are not scaled, all pointer motions are not scaled, all mouse cursor are not scaled. But all wigets of the application, like buttons, texts are still correctly rendered at bigger dimensions. Under Qt this can obtained with a single line of code: `QGuiApplication::setAttribute(Qt::AA_DisableHighDpiScaling);`</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;Unfortunately, Remmina is not a Qt application, it&#39;s a GTK application. And Gnome Shell is not Plasma.</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html">Remmina-RDP-and-HiDPI-scaling.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md.html b/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md.html
new file mode 100644
index 000000000..9d2c03c3b
--- /dev/null
+++ b/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-SSH-Terminal-colour-schemes.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_s_s_h-_terminal-colour-schemes_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-SSH-Terminal-colour-schemes.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_remmina-_s_s_h-_terminal-colour-schemes_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_s_s_h-_terminal-colour-schemes_8md.html">Remmina-SSH-Terminal-colour-schemes.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md_source.html b/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md_source.html
new file mode 100644
index 000000000..0953fa3c7
--- /dev/null
+++ b/docs/_remmina-_s_s_h-_terminal-colour-schemes_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-SSH-Terminal-colour-schemes.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_s_s_h-_terminal-colour-schemes_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-SSH-Terminal-colour-schemes.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_remmina-_s_s_h-_terminal-colour-schemes_8md.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;# Using colour schemes in Remmina SSH protocol plugin</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;## Choosing between the standard colour schemes</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;You can chose a colour scheme directly in the advanced TAB of your SSH connection profile</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;![Chossing a colour scheme in the Remmina SSH profile](https://i.imgur.com/PeJRFQv.png)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;There are 6 predefined colour schemes</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;## Importing a colour scheme</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;You can import a colour scheme from the general preferences</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;![Importing a color scheme - screenshot](https://i.imgur.com/tb8FBP4.png)</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;Several colour schemes are available to download on the [iTerm2-Color-Schemes repository on GitHub](https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/remmina). </div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;As soon as you have found one you like, you must set &quot;Custom colour scheme&quot; in the SSH profile advanced TAB.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;![Custom Colour Scheme](https://i.imgur.com/gQavQZH.png) </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_s_s_h-_terminal-colour-schemes_8md.html">Remmina-SSH-Terminal-colour-schemes.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_usage-_f_a_q_8md.html b/docs/_remmina-_usage-_f_a_q_8md.html
new file mode 100644
index 000000000..bccc91fd0
--- /dev/null
+++ b/docs/_remmina-_usage-_f_a_q_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-Usage-FAQ.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_usage-_f_a_q_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-Usage-FAQ.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_remmina-_usage-_f_a_q_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_usage-_f_a_q_8md.html">Remmina-Usage-FAQ.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_usage-_f_a_q_8md_source.html b/docs/_remmina-_usage-_f_a_q_8md_source.html
new file mode 100644
index 000000000..eb1228cd3
--- /dev/null
+++ b/docs/_remmina-_usage-_f_a_q_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-Usage-FAQ.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_usage-_f_a_q_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-Usage-FAQ.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_remmina-_usage-_f_a_q_8md.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;# Remmina Usage FAQ</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;1. **Where are all my connections and preferences stored ?** </div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;**A:** Remmina stores its configuration file in directories identified according the [XDG Base Directory Specification](http://www.freedesktop.org/Standards/basedir-spec).</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;A main configuration file `remmina.pref` is stored into `$XDG_CONFIG_HOME/remmina/` directory, which defaults to `$HOME/.config/remmina/`.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;Every single connection profile is stored into a `XXXXXXXXXXXXX.remmina` file under `$XDG_DATA_HOME/remmina` directory, which defaults to `$HOME/.local/share/remmina`.</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;Older versions of remmina used to store all `*.remmina` and `remmina.pref` files under `$HOME/.remmina`. If a newer version of remmina finds an existing `$HOME/.remmina/` legacy directory, then remmina will revert back to use it.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;2. **Can I start a connection using a shell command ?** </div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;**A:** Yes, use `remmina -c filename`.</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;3. **When I&#39;m in fullscreen mode, I cannot see the &quot;floating toolbar&quot; (the bar at the top of the screen), or I can see part of it but it does not scroll down or receive my input.** </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;**A:** You are using Gnome Shell and an older version of remmina. This has been fixed under remmina 1.2.0-rcgit.3 compiled with GTK+ 3.10 or newer. Please restart your system after upgrading remmina.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;4. **The &quot;Quality settings&quot; in Remmina preferences -&gt; RDP is not saving the default quality setting.** </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;**A:** This is a quality profile editor, not a quality chooser. See issue #521</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;5. **I&#39;m unable to escape from VMware vSphere client console pressing Ctrl+Alt.** </div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;**A:** You are probably pushing the Ctrl key on the right side of the keyboard. That key is reserved as Remmina Host key. Use the left Ctrl key or change the host key in the Remmina global settings.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;6. **Under Gnome Shell the Remmina systray menu is hidden in the hidden notification area** </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;**A:** Install this [AppIndicator Support Gnome Shell Extension](https://extensions.gnome.org/extension/615/appindicator-support/) to see the systray menu in a more confortable place.</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;7. **After a Remmina upgrade, I&#39;m unable to connect to some servers.** </div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;**A:** Try to remove the file `~/.config/freerdp/known_hosts`.</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;8. **After a Remmina upgrade, I have to reenter all passwords.** </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;**A:** Yes, with commit 57ec85d8e9bf773b8a08c17a0218b6cd643c828b we switched to libsecret, and passwords cannot be imported automatically.</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;9. **Remmina cannot connect to Raspbian Stretch VNC server** </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;**A:** See our guide: [Remmina VNC to Raspbian Stretch](Remmina-VNC-to-Raspbian-Stretch)</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;10. **Warning: This plugin requires GtkSocket, but it&#39;s not available** </div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;**A:** This usually happens when running remmina under wayland: some plugins needs the GtkSocket support. GtkSocket makes use of the xembed protocol, which is not available under Wayland. If your system is running XWayland you can try to workaround the problem by running remmina with the environment variable GDK_BACKEND set to x11. For example in a terminal, after closing all running instances of remmina, you can start remmina with `GDK_BACKEND=x11 remmina`.</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_usage-_f_a_q_8md.html">Remmina-Usage-FAQ.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_user's-guide_8md.html b/docs/_remmina-_user's-guide_8md.html
new file mode 100644
index 000000000..cd4f2e0ab
--- /dev/null
+++ b/docs/_remmina-_user's-guide_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-User&#39;s-guide.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_user's-guide_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-User's-guide.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_remmina-_user's-guide_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_user's-guide_8md.html">Remmina-User&#39;s-guide.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_user's-guide_8md_source.html b/docs/_remmina-_user's-guide_8md_source.html
new file mode 100644
index 000000000..95997c3cb
--- /dev/null
+++ b/docs/_remmina-_user's-guide_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-User&#39;s-guide.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_user's-guide_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-User's-guide.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_remmina-_user's-guide_8md.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;# Introduction</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;This manual is a work in progress. Feel free to contribute and help us to make this manual useful and pleasant to read.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;Screen shots are taken and modified with [Shutter](http://shutter-project.org) </div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;# Remmina Introduction</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;Remmina is a feature rich Remote Desktop Application for GNU Linux(tm) and FreeBSD and possibly other Unixes.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;## Remmina features</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;- Maintain a list of connection profiles, organized by groups</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;- Make quick connections by directly putting in the server address</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;- Remote desktops with higher resolutions are scrollable/scalable in both window and fullscreen mode.</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;- Viewport fullscreen mode: remote desktop automatically scrolls when the mouse moves over the screen edge.</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;- Floating toolbar in fullscreen mode, allows you to switch between modes, toggle keyboard grabbing, minimize, etc.</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;- Tabbed interface, optionally managed by groups.</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;- Tray icon, allows you to quickly access configured connection profiles</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;- Remote screen-shots</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;![Remmina main features screenshot](http://www.remmina.org/images/Remmina%20Features.png)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;## How to use Remmina</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;The following are typical use cases</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;### Quick connect using RDP</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;Use this if you don&#39;t need or want to save your connection.</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;Only RDP, SSH, VNC and NX are supported in the quick connect.</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;![Remmina Quick connect using RDP](http://www.remmina.org/images/Remmina_quick_rdp.png)</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;1. Choose the protocol</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;2. Insert the server name</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;3. Click on connect</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;### Create a new Profile</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;1. Click on the &quot;New Profile&quot; icon</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;![Remmina New Profile screenshot](http://www.remmina.org/images/Remmina_newprofile.png)</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;2. Enter your server connection details</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;![New VNC Profile](http://www.remmina.org/images/Remmina_newvncprofile.png)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;- You can ask Remmina to execute commands before and after the connection</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;- If you use Avahi, you can search available hosts as highlighted</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;- You can group different connections.</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;# Options</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;* Name: this is the name you gave to this connection, it&#39;s just for you to recognize it easily.</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;* Group:</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;* Protocol: here you choose the protocol type: [[RDP]], [[SFTP]], [[SSH]]</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;* Pre-command: what to do before starting the connection</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;* Post-command: what to do after closing the connection</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;## General</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;* Server: here you put the IP address of the remote machine</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_user's-guide_8md.html">Remmina-User&#39;s-guide.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md.html b/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md.html
new file mode 100644
index 000000000..168d38f0b
--- /dev/null
+++ b/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-VNC-to-Raspbian-Stretch.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_v_n_c-to-_raspbian-_stretch_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-VNC-to-Raspbian-Stretch.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_remmina-_v_n_c-to-_raspbian-_stretch_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_v_n_c-to-_raspbian-_stretch_8md.html">Remmina-VNC-to-Raspbian-Stretch.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md_source.html b/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md_source.html
new file mode 100644
index 000000000..97b51a287
--- /dev/null
+++ b/docs/_remmina-_v_n_c-to-_raspbian-_stretch_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-VNC-to-Raspbian-Stretch.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_remmina-_v_n_c-to-_raspbian-_stretch_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-VNC-to-Raspbian-Stretch.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_remmina-_v_n_c-to-_raspbian-_stretch_8md.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;The RaspberryPi Raspbian 9 default VNC server is RealVNC. RealVNC only supports 5 propertary security types: 5, 6, 13, 130 and 192.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;According to the official RealVNC documentation for the &quot;Authentication&quot; parameter, Authentication=VncAuth is the only scheme that allows direct connections from VNC-compatible Viewer projects from third parties.</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;In order to change to VncAuth scheme in your Raspbian and set a password to accept connections from Remmina VNC plugin, you have to:</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;1. Open a SSH session or a terminal window to the raspberry</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;2. As root, edit the file /root/.vnc/config.d/vncserver-x11</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;```sudo leafpad /root/.vnc/config.d/vncserver-x11```</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;3. Add the following lines at the end of the file</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;```</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;Authentication=VncAuth</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;Password=aa8ba782c23aff7e</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;```</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;4. Save the file.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;5. Restart the VNC server service with</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;```sudo systemctl restart vncserver-x11-serviced```</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;The above encrypted password is **remmina**, if you want to change it, type</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;```sudo vncpasswd -service``` and restart the VNC server service with ```sudo systemctl restart vncserver-x11-serviced```</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;References:</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;[1] IANA: [Remote Framebuffer Security Types](https://www.iana.org/assignments/rfb/rfb.xhtml#rfb-1) </div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;[2] RealVNC: [VNC Server parameter reference](https://www.realvnc.com/en/connect/docs/server-parameter-ref.html)</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_remmina-_v_n_c-to-_raspbian-_stretch_8md.html">Remmina-VNC-to-Raspbian-Stretch.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_systray-menu_8md.html b/docs/_systray-menu_8md.html
new file mode 100644
index 000000000..fd6ee89b0
--- /dev/null
+++ b/docs/_systray-menu_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Systray-menu.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_systray-menu_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Systray-menu.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_systray-menu_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_systray-menu_8md.html">Systray-menu.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_systray-menu_8md_source.html b/docs/_systray-menu_8md_source.html
new file mode 100644
index 000000000..13c93d5f3
--- /dev/null
+++ b/docs/_systray-menu_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Systray-menu.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_systray-menu_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Systray-menu.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_systray-menu_8md.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;# Systray menu</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;Currently there is not a common way to create a systray menu compatible with all desktops.</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;[GtkStatusIcon](https://developer.gnome.org/gtk3/stable/GtkStatusIcon.html) has been deprecated since GTK 3.14.</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;So we must move to something else. Unfortunately, this &quot;something else&quot; is different from a desktop environment to another.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;E.g.: read [this discussion](https://trac.transmissionbt.com/ticket/3685) for the same problem on Transmission client.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;Yet, we cannot use gtk_window_present() from a systray menu, see issue [#542](https://gitlab.com/Remmina/Remmina/issues/542).</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;So, for each supported desktop environment, we must answer two questions: </div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;Q1. Where do we put the remmina systray menu, and which API do we use for it ? </div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;Q2. Does this place also allow the user to raise a hidden window via gtk_window_present() ?</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;### References</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;* [freedesktop.org system tray spec](http://www.freedesktop.org/wiki/Specifications/systemtray-spec/)</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;* [Libunity source code](http://bazaar.launchpad.net/~unity-team/libunity/trunk/files), written in vala.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;# The desktop environments</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;### Unity</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;In Ubuntu&#39;s Unity, we currently do not use GtkStatusIcon, but libappindicator. This almost works, but when the remmina windows are not on the top, we are unable to present its windows to users. This is explained in [issue #542](https://github.com/FreeRDP/Remmina/issues/542) and it&#39;s a problem of the window manager which prevents gtk_window_present() to stealing focus to other applications.</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;We could use DBusMenu and the [Launcher API](https://wiki.ubuntu.com/Unity/LauncherAPI) to move all the current remmina systray menu into Unity Launcher icon as **dynamic quicklist entries**.</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;Compatibility with gtk_window_present() must be tested.</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;### Gnome Shell</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;Some functions of the [Shell](https://developer.gnome.org/shell/stable/) for ShellTrayIcon object should help for the icon (but no menu support ???). For correctly placing a menu, we can take a look to [Gnome Shell Extension Appindicator source code](https://github.com/rgcjonas/gnome-shell-extension-appindicator).</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;Read [this page](https://wiki.gnome.org/Design/Whiteboards/StatusIcons) which contains a possible plan for GtkStatusIcon under Gnome Shell.</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;In Gnome Shell, Status Icons (GtkStatusIcon) were hidden into the Message Tray at the bottom of the screen.</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;See https://help.gnome.org/misc/release-notes/3.6/users-message-tray.html.en</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;The Message Tray has been removed with Gnome Shell 3.16: https://help.gnome.org/misc/release-notes/3.16/ and it seems that a new drawer has been added to the bottom left of the screen to host all application status icons. Unfortunately I&#39;m currently unable to find official changelog/documentation for this drawer.</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;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;Currently Remmina detects Gnome Shell and, if detected, remmina will quit when there are no visible windows on the screen. We did this because older Gnome Shells hides all deprecated GtkStatusIcons in a hidden place below the screen, and the user is unable to undestand when remmina is running.</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;Starting with [Gnome Shell 3.16](http://www.webupd8.org/2015/03/gnome-316-released-with-new.html) a new drawer has been introduced, which can give the user visual feedback of the GtkStatusIcon presence.</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;### KDE</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;In KDE [KStatusNotifierItem](http://api.kde.org/frameworks-api/frameworks5-apidocs/knotifications/html/classKStatusNotifierItem.html)</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;### Plasma 5</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;In Plasma 5 they have removed completely the support of the xembed protocol, but you can run XEmbed SNI Proxy and work around it.</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;The goal of this project is to make xembed system trays available in Plasma:</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;https://github.com/KDE/plasma-workspace/tree/master/xembed-sni-proxy [-]</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;Just run </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;```sh</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;xembedsniproxy</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;```</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;### XFCE</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;In XFCE ???</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;### LXDE/LXQT</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;In LXDE ???</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;### MATE</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;In MATE ???</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"> 67</span>&#160;### EXTERNAL SOURCES ###</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;* [Proper implementation of system tray icons via libappindicator/StatusNotifierItem](https://code.google.com/p/chromium/issues/detail?id=419673) </div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;* [Updated Tray to use libappindicator in Linux](https://github.com/nwjs/nw.js/pull/2327) Discussion that propose the same Google Chrome fix.</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; </div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_systray-menu_8md.html">Systray-menu.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html b/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html
new file mode 100644
index 000000000..4a5d23699
--- /dev/null
+++ b/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html">Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md_source.html b/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md_source.html
new file mode 100644
index 000000000..ebee9678c
--- /dev/null
+++ b/docs/_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.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;# Testing under Ubuntu with the remmina-next-daily PPA</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Remmina users using Ubuntu and derivatives are warmly invited to use our **remmina-next** PPA, as explained in our [Remmina Wiki Homepage](https://github.com/FreeRDP/Remmina/wiki).</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;The **remmina-next** PPA is updated every official [release](https://github.com/FreeRDP/Remmina/releases), therefore it can be considered **stable**.</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;We also provide an **unstable** PPA, called **remmina-next-daily**. remmina-next-daily is updated daily and contains our latest patches we push on the _next_ github branch.</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;If you want to help testing remmina before an official release, you can switch to the remmina-next-daily by using the following instructions:</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;1. Install the ppa-purge package</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;```sudo apt install ppa-purge```</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;2. Purge the remmina-next PPA</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;```sudo ppa-purge ppa:remmina-ppa-team/remmina-next```</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;3. Install the remmina-next-daily PPA</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;```</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;sudo apt-add-repository ppa:remmina-ppa-team/remmina-next-daily</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;sudo apt update</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;```</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;4. Install remmina packages</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;* if not installed previously</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;```</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;sudo apt install remmina remmina-plugin-rdp libfreerdp-plugins-standard</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;```</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;* if installed previously, just do: </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;```</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;sudo apt upgrade</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;```</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;You might need to perform the following command to remove the previous remmina from memory:</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;```</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;sudo killall remmina</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;```</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</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;Happy testing :)</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html">Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_update-gettext-messages_8md.html b/docs/_update-gettext-messages_8md.html
new file mode 100644
index 000000000..c14741345
--- /dev/null
+++ b/docs/_update-gettext-messages_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Update-gettext-messages.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_update-gettext-messages_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Update-gettext-messages.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="_update-gettext-messages_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_update-gettext-messages_8md.html">Update-gettext-messages.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/_update-gettext-messages_8md_source.html b/docs/_update-gettext-messages_8md_source.html
new file mode 100644
index 000000000..3b36c43be
--- /dev/null
+++ b/docs/_update-gettext-messages_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Update-gettext-messages.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('_update-gettext-messages_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Update-gettext-messages.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="_update-gettext-messages_8md.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;This is a quick, dirty and no brainy procedure to update the po files in Remmina.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Please count till 10 seconds before to copy&amp;paste it in the terminal.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;```bash</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;REMMINATOP=~/remmina_devel/Remmina </div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;cd $REMMINATOP </div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;find src plugins -name &quot;*.c&quot; | sed &#39;s/^.\///&#39; &gt;| po/POTFILES.in </div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;find data -name &quot;*.glade&quot; | sed &#39;s/^.\///&#39; &gt;&gt; po/POTFILES.in </div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;find data -name &quot;*.appdata.xml&quot; | sed &#39;s/^.\///&#39; &gt;&gt; po/POTFILES.in</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;xgettext --from-code=UTF-8 -k_ -kN_ -ktranslatable --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments --files-from=po/POTFILES.in --output=po/messages.pot --copyright-holder=&quot;2014-2018 Antenore Gatta, Giovanni Panozzo&quot; --package-name=&quot;Remmina&quot; --package-version=&quot;1.2.31&quot; --msgid-bugs-address=&quot;admin@remmina.org&quot;</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;cd $REMMINATOP/po </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;for i in *.po; do </div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;msgmerge -N --backup=off --update $i messages.pot </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;done </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;for i in $REMMINATOP/po/*.po ; do </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;TMPF=/tmp/f$$.txt </div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;sed &#39;/^#~/d&#39; $i &gt; $TMPF </div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;awk &#39;BEGIN{bl=0}/^$/{bl++;if(bl==1)print;else next}/^..*$/{bl=0;print}&#39; $TMPF &gt;| $i </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;rm $TMPF </div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;done </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;rm *.po~ </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;rm messages.pot </div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;```</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;To test remmina in another language you can start it from the command line this way:</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;```bash</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;LANGUAGE=ru remmina</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;``` </div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="_update-gettext-messages_8md.html">Update-gettext-messages.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/annotated.html b/docs/annotated.html
new file mode 100644
index 000000000..2a975f1fd
--- /dev/null
+++ b/docs/annotated.html
@@ -0,0 +1,203 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Structures</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('annotated.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Data Structures</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_applet_menu.html" target="_self">_RemminaAppletMenu</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_applet_menu_class.html" target="_self">_RemminaAppletMenuClass</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_applet_menu_item.html" target="_self">_RemminaAppletMenuItem</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_applet_menu_item_class.html" target="_self">_RemminaAppletMenuItemClass</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_avahi.html" target="_self">_RemminaAvahi</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_avahi_priv.html" target="_self">_RemminaAvahiPriv</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_cell_renderer_pixbuf.html" target="_self">_RemminaCellRendererPixbuf</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html" target="_self">_RemminaCellRendererPixbufClass</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_chat_window.html" target="_self">_RemminaChatWindow</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_chat_window_class.html" target="_self">_RemminaChatWindowClass</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_color_pref.html" target="_self">_RemminaColorPref</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_connection_object.html" target="_self">_RemminaConnectionObject</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_connection_window.html" target="_self">_RemminaConnectionWindow</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_connection_window_class.html" target="_self">_RemminaConnectionWindowClass</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_entry_plugin.html" target="_self">_RemminaEntryPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_file.html" target="_self">_RemminaFile</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_file_editor.html" target="_self">_RemminaFileEditor</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_file_editor_class.html" target="_self">_RemminaFileEditorClass</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_file_plugin.html" target="_self">_RemminaFilePlugin</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_f_t_p_client.html" target="_self">_RemminaFTPClient</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_f_t_p_client_class.html" target="_self">_RemminaFTPClientClass</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_f_t_p_task.html" target="_self">_RemminaFTPTask</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_group_data.html" target="_self">_RemminaGroupData</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_icon.html" target="_self">_RemminaIcon</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_key_chooser_arguments.html" target="_self">_RemminaKeyChooserArguments</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_key_val.html" target="_self">_RemminaKeyVal</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_log_window.html" target="_self">_RemminaLogWindow</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_log_window_class.html" target="_self">_RemminaLogWindowClass</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_main.html" target="_self">_RemminaMain</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_main_priv.html" target="_self">_RemminaMainPriv</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_news_dialog.html" target="_self">_RemminaNewsDialog</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_n_x_session.html" target="_self">_RemminaNXSession</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin.html" target="_self">_RemminaPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_data.html" target="_self">_RemminaPluginData</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_exec_data.html" target="_self">_RemminaPluginExecData</a></td><td class="desc"></td></tr>
+<tr id="row_35_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_nx_data.html" target="_self">_RemminaPluginNxData</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_rdpset_grid.html" target="_self">_RemminaPluginRdpsetGrid</a></td><td class="desc"></td></tr>
+<tr id="row_37_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_rdpset_grid_class.html" target="_self">_RemminaPluginRdpsetGridClass</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_screenshot_data.html" target="_self">_RemminaPluginScreenshotData</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_service.html" target="_self">_RemminaPluginService</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_sftp_data.html" target="_self">_RemminaPluginSftpData</a></td><td class="desc"></td></tr>
+<tr id="row_41_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_spice_data.html" target="_self">_RemminaPluginSpiceData</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html" target="_self">_RemminaPluginSpiceXferWidgets</a></td><td class="desc"></td></tr>
+<tr id="row_43_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_ssh_data.html" target="_self">_RemminaPluginSshData</a></td><td class="desc">The SSH plugin implementation </td></tr>
+<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_vnc_coordinates.html" target="_self">_RemminaPluginVncCoordinates</a></td><td class="desc"></td></tr>
+<tr id="row_45_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html" target="_self">_RemminaPluginVncCuttextParam</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_vnc_data.html" target="_self">_RemminaPluginVncData</a></td><td class="desc"></td></tr>
+<tr id="row_47_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_vnc_event.html" target="_self">_RemminaPluginVncEvent</a></td><td class="desc"></td></tr>
+<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_w_w_w_data.html" target="_self">_RemminaPluginWWWData</a></td><td class="desc"></td></tr>
+<tr id="row_49_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_plugin_xdmcp_data.html" target="_self">_RemminaPluginXdmcpData</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_pref.html" target="_self">_RemminaPref</a></td><td class="desc"></td></tr>
+<tr id="row_51_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_pref_dialog.html" target="_self">_RemminaPrefDialog</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_pref_dialog_priv.html" target="_self">_RemminaPrefDialogPriv</a></td><td class="desc"></td></tr>
+<tr id="row_53_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_pref_plugin.html" target="_self">_RemminaPrefPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_54_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_feature.html" target="_self">_RemminaProtocolFeature</a></td><td class="desc"></td></tr>
+<tr id="row_55_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_plugin.html" target="_self">_RemminaProtocolPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_56_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_setting.html" target="_self">_RemminaProtocolSetting</a></td><td class="desc"></td></tr>
+<tr id="row_57_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_setting_opt.html" target="_self">_RemminaProtocolSettingOpt</a></td><td class="desc"></td></tr>
+<tr id="row_58_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_widget.html" target="_self">_RemminaProtocolWidget</a></td><td class="desc"></td></tr>
+<tr id="row_59_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_widget_class.html" target="_self">_RemminaProtocolWidgetClass</a></td><td class="desc"></td></tr>
+<tr id="row_60_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_widget_priv.html" target="_self">_RemminaProtocolWidgetPriv</a></td><td class="desc"></td></tr>
+<tr id="row_61_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_protocol_widget_signal_data.html" target="_self">_RemminaProtocolWidgetSignalData</a></td><td class="desc"></td></tr>
+<tr id="row_62_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_scrolled_viewport.html" target="_self">_RemminaScrolledViewport</a></td><td class="desc"></td></tr>
+<tr id="row_63_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_scrolled_viewport_class.html" target="_self">_RemminaScrolledViewportClass</a></td><td class="desc"></td></tr>
+<tr id="row_64_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_secret_plugin.html" target="_self">_RemminaSecretPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_65_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_f_t_p.html" target="_self">_RemminaSFTP</a></td><td class="desc"></td></tr>
+<tr id="row_66_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_f_t_p_client.html" target="_self">_RemminaSFTPClient</a></td><td class="desc"></td></tr>
+<tr id="row_67_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_f_t_p_client_class.html" target="_self">_RemminaSFTPClientClass</a></td><td class="desc"></td></tr>
+<tr id="row_68_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_s_h.html" target="_self">_RemminaSSH</a></td><td class="desc"></td></tr>
+<tr id="row_69_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_s_h_shell.html" target="_self">_RemminaSSHShell</a></td><td class="desc"></td></tr>
+<tr id="row_70_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_s_s_h_tunnel.html" target="_self">_RemminaSSHTunnel</a></td><td class="desc"></td></tr>
+<tr id="row_71_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_string_list.html" target="_self">_RemminaStringList</a></td><td class="desc"></td></tr>
+<tr id="row_72_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_string_list_priv.html" target="_self">_RemminaStringListPriv</a></td><td class="desc"></td></tr>
+<tr id="row_73_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_tool_plugin.html" target="_self">_RemminaToolPlugin</a></td><td class="desc"></td></tr>
+<tr id="row_74_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_tp_channel_handler.html" target="_self">_RemminaTpChannelHandler</a></td><td class="desc"></td></tr>
+<tr id="row_75_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_tp_handler.html" target="_self">_RemminaTpHandler</a></td><td class="desc"></td></tr>
+<tr id="row_76_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_tp_handler_class.html" target="_self">_RemminaTpHandlerClass</a></td><td class="desc"></td></tr>
+<tr id="row_77_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct___remmina_unlock_dialog.html" target="_self">_RemminaUnlockDialog</a></td><td class="desc"></td></tr>
+<tr id="row_78_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structdistro__info.html" target="_self">distro_info</a></td><td class="desc"></td></tr>
+<tr id="row_79_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structlsb__distro__info.html" target="_self">lsb_distro_info</a></td><td class="desc"></td></tr>
+<tr id="row_80_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmpchanger__params.html" target="_self">mpchanger_params</a></td><td class="desc"></td></tr>
+<tr id="row_81_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_mp_run_info.html" target="_self">MpRunInfo</a></td><td class="desc"></td></tr>
+<tr id="row_82_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structon_main_thread__cb__data.html" target="_self">onMainThread_cb_data</a></td><td class="desc"></td></tr>
+<tr id="row_83_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_p_con___spinner.html" target="_self">PCon_Spinner</a></td><td class="desc"></td></tr>
+<tr id="row_84_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_profiles_data.html" target="_self">ProfilesData</a></td><td class="desc"></td></tr>
+<tr id="row_85_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structregion.html" target="_self">region</a></td><td class="desc"></td></tr>
+<tr id="row_86_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structremmina__masterthread__exec__data.html" target="_self">remmina_masterthread_exec_data</a></td><td class="desc"></td></tr>
+<tr id="row_87_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structremmina__plugin__rdp__event.html" target="_self">remmina_plugin_rdp_event</a></td><td class="desc"></td></tr>
+<tr id="row_88_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structremmina__plugin__rdp__keymap__entry.html" target="_self">remmina_plugin_rdp_keymap_entry</a></td><td class="desc"></td></tr>
+<tr id="row_89_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structremmina__plugin__rdp__ui__object.html" target="_self">remmina_plugin_rdp_ui_object</a></td><td class="desc"></td></tr>
+<tr id="row_90_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html" target="_self">remmina_protocol_widget_dialog_mt_data_t</a></td><td class="desc"></td></tr>
+<tr id="row_91_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_remmina_message_panel_private.html" target="_self">RemminaMessagePanelPrivate</a></td><td class="desc"></td></tr>
+<tr id="row_92_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrf__bitmap.html" target="_self">rf_bitmap</a></td><td class="desc"></td></tr>
+<tr id="row_93_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrf__clipboard.html" target="_self">rf_clipboard</a></td><td class="desc"></td></tr>
+<tr id="row_94_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrf__context.html" target="_self">rf_context</a></td><td class="desc"></td></tr>
+<tr id="row_95_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrf__glyph.html" target="_self">rf_glyph</a></td><td class="desc"></td></tr>
+<tr id="row_96_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrf__pointer.html" target="_self">rf_pointer</a></td><td class="desc"></td></tr>
+<tr id="row_97_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structrs_sched_data.html" target="_self">rsSchedData</a></td><td class="desc"></td></tr>
+<tr id="row_98_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structsc__tdata.html" target="_self">sc_tdata</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/annotated_dup.js b/docs/annotated_dup.js
new file mode 100644
index 000000000..8ea9eeb48
--- /dev/null
+++ b/docs/annotated_dup.js
@@ -0,0 +1,102 @@
+var annotated_dup =
+[
+ [ "_RemminaAppletMenu", "struct___remmina_applet_menu.html", "struct___remmina_applet_menu" ],
+ [ "_RemminaAppletMenuClass", "struct___remmina_applet_menu_class.html", "struct___remmina_applet_menu_class" ],
+ [ "_RemminaAppletMenuItem", "struct___remmina_applet_menu_item.html", "struct___remmina_applet_menu_item" ],
+ [ "_RemminaAppletMenuItemClass", "struct___remmina_applet_menu_item_class.html", "struct___remmina_applet_menu_item_class" ],
+ [ "_RemminaAvahi", "struct___remmina_avahi.html", "struct___remmina_avahi" ],
+ [ "_RemminaAvahiPriv", "struct___remmina_avahi_priv.html", "struct___remmina_avahi_priv" ],
+ [ "_RemminaCellRendererPixbuf", "struct___remmina_cell_renderer_pixbuf.html", "struct___remmina_cell_renderer_pixbuf" ],
+ [ "_RemminaCellRendererPixbufClass", "struct___remmina_cell_renderer_pixbuf_class.html", "struct___remmina_cell_renderer_pixbuf_class" ],
+ [ "_RemminaChatWindow", "struct___remmina_chat_window.html", "struct___remmina_chat_window" ],
+ [ "_RemminaChatWindowClass", "struct___remmina_chat_window_class.html", "struct___remmina_chat_window_class" ],
+ [ "_RemminaColorPref", "struct___remmina_color_pref.html", "struct___remmina_color_pref" ],
+ [ "_RemminaConnectionObject", "struct___remmina_connection_object.html", "struct___remmina_connection_object" ],
+ [ "_RemminaConnectionWindow", "struct___remmina_connection_window.html", "struct___remmina_connection_window" ],
+ [ "_RemminaConnectionWindowClass", "struct___remmina_connection_window_class.html", "struct___remmina_connection_window_class" ],
+ [ "_RemminaEntryPlugin", "struct___remmina_entry_plugin.html", "struct___remmina_entry_plugin" ],
+ [ "_RemminaFile", "struct___remmina_file.html", "struct___remmina_file" ],
+ [ "_RemminaFileEditor", "struct___remmina_file_editor.html", "struct___remmina_file_editor" ],
+ [ "_RemminaFileEditorClass", "struct___remmina_file_editor_class.html", "struct___remmina_file_editor_class" ],
+ [ "_RemminaFilePlugin", "struct___remmina_file_plugin.html", "struct___remmina_file_plugin" ],
+ [ "_RemminaFTPClient", "struct___remmina_f_t_p_client.html", "struct___remmina_f_t_p_client" ],
+ [ "_RemminaFTPClientClass", "struct___remmina_f_t_p_client_class.html", "struct___remmina_f_t_p_client_class" ],
+ [ "_RemminaFTPTask", "struct___remmina_f_t_p_task.html", "struct___remmina_f_t_p_task" ],
+ [ "_RemminaGroupData", "struct___remmina_group_data.html", "struct___remmina_group_data" ],
+ [ "_RemminaIcon", "struct___remmina_icon.html", "struct___remmina_icon" ],
+ [ "_RemminaKeyChooserArguments", "struct___remmina_key_chooser_arguments.html", "struct___remmina_key_chooser_arguments" ],
+ [ "_RemminaKeyVal", "struct___remmina_key_val.html", "struct___remmina_key_val" ],
+ [ "_RemminaLogWindow", "struct___remmina_log_window.html", "struct___remmina_log_window" ],
+ [ "_RemminaLogWindowClass", "struct___remmina_log_window_class.html", "struct___remmina_log_window_class" ],
+ [ "_RemminaMain", "struct___remmina_main.html", "struct___remmina_main" ],
+ [ "_RemminaMainPriv", "struct___remmina_main_priv.html", "struct___remmina_main_priv" ],
+ [ "_RemminaNewsDialog", "struct___remmina_news_dialog.html", "struct___remmina_news_dialog" ],
+ [ "_RemminaNXSession", "struct___remmina_n_x_session.html", "struct___remmina_n_x_session" ],
+ [ "_RemminaPlugin", "struct___remmina_plugin.html", "struct___remmina_plugin" ],
+ [ "_RemminaPluginData", "struct___remmina_plugin_data.html", "struct___remmina_plugin_data" ],
+ [ "_RemminaPluginExecData", "struct___remmina_plugin_exec_data.html", "struct___remmina_plugin_exec_data" ],
+ [ "_RemminaPluginNxData", "struct___remmina_plugin_nx_data.html", "struct___remmina_plugin_nx_data" ],
+ [ "_RemminaPluginRdpsetGrid", "struct___remmina_plugin_rdpset_grid.html", "struct___remmina_plugin_rdpset_grid" ],
+ [ "_RemminaPluginRdpsetGridClass", "struct___remmina_plugin_rdpset_grid_class.html", "struct___remmina_plugin_rdpset_grid_class" ],
+ [ "_RemminaPluginScreenshotData", "struct___remmina_plugin_screenshot_data.html", "struct___remmina_plugin_screenshot_data" ],
+ [ "_RemminaPluginService", "struct___remmina_plugin_service.html", "struct___remmina_plugin_service" ],
+ [ "_RemminaPluginSftpData", "struct___remmina_plugin_sftp_data.html", "struct___remmina_plugin_sftp_data" ],
+ [ "_RemminaPluginSpiceData", "struct___remmina_plugin_spice_data.html", "struct___remmina_plugin_spice_data" ],
+ [ "_RemminaPluginSpiceXferWidgets", "struct___remmina_plugin_spice_xfer_widgets.html", "struct___remmina_plugin_spice_xfer_widgets" ],
+ [ "_RemminaPluginSshData", "struct___remmina_plugin_ssh_data.html", "struct___remmina_plugin_ssh_data" ],
+ [ "_RemminaPluginVncCoordinates", "struct___remmina_plugin_vnc_coordinates.html", "struct___remmina_plugin_vnc_coordinates" ],
+ [ "_RemminaPluginVncCuttextParam", "struct___remmina_plugin_vnc_cuttext_param.html", "struct___remmina_plugin_vnc_cuttext_param" ],
+ [ "_RemminaPluginVncData", "struct___remmina_plugin_vnc_data.html", "struct___remmina_plugin_vnc_data" ],
+ [ "_RemminaPluginVncEvent", "struct___remmina_plugin_vnc_event.html", "struct___remmina_plugin_vnc_event" ],
+ [ "_RemminaPluginWWWData", "struct___remmina_plugin_w_w_w_data.html", "struct___remmina_plugin_w_w_w_data" ],
+ [ "_RemminaPluginXdmcpData", "struct___remmina_plugin_xdmcp_data.html", "struct___remmina_plugin_xdmcp_data" ],
+ [ "_RemminaPref", "struct___remmina_pref.html", "struct___remmina_pref" ],
+ [ "_RemminaPrefDialog", "struct___remmina_pref_dialog.html", "struct___remmina_pref_dialog" ],
+ [ "_RemminaPrefDialogPriv", "struct___remmina_pref_dialog_priv.html", "struct___remmina_pref_dialog_priv" ],
+ [ "_RemminaPrefPlugin", "struct___remmina_pref_plugin.html", "struct___remmina_pref_plugin" ],
+ [ "_RemminaProtocolFeature", "struct___remmina_protocol_feature.html", "struct___remmina_protocol_feature" ],
+ [ "_RemminaProtocolPlugin", "struct___remmina_protocol_plugin.html", "struct___remmina_protocol_plugin" ],
+ [ "_RemminaProtocolSetting", "struct___remmina_protocol_setting.html", "struct___remmina_protocol_setting" ],
+ [ "_RemminaProtocolSettingOpt", "struct___remmina_protocol_setting_opt.html", "struct___remmina_protocol_setting_opt" ],
+ [ "_RemminaProtocolWidget", "struct___remmina_protocol_widget.html", "struct___remmina_protocol_widget" ],
+ [ "_RemminaProtocolWidgetClass", "struct___remmina_protocol_widget_class.html", "struct___remmina_protocol_widget_class" ],
+ [ "_RemminaProtocolWidgetPriv", "struct___remmina_protocol_widget_priv.html", "struct___remmina_protocol_widget_priv" ],
+ [ "_RemminaProtocolWidgetSignalData", "struct___remmina_protocol_widget_signal_data.html", "struct___remmina_protocol_widget_signal_data" ],
+ [ "_RemminaScrolledViewport", "struct___remmina_scrolled_viewport.html", "struct___remmina_scrolled_viewport" ],
+ [ "_RemminaScrolledViewportClass", "struct___remmina_scrolled_viewport_class.html", "struct___remmina_scrolled_viewport_class" ],
+ [ "_RemminaSecretPlugin", "struct___remmina_secret_plugin.html", "struct___remmina_secret_plugin" ],
+ [ "_RemminaSFTP", "struct___remmina_s_f_t_p.html", "struct___remmina_s_f_t_p" ],
+ [ "_RemminaSFTPClient", "struct___remmina_s_f_t_p_client.html", "struct___remmina_s_f_t_p_client" ],
+ [ "_RemminaSFTPClientClass", "struct___remmina_s_f_t_p_client_class.html", "struct___remmina_s_f_t_p_client_class" ],
+ [ "_RemminaSSH", "struct___remmina_s_s_h.html", "struct___remmina_s_s_h" ],
+ [ "_RemminaSSHShell", "struct___remmina_s_s_h_shell.html", "struct___remmina_s_s_h_shell" ],
+ [ "_RemminaSSHTunnel", "struct___remmina_s_s_h_tunnel.html", "struct___remmina_s_s_h_tunnel" ],
+ [ "_RemminaStringList", "struct___remmina_string_list.html", "struct___remmina_string_list" ],
+ [ "_RemminaStringListPriv", "struct___remmina_string_list_priv.html", "struct___remmina_string_list_priv" ],
+ [ "_RemminaToolPlugin", "struct___remmina_tool_plugin.html", "struct___remmina_tool_plugin" ],
+ [ "_RemminaTpChannelHandler", "struct___remmina_tp_channel_handler.html", "struct___remmina_tp_channel_handler" ],
+ [ "_RemminaTpHandler", "struct___remmina_tp_handler.html", "struct___remmina_tp_handler" ],
+ [ "_RemminaTpHandlerClass", "struct___remmina_tp_handler_class.html", "struct___remmina_tp_handler_class" ],
+ [ "_RemminaUnlockDialog", "struct___remmina_unlock_dialog.html", "struct___remmina_unlock_dialog" ],
+ [ "distro_info", "structdistro__info.html", "structdistro__info" ],
+ [ "lsb_distro_info", "structlsb__distro__info.html", "structlsb__distro__info" ],
+ [ "mpchanger_params", "structmpchanger__params.html", "structmpchanger__params" ],
+ [ "MpRunInfo", "struct_mp_run_info.html", "struct_mp_run_info" ],
+ [ "onMainThread_cb_data", "structon_main_thread__cb__data.html", "structon_main_thread__cb__data" ],
+ [ "PCon_Spinner", "struct_p_con___spinner.html", "struct_p_con___spinner" ],
+ [ "ProfilesData", "struct_profiles_data.html", "struct_profiles_data" ],
+ [ "region", "structregion.html", "structregion" ],
+ [ "remmina_masterthread_exec_data", "structremmina__masterthread__exec__data.html", "structremmina__masterthread__exec__data" ],
+ [ "remmina_plugin_rdp_event", "structremmina__plugin__rdp__event.html", "structremmina__plugin__rdp__event" ],
+ [ "remmina_plugin_rdp_keymap_entry", "structremmina__plugin__rdp__keymap__entry.html", "structremmina__plugin__rdp__keymap__entry" ],
+ [ "remmina_plugin_rdp_ui_object", "structremmina__plugin__rdp__ui__object.html", "structremmina__plugin__rdp__ui__object" ],
+ [ "remmina_protocol_widget_dialog_mt_data_t", "structremmina__protocol__widget__dialog__mt__data__t.html", "structremmina__protocol__widget__dialog__mt__data__t" ],
+ [ "RemminaMessagePanelPrivate", "struct_remmina_message_panel_private.html", "struct_remmina_message_panel_private" ],
+ [ "rf_bitmap", "structrf__bitmap.html", "structrf__bitmap" ],
+ [ "rf_clipboard", "structrf__clipboard.html", "structrf__clipboard" ],
+ [ "rf_context", "structrf__context.html", "structrf__context" ],
+ [ "rf_glyph", "structrf__glyph.html", "structrf__glyph" ],
+ [ "rf_pointer", "structrf__pointer.html", "structrf__pointer" ],
+ [ "rsSchedData", "structrs_sched_data.html", "structrs_sched_data" ],
+ [ "sc_tdata", "structsc__tdata.html", "structsc__tdata" ]
+]; \ No newline at end of file
diff --git a/docs/bc_s.png b/docs/bc_s.png
new file mode 100644
index 000000000..224b29aa9
--- /dev/null
+++ b/docs/bc_s.png
Binary files differ
diff --git a/docs/bdwn.png b/docs/bdwn.png
new file mode 100644
index 000000000..940a0b950
--- /dev/null
+++ b/docs/bdwn.png
Binary files differ
diff --git a/docs/classes.html b/docs/classes.html
new file mode 100644
index 000000000..ce9830bc4
--- /dev/null
+++ b/docs/classes.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Structure Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('classes.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Data Structure Index</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter__">_</a>&#160;|&#160;<a class="qindex" href="#letter_d">d</a>&#160;|&#160;<a class="qindex" href="#letter_l">l</a>&#160;|&#160;<a class="qindex" href="#letter_m">m</a>&#160;|&#160;<a class="qindex" href="#letter_o">o</a>&#160;|&#160;<a class="qindex" href="#letter_p">p</a>&#160;|&#160;<a class="qindex" href="#letter_r">r</a>&#160;|&#160;<a class="qindex" href="#letter_s">s</a></div>
+<table class="classindex">
+<tr><td rowspan="2" valign="bottom"><a name="letter__"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;_&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_p"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;p&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_group_data.html">_RemminaGroupData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_s_h.html">_RemminaSSH</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_icon.html">_RemminaIcon</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_p_con___spinner.html">PCon_Spinner</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_profiles_data.html">ProfilesData</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_key_val.html">_RemminaKeyVal</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_string_list.html">_RemminaStringList</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_r"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;r&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_log_window.html">_RemminaLogWindow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_avahi.html">_RemminaAvahi</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_pref.html">_RemminaPref</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structregion.html">region</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_main.html">_RemminaMain</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_main_priv.html">_RemminaMainPriv</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_chat_window.html">_RemminaChatWindow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_n_x_session.html">_RemminaNXSession</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin.html">_RemminaPlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_d"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;d&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_color_pref.html">_RemminaColorPref</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_data.html">_RemminaPluginData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structdistro__info.html">distro_info</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrf__bitmap.html">rf_bitmap</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_l"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;l&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structrf__clipboard.html">rf_clipboard</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrf__context.html">rf_context</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structlsb__distro__info.html">lsb_distro_info</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrf__glyph.html">rf_glyph</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_file.html">_RemminaFile</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_m"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;m&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structrf__pointer.html">rf_pointer</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_file_editor.html">_RemminaFileEditor</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_service.html">_RemminaPluginService</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrs_sched_data.html">rsSchedData</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structmpchanger__params.html">mpchanger_params</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct_mp_run_info.html">MpRunInfo</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_o"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;o&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structsc__tdata.html">sc_tdata</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a>&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td valign="top"><a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a>&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter__">_</a>&#160;|&#160;<a class="qindex" href="#letter_d">d</a>&#160;|&#160;<a class="qindex" href="#letter_l">l</a>&#160;|&#160;<a class="qindex" href="#letter_m">m</a>&#160;|&#160;<a class="qindex" href="#letter_o">o</a>&#160;|&#160;<a class="qindex" href="#letter_p">p</a>&#160;|&#160;<a class="qindex" href="#letter_r">r</a>&#160;|&#160;<a class="qindex" href="#letter_s">s</a></div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/closed.png b/docs/closed.png
new file mode 100644
index 000000000..98cc2c909
--- /dev/null
+++ b/docs/closed.png
Binary files differ
diff --git a/docs/dir_025b464d54bdde1478f0775784ca5da1.html b/docs/dir_025b464d54bdde1478f0775784ca5da1.html
new file mode 100644
index 000000000..294d98d09
--- /dev/null
+++ b/docs/dir_025b464d54bdde1478f0775784ca5da1.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_025b464d54bdde1478f0775784ca5da1.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">spice Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:spice__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html">spice_plugin.c</a> <a href="spice__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:spice__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8h.html">spice_plugin.h</a> <a href="spice__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:spice__plugin__file__transfer_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html">spice_plugin_file_transfer.c</a> <a href="spice__plugin__file__transfer_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:spice__plugin__usb_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__usb_8c.html">spice_plugin_usb.c</a> <a href="spice__plugin__usb_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_059c6fae417c75ea7479b164feca3607.html b/docs/dir_059c6fae417c75ea7479b164feca3607.html
new file mode 100644
index 000000000..07314351e
--- /dev/null
+++ b/docs/dir_059c6fae417c75ea7479b164feca3607.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_059c6fae417c75ea7479b164feca3607.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:rdp__channels_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8c.html">rdp_channels.c</a> <a href="rdp__channels_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__channels_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8h.html">rdp_channels.h</a> <a href="rdp__channels_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__cliprdr_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html">rdp_cliprdr.c</a> <a href="rdp__cliprdr_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__cliprdr_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a> <a href="rdp__cliprdr_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__event_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html">rdp_event.c</a> <a href="rdp__event_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__event_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html">rdp_event.h</a> <a href="rdp__event_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__file_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html">rdp_file.c</a> <a href="rdp__file_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__file_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8h.html">rdp_file.h</a> <a href="rdp__file_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__graphics_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html">rdp_graphics.c</a> <a href="rdp__graphics_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__graphics_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8h.html">rdp_graphics.h</a> <a href="rdp__graphics_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html">rdp_plugin.c</a> <a href="rdp__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html">rdp_plugin.h</a> <a href="rdp__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__settings_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html">rdp_settings.c</a> <a href="rdp__settings_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rdp__settings_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8h.html">rdp_settings.h</a> <a href="rdp__settings_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_102f75735b5d16c1e789df8d2c0a1a6f.html b/docs/dir_102f75735b5d16c1e789df8d2c0a1a6f.html
new file mode 100644
index 000000000..0f236e12e
--- /dev/null
+++ b/docs/dir_102f75735b5d16c1e789df8d2c0a1a6f.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: external_tools Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_102f75735b5d16c1e789df8d2c0a1a6f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">external_tools Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:functions_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="functions_8sh.html">functions.sh</a> <a href="functions_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:launcher_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="launcher_8sh.html">launcher.sh</a> <a href="launcher_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__filezilla__sftp_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__filezilla__sftp_8sh.html">remmina_filezilla_sftp.sh</a> <a href="remmina__filezilla__sftp_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__filezilla__sftp__pki_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__filezilla__sftp__pki_8sh.html">remmina_filezilla_sftp_pki.sh</a> <a href="remmina__filezilla__sftp__pki_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__nslookup_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__nslookup_8sh.html">remmina_nslookup.sh</a> <a href="remmina__nslookup_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ping_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ping_8sh.html">remmina_ping.sh</a> <a href="remmina__ping_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__traceroute_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__traceroute_8sh.html">remmina_traceroute.sh</a> <a href="remmina__traceroute_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_1a3d72b38ed81de42b4df14ef8f2e809.html b/docs/dir_1a3d72b38ed81de42b4df14ef8f2e809.html
new file mode 100644
index 000000000..075a476dd
--- /dev/null
+++ b/docs/dir_1a3d72b38ed81de42b4df14ef8f2e809.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_1a3d72b38ed81de42b4df14ef8f2e809.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:nx__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html">nx_plugin.c</a> <a href="nx__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:nx__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8h.html">nx_plugin.h</a> <a href="nx__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:nx__session_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html">nx_session.c</a> <a href="nx__session_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:nx__session_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html">nx_session.h</a> <a href="nx__session_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:nx__session__manager_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html">nx_session_manager.c</a> <a href="nx__session__manager_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:nx__session__manager_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8h.html">nx_session_manager.h</a> <a href="nx__session__manager_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_22645d582cc18eda0ab074b7cd176c78.html b/docs/dir_22645d582cc18eda0ab074b7cd176c78.html
new file mode 100644
index 000000000..df491a1c2
--- /dev/null
+++ b/docs/dir_22645d582cc18eda0ab074b7cd176c78.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: src Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_22645d582cc18eda0ab074b7cd176c78.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">src Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:glibsecret__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html">glibsecret_plugin.c</a> <a href="glibsecret__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:glibsecret__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8h.html">glibsecret_plugin.h</a> <a href="glibsecret__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li><li class="navelem"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_35e28620351c095f44ad7f2993dd5d9f.html b/docs/dir_35e28620351c095f44ad7f2993dd5d9f.html
new file mode 100644
index 000000000..646009a75
--- /dev/null
+++ b/docs/dir_35e28620351c095f44ad7f2993dd5d9f.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: exec Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_35e28620351c095f44ad7f2993dd5d9f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">exec Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:exec__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html">exec_plugin.c</a> <a href="exec__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:exec__plugin__config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin__config_8h.html">exec_plugin_config.h</a> <a href="exec__plugin__config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_38c8d24aef3972a7f87b834274e76e31.html b/docs/dir_38c8d24aef3972a7f87b834274e76e31.html
new file mode 100644
index 000000000..c8c2dbe88
--- /dev/null
+++ b/docs/dir_38c8d24aef3972a7f87b834274e76e31.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugins Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_38c8d24aef3972a7f87b834274e76e31.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">plugins Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_5d25c70afac6b002f7f51ae199ab2b04"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_5d25c70afac6b002f7f51ae199ab2b04.html">common</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_35e28620351c095f44ad7f2993dd5d9f"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_ae0d860c7818897e816988ff8df918dc"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_1a3d72b38ed81de42b4df14ef8f2e809"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_059c6fae417c75ea7479b164feca3607"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_44f4a4140b93ab2b1a3d54fe93f215e1"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_025b464d54bdde1478f0775784ca5da1"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_9662584a5e3ef571a4f03ea844ef6687"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_96b2009824cf1ba1b83e0aec485e7d03"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_fa8c5cacd6671c1854478287e377f3ab"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_ff91815d22ef8e3219147b7ca619fdb5"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_4050fc95b5648853ed3ab4946fbaca56"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_d1989cceabdfad53225af373aeeb6953"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d1989cceabdfad53225af373aeeb6953.html">xdmcp</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_4050fc95b5648853ed3ab4946fbaca56.html b/docs/dir_4050fc95b5648853ed3ab4946fbaca56.html
new file mode 100644
index 000000000..178e5562a
--- /dev/null
+++ b/docs/dir_4050fc95b5648853ed3ab4946fbaca56.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_4050fc95b5648853ed3ab4946fbaca56.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:www__config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__config_8h.html">www_config.h</a> <a href="www__config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:www__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html">www_plugin.c</a> <a href="www__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:www__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html">www_plugin.h</a> <a href="www__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:www__utils_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html">www_utils.c</a> <a href="www__utils_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:www__utils_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8h.html">www_utils.h</a> <a href="www__utils_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_44f4a4140b93ab2b1a3d54fe93f215e1.html b/docs/dir_44f4a4140b93ab2b1a3d54fe93f215e1.html
new file mode 100644
index 000000000..02126f2be
--- /dev/null
+++ b/docs/dir_44f4a4140b93ab2b1a3d54fe93f215e1.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: secret Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_44f4a4140b93ab2b1a3d54fe93f215e1.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">secret Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_22645d582cc18eda0ab074b7cd176c78"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html b/docs/dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html
new file mode 100644
index 000000000..a1254ee22
--- /dev/null
+++ b/docs/dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: scripts Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">scripts Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:gettranslator_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gettranslator_8sh.html">gettranslator.sh</a> <a href="gettranslator_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:i18nstats_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="i18nstats_8sh.html">i18nstats.sh</a> <a href="i18nstats_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:travis-build_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="travis-build_8sh.html">travis-build.sh</a> <a href="travis-build_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ubuntu-build_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ubuntu-build_8sh.html">ubuntu-build.sh</a> <a href="ubuntu-build_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:update-translations_8sh"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="update-translations_8sh.html">update-translations.sh</a> <a href="update-translations_8sh_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_5d25c70afac6b002f7f51ae199ab2b04.html b/docs/dir_5d25c70afac6b002f7f51ae199ab2b04.html
new file mode 100644
index 000000000..f27a8f271
--- /dev/null
+++ b/docs/dir_5d25c70afac6b002f7f51ae199ab2b04.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: common Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_5d25c70afac6b002f7f51ae199ab2b04.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">common Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:remmina__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin_8h.html">remmina_plugin.h</a> <a href="remmina__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_5d25c70afac6b002f7f51ae199ab2b04.html">common</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html
new file mode 100644
index 000000000..da750ea91
--- /dev/null
+++ b/docs/dir_68267d1309a1af8e8297ef4c3efbcdba.html
@@ -0,0 +1,291 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: src Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_68267d1309a1af8e8297ef4c3efbcdba.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">src Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_102f75735b5d16c1e789df8d2c0a1a6f"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_b0856f6b0d80ccb263b2f415c91f9e17"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:rcw_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html">rcw.c</a> <a href="rcw_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rcw_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html">rcw.h</a> <a href="rcw_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html">remmina.c</a> <a href="remmina_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8h.html">remmina.h</a> <a href="remmina_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__about_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__about_8c.html">remmina_about.c</a> <a href="remmina__about_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__about_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__about_8h.html">remmina_about.h</a> <a href="remmina__about_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__applet__menu_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html">remmina_applet_menu.c</a> <a href="remmina__applet__menu_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__applet__menu_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html">remmina_applet_menu.h</a> <a href="remmina__applet__menu_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__applet__menu__item_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html">remmina_applet_menu_item.c</a> <a href="remmina__applet__menu__item_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__applet__menu__item_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a> <a href="remmina__applet__menu__item_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__avahi_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html">remmina_avahi.c</a> <a href="remmina__avahi_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__avahi_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html">remmina_avahi.h</a> <a href="remmina__avahi_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__chat__window_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html">remmina_chat_window.c</a> <a href="remmina__chat__window_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__chat__window_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html">remmina_chat_window.h</a> <a href="remmina__chat__window_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__crypt_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8c.html">remmina_crypt.c</a> <a href="remmina__crypt_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__crypt_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8h.html">remmina_crypt.h</a> <a href="remmina__crypt_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__exec_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html">remmina_exec.c</a> <a href="remmina__exec_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__exec_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html">remmina_exec.h</a> <a href="remmina__exec_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ext__exec_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ext__exec_8c.html">remmina_ext_exec.c</a> <a href="remmina__ext__exec_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ext__exec_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ext__exec_8h.html">remmina_ext_exec.h</a> <a href="remmina__ext__exec_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__external__tools_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8c.html">remmina_external_tools.c</a> <a href="remmina__external__tools_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__external__tools_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8h.html">remmina_external_tools.h</a> <a href="remmina__external__tools_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html">remmina_file.c</a> <a href="remmina__file_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html">remmina_file.h</a> <a href="remmina__file_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file__editor_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html">remmina_file_editor.c</a> <a href="remmina__file__editor_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file__editor_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html">remmina_file_editor.h</a> <a href="remmina__file__editor_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file__manager_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html">remmina_file_manager.c</a> <a href="remmina__file__manager_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__file__manager_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html">remmina_file_manager.h</a> <a href="remmina__file__manager_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ftp__client_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html">remmina_ftp_client.c</a> <a href="remmina__ftp__client_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ftp__client_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a> <a href="remmina__ftp__client_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__icon_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html">remmina_icon.c</a> <a href="remmina__icon_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__icon_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html">remmina_icon.h</a> <a href="remmina__icon_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__key__chooser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8c.html">remmina_key_chooser.c</a> <a href="remmina__key__chooser_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__key__chooser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a> <a href="remmina__key__chooser_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__log_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html">remmina_log.c</a> <a href="remmina__log_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__log_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html">remmina_log.h</a> <a href="remmina__log_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__main_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html">remmina_main.c</a> <a href="remmina__main_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__main_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html">remmina_main.h</a> <a href="remmina__main_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__marshals_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8c.html">remmina_marshals.c</a> <a href="remmina__marshals_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__marshals_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8h.html">remmina_marshals.h</a> <a href="remmina__marshals_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__masterthread__exec_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html">remmina_masterthread_exec.c</a> <a href="remmina__masterthread__exec_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__masterthread__exec_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a> <a href="remmina__masterthread__exec_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__message__panel_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html">remmina_message_panel.c</a> <a href="remmina__message__panel_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__message__panel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html">remmina_message_panel.h</a> <a href="remmina__message__panel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__mpchange_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html">remmina_mpchange.c</a> <a href="remmina__mpchange_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__mpchange_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8h.html">remmina_mpchange.h</a> <a href="remmina__mpchange_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__plugin__manager_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html">remmina_plugin_manager.c</a> <a href="remmina__plugin__manager_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__plugin__manager_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a> <a href="remmina__plugin__manager_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__pref_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html">remmina_pref.c</a> <a href="remmina__pref_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__pref_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html">remmina_pref.h</a> <a href="remmina__pref_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__pref__dialog_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html">remmina_pref_dialog.c</a> <a href="remmina__pref__dialog_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__pref__dialog_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a> <a href="remmina__pref__dialog_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__protocol__widget_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html">remmina_protocol_widget.c</a> <a href="remmina__protocol__widget_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__protocol__widget_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a> <a href="remmina__protocol__widget_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__public_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html">remmina_public.c</a> <a href="remmina__public_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__public_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html">remmina_public.h</a> <a href="remmina__public_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__scheduler_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8c.html">remmina_scheduler.c</a> <a href="remmina__scheduler_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__scheduler_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8h.html">remmina_scheduler.h</a> <a href="remmina__scheduler_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__scrolled__viewport_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html">remmina_scrolled_viewport.c</a> <a href="remmina__scrolled__viewport_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__scrolled__viewport_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a> <a href="remmina__scrolled__viewport_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sftp__client_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html">remmina_sftp_client.c</a> <a href="remmina__sftp__client_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sftp__client_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a> <a href="remmina__sftp__client_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sftp__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html">remmina_sftp_plugin.c</a> <a href="remmina__sftp__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sftp__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a> <a href="remmina__sftp__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sodium_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8c.html">remmina_sodium.c</a> <a href="remmina__sodium_8c_source.html">[code]</a></td></tr>
+<tr class="memdesc:remmina__sodium_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remmina encryption functions,. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sodium_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8h.html">remmina_sodium.h</a> <a href="remmina__sodium_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ssh_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html">remmina_ssh.c</a> <a href="remmina__ssh_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ssh_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html">remmina_ssh.h</a> <a href="remmina__ssh_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ssh__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html">remmina_ssh_plugin.c</a> <a href="remmina__ssh__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__ssh__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a> <a href="remmina__ssh__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__stats_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html">remmina_stats.c</a> <a href="remmina__stats_8c_source.html">[code]</a></td></tr>
+<tr class="memdesc:remmina__stats_8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remmina usage statistics module. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__stats_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8h.html">remmina_stats.h</a> <a href="remmina__stats_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__stats__sender_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html">remmina_stats_sender.c</a> <a href="remmina__stats__sender_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__stats__sender_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a> <a href="remmina__stats__sender_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__string__array_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html">remmina_string_array.c</a> <a href="remmina__string__array_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__string__array_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html">remmina_string_array.h</a> <a href="remmina__string__array_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__string__list_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html">remmina_string_list.c</a> <a href="remmina__string__list_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__string__list_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html">remmina_string_list.h</a> <a href="remmina__string__list_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sysinfo_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8c.html">remmina_sysinfo.c</a> <a href="remmina__sysinfo_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__sysinfo_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a> <a href="remmina__sysinfo_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__unlock_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html">remmina_unlock.c</a> <a href="remmina__unlock_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__unlock_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8h.html">remmina_unlock.h</a> <a href="remmina__unlock_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__utils_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> <a href="remmina__utils_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__utils_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html">remmina_utils.h</a> <a href="remmina__utils_8h_source.html">[code]</a></td></tr>
+<tr class="memdesc:remmina__utils_8h"><td class="mdescLeft">&#160;</td><td class="mdescRight">General utility functions, non-GTK related. <br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__widget__pool_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html">remmina_widget_pool.c</a> <a href="remmina__widget__pool_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__widget__pool_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a> <a href="remmina__widget__pool_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rmnews_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html">rmnews.c</a> <a href="rmnews_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rmnews_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8h.html">rmnews.h</a> <a href="rmnews_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_8ac755c0af1da912ea6f652cb1f7edd7.html b/docs/dir_8ac755c0af1da912ea6f652cb1f7edd7.html
new file mode 100644
index 000000000..0db09688d
--- /dev/null
+++ b/docs/dir_8ac755c0af1da912ea6f652cb1f7edd7.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: src Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_8ac755c0af1da912ea6f652cb1f7edd7.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">src Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:kwallet__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html">kwallet_plugin.h</a> <a href="kwallet__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:kwallet__plugin__main_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html">kwallet_plugin_main.c</a> <a href="kwallet__plugin__main_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li><li class="navelem"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_9662584a5e3ef571a4f03ea844ef6687.html b/docs/dir_9662584a5e3ef571a4f03ea844ef6687.html
new file mode 100644
index 000000000..8e1ff07ed
--- /dev/null
+++ b/docs/dir_9662584a5e3ef571a4f03ea844ef6687.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: st Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_9662584a5e3ef571a4f03ea844ef6687.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">st Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:st__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html">st_plugin.c</a> <a href="st__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:st__plugin__config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin__config_8h.html">st_plugin_config.h</a> <a href="st__plugin__config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_96b2009824cf1ba1b83e0aec485e7d03.html b/docs/dir_96b2009824cf1ba1b83e0aec485e7d03.html
new file mode 100644
index 000000000..5f3f67c6f
--- /dev/null
+++ b/docs/dir_96b2009824cf1ba1b83e0aec485e7d03.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_96b2009824cf1ba1b83e0aec485e7d03.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:telepathy__channel__handler_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html">telepathy_channel_handler.c</a> <a href="telepathy__channel__handler_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:telepathy__channel__handler_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a> <a href="telepathy__channel__handler_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:telepathy__handler_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html">telepathy_handler.c</a> <a href="telepathy__handler_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:telepathy__handler_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8h.html">telepathy_handler.h</a> <a href="telepathy__handler_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:telepathy__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html">telepathy_plugin.c</a> <a href="telepathy__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_a8375b506f1bd5852742b6f9cedbe093.html b/docs/dir_a8375b506f1bd5852742b6f9cedbe093.html
new file mode 100644
index 000000000..9b298020e
--- /dev/null
+++ b/docs/dir_a8375b506f1bd5852742b6f9cedbe093.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_a8375b506f1bd5852742b6f9cedbe093.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html">plugin.h</a> <a href="plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:remmina__trace__calls_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a> <a href="remmina__trace__calls_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:types_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html">types.h</a> <a href="types_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_ae0d860c7818897e816988ff8df918dc.html b/docs/dir_ae0d860c7818897e816988ff8df918dc.html
new file mode 100644
index 000000000..78064b830
--- /dev/null
+++ b/docs/dir_ae0d860c7818897e816988ff8df918dc.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: kwallet Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_ae0d860c7818897e816988ff8df918dc.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">kwallet Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_8ac755c0af1da912ea6f652cb1f7edd7"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_b0856f6b0d80ccb263b2f415c91f9e17.html b/docs/dir_b0856f6b0d80ccb263b2f415c91f9e17.html
new file mode 100644
index 000000000..654e8372d
--- /dev/null
+++ b/docs/dir_b0856f6b0d80ccb263b2f415c91f9e17.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: include Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_b0856f6b0d80ccb263b2f415c91f9e17.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">include Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_a8375b506f1bd5852742b6f9cedbe093"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_d1989cceabdfad53225af373aeeb6953.html b/docs/dir_d1989cceabdfad53225af373aeeb6953.html
new file mode 100644
index 000000000..f54081719
--- /dev/null
+++ b/docs/dir_d1989cceabdfad53225af373aeeb6953.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: xdmcp Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_d1989cceabdfad53225af373aeeb6953.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">xdmcp Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:xdmcp__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html">xdmcp_plugin.c</a> <a href="xdmcp__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_d1989cceabdfad53225af373aeeb6953.html">xdmcp</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_fa8c5cacd6671c1854478287e377f3ab.html b/docs/dir_fa8c5cacd6671c1854478287e377f3ab.html
new file mode 100644
index 000000000..5b9084299
--- /dev/null
+++ b/docs/dir_fa8c5cacd6671c1854478287e377f3ab.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: tool_hello_world Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_fa8c5cacd6671c1854478287e377f3ab.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">tool_hello_world Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html">plugin.c</a> <a href="plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:plugin__config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin__config_8h.html">plugin_config.h</a> <a href="plugin__config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/dir_ff91815d22ef8e3219147b7ca619fdb5.html b/docs/dir_ff91815d22ef8e3219147b7ca619fdb5.html
new file mode 100644
index 000000000..8fb93e633
--- /dev/null
+++ b/docs/dir_ff91815d22ef8e3219147b7ca619fdb5.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('dir_ff91815d22ef8e3219147b7ca619fdb5.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">vnc Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:vnc__plugin_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html">vnc_plugin.c</a> <a href="vnc__plugin_8c_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:vnc__plugin_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8h.html">vnc_plugin.h</a> <a href="vnc__plugin_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/doc.png b/docs/doc.png
new file mode 100644
index 000000000..17edabff9
--- /dev/null
+++ b/docs/doc.png
Binary files differ
diff --git a/docs/doxygen.css b/docs/doxygen.css
new file mode 100644
index 000000000..4f1ab9195
--- /dev/null
+++ b/docs/doxygen.css
@@ -0,0 +1,1596 @@
+/* The standard CSS for doxygen 1.8.13 */
+
+body, table, div, p, dl {
+ font: 400 14px/22px Roboto,sans-serif;
+}
+
+p.reference, p.definition {
+ font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
+}
+
+.title {
+ font: 400 14px/28px Roboto,sans-serif;
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.starttd {
+ margin-top: 0px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #3D578C;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #4665A2;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #9CAFD4;
+ color: #ffffff;
+ border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+ color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+div.fragment {
+ padding: 0px;
+ margin: 4px 8px 4px 2px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+div.line:after {
+ content:"\000A";
+ white-space: pre;
+}
+
+div.line.glow {
+ background-color: cyan;
+ box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
+}
+span.lineno a {
+ background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+ background-color: #C8C8C8;
+}
+
+.lineno {
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+div.ah, span.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%);
+}
+
+div.classindex ul {
+ list-style: none;
+ padding-left: 0;
+}
+
+div.classindex span.ai {
+ display: inline-block;
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
+}
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C4CFE5;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
+}
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C4CFE5;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+ background: #EBEFF6;
+ font-weight: bold;
+}
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+ height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memSeparator {
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4665A2;
+ white-space: nowrap;
+ font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtitle {
+ padding: 8px;
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ margin-bottom: -1px;
+ background-image: url('nav_f.png');
+ background-repeat: repeat-x;
+ background-color: #E2E8F2;
+ line-height: 1.25;
+ font-weight: 300;
+ float:left;
+}
+
+.permalink
+{
+ font-size: 65%;
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.memtemplate {
+ font-size: 80%;
+ color: #4665A2;
+ font-weight: normal;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.mempage {
+ width: 100%;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+ font-weight: 400;
+ margin-left: 6px;
+}
+
+.memname td {
+ vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #253555;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-color: #DFE5F1;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+
+}
+
+.overload {
+ font-family: "courier new",courier,monospace;
+ font-size: 65%;
+}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+.paramname code {
+ line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+ vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view inside a (index) page */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #9CAFD4;
+ border-bottom: 1px solid #9CAFD4;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+ padding-top: 3px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+.arrow {
+ color: #9CAFD4;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ cursor: pointer;
+ font-size: 80%;
+ display: inline-block;
+ width: 16px;
+ height: 22px;
+}
+
+.icon {
+ font-family: Arial, Helvetica;
+ font-weight: bold;
+ font-size: 12px;
+ height: 14px;
+ width: 16px;
+ display: inline-block;
+ background-color: #728DC1;
+ color: white;
+ text-align: center;
+ border-radius: 4px;
+ margin-left: 2px;
+ margin-right: 2px;
+}
+
+.icona {
+ width: 24px;
+ height: 22px;
+ display: inline-block;
+}
+
+.iconfopen {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('folderopen.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.iconfclosed {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('folderclosed.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+.icondoc {
+ width: 24px;
+ height: 18px;
+ margin-bottom: 4px;
+ background-image:url('doc.png');
+ background-position: 0px -4px;
+ background-repeat: repeat-y;
+ vertical-align:top;
+ display: inline-block;
+}
+
+table.directory {
+ font: 400 14px Roboto,sans-serif;
+}
+
+/* @end */
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable caption {
+ caption-side: top;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+ padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+ margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+ margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ font-weight: 400;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ background-position: 0 -5px;
+ height:30px;
+ line-height:30px;
+ color:#8AA0CC;
+ border:solid 1px #C2CDE4;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+ color: #283A5D;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6884BD;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+table.classindex
+{
+ margin: 10px;
+ white-space: nowrap;
+ margin-left: 3%;
+ margin-right: 3%;
+ width: 94%;
+ border: 0;
+ border-spacing: 0;
+ padding: 0;
+}
+
+div.ingroups
+{
+ font-size: 8pt;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectalign
+{
+ vertical-align: middle;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.plantumlgraph
+{
+ text-align: center;
+}
+
+.diagraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 8px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4665A2;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+ position: absolute;
+ display: none;
+}
+
+#powerTip {
+ cursor: default;
+ white-space: nowrap;
+ background-color: white;
+ border: 1px solid gray;
+ border-radius: 4px 4px 4px 4px;
+ box-shadow: 1px 1px 7px gray;
+ display: none;
+ font-size: smaller;
+ max-width: 80%;
+ opacity: 0.9;
+ padding: 1ex 1em 1em;
+ position: absolute;
+ z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+ color: grey;
+ font-style: italic;
+}
+
+#powerTip div.ttname a {
+ font-weight: bold;
+}
+
+#powerTip div.ttname {
+ font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+ color: #006318;
+}
+
+#powerTip div {
+ margin: 0px;
+ padding: 0px;
+ font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+ content: "";
+ position: absolute;
+ margin: 0px;
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.w:after, #powerTip.w:before,
+#powerTip.e:after, #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ border: solid transparent;
+ content: " ";
+ height: 0;
+ width: 0;
+ position: absolute;
+}
+
+#powerTip.n:after, #powerTip.s:after,
+#powerTip.w:after, #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+ border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before, #powerTip.s:before,
+#powerTip.w:before, #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+ border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+ top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+ border-top-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+#powerTip.n:before {
+ border-top-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+ left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+ right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+ left: 14px;
+}
+
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+ border-bottom-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+ border-bottom-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+ left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+ right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+ left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+ left: 100%;
+}
+#powerTip.e:after {
+ border-left-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.e:before {
+ border-left-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+ right: 100%;
+}
+#powerTip.w:after {
+ border-right-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.w:before {
+ border-right-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
+/* @group Markdown */
+
+/*
+table.markdownTable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.markdownTableHead tr {
+}
+
+table.markdownTableBodyLeft td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+th.markdownTableHeadLeft {
+ text-align: left
+}
+
+th.markdownTableHeadRight {
+ text-align: right
+}
+
+th.markdownTableHeadCenter {
+ text-align: center
+}
+*/
+
+table.markdownTable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.markdownTable td, table.markdownTable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.markdownTable tr {
+}
+
+th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+th.markdownTableHeadLeft, td.markdownTableBodyLeft {
+ text-align: left
+}
+
+th.markdownTableHeadRight, td.markdownTableBodyRight {
+ text-align: right
+}
+
+th.markdownTableHeadCenter, td.markdownTableBodyCenter {
+ text-align: center
+}
+
+
+/* @end */
diff --git a/docs/doxygen.png b/docs/doxygen.png
new file mode 100644
index 000000000..3ff17d807
--- /dev/null
+++ b/docs/doxygen.png
Binary files differ
diff --git a/docs/dynsections.js b/docs/dynsections.js
new file mode 100644
index 000000000..1e6bf07f9
--- /dev/null
+++ b/docs/dynsections.js
@@ -0,0 +1,104 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+}
+
+function toggleLevel(level)
+{
+ $('table.directory tr').each(function() {
+ var l = this.id.split('_').length-1;
+ var i = $('#img'+this.id.substring(3));
+ var a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.removeClass('iconfopen iconfclosed').addClass('iconfopen');
+ a.html('&#9660;');
+ $(this).show();
+ } else if (l==level+1) {
+ i.removeClass('iconfclosed iconfopen').addClass('iconfclosed');
+ a.html('&#9658;');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
+ });
+ updateStripes();
+}
+
+function toggleFolder(id)
+{
+ // the clicked row
+ var currentRow = $('#row_'+id);
+
+ // all rows after the clicked row
+ var rows = currentRow.nextAll("tr");
+
+ var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+
+ // only match elements AFTER this one (can't hide elements before)
+ var childRows = rows.filter(function() { return this.id.match(re); });
+
+ // first row is visible we are HIDING
+ if (childRows.filter(':first').is(':visible')===true) {
+ // replace down arrow by right arrow for current row
+ var currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ currentRowSpans.filter(".arrow").html('&#9658;');
+ rows.filter("[id^=row_"+id+"]").hide(); // hide all children
+ } else { // we are SHOWING
+ // replace right arrow by down arrow for current row
+ var currentRowSpans = currentRow.find("span");
+ currentRowSpans.filter(".iconfclosed").removeClass("iconfclosed").addClass("iconfopen");
+ currentRowSpans.filter(".arrow").html('&#9660;');
+ // replace down arrows by right arrows for child rows
+ var childRowsSpans = childRows.find("span");
+ childRowsSpans.filter(".iconfopen").removeClass("iconfopen").addClass("iconfclosed");
+ childRowsSpans.filter(".arrow").html('&#9658;');
+ childRows.show(); //show all children
+ }
+ updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+ var rows = $('tr.inherit.'+id);
+ var img = $('tr.inherit_header.'+id+' img');
+ var src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+}
+
+
+$(document).ready(function() {
+ $('.code,.codeRef').each(function() {
+ $(this).data('powertip',$('#'+$(this).attr('href').replace(/.*\//,'').replace(/[^a-z_A-Z0-9]/g,'_')).html());
+ $(this).powerTip({ placement: 's', smartPlacement: true, mouseOnToPopup: true });
+ });
+});
diff --git a/docs/exec__plugin_8c.html b/docs/exec__plugin_8c.html
new file mode 100644
index 000000000..c95c70aa6
--- /dev/null
+++ b/docs/exec__plugin_8c.html
@@ -0,0 +1,474 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: exec_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('exec__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">exec_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="exec__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a44fb47f82521cf4e8a802f4042f6edb8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">RemminaPluginExecData</a></td></tr>
+<tr class="separator:a44fb47f82521cf4e8a802f4042f6edb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae5fe6643dc64e9250dc2a33e9f266e71"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">cb_child_watch</a> (GPid pid, gint status)</td></tr>
+<tr class="separator:ae5fe6643dc64e9250dc2a33e9f266e71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6294507761837488c3777f21096d219"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">cb_out_watch</a> (GIOChannel *channel, GIOCondition cond, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa6294507761837488c3777f21096d219"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab43db37b96c68093747620fbde879327"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">cb_err_watch</a> (GIOChannel *channel, GIOCondition cond, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab43db37b96c68093747620fbde879327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53edac9deab20832959582a95bedcafe"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a53edac9deab20832959582a95bedcafe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11eddf7a4294b5650382e025f9f2a0ad"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a11eddf7a4294b5650382e025f9f2a0ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a775ebb715d8db084d673e05ae526c088"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a775ebb715d8db084d673e05ae526c088"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89c6ce747f68e963b8c6d21427a352f3"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a> []</td></tr>
+<tr class="separator:a89c6ce747f68e963b8c6d21427a352f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></td></tr>
+<tr class="separator:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a44fb47f82521cf4e8a802f4042f6edb8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44fb47f82521cf4e8a802f4042f6edb8">&#9670;&nbsp;</a></span>RemminaPluginExecData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a> <a class="el" href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">RemminaPluginExecData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ae5fe6643dc64e9250dc2a33e9f266e71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5fe6643dc64e9250dc2a33e9f266e71">&#9670;&nbsp;</a></span>cb_child_watch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cb_child_watch </td>
+ <td>(</td>
+ <td class="paramtype">GPid&#160;</td>
+ <td class="paramname"><em>pid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00061">61</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab43db37b96c68093747620fbde879327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab43db37b96c68093747620fbde879327">&#9670;&nbsp;</a></span>cb_err_watch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean cb_err_watch </td>
+ <td>(</td>
+ <td class="paramtype">GIOChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GIOCondition&#160;</td>
+ <td class="paramname"><em>cond</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00089">89</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6294507761837488c3777f21096d219"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6294507761837488c3777f21096d219">&#9670;&nbsp;</a></span>cb_out_watch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean cb_out_watch </td>
+ <td>(</td>
+ <td class="paramtype">GIOChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GIOCondition&#160;</td>
+ <td class="paramname"><em>cond</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00068">68</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00291">291</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a775ebb715d8db084d673e05ae526c088"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a775ebb715d8db084d673e05ae526c088">&#9670;&nbsp;</a></span>remmina_plugin_exec_close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_exec_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00245">245</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a53edac9deab20832959582a95bedcafe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53edac9deab20832959582a95bedcafe">&#9670;&nbsp;</a></span>remmina_plugin_exec_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_exec_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00109">109</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a11eddf7a4294b5650382e025f9f2a0ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11eddf7a4294b5650382e025f9f2a0ad">&#9670;&nbsp;</a></span>remmina_plugin_exec_run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_exec_run </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00137">137</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3b53d8bbfcf5bdf5564c8804d211cf99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b53d8bbfcf5bdf5564c8804d211cf99">&#9670;&nbsp;</a></span>remmina_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> PLUGIN_NAME, </div><div class="line"> PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> PLUGIN_VERSION, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> <a class="code" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a>, </div><div class="line"> <a class="code" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a>, </div><div class="line"> <a class="code" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a>, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="exec__plugin_8c_html_a89c6ce747f68e963b8c6d21427a352f3"><div class="ttname"><a href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_exec_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00262">exec_plugin.c:262</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a53edac9deab20832959582a95bedcafe"><div class="ttname"><a href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a></div><div class="ttdeci">static void remmina_plugin_exec_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00109">exec_plugin.c:109</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a11eddf7a4294b5650382e025f9f2a0ad"><div class="ttname"><a href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a></div><div class="ttdeci">static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00137">exec_plugin.c:137</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a775ebb715d8db084d673e05ae526c088"><div class="ttname"><a href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a></div><div class="ttdeci">static gboolean remmina_plugin_exec_close(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00245">exec_plugin.c:245</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00270">270</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a89c6ce747f68e963b8c6d21427a352f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a89c6ce747f68e963b8c6d21427a352f3">&#9670;&nbsp;</a></span>remmina_plugin_exec_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_exec_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;execcommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Command&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;runasync&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Asynchronous execution&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00262">262</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></li><li class="navelem"><a class="el" href="exec__plugin_8c.html">exec_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/exec__plugin_8c.js b/docs/exec__plugin_8c.js
new file mode 100644
index 000000000..92d7da881
--- /dev/null
+++ b/docs/exec__plugin_8c.js
@@ -0,0 +1,15 @@
+var exec__plugin_8c =
+[
+ [ "_RemminaPluginExecData", "struct___remmina_plugin_exec_data.html", "struct___remmina_plugin_exec_data" ],
+ [ "RemminaPluginExecData", "exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8", null ],
+ [ "cb_child_watch", "exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71", null ],
+ [ "cb_err_watch", "exec__plugin_8c.html#ab43db37b96c68093747620fbde879327", null ],
+ [ "cb_out_watch", "exec__plugin_8c.html#aa6294507761837488c3777f21096d219", null ],
+ [ "remmina_plugin_entry", "exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_exec_close", "exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088", null ],
+ [ "remmina_plugin_exec_init", "exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe", null ],
+ [ "remmina_plugin_exec_run", "exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad", null ],
+ [ "remmina_plugin", "exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99", null ],
+ [ "remmina_plugin_exec_basic_settings", "exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3", null ],
+ [ "remmina_plugin_service", "exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ]
+]; \ No newline at end of file
diff --git a/docs/exec__plugin_8c_source.html b/docs/exec__plugin_8c_source.html
new file mode 100644
index 000000000..265876cc6
--- /dev/null
+++ b/docs/exec__plugin_8c_source.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: exec_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('exec__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">exec_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="exec__plugin_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) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Initially based on the plugin &quot;Remmina Plugin EXEC&quot;, created and written by</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Fabio Castelli (Muflone) &lt;muflone@vbsimple.net&gt;.</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;<a class="code" href="exec__plugin__config_8h.html">exec_plugin_config.h</a>&quot;</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__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;sys/wait.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginExecData*)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;)</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_exec_data.html"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a> {</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1"> 52</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41"> 53</a></span>&#160; GtkTextBuffer *<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4"> 54</a></span>&#160; GtkTextBuffer *<a class="code" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">err</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb"> 55</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">RemminaPluginExecData</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 58</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71"> 61</a></span>&#160;<a class="code" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">cb_child_watch</a>( GPid pid, gint status)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;{</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* Close pid */</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_spawn_close_pid( pid );</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</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"> 67</span>&#160; <span class="keyword">static</span> gboolean</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219"> 68</a></span>&#160;<a class="code" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">cb_out_watch</a> (GIOChannel *channel, GIOCondition cond, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; gchar *string;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; gsize size;</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; <a class="code" href="struct___remmina_plugin_exec_data.html">RemminaPluginExecData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span>( cond == G_IO_HUP )</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; g_io_channel_unref( channel );</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; g_io_channel_read_line( channel, &amp;<span class="keywordtype">string</span>, &amp;size, NULL, NULL );</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; gtk_text_buffer_insert_at_cursor( gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, <span class="keywordtype">string</span>, -1 );</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; g_free( <span class="keywordtype">string</span> );</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</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; <span class="keyword">static</span> gboolean</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327"> 89</a></span>&#160;<a class="code" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">cb_err_watch</a> (GIOChannel *channel, GIOCondition cond, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; gchar *string;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; gsize size;</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"> 94</span>&#160; <a class="code" href="struct___remmina_plugin_exec_data.html">RemminaPluginExecData</a> *gpdata = GET_PLUGIN_DATA(gp);</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="keywordflow">if</span>( cond == G_IO_HUP )</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; g_io_channel_unref( channel );</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> FALSE;</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_io_channel_read_line( channel, &amp;<span class="keywordtype">string</span>, &amp;size, NULL, NULL );</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; gtk_text_buffer_insert_at_cursor( gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">err</a>, <span class="keywordtype">string</span>, -1 );</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; g_free( <span class="keywordtype">string</span> );</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</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"><a class="line" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe"> 109</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="struct___remmina_plugin_exec_data.html">RemminaPluginExecData</a> *gpdata;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin init&quot;</span>, PLUGIN_NAME);</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; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_exec_data.html">RemminaPluginExecData</a>, 1);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a> = gtk_text_view_new();</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>), GTK_WRAP_CHAR);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; gtk_text_view_set_editable(GTK_TEXT_VIEW(gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>), FALSE);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gtk_text_view_set_left_margin (GTK_TEXT_VIEW (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>), 20);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gtk_text_view_set_right_margin (GTK_TEXT_VIEW (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>), 20);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a> = gtk_text_view_get_buffer (GTK_TEXT_VIEW (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>));</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a> = gtk_scrolled_window_new (NULL, NULL);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; gtk_widget_set_size_request (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>, 640, 480);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>),</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; GTK_POLICY_AUTOMATIC,</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; GTK_POLICY_AUTOMATIC);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; gtk_container_add(GTK_CONTAINER(gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, <span class="stringliteral">&quot;Remmina Exec Plugin Logger&quot;</span>, -1);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gtk_widget_show_all(gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a>);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad"> 137</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;{</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">const</span> gchar *cmd;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; gchar *stdout_buffer;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; gchar *stderr_buffer;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">char</span> **argv;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; GPid child_pid;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gint child_stdout, child_stderr;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; GtkDialog *dialog;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; GIOChannel *out_ch, *err_ch;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin run&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="struct___remmina_plugin_exec_data.html">RemminaPluginExecData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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"> 155</span>&#160; cmd = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;execcommand&quot;</span>);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span> (!cmd) {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>,</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; _(<span class="stringliteral">&quot;You did not set any command to be executed&quot;</span>), -1);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> TRUE;</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; g_shell_parse_argv(cmd, NULL, &amp;argv, &amp;error);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, error-&gt;message, -1);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; g_error_free(error);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;runasync&quot;</span>, FALSE)) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Run Async&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_spawn_async_with_pipes( NULL,</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; argv,</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; NULL,</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; G_SPAWN_DO_NOT_REAP_CHILD |</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; G_SPAWN_SEARCH_PATH_FROM_ENVP |</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; G_SPAWN_SEARCH_PATH,</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; NULL,</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; NULL,</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; &amp;child_pid,</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; NULL,</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; &amp;child_stdout,</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; &amp;child_stderr,</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; &amp;error);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">if</span> (error != NULL) {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, error-&gt;message, -1);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_error_free(error);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">return</span> TRUE;</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; g_child_watch_add(child_pid, (GChildWatchFunc)<a class="code" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">cb_child_watch</a>, gp );</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="comment">/* Create channels that will be used to read data from pipes. */</span></div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; out_ch = g_io_channel_unix_new(child_stdout);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; err_ch = g_io_channel_unix_new(child_stderr);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="comment">/* Add watches to channels */</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; g_io_add_watch(out_ch, G_IO_IN | G_IO_HUP, (GIOFunc)<a class="code" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">cb_out_watch</a>, gp );</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_io_add_watch(err_ch, G_IO_IN | G_IO_HUP, (GIOFunc)<a class="code" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">cb_err_watch</a>, gp );</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; dialog = GTK_DIALOG(gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; _(<span class="stringliteral">&quot;Warning: Running a command synchronously may cause Remmina not to respond.\nDo you really want to continue?&quot;</span>)));</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; gint result = gtk_dialog_run (GTK_DIALOG (dialog));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">switch</span> (result)</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; <span class="keywordflow">case</span> GTK_RESPONSE_YES:</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Run Sync&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; g_spawn_sync (NULL, <span class="comment">// CWD or NULL</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; argv,</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; NULL, <span class="comment">// ENVP or NULL</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; G_SPAWN_SEARCH_PATH |</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; G_SPAWN_SEARCH_PATH_FROM_ENVP,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; NULL,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; NULL,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; &amp;stdout_buffer, <span class="comment">// STDOUT</span></div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; &amp;stderr_buffer, <span class="comment">// STDERR</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; NULL, <span class="comment">// Exit status</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; &amp;error);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">if</span> (!error) {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Command executed&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, stdout_buffer, -1);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; g_warning(<span class="stringliteral">&quot;Command %s exited with error: %s\n&quot;</span>, cmd, error-&gt;message);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; gtk_text_buffer_set_text (gpdata-&gt;<a class="code" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a>, error-&gt;message, -1);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; g_error_free(error);</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; }</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; g_strfreev(argv);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> TRUE;</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="l00245"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088"> 245</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;{</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin close&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3"> 262</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a>[] =</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;{</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;execcommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Command&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;runasync&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Asynchronous execution&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;};</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;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99"> 270</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a> = {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; PLUGIN_VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; NULL, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; NULL, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; NULL, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; NULL, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; NULL <span class="comment">// No screenshot support available</span></div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;};</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 291</a></span>&#160;G_MODULE_EXPORT gboolean <a class="code" href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;{</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</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; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin)) {</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;}</div><div class="ttc" id="exec__plugin_8c_html_a89c6ce747f68e963b8c6d21427a352f3"><div class="ttname"><a href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">remmina_plugin_exec_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_exec_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00262">exec_plugin.c:262</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_ae5fe6643dc64e9250dc2a33e9f266e71"><div class="ttname"><a href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">cb_child_watch</a></div><div class="ttdeci">static void cb_child_watch(GPid pid, gint status)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00061">exec_plugin.c:61</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_exec_data_html_a9ff6bc2fe9796bdc74fda1677ebf80c4"><div class="ttname"><a href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">_RemminaPluginExecData::err</a></div><div class="ttdeci">GtkTextBuffer * err</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00054">exec_plugin.c:54</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a3b53d8bbfcf5bdf5564c8804d211cf99"><div class="ttname"><a href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00270">exec_plugin.c:270</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_exec_data_html"><div class="ttname"><a href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a></div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00051">exec_plugin.c:51</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a53edac9deab20832959582a95bedcafe"><div class="ttname"><a href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">remmina_plugin_exec_init</a></div><div class="ttdeci">static void remmina_plugin_exec_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00109">exec_plugin.c:109</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a44fb47f82521cf4e8a802f4042f6edb8"><div class="ttname"><a href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">RemminaPluginExecData</a></div><div class="ttdeci">struct _RemminaPluginExecData RemminaPluginExecData</div></div>
+<div class="ttc" id="exec__plugin_8c_html_a11eddf7a4294b5650382e025f9f2a0ad"><div class="ttname"><a href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">remmina_plugin_exec_run</a></div><div class="ttdeci">static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00137">exec_plugin.c:137</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a775ebb715d8db084d673e05ae526c088"><div class="ttname"><a href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">remmina_plugin_exec_close</a></div><div class="ttdeci">static gboolean remmina_plugin_exec_close(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00245">exec_plugin.c:245</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_exec_data_html_ac7ad166ff0ad398b004d39b72a5aa2e1"><div class="ttname"><a href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">_RemminaPluginExecData::log_view</a></div><div class="ttdeci">GtkWidget * log_view</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00052">exec_plugin.c:52</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_exec_data_html_a59117466c585cabdc32c363083867bbb"><div class="ttname"><a href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">_RemminaPluginExecData::sw</a></div><div class="ttdeci">GtkWidget * sw</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00055">exec_plugin.c:55</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_ab43db37b96c68093747620fbde879327"><div class="ttname"><a href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">cb_err_watch</a></div><div class="ttdeci">static gboolean cb_err_watch(GIOChannel *channel, GIOCondition cond, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00089">exec_plugin.c:89</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_exec_data_html_a9adc6a977b68bd6fc1dc1f60c834ed41"><div class="ttname"><a href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">_RemminaPluginExecData::log_buffer</a></div><div class="ttdeci">GtkTextBuffer * log_buffer</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00053">exec_plugin.c:53</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="exec__plugin__config_8h_html"><div class="ttname"><a href="exec__plugin__config_8h.html">exec_plugin_config.h</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_aa6294507761837488c3777f21096d219"><div class="ttname"><a href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">cb_out_watch</a></div><div class="ttdeci">static gboolean cb_out_watch(GIOChannel *channel, GIOCondition cond, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00068">exec_plugin.c:68</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00291">exec_plugin.c:291</a></div></div>
+<div class="ttc" id="exec__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="exec__plugin_8c_source.html#l00058">exec_plugin.c:58</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></li><li class="navelem"><a class="el" href="exec__plugin_8c.html">exec_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/exec__plugin__config_8h.html b/docs/exec__plugin__config_8h.html
new file mode 100644
index 000000000..1b90883ab
--- /dev/null
+++ b/docs/exec__plugin__config_8h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: exec_plugin_config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('exec__plugin__config_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">exec_plugin_config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="exec__plugin__config_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></li><li class="navelem"><a class="el" href="exec__plugin__config_8h.html">exec_plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/exec__plugin__config_8h_source.html b/docs/exec__plugin__config_8h_source.html
new file mode 100644
index 000000000..4ee3c9f1c
--- /dev/null
+++ b/docs/exec__plugin__config_8h_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: exec_plugin_config.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('exec__plugin__config_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">exec_plugin_config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="exec__plugin__config_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) 2017-2020 Antenore Gatta</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Initially based on the plugin &quot;Remmina Plugin EXEC&quot;, created and written by</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Fabio Castelli (Muflone) &lt;muflone@vbsimple.net&gt;.</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">#define PLUGIN_NAME &quot;EXEC&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define PLUGIN_DESCRIPTION N_(&quot;Execute a command&quot;)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define PLUGIN_VERSION &quot;1.0&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define PLUGIN_APPICON &quot;remmina-tool-symbolic&quot;</span></div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_35e28620351c095f44ad7f2993dd5d9f.html">exec</a></li><li class="navelem"><a class="el" href="exec__plugin__config_8h.html">exec_plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/files.html b/docs/files.html
new file mode 100644
index 000000000..fe6e57af4
--- /dev/null
+++ b/docs/files.html
@@ -0,0 +1,255 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: File List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('files.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">File List</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="exec__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="exec__plugin_8c.html" target="_self">exec_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="exec__plugin__config_8h_source.html"><span class="icondoc"></span></a><a class="el" href="exec__plugin__config_8h.html" target="_self">exec_plugin_config.h</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="functions_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="functions_8sh.html" target="_self">functions.sh</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="gettranslator_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="gettranslator_8sh.html" target="_self">gettranslator.sh</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="glibsecret__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="glibsecret__plugin_8c.html" target="_self">glibsecret_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="glibsecret__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="glibsecret__plugin_8h.html" target="_self">glibsecret_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="i18nstats_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="i18nstats_8sh.html" target="_self">i18nstats.sh</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="kwallet__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="kwallet__plugin_8h.html" target="_self">kwallet_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="kwallet__plugin__main_8c_source.html"><span class="icondoc"></span></a><a class="el" href="kwallet__plugin__main_8c.html" target="_self">kwallet_plugin_main.c</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="launcher_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="launcher_8sh.html" target="_self">launcher.sh</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="nx__plugin_8c.html" target="_self">nx_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="nx__plugin_8h.html" target="_self">nx_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__session_8c_source.html"><span class="icondoc"></span></a><a class="el" href="nx__session_8c.html" target="_self">nx_session.c</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__session_8h_source.html"><span class="icondoc"></span></a><a class="el" href="nx__session_8h.html" target="_self">nx_session.h</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__session__manager_8c_source.html"><span class="icondoc"></span></a><a class="el" href="nx__session__manager_8c.html" target="_self">nx_session_manager.c</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="nx__session__manager_8h_source.html"><span class="icondoc"></span></a><a class="el" href="nx__session__manager_8h.html" target="_self">nx_session_manager.h</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="plugin_8c.html" target="_self">plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="plugin_8h.html" target="_self">plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="plugin__config_8h_source.html"><span class="icondoc"></span></a><a class="el" href="plugin__config_8h.html" target="_self">plugin_config.h</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rcw_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rcw_8c.html" target="_self">rcw.c</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rcw_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rcw_8h.html" target="_self">rcw.h</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__channels_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__channels_8c.html" target="_self">rdp_channels.c</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__channels_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__channels_8h.html" target="_self">rdp_channels.h</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__cliprdr_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__cliprdr_8c.html" target="_self">rdp_cliprdr.c</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__cliprdr_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__cliprdr_8h.html" target="_self">rdp_cliprdr.h</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__event_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__event_8c.html" target="_self">rdp_event.c</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__event_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__event_8h.html" target="_self">rdp_event.h</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__file_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__file_8c.html" target="_self">rdp_file.c</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__file_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__file_8h.html" target="_self">rdp_file.h</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__graphics_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__graphics_8c.html" target="_self">rdp_graphics.c</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__graphics_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__graphics_8h.html" target="_self">rdp_graphics.h</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__plugin_8c.html" target="_self">rdp_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__plugin_8h.html" target="_self">rdp_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__settings_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__settings_8c.html" target="_self">rdp_settings.c</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rdp__settings_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rdp__settings_8h.html" target="_self">rdp_settings.h</a></td><td class="desc"></td></tr>
+<tr id="row_35_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina_8c.html" target="_self">remmina.c</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina_8h.html" target="_self">remmina.h</a></td><td class="desc"></td></tr>
+<tr id="row_37_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__about_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__about_8c.html" target="_self">remmina_about.c</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__about_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__about_8h.html" target="_self">remmina_about.h</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__applet__menu_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__applet__menu_8c.html" target="_self">remmina_applet_menu.c</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__applet__menu_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__applet__menu_8h.html" target="_self">remmina_applet_menu.h</a></td><td class="desc"></td></tr>
+<tr id="row_41_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__applet__menu__item_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__applet__menu__item_8c.html" target="_self">remmina_applet_menu_item.c</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__applet__menu__item_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__applet__menu__item_8h.html" target="_self">remmina_applet_menu_item.h</a></td><td class="desc"></td></tr>
+<tr id="row_43_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__avahi_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__avahi_8c.html" target="_self">remmina_avahi.c</a></td><td class="desc"></td></tr>
+<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__avahi_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__avahi_8h.html" target="_self">remmina_avahi.h</a></td><td class="desc"></td></tr>
+<tr id="row_45_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__chat__window_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__chat__window_8c.html" target="_self">remmina_chat_window.c</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__chat__window_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__chat__window_8h.html" target="_self">remmina_chat_window.h</a></td><td class="desc"></td></tr>
+<tr id="row_47_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__crypt_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__crypt_8c.html" target="_self">remmina_crypt.c</a></td><td class="desc"></td></tr>
+<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__crypt_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__crypt_8h.html" target="_self">remmina_crypt.h</a></td><td class="desc"></td></tr>
+<tr id="row_49_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__exec_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__exec_8c.html" target="_self">remmina_exec.c</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__exec_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__exec_8h.html" target="_self">remmina_exec.h</a></td><td class="desc"></td></tr>
+<tr id="row_51_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ext__exec_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ext__exec_8c.html" target="_self">remmina_ext_exec.c</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ext__exec_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ext__exec_8h.html" target="_self">remmina_ext_exec.h</a></td><td class="desc"></td></tr>
+<tr id="row_53_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__external__tools_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__external__tools_8c.html" target="_self">remmina_external_tools.c</a></td><td class="desc"></td></tr>
+<tr id="row_54_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__external__tools_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__external__tools_8h.html" target="_self">remmina_external_tools.h</a></td><td class="desc"></td></tr>
+<tr id="row_55_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file_8c.html" target="_self">remmina_file.c</a></td><td class="desc"></td></tr>
+<tr id="row_56_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file_8h.html" target="_self">remmina_file.h</a></td><td class="desc"></td></tr>
+<tr id="row_57_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file__editor_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file__editor_8c.html" target="_self">remmina_file_editor.c</a></td><td class="desc"></td></tr>
+<tr id="row_58_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file__editor_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file__editor_8h.html" target="_self">remmina_file_editor.h</a></td><td class="desc"></td></tr>
+<tr id="row_59_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file__manager_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file__manager_8c.html" target="_self">remmina_file_manager.c</a></td><td class="desc"></td></tr>
+<tr id="row_60_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__file__manager_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__file__manager_8h.html" target="_self">remmina_file_manager.h</a></td><td class="desc"></td></tr>
+<tr id="row_61_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__filezilla__sftp_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__filezilla__sftp_8sh.html" target="_self">remmina_filezilla_sftp.sh</a></td><td class="desc"></td></tr>
+<tr id="row_62_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__filezilla__sftp__pki_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__filezilla__sftp__pki_8sh.html" target="_self">remmina_filezilla_sftp_pki.sh</a></td><td class="desc"></td></tr>
+<tr id="row_63_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ftp__client_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ftp__client_8c.html" target="_self">remmina_ftp_client.c</a></td><td class="desc"></td></tr>
+<tr id="row_64_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ftp__client_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ftp__client_8h.html" target="_self">remmina_ftp_client.h</a></td><td class="desc"></td></tr>
+<tr id="row_65_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__icon_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__icon_8c.html" target="_self">remmina_icon.c</a></td><td class="desc"></td></tr>
+<tr id="row_66_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__icon_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__icon_8h.html" target="_self">remmina_icon.h</a></td><td class="desc"></td></tr>
+<tr id="row_67_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__key__chooser_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__key__chooser_8c.html" target="_self">remmina_key_chooser.c</a></td><td class="desc"></td></tr>
+<tr id="row_68_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__key__chooser_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__key__chooser_8h.html" target="_self">remmina_key_chooser.h</a></td><td class="desc"></td></tr>
+<tr id="row_69_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__log_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__log_8c.html" target="_self">remmina_log.c</a></td><td class="desc"></td></tr>
+<tr id="row_70_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__log_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__log_8h.html" target="_self">remmina_log.h</a></td><td class="desc"></td></tr>
+<tr id="row_71_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__main_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__main_8c.html" target="_self">remmina_main.c</a></td><td class="desc"></td></tr>
+<tr id="row_72_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__main_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__main_8h.html" target="_self">remmina_main.h</a></td><td class="desc"></td></tr>
+<tr id="row_73_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__marshals_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__marshals_8c.html" target="_self">remmina_marshals.c</a></td><td class="desc"></td></tr>
+<tr id="row_74_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__marshals_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__marshals_8h.html" target="_self">remmina_marshals.h</a></td><td class="desc"></td></tr>
+<tr id="row_75_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__masterthread__exec_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__masterthread__exec_8c.html" target="_self">remmina_masterthread_exec.c</a></td><td class="desc"></td></tr>
+<tr id="row_76_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__masterthread__exec_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__masterthread__exec_8h.html" target="_self">remmina_masterthread_exec.h</a></td><td class="desc"></td></tr>
+<tr id="row_77_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__message__panel_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__message__panel_8c.html" target="_self">remmina_message_panel.c</a></td><td class="desc"></td></tr>
+<tr id="row_78_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__message__panel_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__message__panel_8h.html" target="_self">remmina_message_panel.h</a></td><td class="desc"></td></tr>
+<tr id="row_79_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__mpchange_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__mpchange_8c.html" target="_self">remmina_mpchange.c</a></td><td class="desc"></td></tr>
+<tr id="row_80_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__mpchange_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__mpchange_8h.html" target="_self">remmina_mpchange.h</a></td><td class="desc"></td></tr>
+<tr id="row_81_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__nslookup_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__nslookup_8sh.html" target="_self">remmina_nslookup.sh</a></td><td class="desc"></td></tr>
+<tr id="row_82_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ping_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ping_8sh.html" target="_self">remmina_ping.sh</a></td><td class="desc"></td></tr>
+<tr id="row_83_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__plugin_8h.html" target="_self">remmina_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_84_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__plugin__manager_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__plugin__manager_8c.html" target="_self">remmina_plugin_manager.c</a></td><td class="desc"></td></tr>
+<tr id="row_85_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__plugin__manager_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__plugin__manager_8h.html" target="_self">remmina_plugin_manager.h</a></td><td class="desc"></td></tr>
+<tr id="row_86_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__pref_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__pref_8c.html" target="_self">remmina_pref.c</a></td><td class="desc"></td></tr>
+<tr id="row_87_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__pref_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__pref_8h.html" target="_self">remmina_pref.h</a></td><td class="desc"></td></tr>
+<tr id="row_88_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__pref__dialog_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__pref__dialog_8c.html" target="_self">remmina_pref_dialog.c</a></td><td class="desc"></td></tr>
+<tr id="row_89_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__pref__dialog_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__pref__dialog_8h.html" target="_self">remmina_pref_dialog.h</a></td><td class="desc"></td></tr>
+<tr id="row_90_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__protocol__widget_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__protocol__widget_8c.html" target="_self">remmina_protocol_widget.c</a></td><td class="desc"></td></tr>
+<tr id="row_91_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__protocol__widget_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__protocol__widget_8h.html" target="_self">remmina_protocol_widget.h</a></td><td class="desc"></td></tr>
+<tr id="row_92_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__public_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__public_8c.html" target="_self">remmina_public.c</a></td><td class="desc"></td></tr>
+<tr id="row_93_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__public_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__public_8h.html" target="_self">remmina_public.h</a></td><td class="desc"></td></tr>
+<tr id="row_94_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__scheduler_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__scheduler_8c.html" target="_self">remmina_scheduler.c</a></td><td class="desc"></td></tr>
+<tr id="row_95_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__scheduler_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__scheduler_8h.html" target="_self">remmina_scheduler.h</a></td><td class="desc"></td></tr>
+<tr id="row_96_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__scrolled__viewport_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__scrolled__viewport_8c.html" target="_self">remmina_scrolled_viewport.c</a></td><td class="desc"></td></tr>
+<tr id="row_97_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__scrolled__viewport_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__scrolled__viewport_8h.html" target="_self">remmina_scrolled_viewport.h</a></td><td class="desc"></td></tr>
+<tr id="row_98_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sftp__client_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sftp__client_8c.html" target="_self">remmina_sftp_client.c</a></td><td class="desc"></td></tr>
+<tr id="row_99_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sftp__client_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sftp__client_8h.html" target="_self">remmina_sftp_client.h</a></td><td class="desc"></td></tr>
+<tr id="row_100_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sftp__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sftp__plugin_8c.html" target="_self">remmina_sftp_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_101_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sftp__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sftp__plugin_8h.html" target="_self">remmina_sftp_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_102_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sodium_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sodium_8c.html" target="_self">remmina_sodium.c</a></td><td class="desc">Remmina encryption functions, </td></tr>
+<tr id="row_103_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sodium_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sodium_8h.html" target="_self">remmina_sodium.h</a></td><td class="desc"></td></tr>
+<tr id="row_104_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ssh_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ssh_8c.html" target="_self">remmina_ssh.c</a></td><td class="desc"></td></tr>
+<tr id="row_105_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ssh_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ssh_8h.html" target="_self">remmina_ssh.h</a></td><td class="desc"></td></tr>
+<tr id="row_106_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ssh__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ssh__plugin_8c.html" target="_self">remmina_ssh_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_107_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__ssh__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__ssh__plugin_8h.html" target="_self">remmina_ssh_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_108_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__stats_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__stats_8c.html" target="_self">remmina_stats.c</a></td><td class="desc">Remmina usage statistics module </td></tr>
+<tr id="row_109_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__stats_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__stats_8h.html" target="_self">remmina_stats.h</a></td><td class="desc"></td></tr>
+<tr id="row_110_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__stats__sender_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__stats__sender_8c.html" target="_self">remmina_stats_sender.c</a></td><td class="desc"></td></tr>
+<tr id="row_111_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__stats__sender_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__stats__sender_8h.html" target="_self">remmina_stats_sender.h</a></td><td class="desc"></td></tr>
+<tr id="row_112_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__string__array_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__string__array_8c.html" target="_self">remmina_string_array.c</a></td><td class="desc"></td></tr>
+<tr id="row_113_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__string__array_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__string__array_8h.html" target="_self">remmina_string_array.h</a></td><td class="desc"></td></tr>
+<tr id="row_114_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__string__list_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__string__list_8c.html" target="_self">remmina_string_list.c</a></td><td class="desc"></td></tr>
+<tr id="row_115_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__string__list_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__string__list_8h.html" target="_self">remmina_string_list.h</a></td><td class="desc"></td></tr>
+<tr id="row_116_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sysinfo_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sysinfo_8c.html" target="_self">remmina_sysinfo.c</a></td><td class="desc"></td></tr>
+<tr id="row_117_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__sysinfo_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__sysinfo_8h.html" target="_self">remmina_sysinfo.h</a></td><td class="desc"></td></tr>
+<tr id="row_118_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__trace__calls_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__trace__calls_8h.html" target="_self">remmina_trace_calls.h</a></td><td class="desc"></td></tr>
+<tr id="row_119_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__traceroute_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__traceroute_8sh.html" target="_self">remmina_traceroute.sh</a></td><td class="desc"></td></tr>
+<tr id="row_120_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__unlock_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__unlock_8c.html" target="_self">remmina_unlock.c</a></td><td class="desc"></td></tr>
+<tr id="row_121_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__unlock_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__unlock_8h.html" target="_self">remmina_unlock.h</a></td><td class="desc"></td></tr>
+<tr id="row_122_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__utils_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__utils_8c.html" target="_self">remmina_utils.c</a></td><td class="desc"></td></tr>
+<tr id="row_123_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__utils_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__utils_8h.html" target="_self">remmina_utils.h</a></td><td class="desc">General utility functions, non-GTK related </td></tr>
+<tr id="row_124_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__widget__pool_8c_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__widget__pool_8c.html" target="_self">remmina_widget_pool.c</a></td><td class="desc"></td></tr>
+<tr id="row_125_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="remmina__widget__pool_8h_source.html"><span class="icondoc"></span></a><a class="el" href="remmina__widget__pool_8h.html" target="_self">remmina_widget_pool.h</a></td><td class="desc"></td></tr>
+<tr id="row_126_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rmnews_8c_source.html"><span class="icondoc"></span></a><a class="el" href="rmnews_8c.html" target="_self">rmnews.c</a></td><td class="desc"></td></tr>
+<tr id="row_127_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="rmnews_8h_source.html"><span class="icondoc"></span></a><a class="el" href="rmnews_8h.html" target="_self">rmnews.h</a></td><td class="desc"></td></tr>
+<tr id="row_128_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spice__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="spice__plugin_8c.html" target="_self">spice_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_129_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spice__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="spice__plugin_8h.html" target="_self">spice_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_130_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spice__plugin__file__transfer_8c_source.html"><span class="icondoc"></span></a><a class="el" href="spice__plugin__file__transfer_8c.html" target="_self">spice_plugin_file_transfer.c</a></td><td class="desc"></td></tr>
+<tr id="row_131_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="spice__plugin__usb_8c_source.html"><span class="icondoc"></span></a><a class="el" href="spice__plugin__usb_8c.html" target="_self">spice_plugin_usb.c</a></td><td class="desc"></td></tr>
+<tr id="row_132_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="st__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="st__plugin_8c.html" target="_self">st_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_133_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="st__plugin__config_8h_source.html"><span class="icondoc"></span></a><a class="el" href="st__plugin__config_8h.html" target="_self">st_plugin_config.h</a></td><td class="desc"></td></tr>
+<tr id="row_134_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="telepathy__channel__handler_8c_source.html"><span class="icondoc"></span></a><a class="el" href="telepathy__channel__handler_8c.html" target="_self">telepathy_channel_handler.c</a></td><td class="desc"></td></tr>
+<tr id="row_135_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="telepathy__channel__handler_8h_source.html"><span class="icondoc"></span></a><a class="el" href="telepathy__channel__handler_8h.html" target="_self">telepathy_channel_handler.h</a></td><td class="desc"></td></tr>
+<tr id="row_136_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="telepathy__handler_8c_source.html"><span class="icondoc"></span></a><a class="el" href="telepathy__handler_8c.html" target="_self">telepathy_handler.c</a></td><td class="desc"></td></tr>
+<tr id="row_137_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="telepathy__handler_8h_source.html"><span class="icondoc"></span></a><a class="el" href="telepathy__handler_8h.html" target="_self">telepathy_handler.h</a></td><td class="desc"></td></tr>
+<tr id="row_138_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="telepathy__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="telepathy__plugin_8c.html" target="_self">telepathy_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_139_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="travis-build_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="travis-build_8sh.html" target="_self">travis-build.sh</a></td><td class="desc"></td></tr>
+<tr id="row_140_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="types_8h_source.html"><span class="icondoc"></span></a><a class="el" href="types_8h.html" target="_self">types.h</a></td><td class="desc"></td></tr>
+<tr id="row_141_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="ubuntu-build_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="ubuntu-build_8sh.html" target="_self">ubuntu-build.sh</a></td><td class="desc"></td></tr>
+<tr id="row_142_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="update-translations_8sh_source.html"><span class="icondoc"></span></a><a class="el" href="update-translations_8sh.html" target="_self">update-translations.sh</a></td><td class="desc"></td></tr>
+<tr id="row_143_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="vnc__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="vnc__plugin_8c.html" target="_self">vnc_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_144_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="vnc__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="vnc__plugin_8h.html" target="_self">vnc_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_145_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="www__config_8h_source.html"><span class="icondoc"></span></a><a class="el" href="www__config_8h.html" target="_self">www_config.h</a></td><td class="desc"></td></tr>
+<tr id="row_146_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="www__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="www__plugin_8c.html" target="_self">www_plugin.c</a></td><td class="desc"></td></tr>
+<tr id="row_147_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="www__plugin_8h_source.html"><span class="icondoc"></span></a><a class="el" href="www__plugin_8h.html" target="_self">www_plugin.h</a></td><td class="desc"></td></tr>
+<tr id="row_148_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="www__utils_8c_source.html"><span class="icondoc"></span></a><a class="el" href="www__utils_8c.html" target="_self">www_utils.c</a></td><td class="desc"></td></tr>
+<tr id="row_149_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="www__utils_8h_source.html"><span class="icondoc"></span></a><a class="el" href="www__utils_8h.html" target="_self">www_utils.h</a></td><td class="desc"></td></tr>
+<tr id="row_150_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="xdmcp__plugin_8c_source.html"><span class="icondoc"></span></a><a class="el" href="xdmcp__plugin_8c.html" target="_self">xdmcp_plugin.c</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/files.js b/docs/files.js
new file mode 100644
index 000000000..39312dfe1
--- /dev/null
+++ b/docs/files.js
@@ -0,0 +1,154 @@
+var files =
+[
+ [ "exec_plugin.c", "exec__plugin_8c.html", "exec__plugin_8c" ],
+ [ "exec_plugin_config.h", "exec__plugin__config_8h.html", null ],
+ [ "functions.sh", "functions_8sh.html", null ],
+ [ "gettranslator.sh", "gettranslator_8sh.html", null ],
+ [ "glibsecret_plugin.c", "glibsecret__plugin_8c.html", "glibsecret__plugin_8c" ],
+ [ "glibsecret_plugin.h", "glibsecret__plugin_8h.html", null ],
+ [ "i18nstats.sh", "i18nstats_8sh.html", null ],
+ [ "kwallet_plugin.h", "kwallet__plugin_8h.html", "kwallet__plugin_8h" ],
+ [ "kwallet_plugin_main.c", "kwallet__plugin__main_8c.html", "kwallet__plugin__main_8c" ],
+ [ "launcher.sh", "launcher_8sh.html", null ],
+ [ "nx_plugin.c", "nx__plugin_8c.html", "nx__plugin_8c" ],
+ [ "nx_plugin.h", "nx__plugin_8h.html", "nx__plugin_8h" ],
+ [ "nx_session.c", "nx__session_8c.html", "nx__session_8c" ],
+ [ "nx_session.h", "nx__session_8h.html", "nx__session_8h" ],
+ [ "nx_session_manager.c", "nx__session__manager_8c.html", "nx__session__manager_8c" ],
+ [ "nx_session_manager.h", "nx__session__manager_8h.html", "nx__session__manager_8h" ],
+ [ "plugin.c", "plugin_8c.html", "plugin_8c" ],
+ [ "plugin.h", "plugin_8h.html", "plugin_8h" ],
+ [ "plugin_config.h", "plugin__config_8h.html", null ],
+ [ "rcw.c", "rcw_8c.html", "rcw_8c" ],
+ [ "rcw.h", "rcw_8h.html", "rcw_8h" ],
+ [ "rdp_channels.c", "rdp__channels_8c.html", "rdp__channels_8c" ],
+ [ "rdp_channels.h", "rdp__channels_8h.html", "rdp__channels_8h" ],
+ [ "rdp_cliprdr.c", "rdp__cliprdr_8c.html", "rdp__cliprdr_8c" ],
+ [ "rdp_cliprdr.h", "rdp__cliprdr_8h.html", "rdp__cliprdr_8h" ],
+ [ "rdp_event.c", "rdp__event_8c.html", "rdp__event_8c" ],
+ [ "rdp_event.h", "rdp__event_8h.html", "rdp__event_8h" ],
+ [ "rdp_file.c", "rdp__file_8c.html", "rdp__file_8c" ],
+ [ "rdp_file.h", "rdp__file_8h.html", "rdp__file_8h" ],
+ [ "rdp_graphics.c", "rdp__graphics_8c.html", "rdp__graphics_8c" ],
+ [ "rdp_graphics.h", "rdp__graphics_8h.html", "rdp__graphics_8h" ],
+ [ "rdp_plugin.c", "rdp__plugin_8c.html", "rdp__plugin_8c" ],
+ [ "rdp_plugin.h", "rdp__plugin_8h.html", "rdp__plugin_8h" ],
+ [ "rdp_settings.c", "rdp__settings_8c.html", "rdp__settings_8c" ],
+ [ "rdp_settings.h", "rdp__settings_8h.html", "rdp__settings_8h" ],
+ [ "remmina.c", "remmina_8c.html", "remmina_8c" ],
+ [ "remmina.h", "remmina_8h.html", "remmina_8h" ],
+ [ "remmina_about.c", "remmina__about_8c.html", "remmina__about_8c" ],
+ [ "remmina_about.h", "remmina__about_8h.html", "remmina__about_8h" ],
+ [ "remmina_applet_menu.c", "remmina__applet__menu_8c.html", "remmina__applet__menu_8c" ],
+ [ "remmina_applet_menu.h", "remmina__applet__menu_8h.html", "remmina__applet__menu_8h" ],
+ [ "remmina_applet_menu_item.c", "remmina__applet__menu__item_8c.html", "remmina__applet__menu__item_8c" ],
+ [ "remmina_applet_menu_item.h", "remmina__applet__menu__item_8h.html", "remmina__applet__menu__item_8h" ],
+ [ "remmina_avahi.c", "remmina__avahi_8c.html", "remmina__avahi_8c" ],
+ [ "remmina_avahi.h", "remmina__avahi_8h.html", "remmina__avahi_8h" ],
+ [ "remmina_chat_window.c", "remmina__chat__window_8c.html", "remmina__chat__window_8c" ],
+ [ "remmina_chat_window.h", "remmina__chat__window_8h.html", "remmina__chat__window_8h" ],
+ [ "remmina_crypt.c", "remmina__crypt_8c.html", "remmina__crypt_8c" ],
+ [ "remmina_crypt.h", "remmina__crypt_8h.html", "remmina__crypt_8h" ],
+ [ "remmina_exec.c", "remmina__exec_8c.html", "remmina__exec_8c" ],
+ [ "remmina_exec.h", "remmina__exec_8h.html", "remmina__exec_8h" ],
+ [ "remmina_ext_exec.c", "remmina__ext__exec_8c.html", "remmina__ext__exec_8c" ],
+ [ "remmina_ext_exec.h", "remmina__ext__exec_8h.html", "remmina__ext__exec_8h" ],
+ [ "remmina_external_tools.c", "remmina__external__tools_8c.html", "remmina__external__tools_8c" ],
+ [ "remmina_external_tools.h", "remmina__external__tools_8h.html", "remmina__external__tools_8h" ],
+ [ "remmina_file.c", "remmina__file_8c.html", "remmina__file_8c" ],
+ [ "remmina_file.h", "remmina__file_8h.html", "remmina__file_8h" ],
+ [ "remmina_file_editor.c", "remmina__file__editor_8c.html", "remmina__file__editor_8c" ],
+ [ "remmina_file_editor.h", "remmina__file__editor_8h.html", "remmina__file__editor_8h" ],
+ [ "remmina_file_manager.c", "remmina__file__manager_8c.html", "remmina__file__manager_8c" ],
+ [ "remmina_file_manager.h", "remmina__file__manager_8h.html", "remmina__file__manager_8h" ],
+ [ "remmina_filezilla_sftp.sh", "remmina__filezilla__sftp_8sh.html", null ],
+ [ "remmina_filezilla_sftp_pki.sh", "remmina__filezilla__sftp__pki_8sh.html", null ],
+ [ "remmina_ftp_client.c", "remmina__ftp__client_8c.html", "remmina__ftp__client_8c" ],
+ [ "remmina_ftp_client.h", "remmina__ftp__client_8h.html", "remmina__ftp__client_8h" ],
+ [ "remmina_icon.c", "remmina__icon_8c.html", "remmina__icon_8c" ],
+ [ "remmina_icon.h", "remmina__icon_8h.html", "remmina__icon_8h" ],
+ [ "remmina_key_chooser.c", "remmina__key__chooser_8c.html", "remmina__key__chooser_8c" ],
+ [ "remmina_key_chooser.h", "remmina__key__chooser_8h.html", "remmina__key__chooser_8h" ],
+ [ "remmina_log.c", "remmina__log_8c.html", "remmina__log_8c" ],
+ [ "remmina_log.h", "remmina__log_8h.html", "remmina__log_8h" ],
+ [ "remmina_main.c", "remmina__main_8c.html", "remmina__main_8c" ],
+ [ "remmina_main.h", "remmina__main_8h.html", "remmina__main_8h" ],
+ [ "remmina_marshals.c", "remmina__marshals_8c.html", "remmina__marshals_8c" ],
+ [ "remmina_marshals.h", "remmina__marshals_8h.html", "remmina__marshals_8h" ],
+ [ "remmina_masterthread_exec.c", "remmina__masterthread__exec_8c.html", "remmina__masterthread__exec_8c" ],
+ [ "remmina_masterthread_exec.h", "remmina__masterthread__exec_8h.html", "remmina__masterthread__exec_8h" ],
+ [ "remmina_message_panel.c", "remmina__message__panel_8c.html", "remmina__message__panel_8c" ],
+ [ "remmina_message_panel.h", "remmina__message__panel_8h.html", "remmina__message__panel_8h" ],
+ [ "remmina_mpchange.c", "remmina__mpchange_8c.html", "remmina__mpchange_8c" ],
+ [ "remmina_mpchange.h", "remmina__mpchange_8h.html", "remmina__mpchange_8h" ],
+ [ "remmina_nslookup.sh", "remmina__nslookup_8sh.html", null ],
+ [ "remmina_ping.sh", "remmina__ping_8sh.html", null ],
+ [ "remmina_plugin.h", "remmina__plugin_8h.html", "remmina__plugin_8h" ],
+ [ "remmina_plugin_manager.c", "remmina__plugin__manager_8c.html", "remmina__plugin__manager_8c" ],
+ [ "remmina_plugin_manager.h", "remmina__plugin__manager_8h.html", "remmina__plugin__manager_8h" ],
+ [ "remmina_pref.c", "remmina__pref_8c.html", "remmina__pref_8c" ],
+ [ "remmina_pref.h", "remmina__pref_8h.html", "remmina__pref_8h" ],
+ [ "remmina_pref_dialog.c", "remmina__pref__dialog_8c.html", "remmina__pref__dialog_8c" ],
+ [ "remmina_pref_dialog.h", "remmina__pref__dialog_8h.html", "remmina__pref__dialog_8h" ],
+ [ "remmina_protocol_widget.c", "remmina__protocol__widget_8c.html", "remmina__protocol__widget_8c" ],
+ [ "remmina_protocol_widget.h", "remmina__protocol__widget_8h.html", "remmina__protocol__widget_8h" ],
+ [ "remmina_public.c", "remmina__public_8c.html", "remmina__public_8c" ],
+ [ "remmina_public.h", "remmina__public_8h.html", "remmina__public_8h" ],
+ [ "remmina_scheduler.c", "remmina__scheduler_8c.html", "remmina__scheduler_8c" ],
+ [ "remmina_scheduler.h", "remmina__scheduler_8h.html", "remmina__scheduler_8h" ],
+ [ "remmina_scrolled_viewport.c", "remmina__scrolled__viewport_8c.html", "remmina__scrolled__viewport_8c" ],
+ [ "remmina_scrolled_viewport.h", "remmina__scrolled__viewport_8h.html", "remmina__scrolled__viewport_8h" ],
+ [ "remmina_sftp_client.c", "remmina__sftp__client_8c.html", "remmina__sftp__client_8c" ],
+ [ "remmina_sftp_client.h", "remmina__sftp__client_8h.html", "remmina__sftp__client_8h" ],
+ [ "remmina_sftp_plugin.c", "remmina__sftp__plugin_8c.html", "remmina__sftp__plugin_8c" ],
+ [ "remmina_sftp_plugin.h", "remmina__sftp__plugin_8h.html", "remmina__sftp__plugin_8h" ],
+ [ "remmina_sodium.c", "remmina__sodium_8c.html", "remmina__sodium_8c" ],
+ [ "remmina_sodium.h", "remmina__sodium_8h.html", "remmina__sodium_8h" ],
+ [ "remmina_ssh.c", "remmina__ssh_8c.html", "remmina__ssh_8c" ],
+ [ "remmina_ssh.h", "remmina__ssh_8h.html", "remmina__ssh_8h" ],
+ [ "remmina_ssh_plugin.c", "remmina__ssh__plugin_8c.html", "remmina__ssh__plugin_8c" ],
+ [ "remmina_ssh_plugin.h", "remmina__ssh__plugin_8h.html", "remmina__ssh__plugin_8h" ],
+ [ "remmina_stats.c", "remmina__stats_8c.html", "remmina__stats_8c" ],
+ [ "remmina_stats.h", "remmina__stats_8h.html", "remmina__stats_8h" ],
+ [ "remmina_stats_sender.c", "remmina__stats__sender_8c.html", "remmina__stats__sender_8c" ],
+ [ "remmina_stats_sender.h", "remmina__stats__sender_8h.html", "remmina__stats__sender_8h" ],
+ [ "remmina_string_array.c", "remmina__string__array_8c.html", "remmina__string__array_8c" ],
+ [ "remmina_string_array.h", "remmina__string__array_8h.html", "remmina__string__array_8h" ],
+ [ "remmina_string_list.c", "remmina__string__list_8c.html", "remmina__string__list_8c" ],
+ [ "remmina_string_list.h", "remmina__string__list_8h.html", "remmina__string__list_8h" ],
+ [ "remmina_sysinfo.c", "remmina__sysinfo_8c.html", "remmina__sysinfo_8c" ],
+ [ "remmina_sysinfo.h", "remmina__sysinfo_8h.html", "remmina__sysinfo_8h" ],
+ [ "remmina_trace_calls.h", "remmina__trace__calls_8h.html", "remmina__trace__calls_8h" ],
+ [ "remmina_traceroute.sh", "remmina__traceroute_8sh.html", null ],
+ [ "remmina_unlock.c", "remmina__unlock_8c.html", "remmina__unlock_8c" ],
+ [ "remmina_unlock.h", "remmina__unlock_8h.html", "remmina__unlock_8h" ],
+ [ "remmina_utils.c", "remmina__utils_8c.html", "remmina__utils_8c" ],
+ [ "remmina_utils.h", "remmina__utils_8h.html", "remmina__utils_8h" ],
+ [ "remmina_widget_pool.c", "remmina__widget__pool_8c.html", "remmina__widget__pool_8c" ],
+ [ "remmina_widget_pool.h", "remmina__widget__pool_8h.html", "remmina__widget__pool_8h" ],
+ [ "rmnews.c", "rmnews_8c.html", "rmnews_8c" ],
+ [ "rmnews.h", "rmnews_8h.html", "rmnews_8h" ],
+ [ "spice_plugin.c", "spice__plugin_8c.html", "spice__plugin_8c" ],
+ [ "spice_plugin.h", "spice__plugin_8h.html", "spice__plugin_8h" ],
+ [ "spice_plugin_file_transfer.c", "spice__plugin__file__transfer_8c.html", "spice__plugin__file__transfer_8c" ],
+ [ "spice_plugin_usb.c", "spice__plugin__usb_8c.html", "spice__plugin__usb_8c" ],
+ [ "st_plugin.c", "st__plugin_8c.html", "st__plugin_8c" ],
+ [ "st_plugin_config.h", "st__plugin__config_8h.html", null ],
+ [ "telepathy_channel_handler.c", "telepathy__channel__handler_8c.html", "telepathy__channel__handler_8c" ],
+ [ "telepathy_channel_handler.h", "telepathy__channel__handler_8h.html", "telepathy__channel__handler_8h" ],
+ [ "telepathy_handler.c", "telepathy__handler_8c.html", "telepathy__handler_8c" ],
+ [ "telepathy_handler.h", "telepathy__handler_8h.html", "telepathy__handler_8h" ],
+ [ "telepathy_plugin.c", "telepathy__plugin_8c.html", "telepathy__plugin_8c" ],
+ [ "travis-build.sh", "travis-build_8sh.html", null ],
+ [ "types.h", "types_8h.html", "types_8h" ],
+ [ "ubuntu-build.sh", "ubuntu-build_8sh.html", null ],
+ [ "update-translations.sh", "update-translations_8sh.html", null ],
+ [ "vnc_plugin.c", "vnc__plugin_8c.html", "vnc__plugin_8c" ],
+ [ "vnc_plugin.h", "vnc__plugin_8h.html", "vnc__plugin_8h" ],
+ [ "www_config.h", "www__config_8h.html", null ],
+ [ "www_plugin.c", "www__plugin_8c.html", "www__plugin_8c" ],
+ [ "www_plugin.h", "www__plugin_8h.html", "www__plugin_8h" ],
+ [ "www_utils.c", "www__utils_8c.html", "www__utils_8c" ],
+ [ "www_utils.h", "www__utils_8h.html", "www__utils_8h" ],
+ [ "xdmcp_plugin.c", "xdmcp__plugin_8c.html", "xdmcp__plugin_8c" ]
+]; \ No newline at end of file
diff --git a/docs/folderclosed.png b/docs/folderclosed.png
new file mode 100644
index 000000000..bb8ab35ed
--- /dev/null
+++ b/docs/folderclosed.png
Binary files differ
diff --git a/docs/folderopen.png b/docs/folderopen.png
new file mode 100644
index 000000000..d6c7f676a
--- /dev/null
+++ b/docs/folderopen.png
Binary files differ
diff --git a/docs/functions.html b/docs/functions.html
new file mode 100644
index 000000000..de49e523d
--- /dev/null
+++ b/docs/functions.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>accelgroup_shortcuts
+: <a class="el" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">_RemminaMain</a>
+</li>
+<li>account
+: <a class="el" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">_RemminaTpChannelHandler</a>
+</li>
+<li>action_view_mode_list
+: <a class="el" href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19">_RemminaMain</a>
+</li>
+<li>action_view_mode_tree
+: <a class="el" href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c">_RemminaMain</a>
+</li>
+<li>action_view_quick_connect
+: <a class="el" href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f">_RemminaMain</a>
+</li>
+<li>activate
+: <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1">_RemminaCellRendererPixbufClass</a>
+</li>
+<li>advanced_settings
+: <a class="el" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin</a>
+</li>
+<li>alias
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">_RemminaTpChannelHandler</a>
+</li>
+<li>allow_start
+: <a class="el" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">_RemminaNXSession</a>
+</li>
+<li>always_show_tab
+: <a class="el" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref</a>
+</li>
+<li>applet_enable_avahi
+: <a class="el" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">_RemminaPref</a>
+</li>
+<li>applet_hide_count
+: <a class="el" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref</a>
+</li>
+<li>applet_new_ontop
+: <a class="el" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref</a>
+</li>
+<li>aspectframe
+: <a class="el" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">_RemminaConnectionObject</a>
+</li>
+<li>attach_session
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">_RemminaPluginNxData</a>
+</li>
+<li>attempt_interactive_authentication
+: <a class="el" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">rf_context</a>
+</li>
+<li>audio
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">_RemminaPluginSpiceData</a>
+</li>
+<li>auth
+: <a class="el" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">_RemminaSSH</a>
+</li>
+<li>auth_called
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">_RemminaPluginVncData</a>
+</li>
+<li>auth_first
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">_RemminaPluginVncData</a>
+</li>
+<li>auth_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>authenticated
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">_RemminaPluginWWWData</a>
+, <a class="el" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">_RemminaSSH</a>
+</li>
+<li>auto_scroll_step
+: <a class="el" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref</a>
+</li>
+<li>autostart_file
+: <a class="el" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">_RemminaIcon</a>
+</li>
+<li>avahi
+: <a class="el" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">_RemminaIcon</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_8sh.html b/docs/functions_8sh.html
new file mode 100644
index 000000000..fa6a2ee63
--- /dev/null
+++ b/docs/functions_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: functions.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">functions.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="functions_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="functions_8sh.html">functions.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_8sh_source.html b/docs/functions_8sh_source.html
new file mode 100644
index 000000000..eb54a14de
--- /dev/null
+++ b/docs/functions_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: functions.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">functions.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="functions_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;# Awaits user key press.</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;pause ()</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;{</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160; echo &quot;Press any key to continue…&quot;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160; OLDCONFIG=$(stty -g)</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160; stty -icanon -echo min 1 time 0</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; dd count=1 2&gt;/dev/null</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; stty $OLDCONFIG</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;}</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;# Set terminal title for gnome-terminal and many others</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;settitle() {</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; echo -n -e &quot;\033]0;${remmina_term_title}\007&quot;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;}</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="functions_8sh.html">functions.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_b.html b/docs/functions_b.html
new file mode 100644
index 000000000..38ef1bb98
--- /dev/null
+++ b/docs/functions_b.html
@@ -0,0 +1,239 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_b.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>background
+: <a class="el" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref</a>
+</li>
+<li>basic_settings
+: <a class="el" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">_RemminaProtocolPlugin</a>
+</li>
+<li>bindlocalhost
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">_RemminaSSHTunnel</a>
+</li>
+<li>bitmap
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507">rf_bitmap</a>
+</li>
+<li>bitsPerPixel
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">_RemminaPluginScreenshotData</a>
+</li>
+<li>box
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">_RemminaPluginWWWData</a>
+</li>
+<li>box_quick_connect
+: <a class="el" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">_RemminaMain</a>
+</li>
+<li>bpp
+: <a class="el" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context</a>
+</li>
+<li>btnDoChange
+: <a class="el" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">mpchanger_params</a>
+</li>
+<li>buffer
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">_RemminaSSHTunnel</a>
+</li>
+<li>buffer_len
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">_RemminaSSHTunnel</a>
+</li>
+<li>buffer_mutex
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">_RemminaPluginVncData</a>
+</li>
+<li>builder
+: <a class="el" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">_RemminaMain</a>
+, <a class="el" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">_RemminaStringList</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">_RemminaUnlockDialog</a>
+</li>
+<li>bus
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">_RemminaTpChannelHandler</a>
+</li>
+<li>button_add
+: <a class="el" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">_RemminaStringList</a>
+</li>
+<li>button_cancel
+: <a class="el" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">PCon_Spinner</a>
+</li>
+<li>button_down
+: <a class="el" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">_RemminaStringList</a>
+</li>
+<li>button_keyboard_auto_fit
+: <a class="el" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_copy
+: <a class="el" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_disconnect
+: <a class="el" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_fullscreen
+: <a class="el" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_grab_keyboard
+: <a class="el" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_host_key
+: <a class="el" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_minimize
+: <a class="el" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_paste
+: <a class="el" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_scaled
+: <a class="el" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_screenshot
+: <a class="el" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_select_all
+: <a class="el" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_switch_tab_left
+: <a class="el" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_switch_tab_right
+: <a class="el" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_toolbar
+: <a class="el" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_viewonly
+: <a class="el" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">_RemminaPrefDialog</a>
+</li>
+<li>button_make_default
+: <a class="el" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">_RemminaMain</a>
+</li>
+<li>button_mask
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32">_RemminaPluginVncEvent</a>
+</li>
+<li>button_new
+: <a class="el" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">_RemminaMain</a>
+</li>
+<li>button_options_recent_items_clear
+: <a class="el" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">_RemminaPrefDialog</a>
+</li>
+<li>button_options_resolutions
+: <a class="el" href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903">_RemminaPrefDialog</a>
+</li>
+<li>button_quick_connect
+: <a class="el" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">_RemminaMain</a>
+</li>
+<li>button_remove
+: <a class="el" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">_RemminaStringList</a>
+</li>
+<li>button_term_cs
+: <a class="el" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">_RemminaPrefDialog</a>
+</li>
+<li>button_unlock
+: <a class="el" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">_RemminaUnlockDialog</a>
+</li>
+<li>button_unlock_cancel
+: <a class="el" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">_RemminaUnlockDialog</a>
+</li>
+<li>button_up
+: <a class="el" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">_RemminaStringList</a>
+</li>
+<li>bytesPerPixel
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">_RemminaPluginScreenshotData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_c.html b/docs/functions_c.html
new file mode 100644
index 000000000..35eae933a
--- /dev/null
+++ b/docs/functions_c.html
@@ -0,0 +1,454 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cacert
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>cacrl
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>cairo_format
+: <a class="el" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">rf_context</a>
+</li>
+<li>call_feature
+: <a class="el" href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1">_RemminaProtocolPlugin</a>
+</li>
+<li>callback
+: <a class="el" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">_RemminaSSH</a>
+</li>
+<li>callback_data
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">_RemminaSSHTunnel</a>
+</li>
+<li>called_from_subthread
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>cancel
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>cancel_task
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93">_RemminaFTPClientClass</a>
+</li>
+<li>cancelled
+: <a class="el" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">remmina_masterthread_exec_data</a>
+</li>
+<li>cb_func_data
+: <a class="el" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">rsSchedData</a>
+</li>
+<li>cb_func_ptr
+: <a class="el" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">rsSchedData</a>
+</li>
+<li>cellrenderertext_item1
+: <a class="el" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">_RemminaStringList</a>
+</li>
+<li>cellrenderertext_item2
+: <a class="el" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">_RemminaStringList</a>
+</li>
+<li>changed_passwords_count
+: <a class="el" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">mpchanger_params</a>
+</li>
+<li>channel
+: <a class="el" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">_RemminaTpChannelHandler</a>
+</li>
+<li>channel_path
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">_RemminaTpChannelHandler</a>
+</li>
+<li>channel_properties
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">_RemminaTpChannelHandler</a>
+</li>
+<li>channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">_RemminaSSHTunnel</a>
+</li>
+<li>channels_out
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">_RemminaSSHTunnel</a>
+</li>
+<li>charset
+: <a class="el" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">_RemminaSSH</a>
+</li>
+<li>chat_receive
+: <a class="el" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">remmina_masterthread_exec_data</a>
+</li>
+<li>chat_window
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>checkbutton_appearance_fullscreen_on_auto
+: <a class="el" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_hide_searchbar
+: <a class="el" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_hide_toolbar
+: <a class="el" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_show_tabs
+: <a class="el" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_disable_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_hide_totals
+: <a class="el" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_light_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_new_connection_on_top
+: <a class="el" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_start_in_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_options_save_settings
+: <a class="el" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_options_ssh_parseconfig
+: <a class="el" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">_RemminaPrefDialog</a>
+</li>
+<li>ciphers
+: <a class="el" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">_RemminaSSH</a>
+</li>
+<li>client
+: <a class="el" href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040">_RemminaAvahiPriv</a>
+, <a class="el" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">_RemminaSFTPClient</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">remmina_masterthread_exec_data</a>
+</li>
+<li>clientcert
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>clientkey
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>clipboard
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context</a>
+</li>
+<li>clipboard_formatdatarequest
+: <a class="el" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_formatdataresponse
+: <a class="el" href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_formatlist
+: <a class="el" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">rf_clipboard</a>
+</li>
+<li>clipboard_timer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">_RemminaPluginVncData</a>
+</li>
+<li>cliprdr
+: <a class="el" href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">rf_context</a>
+</li>
+<li>close_connection
+: <a class="el" href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2">_RemminaProtocolPlugin</a>
+</li>
+<li>closed
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">_RemminaSSHShell</a>
+</li>
+<li>cnnobj
+: <a class="el" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">_RemminaProtocolWidget</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">remmina_masterthread_exec_data</a>
+</li>
+<li>cnnwin
+: <a class="el" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">_RemminaConnectionObject</a>
+</li>
+<li>codeset
+: <a class="el" href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668">remmina_masterthread_exec_data</a>
+</li>
+<li>color0
+: <a class="el" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref</a>
+</li>
+<li>color1
+: <a class="el" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref</a>
+</li>
+<li>color10
+: <a class="el" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref</a>
+</li>
+<li>color11
+: <a class="el" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref</a>
+</li>
+<li>color12
+: <a class="el" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref</a>
+</li>
+<li>color13
+: <a class="el" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref</a>
+</li>
+<li>color14
+: <a class="el" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref</a>
+</li>
+<li>color15
+: <a class="el" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref</a>
+</li>
+<li>color2
+: <a class="el" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref</a>
+</li>
+<li>color3
+: <a class="el" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref</a>
+</li>
+<li>color4
+: <a class="el" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref</a>
+</li>
+<li>color5
+: <a class="el" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref</a>
+</li>
+<li>color6
+: <a class="el" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref</a>
+</li>
+<li>color7
+: <a class="el" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref</a>
+</li>
+<li>color8
+: <a class="el" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref</a>
+</li>
+<li>color9
+: <a class="el" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref</a>
+</li>
+<li>color_pref
+: <a class="el" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref</a>
+</li>
+<li>colorbutton_background
+: <a class="el" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color0
+: <a class="el" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color1
+: <a class="el" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color10
+: <a class="el" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color11
+: <a class="el" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color12
+: <a class="el" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color13
+: <a class="el" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color14
+: <a class="el" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color15
+: <a class="el" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color2
+: <a class="el" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color3
+: <a class="el" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color4
+: <a class="el" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color5
+: <a class="el" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color6
+: <a class="el" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color7
+: <a class="el" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color8
+: <a class="el" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color9
+: <a class="el" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_cursor
+: <a class="el" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_foreground
+: <a class="el" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">_RemminaPrefDialog</a>
+</li>
+<li>colormap
+: <a class="el" href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523">rf_context</a>
+</li>
+<li>column_files_list_group
+: <a class="el" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">_RemminaMain</a>
+</li>
+<li>combo_quick_connect_protocol
+: <a class="el" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">_RemminaMain</a>
+</li>
+<li>comboboxtext_appearance_fullscreen_toolbar_visibility
+: <a class="el" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_appearance_tab_interface
+: <a class="el" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_appearance_view_mode
+: <a class="el" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_double_click
+: <a class="el" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_scale_quality
+: <a class="el" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_ssh_loglevel
+: <a class="el" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">_RemminaPrefDialog</a>
+</li>
+<li>compact
+: <a class="el" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc">_RemminaProtocolSettingOpt</a>
+</li>
+<li>complete
+: <a class="el" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>composition_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>compression
+: <a class="el" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">_RemminaSSH</a>
+</li>
+<li>connect
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760">_RemminaProtocolWidgetClass</a>
+</li>
+<li>connect_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">_RemminaSSHTunnel</a>
+</li>
+<li>connect_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>connected
+: <a class="el" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">_RemminaConnectionObject</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context</a>
+</li>
+<li>connection
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">_RemminaTpChannelHandler</a>
+</li>
+<li>connection_path
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">_RemminaTpChannelHandler</a>
+</li>
+<li>context
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">_RemminaPluginWWWData</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">_RemminaTpChannelHandler</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">rf_clipboard</a>
+, <a class="el" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">rf_context</a>
+</li>
+<li>count
+: <a class="el" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">rsSchedData</a>
+</li>
+<li>credentials
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">_RemminaPluginWWWData</a>
+</li>
+<li>cursor
+: <a class="el" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0">rf_pointer</a>
+</li>
+<li>cursorblinking_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>cursorshadow_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">_RemminaPluginRdpsetGrid</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_d.html b/docs/functions_d.html
new file mode 100644
index 000000000..7fc02a628
--- /dev/null
+++ b/docs/functions_d.html
@@ -0,0 +1,272 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>dark_tray_icon
+: <a class="el" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref</a>
+</li>
+<li>data
+: <a class="el" href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>data_mgr
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">_RemminaPluginWWWData</a>
+</li>
+<li>datadir_path
+: <a class="el" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">_RemminaPref</a>
+</li>
+<li>datestr
+: <a class="el" href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b">ProfilesData</a>
+</li>
+<li>datetime
+: <a class="el" href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660">_RemminaGroupData</a>
+</li>
+<li>debug
+: <a class="el" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService</a>
+</li>
+<li>default_action
+: <a class="el" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">_RemminaPref</a>
+</li>
+<li>default_domain
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>default_mode
+: <a class="el" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref</a>
+</li>
+<li>default_password
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>default_response
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">_RemminaPluginNxData</a>
+</li>
+<li>default_username
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>deferred_open_size_allocate_handler
+: <a class="el" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">_RemminaConnectionObject</a>
+</li>
+<li>DEFINE_RDP_CLIENT_COMMON()
+: <a class="el" href="structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7">rf_context</a>
+</li>
+<li>delayed_monitor_layout_handler
+: <a class="el" href="structrf__context.html#a957e6f6867170470689210d55770342e">rf_context</a>
+</li>
+<li>delete_file
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905">_RemminaFTPClientClass</a>
+</li>
+<li>delete_password
+: <a class="el" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">_RemminaSecretPlugin</a>
+</li>
+<li>deny_screenshot_clipboard
+: <a class="el" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">_RemminaPref</a>
+</li>
+<li>description
+: <a class="el" href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9">_RemminaToolPlugin</a>
+</li>
+<li>desktop_orientation_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktop_orientation_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktop_resize
+: <a class="el" href="struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b">_RemminaProtocolWidgetClass</a>
+</li>
+<li>desktop_scale_factor_spin
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktopOrientation
+: <a class="el" href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0">remmina_plugin_rdp_event</a>
+</li>
+<li>desktopScaleFactor
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985">remmina_plugin_rdp_event</a>
+</li>
+<li>dest
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">_RemminaSSHTunnel</a>
+</li>
+<li>destroy_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">_RemminaSSHTunnel</a>
+</li>
+<li>destroy_func_callback_data
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">_RemminaSSHTunnel</a>
+</li>
+<li>destroyed
+: <a class="el" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">MpRunInfo</a>
+</li>
+<li>device_scale_factor_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>device_scale_factor_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>deviceScaleFactor
+: <a class="el" href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57">remmina_plugin_rdp_event</a>
+</li>
+<li>dialog
+: <a class="el" href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872">_RemminaFileEditor</a>
+, <a class="el" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">_RemminaStringList</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">_RemminaUnlockDialog</a>
+, <a class="el" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">mpchanger_params</a>
+, <a class="el" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">PCon_Spinner</a>
+</li>
+<li>disable_tray_icon
+: <a class="el" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref</a>
+</li>
+<li>disconnect
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213">_RemminaProtocolWidgetClass</a>
+</li>
+<li>disconnect_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">_RemminaSSHTunnel</a>
+</li>
+<li>disconnect_handler
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">_RemminaTpChannelHandler</a>
+</li>
+<li>discovered_services
+: <a class="el" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">_RemminaAvahi</a>
+</li>
+<li>dispcontext
+: <a class="el" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context</a>
+</li>
+<li>display
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">_RemminaPluginSpiceData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">_RemminaPluginXdmcpData</a>
+, <a class="el" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">rf_context</a>
+</li>
+<li>display_channel
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">_RemminaPluginSpiceData</a>
+</li>
+<li>document_type
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">_RemminaPluginWWWData</a>
+</li>
+<li>domain
+: <a class="el" href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e">_RemminaToolPlugin</a>
+, <a class="el" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">mpchanger_params</a>
+</li>
+<li>donesize
+: <a class="el" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">_RemminaFTPTask</a>
+</li>
+<li>drawing_area
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context</a>
+</li>
+<li>drdynvc_data
+: <a class="el" href="structrf__context.html#a2a708b989f3e12af802ab4266af39363">rf_context</a>
+</li>
+<li>dtype
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>dynres_unlocked
+: <a class="el" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">_RemminaConnectionObject</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_dup.js b/docs/functions_dup.js
new file mode 100644
index 000000000..c5a11c8cb
--- /dev/null
+++ b/docs/functions_dup.js
@@ -0,0 +1,27 @@
+var functions_dup =
+[
+ [ "a", "functions.html", null ],
+ [ "b", "functions_b.html", null ],
+ [ "c", "functions_c.html", null ],
+ [ "d", "functions_d.html", null ],
+ [ "e", "functions_e.html", null ],
+ [ "f", "functions_f.html", null ],
+ [ "g", "functions_g.html", null ],
+ [ "h", "functions_h.html", null ],
+ [ "i", "functions_i.html", null ],
+ [ "k", "functions_k.html", null ],
+ [ "l", "functions_l.html", null ],
+ [ "m", "functions_m.html", null ],
+ [ "n", "functions_n.html", null ],
+ [ "o", "functions_o.html", null ],
+ [ "p", "functions_p.html", null ],
+ [ "q", "functions_q.html", null ],
+ [ "r", "functions_r.html", null ],
+ [ "s", "functions_s.html", null ],
+ [ "t", "functions_t.html", null ],
+ [ "u", "functions_u.html", null ],
+ [ "v", "functions_v.html", null ],
+ [ "w", "functions_w.html", null ],
+ [ "x", "functions_x.html", null ],
+ [ "y", "functions_y.html", null ]
+]; \ No newline at end of file
diff --git a/docs/functions_e.html b/docs/functions_e.html
new file mode 100644
index 000000000..524a4df75
--- /dev/null
+++ b/docs/functions_e.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_e.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>edit_item
+: <a class="el" href="struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45">_RemminaAppletMenuClass</a>
+</li>
+<li>eDomain
+: <a class="el" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">mpchanger_params</a>
+</li>
+<li>eGroup
+: <a class="el" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">mpchanger_params</a>
+</li>
+<li>encryption
+: <a class="el" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">_RemminaNXSession</a>
+</li>
+<li>entry_func
+: <a class="el" href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e">_RemminaEntryPlugin</a>
+</li>
+<li>entry_options_file_name
+: <a class="el" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_recent_items
+: <a class="el" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_screenshot_name
+: <a class="el" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_scroll
+: <a class="el" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_port
+: <a class="el" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepcnt
+: <a class="el" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepidle
+: <a class="el" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepintvl
+: <a class="el" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_usrtimeout
+: <a class="el" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">_RemminaPrefDialog</a>
+</li>
+<li>entry_quick_connect_server
+: <a class="el" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">_RemminaMain</a>
+</li>
+<li>entry_scrollback_lines
+: <a class="el" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">_RemminaPrefDialog</a>
+</li>
+<li>entry_unlock
+: <a class="el" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">_RemminaUnlockDialog</a>
+</li>
+<li>ePassword1
+: <a class="el" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">mpchanger_params</a>
+</li>
+<li>ePassword2
+: <a class="el" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">mpchanger_params</a>
+</li>
+<li>err
+: <a class="el" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">_RemminaPluginExecData</a>
+</li>
+<li>error
+: <a class="el" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH</a>
+</li>
+<li>error_fd
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d">_RemminaPluginXdmcpData</a>
+</li>
+<li>error_message
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>eUsername
+: <a class="el" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">mpchanger_params</a>
+</li>
+<li>event
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>event_box
+: <a class="el" href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc">_RemminaProtocolWidget</a>
+, <a class="el" href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded">_RemminaScrolledViewport</a>
+</li>
+<li>event_data
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">_RemminaPluginVncEvent</a>
+</li>
+<li>event_handle
+: <a class="el" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">rf_context</a>
+</li>
+<li>event_pipe
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">_RemminaPluginNxData</a>
+, <a class="el" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">rf_context</a>
+</li>
+<li>event_queue
+: <a class="el" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">rf_context</a>
+</li>
+<li>event_type
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">_RemminaPluginVncEvent</a>
+</li>
+<li>exec
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">_RemminaSSHShell</a>
+</li>
+<li>exec_func
+: <a class="el" href="struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17">_RemminaToolPlugin</a>
+</li>
+<li>exit_callback
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">_RemminaSSHShell</a>
+</li>
+<li>expanded_group
+: <a class="el" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">_RemminaMainPriv</a>
+, <a class="el" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">_RemminaPref</a>
+</li>
+<li>export_func
+: <a class="el" href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1">_RemminaFilePlugin</a>
+</li>
+<li>export_hints
+: <a class="el" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">_RemminaFilePlugin</a>
+</li>
+<li>export_test_func
+: <a class="el" href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03">_RemminaFilePlugin</a>
+</li>
+<li>extended
+: <a class="el" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">remmina_plugin_rdp_event</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_eval.html b/docs/functions_eval.html
new file mode 100644
index 000000000..96c162823
--- /dev/null
+++ b/docs/functions_eval.html
@@ -0,0 +1,161 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Enumerator</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_eval.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>FUNC_CHAT_RECEIVE
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FILE_GET_STRING
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FTP_CLIENT_GET_WAITING_TASK
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FTP_CLIENT_UPDATE_TASK
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_GTK_LABEL_SET_TEXT
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_GTK_SOCKET_ADD_ID
+: <a class="el" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">onMainThread_cb_data</a>
+</li>
+<li>FUNC_INIT_SAVE_CRED
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_EMIT_SIGNAL
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPDESTROY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPPROGRESS
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPSHOWRETRY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_SFTP_CLIENT_CONFIRM_RESUME
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_UPDATE_SCALE
+: <a class="el" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">onMainThread_cb_data</a>
+</li>
+<li>FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605">remmina_masterthread_exec_data</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_GDI_INIT
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6">rf_context</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_NO_H264
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982">rf_context</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_OK
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68">rf_context</a>
+</li>
+<li>SCDW_ABORTING
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b">rf_clipboard</a>
+</li>
+<li>SCDW_BUSY_WAIT
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e">rf_clipboard</a>
+</li>
+<li>SCDW_NONE
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1">rf_clipboard</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_f.html b/docs/functions_f.html
new file mode 100644
index 000000000..5b2f48ef5
--- /dev/null
+++ b/docs/functions_f.html
@@ -0,0 +1,244 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>features
+: <a class="el" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>fields_separator
+: <a class="el" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">_RemminaStringListPriv</a>
+</li>
+<li>file_get_int
+: <a class="el" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService</a>
+</li>
+<li>file_get_path
+: <a class="el" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">_RemminaPluginService</a>
+</li>
+<li>file_get_secret
+: <a class="el" href="struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d">_RemminaPluginService</a>
+</li>
+<li>file_get_string
+: <a class="el" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">remmina_masterthread_exec_data</a>
+</li>
+<li>file_get_user_datadir
+: <a class="el" href="struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f">_RemminaPluginService</a>
+</li>
+<li>file_model
+: <a class="el" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">_RemminaMainPriv</a>
+</li>
+<li>file_model_filter
+: <a class="el" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">_RemminaMainPriv</a>
+</li>
+<li>file_model_sort
+: <a class="el" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">_RemminaMainPriv</a>
+</li>
+<li>file_new
+: <a class="el" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">_RemminaPluginService</a>
+</li>
+<li>file_set_int
+: <a class="el" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">_RemminaPluginService</a>
+</li>
+<li>file_set_string
+: <a class="el" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService</a>
+</li>
+<li>file_transfer_dialog
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">_RemminaPluginSpiceData</a>
+</li>
+<li>file_transfers
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">_RemminaPluginSpiceData</a>
+</li>
+<li>file_unsave_passwords
+: <a class="el" href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0">_RemminaPluginService</a>
+</li>
+<li>filechooserbutton_options_datadir_path
+: <a class="el" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">_RemminaPrefDialog</a>
+</li>
+<li>filechooserbutton_options_screenshots_path
+: <a class="el" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">_RemminaPrefDialog</a>
+</li>
+<li>filename
+: <a class="el" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">_RemminaFile</a>
+, <a class="el" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">distro_info</a>
+</li>
+<li>flags
+: <a class="el" href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c">remmina_plugin_rdp_event</a>
+</li>
+<li>floating_toolbar_placement
+: <a class="el" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">_RemminaPref</a>
+</li>
+<li>fontbutton_terminal_font
+: <a class="el" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">_RemminaPrefDialog</a>
+</li>
+<li>fontsmoothing_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>foreground
+: <a class="el" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref</a>
+</li>
+<li>format
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">rf_clipboard</a>
+</li>
+<li>formauthenticated
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">_RemminaPluginWWWData</a>
+</li>
+<li>ftp_client_get_waiting_task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">remmina_masterthread_exec_data</a>
+</li>
+<li>ftp_client_update_task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">remmina_masterthread_exec_data</a>
+</li>
+<li>fullscreen_on_auto
+: <a class="el" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref</a>
+</li>
+<li>fullscreen_toolbar_visibility
+: <a class="el" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref</a>
+</li>
+<li>func
+: <a class="el" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_CHAT_RECEIVE
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FILE_GET_STRING
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FTP_CLIENT_GET_WAITING_TASK
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_FTP_CLIENT_UPDATE_TASK
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_GTK_LABEL_SET_TEXT
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_GTK_SOCKET_ADD_ID
+: <a class="el" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">onMainThread_cb_data</a>
+</li>
+<li>FUNC_INIT_SAVE_CRED
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_EMIT_SIGNAL
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPDESTROY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPPROGRESS
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_MPSHOWRETRY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_SFTP_CLIENT_CONFIRM_RESUME
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09">remmina_masterthread_exec_data</a>
+</li>
+<li>FUNC_UPDATE_SCALE
+: <a class="el" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">onMainThread_cb_data</a>
+</li>
+<li>FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605">remmina_masterthread_exec_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_func.html b/docs/functions_func.html
new file mode 100644
index 000000000..ff9565c30
--- /dev/null
+++ b/docs/functions_func.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_func.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>DEFINE_RDP_CLIENT_COMMON()
+: <a class="el" href="structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7">rf_context</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_g.html b/docs/functions_g.html
new file mode 100644
index 000000000..abacbdcbf
--- /dev/null
+++ b/docs/functions_g.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>get_password
+: <a class="el" href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629">_RemminaSecretPlugin</a>
+</li>
+<li>get_plugin_screenshot
+: <a class="el" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">_RemminaProtocolPlugin</a>
+</li>
+<li>get_pref_body
+: <a class="el" href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989">_RemminaPrefPlugin</a>
+</li>
+<li>get_profile_remote_height
+: <a class="el" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">_RemminaPluginService</a>
+</li>
+<li>get_profile_remote_width
+: <a class="el" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">_RemminaPluginService</a>
+</li>
+<li>get_server_port
+: <a class="el" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService</a>
+</li>
+<li>glyph
+: <a class="el" href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94">rf_glyph</a>
+</li>
+<li>gp
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">_RemminaPluginVncCuttextParam</a>
+, <a class="el" href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a">_RemminaProtocolWidgetSignalData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">_RemminaSFTPClient</a>
+, <a class="el" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>grid
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>group
+: <a class="el" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09">_RemminaGroupData</a>
+, <a class="el" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">mpchanger_params</a>
+</li>
+<li>gsversion
+: <a class="el" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">_RemminaIcon</a>
+</li>
+<li>gtk_label_set_text
+: <a class="el" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">remmina_masterthread_exec_data</a>
+</li>
+<li>gtk_session
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">_RemminaPluginSpiceData</a>
+</li>
+<li>gtksocket_available
+: <a class="el" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">_RemminaPluginService</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_h.html b/docs/functions_h.html
new file mode 100644
index 000000000..fe6cff86f
--- /dev/null
+++ b/docs/functions_h.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_h"></a>- h -</h3><ul>
+<li>h
+: <a class="el" href="structregion.html#a585e1a437e6e8f8a80785aec2f2762c8">region</a>
+</li>
+<li>has_error
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>has_event
+: <a class="el" href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8">_RemminaAvahiPriv</a>
+</li>
+<li>hbox
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>height
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>hide_connection_toolbar
+: <a class="el" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref</a>
+</li>
+<li>hide_searchbar
+: <a class="el" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref</a>
+</li>
+<li>hide_toolbar
+: <a class="el" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">_RemminaPref</a>
+</li>
+<li>history_text
+: <a class="el" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">_RemminaChatWindow</a>
+</li>
+<li>host
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">_RemminaTpChannelHandler</a>
+</li>
+<li>hostkey
+: <a class="el" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref</a>
+</li>
+<li>hostkey_func
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>hostkeytypes
+: <a class="el" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">_RemminaSSH</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_i.html b/docs/functions_i.html
new file mode 100644
index 000000000..340bab6b1
--- /dev/null
+++ b/docs/functions_i.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_i.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>icon
+: <a class="el" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">_RemminaIcon</a>
+</li>
+<li>icon_name
+: <a class="el" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">_RemminaProtocolPlugin</a>
+</li>
+<li>icon_name_ssh
+: <a class="el" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">_RemminaProtocolPlugin</a>
+</li>
+<li>id
+: <a class="el" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature</a>
+</li>
+<li>image_menu_item
+: <a class="el" href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4">_RemminaAppletMenuItem</a>
+</li>
+<li>import_func
+: <a class="el" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">_RemminaFilePlugin</a>
+</li>
+<li>import_test_func
+: <a class="el" href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4">_RemminaFilePlugin</a>
+</li>
+<li>init
+: <a class="el" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56">_RemminaSecretPlugin</a>
+</li>
+<li>init_func
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">_RemminaSSHTunnel</a>
+</li>
+<li>init_order
+: <a class="el" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">_RemminaSecretPlugin</a>
+</li>
+<li>init_save_creds
+: <a class="el" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">remmina_masterthread_exec_data</a>
+</li>
+<li>initialized
+: <a class="el" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">_RemminaMainPriv</a>
+</li>
+<li>instance
+: <a class="el" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">rf_context</a>
+</li>
+<li>interval
+: <a class="el" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">rsSchedData</a>
+</li>
+<li>is_main_thread
+: <a class="el" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">_RemminaPluginService</a>
+</li>
+<li>is_reconnecting
+: <a class="el" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context</a>
+</li>
+<li>is_service_available
+: <a class="el" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin</a>
+</li>
+<li>is_tunnel
+: <a class="el" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">_RemminaSSH</a>
+</li>
+<li>item_type
+: <a class="el" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">_RemminaAppletMenuItem</a>
+</li>
+<li>iter
+: <a class="el" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">_RemminaPluginNxData</a>
+, <a class="el" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">mpchanger_params</a>
+</li>
+<li>iterate_handler
+: <a class="el" href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0">_RemminaAvahiPriv</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_k.html b/docs/functions_k.html
new file mode 100644
index 000000000..2537e400e
--- /dev/null
+++ b/docs/functions_k.html
@@ -0,0 +1,135 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_k.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_k"></a>- k -</h3><ul>
+<li>kex_algorithms
+: <a class="el" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">_RemminaSSH</a>
+</li>
+<li>key
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">_RemminaPluginVncEvent</a>
+</li>
+<li>key_code
+: <a class="el" href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151">remmina_plugin_rdp_event</a>
+</li>
+<li>key_event
+: <a class="el" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">remmina_plugin_rdp_event</a>
+</li>
+<li>keyboard_layout_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keyboard_layout_label
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keyboard_layout_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keycode
+: <a class="el" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">_RemminaKeyVal</a>
+</li>
+<li>keymap
+: <a class="el" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">rf_context</a>
+</li>
+<li>keystrokes
+: <a class="el" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref</a>
+</li>
+<li>keyval
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">_RemminaKeyChooserArguments</a>
+, <a class="el" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">_RemminaKeyVal</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87">_RemminaPluginVncEvent</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_l.html b/docs/functions_l.html
new file mode 100644
index 000000000..518483f43
--- /dev/null
+++ b/docs/functions_l.html
@@ -0,0 +1,184 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>label
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">_RemminaPluginSpiceXferWidgets</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6">remmina_masterthread_exec_data</a>
+</li>
+<li>label_pleasewait
+: <a class="el" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">PCon_Spinner</a>
+</li>
+<li>label_status
+: <a class="el" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">_RemminaStringList</a>
+</li>
+<li>label_terminal_background
+: <a class="el" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_bright_colors
+: <a class="el" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_cursor_color
+: <a class="el" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_foreground
+: <a class="el" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_normal_colors
+: <a class="el" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">_RemminaPrefDialog</a>
+</li>
+<li>label_title
+: <a class="el" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">_RemminaStringList</a>
+</li>
+<li>last_quickconnect_protocol
+: <a class="el" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">_RemminaPref</a>
+</li>
+<li>last_success
+: <a class="el" href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd">_RemminaPref</a>
+</li>
+<li>launch_item
+: <a class="el" href="struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689">_RemminaAppletMenuClass</a>
+</li>
+<li>left
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>listen_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>listen_sock
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">_RemminaPluginVncData</a>
+</li>
+<li>liststore_items
+: <a class="el" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">_RemminaStringList</a>
+</li>
+<li>load_event
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">_RemminaPluginWWWData</a>
+</li>
+<li>localdir
+: <a class="el" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">_RemminaFTPTask</a>
+</li>
+<li>localdisplay
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">_RemminaSSHTunnel</a>
+</li>
+<li>localport
+: <a class="el" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">_RemminaSSHTunnel</a>
+</li>
+<li>log_buffer
+: <a class="el" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">_RemminaPluginExecData</a>
+</li>
+<li>log_callback
+: <a class="el" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">_RemminaNXSession</a>
+</li>
+<li>log_print
+: <a class="el" href="struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de">_RemminaPluginService</a>
+</li>
+<li>log_printf
+: <a class="el" href="struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d">_RemminaPluginService</a>
+</li>
+<li>log_view
+: <a class="el" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">_RemminaPluginExecData</a>
+</li>
+<li>loop
+: <a class="el" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">MpRunInfo</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_m.html b/docs/functions_m.html
new file mode 100644
index 000000000..a533ae030
--- /dev/null
+++ b/docs/functions_m.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_m.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>main_channel
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">_RemminaPluginSpiceData</a>
+</li>
+<li>main_height
+: <a class="el" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">_RemminaPref</a>
+</li>
+<li>main_maximize
+: <a class="el" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">_RemminaPref</a>
+</li>
+<li>main_sort_column_id
+: <a class="el" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">_RemminaPref</a>
+</li>
+<li>main_sort_order
+: <a class="el" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">_RemminaPref</a>
+</li>
+<li>main_width
+: <a class="el" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">_RemminaPref</a>
+</li>
+<li>manager_dialog
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">_RemminaPluginNxData</a>
+</li>
+<li>manager_selected
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">_RemminaPluginNxData</a>
+</li>
+<li>manager_started
+: <a class="el" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">_RemminaPluginNxData</a>
+</li>
+<li>master
+: <a class="el" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">_RemminaSSHShell</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61">remmina_masterthread_exec_data</a>
+</li>
+<li>max_channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">_RemminaSSHTunnel</a>
+</li>
+<li>menu
+: <a class="el" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">_RemminaAppletMenu</a>
+</li>
+<li>menu_header_button
+: <a class="el" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">_RemminaMain</a>
+</li>
+<li>menu_popup
+: <a class="el" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">_RemminaMain</a>
+</li>
+<li>menu_popup_full
+: <a class="el" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">_RemminaMain</a>
+</li>
+<li>menuanimation_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>menuitem_connection_quit
+: <a class="el" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">_RemminaMain</a>
+</li>
+<li>menuitem_view_mode_list
+: <a class="el" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">_RemminaMain</a>
+</li>
+<li>menuitem_view_mode_tree
+: <a class="el" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">_RemminaMain</a>
+</li>
+<li>message
+: <a class="el" href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>monitor_layout
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">remmina_plugin_rdp_event</a>
+</li>
+<li>mouse_event
+: <a class="el" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">remmina_plugin_rdp_event</a>
+</li>
+<li>mp
+: <a class="el" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">MpRunInfo</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050">remmina_masterthread_exec_data</a>
+</li>
+<li>mu
+: <a class="el" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">onMainThread_cb_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_n.html b/docs/functions_n.html
new file mode 100644
index 000000000..085e327ed
--- /dev/null
+++ b/docs/functions_n.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_n.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>name
+: <a class="el" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd">_RemminaGroupData</a>
+, <a class="el" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af">_RemminaToolPlugin</a>
+, <a class="el" href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2">distro_info</a>
+, <a class="el" href="structlsb__distro__info.html#a251763a49054183774e2082595537e47">lsb_distro_info</a>
+</li>
+<li>new_task
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343">_RemminaFTPClientClass</a>
+</li>
+<li>ninvalid
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>nocodec
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>notebook_preferences
+: <a class="el" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">_RemminaPrefDialog</a>
+</li>
+<li>num_channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">_RemminaSSHTunnel</a>
+</li>
+<li>nx
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">_RemminaPluginNxData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_o.html b/docs/functions_o.html
new file mode 100644
index 000000000..963b0d246
--- /dev/null
+++ b/docs/functions_o.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_o.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>object_id_seq
+: <a class="el" href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960">rf_context</a>
+</li>
+<li>object_table
+: <a class="el" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">rf_context</a>
+</li>
+<li>open_connection
+: <a class="el" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">_RemminaPluginService</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">_RemminaProtocolPlugin</a>
+</li>
+<li>open_dir
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7">_RemminaFTPClientClass</a>
+</li>
+<li>opt1
+: <a class="el" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">_RemminaProtocolSettingOpt</a>
+</li>
+<li>opt2
+: <a class="el" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867">_RemminaProtocolSettingOpt</a>
+</li>
+<li>opt3
+: <a class="el" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">_RemminaProtocolFeature</a>
+</li>
+<li>orig_handler
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">_RemminaPluginNxData</a>
+</li>
+<li>orig_keycode
+: <a class="el" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">remmina_plugin_rdp_keymap_entry</a>
+</li>
+<li>orphaned
+: <a class="el" href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4">rf_context</a>
+</li>
+<li>output_fd
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223">_RemminaPluginXdmcpData</a>
+</li>
+<li>override_view_file_mode_to_list
+: <a class="el" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">_RemminaMainPriv</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_p.html b/docs/functions_p.html
new file mode 100644
index 000000000..1603cf4ad
--- /dev/null
+++ b/docs/functions_p.html
@@ -0,0 +1,446 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_p.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>p
+: <a class="el" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data</a>
+</li>
+<li>palette
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563">_RemminaPluginSshData</a>
+</li>
+<li>parent
+: <a class="el" href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510">_RemminaTpHandler</a>
+</li>
+<li>parent_class
+: <a class="el" href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5">_RemminaAppletMenuClass</a>
+, <a class="el" href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a">_RemminaAppletMenuItemClass</a>
+, <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279">_RemminaCellRendererPixbufClass</a>
+, <a class="el" href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19">_RemminaChatWindowClass</a>
+, <a class="el" href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab">_RemminaConnectionWindowClass</a>
+, <a class="el" href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f">_RemminaFileEditorClass</a>
+, <a class="el" href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce">_RemminaFTPClientClass</a>
+, <a class="el" href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af">_RemminaLogWindowClass</a>
+, <a class="el" href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9">_RemminaPluginRdpsetGridClass</a>
+, <a class="el" href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2">_RemminaProtocolWidgetClass</a>
+, <a class="el" href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f">_RemminaScrolledViewportClass</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d">_RemminaSFTPClientClass</a>
+, <a class="el" href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f">_RemminaTpHandlerClass</a>
+</li>
+<li>passphrase
+: <a class="el" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">_RemminaSSH</a>
+</li>
+<li>password
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">_RemminaSSH</a>
+, <a class="el" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">mpchanger_params</a>
+</li>
+<li>path
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9">remmina_masterthread_exec_data</a>
+</li>
+<li>pcount
+: <a class="el" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">ProfilesData</a>
+</li>
+<li>pdatestr
+: <a class="el" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">ProfilesData</a>
+</li>
+<li>periodic_rmnews_get_count
+: <a class="el" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref</a>
+</li>
+<li>periodic_rmnews_last_get
+: <a class="el" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref</a>
+</li>
+<li>periodic_rmnews_uuid_prefix
+: <a class="el" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_last_sent
+: <a class="el" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_permitted
+: <a class="el" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_uuid_prefix
+: <a class="el" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref</a>
+</li>
+<li>pflags
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>pFormatDataRequest
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c">remmina_plugin_rdp_event</a>
+</li>
+<li>pFormatList
+: <a class="el" href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082">remmina_plugin_rdp_event</a>
+</li>
+<li>pid
+: <a class="el" href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">_RemminaPluginXdmcpData</a>
+</li>
+<li>pixmap
+: <a class="el" href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b">rf_bitmap</a>
+, <a class="el" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">rf_glyph</a>
+</li>
+<li>plugin
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>plugin_can_scale
+: <a class="el" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">_RemminaConnectionObject</a>
+</li>
+<li>pointer
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">_RemminaPluginVncEvent</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf">rf_pointer</a>
+</li>
+<li>popup_time
+: <a class="el" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">_RemminaIcon</a>
+</li>
+<li>port
+: <a class="el" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">_RemminaSSH</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">_RemminaSSHTunnel</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">_RemminaTpChannelHandler</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9">remmina_masterthread_exec_data</a>
+</li>
+<li>pos
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>postconnect_error
+: <a class="el" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">rf_context</a>
+</li>
+<li>pref_get_scale_quality
+: <a class="el" href="struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290">_RemminaPluginService</a>
+</li>
+<li>pref_get_ssh_loglevel
+: <a class="el" href="struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b">_RemminaPluginService</a>
+</li>
+<li>pref_get_ssh_parseconfig
+: <a class="el" href="struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2">_RemminaPluginService</a>
+</li>
+<li>pref_get_sshtunnel_port
+: <a class="el" href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5">_RemminaPluginService</a>
+</li>
+<li>pref_get_value
+: <a class="el" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService</a>
+</li>
+<li>pref_keymap_get_keyval
+: <a class="el" href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2">_RemminaPluginService</a>
+</li>
+<li>pref_label
+: <a class="el" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">_RemminaPrefPlugin</a>
+</li>
+<li>pref_set_value
+: <a class="el" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">_RemminaPluginService</a>
+</li>
+<li>pressed
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8">_RemminaPluginVncEvent</a>
+</li>
+<li>pressed_keys
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">rf_context</a>
+</li>
+<li>prevent_saving
+: <a class="el" href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488">_RemminaFile</a>
+</li>
+<li>prevent_snap_welcome_message
+: <a class="el" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">_RemminaPref</a>
+</li>
+<li>priv
+: <a class="el" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">_RemminaAppletMenu</a>
+, <a class="el" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">_RemminaAvahi</a>
+, <a class="el" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">_RemminaConnectionWindow</a>
+, <a class="el" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">_RemminaFileEditor</a>
+, <a class="el" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">_RemminaFTPClient</a>
+, <a class="el" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">_RemminaMain</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">_RemminaProtocolWidget</a>
+, <a class="el" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">_RemminaStringList</a>
+</li>
+<li>privkeyfile
+: <a class="el" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">_RemminaSSH</a>
+</li>
+<li>profile_remote_height
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>profile_remote_width
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>progress
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>proto
+: <a class="el" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">_RemminaConnectionObject</a>
+</li>
+<li>proto_count
+: <a class="el" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">ProfilesData</a>
+</li>
+<li>proto_date
+: <a class="el" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">ProfilesData</a>
+</li>
+<li>proto_widget
+: <a class="el" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">_RemminaTpChannelHandler</a>
+</li>
+<li>protocol
+: <a class="el" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">_RemminaTpChannelHandler</a>
+, <a class="el" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">ProfilesData</a>
+</li>
+<li>protocol_plugin_changed_certificate
+: <a class="el" href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_close
+: <a class="el" href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_open
+: <a class="el" href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_receive
+: <a class="el" href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_desktop_resize
+: <a class="el" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_emit_signal
+: <a class="el" href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_expand
+: <a class="el" href="struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_file
+: <a class="el" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_height
+: <a class="el" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_width
+: <a class="el" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_has_error
+: <a class="el" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_auth
+: <a class="el" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_authx509
+: <a class="el" href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_certificate
+: <a class="el" href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_cacert
+: <a class="el" href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_cacrl
+: <a class="el" href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_clientcert
+: <a class="el" href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_clientkey
+: <a class="el" href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_domain
+: <a class="el" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_password
+: <a class="el" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_savepassword
+: <a class="el" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_username
+: <a class="el" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_hide
+: <a class="el" href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_save_cred
+: <a class="el" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show
+: <a class="el" href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show_listen
+: <a class="el" href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show_retry
+: <a class="el" href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_is_closed
+: <a class="el" href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_register_hostkey
+: <a class="el" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_send_keys_signals
+: <a class="el" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_display
+: <a class="el" href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_error
+: <a class="el" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_expand
+: <a class="el" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_height
+: <a class="el" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_width
+: <a class="el" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_signal_connection_closed
+: <a class="el" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_signal_connection_opened
+: <a class="el" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_ssh_exec
+: <a class="el" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_direct_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_reverse_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_xport_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_unlock_dynres
+: <a class="el" href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_update_align
+: <a class="el" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">_RemminaPluginService</a>
+</li>
+<li>protocol_widget
+: <a class="el" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context</a>
+</li>
+<li>protocolwidget_emit_signal
+: <a class="el" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpdestroy
+: <a class="el" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpprogress
+: <a class="el" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpshowretry
+: <a class="el" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_panelshowlisten
+: <a class="el" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">remmina_masterthread_exec_data</a>
+</li>
+<li>proxy_cookie
+: <a class="el" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">_RemminaNXSession</a>
+</li>
+<li>proxy_pid
+: <a class="el" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">_RemminaNXSession</a>
+</li>
+<li>proxy_watch_source
+: <a class="el" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">_RemminaNXSession</a>
+</li>
+<li>proxycommand
+: <a class="el" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">_RemminaSSH</a>
+</li>
+<li>pt_cond
+: <a class="el" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>pt_mutex
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_q.html b/docs/functions_q.html
new file mode 100644
index 000000000..6f80a3c82
--- /dev/null
+++ b/docs/functions_q.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_q.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_q"></a>- q -</h3><ul>
+<li>quality_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>quality_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>quality_values
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>query_feature
+: <a class="el" href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de">_RemminaProtocolPlugin</a>
+</li>
+<li>queuecursor_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_surface
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_x
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_y
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_h
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_w
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_x
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_y
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">_RemminaPluginVncData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_r.html b/docs/functions_r.html
new file mode 100644
index 000000000..13fa1f479
--- /dev/null
+++ b/docs/functions_r.html
@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>rcbutton
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>rdpdr_data
+: <a class="el" href="structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4">rf_context</a>
+</li>
+<li>rdpgfxchan
+: <a class="el" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rf_context</a>
+</li>
+<li>rdpsnd_options
+: <a class="el" href="structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f">rf_context</a>
+</li>
+<li>ready
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">_RemminaPluginXdmcpData</a>
+</li>
+<li>recent_maximum
+: <a class="el" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">_RemminaPref</a>
+</li>
+<li>reconnect_maxattempts
+: <a class="el" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">rf_context</a>
+</li>
+<li>reconnect_nattempt
+: <a class="el" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">rf_context</a>
+</li>
+<li>reg
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>register_plugin
+: <a class="el" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService</a>
+</li>
+<li>remmina_file
+: <a class="el" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">_RemminaConnectionObject</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>remmina_file_name
+: <a class="el" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref</a>
+</li>
+<li>remmina_plugin_thread
+: <a class="el" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">rf_context</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_GDI_INIT
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6">rf_context</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_NO_H264
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982">rf_context</a>
+</li>
+<li>REMMINA_POSTCONNECT_ERROR_OK
+: <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68">rf_context</a>
+</li>
+<li>remmina_protocol_widget_get_current_scale_mode
+: <a class="el" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService</a>
+</li>
+<li>remminafile
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9">remmina_masterthread_exec_data</a>
+</li>
+<li>remotedir
+: <a class="el" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">_RemminaFTPTask</a>
+</li>
+<li>remotedisplay
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">_RemminaSSHTunnel</a>
+</li>
+<li>renderer
+: <a class="el" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">_RemminaCellRendererPixbuf</a>
+</li>
+<li>request
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">_RemminaPluginWWWData</a>
+</li>
+<li>requestedFormatId
+: <a class="el" href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3">rf_clipboard</a>
+</li>
+<li>resolutions
+: <a class="el" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref</a>
+</li>
+<li>resolutions_list
+: <a class="el" href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05">_RemminaPrefDialogPriv</a>
+</li>
+<li>response
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">_RemminaKeyChooserArguments</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">_RemminaNXSession</a>
+, <a class="el" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">MpRunInfo</a>
+</li>
+<li>response_callback
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543">remmina_masterthread_exec_data</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">RemminaMessagePanelPrivate</a>
+</li>
+<li>response_callback_data
+: <a class="el" href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658">remmina_masterthread_exec_data</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">RemminaMessagePanelPrivate</a>
+</li>
+<li>response_pos
+: <a class="el" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">_RemminaNXSession</a>
+</li>
+<li>ret_mp
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1">remmina_masterthread_exec_data</a>
+</li>
+<li>retptr
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>retval
+: <a class="el" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">_RemminaUnlockDialog</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>rfi
+: <a class="el" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rf_clipboard</a>
+</li>
+<li>rfx
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>rfx_context
+: <a class="el" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rf_context</a>
+</li>
+<li>rgb_buffer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">_RemminaPluginVncData</a>
+</li>
+<li>rmnews_button_close
+: <a class="el" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_defaultcl_button
+: <a class="el" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_defaultcl_label
+: <a class="el" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_label
+: <a class="el" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_stats_switch
+: <a class="el" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_text_view
+: <a class="el" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">_RemminaNewsDialog</a>
+</li>
+<li>rowref
+: <a class="el" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">_RemminaFTPTask</a>
+</li>
+<li>running
+: <a class="el" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">_RemminaSSHTunnel</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_s.html b/docs/functions_s.html
new file mode 100644
index 000000000..0fb2a0278
--- /dev/null
+++ b/docs/functions_s.html
@@ -0,0 +1,447 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_s.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>save_password
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>save_view_mode
+: <a class="el" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref</a>
+</li>
+<li>sb
+: <a class="el" href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8">_RemminaAvahiPriv</a>
+</li>
+<li>scale
+: <a class="el" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">onMainThread_cb_data</a>
+, <a class="el" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context</a>
+</li>
+<li>scale_height
+: <a class="el" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">rf_context</a>
+</li>
+<li>scale_quality
+: <a class="el" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">_RemminaPref</a>
+</li>
+<li>scale_width
+: <a class="el" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">rf_context</a>
+</li>
+<li>scale_x
+: <a class="el" href="structrf__context.html#a584505347366c40e6efa710353d4264f">rf_context</a>
+</li>
+<li>scale_y
+: <a class="el" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">rf_context</a>
+</li>
+<li>scalemode
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>scaler_expand
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>scanline_pad
+: <a class="el" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">rf_context</a>
+</li>
+<li>scanstring
+: <a class="el" href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7">lsb_distro_info</a>
+</li>
+<li>SCDW_ABORTING
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b">rf_clipboard</a>
+</li>
+<li>SCDW_BUSY_WAIT
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e">rf_clipboard</a>
+</li>
+<li>SCDW_NONE
+: <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1">rf_clipboard</a>
+</li>
+<li>screenshot_name
+: <a class="el" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref</a>
+</li>
+<li>screenshot_path
+: <a class="el" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref</a>
+</li>
+<li>scrolled_container
+: <a class="el" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">_RemminaConnectionObject</a>
+</li>
+<li>search_bar
+: <a class="el" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">_RemminaMain</a>
+</li>
+<li>search_toggle
+: <a class="el" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">_RemminaMain</a>
+</li>
+<li>searchentrychange_timeout_source_id
+: <a class="el" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">mpchanger_params</a>
+</li>
+<li>secret
+: <a class="el" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">_RemminaPref</a>
+</li>
+<li>selected_filename
+: <a class="el" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">_RemminaMainPriv</a>
+</li>
+<li>selected_name
+: <a class="el" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">_RemminaMainPriv</a>
+</li>
+<li>send
+: <a class="el" href="struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372">_RemminaChatWindowClass</a>
+</li>
+<li>send_keystrokes
+: <a class="el" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">_RemminaProtocolPlugin</a>
+</li>
+<li>send_text
+: <a class="el" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">_RemminaChatWindow</a>
+</li>
+<li>server
+: <a class="el" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">_RemminaSSH</a>
+</li>
+<li>server_sock
+: <a class="el" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">_RemminaSSHTunnel</a>
+</li>
+<li>session
+: <a class="el" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">_RemminaPluginSpiceData</a>
+, <a class="el" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">_RemminaSSH</a>
+</li>
+<li>session_display
+: <a class="el" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">_RemminaNXSession</a>
+</li>
+<li>session_id
+: <a class="el" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">_RemminaNXSession</a>
+</li>
+<li>session_list
+: <a class="el" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">_RemminaNXSession</a>
+</li>
+<li>session_list_state
+: <a class="el" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">_RemminaNXSession</a>
+</li>
+<li>session_manager_start_handler
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">_RemminaPluginNxData</a>
+</li>
+<li>session_parameters
+: <a class="el" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">_RemminaNXSession</a>
+</li>
+<li>setting
+: <a class="el" href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b">remmina_masterthread_exec_data</a>
+</li>
+<li>settings
+: <a class="el" href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd">_RemminaFile</a>
+, <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">_RemminaPluginWWWData</a>
+, <a class="el" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">rf_context</a>
+</li>
+<li>sftp
+: <a class="el" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">_RemminaSFTPClient</a>
+</li>
+<li>sftp_client_confirm_resume
+: <a class="el" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">remmina_masterthread_exec_data</a>
+</li>
+<li>sftp_sess
+: <a class="el" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">_RemminaSFTP</a>
+</li>
+<li>shell
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">_RemminaPluginSshData</a>
+</li>
+<li>shortcutkey_autofit
+: <a class="el" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref</a>
+</li>
+<li>shortcutkey_disconnect
+: <a class="el" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref</a>
+</li>
+<li>shortcutkey_dynres
+: <a class="el" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">_RemminaPref</a>
+</li>
+<li>shortcutkey_fullscreen
+: <a class="el" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref</a>
+</li>
+<li>shortcutkey_grab
+: <a class="el" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref</a>
+</li>
+<li>shortcutkey_minimize
+: <a class="el" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref</a>
+</li>
+<li>shortcutkey_nexttab
+: <a class="el" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref</a>
+</li>
+<li>shortcutkey_prevtab
+: <a class="el" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref</a>
+</li>
+<li>shortcutkey_scale
+: <a class="el" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref</a>
+</li>
+<li>shortcutkey_screenshot
+: <a class="el" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref</a>
+</li>
+<li>shortcutkey_toolbar
+: <a class="el" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref</a>
+</li>
+<li>shortcutkey_viewonly
+: <a class="el" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref</a>
+</li>
+<li>show_only
+: <a class="el" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">sc_tdata</a>
+</li>
+<li>sid
+: <a class="el" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">mpchanger_params</a>
+</li>
+<li>signal_name
+: <a class="el" href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada">_RemminaProtocolWidgetSignalData</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910">remmina_masterthread_exec_data</a>
+</li>
+<li>simple_poll
+: <a class="el" href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304">_RemminaAvahiPriv</a>
+</li>
+<li>size
+: <a class="el" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">_RemminaFTPTask</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba">remmina_plugin_rdp_event</a>
+</li>
+<li>sk
+: <a class="el" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">onMainThread_cb_data</a>
+</li>
+<li>slave
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">_RemminaSSHShell</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e">remmina_masterthread_exec_data</a>
+</li>
+<li>small_toolbutton
+: <a class="el" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">_RemminaPref</a>
+</li>
+<li>socket
+: <a class="el" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">_RemminaPluginXdmcpData</a>
+</li>
+<li>socket_id
+: <a class="el" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">_RemminaPluginXdmcpData</a>
+</li>
+<li>socketbuffers
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">_RemminaSSHTunnel</a>
+</li>
+<li>sockets
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">_RemminaSSHTunnel</a>
+</li>
+<li>source
+: <a class="el" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">rsSchedData</a>
+</li>
+<li>spinner
+: <a class="el" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">PCon_Spinner</a>
+</li>
+<li>spsettings
+: <a class="el" href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5">_RemminaFile</a>
+</li>
+<li>srcBpp
+: <a class="el" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">rf_context</a>
+</li>
+<li>srv_clip_data_wait
+: <a class="el" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">rf_clipboard</a>
+</li>
+<li>srv_data
+: <a class="el" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">rf_clipboard</a>
+</li>
+<li>ssh
+: <a class="el" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">_RemminaSFTP</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">_RemminaSSHTunnel</a>
+</li>
+<li>ssh_loglevel
+: <a class="el" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref</a>
+</li>
+<li>ssh_mutex
+: <a class="el" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">_RemminaSSH</a>
+</li>
+<li>ssh_parseconfig
+: <a class="el" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref</a>
+</li>
+<li>ssh_setting
+: <a class="el" href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb">_RemminaProtocolPlugin</a>
+</li>
+<li>ssh_tcp_keepcnt
+: <a class="el" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref</a>
+</li>
+<li>ssh_tcp_keepidle
+: <a class="el" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref</a>
+</li>
+<li>ssh_tcp_keepintvl
+: <a class="el" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref</a>
+</li>
+<li>ssh_tcp_usrtimeout
+: <a class="el" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref</a>
+</li>
+<li>ssh_tunnel_enabled
+: <a class="el" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">_RemminaAppletMenuItem</a>
+</li>
+<li>ssh_tunnels
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>sshtunnel_port
+: <a class="el" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref</a>
+</li>
+<li>started
+: <a class="el" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">_RemminaAvahi</a>
+</li>
+<li>state
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">_RemminaKeyChooserArguments</a>
+</li>
+<li>statsroot
+: <a class="el" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">sc_tdata</a>
+</li>
+<li>status
+: <a class="el" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">_RemminaNXSession</a>
+</li>
+<li>statusbar_main
+: <a class="el" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">_RemminaMain</a>
+</li>
+<li>statusLabel
+: <a class="el" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">mpchanger_params</a>
+</li>
+<li>store
+: <a class="el" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">mpchanger_params</a>
+</li>
+<li>store_password
+: <a class="el" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">_RemminaSecretPlugin</a>
+</li>
+<li>str
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea">remmina_masterthread_exec_data</a>
+</li>
+<li>stricthostkeycheck
+: <a class="el" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">_RemminaSSH</a>
+</li>
+<li>strpasswordlabel
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>surface
+: <a class="el" href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b">rf_bitmap</a>
+, <a class="el" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">rf_context</a>
+</li>
+<li>sw
+: <a class="el" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">_RemminaPluginExecData</a>
+</li>
+<li>sw_gdi
+: <a class="el" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">rf_context</a>
+</li>
+<li>switch_options_deny_screenshot_clipboard
+: <a class="el" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">_RemminaPrefDialog</a>
+</li>
+<li>switch_options_remember_last_view_mode
+: <a class="el" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">_RemminaPrefDialog</a>
+</li>
+<li>switch_permit_send_stats
+: <a class="el" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">_RemminaPrefDialog</a>
+</li>
+<li>switch_security_use_master_password
+: <a class="el" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">_RemminaPrefDialog</a>
+</li>
+<li>switch_terminal_bold
+: <a class="el" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">_RemminaPrefDialog</a>
+</li>
+<li>switch_terminal_font_system
+: <a class="el" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">_RemminaPrefDialog</a>
+</li>
+<li>sync
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>sync_wait_cond
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>sync_wait_mutex
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>system
+: <a class="el" href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf">rf_clipboard</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_t.html b/docs/functions_t.html
new file mode 100644
index 000000000..80c35786f
--- /dev/null
+++ b/docs/functions_t.html
@@ -0,0 +1,216 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_t.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>tab_mode
+: <a class="el" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref</a>
+</li>
+<li>table
+: <a class="el" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">mpchanger_params</a>
+</li>
+<li>targetlist
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1">remmina_masterthread_exec_data</a>
+</li>
+<li>taskid
+: <a class="el" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">_RemminaSFTPClient</a>
+</li>
+<li>tasktype
+: <a class="el" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">_RemminaFTPTask</a>
+</li>
+<li>terminal
+: <a class="el" href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1">remmina_masterthread_exec_data</a>
+</li>
+<li>text
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">_RemminaPluginVncCuttextParam</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">_RemminaPluginVncEvent</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de">remmina_masterthread_exec_data</a>
+</li>
+<li>textlen
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">_RemminaPluginVncCuttextParam</a>
+</li>
+<li>theme_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>thread
+: <a class="el" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">_RemminaPluginSshData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">_RemminaPluginXdmcpData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">_RemminaSFTPClient</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">_RemminaSSHTunnel</a>
+</li>
+<li>thread_abort
+: <a class="el" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">_RemminaSFTPClient</a>
+</li>
+<li>thread_cancelled
+: <a class="el" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">rf_context</a>
+</li>
+<li>title
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>toolbar_pin_down
+: <a class="el" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">_RemminaPref</a>
+</li>
+<li>toolbar_place
+: <a class="el" href="struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d">_RemminaConnectionWindowClass</a>
+</li>
+<li>toolbar_placement
+: <a class="el" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">_RemminaPref</a>
+</li>
+<li>tooltip
+: <a class="el" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">_RemminaFTPTask</a>
+</li>
+<li>top
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>transfer_clip_cond
+: <a class="el" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">rf_clipboard</a>
+</li>
+<li>transfer_clip_mutex
+: <a class="el" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">rf_clipboard</a>
+</li>
+<li>translated_keycode
+: <a class="el" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">remmina_plugin_rdp_keymap_entry</a>
+</li>
+<li>tree_files_list
+: <a class="el" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">_RemminaMain</a>
+</li>
+<li>treeview_items
+: <a class="el" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">_RemminaStringList</a>
+</li>
+<li>treeview_selection
+: <a class="el" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">_RemminaStringList</a>
+</li>
+<li>treeviewcolumn_item
+: <a class="el" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">_RemminaStringList</a>
+</li>
+<li>tunnel_entrance_host
+: <a class="el" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH</a>
+</li>
+<li>tunnel_entrance_port
+: <a class="el" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH</a>
+</li>
+<li>tunnel_type
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">_RemminaSSHTunnel</a>
+</li>
+<li>two_columns
+: <a class="el" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">_RemminaStringListPriv</a>
+</li>
+<li>type
+: <a class="el" href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176">_RemminaToolPlugin</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589">remmina_plugin_rdp_ui_object</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_u.html b/docs/functions_u.html
new file mode 100644
index 000000000..530b0fc0a
--- /dev/null
+++ b/docs/functions_u.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_u.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>ui_handler
+: <a class="el" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">rf_context</a>
+</li>
+<li>ui_queue
+: <a class="el" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">rf_context</a>
+</li>
+<li>ui_queue_mutex
+: <a class="el" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">rf_context</a>
+</li>
+<li>ui_register
+: <a class="el" href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524">_RemminaPluginService</a>
+</li>
+<li>uid
+: <a class="el" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">_RemminaPref</a>
+</li>
+<li>unicode_code
+: <a class="el" href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b">remmina_plugin_rdp_event</a>
+</li>
+<li>unlock_dynres
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3">_RemminaProtocolWidgetClass</a>
+</li>
+<li>unlock_init
+: <a class="el" href="struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b">_RemminaUnlockDialog</a>
+</li>
+<li>unlock_password
+: <a class="el" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">_RemminaPrefDialog</a>
+</li>
+<li>unlock_repassword
+: <a class="el" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">_RemminaPrefDialog</a>
+</li>
+<li>unlock_timeout
+: <a class="el" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">_RemminaPrefDialog</a>
+</li>
+<li>up
+: <a class="el" href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094">remmina_plugin_rdp_event</a>
+</li>
+<li>update_align
+: <a class="el" href="struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99">_RemminaProtocolWidgetClass</a>
+</li>
+<li>ureg
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>url
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">_RemminaPluginWWWData</a>
+</li>
+<li>use_client_keymap
+: <a class="el" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">rf_context</a>
+</li>
+<li>use_client_keymap_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>use_master_password
+: <a class="el" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">_RemminaPref</a>
+</li>
+<li>use_modifiers
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">_RemminaKeyChooserArguments</a>
+</li>
+<li>user
+: <a class="el" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">_RemminaSSH</a>
+</li>
+<li>user_cancelled
+: <a class="el" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">rf_context</a>
+</li>
+<li>user_data
+: <a class="el" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">_RemminaSSHShell</a>
+</li>
+<li>username
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">mpchanger_params</a>
+</li>
+<li>ustats_toggle
+: <a class="el" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">_RemminaMain</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_v.html b/docs/functions_v.html
new file mode 100644
index 000000000..ecf3e24cc
--- /dev/null
+++ b/docs/functions_v.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_v.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>validation_func
+: <a class="el" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">_RemminaStringListPriv</a>
+</li>
+<li>vbox
+: <a class="el" href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77">_RemminaFTPClient</a>
+, <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>version
+: <a class="el" href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b">_RemminaToolPlugin</a>
+</li>
+<li>view_file_mode
+: <a class="el" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">_RemminaPref</a>
+</li>
+<li>view_toggle_button
+: <a class="el" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">_RemminaMain</a>
+</li>
+<li>viewport
+: <a class="el" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">_RemminaConnectionObject</a>
+</li>
+<li>viewport_motion
+: <a class="el" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">_RemminaScrolledViewport</a>
+</li>
+<li>viewport_motion_handler
+: <a class="el" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">_RemminaScrolledViewport</a>
+</li>
+<li>visual
+: <a class="el" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">rf_context</a>
+</li>
+<li>vnc_buffer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_pipe
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_queue
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_queue_mutex
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">_RemminaPluginVncData</a>
+</li>
+<li>vte
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">_RemminaPluginSshData</a>
+</li>
+<li>vte_allow_bold_text
+: <a class="el" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref</a>
+</li>
+<li>vte_font
+: <a class="el" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref</a>
+</li>
+<li>vte_lines
+: <a class="el" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref</a>
+</li>
+<li>vte_session_file
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">_RemminaPluginSshData</a>
+</li>
+<li>vte_shortcutkey_copy
+: <a class="el" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref</a>
+</li>
+<li>vte_shortcutkey_paste
+: <a class="el" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref</a>
+</li>
+<li>vte_shortcutkey_select_all
+: <a class="el" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref</a>
+</li>
+<li>vte_system_colors
+: <a class="el" href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22">_RemminaPref</a>
+</li>
+<li>vte_terminal_set_encoding_and_pty
+: <a class="el" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">remmina_masterthread_exec_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars.html b/docs/functions_vars.html
new file mode 100644
index 000000000..3632c890d
--- /dev/null
+++ b/docs/functions_vars.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>accelgroup_shortcuts
+: <a class="el" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">_RemminaMain</a>
+</li>
+<li>account
+: <a class="el" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">_RemminaTpChannelHandler</a>
+</li>
+<li>action_view_mode_list
+: <a class="el" href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19">_RemminaMain</a>
+</li>
+<li>action_view_mode_tree
+: <a class="el" href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c">_RemminaMain</a>
+</li>
+<li>action_view_quick_connect
+: <a class="el" href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f">_RemminaMain</a>
+</li>
+<li>activate
+: <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1">_RemminaCellRendererPixbufClass</a>
+</li>
+<li>advanced_settings
+: <a class="el" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin</a>
+</li>
+<li>alias
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">_RemminaTpChannelHandler</a>
+</li>
+<li>allow_start
+: <a class="el" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">_RemminaNXSession</a>
+</li>
+<li>always_show_tab
+: <a class="el" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref</a>
+</li>
+<li>applet_enable_avahi
+: <a class="el" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">_RemminaPref</a>
+</li>
+<li>applet_hide_count
+: <a class="el" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref</a>
+</li>
+<li>applet_new_ontop
+: <a class="el" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref</a>
+</li>
+<li>aspectframe
+: <a class="el" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">_RemminaConnectionObject</a>
+</li>
+<li>attach_session
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">_RemminaPluginNxData</a>
+</li>
+<li>attempt_interactive_authentication
+: <a class="el" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">rf_context</a>
+</li>
+<li>audio
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">_RemminaPluginSpiceData</a>
+</li>
+<li>auth
+: <a class="el" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">_RemminaSSH</a>
+</li>
+<li>auth_called
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">_RemminaPluginVncData</a>
+</li>
+<li>auth_first
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">_RemminaPluginVncData</a>
+</li>
+<li>auth_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>authenticated
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">_RemminaPluginWWWData</a>
+, <a class="el" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">_RemminaSSH</a>
+</li>
+<li>auto_scroll_step
+: <a class="el" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref</a>
+</li>
+<li>autostart_file
+: <a class="el" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">_RemminaIcon</a>
+</li>
+<li>avahi
+: <a class="el" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">_RemminaIcon</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars.js b/docs/functions_vars.js
new file mode 100644
index 000000000..84b40c58d
--- /dev/null
+++ b/docs/functions_vars.js
@@ -0,0 +1,27 @@
+var functions_vars =
+[
+ [ "a", "functions_vars.html", null ],
+ [ "b", "functions_vars_b.html", null ],
+ [ "c", "functions_vars_c.html", null ],
+ [ "d", "functions_vars_d.html", null ],
+ [ "e", "functions_vars_e.html", null ],
+ [ "f", "functions_vars_f.html", null ],
+ [ "g", "functions_vars_g.html", null ],
+ [ "h", "functions_vars_h.html", null ],
+ [ "i", "functions_vars_i.html", null ],
+ [ "k", "functions_vars_k.html", null ],
+ [ "l", "functions_vars_l.html", null ],
+ [ "m", "functions_vars_m.html", null ],
+ [ "n", "functions_vars_n.html", null ],
+ [ "o", "functions_vars_o.html", null ],
+ [ "p", "functions_vars_p.html", null ],
+ [ "q", "functions_vars_q.html", null ],
+ [ "r", "functions_vars_r.html", null ],
+ [ "s", "functions_vars_s.html", null ],
+ [ "t", "functions_vars_t.html", null ],
+ [ "u", "functions_vars_u.html", null ],
+ [ "v", "functions_vars_v.html", null ],
+ [ "w", "functions_vars_w.html", null ],
+ [ "x", "functions_vars_x.html", null ],
+ [ "y", "functions_vars_y.html", null ]
+]; \ No newline at end of file
diff --git a/docs/functions_vars_b.html b/docs/functions_vars_b.html
new file mode 100644
index 000000000..d685a990e
--- /dev/null
+++ b/docs/functions_vars_b.html
@@ -0,0 +1,239 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_b.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>background
+: <a class="el" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref</a>
+</li>
+<li>basic_settings
+: <a class="el" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">_RemminaProtocolPlugin</a>
+</li>
+<li>bindlocalhost
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">_RemminaSSHTunnel</a>
+</li>
+<li>bitmap
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507">rf_bitmap</a>
+</li>
+<li>bitsPerPixel
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">_RemminaPluginScreenshotData</a>
+</li>
+<li>box
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">_RemminaPluginWWWData</a>
+</li>
+<li>box_quick_connect
+: <a class="el" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">_RemminaMain</a>
+</li>
+<li>bpp
+: <a class="el" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context</a>
+</li>
+<li>btnDoChange
+: <a class="el" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">mpchanger_params</a>
+</li>
+<li>buffer
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">_RemminaSSHTunnel</a>
+</li>
+<li>buffer_len
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">_RemminaSSHTunnel</a>
+</li>
+<li>buffer_mutex
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">_RemminaPluginVncData</a>
+</li>
+<li>builder
+: <a class="el" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">_RemminaMain</a>
+, <a class="el" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">_RemminaStringList</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">_RemminaUnlockDialog</a>
+</li>
+<li>bus
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">_RemminaTpChannelHandler</a>
+</li>
+<li>button_add
+: <a class="el" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">_RemminaStringList</a>
+</li>
+<li>button_cancel
+: <a class="el" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">PCon_Spinner</a>
+</li>
+<li>button_down
+: <a class="el" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">_RemminaStringList</a>
+</li>
+<li>button_keyboard_auto_fit
+: <a class="el" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_copy
+: <a class="el" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_disconnect
+: <a class="el" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_fullscreen
+: <a class="el" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_grab_keyboard
+: <a class="el" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_host_key
+: <a class="el" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_minimize
+: <a class="el" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_paste
+: <a class="el" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_scaled
+: <a class="el" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_screenshot
+: <a class="el" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_select_all
+: <a class="el" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_switch_tab_left
+: <a class="el" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_switch_tab_right
+: <a class="el" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_toolbar
+: <a class="el" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">_RemminaPrefDialog</a>
+</li>
+<li>button_keyboard_viewonly
+: <a class="el" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">_RemminaPrefDialog</a>
+</li>
+<li>button_make_default
+: <a class="el" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">_RemminaMain</a>
+</li>
+<li>button_mask
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32">_RemminaPluginVncEvent</a>
+</li>
+<li>button_new
+: <a class="el" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">_RemminaMain</a>
+</li>
+<li>button_options_recent_items_clear
+: <a class="el" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">_RemminaPrefDialog</a>
+</li>
+<li>button_options_resolutions
+: <a class="el" href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903">_RemminaPrefDialog</a>
+</li>
+<li>button_quick_connect
+: <a class="el" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">_RemminaMain</a>
+</li>
+<li>button_remove
+: <a class="el" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">_RemminaStringList</a>
+</li>
+<li>button_term_cs
+: <a class="el" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">_RemminaPrefDialog</a>
+</li>
+<li>button_unlock
+: <a class="el" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">_RemminaUnlockDialog</a>
+</li>
+<li>button_unlock_cancel
+: <a class="el" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">_RemminaUnlockDialog</a>
+</li>
+<li>button_up
+: <a class="el" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">_RemminaStringList</a>
+</li>
+<li>bytesPerPixel
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">_RemminaPluginScreenshotData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_c.html b/docs/functions_vars_c.html
new file mode 100644
index 000000000..4a5ea4888
--- /dev/null
+++ b/docs/functions_vars_c.html
@@ -0,0 +1,454 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cacert
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>cacrl
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>cairo_format
+: <a class="el" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">rf_context</a>
+</li>
+<li>call_feature
+: <a class="el" href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1">_RemminaProtocolPlugin</a>
+</li>
+<li>callback
+: <a class="el" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">_RemminaSSH</a>
+</li>
+<li>callback_data
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">_RemminaSSHTunnel</a>
+</li>
+<li>called_from_subthread
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>cancel
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>cancel_task
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93">_RemminaFTPClientClass</a>
+</li>
+<li>cancelled
+: <a class="el" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">remmina_masterthread_exec_data</a>
+</li>
+<li>cb_func_data
+: <a class="el" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">rsSchedData</a>
+</li>
+<li>cb_func_ptr
+: <a class="el" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">rsSchedData</a>
+</li>
+<li>cellrenderertext_item1
+: <a class="el" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">_RemminaStringList</a>
+</li>
+<li>cellrenderertext_item2
+: <a class="el" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">_RemminaStringList</a>
+</li>
+<li>changed_passwords_count
+: <a class="el" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">mpchanger_params</a>
+</li>
+<li>channel
+: <a class="el" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">_RemminaTpChannelHandler</a>
+</li>
+<li>channel_path
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">_RemminaTpChannelHandler</a>
+</li>
+<li>channel_properties
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">_RemminaTpChannelHandler</a>
+</li>
+<li>channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">_RemminaSSHTunnel</a>
+</li>
+<li>channels_out
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">_RemminaSSHTunnel</a>
+</li>
+<li>charset
+: <a class="el" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">_RemminaSSH</a>
+</li>
+<li>chat_receive
+: <a class="el" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">remmina_masterthread_exec_data</a>
+</li>
+<li>chat_window
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>checkbutton_appearance_fullscreen_on_auto
+: <a class="el" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_hide_searchbar
+: <a class="el" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_hide_toolbar
+: <a class="el" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_appearance_show_tabs
+: <a class="el" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_disable_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_hide_totals
+: <a class="el" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_light_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_new_connection_on_top
+: <a class="el" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_applet_start_in_tray
+: <a class="el" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_options_save_settings
+: <a class="el" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">_RemminaPrefDialog</a>
+</li>
+<li>checkbutton_options_ssh_parseconfig
+: <a class="el" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">_RemminaPrefDialog</a>
+</li>
+<li>ciphers
+: <a class="el" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">_RemminaSSH</a>
+</li>
+<li>client
+: <a class="el" href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040">_RemminaAvahiPriv</a>
+, <a class="el" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">_RemminaSFTPClient</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">remmina_masterthread_exec_data</a>
+</li>
+<li>clientcert
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>clientkey
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>clipboard
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context</a>
+</li>
+<li>clipboard_formatdatarequest
+: <a class="el" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_formatdataresponse
+: <a class="el" href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_formatlist
+: <a class="el" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">remmina_plugin_rdp_event</a>
+</li>
+<li>clipboard_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">rf_clipboard</a>
+</li>
+<li>clipboard_timer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">_RemminaPluginVncData</a>
+</li>
+<li>cliprdr
+: <a class="el" href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">rf_context</a>
+</li>
+<li>close_connection
+: <a class="el" href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2">_RemminaProtocolPlugin</a>
+</li>
+<li>closed
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">_RemminaSSHShell</a>
+</li>
+<li>cnnobj
+: <a class="el" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">_RemminaProtocolWidget</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">remmina_masterthread_exec_data</a>
+</li>
+<li>cnnwin
+: <a class="el" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">_RemminaConnectionObject</a>
+</li>
+<li>codeset
+: <a class="el" href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668">remmina_masterthread_exec_data</a>
+</li>
+<li>color0
+: <a class="el" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref</a>
+</li>
+<li>color1
+: <a class="el" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref</a>
+</li>
+<li>color10
+: <a class="el" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref</a>
+</li>
+<li>color11
+: <a class="el" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref</a>
+</li>
+<li>color12
+: <a class="el" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref</a>
+</li>
+<li>color13
+: <a class="el" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref</a>
+</li>
+<li>color14
+: <a class="el" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref</a>
+</li>
+<li>color15
+: <a class="el" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref</a>
+</li>
+<li>color2
+: <a class="el" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref</a>
+</li>
+<li>color3
+: <a class="el" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref</a>
+</li>
+<li>color4
+: <a class="el" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref</a>
+</li>
+<li>color5
+: <a class="el" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref</a>
+</li>
+<li>color6
+: <a class="el" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref</a>
+</li>
+<li>color7
+: <a class="el" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref</a>
+</li>
+<li>color8
+: <a class="el" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref</a>
+</li>
+<li>color9
+: <a class="el" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref</a>
+</li>
+<li>color_pref
+: <a class="el" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref</a>
+</li>
+<li>colorbutton_background
+: <a class="el" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color0
+: <a class="el" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color1
+: <a class="el" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color10
+: <a class="el" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color11
+: <a class="el" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color12
+: <a class="el" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color13
+: <a class="el" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color14
+: <a class="el" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color15
+: <a class="el" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color2
+: <a class="el" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color3
+: <a class="el" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color4
+: <a class="el" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color5
+: <a class="el" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color6
+: <a class="el" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color7
+: <a class="el" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color8
+: <a class="el" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_color9
+: <a class="el" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_cursor
+: <a class="el" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">_RemminaPrefDialog</a>
+</li>
+<li>colorbutton_foreground
+: <a class="el" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">_RemminaPrefDialog</a>
+</li>
+<li>colormap
+: <a class="el" href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523">rf_context</a>
+</li>
+<li>column_files_list_group
+: <a class="el" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">_RemminaMain</a>
+</li>
+<li>combo_quick_connect_protocol
+: <a class="el" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">_RemminaMain</a>
+</li>
+<li>comboboxtext_appearance_fullscreen_toolbar_visibility
+: <a class="el" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_appearance_tab_interface
+: <a class="el" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_appearance_view_mode
+: <a class="el" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_double_click
+: <a class="el" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_scale_quality
+: <a class="el" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">_RemminaPrefDialog</a>
+</li>
+<li>comboboxtext_options_ssh_loglevel
+: <a class="el" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">_RemminaPrefDialog</a>
+</li>
+<li>compact
+: <a class="el" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc">_RemminaProtocolSettingOpt</a>
+</li>
+<li>complete
+: <a class="el" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>composition_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>compression
+: <a class="el" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">_RemminaSSH</a>
+</li>
+<li>connect
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760">_RemminaProtocolWidgetClass</a>
+</li>
+<li>connect_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">_RemminaSSHTunnel</a>
+</li>
+<li>connect_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>connected
+: <a class="el" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">_RemminaConnectionObject</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context</a>
+</li>
+<li>connection
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">_RemminaTpChannelHandler</a>
+</li>
+<li>connection_path
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">_RemminaTpChannelHandler</a>
+</li>
+<li>context
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">_RemminaPluginWWWData</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">_RemminaTpChannelHandler</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">rf_clipboard</a>
+, <a class="el" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">rf_context</a>
+</li>
+<li>count
+: <a class="el" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">rsSchedData</a>
+</li>
+<li>credentials
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">_RemminaPluginWWWData</a>
+</li>
+<li>cursor
+: <a class="el" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0">rf_pointer</a>
+</li>
+<li>cursorblinking_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>cursorshadow_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">_RemminaPluginRdpsetGrid</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_d.html b/docs/functions_vars_d.html
new file mode 100644
index 000000000..4db8cafff
--- /dev/null
+++ b/docs/functions_vars_d.html
@@ -0,0 +1,269 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>dark_tray_icon
+: <a class="el" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref</a>
+</li>
+<li>data
+: <a class="el" href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>data_mgr
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">_RemminaPluginWWWData</a>
+</li>
+<li>datadir_path
+: <a class="el" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">_RemminaPref</a>
+</li>
+<li>datestr
+: <a class="el" href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b">ProfilesData</a>
+</li>
+<li>datetime
+: <a class="el" href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660">_RemminaGroupData</a>
+</li>
+<li>debug
+: <a class="el" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService</a>
+</li>
+<li>default_action
+: <a class="el" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">_RemminaPref</a>
+</li>
+<li>default_domain
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>default_mode
+: <a class="el" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref</a>
+</li>
+<li>default_password
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>default_response
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">_RemminaPluginNxData</a>
+</li>
+<li>default_username
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>deferred_open_size_allocate_handler
+: <a class="el" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">_RemminaConnectionObject</a>
+</li>
+<li>delayed_monitor_layout_handler
+: <a class="el" href="structrf__context.html#a957e6f6867170470689210d55770342e">rf_context</a>
+</li>
+<li>delete_file
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905">_RemminaFTPClientClass</a>
+</li>
+<li>delete_password
+: <a class="el" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">_RemminaSecretPlugin</a>
+</li>
+<li>deny_screenshot_clipboard
+: <a class="el" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">_RemminaPref</a>
+</li>
+<li>description
+: <a class="el" href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9">_RemminaToolPlugin</a>
+</li>
+<li>desktop_orientation_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktop_orientation_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktop_resize
+: <a class="el" href="struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b">_RemminaProtocolWidgetClass</a>
+</li>
+<li>desktop_scale_factor_spin
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>desktopOrientation
+: <a class="el" href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0">remmina_plugin_rdp_event</a>
+</li>
+<li>desktopScaleFactor
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985">remmina_plugin_rdp_event</a>
+</li>
+<li>dest
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">_RemminaSSHTunnel</a>
+</li>
+<li>destroy_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">_RemminaSSHTunnel</a>
+</li>
+<li>destroy_func_callback_data
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">_RemminaSSHTunnel</a>
+</li>
+<li>destroyed
+: <a class="el" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">MpRunInfo</a>
+</li>
+<li>device_scale_factor_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>device_scale_factor_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>deviceScaleFactor
+: <a class="el" href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57">remmina_plugin_rdp_event</a>
+</li>
+<li>dialog
+: <a class="el" href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872">_RemminaFileEditor</a>
+, <a class="el" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">_RemminaStringList</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">_RemminaUnlockDialog</a>
+, <a class="el" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">mpchanger_params</a>
+, <a class="el" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">PCon_Spinner</a>
+</li>
+<li>disable_tray_icon
+: <a class="el" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref</a>
+</li>
+<li>disconnect
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213">_RemminaProtocolWidgetClass</a>
+</li>
+<li>disconnect_func
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">_RemminaSSHTunnel</a>
+</li>
+<li>disconnect_handler
+: <a class="el" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">_RemminaTpChannelHandler</a>
+</li>
+<li>discovered_services
+: <a class="el" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">_RemminaAvahi</a>
+</li>
+<li>dispcontext
+: <a class="el" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context</a>
+</li>
+<li>display
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">_RemminaPluginSpiceData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">_RemminaPluginXdmcpData</a>
+, <a class="el" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">rf_context</a>
+</li>
+<li>display_channel
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">_RemminaPluginSpiceData</a>
+</li>
+<li>document_type
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">_RemminaPluginWWWData</a>
+</li>
+<li>domain
+: <a class="el" href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e">_RemminaToolPlugin</a>
+, <a class="el" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">mpchanger_params</a>
+</li>
+<li>donesize
+: <a class="el" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">_RemminaFTPTask</a>
+</li>
+<li>drawing_area
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context</a>
+</li>
+<li>drdynvc_data
+: <a class="el" href="structrf__context.html#a2a708b989f3e12af802ab4266af39363">rf_context</a>
+</li>
+<li>dtype
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>dynres_unlocked
+: <a class="el" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">_RemminaConnectionObject</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_e.html b/docs/functions_vars_e.html
new file mode 100644
index 000000000..ded32b08f
--- /dev/null
+++ b/docs/functions_vars_e.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_e.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>edit_item
+: <a class="el" href="struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45">_RemminaAppletMenuClass</a>
+</li>
+<li>eDomain
+: <a class="el" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">mpchanger_params</a>
+</li>
+<li>eGroup
+: <a class="el" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">mpchanger_params</a>
+</li>
+<li>encryption
+: <a class="el" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">_RemminaNXSession</a>
+</li>
+<li>entry_func
+: <a class="el" href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e">_RemminaEntryPlugin</a>
+</li>
+<li>entry_options_file_name
+: <a class="el" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_recent_items
+: <a class="el" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_screenshot_name
+: <a class="el" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_scroll
+: <a class="el" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_port
+: <a class="el" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepcnt
+: <a class="el" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepidle
+: <a class="el" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_keepintvl
+: <a class="el" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">_RemminaPrefDialog</a>
+</li>
+<li>entry_options_ssh_tcp_usrtimeout
+: <a class="el" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">_RemminaPrefDialog</a>
+</li>
+<li>entry_quick_connect_server
+: <a class="el" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">_RemminaMain</a>
+</li>
+<li>entry_scrollback_lines
+: <a class="el" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">_RemminaPrefDialog</a>
+</li>
+<li>entry_unlock
+: <a class="el" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">_RemminaUnlockDialog</a>
+</li>
+<li>ePassword1
+: <a class="el" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">mpchanger_params</a>
+</li>
+<li>ePassword2
+: <a class="el" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">mpchanger_params</a>
+</li>
+<li>err
+: <a class="el" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">_RemminaPluginExecData</a>
+</li>
+<li>error
+: <a class="el" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH</a>
+</li>
+<li>error_fd
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d">_RemminaPluginXdmcpData</a>
+</li>
+<li>error_message
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>eUsername
+: <a class="el" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">mpchanger_params</a>
+</li>
+<li>event
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>event_box
+: <a class="el" href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc">_RemminaProtocolWidget</a>
+, <a class="el" href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded">_RemminaScrolledViewport</a>
+</li>
+<li>event_data
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">_RemminaPluginVncEvent</a>
+</li>
+<li>event_handle
+: <a class="el" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">rf_context</a>
+</li>
+<li>event_pipe
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">_RemminaPluginNxData</a>
+, <a class="el" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">rf_context</a>
+</li>
+<li>event_queue
+: <a class="el" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">rf_context</a>
+</li>
+<li>event_type
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">_RemminaPluginVncEvent</a>
+</li>
+<li>exec
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">_RemminaSSHShell</a>
+</li>
+<li>exec_func
+: <a class="el" href="struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17">_RemminaToolPlugin</a>
+</li>
+<li>exit_callback
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">_RemminaSSHShell</a>
+</li>
+<li>expanded_group
+: <a class="el" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">_RemminaMainPriv</a>
+, <a class="el" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">_RemminaPref</a>
+</li>
+<li>export_func
+: <a class="el" href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1">_RemminaFilePlugin</a>
+</li>
+<li>export_hints
+: <a class="el" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">_RemminaFilePlugin</a>
+</li>
+<li>export_test_func
+: <a class="el" href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03">_RemminaFilePlugin</a>
+</li>
+<li>extended
+: <a class="el" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">remmina_plugin_rdp_event</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_f.html b/docs/functions_vars_f.html
new file mode 100644
index 000000000..d78b5b03b
--- /dev/null
+++ b/docs/functions_vars_f.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>features
+: <a class="el" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>fields_separator
+: <a class="el" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">_RemminaStringListPriv</a>
+</li>
+<li>file_get_int
+: <a class="el" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService</a>
+</li>
+<li>file_get_path
+: <a class="el" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">_RemminaPluginService</a>
+</li>
+<li>file_get_secret
+: <a class="el" href="struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d">_RemminaPluginService</a>
+</li>
+<li>file_get_string
+: <a class="el" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">remmina_masterthread_exec_data</a>
+</li>
+<li>file_get_user_datadir
+: <a class="el" href="struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f">_RemminaPluginService</a>
+</li>
+<li>file_model
+: <a class="el" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">_RemminaMainPriv</a>
+</li>
+<li>file_model_filter
+: <a class="el" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">_RemminaMainPriv</a>
+</li>
+<li>file_model_sort
+: <a class="el" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">_RemminaMainPriv</a>
+</li>
+<li>file_new
+: <a class="el" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">_RemminaPluginService</a>
+</li>
+<li>file_set_int
+: <a class="el" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">_RemminaPluginService</a>
+</li>
+<li>file_set_string
+: <a class="el" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService</a>
+</li>
+<li>file_transfer_dialog
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">_RemminaPluginSpiceData</a>
+</li>
+<li>file_transfers
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">_RemminaPluginSpiceData</a>
+</li>
+<li>file_unsave_passwords
+: <a class="el" href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0">_RemminaPluginService</a>
+</li>
+<li>filechooserbutton_options_datadir_path
+: <a class="el" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">_RemminaPrefDialog</a>
+</li>
+<li>filechooserbutton_options_screenshots_path
+: <a class="el" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">_RemminaPrefDialog</a>
+</li>
+<li>filename
+: <a class="el" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">_RemminaFile</a>
+, <a class="el" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">distro_info</a>
+</li>
+<li>flags
+: <a class="el" href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c">remmina_plugin_rdp_event</a>
+</li>
+<li>floating_toolbar_placement
+: <a class="el" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">_RemminaPref</a>
+</li>
+<li>fontbutton_terminal_font
+: <a class="el" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">_RemminaPrefDialog</a>
+</li>
+<li>fontsmoothing_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>foreground
+: <a class="el" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref</a>
+</li>
+<li>format
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">rf_clipboard</a>
+</li>
+<li>formauthenticated
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">_RemminaPluginWWWData</a>
+</li>
+<li>ftp_client_get_waiting_task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">remmina_masterthread_exec_data</a>
+</li>
+<li>ftp_client_update_task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">remmina_masterthread_exec_data</a>
+</li>
+<li>fullscreen_on_auto
+: <a class="el" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref</a>
+</li>
+<li>fullscreen_toolbar_visibility
+: <a class="el" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref</a>
+</li>
+<li>func
+: <a class="el" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_g.html b/docs/functions_vars_g.html
new file mode 100644
index 000000000..e8619a675
--- /dev/null
+++ b/docs/functions_vars_g.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>get_password
+: <a class="el" href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629">_RemminaSecretPlugin</a>
+</li>
+<li>get_plugin_screenshot
+: <a class="el" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">_RemminaProtocolPlugin</a>
+</li>
+<li>get_pref_body
+: <a class="el" href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989">_RemminaPrefPlugin</a>
+</li>
+<li>get_profile_remote_height
+: <a class="el" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">_RemminaPluginService</a>
+</li>
+<li>get_profile_remote_width
+: <a class="el" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">_RemminaPluginService</a>
+</li>
+<li>get_server_port
+: <a class="el" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService</a>
+</li>
+<li>glyph
+: <a class="el" href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94">rf_glyph</a>
+</li>
+<li>gp
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">_RemminaPluginVncCuttextParam</a>
+, <a class="el" href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a">_RemminaProtocolWidgetSignalData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">_RemminaSFTPClient</a>
+, <a class="el" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>grid
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>group
+: <a class="el" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09">_RemminaGroupData</a>
+, <a class="el" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">mpchanger_params</a>
+</li>
+<li>gsversion
+: <a class="el" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">_RemminaIcon</a>
+</li>
+<li>gtk_label_set_text
+: <a class="el" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">remmina_masterthread_exec_data</a>
+</li>
+<li>gtk_session
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">_RemminaPluginSpiceData</a>
+</li>
+<li>gtksocket_available
+: <a class="el" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">_RemminaPluginService</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_h.html b/docs/functions_vars_h.html
new file mode 100644
index 000000000..0a2fef492
--- /dev/null
+++ b/docs/functions_vars_h.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_h"></a>- h -</h3><ul>
+<li>h
+: <a class="el" href="structregion.html#a585e1a437e6e8f8a80785aec2f2762c8">region</a>
+</li>
+<li>has_error
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>has_event
+: <a class="el" href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8">_RemminaAvahiPriv</a>
+</li>
+<li>hbox
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>height
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>hide_connection_toolbar
+: <a class="el" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref</a>
+</li>
+<li>hide_searchbar
+: <a class="el" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref</a>
+</li>
+<li>hide_toolbar
+: <a class="el" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">_RemminaPref</a>
+</li>
+<li>history_text
+: <a class="el" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">_RemminaChatWindow</a>
+</li>
+<li>host
+: <a class="el" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">_RemminaTpChannelHandler</a>
+</li>
+<li>hostkey
+: <a class="el" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref</a>
+</li>
+<li>hostkey_func
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>hostkeytypes
+: <a class="el" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">_RemminaSSH</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_i.html b/docs/functions_vars_i.html
new file mode 100644
index 000000000..4ee1d72a6
--- /dev/null
+++ b/docs/functions_vars_i.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_i.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>icon
+: <a class="el" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">_RemminaIcon</a>
+</li>
+<li>icon_name
+: <a class="el" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">_RemminaProtocolPlugin</a>
+</li>
+<li>icon_name_ssh
+: <a class="el" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">_RemminaProtocolPlugin</a>
+</li>
+<li>id
+: <a class="el" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature</a>
+</li>
+<li>image_menu_item
+: <a class="el" href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4">_RemminaAppletMenuItem</a>
+</li>
+<li>import_func
+: <a class="el" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">_RemminaFilePlugin</a>
+</li>
+<li>import_test_func
+: <a class="el" href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4">_RemminaFilePlugin</a>
+</li>
+<li>init
+: <a class="el" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56">_RemminaSecretPlugin</a>
+</li>
+<li>init_func
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">_RemminaSSHTunnel</a>
+</li>
+<li>init_order
+: <a class="el" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">_RemminaSecretPlugin</a>
+</li>
+<li>init_save_creds
+: <a class="el" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">remmina_masterthread_exec_data</a>
+</li>
+<li>initialized
+: <a class="el" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">_RemminaMainPriv</a>
+</li>
+<li>instance
+: <a class="el" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">rf_context</a>
+</li>
+<li>interval
+: <a class="el" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">rsSchedData</a>
+</li>
+<li>is_main_thread
+: <a class="el" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">_RemminaPluginService</a>
+</li>
+<li>is_reconnecting
+: <a class="el" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context</a>
+</li>
+<li>is_service_available
+: <a class="el" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin</a>
+</li>
+<li>is_tunnel
+: <a class="el" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">_RemminaSSH</a>
+</li>
+<li>item_type
+: <a class="el" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">_RemminaAppletMenuItem</a>
+</li>
+<li>iter
+: <a class="el" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">_RemminaPluginNxData</a>
+, <a class="el" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">mpchanger_params</a>
+</li>
+<li>iterate_handler
+: <a class="el" href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0">_RemminaAvahiPriv</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_k.html b/docs/functions_vars_k.html
new file mode 100644
index 000000000..059ac49a6
--- /dev/null
+++ b/docs/functions_vars_k.html
@@ -0,0 +1,135 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_k.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_k"></a>- k -</h3><ul>
+<li>kex_algorithms
+: <a class="el" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">_RemminaSSH</a>
+</li>
+<li>key
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">_RemminaPluginVncEvent</a>
+</li>
+<li>key_code
+: <a class="el" href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151">remmina_plugin_rdp_event</a>
+</li>
+<li>key_event
+: <a class="el" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">remmina_plugin_rdp_event</a>
+</li>
+<li>keyboard_layout_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keyboard_layout_label
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keyboard_layout_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>keycode
+: <a class="el" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">_RemminaKeyVal</a>
+</li>
+<li>keymap
+: <a class="el" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">rf_context</a>
+</li>
+<li>keystrokes
+: <a class="el" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref</a>
+</li>
+<li>keyval
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">_RemminaKeyChooserArguments</a>
+, <a class="el" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">_RemminaKeyVal</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87">_RemminaPluginVncEvent</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_l.html b/docs/functions_vars_l.html
new file mode 100644
index 000000000..ce6411ff4
--- /dev/null
+++ b/docs/functions_vars_l.html
@@ -0,0 +1,184 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>label
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">_RemminaPluginSpiceXferWidgets</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6">remmina_masterthread_exec_data</a>
+</li>
+<li>label_pleasewait
+: <a class="el" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">PCon_Spinner</a>
+</li>
+<li>label_status
+: <a class="el" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">_RemminaStringList</a>
+</li>
+<li>label_terminal_background
+: <a class="el" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_bright_colors
+: <a class="el" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_cursor_color
+: <a class="el" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_foreground
+: <a class="el" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">_RemminaPrefDialog</a>
+</li>
+<li>label_terminal_normal_colors
+: <a class="el" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">_RemminaPrefDialog</a>
+</li>
+<li>label_title
+: <a class="el" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">_RemminaStringList</a>
+</li>
+<li>last_quickconnect_protocol
+: <a class="el" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">_RemminaPref</a>
+</li>
+<li>last_success
+: <a class="el" href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd">_RemminaPref</a>
+</li>
+<li>launch_item
+: <a class="el" href="struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689">_RemminaAppletMenuClass</a>
+</li>
+<li>left
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>listen_message_panel
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>listen_sock
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">_RemminaPluginVncData</a>
+</li>
+<li>liststore_items
+: <a class="el" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">_RemminaStringList</a>
+</li>
+<li>load_event
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">_RemminaPluginWWWData</a>
+</li>
+<li>localdir
+: <a class="el" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">_RemminaFTPTask</a>
+</li>
+<li>localdisplay
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">_RemminaSSHTunnel</a>
+</li>
+<li>localport
+: <a class="el" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">_RemminaSSHTunnel</a>
+</li>
+<li>log_buffer
+: <a class="el" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">_RemminaPluginExecData</a>
+</li>
+<li>log_callback
+: <a class="el" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">_RemminaNXSession</a>
+</li>
+<li>log_print
+: <a class="el" href="struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de">_RemminaPluginService</a>
+</li>
+<li>log_printf
+: <a class="el" href="struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d">_RemminaPluginService</a>
+</li>
+<li>log_view
+: <a class="el" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">_RemminaPluginExecData</a>
+</li>
+<li>loop
+: <a class="el" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">MpRunInfo</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_m.html b/docs/functions_vars_m.html
new file mode 100644
index 000000000..6ae8325f2
--- /dev/null
+++ b/docs/functions_vars_m.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_m.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>main_channel
+: <a class="el" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">_RemminaPluginSpiceData</a>
+</li>
+<li>main_height
+: <a class="el" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">_RemminaPref</a>
+</li>
+<li>main_maximize
+: <a class="el" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">_RemminaPref</a>
+</li>
+<li>main_sort_column_id
+: <a class="el" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">_RemminaPref</a>
+</li>
+<li>main_sort_order
+: <a class="el" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">_RemminaPref</a>
+</li>
+<li>main_width
+: <a class="el" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">_RemminaPref</a>
+</li>
+<li>manager_dialog
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">_RemminaPluginNxData</a>
+</li>
+<li>manager_selected
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">_RemminaPluginNxData</a>
+</li>
+<li>manager_started
+: <a class="el" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">_RemminaPluginNxData</a>
+</li>
+<li>master
+: <a class="el" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">_RemminaSSHShell</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61">remmina_masterthread_exec_data</a>
+</li>
+<li>max_channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">_RemminaSSHTunnel</a>
+</li>
+<li>menu
+: <a class="el" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">_RemminaAppletMenu</a>
+</li>
+<li>menu_header_button
+: <a class="el" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">_RemminaMain</a>
+</li>
+<li>menu_popup
+: <a class="el" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">_RemminaMain</a>
+</li>
+<li>menu_popup_full
+: <a class="el" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">_RemminaMain</a>
+</li>
+<li>menuanimation_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>menuitem_connection_quit
+: <a class="el" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">_RemminaMain</a>
+</li>
+<li>menuitem_view_mode_list
+: <a class="el" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">_RemminaMain</a>
+</li>
+<li>menuitem_view_mode_tree
+: <a class="el" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">_RemminaMain</a>
+</li>
+<li>message
+: <a class="el" href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>monitor_layout
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">remmina_plugin_rdp_event</a>
+</li>
+<li>mouse_event
+: <a class="el" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">remmina_plugin_rdp_event</a>
+</li>
+<li>mp
+: <a class="el" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">MpRunInfo</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050">remmina_masterthread_exec_data</a>
+</li>
+<li>mu
+: <a class="el" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">onMainThread_cb_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_n.html b/docs/functions_vars_n.html
new file mode 100644
index 000000000..2b1f05f4c
--- /dev/null
+++ b/docs/functions_vars_n.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_n.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>name
+: <a class="el" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd">_RemminaGroupData</a>
+, <a class="el" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af">_RemminaToolPlugin</a>
+, <a class="el" href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2">distro_info</a>
+, <a class="el" href="structlsb__distro__info.html#a251763a49054183774e2082595537e47">lsb_distro_info</a>
+</li>
+<li>new_task
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343">_RemminaFTPClientClass</a>
+</li>
+<li>ninvalid
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>nocodec
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>notebook_preferences
+: <a class="el" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">_RemminaPrefDialog</a>
+</li>
+<li>num_channels
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">_RemminaSSHTunnel</a>
+</li>
+<li>nx
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">_RemminaPluginNxData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_o.html b/docs/functions_vars_o.html
new file mode 100644
index 000000000..101366f50
--- /dev/null
+++ b/docs/functions_vars_o.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_o.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>object_id_seq
+: <a class="el" href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960">rf_context</a>
+</li>
+<li>object_table
+: <a class="el" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">rf_context</a>
+</li>
+<li>open_connection
+: <a class="el" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">_RemminaPluginService</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">_RemminaProtocolPlugin</a>
+</li>
+<li>open_dir
+: <a class="el" href="struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7">_RemminaFTPClientClass</a>
+</li>
+<li>opt1
+: <a class="el" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">_RemminaProtocolSettingOpt</a>
+</li>
+<li>opt2
+: <a class="el" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867">_RemminaProtocolSettingOpt</a>
+</li>
+<li>opt3
+: <a class="el" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">_RemminaProtocolFeature</a>
+</li>
+<li>orig_handler
+: <a class="el" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">_RemminaPluginNxData</a>
+</li>
+<li>orig_keycode
+: <a class="el" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">remmina_plugin_rdp_keymap_entry</a>
+</li>
+<li>orphaned
+: <a class="el" href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4">rf_context</a>
+</li>
+<li>output_fd
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223">_RemminaPluginXdmcpData</a>
+</li>
+<li>override_view_file_mode_to_list
+: <a class="el" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">_RemminaMainPriv</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_p.html b/docs/functions_vars_p.html
new file mode 100644
index 000000000..4230f6e43
--- /dev/null
+++ b/docs/functions_vars_p.html
@@ -0,0 +1,446 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_p.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>p
+: <a class="el" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data</a>
+</li>
+<li>palette
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563">_RemminaPluginSshData</a>
+</li>
+<li>parent
+: <a class="el" href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510">_RemminaTpHandler</a>
+</li>
+<li>parent_class
+: <a class="el" href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5">_RemminaAppletMenuClass</a>
+, <a class="el" href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a">_RemminaAppletMenuItemClass</a>
+, <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279">_RemminaCellRendererPixbufClass</a>
+, <a class="el" href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19">_RemminaChatWindowClass</a>
+, <a class="el" href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab">_RemminaConnectionWindowClass</a>
+, <a class="el" href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f">_RemminaFileEditorClass</a>
+, <a class="el" href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce">_RemminaFTPClientClass</a>
+, <a class="el" href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af">_RemminaLogWindowClass</a>
+, <a class="el" href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9">_RemminaPluginRdpsetGridClass</a>
+, <a class="el" href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2">_RemminaProtocolWidgetClass</a>
+, <a class="el" href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f">_RemminaScrolledViewportClass</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d">_RemminaSFTPClientClass</a>
+, <a class="el" href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f">_RemminaTpHandlerClass</a>
+</li>
+<li>passphrase
+: <a class="el" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">_RemminaSSH</a>
+</li>
+<li>password
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">_RemminaSSH</a>
+, <a class="el" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">mpchanger_params</a>
+</li>
+<li>path
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9">remmina_masterthread_exec_data</a>
+</li>
+<li>pcount
+: <a class="el" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">ProfilesData</a>
+</li>
+<li>pdatestr
+: <a class="el" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">ProfilesData</a>
+</li>
+<li>periodic_rmnews_get_count
+: <a class="el" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref</a>
+</li>
+<li>periodic_rmnews_last_get
+: <a class="el" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref</a>
+</li>
+<li>periodic_rmnews_uuid_prefix
+: <a class="el" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_last_sent
+: <a class="el" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_permitted
+: <a class="el" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref</a>
+</li>
+<li>periodic_usage_stats_uuid_prefix
+: <a class="el" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref</a>
+</li>
+<li>pflags
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>pFormatDataRequest
+: <a class="el" href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c">remmina_plugin_rdp_event</a>
+</li>
+<li>pFormatList
+: <a class="el" href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082">remmina_plugin_rdp_event</a>
+</li>
+<li>pid
+: <a class="el" href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">_RemminaPluginXdmcpData</a>
+</li>
+<li>pixmap
+: <a class="el" href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b">rf_bitmap</a>
+, <a class="el" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">rf_glyph</a>
+</li>
+<li>plugin
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>plugin_can_scale
+: <a class="el" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">_RemminaConnectionObject</a>
+</li>
+<li>pointer
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">_RemminaPluginVncEvent</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed">remmina_plugin_rdp_ui_object</a>
+, <a class="el" href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf">rf_pointer</a>
+</li>
+<li>popup_time
+: <a class="el" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">_RemminaIcon</a>
+</li>
+<li>port
+: <a class="el" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">_RemminaSSH</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">_RemminaSSHTunnel</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">_RemminaTpChannelHandler</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9">remmina_masterthread_exec_data</a>
+</li>
+<li>pos
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>postconnect_error
+: <a class="el" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">rf_context</a>
+</li>
+<li>pref_get_scale_quality
+: <a class="el" href="struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290">_RemminaPluginService</a>
+</li>
+<li>pref_get_ssh_loglevel
+: <a class="el" href="struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b">_RemminaPluginService</a>
+</li>
+<li>pref_get_ssh_parseconfig
+: <a class="el" href="struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2">_RemminaPluginService</a>
+</li>
+<li>pref_get_sshtunnel_port
+: <a class="el" href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5">_RemminaPluginService</a>
+</li>
+<li>pref_get_value
+: <a class="el" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService</a>
+</li>
+<li>pref_keymap_get_keyval
+: <a class="el" href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2">_RemminaPluginService</a>
+</li>
+<li>pref_label
+: <a class="el" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">_RemminaPrefPlugin</a>
+</li>
+<li>pref_set_value
+: <a class="el" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">_RemminaPluginService</a>
+</li>
+<li>pressed
+: <a class="el" href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8">_RemminaPluginVncEvent</a>
+</li>
+<li>pressed_keys
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">_RemminaPluginVncData</a>
+, <a class="el" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">rf_context</a>
+</li>
+<li>prevent_saving
+: <a class="el" href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488">_RemminaFile</a>
+</li>
+<li>prevent_snap_welcome_message
+: <a class="el" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">_RemminaPref</a>
+</li>
+<li>priv
+: <a class="el" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">_RemminaAppletMenu</a>
+, <a class="el" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">_RemminaAvahi</a>
+, <a class="el" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">_RemminaConnectionWindow</a>
+, <a class="el" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">_RemminaFileEditor</a>
+, <a class="el" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">_RemminaFTPClient</a>
+, <a class="el" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">_RemminaMain</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">_RemminaPrefDialog</a>
+, <a class="el" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">_RemminaProtocolWidget</a>
+, <a class="el" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">_RemminaStringList</a>
+</li>
+<li>privkeyfile
+: <a class="el" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">_RemminaSSH</a>
+</li>
+<li>profile_remote_height
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>profile_remote_width
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>progress
+: <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>proto
+: <a class="el" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">_RemminaConnectionObject</a>
+</li>
+<li>proto_count
+: <a class="el" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">ProfilesData</a>
+</li>
+<li>proto_date
+: <a class="el" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">ProfilesData</a>
+</li>
+<li>proto_widget
+: <a class="el" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">_RemminaTpChannelHandler</a>
+</li>
+<li>protocol
+: <a class="el" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">_RemminaTpChannelHandler</a>
+, <a class="el" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">ProfilesData</a>
+</li>
+<li>protocol_plugin_changed_certificate
+: <a class="el" href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_close
+: <a class="el" href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_open
+: <a class="el" href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_chat_receive
+: <a class="el" href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_desktop_resize
+: <a class="el" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_emit_signal
+: <a class="el" href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_expand
+: <a class="el" href="struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_file
+: <a class="el" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_height
+: <a class="el" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_get_width
+: <a class="el" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_has_error
+: <a class="el" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_auth
+: <a class="el" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_authx509
+: <a class="el" href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_certificate
+: <a class="el" href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_cacert
+: <a class="el" href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_cacrl
+: <a class="el" href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_clientcert
+: <a class="el" href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_clientkey
+: <a class="el" href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_domain
+: <a class="el" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_password
+: <a class="el" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_savepassword
+: <a class="el" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_get_username
+: <a class="el" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_hide
+: <a class="el" href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_save_cred
+: <a class="el" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show
+: <a class="el" href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show_listen
+: <a class="el" href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_init_show_retry
+: <a class="el" href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_is_closed
+: <a class="el" href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_register_hostkey
+: <a class="el" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_send_keys_signals
+: <a class="el" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_display
+: <a class="el" href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_error
+: <a class="el" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_expand
+: <a class="el" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_height
+: <a class="el" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_set_width
+: <a class="el" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_signal_connection_closed
+: <a class="el" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_signal_connection_opened
+: <a class="el" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_ssh_exec
+: <a class="el" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_direct_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_reverse_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_start_xport_tunnel
+: <a class="el" href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_unlock_dynres
+: <a class="el" href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e">_RemminaPluginService</a>
+</li>
+<li>protocol_plugin_update_align
+: <a class="el" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">_RemminaPluginService</a>
+</li>
+<li>protocol_widget
+: <a class="el" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context</a>
+</li>
+<li>protocolwidget_emit_signal
+: <a class="el" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpdestroy
+: <a class="el" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpprogress
+: <a class="el" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_mpshowretry
+: <a class="el" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">remmina_masterthread_exec_data</a>
+</li>
+<li>protocolwidget_panelshowlisten
+: <a class="el" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">remmina_masterthread_exec_data</a>
+</li>
+<li>proxy_cookie
+: <a class="el" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">_RemminaNXSession</a>
+</li>
+<li>proxy_pid
+: <a class="el" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">_RemminaNXSession</a>
+</li>
+<li>proxy_watch_source
+: <a class="el" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">_RemminaNXSession</a>
+</li>
+<li>proxycommand
+: <a class="el" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">_RemminaSSH</a>
+</li>
+<li>pt_cond
+: <a class="el" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>pt_mutex
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_q.html b/docs/functions_vars_q.html
new file mode 100644
index 000000000..d2581df8e
--- /dev/null
+++ b/docs/functions_vars_q.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_q.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_q"></a>- q -</h3><ul>
+<li>quality_combo
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>quality_store
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>quality_values
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>query_feature
+: <a class="el" href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de">_RemminaProtocolPlugin</a>
+</li>
+<li>queuecursor_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_surface
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_x
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">_RemminaPluginVncData</a>
+</li>
+<li>queuecursor_y
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_h
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_handler
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_w
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_x
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">_RemminaPluginVncData</a>
+</li>
+<li>queuedraw_y
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">_RemminaPluginVncData</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_r.html b/docs/functions_vars_r.html
new file mode 100644
index 000000000..379dc97a8
--- /dev/null
+++ b/docs/functions_vars_r.html
@@ -0,0 +1,233 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>rcbutton
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>rdpdr_data
+: <a class="el" href="structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4">rf_context</a>
+</li>
+<li>rdpgfxchan
+: <a class="el" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rf_context</a>
+</li>
+<li>rdpsnd_options
+: <a class="el" href="structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f">rf_context</a>
+</li>
+<li>ready
+: <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">_RemminaPluginXdmcpData</a>
+</li>
+<li>recent_maximum
+: <a class="el" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">_RemminaPref</a>
+</li>
+<li>reconnect_maxattempts
+: <a class="el" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">rf_context</a>
+</li>
+<li>reconnect_nattempt
+: <a class="el" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">rf_context</a>
+</li>
+<li>reg
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>register_plugin
+: <a class="el" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService</a>
+</li>
+<li>remmina_file
+: <a class="el" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">_RemminaConnectionObject</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>remmina_file_name
+: <a class="el" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref</a>
+</li>
+<li>remmina_plugin_thread
+: <a class="el" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">rf_context</a>
+</li>
+<li>remmina_protocol_widget_get_current_scale_mode
+: <a class="el" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService</a>
+</li>
+<li>remminafile
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9">remmina_masterthread_exec_data</a>
+</li>
+<li>remotedir
+: <a class="el" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">_RemminaFTPTask</a>
+</li>
+<li>remotedisplay
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">_RemminaSSHTunnel</a>
+</li>
+<li>renderer
+: <a class="el" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">_RemminaCellRendererPixbuf</a>
+</li>
+<li>request
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">_RemminaPluginWWWData</a>
+</li>
+<li>requestedFormatId
+: <a class="el" href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3">rf_clipboard</a>
+</li>
+<li>resolutions
+: <a class="el" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref</a>
+</li>
+<li>resolutions_list
+: <a class="el" href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05">_RemminaPrefDialogPriv</a>
+</li>
+<li>response
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">_RemminaKeyChooserArguments</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">_RemminaNXSession</a>
+, <a class="el" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">MpRunInfo</a>
+</li>
+<li>response_callback
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543">remmina_masterthread_exec_data</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">RemminaMessagePanelPrivate</a>
+</li>
+<li>response_callback_data
+: <a class="el" href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658">remmina_masterthread_exec_data</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">RemminaMessagePanelPrivate</a>
+</li>
+<li>response_pos
+: <a class="el" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">_RemminaNXSession</a>
+</li>
+<li>ret_mp
+: <a class="el" href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1">remmina_masterthread_exec_data</a>
+</li>
+<li>retptr
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>retval
+: <a class="el" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">_RemminaNewsDialog</a>
+, <a class="el" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">_RemminaUnlockDialog</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15">remmina_masterthread_exec_data</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>rfi
+: <a class="el" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rf_clipboard</a>
+</li>
+<li>rfx
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>rfx_context
+: <a class="el" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rf_context</a>
+</li>
+<li>rgb_buffer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">_RemminaPluginVncData</a>
+</li>
+<li>rmnews_button_close
+: <a class="el" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_defaultcl_button
+: <a class="el" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_defaultcl_label
+: <a class="el" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_label
+: <a class="el" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_stats_switch
+: <a class="el" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">_RemminaNewsDialog</a>
+</li>
+<li>rmnews_text_view
+: <a class="el" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">_RemminaNewsDialog</a>
+</li>
+<li>rowref
+: <a class="el" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">_RemminaFTPTask</a>
+</li>
+<li>running
+: <a class="el" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">_RemminaSSHTunnel</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_s.html b/docs/functions_vars_s.html
new file mode 100644
index 000000000..037060cf3
--- /dev/null
+++ b/docs/functions_vars_s.html
@@ -0,0 +1,438 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_s.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>save_password
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>save_view_mode
+: <a class="el" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref</a>
+</li>
+<li>sb
+: <a class="el" href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8">_RemminaAvahiPriv</a>
+</li>
+<li>scale
+: <a class="el" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">onMainThread_cb_data</a>
+, <a class="el" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context</a>
+</li>
+<li>scale_height
+: <a class="el" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">rf_context</a>
+</li>
+<li>scale_quality
+: <a class="el" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">_RemminaPref</a>
+</li>
+<li>scale_width
+: <a class="el" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">rf_context</a>
+</li>
+<li>scale_x
+: <a class="el" href="structrf__context.html#a584505347366c40e6efa710353d4264f">rf_context</a>
+</li>
+<li>scale_y
+: <a class="el" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">rf_context</a>
+</li>
+<li>scalemode
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>scaler_expand
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>scanline_pad
+: <a class="el" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">rf_context</a>
+</li>
+<li>scanstring
+: <a class="el" href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7">lsb_distro_info</a>
+</li>
+<li>screenshot_name
+: <a class="el" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref</a>
+</li>
+<li>screenshot_path
+: <a class="el" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref</a>
+</li>
+<li>scrolled_container
+: <a class="el" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">_RemminaConnectionObject</a>
+</li>
+<li>search_bar
+: <a class="el" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">_RemminaMain</a>
+</li>
+<li>search_toggle
+: <a class="el" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">_RemminaMain</a>
+</li>
+<li>searchentrychange_timeout_source_id
+: <a class="el" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">mpchanger_params</a>
+</li>
+<li>secret
+: <a class="el" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">_RemminaPref</a>
+</li>
+<li>selected_filename
+: <a class="el" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">_RemminaMainPriv</a>
+</li>
+<li>selected_name
+: <a class="el" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">_RemminaMainPriv</a>
+</li>
+<li>send
+: <a class="el" href="struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372">_RemminaChatWindowClass</a>
+</li>
+<li>send_keystrokes
+: <a class="el" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">_RemminaProtocolPlugin</a>
+</li>
+<li>send_text
+: <a class="el" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">_RemminaChatWindow</a>
+</li>
+<li>server
+: <a class="el" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">_RemminaAppletMenuItem</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">_RemminaSSH</a>
+</li>
+<li>server_sock
+: <a class="el" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">_RemminaSSHTunnel</a>
+</li>
+<li>session
+: <a class="el" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">_RemminaPluginSpiceData</a>
+, <a class="el" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">_RemminaSSH</a>
+</li>
+<li>session_display
+: <a class="el" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">_RemminaNXSession</a>
+</li>
+<li>session_id
+: <a class="el" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">_RemminaNXSession</a>
+</li>
+<li>session_list
+: <a class="el" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">_RemminaNXSession</a>
+</li>
+<li>session_list_state
+: <a class="el" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">_RemminaNXSession</a>
+</li>
+<li>session_manager_start_handler
+: <a class="el" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">_RemminaPluginNxData</a>
+</li>
+<li>session_parameters
+: <a class="el" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">_RemminaNXSession</a>
+</li>
+<li>setting
+: <a class="el" href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b">remmina_masterthread_exec_data</a>
+</li>
+<li>settings
+: <a class="el" href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd">_RemminaFile</a>
+, <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">_RemminaPluginWWWData</a>
+, <a class="el" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">rf_context</a>
+</li>
+<li>sftp
+: <a class="el" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">_RemminaSFTPClient</a>
+</li>
+<li>sftp_client_confirm_resume
+: <a class="el" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">remmina_masterthread_exec_data</a>
+</li>
+<li>sftp_sess
+: <a class="el" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">_RemminaSFTP</a>
+</li>
+<li>shell
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">_RemminaPluginSshData</a>
+</li>
+<li>shortcutkey_autofit
+: <a class="el" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref</a>
+</li>
+<li>shortcutkey_disconnect
+: <a class="el" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref</a>
+</li>
+<li>shortcutkey_dynres
+: <a class="el" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">_RemminaPref</a>
+</li>
+<li>shortcutkey_fullscreen
+: <a class="el" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref</a>
+</li>
+<li>shortcutkey_grab
+: <a class="el" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref</a>
+</li>
+<li>shortcutkey_minimize
+: <a class="el" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref</a>
+</li>
+<li>shortcutkey_nexttab
+: <a class="el" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref</a>
+</li>
+<li>shortcutkey_prevtab
+: <a class="el" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref</a>
+</li>
+<li>shortcutkey_scale
+: <a class="el" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref</a>
+</li>
+<li>shortcutkey_screenshot
+: <a class="el" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref</a>
+</li>
+<li>shortcutkey_toolbar
+: <a class="el" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref</a>
+</li>
+<li>shortcutkey_viewonly
+: <a class="el" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref</a>
+</li>
+<li>show_only
+: <a class="el" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">sc_tdata</a>
+</li>
+<li>sid
+: <a class="el" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">mpchanger_params</a>
+</li>
+<li>signal_name
+: <a class="el" href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada">_RemminaProtocolWidgetSignalData</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910">remmina_masterthread_exec_data</a>
+</li>
+<li>simple_poll
+: <a class="el" href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304">_RemminaAvahiPriv</a>
+</li>
+<li>size
+: <a class="el" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">_RemminaFTPTask</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba">remmina_plugin_rdp_event</a>
+</li>
+<li>sk
+: <a class="el" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">onMainThread_cb_data</a>
+</li>
+<li>slave
+: <a class="el" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">_RemminaSSHShell</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e">remmina_masterthread_exec_data</a>
+</li>
+<li>small_toolbutton
+: <a class="el" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">_RemminaPref</a>
+</li>
+<li>socket
+: <a class="el" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">_RemminaPluginXdmcpData</a>
+</li>
+<li>socket_id
+: <a class="el" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">_RemminaPluginData</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">_RemminaPluginXdmcpData</a>
+</li>
+<li>socketbuffers
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">_RemminaSSHTunnel</a>
+</li>
+<li>sockets
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">_RemminaSSHTunnel</a>
+</li>
+<li>source
+: <a class="el" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">rsSchedData</a>
+</li>
+<li>spinner
+: <a class="el" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">PCon_Spinner</a>
+</li>
+<li>spsettings
+: <a class="el" href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5">_RemminaFile</a>
+</li>
+<li>srcBpp
+: <a class="el" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">rf_context</a>
+</li>
+<li>srv_clip_data_wait
+: <a class="el" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">rf_clipboard</a>
+</li>
+<li>srv_data
+: <a class="el" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">rf_clipboard</a>
+</li>
+<li>ssh
+: <a class="el" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">_RemminaSFTP</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">_RemminaSSHTunnel</a>
+</li>
+<li>ssh_loglevel
+: <a class="el" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref</a>
+</li>
+<li>ssh_mutex
+: <a class="el" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">_RemminaSSH</a>
+</li>
+<li>ssh_parseconfig
+: <a class="el" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref</a>
+</li>
+<li>ssh_setting
+: <a class="el" href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb">_RemminaProtocolPlugin</a>
+</li>
+<li>ssh_tcp_keepcnt
+: <a class="el" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref</a>
+</li>
+<li>ssh_tcp_keepidle
+: <a class="el" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref</a>
+</li>
+<li>ssh_tcp_keepintvl
+: <a class="el" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref</a>
+</li>
+<li>ssh_tcp_usrtimeout
+: <a class="el" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref</a>
+</li>
+<li>ssh_tunnel_enabled
+: <a class="el" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">_RemminaAppletMenuItem</a>
+</li>
+<li>ssh_tunnels
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">_RemminaProtocolWidgetPriv</a>
+</li>
+<li>sshtunnel_port
+: <a class="el" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref</a>
+</li>
+<li>started
+: <a class="el" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">_RemminaAvahi</a>
+</li>
+<li>state
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">_RemminaKeyChooserArguments</a>
+</li>
+<li>statsroot
+: <a class="el" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">sc_tdata</a>
+</li>
+<li>status
+: <a class="el" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">_RemminaNXSession</a>
+</li>
+<li>statusbar_main
+: <a class="el" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">_RemminaMain</a>
+</li>
+<li>statusLabel
+: <a class="el" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">mpchanger_params</a>
+</li>
+<li>store
+: <a class="el" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">mpchanger_params</a>
+</li>
+<li>store_password
+: <a class="el" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">_RemminaSecretPlugin</a>
+</li>
+<li>str
+: <a class="el" href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea">remmina_masterthread_exec_data</a>
+</li>
+<li>stricthostkeycheck
+: <a class="el" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">_RemminaSSH</a>
+</li>
+<li>strpasswordlabel
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>surface
+: <a class="el" href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b">rf_bitmap</a>
+, <a class="el" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">rf_context</a>
+</li>
+<li>sw
+: <a class="el" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">_RemminaPluginExecData</a>
+</li>
+<li>sw_gdi
+: <a class="el" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">rf_context</a>
+</li>
+<li>switch_options_deny_screenshot_clipboard
+: <a class="el" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">_RemminaPrefDialog</a>
+</li>
+<li>switch_options_remember_last_view_mode
+: <a class="el" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">_RemminaPrefDialog</a>
+</li>
+<li>switch_permit_send_stats
+: <a class="el" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">_RemminaPrefDialog</a>
+</li>
+<li>switch_security_use_master_password
+: <a class="el" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">_RemminaPrefDialog</a>
+</li>
+<li>switch_terminal_bold
+: <a class="el" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">_RemminaPrefDialog</a>
+</li>
+<li>switch_terminal_font_system
+: <a class="el" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">_RemminaPrefDialog</a>
+</li>
+<li>sync
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>sync_wait_cond
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>sync_wait_mutex
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>system
+: <a class="el" href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf">rf_clipboard</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_t.html b/docs/functions_vars_t.html
new file mode 100644
index 000000000..00281901d
--- /dev/null
+++ b/docs/functions_vars_t.html
@@ -0,0 +1,216 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_t.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>tab_mode
+: <a class="el" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref</a>
+</li>
+<li>table
+: <a class="el" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">mpchanger_params</a>
+</li>
+<li>targetlist
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>task
+: <a class="el" href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1">remmina_masterthread_exec_data</a>
+</li>
+<li>taskid
+: <a class="el" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">_RemminaSFTPClient</a>
+</li>
+<li>tasktype
+: <a class="el" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">_RemminaFTPTask</a>
+</li>
+<li>terminal
+: <a class="el" href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1">remmina_masterthread_exec_data</a>
+</li>
+<li>text
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">_RemminaPluginVncCuttextParam</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">_RemminaPluginVncEvent</a>
+, <a class="el" href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de">remmina_masterthread_exec_data</a>
+</li>
+<li>textlen
+: <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">_RemminaPluginVncCuttextParam</a>
+</li>
+<li>theme_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>thread
+: <a class="el" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">_RemminaPluginNxData</a>
+, <a class="el" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">_RemminaPluginSftpData</a>
+, <a class="el" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">_RemminaPluginSshData</a>
+, <a class="el" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">_RemminaPluginVncData</a>
+, <a class="el" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">_RemminaPluginXdmcpData</a>
+, <a class="el" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">_RemminaSFTPClient</a>
+, <a class="el" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">_RemminaSSHShell</a>
+, <a class="el" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">_RemminaSSHTunnel</a>
+</li>
+<li>thread_abort
+: <a class="el" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">_RemminaSFTPClient</a>
+</li>
+<li>thread_cancelled
+: <a class="el" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">rf_context</a>
+</li>
+<li>title
+: <a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">remmina_protocol_widget_dialog_mt_data_t</a>
+</li>
+<li>toolbar_pin_down
+: <a class="el" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">_RemminaPref</a>
+</li>
+<li>toolbar_place
+: <a class="el" href="struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d">_RemminaConnectionWindowClass</a>
+</li>
+<li>toolbar_placement
+: <a class="el" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">_RemminaPref</a>
+</li>
+<li>tooltip
+: <a class="el" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">_RemminaFTPTask</a>
+</li>
+<li>top
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>transfer_clip_cond
+: <a class="el" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">rf_clipboard</a>
+</li>
+<li>transfer_clip_mutex
+: <a class="el" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">rf_clipboard</a>
+</li>
+<li>translated_keycode
+: <a class="el" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">remmina_plugin_rdp_keymap_entry</a>
+</li>
+<li>tree_files_list
+: <a class="el" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">_RemminaMain</a>
+</li>
+<li>treeview_items
+: <a class="el" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">_RemminaStringList</a>
+</li>
+<li>treeview_selection
+: <a class="el" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">_RemminaStringList</a>
+</li>
+<li>treeviewcolumn_item
+: <a class="el" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">_RemminaStringList</a>
+</li>
+<li>tunnel_entrance_host
+: <a class="el" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH</a>
+</li>
+<li>tunnel_entrance_port
+: <a class="el" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH</a>
+</li>
+<li>tunnel_type
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">_RemminaSSHTunnel</a>
+</li>
+<li>two_columns
+: <a class="el" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">_RemminaStringListPriv</a>
+</li>
+<li>type
+: <a class="el" href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">_RemminaFTPTask</a>
+, <a class="el" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">_RemminaProtocolFeature</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting</a>
+, <a class="el" href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a">_RemminaProtocolSettingOpt</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176">_RemminaToolPlugin</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589">remmina_plugin_rdp_ui_object</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_u.html b/docs/functions_vars_u.html
new file mode 100644
index 000000000..bd3d5c8a0
--- /dev/null
+++ b/docs/functions_vars_u.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_u.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>ui_handler
+: <a class="el" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">rf_context</a>
+</li>
+<li>ui_queue
+: <a class="el" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">rf_context</a>
+</li>
+<li>ui_queue_mutex
+: <a class="el" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">rf_context</a>
+</li>
+<li>ui_register
+: <a class="el" href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524">_RemminaPluginService</a>
+</li>
+<li>uid
+: <a class="el" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">_RemminaPref</a>
+</li>
+<li>unicode_code
+: <a class="el" href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b">remmina_plugin_rdp_event</a>
+</li>
+<li>unlock_dynres
+: <a class="el" href="struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3">_RemminaProtocolWidgetClass</a>
+</li>
+<li>unlock_init
+: <a class="el" href="struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b">_RemminaUnlockDialog</a>
+</li>
+<li>unlock_password
+: <a class="el" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">_RemminaPrefDialog</a>
+</li>
+<li>unlock_repassword
+: <a class="el" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">_RemminaPrefDialog</a>
+</li>
+<li>unlock_timeout
+: <a class="el" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref</a>
+, <a class="el" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">_RemminaPrefDialog</a>
+</li>
+<li>up
+: <a class="el" href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094">remmina_plugin_rdp_event</a>
+</li>
+<li>update_align
+: <a class="el" href="struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99">_RemminaProtocolWidgetClass</a>
+</li>
+<li>ureg
+: <a class="el" href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>url
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">_RemminaPluginWWWData</a>
+</li>
+<li>use_client_keymap
+: <a class="el" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">rf_context</a>
+</li>
+<li>use_client_keymap_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>use_master_password
+: <a class="el" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">_RemminaPref</a>
+</li>
+<li>use_modifiers
+: <a class="el" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">_RemminaKeyChooserArguments</a>
+</li>
+<li>user
+: <a class="el" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">_RemminaSSH</a>
+</li>
+<li>user_cancelled
+: <a class="el" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">rf_context</a>
+</li>
+<li>user_data
+: <a class="el" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">_RemminaSSHShell</a>
+</li>
+<li>username
+: <a class="el" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">mpchanger_params</a>
+</li>
+<li>ustats_toggle
+: <a class="el" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">_RemminaMain</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_v.html b/docs/functions_vars_v.html
new file mode 100644
index 000000000..2fd079039
--- /dev/null
+++ b/docs/functions_vars_v.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_v.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>validation_func
+: <a class="el" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">_RemminaStringListPriv</a>
+</li>
+<li>vbox
+: <a class="el" href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77">_RemminaFTPClient</a>
+, <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">_RemminaPluginSpiceXferWidgets</a>
+</li>
+<li>version
+: <a class="el" href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441">_RemminaEntryPlugin</a>
+, <a class="el" href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8">_RemminaFilePlugin</a>
+, <a class="el" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">_RemminaNXSession</a>
+, <a class="el" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">_RemminaPlugin</a>
+, <a class="el" href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d">_RemminaPrefPlugin</a>
+, <a class="el" href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff">_RemminaProtocolPlugin</a>
+, <a class="el" href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa">_RemminaSecretPlugin</a>
+, <a class="el" href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b">_RemminaToolPlugin</a>
+</li>
+<li>view_file_mode
+: <a class="el" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">_RemminaPref</a>
+</li>
+<li>view_toggle_button
+: <a class="el" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">_RemminaMain</a>
+</li>
+<li>viewport
+: <a class="el" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">_RemminaConnectionObject</a>
+</li>
+<li>viewport_motion
+: <a class="el" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">_RemminaScrolledViewport</a>
+</li>
+<li>viewport_motion_handler
+: <a class="el" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">_RemminaScrolledViewport</a>
+</li>
+<li>visual
+: <a class="el" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">rf_context</a>
+</li>
+<li>vnc_buffer
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_pipe
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_queue
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">_RemminaPluginVncData</a>
+</li>
+<li>vnc_event_queue_mutex
+: <a class="el" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">_RemminaPluginVncData</a>
+</li>
+<li>vte
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">_RemminaPluginSshData</a>
+</li>
+<li>vte_allow_bold_text
+: <a class="el" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref</a>
+</li>
+<li>vte_font
+: <a class="el" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref</a>
+</li>
+<li>vte_lines
+: <a class="el" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref</a>
+</li>
+<li>vte_session_file
+: <a class="el" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">_RemminaPluginSshData</a>
+</li>
+<li>vte_shortcutkey_copy
+: <a class="el" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref</a>
+</li>
+<li>vte_shortcutkey_paste
+: <a class="el" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref</a>
+</li>
+<li>vte_shortcutkey_select_all
+: <a class="el" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref</a>
+</li>
+<li>vte_system_colors
+: <a class="el" href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22">_RemminaPref</a>
+</li>
+<li>vte_terminal_set_encoding_and_pty
+: <a class="el" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">remmina_masterthread_exec_data</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_w.html b/docs/functions_vars_w.html
new file mode 100644
index 000000000..1b2c263bd
--- /dev/null
+++ b/docs/functions_vars_w.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_w.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>w
+: <a class="el" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6">region</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">RemminaMessagePanelPrivate</a>
+</li>
+<li>wallpaper_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>webview
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">_RemminaPluginWWWData</a>
+</li>
+<li>widget
+: <a class="el" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">onMainThread_cb_data</a>
+</li>
+<li>width
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>window
+: <a class="el" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">_RemminaChatWindow</a>
+, <a class="el" href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d">_RemminaConnectionWindow</a>
+, <a class="el" href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">_RemminaMain</a>
+</li>
+<li>window_id
+: <a class="el" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">_RemminaPluginNxData</a>
+</li>
+<li>windowdrag_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">_RemminaPluginRdpsetGrid</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_x.html b/docs/functions_vars_x.html
new file mode 100644
index 000000000..cb6d11f35
--- /dev/null
+++ b/docs/functions_vars_x.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_x.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_x"></a>- x -</h3><ul>
+<li>x
+: <a class="el" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">_RemminaPluginVncCoordinates</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8">_RemminaPluginVncEvent</a>
+, <a class="el" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#ad258e7b02e819b46656294de5e4bd8ad">region</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>x11_channel
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">_RemminaSSHTunnel</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_vars_y.html b/docs/functions_vars_y.html
new file mode 100644
index 000000000..6334c1c54
--- /dev/null
+++ b/docs/functions_vars_y.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_vars_y.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_y"></a>- y -</h3><ul>
+<li>y
+: <a class="el" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">_RemminaPluginVncCoordinates</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11">_RemminaPluginVncEvent</a>
+, <a class="el" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">region</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c">remmina_plugin_rdp_ui_object</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_w.html b/docs/functions_w.html
new file mode 100644
index 000000000..ab1ec2656
--- /dev/null
+++ b/docs/functions_w.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_w.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>w
+: <a class="el" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6">region</a>
+, <a class="el" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">RemminaMessagePanelPrivate</a>
+</li>
+<li>wallpaper_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">_RemminaPluginRdpsetGrid</a>
+</li>
+<li>webview
+: <a class="el" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">_RemminaPluginWWWData</a>
+</li>
+<li>widget
+: <a class="el" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">onMainThread_cb_data</a>
+</li>
+<li>width
+: <a class="el" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">_RemminaPluginScreenshotData</a>
+, <a class="el" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">_RemminaProtocolWidgetPriv</a>
+, <a class="el" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">onMainThread_cb_data</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>window
+: <a class="el" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">_RemminaChatWindow</a>
+, <a class="el" href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d">_RemminaConnectionWindow</a>
+, <a class="el" href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184">_RemminaLogWindow</a>
+, <a class="el" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">_RemminaMain</a>
+</li>
+<li>window_id
+: <a class="el" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">_RemminaPluginNxData</a>
+</li>
+<li>windowdrag_check
+: <a class="el" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">_RemminaPluginRdpsetGrid</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_x.html b/docs/functions_x.html
new file mode 100644
index 000000000..27cdf3204
--- /dev/null
+++ b/docs/functions_x.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_x.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_x"></a>- x -</h3><ul>
+<li>x
+: <a class="el" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">_RemminaPluginVncCoordinates</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8">_RemminaPluginVncEvent</a>
+, <a class="el" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#ad258e7b02e819b46656294de5e4bd8ad">region</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9">remmina_plugin_rdp_ui_object</a>
+</li>
+<li>x11_channel
+: <a class="el" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">_RemminaSSHTunnel</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/functions_y.html b/docs/functions_y.html
new file mode 100644
index 000000000..717787012
--- /dev/null
+++ b/docs/functions_y.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('functions_y.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a id="index_y"></a>- y -</h3><ul>
+<li>y
+: <a class="el" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">_RemminaPluginVncCoordinates</a>
+, <a class="el" href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11">_RemminaPluginVncEvent</a>
+, <a class="el" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">onMainThread_cb_data</a>
+, <a class="el" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">region</a>
+, <a class="el" href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf">remmina_plugin_rdp_event</a>
+, <a class="el" href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c">remmina_plugin_rdp_ui_object</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/gettranslator_8sh.html b/docs/gettranslator_8sh.html
new file mode 100644
index 000000000..fb9af452b
--- /dev/null
+++ b/docs/gettranslator_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: gettranslator.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('gettranslator_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">gettranslator.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="gettranslator_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="gettranslator_8sh.html">gettranslator.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/gettranslator_8sh_source.html b/docs/gettranslator_8sh_source.html
new file mode 100644
index 000000000..27973e9bd
--- /dev/null
+++ b/docs/gettranslator_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: gettranslator.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('gettranslator_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">gettranslator.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="gettranslator_8sh.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;#!/bin/bash -</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;#===============================================================================</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;#</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;# FILE: gettranslator.sh</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;#</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;# USAGE: ./gettranslator.sh [language]</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;#</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;# DESCRIPTION: Get last translator and last translation date for all languages</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;# or a given language specified as first argument</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;#</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;# OPTIONS: ---</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;# REQUIREMENTS: ---</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;# BUGS: ---</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;# NOTES: ---</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;# AUTHOR: Davy Defaud (DevDef), davy.defaud@free.fr</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;# ORGANIZATION: Remmina</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;# CREATED: 2019-06-23</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# LICENSE: GPLv2</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;# REVISION: ---</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;#===============================================================================</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;PODIR=&quot;$( cd $(dirname &quot;$0&quot;)/../po ; pwd -P )&quot;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;last_translator_field=&quot;Last-Translator&quot;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;last_translation_field=&quot;PO-Revision-Date&quot;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;function getFieldOfFile () {</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; fieldname=&quot;$1&quot;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; filename=&quot;$2&quot;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; regex=&quot;^\&quot;$fieldname: (.*)\\\n\&quot;\$&quot;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; field_line=$( grep -E &quot;$regex&quot; &quot;$filename&quot; )</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; if [[ &quot;$field_line&quot; =~ $regex ]]; then</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; echo -n &quot;${BASH_REMATCH[1]}&quot;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; fi</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;}</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;if [ $# -eq 0 ]; then</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; languages=$(cat &quot;$PODIR/LINGUAS&quot;)</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;else</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; languages=&quot;$1&quot;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;fi</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;is_header=1</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;for lang in $languages; do</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; if [ $is_header -eq 1 ] &amp;&amp; [ -f &quot;$PODIR/$lang.po&quot; ]; then</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; echo &quot;language;last_translator;last_translator_email;last_translation&quot;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; is_header=0</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; fi</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; last_translator=$( getFieldOfFile &quot;$last_translator_field&quot; &quot;$PODIR/$lang.po&quot; )</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; last_translation=$( getFieldOfFile &quot;$last_translation_field&quot; &quot;$PODIR/$lang.po&quot; )</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; last_translator_email=${last_translator##*&lt;}</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; last_translator_email=${last_translator_email%&gt;*}</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; if [[ &quot;$last_translator_email&quot; =~ ^(EMAIL@ADDRESS|[^@]+)$ ]]; then</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; last_translator_email=&#39;&#39;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; fi</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; echo &quot;$lang;$last_translator;$last_translator_email;$last_translation&quot;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;done</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="gettranslator_8sh.html">gettranslator.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/glibsecret__plugin_8c.html b/docs/glibsecret__plugin_8c.html
new file mode 100644
index 000000000..75bd9ecb7
--- /dev/null
+++ b/docs/glibsecret__plugin_8c.html
@@ -0,0 +1,447 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: glibsecret_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('glibsecret__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">glibsecret_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="glibsecret__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7bcbee29ba82169fba3272b233603ea9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a> ()</td></tr>
+<tr class="separator:a7bcbee29ba82169fba3272b233603ea9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4405b2a6e043f5fea85711b560eaa487"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">remmina_plugin_glibsecret_unlock_secret_service</a> ()</td></tr>
+<tr class="separator:a4405b2a6e043f5fea85711b560eaa487"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b913cc3dd8c30d0acb725e57c6b3853"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *password)</td></tr>
+<tr class="separator:a6b913cc3dd8c30d0acb725e57c6b3853"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0ff9ff94233f3241b8ce555a534a520"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:ab0ff9ff94233f3241b8ce555a534a520"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a639cd02e7ee1a797c57e9b14f73e3d1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:a639cd02e7ee1a797c57e9b14f73e3d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e3b8fa34a280781409f32433720e682"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a> ()</td></tr>
+<tr class="separator:a8e3b8fa34a280781409f32433720e682"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4adccd38b5ef09344624c0ba2ac7046f"><td class="memItemLeft" align="right" valign="top">static SecretSchema&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a></td></tr>
+<tr class="separator:a4adccd38b5ef09344624c0ba2ac7046f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bc831bbd1013a039ff4b31a340b3ec7"><td class="memItemLeft" align="right" valign="top">static SecretService *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a></td></tr>
+<tr class="separator:a2bc831bbd1013a039ff4b31a340b3ec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af10df16880b8942af051968748935d72"><td class="memItemLeft" align="right" valign="top">static SecretCollection *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a></td></tr>
+<tr class="separator:af10df16880b8942af051968748935d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b5617378d3f4d61a5150cff19d551dd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd">remmina_plugin_glibsecret</a></td></tr>
+<tr class="separator:a1b5617378d3f4d61a5150cff19d551dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00198">198</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a639cd02e7ee1a797c57e9b14f73e3d1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a639cd02e7ee1a797c57e9b14f73e3d1e">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_delete_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_glibsecret_delete_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00139">139</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab0ff9ff94233f3241b8ce555a534a520"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0ff9ff94233f3241b8ce555a534a520">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_get_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_plugin_glibsecret_get_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00119">119</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8e3b8fa34a280781409f32433720e682"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8e3b8fa34a280781409f32433720e682">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_glibsecret_init </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00153">153</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7bcbee29ba82169fba3272b233603ea9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7bcbee29ba82169fba3272b233603ea9">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_is_service_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_glibsecret_is_service_available </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00062">62</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6b913cc3dd8c30d0acb725e57c6b3853"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b913cc3dd8c30d0acb725e57c6b3853">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_store_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_glibsecret_store_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00098">98</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4405b2a6e043f5fea85711b560eaa487"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4405b2a6e043f5fea85711b560eaa487">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret_unlock_secret_service()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_glibsecret_unlock_secret_service </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00074">74</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="af10df16880b8942af051968748935d72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af10df16880b8942af051968748935d72">&#9670;&nbsp;</a></span>defaultcollection</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">SecretCollection* defaultcollection</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4adccd38b5ef09344624c0ba2ac7046f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4adccd38b5ef09344624c0ba2ac7046f">&#9670;&nbsp;</a></span>remmina_file_secret_schema</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">SecretSchema remmina_file_secret_schema</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;org.remmina.Password&quot;</span>, SECRET_SCHEMA_NONE,</div><div class="line"> {</div><div class="line"> { <span class="stringliteral">&quot;filename&quot;</span>, SECRET_SCHEMA_ATTRIBUTE_STRING },</div><div class="line"> { <span class="stringliteral">&quot;key&quot;</span>, SECRET_SCHEMA_ATTRIBUTE_STRING },</div><div class="line"> { NULL, 0 }</div><div class="line"> } }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00047">47</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1b5617378d3f4d61a5150cff19d551dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b5617378d3f4d61a5150cff19d551dd">&#9670;&nbsp;</a></span>remmina_plugin_glibsecret</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a> remmina_plugin_glibsecret</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>,</div><div class="line"> <span class="stringliteral">&quot;glibsecret&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secured password storage in the GNOME keyring&quot;</span>),</div><div class="line"> NULL,</div><div class="line"> VERSION,</div><div class="line"> 2000,</div><div class="line"> <a class="code" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a>,</div><div class="line"> <a class="code" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a>,</div><div class="line"> <a class="code" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a>,</div><div class="line"> <a class="code" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a>,</div><div class="line"> <a class="code" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a></div><div class="line">}</div><div class="ttc" id="glibsecret__plugin_8c_html_a8e3b8fa34a280781409f32433720e682"><div class="ttname"><a href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a></div><div class="ttdeci">gboolean remmina_plugin_glibsecret_init()</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00153">glibsecret_plugin.c:153</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a6b913cc3dd8c30d0acb725e57c6b3853"><div class="ttname"><a href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a></div><div class="ttdeci">void remmina_plugin_glibsecret_store_password(RemminaFile *remminafile, const gchar *key, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00098">glibsecret_plugin.c:98</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a7bcbee29ba82169fba3272b233603ea9"><div class="ttname"><a href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a></div><div class="ttdeci">gboolean remmina_plugin_glibsecret_is_service_available()</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00062">glibsecret_plugin.c:62</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_ab0ff9ff94233f3241b8ce555a534a520"><div class="ttname"><a href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a></div><div class="ttdeci">gchar * remmina_plugin_glibsecret_get_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00119">glibsecret_plugin.c:119</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a639cd02e7ee1a797c57e9b14f73e3d1e"><div class="ttname"><a href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a></div><div class="ttdeci">void remmina_plugin_glibsecret_delete_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00139">glibsecret_plugin.c:139</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00183">183</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00045">45</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2bc831bbd1013a039ff4b31a340b3ec7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bc831bbd1013a039ff4b31a340b3ec7">&#9670;&nbsp;</a></span>secretservice</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">SecretService* secretservice</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="glibsecret__plugin_8c_source.html#l00057">57</a> of file <a class="el" href="glibsecret__plugin_8c_source.html">glibsecret_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li><li class="navelem"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></li><li class="navelem"><a class="el" href="glibsecret__plugin_8c.html">glibsecret_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/glibsecret__plugin_8c.js b/docs/glibsecret__plugin_8c.js
new file mode 100644
index 000000000..06bbbe5a1
--- /dev/null
+++ b/docs/glibsecret__plugin_8c.js
@@ -0,0 +1,15 @@
+var glibsecret__plugin_8c =
+[
+ [ "remmina_plugin_entry", "glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_glibsecret_delete_password", "glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e", null ],
+ [ "remmina_plugin_glibsecret_get_password", "glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520", null ],
+ [ "remmina_plugin_glibsecret_init", "glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682", null ],
+ [ "remmina_plugin_glibsecret_is_service_available", "glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9", null ],
+ [ "remmina_plugin_glibsecret_store_password", "glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853", null ],
+ [ "remmina_plugin_glibsecret_unlock_secret_service", "glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487", null ],
+ [ "defaultcollection", "glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72", null ],
+ [ "remmina_file_secret_schema", "glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f", null ],
+ [ "remmina_plugin_glibsecret", "glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd", null ],
+ [ "remmina_plugin_service", "glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "secretservice", "glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7", null ]
+]; \ No newline at end of file
diff --git a/docs/glibsecret__plugin_8c_source.html b/docs/glibsecret__plugin_8c_source.html
new file mode 100644
index 000000000..da318aedc
--- /dev/null
+++ b/docs/glibsecret__plugin_8c_source.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: glibsecret_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('glibsecret__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">glibsecret_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="glibsecret__plugin_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) 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"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="glibsecret__plugin_8h.html">glibsecret_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n-lib.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;libsecret/secret.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="plugin_8h.html">remmina/plugin.h</a>&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 45</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f"> 47</a></span>&#160;<span class="keyword">static</span> SecretSchema <a class="code" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a> =</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{ <span class="stringliteral">&quot;org.remmina.Password&quot;</span>, SECRET_SCHEMA_NONE,</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; { <span class="stringliteral">&quot;filename&quot;</span>, SECRET_SCHEMA_ATTRIBUTE_STRING },</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; { <span class="stringliteral">&quot;key&quot;</span>, SECRET_SCHEMA_ATTRIBUTE_STRING },</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; { NULL, 0 }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; } };</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#ifdef LIBSECRET_VERSION_0_18</span></div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7"> 57</a></span>&#160;<span class="keyword">static</span> SecretService* <a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72"> 58</a></span>&#160;<span class="keyword">static</span> SecretCollection* <a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif</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;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9"> 62</a></span>&#160;gboolean <a class="code" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a>()</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#ifdef LIBSECRET_VERSION_0_18</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a> &amp;&amp; <a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif</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;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487"> 74</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">remmina_plugin_glibsecret_unlock_secret_service</a>()</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; TRACE_CALL(__func__);</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"> 78</span>&#160;<span class="preprocessor">#ifdef LIBSECRET_VERSION_0_18</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; GError *error = NULL;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; GList *objects, *ul;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; gchar* lbl;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a> &amp;&amp; <a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (secret_collection_get_locked(<a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>)) {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; lbl = secret_collection_get_label(<a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Requesting unlock of the default &#39;%s&#39; collection&quot;</span>, lbl);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; objects = g_list_append(NULL, <a class="code" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; secret_service_unlock_sync(<a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a>, objects, NULL, &amp;ul, &amp;error);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_list_free(objects);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; g_list_free(ul);</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; }</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;}</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853"> 98</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *password)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; GError *r = NULL;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> gchar *path;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; gchar *s;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; path = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a>(remminafile);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;Remmina: %s - %s&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>), key);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; secret_password_store_sync(&amp;<a class="code" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a>, SECRET_COLLECTION_DEFAULT, s, password,</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; NULL, &amp;r, <span class="stringliteral">&quot;filename&quot;</span>, path, <span class="stringliteral">&quot;key&quot;</span>, key, NULL);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; g_free(s);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span> (r == NULL) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Password \&quot;%s\&quot; saved for file %s\n&quot;</span>, key, path);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Password \&quot;%s\&quot; cannot be saved for file %s\n&quot;</span>, key, path);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; g_error_free(r);</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;}</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;gchar*</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520"> 119</a></span>&#160;<a class="code" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;{</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; GError *r = NULL;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">const</span> gchar *path;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gchar *password;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; gchar *p;</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; path = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a>(remminafile);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; password = secret_password_lookup_sync(&amp;<a class="code" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a>, NULL, &amp;r, <span class="stringliteral">&quot;filename&quot;</span>, path, <span class="stringliteral">&quot;key&quot;</span>, key, NULL);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (r == NULL) {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; p = g_strdup(password);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; secret_password_free(password);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> p;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Password cannot be found for file %s\n&quot;</span>, path);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e"> 139</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key)</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; GError *r = NULL;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">const</span> gchar *path;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; path = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a>(remminafile);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; secret_password_clear_sync(&amp;<a class="code" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a>, NULL, &amp;r, <span class="stringliteral">&quot;filename&quot;</span>, path, <span class="stringliteral">&quot;key&quot;</span>, key, NULL);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (r == NULL)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;password \&quot;%s\&quot; deleted for file %s&quot;</span>, key, path);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;password \&quot;%s\&quot; cannot be deleted for file %s&quot;</span>, key, path);</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"><a class="line" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682"> 153</a></span>&#160;gboolean <a class="code" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a>()</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"> 155</span>&#160;<span class="preprocessor">#ifdef LIBSECRET_VERSION_0_18</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; GError *error;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; error = NULL;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a> = secret_service_get_sync(SECRET_SERVICE_LOAD_COLLECTIONS, NULL, &amp;error);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; g_print(<span class="stringliteral">&quot;[glibsecret] unable to get secret service: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">if</span> (<a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a> == NULL) {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; g_print(<span class="stringliteral">&quot;[glibsecret] unable to get secret service: Unknown error.\n&quot;</span>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</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="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a> = secret_collection_for_alias_sync(<a class="code" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a>, SECRET_COLLECTION_DEFAULT, SECRET_COLLECTION_NONE, NULL, &amp;error);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; g_print(<span class="stringliteral">&quot;[glibsecret] unable to get secret service default collection: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</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; <a class="code" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">remmina_plugin_glibsecret_unlock_secret_service</a>();</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_print(<span class="stringliteral">&quot;Libsecret was too old during compilation, disabling secret service.\n&quot;</span>);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="preprocessor">#endif</span></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"><a class="line" href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd"> 183</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> <a class="code" href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd">remmina_plugin_glibsecret</a> =</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;{ <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>,</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="stringliteral">&quot;glibsecret&quot;</span>,</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secured password storage in the GNOME keyring&quot;</span>),</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; NULL,</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; VERSION,</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; 2000,</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a>,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a>,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a>,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a></div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;};</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;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 198</a></span>&#160;<a class="code" href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</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; TRACE_CALL(__func__);</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="comment">/* This function should only register the secret plugin. No init action</span></div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> * should be performed here. Initialization will be done later</span></div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> * with remmina_plugin_xxx_init() . */</span></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; remmina_plugin_service = service;</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; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_glibsecret)) {</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</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; <span class="keywordflow">return</span> TRUE;</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="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a2bc831bbd1013a039ff4b31a340b3ec7"><div class="ttname"><a href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">secretservice</a></div><div class="ttdeci">static SecretService * secretservice</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00057">glibsecret_plugin.c:57</a></div></div>
+<div class="ttc" id="plugin_8h_html"><div class="ttname"><a href="plugin_8h.html">plugin.h</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a1b5617378d3f4d61a5150cff19d551dd"><div class="ttname"><a href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd">remmina_plugin_glibsecret</a></div><div class="ttdeci">static RemminaSecretPlugin remmina_plugin_glibsecret</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00183">glibsecret_plugin.c:183</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00198">glibsecret_plugin.c:198</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a4adccd38b5ef09344624c0ba2ac7046f"><div class="ttname"><a href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">remmina_file_secret_schema</a></div><div class="ttdeci">static SecretSchema remmina_file_secret_schema</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00047">glibsecret_plugin.c:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a8e3b8fa34a280781409f32433720e682"><div class="ttname"><a href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">remmina_plugin_glibsecret_init</a></div><div class="ttdeci">gboolean remmina_plugin_glibsecret_init()</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00153">glibsecret_plugin.c:153</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00045">glibsecret_plugin.c:45</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a6b913cc3dd8c30d0acb725e57c6b3853"><div class="ttname"><a href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">remmina_plugin_glibsecret_store_password</a></div><div class="ttdeci">void remmina_plugin_glibsecret_store_password(RemminaFile *remminafile, const gchar *key, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00098">glibsecret_plugin.c:98</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a4405b2a6e043f5fea85711b560eaa487"><div class="ttname"><a href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">remmina_plugin_glibsecret_unlock_secret_service</a></div><div class="ttdeci">static void remmina_plugin_glibsecret_unlock_secret_service()</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00074">glibsecret_plugin.c:74</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa413711beeac32a453068c0faf75f164"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">_RemminaPluginService::file_get_path</a></div><div class="ttdeci">const gchar *(* file_get_path)(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00198">plugin.h:198</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a7bcbee29ba82169fba3272b233603ea9"><div class="ttname"><a href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">remmina_plugin_glibsecret_is_service_available</a></div><div class="ttdeci">gboolean remmina_plugin_glibsecret_is_service_available()</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00062">glibsecret_plugin.c:62</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_ab0ff9ff94233f3241b8ce555a534a520"><div class="ttname"><a href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">remmina_plugin_glibsecret_get_password</a></div><div class="ttdeci">gchar * remmina_plugin_glibsecret_get_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00119">glibsecret_plugin.c:119</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_a639cd02e7ee1a797c57e9b14f73e3d1e"><div class="ttname"><a href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">remmina_plugin_glibsecret_delete_password</a></div><div class="ttdeci">void remmina_plugin_glibsecret_delete_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00139">glibsecret_plugin.c:139</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8c_html_af10df16880b8942af051968748935d72"><div class="ttname"><a href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">defaultcollection</a></div><div class="ttdeci">static SecretCollection * defaultcollection</div><div class="ttdef"><b>Definition:</b> <a href="glibsecret__plugin_8c_source.html#l00058">glibsecret_plugin.c:58</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="glibsecret__plugin_8h_html"><div class="ttname"><a href="glibsecret__plugin_8h.html">glibsecret_plugin.h</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li><li class="navelem"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></li><li class="navelem"><a class="el" href="glibsecret__plugin_8c.html">glibsecret_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/glibsecret__plugin_8h.html b/docs/glibsecret__plugin_8h.html
new file mode 100644
index 000000000..0ec2a8ed6
--- /dev/null
+++ b/docs/glibsecret__plugin_8h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: glibsecret_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('glibsecret__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">glibsecret_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="glibsecret__plugin_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li><li class="navelem"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></li><li class="navelem"><a class="el" href="glibsecret__plugin_8h.html">glibsecret_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/glibsecret__plugin_8h_source.html b/docs/glibsecret__plugin_8h_source.html
new file mode 100644
index 000000000..499772369
--- /dev/null
+++ b/docs/glibsecret__plugin_8h_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: glibsecret_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('glibsecret__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">glibsecret_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="glibsecret__plugin_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) 2015-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#ifndef __BACKEND_LIBSECRET_H__</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#define __BACKEND_LIBSECRET_H__</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 &lt;libsecret/secret.h&gt;</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">#endif // __BACKEND_LIBSECRET_H__</span></div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_44f4a4140b93ab2b1a3d54fe93f215e1.html">secret</a></li><li class="navelem"><a class="el" href="dir_22645d582cc18eda0ab074b7cd176c78.html">src</a></li><li class="navelem"><a class="el" href="glibsecret__plugin_8h.html">glibsecret_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals.html b/docs/globals.html
new file mode 100644
index 000000000..895c70f08
--- /dev/null
+++ b/docs/globals.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index__"></a>- _ -</h3><ul>
+<li>_gpg_error_to_errno()
+: <a class="el" href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c">remmina.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_a.html b/docs/globals_a.html
new file mode 100644
index 000000000..400b6714e
--- /dev/null
+++ b/docs/globals_a.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_a.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>authpanel_mt_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">remmina_protocol_widget.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_b.html b/docs/globals_b.html
new file mode 100644
index 000000000..32db9bea4
--- /dev/null
+++ b/docs/globals_b.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_b.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>btn_response_key
+: <a class="el" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">remmina_message_panel.c</a>
+</li>
+<li>build_kwallet_key()
+: <a class="el" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">kwallet_plugin_main.c</a>
+</li>
+<li>buildconfig_strstr()
+: <a class="el" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">rdp_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_c.html b/docs/globals_c.html
new file mode 100644
index 000000000..eb6aa6efc
--- /dev/null
+++ b/docs/globals_c.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cachedir
+: <a class="el" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">remmina_file_manager.c</a>
+</li>
+<li>cancel_connect_xport_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_init_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_open_connection_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_start_direct_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_start_reverse_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">remmina_protocol_widget.c</a>
+</li>
+<li>CANCEL_TASK_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">remmina_ftp_client.c</a>
+</li>
+<li>cb_child_watch()
+: <a class="el" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">exec_plugin.c</a>
+</li>
+<li>cb_closewidget()
+: <a class="el" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">remmina_exec.c</a>
+</li>
+<li>cb_err_watch()
+: <a class="el" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">exec_plugin.c</a>
+</li>
+<li>cb_lasterror_confirmed()
+: <a class="el" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">rcw.c</a>
+</li>
+<li>cb_out_watch()
+: <a class="el" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">exec_plugin.c</a>
+</li>
+<li>changenext()
+: <a class="el" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">remmina_mpchange.c</a>
+</li>
+<li>check_for_endianness()
+: <a class="el" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">vnc_plugin.c</a>
+</li>
+<li>clientbuild_list
+: <a class="el" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">rdp_plugin.c</a>
+</li>
+<li>clientbuild_tooltip
+: <a class="el" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">rdp_plugin.c</a>
+</li>
+<li>COL_F
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">remmina_mpchange.c</a>
+</li>
+<li>COL_FILENAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">remmina_mpchange.c</a>
+</li>
+<li>COL_GROUP
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">remmina_mpchange.c</a>
+</li>
+<li>COL_NAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">remmina_mpchange.c</a>
+</li>
+<li>COL_USERNAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">remmina_mpchange.c</a>
+</li>
+<li>color_schemes
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">remmina_ssh_plugin.c</a>
+</li>
+<li>colordepth_list
+: <a class="el" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">rdp_plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">vnc_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">xdmcp_plugin.c</a>
+</li>
+<li>common_identities
+: <a class="el" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">remmina_ssh.c</a>
+</li>
+<li>compare()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">remmina_ssh_plugin.c</a>
+</li>
+<li>compare_secret_plugin_init_order()
+: <a class="el" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">remmina_plugin_manager.c</a>
+</li>
+<li>complete_cleanup_on_main_thread()
+: <a class="el" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">rdp_plugin.c</a>
+</li>
+<li>conn_closed()
+: <a class="el" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">remmina_protocol_widget.c</a>
+</li>
+<li>conn_opened()
+: <a class="el" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">remmina_protocol_widget.c</a>
+</li>
+<li>crlf2lf()
+: <a class="el" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">rdp_cliprdr.c</a>
+</li>
+<li>CUSTOM
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_d.html b/docs/globals_d.html
new file mode 100644
index 000000000..b16011a1a
--- /dev/null
+++ b/docs/globals_d.html
@@ -0,0 +1,146 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>DATE_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">remmina_main.c</a>
+</li>
+<li>default_keymap_data
+: <a class="el" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">remmina_pref.c</a>
+</li>
+<li>default_keystrokes
+: <a class="el" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">remmina_pref.c</a>
+</li>
+<li>default_resolutions
+: <a class="el" href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290">remmina_pref.h</a>
+</li>
+<li>defaultcollection
+: <a class="el" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">glibsecret_plugin.c</a>
+</li>
+<li>DELETE_FILE_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">remmina_ftp_client.c</a>
+</li>
+<li>desktop_resize()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">remmina_protocol_widget.c</a>
+</li>
+<li>disable_rcw_delete_confirm_cb()
+: <a class="el" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">remmina_exec.c</a>
+</li>
+<li>distroArray
+: <a class="el" href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478">remmina_utils.c</a>
+</li>
+<li>DistroInfo
+: <a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">remmina_utils.c</a>
+</li>
+<li>dnd_targets_ftb
+: <a class="el" href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90">rcw.c</a>
+</li>
+<li>dnd_targets_tb
+: <a class="el" href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523">rcw.c</a>
+</li>
+<li>dot_cursor_x_hot
+: <a class="el" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">vnc_plugin.c</a>
+</li>
+<li>dot_cursor_xpm
+: <a class="el" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">vnc_plugin.c</a>
+</li>
+<li>dot_cursor_y_hot
+: <a class="el" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">vnc_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_dup.js b/docs/globals_dup.js
new file mode 100644
index 000000000..5c6a3e680
--- /dev/null
+++ b/docs/globals_dup.js
@@ -0,0 +1,27 @@
+var globals_dup =
+[
+ [ "_", "globals.html", null ],
+ [ "a", "globals_a.html", null ],
+ [ "b", "globals_b.html", null ],
+ [ "c", "globals_c.html", null ],
+ [ "d", "globals_d.html", null ],
+ [ "e", "globals_e.html", null ],
+ [ "f", "globals_f.html", null ],
+ [ "g", "globals_g.html", null ],
+ [ "h", "globals_h.html", null ],
+ [ "i", "globals_i.html", null ],
+ [ "k", "globals_k.html", null ],
+ [ "l", "globals_l.html", null ],
+ [ "m", "globals_m.html", null ],
+ [ "n", "globals_n.html", null ],
+ [ "o", "globals_o.html", null ],
+ [ "p", "globals_p.html", null ],
+ [ "q", "globals_q.html", null ],
+ [ "r", "globals_r.html", null ],
+ [ "s", "globals_s.html", null ],
+ [ "t", "globals_t.html", null ],
+ [ "u", "globals_u.html", null ],
+ [ "v", "globals_v.html", null ],
+ [ "w", "globals_w.html", null ],
+ [ "x", "globals_x.html", null ]
+]; \ No newline at end of file
diff --git a/docs/globals_e.html b/docs/globals_e.html
new file mode 100644
index 000000000..258468b83
--- /dev/null
+++ b/docs/globals_e.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_e.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>EDIT_ITEM_SIGNAL
+: <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">remmina_applet_menu.c</a>
+</li>
+<li>enable_inputs()
+: <a class="el" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">remmina_mpchange.c</a>
+</li>
+<li>encrypted_settings_cache
+: <a class="el" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">remmina_plugin_manager.c</a>
+</li>
+<li>eweekdays
+: <a class="el" href="rmnews_8c.html#af4777302c760225b833206545e9f437d">rmnews.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_enum.html b/docs/globals_enum.html
new file mode 100644
index 000000000..2e7fce23c
--- /dev/null
+++ b/docs/globals_enum.html
@@ -0,0 +1,167 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_enum.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>color_schemes
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">remmina_ssh_plugin.c</a>
+</li>
+<li>panel_type
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_ssh_auth_result
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh.h</a>
+</li>
+<li>RemminaAppletMenuItemType
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuNewConnectionType
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAuthpwdType
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">types.h</a>
+</li>
+<li>RemminaCommandType
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">remmina_exec.h</a>
+</li>
+<li>RemminaCondExitType
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">remmina_exec.h</a>
+</li>
+<li>RemminaConnectionWindowOnDeleteConfirmMode
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">rcw.h</a>
+</li>
+<li>RemminaMessagePanelFlags
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">types.h</a>
+</li>
+<li>RemminaNXEventType
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">nx_plugin.h</a>
+</li>
+<li>RemminaPluginRdpEventType
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiClipboardType
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiEeventType
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiPointerType
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiType
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginType
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">plugin.h</a>
+</li>
+<li>RemminaProtocolFeatureType
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">types.h</a>
+</li>
+<li>RemminaProtocolSettingType
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">types.h</a>
+</li>
+<li>RemminaProtocolSSHSetting
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">types.h</a>
+</li>
+<li>RemminaProtocolWidgetResolutionMode
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">types.h</a>
+</li>
+<li>RemminaScaleMode
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">types.h</a>
+</li>
+<li>WWWWebViewDocumentType
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">www_plugin.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval.html b/docs/globals_eval.html
new file mode 100644
index 000000000..a4ce258ac
--- /dev/null
+++ b/docs/globals_eval.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>CANCEL_TASK_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">remmina_ftp_client.c</a>
+</li>
+<li>COL_F
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">remmina_mpchange.c</a>
+</li>
+<li>COL_FILENAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">remmina_mpchange.c</a>
+</li>
+<li>COL_GROUP
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">remmina_mpchange.c</a>
+</li>
+<li>COL_NAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">remmina_mpchange.c</a>
+</li>
+<li>COL_USERNAME
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">remmina_mpchange.c</a>
+</li>
+<li>CUSTOM
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval.js b/docs/globals_eval.js
new file mode 100644
index 000000000..b6cf4c453
--- /dev/null
+++ b/docs/globals_eval.js
@@ -0,0 +1,19 @@
+var globals_eval =
+[
+ [ "c", "globals_eval.html", null ],
+ [ "d", "globals_eval_d.html", null ],
+ [ "e", "globals_eval_e.html", null ],
+ [ "f", "globals_eval_f.html", null ],
+ [ "g", "globals_eval_g.html", null ],
+ [ "l", "globals_eval_l.html", null ],
+ [ "n", "globals_eval_n.html", null ],
+ [ "o", "globals_eval_o.html", null ],
+ [ "p", "globals_eval_p.html", null ],
+ [ "r", "globals_eval_r.html", null ],
+ [ "s", "globals_eval_s.html", null ],
+ [ "t", "globals_eval_t.html", null ],
+ [ "u", "globals_eval_u.html", null ],
+ [ "v", "globals_eval_v.html", null ],
+ [ "w", "globals_eval_w.html", null ],
+ [ "x", "globals_eval_x.html", null ]
+]; \ No newline at end of file
diff --git a/docs/globals_eval_d.html b/docs/globals_eval_d.html
new file mode 100644
index 000000000..df37ebe36
--- /dev/null
+++ b/docs/globals_eval_d.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>DATE_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">remmina_main.c</a>
+</li>
+<li>DELETE_FILE_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">remmina_ftp_client.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_e.html b/docs/globals_eval_e.html
new file mode 100644
index 000000000..c0734135f
--- /dev/null
+++ b/docs/globals_eval_e.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_e.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>EDIT_ITEM_SIGNAL
+: <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">remmina_applet_menu.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_f.html b/docs/globals_eval_f.html
new file mode 100644
index 000000000..9d685f300
--- /dev/null
+++ b/docs/globals_eval_f.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>FILENAME_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">remmina_main.c</a>
+</li>
+<li>FLOATING_TOOLBAR_PLACEMENT_BOTTOM
+: <a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_PLACEMENT_TOP
+: <a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_DISABLE
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_INVISIBLE
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_PEEKING
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">remmina_pref.h</a>
+</li>
+<li>FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3">remmina_pref.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_g.html b/docs/globals_eval_g.html
new file mode 100644
index 000000000..c7ac80ca5
--- /dev/null
+++ b/docs/globals_eval_g.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>GROUP_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">remmina_main.c</a>
+</li>
+<li>GRUVBOX
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_l.html b/docs/globals_eval_l.html
new file mode 100644
index 000000000..23b33e49d
--- /dev/null
+++ b/docs/globals_eval_l.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>LAST_SIGNAL
+: <a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">rcw.c</a>
+, <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">remmina_ftp_client.c</a>
+</li>
+<li>LAUNCH_ITEM_SIGNAL
+: <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">remmina_applet_menu.c</a>
+</li>
+<li>LINUX
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_n.html b/docs/globals_eval_n.html
new file mode 100644
index 000000000..02cf62533
--- /dev/null
+++ b/docs/globals_eval_n.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_n.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>N_COLUMNS
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4">remmina_main.c</a>
+</li>
+<li>NAME_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">remmina_main.c</a>
+</li>
+<li>NEW_TASK_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">remmina_ftp_client.c</a>
+</li>
+<li>NUM_COLS
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">remmina_mpchange.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_o.html b/docs/globals_eval_o.html
new file mode 100644
index 000000000..1df83147b
--- /dev/null
+++ b/docs/globals_eval_o.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_o.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>OPEN_DIR_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">remmina_ftp_client.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_p.html b/docs/globals_eval_p.html
new file mode 100644
index 000000000..518d065b2
--- /dev/null
+++ b/docs/globals_eval_p.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_p.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>PLUGIN_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">remmina_main.c</a>
+</li>
+<li>PROTOCOL_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">remmina_main.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_r.html b/docs/globals_eval_r.html
new file mode 100644
index 000000000..496dccad0
--- /dev/null
+++ b/docs/globals_eval_r.html
@@ -0,0 +1,637 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>RCW_ONDELETE_CONFIRM_IF_2_OR_MORE
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">rcw.h</a>
+</li>
+<li>RCW_ONDELETE_NOCONFIRM
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">rcw.h</a>
+</li>
+<li>REMMINA_ACTION_CONNECT
+: <a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">remmina_pref.h</a>
+</li>
+<li>REMMINA_ACTION_EDIT
+: <a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">remmina_pref.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_DISCOVERED
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_FILE
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_NEW
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_NONE
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_TOP
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_PROTOCOL
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2">types.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920">types.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_SSH_PWD
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d">types.h</a>
+</li>
+<li>REMMINA_COMMAND_ABOUT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_AUTOSTART
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_CONNECT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_EDIT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_EXIT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_FULL_VERSION
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_MAIN
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_NEW
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_NONE
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_PLUGIN
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_PREF
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_VERSION
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONDISCONNECT
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONMAINWINDELETE
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONQUIT
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">remmina_exec.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_GROUP
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_NAME
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_NAME_SORT
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_PERMISSION
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_SIZE
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_TYPE
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_USER
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_N_COLUMNS
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_N_TYPES
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_TYPE_DIR
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_TYPE_FILE
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_DONESIZE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_LOCALDIR
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_NAME
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_REMOTEDIR
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_SIZE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_STATUS
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TASKID
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TASKTYPE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TOOLTIP
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TYPE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_COLUMNS
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_STATUSES
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_TYPES
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_ERROR
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_FINISH
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_RUN
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_WAIT
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_TYPE_DOWNLOAD
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_TYPE_UPLOAD
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CACERTFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CACRLFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CLIENTCERTFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CLIENTKEYFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_DOMAIN
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_DOMAIN
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_USERNAME
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_MAXWIDGETID
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_PASSWORD
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_SAVEPASSWORD
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_USERNAME
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_NX_EVENT_ATTACH
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_CANCEL
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_RESTORE
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_START
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_TERMINATE
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_DISPLAY
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_ID
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_NAME
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_STATUS
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_TYPE
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_N_COLUMNS
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">nx_session.h</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_SCALE
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_ENTRY
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_FILE
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_PREF
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_PROTOCOL
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_SECRET
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_TOOL
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CUTTEXT
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_KEY
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_POINTER
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PREF_APPEARANCE
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb">remmina_pref_dialog.h</a>
+</li>
+<li>REMMINA_PREF_APPLET_TAB
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c">remmina_pref_dialog.h</a>
+</li>
+<li>REMMINA_PREF_OPTIONS_TAB
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a">remmina_pref_dialog.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_END
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_PREF
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_SCALE
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_TOOL
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_CHECK
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_COMBO
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_END
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_FILE
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_FOLDER
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_SELECT
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_SERVER
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_TEXT
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_NONE
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_SFTP
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_SSH
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_TUNNEL
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">types.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_DISCONNECT
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_MOUSE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SCANCODE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_DEFAULT
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_FREE
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_NEW
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_NULL
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_SET
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_SETPOS
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_FORMATLIST
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_GET_DATA
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_SET_DATA
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CONNECTED
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CURSOR
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT_UPDATE_SCALE
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_NOCODEC
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_RECONNECT_PROGRESS
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_RFX
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_UPDATE_REGIONS
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">rdp_plugin.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_FATAL_ERROR
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_SUCCESS
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_USERCANCEL
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_OPEN
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_REVERSE
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_X11
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_XPORT
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">remmina_ssh.h</a>
+</li>
+<li>REMMINA_TAB_ALL
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_BY_GROUP
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_BY_PROTOCOL
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_NONE
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">remmina_pref.h</a>
+</li>
+<li>REMMINA_VIEW_FILE_LIST
+: <a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">remmina_pref.h</a>
+</li>
+<li>REMMINA_VIEW_FILE_TREE
+: <a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">remmina_pref.h</a>
+</li>
+<li>RES_INVALID
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">types.h</a>
+</li>
+<li>RES_USE_CLIENT
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">types.h</a>
+</li>
+<li>RES_USE_CUSTOM
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">types.h</a>
+</li>
+<li>RES_USE_INITIAL_WINDOW_SIZE
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">types.h</a>
+</li>
+<li>RPWDT_AUTH
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">remmina_protocol_widget.c</a>
+</li>
+<li>RPWDT_AUTHX509
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">remmina_protocol_widget.c</a>
+</li>
+<li>RPWDT_QUESTIONYESNO
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">remmina_protocol_widget.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_s.html b/docs/globals_eval_s.html
new file mode 100644
index 000000000..e7e2b1970
--- /dev/null
+++ b/docs/globals_eval_s.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_s.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>SCROLLED_FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">remmina_pref.h</a>
+</li>
+<li>SCROLLED_WINDOW_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">remmina_pref.h</a>
+</li>
+<li>SERVER_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">remmina_main.c</a>
+</li>
+<li>SOLARIZED_DARK
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">remmina_ssh_plugin.c</a>
+</li>
+<li>SOLARIZED_LIGHT
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">remmina_ssh_plugin.c</a>
+</li>
+<li>SSH_AUTH_AGENT
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_AUTO_PUBLICKEY
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_GSSAPI
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_PASSWORD
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_PUBLICKEY
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">remmina_file.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_t.html b/docs/globals_eval_t.html
new file mode 100644
index 000000000..4eeb8cf46
--- /dev/null
+++ b/docs/globals_eval_t.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_t.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>TANGO
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">remmina_ssh_plugin.c</a>
+</li>
+<li>TOOLBAR_PLACEMENT_BOTTOM
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_LEFT
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_RIGHT
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_TOP
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">remmina_pref.h</a>
+</li>
+<li>TOOLBARPLACE_SIGNAL
+: <a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">rcw.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_u.html b/docs/globals_eval_u.html
new file mode 100644
index 000000000..77405ae13
--- /dev/null
+++ b/docs/globals_eval_u.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_u.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>UNDEFINED_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">remmina_pref.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_v.html b/docs/globals_eval_v.html
new file mode 100644
index 000000000..111a28e6f
--- /dev/null
+++ b/docs/globals_eval_v.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_v.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>VIEWPORT_FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">remmina_pref.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_w.html b/docs/globals_eval_w.html
new file mode 100644
index 000000000..d84128236
--- /dev/null
+++ b/docs/globals_eval_w.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_w.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>WWW_WEB_VIEW_DOCUMENT_HTML
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_IMAGE
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_OTHER
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_XML
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">www_plugin.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_eval_x.html b/docs/globals_eval_x.html
new file mode 100644
index 000000000..37d56e0d8
--- /dev/null
+++ b/docs/globals_eval_x.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_eval_x.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_x"></a>- x -</h3><ul>
+<li>XTERM
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_f.html b/docs/globals_f.html
new file mode 100644
index 000000000..5952dbb2b
--- /dev/null
+++ b/docs/globals_f.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>FILENAME_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">remmina_main.c</a>
+</li>
+<li>find_protocol_setting()
+: <a class="el" href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99">remmina_file.c</a>
+</li>
+<li>FLOATING_TOOLBAR_PLACEMENT_BOTTOM
+: <a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_PLACEMENT_TOP
+: <a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_DISABLE
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_INVISIBLE
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">remmina_pref.h</a>
+</li>
+<li>FLOATING_TOOLBAR_VISIBILITY_PEEKING
+: <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">remmina_pref.h</a>
+</li>
+<li>FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3">remmina_pref.h</a>
+</li>
+<li>fun
+: <a class="el" href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">remmina_trace_calls.h</a>
+, <a class="el" href="remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24">remmina_main.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func.html b/docs/globals_func.html
new file mode 100644
index 000000000..2ddddc87b
--- /dev/null
+++ b/docs/globals_func.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index__"></a>- _ -</h3><ul>
+<li>_gpg_error_to_errno()
+: <a class="el" href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c">remmina.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func.js b/docs/globals_func.js
new file mode 100644
index 000000000..c9705a3fe
--- /dev/null
+++ b/docs/globals_func.js
@@ -0,0 +1,23 @@
+var globals_func =
+[
+ [ "_", "globals_func.html", null ],
+ [ "a", "globals_func_a.html", null ],
+ [ "b", "globals_func_b.html", null ],
+ [ "c", "globals_func_c.html", null ],
+ [ "d", "globals_func_d.html", null ],
+ [ "e", "globals_func_e.html", null ],
+ [ "f", "globals_func_f.html", null ],
+ [ "g", "globals_func_g.html", null ],
+ [ "h", "globals_func_h.html", null ],
+ [ "i", "globals_func_i.html", null ],
+ [ "k", "globals_func_k.html", null ],
+ [ "l", "globals_func_l.html", null ],
+ [ "m", "globals_func_m.html", null ],
+ [ "n", "globals_func_n.html", null ],
+ [ "o", "globals_func_o.html", null ],
+ [ "r", "globals_func_r.html", null ],
+ [ "s", "globals_func_s.html", null ],
+ [ "u", "globals_func_u.html", null ],
+ [ "v", "globals_func_v.html", null ],
+ [ "w", "globals_func_w.html", null ]
+]; \ No newline at end of file
diff --git a/docs/globals_func_a.html b/docs/globals_func_a.html
new file mode 100644
index 000000000..c548ebea1
--- /dev/null
+++ b/docs/globals_func_a.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_a.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_a"></a>- a -</h3><ul>
+<li>authpanel_mt_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">remmina_protocol_widget.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_b.html b/docs/globals_func_b.html
new file mode 100644
index 000000000..ffa2eaf2e
--- /dev/null
+++ b/docs/globals_func_b.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_b.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>build_kwallet_key()
+: <a class="el" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">kwallet_plugin_main.c</a>
+</li>
+<li>buildconfig_strstr()
+: <a class="el" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">rdp_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_c.html b/docs/globals_func_c.html
new file mode 100644
index 000000000..bd0cbf06b
--- /dev/null
+++ b/docs/globals_func_c.html
@@ -0,0 +1,154 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cancel_connect_xport_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_init_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_open_connection_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_start_direct_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">remmina_protocol_widget.c</a>
+</li>
+<li>cancel_start_reverse_tunnel_cb()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">remmina_protocol_widget.c</a>
+</li>
+<li>cb_child_watch()
+: <a class="el" href="exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71">exec_plugin.c</a>
+</li>
+<li>cb_closewidget()
+: <a class="el" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">remmina_exec.c</a>
+</li>
+<li>cb_err_watch()
+: <a class="el" href="exec__plugin_8c.html#ab43db37b96c68093747620fbde879327">exec_plugin.c</a>
+</li>
+<li>cb_lasterror_confirmed()
+: <a class="el" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">rcw.c</a>
+</li>
+<li>cb_out_watch()
+: <a class="el" href="exec__plugin_8c.html#aa6294507761837488c3777f21096d219">exec_plugin.c</a>
+</li>
+<li>changenext()
+: <a class="el" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">remmina_mpchange.c</a>
+</li>
+<li>check_for_endianness()
+: <a class="el" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">vnc_plugin.c</a>
+</li>
+<li>compare()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">remmina_ssh_plugin.c</a>
+</li>
+<li>compare_secret_plugin_init_order()
+: <a class="el" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">remmina_plugin_manager.c</a>
+</li>
+<li>complete_cleanup_on_main_thread()
+: <a class="el" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">rdp_plugin.c</a>
+</li>
+<li>conn_closed()
+: <a class="el" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">remmina_protocol_widget.c</a>
+</li>
+<li>conn_opened()
+: <a class="el" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">remmina_protocol_widget.c</a>
+</li>
+<li>crlf2lf()
+: <a class="el" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">rdp_cliprdr.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_d.html b/docs/globals_func_d.html
new file mode 100644
index 000000000..f4a766821
--- /dev/null
+++ b/docs/globals_func_d.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>desktop_resize()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">remmina_protocol_widget.c</a>
+</li>
+<li>disable_rcw_delete_confirm_cb()
+: <a class="el" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">remmina_exec.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_e.html b/docs/globals_func_e.html
new file mode 100644
index 000000000..679168c35
--- /dev/null
+++ b/docs/globals_func_e.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_e.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>enable_inputs()
+: <a class="el" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">remmina_mpchange.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_f.html b/docs/globals_func_f.html
new file mode 100644
index 000000000..60134255a
--- /dev/null
+++ b/docs/globals_func_f.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_f.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>find_protocol_setting()
+: <a class="el" href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99">remmina_file.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_g.html b/docs/globals_func_g.html
new file mode 100644
index 000000000..e91921c8b
--- /dev/null
+++ b/docs/globals_func_g.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>G_DECLARE_DERIVABLE_TYPE()
+: <a class="el" href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156">remmina_message_panel.h</a>
+</li>
+<li>G_DEFINE_TYPE()
+: <a class="el" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">rcw.c</a>
+, <a class="el" href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8">remmina_sftp_client.c</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d">remmina_scrolled_viewport.c</a>
+, <a class="el" href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007">remmina_chat_window.c</a>
+, <a class="el" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de">remmina_file_editor.c</a>
+, <a class="el" href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366">remmina_applet_menu.c</a>
+</li>
+<li>G_DEFINE_TYPE_WITH_CODE()
+: <a class="el" href="telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8">telepathy_handler.c</a>
+</li>
+<li>G_DEFINE_TYPE_WITH_PRIVATE()
+: <a class="el" href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e">remmina_message_panel.c</a>
+</li>
+<li>get_current_allowed_scale_mode()
+: <a class="el" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">rcw.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_h.html b/docs/globals_func_h.html
new file mode 100644
index 000000000..953e0762d
--- /dev/null
+++ b/docs/globals_func_h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_h"></a>- h -</h3><ul>
+<li>htdestroy()
+: <a class="el" href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">remmina_plugin_manager.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_i.html b/docs/globals_func_i.html
new file mode 100644
index 000000000..6bda7cd35
--- /dev/null
+++ b/docs/globals_func_i.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_i.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>init_settings_cache()
+: <a class="el" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">remmina_plugin_manager.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_k.html b/docs/globals_func_k.html
new file mode 100644
index 000000000..a9173ba28
--- /dev/null
+++ b/docs/globals_func_k.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_k.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_k"></a>- k -</h3><ul>
+<li>keypress_list_add()
+: <a class="el" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">rdp_event.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_l.html b/docs/globals_func_l.html
new file mode 100644
index 000000000..daad2fc83
--- /dev/null
+++ b/docs/globals_func_l.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>lf2crlf()
+: <a class="el" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">rdp_cliprdr.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_m.html b/docs/globals_func_m.html
new file mode 100644
index 000000000..b08c03e81
--- /dev/null
+++ b/docs/globals_func_m.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_m.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>main()
+: <a class="el" href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97">remmina.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_n.html b/docs/globals_func_n.html
new file mode 100644
index 000000000..01d37a2e2
--- /dev/null
+++ b/docs/globals_func_n.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_n.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>N_()
+: <a class="el" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">vnc_plugin.c</a>
+</li>
+<li>nb_find_page_by_cnnobj()
+: <a class="el" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">rcw.c</a>
+</li>
+<li>nb_migrate_page_content()
+: <a class="el" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">rcw.c</a>
+</li>
+<li>nb_set_current_page()
+: <a class="el" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">rcw.c</a>
+</li>
+<li>newline_remove()
+: <a class="el" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">remmina_exec.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_o.html b/docs/globals_func_o.html
new file mode 100644
index 000000000..d6161d107
--- /dev/null
+++ b/docs/globals_func_o.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_o.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>onMainThread_cb()
+: <a class="el" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">nx_plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">vnc_plugin.c</a>
+</li>
+<li>onMainThread_cleanup_handler()
+: <a class="el" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">vnc_plugin.c</a>
+, <a class="el" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">nx_plugin.c</a>
+</li>
+<li>onMainThread_gtk_socket_add_id()
+: <a class="el" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">nx_plugin.c</a>
+</li>
+<li>onMainThread_schedule_callback_and_wait()
+: <a class="el" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">vnc_plugin.c</a>
+, <a class="el" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">nx_plugin.c</a>
+</li>
+<li>open_connection_last_stage()
+: <a class="el" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">rcw.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_r.html b/docs/globals_func_r.html
new file mode 100644
index 000000000..5d83e1eb0
--- /dev/null
+++ b/docs/globals_func_r.html
@@ -0,0 +1,3987 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>rco_call_protocol_feature_activate()
+: <a class="el" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rcw.c</a>
+</li>
+<li>rco_call_protocol_feature_check()
+: <a class="el" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rcw.c</a>
+</li>
+<li>rco_call_protocol_feature_radio()
+: <a class="el" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rcw.c</a>
+</li>
+<li>rco_change_scalemode()
+: <a class="el" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rcw.c</a>
+</li>
+<li>rco_check_resize()
+: <a class="el" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rcw.c</a>
+</li>
+<li>rco_closewin()
+: <a class="el" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rcw.c</a>
+</li>
+<li>rco_create_scrolled_container()
+: <a class="el" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rcw.c</a>
+</li>
+<li>rco_create_tab_label()
+: <a class="el" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rcw.c</a>
+</li>
+<li>rco_create_tab_page()
+: <a class="el" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rcw.c</a>
+</li>
+<li>rco_destroy_message_panel()
+: <a class="el" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7">rcw.h</a>
+</li>
+<li>rco_disconnect_current_page()
+: <a class="el" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rcw.c</a>
+</li>
+<li>rco_enter_protocol_widget()
+: <a class="el" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rcw.c</a>
+</li>
+<li>rco_get_desktop_size()
+: <a class="el" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rcw.c</a>
+</li>
+<li>rco_get_monitor_geometry()
+: <a class="el" href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a">rcw.h</a>
+, <a class="el" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rcw.c</a>
+</li>
+<li>rco_leave_protocol_widget()
+: <a class="el" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rcw.c</a>
+</li>
+<li>rco_on_close_button_clicked()
+: <a class="el" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rcw.c</a>
+</li>
+<li>rco_on_connect()
+: <a class="el" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rcw.c</a>
+</li>
+<li>rco_on_desktop_resize()
+: <a class="el" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rcw.c</a>
+</li>
+<li>rco_on_disconnect()
+: <a class="el" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rcw.c</a>
+</li>
+<li>rco_on_unlock_dynres()
+: <a class="el" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rcw.c</a>
+</li>
+<li>rco_on_update_align()
+: <a class="el" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rcw.c</a>
+</li>
+<li>rco_scrolled_fullscreen_mode()
+: <a class="el" href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rcw.c</a>
+</li>
+<li>rco_set_scrolled_policy()
+: <a class="el" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rcw.c</a>
+</li>
+<li>rco_show_message_panel()
+: <a class="el" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rcw.c</a>
+, <a class="el" href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rcw.h</a>
+</li>
+<li>rco_switch_page_activate()
+: <a class="el" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rcw.c</a>
+</li>
+<li>rco_update_toolbar()
+: <a class="el" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rcw.c</a>
+</li>
+<li>rco_update_toolbar_autofit_button()
+: <a class="el" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rcw.c</a>
+</li>
+<li>rco_viewport_fullscreen_mode()
+: <a class="el" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rcw.c</a>
+</li>
+<li>rcw_after_configure_scrolled()
+: <a class="el" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw.c</a>
+</li>
+<li>rcw_append_new_page()
+: <a class="el" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw.c</a>
+</li>
+<li>rcw_class_init()
+: <a class="el" href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4">rcw.c</a>
+</li>
+<li>rcw_close_all_connections()
+: <a class="el" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw.c</a>
+</li>
+<li>rcw_create_floating_toolbar()
+: <a class="el" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw.c</a>
+</li>
+<li>rcw_create_fullscreen()
+: <a class="el" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw.c</a>
+</li>
+<li>rcw_create_notebook()
+: <a class="el" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw.c</a>
+</li>
+<li>rcw_create_overlay_ftb_overlay()
+: <a class="el" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw.c</a>
+</li>
+<li>rcw_create_scrolled()
+: <a class="el" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw.c</a>
+</li>
+<li>rcw_create_toolbar()
+: <a class="el" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw.c</a>
+</li>
+<li>rcw_delayed_window_present()
+: <a class="el" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw.c</a>
+</li>
+<li>rcw_delete()
+: <a class="el" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw.c</a>
+, <a class="el" href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7">rcw.h</a>
+</li>
+<li>rcw_delete_event()
+: <a class="el" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw.c</a>
+</li>
+<li>rcw_destroy()
+: <a class="el" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw.c</a>
+</li>
+<li>rcw_find()
+: <a class="el" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_hide()
+: <a class="el" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_make_invisible()
+: <a class="el" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_on_enter()
+: <a class="el" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_on_scroll()
+: <a class="el" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_show()
+: <a class="el" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw.c</a>
+</li>
+<li>rcw_focus_in()
+: <a class="el" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw.c</a>
+</li>
+<li>rcw_focus_out()
+: <a class="el" href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw.c</a>
+</li>
+<li>rcw_ftb_drag_begin()
+: <a class="el" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw.c</a>
+</li>
+<li>rcw_ftb_drag_drop()
+: <a class="el" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw.c</a>
+</li>
+<li>rcw_fullscreen_option_popdown()
+: <a class="el" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw.c</a>
+</li>
+<li>rcw_get_cnnobj_at_page()
+: <a class="el" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw.c</a>
+</li>
+<li>rcw_get_type()
+: <a class="el" href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw.h</a>
+</li>
+<li>rcw_get_visible_cnnobj()
+: <a class="el" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw.c</a>
+</li>
+<li>rcw_grab_focus()
+: <a class="el" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw.c</a>
+</li>
+<li>rcw_hostkey_func()
+: <a class="el" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw.c</a>
+</li>
+<li>rcw_init()
+: <a class="el" href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd">rcw.c</a>
+</li>
+<li>rcw_keyboard_grab()
+: <a class="el" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw.c</a>
+</li>
+<li>rcw_keyboard_grab_retry()
+: <a class="el" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw.c</a>
+</li>
+<li>rcw_kp_ungrab()
+: <a class="el" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw.c</a>
+</li>
+<li>rcw_map_event_fullscreen()
+: <a class="el" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw.c</a>
+</li>
+<li>rcw_migrate()
+: <a class="el" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw.c</a>
+</li>
+<li>rcw_new()
+: <a class="el" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw.c</a>
+</li>
+<li>rcw_notify_widget_toolbar_placement()
+: <a class="el" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw.c</a>
+</li>
+<li>rcw_on_configure()
+: <a class="el" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw.c</a>
+</li>
+<li>rcw_on_leave_notify_event()
+: <a class="el" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw.c</a>
+</li>
+<li>rcw_on_notebook_create_window()
+: <a class="el" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw.c</a>
+</li>
+<li>rcw_on_page_added()
+: <a class="el" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw.c</a>
+</li>
+<li>rcw_on_page_removed()
+: <a class="el" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw.c</a>
+</li>
+<li>rcw_on_switch_page()
+: <a class="el" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw.c</a>
+</li>
+<li>rcw_on_switch_page_finalsel()
+: <a class="el" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw.c</a>
+</li>
+<li>rcw_open_from_file()
+: <a class="el" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a1b7a771392e15e527005305e71cc2546">rcw.h</a>
+</li>
+<li>rcw_open_from_file_full()
+: <a class="el" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw.c</a>
+, <a class="el" href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw.h</a>
+</li>
+<li>rcw_open_from_filename()
+: <a class="el" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw.c</a>
+, <a class="el" href="rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw.h</a>
+</li>
+<li>rcw_place_toolbar()
+: <a class="el" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw.c</a>
+</li>
+<li>rcw_pointer_grab()
+: <a class="el" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw.c</a>
+</li>
+<li>rcw_pointer_ungrab()
+: <a class="el" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw.c</a>
+</li>
+<li>rcw_scaler_expand()
+: <a class="el" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw.c</a>
+</li>
+<li>rcw_scaler_keep_aspect()
+: <a class="el" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw.c</a>
+</li>
+<li>rcw_scaler_option_popdown()
+: <a class="el" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw.c</a>
+</li>
+<li>rcw_set_delete_confirm_mode()
+: <a class="el" href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d">rcw.h</a>
+</li>
+<li>rcw_set_toolbar_visibility()
+: <a class="el" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw.c</a>
+</li>
+<li>rcw_set_tooltip()
+: <a class="el" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw.c</a>
+</li>
+<li>rcw_state_event()
+: <a class="el" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw.c</a>
+</li>
+<li>rcw_switch_viewmode()
+: <a class="el" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw.c</a>
+</li>
+<li>rcw_tb_drag_begin()
+: <a class="el" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw.c</a>
+</li>
+<li>rcw_tb_drag_drop()
+: <a class="el" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw.c</a>
+</li>
+<li>rcw_tb_drag_failed()
+: <a class="el" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw.c</a>
+</li>
+<li>rcw_toolbar_autofit()
+: <a class="el" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw.c</a>
+</li>
+<li>rcw_toolbar_autofit_restore()
+: <a class="el" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw.c</a>
+</li>
+<li>rcw_toolbar_disconnect()
+: <a class="el" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw.c</a>
+</li>
+<li>rcw_toolbar_duplicate()
+: <a class="el" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw.c</a>
+</li>
+<li>rcw_toolbar_dynres()
+: <a class="el" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw.c</a>
+</li>
+<li>rcw_toolbar_fullscreen()
+: <a class="el" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw.c</a>
+</li>
+<li>rcw_toolbar_fullscreen_option()
+: <a class="el" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw.c</a>
+</li>
+<li>rcw_toolbar_grab()
+: <a class="el" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw.c</a>
+</li>
+<li>rcw_toolbar_minimize()
+: <a class="el" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw.c</a>
+</li>
+<li>rcw_toolbar_pin()
+: <a class="el" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw.c</a>
+</li>
+<li>rcw_toolbar_place_signal()
+: <a class="el" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences()
+: <a class="el" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_check()
+: <a class="el" href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_popdown()
+: <a class="el" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_radio()
+: <a class="el" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw.c</a>
+</li>
+<li>rcw_toolbar_scaled_mode()
+: <a class="el" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw.c</a>
+</li>
+<li>rcw_toolbar_scaler_option()
+: <a class="el" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw.c</a>
+</li>
+<li>rcw_toolbar_screenshot()
+: <a class="el" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw.c</a>
+</li>
+<li>rcw_toolbar_switch_page()
+: <a class="el" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw.c</a>
+</li>
+<li>rcw_toolbar_switch_page_popdown()
+: <a class="el" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw.c</a>
+</li>
+<li>rcw_toolbar_tools()
+: <a class="el" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw.c</a>
+</li>
+<li>rcw_toolbar_tools_popdown()
+: <a class="el" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw.c</a>
+</li>
+<li>rcw_update_notebook()
+: <a class="el" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw.c</a>
+</li>
+<li>rcw_update_pin()
+: <a class="el" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw.c</a>
+</li>
+<li>rcw_update_tag()
+: <a class="el" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw.c</a>
+</li>
+<li>rcw_update_toolbar_opacity()
+: <a class="el" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw.c</a>
+</li>
+<li>remmina_about_open()
+: <a class="el" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about.c</a>
+, <a class="el" href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8">remmina_about.h</a>
+</li>
+<li>remmina_applet_menu_add_group()
+: <a class="el" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_add_item()
+: <a class="el" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_class_init()
+: <a class="el" href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_destroy()
+: <a class="el" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_get_type()
+: <a class="el" href="remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_increase_group_count()
+: <a class="el" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_init()
+: <a class="el" href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_item_class_init()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701">remmina_applet_menu_item.c</a>
+</li>
+<li>remmina_applet_menu_item_compare()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_item_get_type()
+: <a class="el" href="remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_item_init()
+: <a class="el" href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0">remmina_applet_menu_item.c</a>
+</li>
+<li>remmina_applet_menu_item_new()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_new()
+: <a class="el" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_on_item_activate()
+: <a class="el" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_populate()
+: <a class="el" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_register_item()
+: <a class="el" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_set_hide_count()
+: <a class="el" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu.h</a>
+</li>
+<li>remmina_application_condexit()
+: <a class="el" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_exec.h</a>
+</li>
+<li>remmina_avahi_browse_callback()
+: <a class="el" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_client_callback()
+: <a class="el" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_free()
+: <a class="el" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_iterate()
+: <a class="el" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_new()
+: <a class="el" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_resolve_callback()
+: <a class="el" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_start()
+: <a class="el" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_stop()
+: <a class="el" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi.h</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_class_init()
+: <a class="el" href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_get_type()
+: <a class="el" href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_init()
+: <a class="el" href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_new()
+: <a class="el" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_ftp_client.c</a>
+</li>
+<li>remmina_chat_window_append_text()
+: <a class="el" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_class_init()
+: <a class="el" href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_clear_send_text()
+: <a class="el" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_get_type()
+: <a class="el" href="remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_init()
+: <a class="el" href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_new()
+: <a class="el" href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window.c</a>
+, <a class="el" href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_receive()
+: <a class="el" href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window.c</a>
+, <a class="el" href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_scroll_proc()
+: <a class="el" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_send()
+: <a class="el" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_send_text_on_key()
+: <a class="el" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window.c</a>
+</li>
+<li>remmina_crypt_decrypt()
+: <a class="el" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt.c</a>
+, <a class="el" href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d">remmina_crypt.h</a>
+</li>
+<li>remmina_crypt_encrypt()
+: <a class="el" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt.c</a>
+, <a class="el" href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9">remmina_crypt.h</a>
+</li>
+<li>remmina_crypt_init()
+: <a class="el" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt.c</a>
+</li>
+<li>remmina_debug()
+: <a class="el" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a">remmina_log.h</a>
+</li>
+<li>remmina_exec_autostart_cb()
+: <a class="el" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec.c</a>
+</li>
+<li>remmina_exec_command()
+: <a class="el" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7">remmina_exec.h</a>
+</li>
+<li>remmina_exec_exitremmina()
+: <a class="el" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f">remmina_exec.h</a>
+</li>
+<li>remmina_exec_get_build_config()
+: <a class="el" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec.c</a>
+</li>
+<li>remmina_exec_set_setting()
+: <a class="el" href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec.h</a>
+</li>
+<li>remmina_ext_exec_new()
+: <a class="el" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec.c</a>
+, <a class="el" href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec.h</a>
+</li>
+<li>remmina_external_tools_from_filename()
+: <a class="el" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools.c</a>
+, <a class="el" href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85">remmina_external_tools.h</a>
+</li>
+<li>remmina_external_tools_launcher()
+: <a class="el" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools.c</a>
+</li>
+<li>remmina_file_copy()
+: <a class="el" href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343">remmina_file.h</a>
+</li>
+<li>remmina_file_delete()
+: <a class="el" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file.h</a>
+</li>
+<li>remmina_file_dup()
+: <a class="el" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file.h</a>
+</li>
+<li>remmina_file_dup_temp_protocol()
+: <a class="el" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file.h</a>
+</li>
+<li>remmina_file_editor_browse_avahi()
+: <a class="el" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_browse_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_button_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_check_profile()
+: <a class="el" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_class_init()
+: <a class="el" href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_all_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_check()
+: <a class="el" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_chooser()
+: <a class="el" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_combo()
+: <a class="el" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_notebook_container()
+: <a class="el" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_notebook_tab()
+: <a class="el" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_password()
+: <a class="el" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_select()
+: <a class="el" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_server()
+: <a class="el" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_ssh_privatekey()
+: <a class="el" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_ssh_tunnel_tab()
+: <a class="el" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_text()
+: <a class="el" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_destroy()
+: <a class="el" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_entry_on_changed()
+: <a class="el" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_file_save()
+: <a class="el" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_get_type()
+: <a class="el" href="remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_init()
+: <a class="el" href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_iterate_protocol()
+: <a class="el" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_new()
+: <a class="el" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_copy()
+: <a class="el" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_from_file()
+: <a class="el" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_from_filename()
+: <a class="el" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_full()
+: <a class="el" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_on_cancel()
+: <a class="el" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_connect()
+: <a class="el" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_default()
+: <a class="el" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_realize()
+: <a class="el" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_save()
+: <a class="el" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_save_connect()
+: <a class="el" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_protocol_combo_on_changed()
+: <a class="el" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_save_ssh_tunnel_tab()
+: <a class="el" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_enabled_check_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update()
+: <a class="el" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_format_properties()
+: <a class="el" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file.h</a>
+</li>
+<li>remmina_file_free()
+: <a class="el" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file.h</a>
+</li>
+<li>remmina_file_generate_filename()
+: <a class="el" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file.h</a>
+</li>
+<li>remmina_file_get_datadir()
+: <a class="el" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_get_datetime()
+: <a class="el" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file.h</a>
+</li>
+<li>remmina_file_get_filename()
+: <a class="el" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file.h</a>
+</li>
+<li>remmina_file_get_icon_name()
+: <a class="el" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file.h</a>
+</li>
+<li>remmina_file_get_int()
+: <a class="el" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file.h</a>
+</li>
+<li>remmina_file_get_keyfile()
+: <a class="el" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file.c</a>
+</li>
+<li>remmina_file_get_secret()
+: <a class="el" href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file.h</a>
+</li>
+<li>remmina_file_get_string()
+: <a class="el" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file.h</a>
+</li>
+<li>remmina_file_load()
+: <a class="el" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file.h</a>
+</li>
+<li>remmina_file_manager_add_group()
+: <a class="el" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager.c</a>
+</li>
+<li>remmina_file_manager_do_copy()
+: <a class="el" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager.c</a>
+</li>
+<li>remmina_file_manager_free_group_tree()
+: <a class="el" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_get_group_tree()
+: <a class="el" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_get_groups()
+: <a class="el" href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_init()
+: <a class="el" href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_iterate()
+: <a class="el" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_load_file()
+: <a class="el" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_multipasswd_changer_mt()
+: <a class="el" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_mpchange.c</a>
+</li>
+<li>remmina_file_new()
+: <a class="el" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892">remmina_file.h</a>
+</li>
+<li>remmina_file_new_empty()
+: <a class="el" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file.c</a>
+</li>
+<li>remmina_file_remove_key()
+: <a class="el" href="remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b">remmina_file.h</a>
+</li>
+<li>remmina_file_save()
+: <a class="el" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file.h</a>
+</li>
+<li>remmina_file_set_filename()
+: <a class="el" href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114">remmina_file.h</a>
+</li>
+<li>remmina_file_set_int()
+: <a class="el" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file.h</a>
+</li>
+<li>remmina_file_set_string()
+: <a class="el" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file.h</a>
+</li>
+<li>remmina_file_set_string_ref()
+: <a class="el" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file.h</a>
+</li>
+<li>remmina_file_store_secret_plugin_password()
+: <a class="el" href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file.h</a>
+</li>
+<li>remmina_file_touch()
+: <a class="el" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file.h</a>
+</li>
+<li>remmina_file_unsave_passwords()
+: <a class="el" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014">remmina_file.h</a>
+</li>
+<li>remmina_ftp_client_action_delete()
+: <a class="el" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_download()
+: <a class="el" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_home()
+: <a class="el" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_parent()
+: <a class="el" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_refresh()
+: <a class="el" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_upload()
+: <a class="el" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_add_file()
+: <a class="el" href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_cell_data_filetype_pixbuf()
+: <a class="el" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_permission()
+: <a class="el" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_progress()
+: <a class="el" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_progress_pixbuf()
+: <a class="el" href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_size()
+: <a class="el" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_size_progress()
+: <a class="el" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_class_init()
+: <a class="el" href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_clear_file_list()
+: <a class="el" href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_create_toolbar()
+: <a class="el" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_destroy()
+: <a class="el" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_dir_on_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_dir_on_changed()
+: <a class="el" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_download()
+: <a class="el" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_file_list_on_button_press()
+: <a class="el" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_file_selection_on_changed()
+: <a class="el" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_filter_visible_func()
+: <a class="el" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_get_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_download_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_get_overwrite_status()
+: <a class="el" href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_type()
+: <a class="el" href="remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_waiting_task()
+: <a class="el" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_init()
+: <a class="el" href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_load_state()
+: <a class="el" href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_new()
+: <a class="el" href="remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_open_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_popup_menu()
+: <a class="el" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_save_state()
+: <a class="el" href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_file_action_sensitive()
+: <a class="el" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_set_overwrite_status()
+: <a class="el" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_show_hidden()
+: <a class="el" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_size_to_str()
+: <a class="el" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_task_list_cell_on_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_task_list_on_query_tooltip()
+: <a class="el" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_update_task()
+: <a class="el" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_upload_folder_on_toggled()
+: <a class="el" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_task_free()
+: <a class="el" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_client.h</a>
+</li>
+<li>remmina_gen_random_uuid()
+: <a class="el" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e">remmina_utils.h</a>
+</li>
+<li>remmina_get_keytype()
+: <a class="el" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">nx_session.c</a>
+</li>
+<li>remmina_gtk_check_version()
+: <a class="el" href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_public.h</a>
+</li>
+<li>remmina_gtksocket_available()
+: <a class="el" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_icon_about()
+: <a class="el" href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon.c</a>
+</li>
+<li>remmina_icon_create_autostart_file()
+: <a class="el" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon.c</a>
+</li>
+<li>remmina_icon_destroy()
+: <a class="el" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon.h</a>
+</li>
+<li>remmina_icon_enable_avahi()
+: <a class="el" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon.c</a>
+</li>
+<li>remmina_icon_init()
+: <a class="el" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6">remmina_icon.h</a>
+</li>
+<li>remmina_icon_is_autostart()
+: <a class="el" href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon.h</a>
+</li>
+<li>remmina_icon_is_available()
+: <a class="el" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon.h</a>
+</li>
+<li>remmina_icon_main()
+: <a class="el" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_activate()
+: <a class="el" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_edit_item()
+: <a class="el" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_launch_item()
+: <a class="el" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_popup_menu()
+: <a class="el" href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon.c</a>
+</li>
+<li>remmina_icon_popdown_menu()
+: <a class="el" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_additional_menu_item()
+: <a class="el" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_extra_menu_item()
+: <a class="el" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_menu()
+: <a class="el" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon.h</a>
+</li>
+<li>remmina_icon_preferences()
+: <a class="el" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon.c</a>
+</li>
+<li>remmina_icon_save_autostart_file()
+: <a class="el" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon.c</a>
+</li>
+<li>remmina_icon_set_autostart()
+: <a class="el" href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon.h</a>
+</li>
+<li>remmina_key_chooser_dialog_on_key_press()
+: <a class="el" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser.c</a>
+</li>
+<li>remmina_key_chooser_get_keyval()
+: <a class="el" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser.h</a>
+</li>
+<li>remmina_key_chooser_get_value()
+: <a class="el" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser.h</a>
+</li>
+<li>remmina_key_chooser_new()
+: <a class="el" href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36">remmina_key_chooser.h</a>
+</li>
+<li>remmina_log_end()
+: <a class="el" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log.c</a>
+</li>
+<li>remmina_log_on_keypress()
+: <a class="el" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log.c</a>
+</li>
+<li>remmina_log_print()
+: <a class="el" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa">remmina_log.h</a>
+</li>
+<li>remmina_log_print_real()
+: <a class="el" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log.c</a>
+</li>
+<li>remmina_log_printf()
+: <a class="el" href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log.h</a>
+</li>
+<li>remmina_log_running()
+: <a class="el" href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log.h</a>
+</li>
+<li>remmina_log_scroll_to_end()
+: <a class="el" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log.c</a>
+</li>
+<li>remmina_log_start()
+: <a class="el" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683">remmina_log.h</a>
+</li>
+<li>remmina_log_window_get_type()
+: <a class="el" href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e">remmina_log.c</a>
+</li>
+<li>remmina_log_window_init()
+: <a class="el" href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd">remmina_log.c</a>
+</li>
+<li>remmina_log_window_new()
+: <a class="el" href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log.c</a>
+</li>
+<li>remmina_main_action_tools_import_on_response()
+: <a class="el" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main.c</a>
+</li>
+<li>remmina_main_add_tool_plugin()
+: <a class="el" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main.c</a>
+</li>
+<li>remmina_main_clear_selection_data()
+: <a class="el" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main.c</a>
+</li>
+<li>remmina_main_destroy()
+: <a class="el" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main.h</a>
+</li>
+<li>remmina_main_dexit()
+: <a class="el" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main.c</a>
+</li>
+<li>remmina_main_expand_group()
+: <a class="el" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main.c</a>
+</li>
+<li>remmina_main_expand_group_traverse()
+: <a class="el" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main.c</a>
+</li>
+<li>remmina_main_file_editor_destroy()
+: <a class="el" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_button_press()
+: <a class="el" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_key_press()
+: <a class="el" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_row_activated()
+: <a class="el" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main.c</a>
+</li>
+<li>remmina_main_file_model_on_sort()
+: <a class="el" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main.c</a>
+</li>
+<li>remmina_main_filter_visible_func()
+: <a class="el" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main.c</a>
+</li>
+<li>remmina_main_get_window()
+: <a class="el" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main.h</a>
+</li>
+<li>remmina_main_import_file_list()
+: <a class="el" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main.c</a>
+</li>
+<li>remmina_main_init()
+: <a class="el" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_list_callback()
+: <a class="el" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_callback()
+: <a class="el" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_find()
+: <a class="el" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_group()
+: <a class="el" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_traverse()
+: <a class="el" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main.c</a>
+</li>
+<li>remmina_main_load_files()
+: <a class="el" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main.c</a>
+</li>
+<li>remmina_main_load_files_cb()
+: <a class="el" href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0">remmina_main.c</a>
+</li>
+<li>remmina_main_new()
+: <a class="el" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_about()
+: <a class="el" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_default()
+: <a class="el" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_mpchange()
+: <a class="el" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_news()
+: <a class="el" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_plugins()
+: <a class="el" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_preferences()
+: <a class="el" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_quit()
+: <a class="el" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_collapse()
+: <a class="el" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_connect()
+: <a class="el" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_copy()
+: <a class="el" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_delete()
+: <a class="el" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_edit()
+: <a class="el" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_external_tools()
+: <a class="el" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_new()
+: <a class="el" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_expand()
+: <a class="el" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_community()
+: <a class="el" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_debug()
+: <a class="el" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_donations()
+: <a class="el" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_homepage()
+: <a class="el" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_wiki()
+: <a class="el" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_tools_export()
+: <a class="el" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_tools_import()
+: <a class="el" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main.h</a>
+</li>
+<li>remmina_main_on_date_column_sort_clicked()
+: <a class="el" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main.c</a>
+</li>
+<li>remmina_main_on_delete_event()
+: <a class="el" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main.c</a>
+</li>
+<li>remmina_main_on_drag_data_received()
+: <a class="el" href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main.c</a>
+</li>
+<li>remmina_main_on_search_toggle()
+: <a class="el" href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9">remmina_main.c</a>
+</li>
+<li>remmina_main_on_show()
+: <a class="el" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main.c</a>
+</li>
+<li>remmina_main_on_view_toggle()
+: <a class="el" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main.c</a>
+</li>
+<li>remmina_main_on_window_state_event()
+: <a class="el" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_enter()
+: <a class="el" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_on_changed()
+: <a class="el" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_on_icon_press()
+: <a class="el" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main.c</a>
+</li>
+<li>remmina_main_quickconnect()
+: <a class="el" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main.c</a>
+</li>
+<li>remmina_main_quickconnect_on_click()
+: <a class="el" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main.c</a>
+</li>
+<li>remmina_main_rmodestroy()
+: <a class="el" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main.c</a>
+</li>
+<li>remmina_main_save_before_destroy()
+: <a class="el" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main.h</a>
+</li>
+<li>remmina_main_save_expanded_group()
+: <a class="el" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main.c</a>
+</li>
+<li>remmina_main_save_expanded_group_func()
+: <a class="el" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main.c</a>
+</li>
+<li>remmina_main_save_size()
+: <a class="el" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main.c</a>
+</li>
+<li>remmina_main_select_file()
+: <a class="el" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main.c</a>
+</li>
+<li>remmina_main_selection_func()
+: <a class="el" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main.c</a>
+</li>
+<li>remmina_main_show_snap_welcome()
+: <a class="el" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main.c</a>
+</li>
+<li>remmina_main_show_warning_dialog()
+: <a class="el" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main.h</a>
+</li>
+<li>remmina_main_update_file_datetime()
+: <a class="el" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main.h</a>
+</li>
+<li>remmina_marshal_BOOLEAN__INT()
+: <a class="el" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshals.c</a>
+, <a class="el" href="remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384">remmina_marshals.h</a>
+</li>
+<li>remmina_marshal_BOOLEAN__INT_STRING()
+: <a class="el" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshals.c</a>
+, <a class="el" href="remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761">remmina_marshals.h</a>
+</li>
+<li>remmina_masterthread_exec_and_wait()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_masterthread_exec_callback()
+: <a class="el" href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec.c</a>
+</li>
+<li>remmina_masterthread_exec_cleanup_handler()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec.c</a>
+</li>
+<li>remmina_masterthread_exec_is_main_thread()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_masterthread_exec_save_main_thread_id()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_message_panel_button_clicked_callback()
+: <a class="el" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel.c</a>
+</li>
+<li>remmina_message_panel_class_init()
+: <a class="el" href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9">remmina_message_panel.c</a>
+</li>
+<li>remmina_message_panel_field_get_filename()
+: <a class="el" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_get_string()
+: <a class="el" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_get_switch_state()
+: <a class="el" href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_filename()
+: <a class="el" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_string()
+: <a class="el" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_switch()
+: <a class="el" href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_focus_auth_entry()
+: <a class="el" href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_init()
+: <a class="el" href="remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c">remmina_message_panel.c</a>
+</li>
+<li>remmina_message_panel_new()
+: <a class="el" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_response()
+: <a class="el" href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_auth()
+: <a class="el" href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_auth_x509()
+: <a class="el" href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_message()
+: <a class="el" href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_progress()
+: <a class="el" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_question()
+: <a class="el" href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel.h</a>
+</li>
+<li>remmina_mpchange_checkbox_toggle()
+: <a class="el" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_dochange()
+: <a class="el" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_dochange_clicked()
+: <a class="el" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_fieldcompare()
+: <a class="el" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_file_list_callback()
+: <a class="el" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_schedule()
+: <a class="el" href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange.c</a>
+, <a class="el" href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed">remmina_mpchange.h</a>
+</li>
+<li>remmina_mpchange_searchfield_changed()
+: <a class="el" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_searchfield_changed_to()
+: <a class="el" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_stopsearch()
+: <a class="el" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange.c</a>
+</li>
+<li>remmina_nx_session_add_common_parameters()
+: <a class="el" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">nx_session.c</a>
+</li>
+<li>remmina_nx_session_add_parameter()
+: <a class="el" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347">nx_session.h</a>
+</li>
+<li>remmina_nx_session_allow_start()
+: <a class="el" href="nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef">nx_session.h</a>
+</li>
+<li>remmina_nx_session_attach()
+: <a class="el" href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d">nx_session.h</a>
+</li>
+<li>remmina_nx_session_bye()
+: <a class="el" href="nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea">nx_session.h</a>
+</li>
+<li>remmina_nx_session_clear_error()
+: <a class="el" href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866">nx_session.h</a>
+</li>
+<li>remmina_nx_session_expect_status()
+: <a class="el" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">nx_session.c</a>
+</li>
+<li>remmina_nx_session_expect_status2()
+: <a class="el" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">nx_session.c</a>
+</li>
+<li>remmina_nx_session_free()
+: <a class="el" href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3">nx_session.h</a>
+</li>
+<li>remmina_nx_session_get_error()
+: <a class="el" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e">nx_session.h</a>
+</li>
+<li>remmina_nx_session_get_line()
+: <a class="el" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">nx_session.c</a>
+</li>
+<li>remmina_nx_session_get_proxy_option()
+: <a class="el" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">nx_session.c</a>
+</li>
+<li>remmina_nx_session_get_response()
+: <a class="el" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">nx_session.c</a>
+</li>
+<li>remmina_nx_session_has_error()
+: <a class="el" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9">nx_session.h</a>
+</li>
+<li>remmina_nx_session_invoke_proxy()
+: <a class="el" href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_first()
+: <a class="el" href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_get()
+: <a class="el" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_next()
+: <a class="el" href="nx__session_8c.html#a7d021133105bd538af31817eff263324">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a7d021133105bd538af31817eff263324">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_set()
+: <a class="el" href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">nx_session.h</a>
+</li>
+<li>remmina_nx_session_list()
+: <a class="el" href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76">nx_session.h</a>
+</li>
+<li>remmina_nx_session_login()
+: <a class="el" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_manager_main()
+: <a class="el" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_on_response()
+: <a class="el" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_on_row_activated()
+: <a class="el" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_selection_func()
+: <a class="el" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_send_signal()
+: <a class="el" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_set_sensitive()
+: <a class="el" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_start()
+: <a class="el" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">nx_session_manager.c</a>
+, <a class="el" href="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5">nx_session_manager.h</a>
+</li>
+<li>remmina_nx_session_new()
+: <a class="el" href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c">nx_session.h</a>
+</li>
+<li>remmina_nx_session_open()
+: <a class="el" href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_parse_line()
+: <a class="el" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">nx_session.c</a>
+</li>
+<li>remmina_nx_session_parse_response()
+: <a class="el" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">nx_session.c</a>
+</li>
+<li>remmina_nx_session_parse_session_list_line()
+: <a class="el" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">nx_session.c</a>
+</li>
+<li>remmina_nx_session_restore()
+: <a class="el" href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33">nx_session.h</a>
+</li>
+<li>remmina_nx_session_send_command()
+: <a class="el" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">nx_session.c</a>
+</li>
+<li>remmina_nx_session_send_session_command()
+: <a class="el" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_application_error()
+: <a class="el" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_encryption()
+: <a class="el" href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_error()
+: <a class="el" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_localport()
+: <a class="el" href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_log_callback()
+: <a class="el" href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_tree_view()
+: <a class="el" href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41">nx_session.h</a>
+</li>
+<li>remmina_nx_session_start()
+: <a class="el" href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6">nx_session.h</a>
+</li>
+<li>remmina_nx_session_terminate()
+: <a class="el" href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c">nx_session.h</a>
+</li>
+<li>remmina_nx_session_tunnel_main_thread()
+: <a class="el" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">nx_session.c</a>
+</li>
+<li>remmina_nx_session_tunnel_open()
+: <a class="el" href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d">nx_session.h</a>
+</li>
+<li>remmina_on_command_line()
+: <a class="el" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina.c</a>
+</li>
+<li>remmina_on_local_cmdline()
+: <a class="el" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina.c</a>
+</li>
+<li>remmina_on_startup()
+: <a class="el" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina.c</a>
+</li>
+<li>remmina_plugin_entry()
+: <a class="el" href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">exec_plugin.c</a>
+, <a class="el" href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208">kwallet_plugin_main.c</a>
+, <a class="el" href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">nx_plugin.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">rdp_plugin.c</a>
+, <a class="el" href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">glibsecret_plugin.c</a>
+, <a class="el" href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">spice_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">st_plugin.c</a>
+, <a class="el" href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">telepathy_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208">plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">vnc_plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">www_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_close()
+: <a class="el" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_init()
+: <a class="el" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_run()
+: <a class="el" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_delete_password()
+: <a class="el" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_get_password()
+: <a class="el" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_init()
+: <a class="el" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_is_service_available()
+: <a class="el" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_store_password()
+: <a class="el" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_unlock_secret_service()
+: <a class="el" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_kwallet_delete_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_get_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_init()
+: <a class="el" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_is_service_available()
+: <a class="el" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_store_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_manager_compare_func()
+: <a class="el" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_for_each_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_for_each_plugin_stdout()
+: <a class="el" href="remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_canonical_setting_name()
+: <a class="el" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_export_file_handler()
+: <a class="el" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_import_file_handler()
+: <a class="el" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_secret_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_init()
+: <a class="el" href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_is_encrypted_setting()
+: <a class="el" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_load_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_query_feature_by_type()
+: <a class="el" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_register_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_show()
+: <a class="el" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_show_for_each()
+: <a class="el" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_show_for_each_stdout()
+: <a class="el" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_show_stdout()
+: <a class="el" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_nx_call_feature()
+: <a class="el" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_close_connection()
+: <a class="el" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_dummy_handler()
+: <a class="el" href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_init()
+: <a class="el" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_main()
+: <a class="el" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_main_thread()
+: <a class="el" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_monitor_create_notify()
+: <a class="el" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_plug_added()
+: <a class="el" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_plug_removed()
+: <a class="el" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_proxy_exit()
+: <a class="el" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_open_connection()
+: <a class="el" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_query_feature()
+: <a class="el" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_remove_window_id()
+: <a class="el" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_send_ctrlaltdel()
+: <a class="el" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_ssh_auth_callback()
+: <a class="el" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_start_create_notify()
+: <a class="el" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_start_session()
+: <a class="el" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_try_window_id()
+: <a class="el" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_wait_signal()
+: <a class="el" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_call_feature()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_client_on_realize()
+: <a class="el" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_close_connection()
+: <a class="el" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_init()
+: <a class="el" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_main_thread()
+: <a class="el" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_open_connection()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_query_feature()
+: <a class="el" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_start_direct_tunnel()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_sftp_plugin.c</a>
+, <a class="el" href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917">remmina_sftp_plugin.h</a>
+</li>
+<li>remmina_plugin_spice_ask_auth()
+: <a class="el" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_call_feature()
+: <a class="el" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_channel_new_cb()
+: <a class="el" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_close_connection()
+: <a class="el" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_display_ready_cb()
+: <a class="el" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_cancel_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_dialog_response_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_finished_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_new_cb()
+: <a class="el" href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">spice_plugin.c</a>
+, <a class="el" href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_progress_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_init()
+: <a class="el" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_keystroke()
+: <a class="el" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_main_channel_event_cb()
+: <a class="el" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_open_connection()
+: <a class="el" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_query_feature()
+: <a class="el" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_select_usb_devices()
+: <a class="el" href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">spice_plugin.c</a>
+, <a class="el" href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b">spice_plugin_usb.c</a>
+</li>
+<li>remmina_plugin_spice_send_ctrlaltdel()
+: <a class="el" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_update_scale()
+: <a class="el" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_usb_connect_failed_cb()
+: <a class="el" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">spice_plugin_usb.c</a>
+</li>
+<li>remmina_plugin_spice_xfer_widgets_free()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_xfer_widgets_new()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_ssh_call_feature()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_close_connection()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_init()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_main_thread()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_on_focus_in()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_on_size_allocate()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_open_connection()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_popup_ui()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_query_feature()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_set_vte_pref()
+: <a class="el" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_vte_copy_clipboard()
+: <a class="el" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_paste_clipboard()
+: <a class="el" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_save_session()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_vte_select_all()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_terminal_set_encoding_and_pty()
+: <a class="el" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_st_close_connection()
+: <a class="el" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_init()
+: <a class="el" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_on_plug_added()
+: <a class="el" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_on_plug_removed()
+: <a class="el" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_open_connection()
+: <a class="el" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">st_plugin.c</a>
+</li>
+<li>remmina_plugin_telepathy_entry()
+: <a class="el" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_tool_close_connection()
+: <a class="el" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">plugin.c</a>
+</li>
+<li>remmina_plugin_tool_init()
+: <a class="el" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">plugin.c</a>
+</li>
+<li>remmina_plugin_tool_open_connection()
+: <a class="el" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_bits()
+: <a class="el" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_call_feature()
+: <a class="el" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_chat_on_destroy()
+: <a class="el" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_chat_on_send()
+: <a class="el" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_chat()
+: <a class="el" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_connection()
+: <a class="el" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_connection_timeout()
+: <a class="el" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_free()
+: <a class="el" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_free_all()
+: <a class="el" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_push()
+: <a class="el" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_queue_pop_head()
+: <a class="el" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_incoming_connection()
+: <a class="el" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_init()
+: <a class="el" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_keystroke()
+: <a class="el" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main()
+: <a class="el" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main_loop()
+: <a class="el" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main_thread()
+: <a class="el" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_button()
+: <a class="el" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_cuttext_request()
+: <a class="el" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_draw()
+: <a class="el" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_key()
+: <a class="el" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_motion()
+: <a class="el" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_realize()
+: <a class="el" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_scroll()
+: <a class="el" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_open_chat()
+: <a class="el" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_open_connection()
+: <a class="el" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_process_vnc_event()
+: <a class="el" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_query_feature()
+: <a class="el" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_draw_area()
+: <a class="el" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_draw_area_real()
+: <a class="el" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queuecursor()
+: <a class="el" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_release_key()
+: <a class="el" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_allocfb()
+: <a class="el" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_bell()
+: <a class="el" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_chat()
+: <a class="el" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_credential()
+: <a class="el" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_cursor_shape()
+: <a class="el" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_fill_buffer()
+: <a class="el" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_password()
+: <a class="el" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_updatefb()
+: <a class="el" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_scale_area()
+: <a class="el" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_scale_coordinates()
+: <a class="el" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_send_ctrlaltdel()
+: <a class="el" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_setcursor()
+: <a class="el" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_colordepth()
+: <a class="el" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_quality()
+: <a class="el" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_scale()
+: <a class="el" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">vnc_plugin.c</a>
+, <a class="el" href="vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9">vnc_plugin.h</a>
+</li>
+<li>remmina_plugin_www_close_connection()
+: <a class="el" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_decide_nav()
+: <a class="el" href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_decide_newwin()
+: <a class="el" href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_decide_policy_cb()
+: <a class="el" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_decide_resource()
+: <a class="el" href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_download_started()
+: <a class="el" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_form_auth()
+: <a class="el" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_get_snapshot()
+: <a class="el" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_init()
+: <a class="el" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_load_failed_tls_cb()
+: <a class="el" href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_notify_download()
+: <a class="el" href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_on_auth()
+: <a class="el" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_on_create()
+: <a class="el" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_open_connection()
+: <a class="el" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_response_received()
+: <a class="el" href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_save_snapshot()
+: <a class="el" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">www_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_call_feature()
+: <a class="el" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_close_connection()
+: <a class="el" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_init()
+: <a class="el" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_main()
+: <a class="el" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_main_thread()
+: <a class="el" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_on_plug_added()
+: <a class="el" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_on_plug_removed()
+: <a class="el" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_open_connection()
+: <a class="el" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_query_feature()
+: <a class="el" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_send_ctrlaltdel()
+: <a class="el" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_start_xephyr()
+: <a class="el" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_tunnel_init_callback()
+: <a class="el" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">xdmcp_plugin.c</a>
+</li>
+<li>remmina_pref_add_recent()
+: <a class="el" href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref.h</a>
+</li>
+<li>remmina_pref_clear_recent()
+: <a class="el" href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref.h</a>
+</li>
+<li>remmina_pref_dialog_add_pref_plugin()
+: <a class="el" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_clear_recent()
+: <a class="el" href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_disable_tray_icon_on_toggled()
+: <a class="el" href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_get_dialog()
+: <a class="el" href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4">remmina_pref_dialog.h</a>
+, <a class="el" href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_init()
+: <a class="el" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_new()
+: <a class="el" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog.c</a>
+, <a class="el" href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_pref_dialog_on_close_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_on_key_chooser()
+: <a class="el" href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_set_button_label()
+: <a class="el" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_vte_font_on_toggled()
+: <a class="el" href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_file_do_copy()
+: <a class="el" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref.c</a>
+</li>
+<li>remmina_pref_file_load_colors()
+: <a class="el" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref.h</a>
+</li>
+<li>remmina_pref_gen_secret()
+: <a class="el" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_boolean()
+: <a class="el" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_keyval_from_str()
+: <a class="el" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_recent()
+: <a class="el" href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_scale_quality()
+: <a class="el" href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_loglevel()
+: <a class="el" href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_parseconfig()
+: <a class="el" href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepcnt()
+: <a class="el" href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepidle()
+: <a class="el" href="remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepintvl()
+: <a class="el" href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_usrtimeout()
+: <a class="el" href="remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_sshtunnel_port()
+: <a class="el" href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_value()
+: <a class="el" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref.h</a>
+</li>
+<li>remmina_pref_init()
+: <a class="el" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref.h</a>
+</li>
+<li>remmina_pref_init_keymap()
+: <a class="el" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref.c</a>
+</li>
+<li>remmina_pref_is_rw()
+: <a class="el" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref.h</a>
+</li>
+<li>remmina_pref_keymap_get_keyval()
+: <a class="el" href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8">remmina_pref.h</a>
+</li>
+<li>remmina_pref_keymap_groups()
+: <a class="el" href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395">remmina_pref.h</a>
+</li>
+<li>remmina_pref_on_button_keystrokes_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_button_resolutions_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_color_scheme_selected()
+: <a class="el" href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_dialog_destroy()
+: <a class="el" href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_save()
+: <a class="el" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref.h</a>
+</li>
+<li>remmina_pref_set_value()
+: <a class="el" href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref.h</a>
+</li>
+<li>remmina_prefdiag_unlock_repwd_on_changed()
+: <a class="el" href="remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_pref_dialog.c</a>
+, <a class="el" href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_profiles_get_data()
+: <a class="el" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_stats.c</a>
+</li>
+<li>remmina_protocol_widget_call_feature_by_ref()
+: <a class="el" href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_call_feature_by_type()
+: <a class="el" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_chat_close()
+: <a class="el" href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_chat_on_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_chat_open()
+: <a class="el" href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_chat_receive()
+: <a class="el" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_class_init()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_close_all_tunnels()
+: <a class="el" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_close_connection()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_desktop_resize()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_dialog()
+: <a class="el" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_dialog_mt_setup()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_emit_signal()
+: <a class="el" href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_cacert()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_cacrl()
+: <a class="el" href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_clientcert()
+: <a class="el" href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_clientkey()
+: <a class="el" href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_current_scale_mode()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_domain()
+: <a class="el" href="remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_error_message()
+: <a class="el" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_expand()
+: <a class="el" href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_features()
+: <a class="el" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_file()
+: <a class="el" href="remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_height()
+: <a class="el" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_password()
+: <a class="el" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_profile_remote_height()
+: <a class="el" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_profile_remote_width()
+: <a class="el" href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_get_savepassword()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_type()
+: <a class="el" href="remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_username()
+: <a class="el" href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_width()
+: <a class="el" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_grab_focus()
+: <a class="el" href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_has_error()
+: <a class="el" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_init()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_init_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_is_closed()
+: <a class="el" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_mpdestroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_mpprogress()
+: <a class="el" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_new()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_on_key_press()
+: <a class="el" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_on_key_release()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_open_connection()
+: <a class="el" href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_open_connection_real()
+: <a class="el" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_auth()
+: <a class="el" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_authuserpwd_ssh_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_authx509()
+: <a class="el" href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_changed_certificate()
+: <a class="el" href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_destroy()
+: <a class="el" href="remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_hide()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_new_certificate()
+: <a class="el" href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_question_yesno()
+: <a class="el" href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_show()
+: <a class="el" href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_show_listen()
+: <a class="el" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_show_retry()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_plugin_receives_keystrokes()
+: <a class="el" href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_plugin_screenshot()
+: <a class="el" href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_query_feature_by_ref()
+: <a class="el" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_query_feature_by_type()
+: <a class="el" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_register_hostkey()
+: <a class="el" href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_save_cred()
+: <a class="el" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_send_keys_signals()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_send_keystrokes()
+: <a class="el" href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_current_scale_mode()
+: <a class="el" href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_set_display()
+: <a class="el" href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_error()
+: <a class="el" href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_set_expand()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_height()
+: <a class="el" href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_set_hostkey_func()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_width()
+: <a class="el" href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_setup()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_signal_connection_closed()
+: <a class="el" href="remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_signal_connection_opened()
+: <a class="el" href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_ssh_exec()
+: <a class="el" href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_start_direct_tunnel()
+: <a class="el" href="remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_start_reverse_tunnel()
+: <a class="el" href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_start_xport_tunnel()
+: <a class="el" href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_tunnel_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_unlock_dynres()
+: <a class="el" href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_update_align()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_update_alignment()
+: <a class="el" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">rcw.c</a>
+</li>
+<li>remmina_protocol_widget_update_remote_resolution()
+: <a class="el" href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_connect_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_disconnect_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_init_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_public_combine_path()
+: <a class="el" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0">remmina_public.h</a>
+</li>
+<li>remmina_public_combo_get_active_text()
+: <a class="el" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo()
+: <a class="el" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_entry()
+: <a class="el" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_map()
+: <a class="el" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_mapint()
+: <a class="el" href="remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_text_d()
+: <a class="el" href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde">remmina_public.h</a>
+</li>
+<li>remmina_public_create_group()
+: <a class="el" href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public.h</a>
+</li>
+<li>remmina_public_get_current_workspace()
+: <a class="el" href="remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public.h</a>
+</li>
+<li>remmina_public_get_keycode_for_keyval()
+: <a class="el" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public.h</a>
+</li>
+<li>remmina_public_get_modifier_for_keycode()
+: <a class="el" href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public.c</a>
+</li>
+<li>remmina_public_get_server_port()
+: <a class="el" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149">remmina_public.h</a>
+</li>
+<li>remmina_public_get_window_workspace()
+: <a class="el" href="remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public.h</a>
+</li>
+<li>remmina_public_get_xauth_cookie()
+: <a class="el" href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public.h</a>
+</li>
+<li>remmina_public_gtk_builder_new_from_file()
+: <a class="el" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public.h</a>
+</li>
+<li>remmina_public_gtk_widget_reparent()
+: <a class="el" href="remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912">remmina_public.h</a>
+</li>
+<li>remmina_public_load_combo_text_d()
+: <a class="el" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public.h</a>
+</li>
+<li>remmina_public_open_xdisplay()
+: <a class="el" href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767">remmina_public.h</a>
+</li>
+<li>remmina_public_popup_position()
+: <a class="el" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c">remmina_public.h</a>
+</li>
+<li>remmina_public_resolution_validation_func()
+: <a class="el" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public.h</a>
+</li>
+<li>remmina_public_send_notification()
+: <a class="el" href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public.c</a>
+</li>
+<li>remmina_public_split_resolution_string()
+: <a class="el" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public.h</a>
+</li>
+<li>remmina_public_str_replace()
+: <a class="el" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640">remmina_public.h</a>
+</li>
+<li>remmina_public_str_replace_in_place()
+: <a class="el" href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public.h</a>
+</li>
+<li>remmina_rdp_authenticate()
+: <a class="el" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_call_feature()
+: <a class="el" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_channel_cliprdr_process()
+: <a class="el" href="rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_clipboard_abort_transfer()
+: <a class="el" href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_clipboard_free()
+: <a class="el" href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_clipboard_init()
+: <a class="el" href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_detach_owner()
+: <a class="el" href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_empty_clipboard()
+: <a class="el" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_client_format_list()
+: <a class="el" href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_clipboard_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_format_from_gdkatom()
+: <a class="el" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_target_types()
+: <a class="el" href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_init()
+: <a class="el" href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_monitor_ready()
+: <a class="el" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_mt_get_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_request_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_send_client_capabilities()
+: <a class="el" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_send_client_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_capabilities()
+: <a class="el" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_file_contents_request()
+: <a class="el" href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_file_contents_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_data_request()
+: <a class="el" href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_data_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_list_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_set_clipboard_content()
+: <a class="el" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_set_clipboard_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_close_connection()
+: <a class="el" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_event_connected()
+: <a class="el" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_create_cairo_surface()
+: <a class="el" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_create_cursor()
+: <a class="el" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_cursor()
+: <a class="el" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_delayed_monitor_layout()
+: <a class="el" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_event_push()
+: <a class="el" href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580">rdp_plugin.h</a>
+, <a class="el" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_free_cursor()
+: <a class="el" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_free_event()
+: <a class="el" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_init()
+: <a class="el" href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_init_keymap()
+: <a class="el" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_button()
+: <a class="el" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_clipboard()
+: <a class="el" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_configure()
+: <a class="el" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_draw()
+: <a class="el" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_focus_in()
+: <a class="el" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_key()
+: <a class="el" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_motion()
+: <a class="el" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_scroll()
+: <a class="el" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_clipboard()
+: <a class="el" href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_event_process_event()
+: <a class="el" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_ui_event()
+: <a class="el" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_ui_queue()
+: <a class="el" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_queue_ui()
+: <a class="el" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_queue_ui_async()
+: <a class="el" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_queue_ui_sync_retint()
+: <a class="el" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_queue_ui_sync_retptr()
+: <a class="el" href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_reconnect_progress()
+: <a class="el" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_release_all_keys()
+: <a class="el" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_release_key()
+: <a class="el" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_reverse_translate_pos_reverse()
+: <a class="el" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_scale_area()
+: <a class="el" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_send_delayed_monitor_layout()
+: <a class="el" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_set_pointer_position()
+: <a class="el" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_translate_pos()
+: <a class="el" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_unfocus()
+: <a class="el" href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_uninit()
+: <a class="el" href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_update_rect()
+: <a class="el" href="rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_update_regions()
+: <a class="el" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_update_scale()
+: <a class="el" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_update_scale_factor()
+: <a class="el" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">rdp_event.c</a>
+</li>
+<li>remmina_rdp_file_export()
+: <a class="el" href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b">rdp_file.h</a>
+, <a class="el" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_export_channel()
+: <a class="el" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_export_test()
+: <a class="el" href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310">rdp_file.h</a>
+, <a class="el" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import()
+: <a class="el" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">rdp_file.c</a>
+, <a class="el" href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c">rdp_file.h</a>
+</li>
+<li>remmina_rdp_file_import_channel()
+: <a class="el" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import_field()
+: <a class="el" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import_test()
+: <a class="el" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">rdp_file.c</a>
+, <a class="el" href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b">rdp_file.h</a>
+</li>
+<li>remmina_rdp_find_prdriver()
+: <a class="el" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_get_screenshot()
+: <a class="el" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_gw_authenticate()
+: <a class="el" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_init()
+: <a class="el" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_keystroke()
+: <a class="el" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_load_static_channel_addin()
+: <a class="el" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main()
+: <a class="el" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main_loop()
+: <a class="el" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main_thread()
+: <a class="el" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_OnChannelConnectedEventHandler()
+: <a class="el" href="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a">rdp_channels.h</a>
+, <a class="el" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">rdp_channels.c</a>
+</li>
+<li>remmina_rdp_OnChannelDisconnectedEventHandler()
+: <a class="el" href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d">rdp_channels.h</a>
+, <a class="el" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">rdp_channels.c</a>
+</li>
+<li>remmina_rdp_open_connection()
+: <a class="el" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_post_connect()
+: <a class="el" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_post_disconnect()
+: <a class="el" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_pre_connect()
+: <a class="el" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_query_feature()
+: <a class="el" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_send_ctrlaltdel()
+: <a class="el" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_set_printers()
+: <a class="el" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_settings_appscale_on_changed()
+: <a class="el" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_get_keyboard_layout()
+: <a class="el" href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c">rdp_settings.h</a>
+, <a class="el" href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_get_orientation_scale_prefs()
+: <a class="el" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">rdp_settings.c</a>
+, <a class="el" href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c">rdp_settings.h</a>
+</li>
+<li>remmina_rdp_settings_grid_destroy()
+: <a class="el" href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_get_type()
+: <a class="el" href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_init()
+: <a class="el" href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_desktoporientation_combo()
+: <a class="el" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_devicescalefactor_combo()
+: <a class="el" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_layout()
+: <a class="el" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_quality()
+: <a class="el" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_init()
+: <a class="el" href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">rdp_settings.c</a>
+, <a class="el" href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87">rdp_settings.h</a>
+</li>
+<li>remmina_rdp_settings_kbd_init()
+: <a class="el" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_new()
+: <a class="el" href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53">rdp_settings.h</a>
+, <a class="el" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_quality_on_changed()
+: <a class="el" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_quality_option_on_toggled()
+: <a class="el" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_set_combo_active_item()
+: <a class="el" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_tunnel_init()
+: <a class="el" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_ui_event_destroy_cairo_surface()
+: <a class="el" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">rdp_event.c</a>
+</li>
+<li>remmina_rdp_ui_event_update_scale()
+: <a class="el" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">rdp_event.c</a>
+</li>
+<li>remmina_rdp_verify_certificate()
+: <a class="el" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_verify_changed_certificate()
+: <a class="el" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">rdp_plugin.c</a>
+</li>
+<li>remmina_schedluer_remove()
+: <a class="el" href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b">remmina_scheduler.c</a>
+</li>
+<li>remmina_scheduler_periodic_check()
+: <a class="el" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler.c</a>
+</li>
+<li>remmina_scheduler_setup()
+: <a class="el" href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6">remmina_scheduler.h</a>
+, <a class="el" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler.c</a>
+</li>
+<li>remmina_scrolled_viewport_class_init()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_destroy()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_enter()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_get_preferred_height()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_get_type()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312">remmina_scrolled_viewport.h</a>
+</li>
+<li>remmina_scrolled_viewport_init()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_leave()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_motion_timeout()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_new()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport.h</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_remove_motion()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport.h</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_sftp_client_confirm_resume()
+: <a class="el" href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client.h</a>
+, <a class="el" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_destroy()
+: <a class="el" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_get_type()
+: <a class="el" href="remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d">remmina_sftp_client.h</a>
+</li>
+<li>remmina_sftp_client_init()
+: <a class="el" href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_new()
+: <a class="el" href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client.c</a>
+, <a class="el" href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d">remmina_sftp_client.h</a>
+</li>
+<li>remmina_sftp_client_on_canceltask()
+: <a class="el" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_deletefile()
+: <a class="el" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_newtask()
+: <a class="el" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_opendir()
+: <a class="el" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_open()
+: <a class="el" href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client.h</a>
+, <a class="el" href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_refresh()
+: <a class="el" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_sftp_session_closedir()
+: <a class="el" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_sftp_session_opendir()
+: <a class="el" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_download_file()
+: <a class="el" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_get_task()
+: <a class="el" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_main()
+: <a class="el" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_mkdir()
+: <a class="el" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_recursive_dir()
+: <a class="el" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_recursive_localdir()
+: <a class="el" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_set_error()
+: <a class="el" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_set_finish()
+: <a class="el" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_update_task()
+: <a class="el" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_upload_file()
+: <a class="el" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_free()
+: <a class="el" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_new_from_ssh()
+: <a class="el" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_open()
+: <a class="el" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_plugin_register()
+: <a class="el" href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4">remmina_sftp_plugin.h</a>
+, <a class="el" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_sha1_file()
+: <a class="el" href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_utils.c</a>
+</li>
+<li>remmina_sodium_init()
+: <a class="el" href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium.c</a>
+</li>
+<li>remmina_sodium_pwhash()
+: <a class="el" href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium.c</a>
+, <a class="el" href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c">remmina_sodium.h</a>
+</li>
+<li>remmina_sodium_pwhash_str()
+: <a class="el" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium.c</a>
+, <a class="el" href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium.h</a>
+</li>
+<li>remmina_sodium_pwhash_str_verify()
+: <a class="el" href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium.c</a>
+</li>
+<li>remmina_ssh_auth()
+: <a class="el" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_agent()
+: <a class="el" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_auto_pubkey()
+: <a class="el" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_gssapi()
+: <a class="el" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_gui()
+: <a class="el" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_auth_interactive()
+: <a class="el" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_password()
+: <a class="el" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_pubkey()
+: <a class="el" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_convert()
+: <a class="el" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_find_identity()
+: <a class="el" href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh.c</a>
+, <a class="el" href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_free()
+: <a class="el" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_identity_path()
+: <a class="el" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh.c</a>
+, <a class="el" href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_init_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_init_session()
+: <a class="el" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_keystroke()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_load_terminal_palettes()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_popup_menu()
+: <a class="el" href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin.h</a>
+, <a class="el" href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_register()
+: <a class="el" href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9">remmina_ssh_plugin.h</a>
+, <a class="el" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_set_application_error()
+: <a class="el" href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_set_error()
+: <a class="el" href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_shell_free()
+: <a class="el" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_new_from_ssh()
+: <a class="el" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_open()
+: <a class="el" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_set_size()
+: <a class="el" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_cancel_accept()
+: <a class="el" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_free()
+: <a class="el" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_open()
+: <a class="el" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_reverse()
+: <a class="el" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_terminated()
+: <a class="el" href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_x11()
+: <a class="el" href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_xport()
+: <a class="el" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_unconvert()
+: <a class="el" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh.h</a>
+</li>
+<li>remmina_st_query_feature()
+: <a class="el" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">st_plugin.c</a>
+</li>
+<li>remmina_stat_sender_can_send()
+: <a class="el" href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff">remmina_stats_sender.h</a>
+, <a class="el" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_collector()
+: <a class="el" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_collector_done()
+: <a class="el" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_get_all()
+: <a class="el" href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae">remmina_stats.h</a>
+, <a class="el" href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_gtk_backend()
+: <a class="el" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_gtk_version()
+: <a class="el" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_indicator()
+: <a class="el" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_kiosk_mode()
+: <a class="el" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_master_password_status()
+: <a class="el" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_os_info()
+: <a class="el" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_profiles()
+: <a class="el" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_secret_plugin()
+: <a class="el" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_uid()
+: <a class="el" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_user_env()
+: <a class="el" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_version()
+: <a class="el" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_wm_name()
+: <a class="el" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats.c</a>
+</li>
+<li>remmina_stats_sender_periodic_check()
+: <a class="el" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_sender_schedule()
+: <a class="el" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender.c</a>
+, <a class="el" href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802">remmina_stats_sender.h</a>
+</li>
+<li>remmina_stats_sender_send()
+: <a class="el" href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender.h</a>
+, <a class="el" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender.c</a>
+</li>
+<li>remmina_string_array_add()
+: <a class="el" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_compare_func()
+: <a class="el" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_find()
+: <a class="el" href="remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_free()
+: <a class="el" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_intersect()
+: <a class="el" href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_new()
+: <a class="el" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_new_from_allocated_string()
+: <a class="el" href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_new_from_string()
+: <a class="el" href="remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_remove()
+: <a class="el" href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_remove_index()
+: <a class="el" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_sort()
+: <a class="el" href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_to_string()
+: <a class="el" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array.h</a>
+</li>
+<li>remmina_string_list_get_text()
+: <a class="el" href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec">remmina_string_list.h</a>
+, <a class="el" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_init()
+: <a class="el" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_move_iter()
+: <a class="el" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_new()
+: <a class="el" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_on_action_add()
+: <a class="el" href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_down()
+: <a class="el" href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_remove()
+: <a class="el" href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_up()
+: <a class="el" href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_cell_edited()
+: <a class="el" href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_set_text()
+: <a class="el" href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list.h</a>
+, <a class="el" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_set_titles()
+: <a class="el" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_set_validation_func()
+: <a class="el" href="remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list.h</a>
+, <a class="el" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_update_buttons_state()
+: <a class="el" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list.c</a>
+</li>
+<li>remmina_sysinfo_get_gnome_shell_version()
+: <a class="el" href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb">remmina_sysinfo.h</a>
+, <a class="el" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo.c</a>
+</li>
+<li>remmina_sysinfo_get_wm_name()
+: <a class="el" href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo.c</a>
+, <a class="el" href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a">remmina_sysinfo.h</a>
+</li>
+<li>remmina_sysinfo_is_appindicator_available()
+: <a class="el" href="remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23">remmina_sysinfo.h</a>
+, <a class="el" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo.c</a>
+</li>
+<li>remmina_tp_channel_handler_accept()
+: <a class="el" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_account_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_channel_closed()
+: <a class="el" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_channel_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_connect()
+: <a class="el" href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_connection_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_free()
+: <a class="el" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_get_contacts()
+: <a class="el" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_get_service()
+: <a class="el" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_new()
+: <a class="el" href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">telepathy_channel_handler.c</a>
+, <a class="el" href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c">telepathy_channel_handler.h</a>
+</li>
+<li>remmina_tp_channel_handler_on_disconnect()
+: <a class="el" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_on_response()
+: <a class="el" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_handler_class_init()
+: <a class="el" href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_handle_channels()
+: <a class="el" href="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_iface_init()
+: <a class="el" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_init()
+: <a class="el" href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_new()
+: <a class="el" href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">telepathy_handler.c</a>
+, <a class="el" href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6">telepathy_handler.h</a>
+</li>
+<li>remmina_tp_handler_register()
+: <a class="el" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">telepathy_handler.c</a>
+</li>
+<li>remmina_unlock_cancel_clicked()
+: <a class="el" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_new()
+: <a class="el" href="remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7">remmina_unlock.h</a>
+, <a class="el" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_timer_destroy()
+: <a class="el" href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_timer_init()
+: <a class="el" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_timer_reset()
+: <a class="el" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_unlock_clicked()
+: <a class="el" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock.c</a>
+</li>
+<li>remmina_utils_get_etc_release()
+: <a class="el" href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_kernel_arch()
+: <a class="el" href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_kernel_name()
+: <a class="el" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_kernel_release()
+: <a class="el" href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_lang()
+: <a class="el" href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_lsb_codename()
+: <a class="el" href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_lsb_description()
+: <a class="el" href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_lsb_id()
+: <a class="el" href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_lsb_release()
+: <a class="el" href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_os_info()
+: <a class="el" href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils.c</a>
+</li>
+<li>remmina_utils_read_distrofile()
+: <a class="el" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils.c</a>
+</li>
+<li>remmina_utils_string_find()
+: <a class="el" href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be">remmina_utils.h</a>
+</li>
+<li>remmina_utils_string_replace()
+: <a class="el" href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils.h</a>
+</li>
+<li>remmina_utils_string_replace_all()
+: <a class="el" href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils.c</a>
+</li>
+<li>remmina_utils_string_strip()
+: <a class="el" href="remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils.h</a>
+</li>
+<li>remmina_utils_strpos()
+: <a class="el" href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils.c</a>
+</li>
+<li>remmina_widget_pool_count()
+: <a class="el" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool.c</a>
+, <a class="el" href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a">remmina_widget_pool.h</a>
+</li>
+<li>remmina_widget_pool_find()
+: <a class="el" href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_find_by_window()
+: <a class="el" href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool.c</a>
+, <a class="el" href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool.h</a>
+</li>
+<li>remmina_widget_pool_foreach()
+: <a class="el" href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_init()
+: <a class="el" href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_on_widget_destroy()
+: <a class="el" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_register()
+: <a class="el" href="remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool.c</a>
+</li>
+<li>remmina_www_query_feature()
+: <a class="el" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">www_plugin.c</a>
+</li>
+<li>remmina_www_web_view_js_finished()
+: <a class="el" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">www_plugin.c</a>
+</li>
+<li>rf_auto_reconnect()
+: <a class="el" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rdp_plugin.c</a>
+</li>
+<li>rf_begin_paint()
+: <a class="el" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rdp_plugin.c</a>
+</li>
+<li>rf_Bitmap_Decompress()
+: <a class="el" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_Free()
+: <a class="el" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_New()
+: <a class="el" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_Paint()
+: <a class="el" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_SetSurface()
+: <a class="el" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rdp_graphics.c</a>
+</li>
+<li>rf_check_fds()
+: <a class="el" href="rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098">rdp_plugin.h</a>
+</li>
+<li>rf_desktop_resize()
+: <a class="el" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rdp_plugin.c</a>
+</li>
+<li>rf_end_paint()
+: <a class="el" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rdp_plugin.c</a>
+</li>
+<li>rf_get_fds()
+: <a class="el" href="rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc">rdp_plugin.h</a>
+</li>
+<li>rf_Glyph_BeginDraw()
+: <a class="el" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_Draw()
+: <a class="el" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_EndDraw()
+: <a class="el" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_Free()
+: <a class="el" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_New()
+: <a class="el" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rdp_graphics.c</a>
+</li>
+<li>rf_init()
+: <a class="el" href="rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7">rdp_plugin.h</a>
+</li>
+<li>rf_keyboard_set_ime_status()
+: <a class="el" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rdp_plugin.c</a>
+</li>
+<li>rf_keyboard_set_indicators()
+: <a class="el" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rdp_plugin.c</a>
+</li>
+<li>rf_object_free()
+: <a class="el" href="rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433">rdp_plugin.h</a>
+</li>
+<li>rf_play_sound()
+: <a class="el" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rdp_plugin.c</a>
+</li>
+<li>rf_Pointer_Free()
+: <a class="el" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_New()
+: <a class="el" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_Set()
+: <a class="el" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetDefault()
+: <a class="el" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetNull()
+: <a class="el" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetPosition()
+: <a class="el" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rdp_graphics.c</a>
+</li>
+<li>rf_process_event_queue()
+: <a class="el" href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rdp_plugin.c</a>
+</li>
+<li>rf_register_graphics()
+: <a class="el" href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rdp_graphics.c</a>
+, <a class="el" href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1">rdp_graphics.h</a>
+</li>
+<li>rf_uninit()
+: <a class="el" href="rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb">rdp_plugin.h</a>
+</li>
+<li>rfi_uninit()
+: <a class="el" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rdp_plugin.c</a>
+</li>
+<li>rmnews_close_clicked()
+: <a class="el" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews.c</a>
+</li>
+<li>rmnews_defaultcl_on_click()
+: <a class="el" href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798">rmnews.c</a>
+</li>
+<li>rmnews_dialog_deleted()
+: <a class="el" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews.c</a>
+</li>
+<li>rmnews_get_file_contents()
+: <a class="el" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews.c</a>
+</li>
+<li>rmnews_get_news()
+: <a class="el" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews.c</a>
+</li>
+<li>rmnews_get_uid()
+: <a class="el" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews.c</a>
+</li>
+<li>rmnews_get_url()
+: <a class="el" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews.c</a>
+, <a class="el" href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews.h</a>
+</li>
+<li>rmnews_get_url_cb()
+: <a class="el" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews.c</a>
+</li>
+<li>rmnews_periodic_check()
+: <a class="el" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews.c</a>
+</li>
+<li>rmnews_schedule()
+: <a class="el" href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888">rmnews.h</a>
+, <a class="el" href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews.c</a>
+</li>
+<li>rmnews_show_news()
+: <a class="el" href="rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af">rmnews.h</a>
+, <a class="el" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews.c</a>
+</li>
+<li>rmnews_stats_switch_state_set_cb()
+: <a class="el" href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce">rmnews.c</a>
+</li>
+<li>rp_kwallet_delete_password()
+: <a class="el" href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_get_password()
+: <a class="el" href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_init()
+: <a class="el" href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_is_service_available()
+: <a class="el" href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_store_password()
+: <a class="el" href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">kwallet_plugin.h</a>
+</li>
+<li>rpw_size_allocated_on_connection()
+: <a class="el" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rcw.c</a>
+</li>
+<li>rsa_encrypt_string()
+: <a class="el" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">remmina_stats_sender.c</a>
+</li>
+<li>run_destroy_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">remmina_protocol_widget.c</a>
+</li>
+<li>run_response_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">remmina_protocol_widget.c</a>
+</li>
+<li>run_unmap_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">remmina_protocol_widget.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_s.html b/docs/globals_func_s.html
new file mode 100644
index 000000000..958698375
--- /dev/null
+++ b/docs/globals_func_s.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_s.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>shutdown_loop()
+: <a class="el" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">remmina_protocol_widget.c</a>
+</li>
+<li>soup_callback()
+: <a class="el" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">remmina_stats_sender.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_u.html b/docs/globals_func_u.html
new file mode 100644
index 000000000..8d4f26cca
--- /dev/null
+++ b/docs/globals_func_u.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_u.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>unlock_dynres()
+: <a class="el" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">remmina_protocol_widget.c</a>
+</li>
+<li>update_align()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">remmina_protocol_widget.c</a>
+</li>
+<li>upgrade_sshkeys_202001()
+: <a class="el" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">remmina_file.c</a>
+</li>
+<li>upgrade_sshkeys_202001_mig_common_setting()
+: <a class="el" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">remmina_file.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_v.html b/docs/globals_func_v.html
new file mode 100644
index 000000000..242de1a0a
--- /dev/null
+++ b/docs/globals_func_v.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_v.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>view_popup_menu_onDoSomething()
+: <a class="el" href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">remmina_external_tools.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_func_w.html b/docs/globals_func_w.html
new file mode 100644
index 000000000..3820d007d
--- /dev/null
+++ b/docs/globals_func_w.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_func_w.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>wait_for_child()
+: <a class="el" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">remmina_ext_exec.c</a>
+</li>
+<li>www_utils_send_notification()
+: <a class="el" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa">www_utils.h</a>
+</li>
+<li>www_utils_string_find()
+: <a class="el" href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27">www_utils.h</a>
+</li>
+<li>www_utils_string_replace()
+: <a class="el" href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc">www_utils.h</a>
+, <a class="el" href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils.c</a>
+</li>
+<li>www_utils_string_replace_all()
+: <a class="el" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c">www_utils.h</a>
+</li>
+<li>www_utils_strpos()
+: <a class="el" href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_g.html b/docs/globals_g.html
new file mode 100644
index 000000000..43318a3ab
--- /dev/null
+++ b/docs/globals_g.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>G_DECLARE_DERIVABLE_TYPE()
+: <a class="el" href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156">remmina_message_panel.h</a>
+</li>
+<li>G_DEFINE_TYPE()
+: <a class="el" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">rcw.c</a>
+, <a class="el" href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d">remmina_scrolled_viewport.c</a>
+, <a class="el" href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007">remmina_chat_window.c</a>
+, <a class="el" href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8">remmina_sftp_client.c</a>
+, <a class="el" href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de">remmina_file_editor.c</a>
+, <a class="el" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">remmina_ftp_client.c</a>
+</li>
+<li>G_DEFINE_TYPE_WITH_CODE()
+: <a class="el" href="telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8">telepathy_handler.c</a>
+</li>
+<li>G_DEFINE_TYPE_WITH_PRIVATE()
+: <a class="el" href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e">remmina_message_panel.c</a>
+</li>
+<li>GCRY_THREAD_OPTION_PTHREAD_IMPL
+: <a class="el" href="remmina_8c.html#a3d760300165528383af409d2964d79d2">remmina.c</a>
+</li>
+<li>gcrypt_thread_initialized
+: <a class="el" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">remmina.c</a>
+</li>
+<li>get_current_allowed_scale_mode()
+: <a class="el" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">rcw.c</a>
+</li>
+<li>gfx_h264_available
+: <a class="el" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">rdp_plugin.c</a>
+</li>
+<li>gMainThreadID
+: <a class="el" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">remmina_masterthread_exec.c</a>
+</li>
+<li>GROUP_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">remmina_main.c</a>
+</li>
+<li>GRUVBOX
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">remmina_ssh_plugin.c</a>
+</li>
+<li>gruvbox_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">remmina_ssh_plugin.c</a>
+</li>
+<li>gwtransp_list
+: <a class="el" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">rdp_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_h.html b/docs/globals_h.html
new file mode 100644
index 000000000..ecf70dd04
--- /dev/null
+++ b/docs/globals_h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_h"></a>- h -</h3><ul>
+<li>htdestroy()
+: <a class="el" href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">remmina_plugin_manager.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_i.html b/docs/globals_i.html
new file mode 100644
index 000000000..53f03b73e
--- /dev/null
+++ b/docs/globals_i.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_i.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>init_settings_cache()
+: <a class="el" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">remmina_plugin_manager.c</a>
+</li>
+<li>isinit
+: <a class="el" href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea">remmina_unlock.h</a>
+, <a class="el" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">remmina_unlock.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_k.html b/docs/globals_k.html
new file mode 100644
index 000000000..82c5a6db7
--- /dev/null
+++ b/docs/globals_k.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_k.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_k"></a>- k -</h3><ul>
+<li>keyboard_layout
+: <a class="el" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">rdp_settings.c</a>
+</li>
+<li>keypress_list_add()
+: <a class="el" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">rdp_event.c</a>
+</li>
+<li>kioskmode
+: <a class="el" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">remmina.c</a>
+, <a class="el" href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1">remmina.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_l.html b/docs/globals_l.html
new file mode 100644
index 000000000..c46ec59ad
--- /dev/null
+++ b/docs/globals_l.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>LAST_SIGNAL
+: <a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">rcw.c</a>
+, <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">remmina_ftp_client.c</a>
+</li>
+<li>LAUNCH_ITEM_SIGNAL
+: <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">remmina_applet_menu.c</a>
+</li>
+<li>lf2crlf()
+: <a class="el" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">rdp_cliprdr.c</a>
+</li>
+<li>LINUX
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">remmina_ssh_plugin.c</a>
+</li>
+<li>linux_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">remmina_ssh_plugin.c</a>
+</li>
+<li>log_tips
+: <a class="el" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">remmina_ssh_plugin.c</a>
+</li>
+<li>log_window
+: <a class="el" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">remmina_log.c</a>
+</li>
+<li>LSBDistroInfo
+: <a class="el" href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">remmina_utils.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_m.html b/docs/globals_m.html
new file mode 100644
index 000000000..ed3b92a9a
--- /dev/null
+++ b/docs/globals_m.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_m.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>main()
+: <a class="el" href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97">remmina.c</a>
+</li>
+<li>main_actions
+: <a class="el" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">remmina_main.c</a>
+</li>
+<li>messagepanel_signals
+: <a class="el" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">remmina_message_panel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_n.html b/docs/globals_n.html
new file mode 100644
index 000000000..cfc0bca82
--- /dev/null
+++ b/docs/globals_n.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_n.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>N_()
+: <a class="el" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">vnc_plugin.c</a>
+</li>
+<li>N_COLUMNS
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4">remmina_main.c</a>
+</li>
+<li>NAME_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">remmina_main.c</a>
+</li>
+<li>nb_find_page_by_cnnobj()
+: <a class="el" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">rcw.c</a>
+</li>
+<li>nb_migrate_page_content()
+: <a class="el" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">rcw.c</a>
+</li>
+<li>nb_set_current_page()
+: <a class="el" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">rcw.c</a>
+</li>
+<li>NEW_TASK_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">remmina_ftp_client.c</a>
+</li>
+<li>newline_remove()
+: <a class="el" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">remmina_exec.c</a>
+</li>
+<li>NUM_COLS
+: <a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">remmina_mpchange.c</a>
+</li>
+<li>nx_default_private_key
+: <a class="el" href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_session.c</a>
+</li>
+<li>nx_hello_server_msg
+: <a class="el" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_session.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_o.html b/docs/globals_o.html
new file mode 100644
index 000000000..30a72334e
--- /dev/null
+++ b/docs/globals_o.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_o.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>onMainThread_cb()
+: <a class="el" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">nx_plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">vnc_plugin.c</a>
+</li>
+<li>onMainThread_cleanup_handler()
+: <a class="el" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">vnc_plugin.c</a>
+, <a class="el" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">nx_plugin.c</a>
+</li>
+<li>onMainThread_gtk_socket_add_id()
+: <a class="el" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">nx_plugin.c</a>
+</li>
+<li>onMainThread_schedule_callback_and_wait()
+: <a class="el" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">vnc_plugin.c</a>
+, <a class="el" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">nx_plugin.c</a>
+</li>
+<li>open_connection_last_stage()
+: <a class="el" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">rcw.c</a>
+</li>
+<li>OPEN_DIR_SIGNAL
+: <a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">remmina_ftp_client.c</a>
+</li>
+<li>output_file_path
+: <a class="el" href="rmnews_8c.html#a565782499953048b5e51934123195e29">rmnews.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_p.html b/docs/globals_p.html
new file mode 100644
index 000000000..18bace76d
--- /dev/null
+++ b/docs/globals_p.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_p.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5">remmina_ssh_plugin.c</a>
+</li>
+<li>panel_type
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">remmina_protocol_widget.c</a>
+</li>
+<li>PLUGIN_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">remmina_main.c</a>
+</li>
+<li>PROTOCOL_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">remmina_main.c</a>
+</li>
+<li>PThreadCleanupFunc
+: <a class="el" href="remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee">remmina_plugin.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_q.html b/docs/globals_q.html
new file mode 100644
index 000000000..65caec830
--- /dev/null
+++ b/docs/globals_q.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_q.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_q"></a>- q -</h3><ul>
+<li>quality_list
+: <a class="el" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">nx_plugin.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">rdp_plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">vnc_plugin.c</a>
+</li>
+<li>quick_connect_plugin_list
+: <a class="el" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">remmina_main.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_r.html b/docs/globals_r.html
new file mode 100644
index 000000000..fd277db0f
--- /dev/null
+++ b/docs/globals_r.html
@@ -0,0 +1,5161 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_r.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>rco_call_protocol_feature_activate()
+: <a class="el" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rcw.c</a>
+</li>
+<li>rco_call_protocol_feature_check()
+: <a class="el" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rcw.c</a>
+</li>
+<li>rco_call_protocol_feature_radio()
+: <a class="el" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rcw.c</a>
+</li>
+<li>rco_change_scalemode()
+: <a class="el" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rcw.c</a>
+</li>
+<li>rco_check_resize()
+: <a class="el" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rcw.c</a>
+</li>
+<li>rco_closewin()
+: <a class="el" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rcw.c</a>
+</li>
+<li>rco_create_scrolled_container()
+: <a class="el" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rcw.c</a>
+</li>
+<li>rco_create_tab_label()
+: <a class="el" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rcw.c</a>
+</li>
+<li>rco_create_tab_page()
+: <a class="el" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rcw.c</a>
+</li>
+<li>rco_destroy_message_panel()
+: <a class="el" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7">rcw.h</a>
+</li>
+<li>rco_disconnect_current_page()
+: <a class="el" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rcw.c</a>
+</li>
+<li>rco_enter_protocol_widget()
+: <a class="el" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rcw.c</a>
+</li>
+<li>rco_get_desktop_size()
+: <a class="el" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rcw.c</a>
+</li>
+<li>rco_get_monitor_geometry()
+: <a class="el" href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a">rcw.h</a>
+, <a class="el" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rcw.c</a>
+</li>
+<li>rco_leave_protocol_widget()
+: <a class="el" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rcw.c</a>
+</li>
+<li>rco_on_close_button_clicked()
+: <a class="el" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rcw.c</a>
+</li>
+<li>rco_on_connect()
+: <a class="el" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rcw.c</a>
+</li>
+<li>rco_on_desktop_resize()
+: <a class="el" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rcw.c</a>
+</li>
+<li>rco_on_disconnect()
+: <a class="el" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rcw.c</a>
+</li>
+<li>rco_on_unlock_dynres()
+: <a class="el" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rcw.c</a>
+</li>
+<li>rco_on_update_align()
+: <a class="el" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rcw.c</a>
+</li>
+<li>rco_scrolled_fullscreen_mode()
+: <a class="el" href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rcw.c</a>
+</li>
+<li>rco_set_scrolled_policy()
+: <a class="el" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rcw.c</a>
+</li>
+<li>rco_show_message_panel()
+: <a class="el" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rcw.c</a>
+, <a class="el" href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rcw.h</a>
+</li>
+<li>rco_switch_page_activate()
+: <a class="el" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rcw.c</a>
+</li>
+<li>rco_update_toolbar()
+: <a class="el" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rcw.c</a>
+</li>
+<li>rco_update_toolbar_autofit_button()
+: <a class="el" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rcw.c</a>
+</li>
+<li>rco_viewport_fullscreen_mode()
+: <a class="el" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rcw.c</a>
+</li>
+<li>rcw_after_configure_scrolled()
+: <a class="el" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw.c</a>
+</li>
+<li>rcw_append_new_page()
+: <a class="el" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw.c</a>
+</li>
+<li>rcw_class_init()
+: <a class="el" href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4">rcw.c</a>
+</li>
+<li>rcw_close_all_connections()
+: <a class="el" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw.c</a>
+</li>
+<li>rcw_create_floating_toolbar()
+: <a class="el" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw.c</a>
+</li>
+<li>rcw_create_fullscreen()
+: <a class="el" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw.c</a>
+</li>
+<li>rcw_create_notebook()
+: <a class="el" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw.c</a>
+</li>
+<li>rcw_create_overlay_ftb_overlay()
+: <a class="el" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw.c</a>
+</li>
+<li>rcw_create_scrolled()
+: <a class="el" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw.c</a>
+</li>
+<li>rcw_create_toolbar()
+: <a class="el" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw.c</a>
+</li>
+<li>rcw_delayed_window_present()
+: <a class="el" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw.c</a>
+</li>
+<li>rcw_delete()
+: <a class="el" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw.c</a>
+, <a class="el" href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7">rcw.h</a>
+</li>
+<li>rcw_delete_event()
+: <a class="el" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw.c</a>
+</li>
+<li>rcw_destroy()
+: <a class="el" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw.c</a>
+</li>
+<li>rcw_find()
+: <a class="el" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_hide()
+: <a class="el" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_make_invisible()
+: <a class="el" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_on_enter()
+: <a class="el" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_on_scroll()
+: <a class="el" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw.c</a>
+</li>
+<li>rcw_floating_toolbar_show()
+: <a class="el" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw.c</a>
+</li>
+<li>rcw_focus_in()
+: <a class="el" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw.c</a>
+</li>
+<li>rcw_focus_out()
+: <a class="el" href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw.c</a>
+</li>
+<li>rcw_ftb_drag_begin()
+: <a class="el" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw.c</a>
+</li>
+<li>rcw_ftb_drag_drop()
+: <a class="el" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw.c</a>
+</li>
+<li>rcw_fullscreen_option_popdown()
+: <a class="el" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw.c</a>
+</li>
+<li>rcw_get_cnnobj_at_page()
+: <a class="el" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw.c</a>
+</li>
+<li>rcw_get_type()
+: <a class="el" href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw.h</a>
+</li>
+<li>rcw_get_visible_cnnobj()
+: <a class="el" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw.c</a>
+</li>
+<li>rcw_grab_focus()
+: <a class="el" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw.c</a>
+</li>
+<li>rcw_hostkey_func()
+: <a class="el" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw.c</a>
+</li>
+<li>rcw_init()
+: <a class="el" href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd">rcw.c</a>
+</li>
+<li>rcw_keyboard_grab()
+: <a class="el" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw.c</a>
+</li>
+<li>rcw_keyboard_grab_retry()
+: <a class="el" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw.c</a>
+</li>
+<li>rcw_kp_ungrab()
+: <a class="el" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw.c</a>
+</li>
+<li>rcw_map_event_fullscreen()
+: <a class="el" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw.c</a>
+</li>
+<li>rcw_migrate()
+: <a class="el" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw.c</a>
+</li>
+<li>rcw_new()
+: <a class="el" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw.c</a>
+</li>
+<li>rcw_notify_widget_toolbar_placement()
+: <a class="el" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw.c</a>
+</li>
+<li>rcw_on_configure()
+: <a class="el" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw.c</a>
+</li>
+<li>rcw_on_leave_notify_event()
+: <a class="el" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw.c</a>
+</li>
+<li>rcw_on_notebook_create_window()
+: <a class="el" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw.c</a>
+</li>
+<li>rcw_on_page_added()
+: <a class="el" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw.c</a>
+</li>
+<li>rcw_on_page_removed()
+: <a class="el" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw.c</a>
+</li>
+<li>rcw_on_switch_page()
+: <a class="el" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw.c</a>
+</li>
+<li>rcw_on_switch_page_finalsel()
+: <a class="el" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw.c</a>
+</li>
+<li>RCW_ONDELETE_CONFIRM_IF_2_OR_MORE
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">rcw.h</a>
+</li>
+<li>RCW_ONDELETE_NOCONFIRM
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">rcw.h</a>
+</li>
+<li>rcw_open_from_file()
+: <a class="el" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a1b7a771392e15e527005305e71cc2546">rcw.h</a>
+</li>
+<li>rcw_open_from_file_full()
+: <a class="el" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw.c</a>
+, <a class="el" href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw.h</a>
+</li>
+<li>rcw_open_from_filename()
+: <a class="el" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw.c</a>
+, <a class="el" href="rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw.h</a>
+</li>
+<li>rcw_place_toolbar()
+: <a class="el" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw.c</a>
+</li>
+<li>rcw_pointer_grab()
+: <a class="el" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw.c</a>
+</li>
+<li>rcw_pointer_ungrab()
+: <a class="el" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw.c</a>
+</li>
+<li>rcw_scaler_expand()
+: <a class="el" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw.c</a>
+</li>
+<li>rcw_scaler_keep_aspect()
+: <a class="el" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw.c</a>
+</li>
+<li>rcw_scaler_option_popdown()
+: <a class="el" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw.c</a>
+</li>
+<li>rcw_set_delete_confirm_mode()
+: <a class="el" href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d">rcw.h</a>
+</li>
+<li>rcw_set_toolbar_visibility()
+: <a class="el" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw.c</a>
+</li>
+<li>rcw_set_tooltip()
+: <a class="el" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw.c</a>
+</li>
+<li>rcw_signals
+: <a class="el" href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e">rcw.c</a>
+</li>
+<li>rcw_state_event()
+: <a class="el" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw.c</a>
+</li>
+<li>rcw_switch_viewmode()
+: <a class="el" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw.c</a>
+</li>
+<li>rcw_tb_drag_begin()
+: <a class="el" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw.c</a>
+</li>
+<li>rcw_tb_drag_drop()
+: <a class="el" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw.c</a>
+</li>
+<li>rcw_tb_drag_failed()
+: <a class="el" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw.c</a>
+</li>
+<li>rcw_toolbar_autofit()
+: <a class="el" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw.c</a>
+</li>
+<li>rcw_toolbar_autofit_restore()
+: <a class="el" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw.c</a>
+</li>
+<li>rcw_toolbar_disconnect()
+: <a class="el" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw.c</a>
+</li>
+<li>rcw_toolbar_duplicate()
+: <a class="el" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw.c</a>
+</li>
+<li>rcw_toolbar_dynres()
+: <a class="el" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw.c</a>
+</li>
+<li>rcw_toolbar_fullscreen()
+: <a class="el" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw.c</a>
+</li>
+<li>rcw_toolbar_fullscreen_option()
+: <a class="el" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw.c</a>
+</li>
+<li>rcw_toolbar_grab()
+: <a class="el" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw.c</a>
+</li>
+<li>rcw_toolbar_minimize()
+: <a class="el" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw.c</a>
+</li>
+<li>rcw_toolbar_pin()
+: <a class="el" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw.c</a>
+</li>
+<li>rcw_toolbar_place_signal()
+: <a class="el" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences()
+: <a class="el" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_check()
+: <a class="el" href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_popdown()
+: <a class="el" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw.c</a>
+</li>
+<li>rcw_toolbar_preferences_radio()
+: <a class="el" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw.c</a>
+</li>
+<li>rcw_toolbar_scaled_mode()
+: <a class="el" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw.c</a>
+</li>
+<li>rcw_toolbar_scaler_option()
+: <a class="el" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw.c</a>
+</li>
+<li>rcw_toolbar_screenshot()
+: <a class="el" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw.c</a>
+</li>
+<li>rcw_toolbar_switch_page()
+: <a class="el" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw.c</a>
+</li>
+<li>rcw_toolbar_switch_page_popdown()
+: <a class="el" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw.c</a>
+</li>
+<li>rcw_toolbar_tools()
+: <a class="el" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw.c</a>
+</li>
+<li>rcw_toolbar_tools_popdown()
+: <a class="el" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw.c</a>
+</li>
+<li>rcw_update_notebook()
+: <a class="el" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw.c</a>
+</li>
+<li>rcw_update_pin()
+: <a class="el" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw.c</a>
+</li>
+<li>rcw_update_tag()
+: <a class="el" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw.c</a>
+</li>
+<li>rcw_update_toolbar_opacity()
+: <a class="el" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw.c</a>
+</li>
+<li>rdp_keyboard_layout
+: <a class="el" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_settings.c</a>
+</li>
+<li>remmina_about_open()
+: <a class="el" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about.c</a>
+, <a class="el" href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8">remmina_about.h</a>
+</li>
+<li>REMMINA_ACTION_CONNECT
+: <a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">remmina_pref.h</a>
+</li>
+<li>REMMINA_ACTION_EDIT
+: <a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">remmina_pref.h</a>
+</li>
+<li>remmina_applet_menu_add_group()
+: <a class="el" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_add_item()
+: <a class="el" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_class_init()
+: <a class="el" href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_destroy()
+: <a class="el" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_get_type()
+: <a class="el" href="remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_increase_group_count()
+: <a class="el" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_init()
+: <a class="el" href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_item_class_init()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701">remmina_applet_menu_item.c</a>
+</li>
+<li>remmina_applet_menu_item_compare()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_DISCOVERED
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_FILE
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_item_get_type()
+: <a class="el" href="remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_item_init()
+: <a class="el" href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0">remmina_applet_menu_item.c</a>
+</li>
+<li>remmina_applet_menu_item_new()
+: <a class="el" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item.c</a>
+, <a class="el" href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_ITEM_NEW
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">remmina_applet_menu_item.h</a>
+</li>
+<li>remmina_applet_menu_new()
+: <a class="el" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_NONE
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3">remmina_applet_menu.h</a>
+</li>
+<li>REMMINA_APPLET_MENU_NEW_CONNECTION_TOP
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_on_item_activate()
+: <a class="el" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu.c</a>
+</li>
+<li>remmina_applet_menu_populate()
+: <a class="el" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_register_item()
+: <a class="el" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_set_hide_count()
+: <a class="el" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu.c</a>
+, <a class="el" href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu.h</a>
+</li>
+<li>remmina_applet_menu_signals
+: <a class="el" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu.c</a>
+</li>
+<li>remmina_application_condexit()
+: <a class="el" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_exec.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_PROTOCOL
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2">types.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920">types.h</a>
+</li>
+<li>REMMINA_AUTHPWD_TYPE_SSH_PWD
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d">types.h</a>
+</li>
+<li>remmina_avahi_browse_callback()
+: <a class="el" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_client_callback()
+: <a class="el" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_free()
+: <a class="el" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_iterate()
+: <a class="el" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_new()
+: <a class="el" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_resolve_callback()
+: <a class="el" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi.c</a>
+</li>
+<li>remmina_avahi_start()
+: <a class="el" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi.h</a>
+</li>
+<li>remmina_avahi_stop()
+: <a class="el" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi.c</a>
+, <a class="el" href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi.h</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_class_init()
+: <a class="el" href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_get_type()
+: <a class="el" href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_init()
+: <a class="el" href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2">remmina_ftp_client.c</a>
+</li>
+<li>remmina_cell_renderer_pixbuf_new()
+: <a class="el" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_ftp_client.c</a>
+</li>
+<li>remmina_chat_window_append_text()
+: <a class="el" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_class_init()
+: <a class="el" href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_clear_send_text()
+: <a class="el" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_get_type()
+: <a class="el" href="remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_init()
+: <a class="el" href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_new()
+: <a class="el" href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window.c</a>
+, <a class="el" href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_receive()
+: <a class="el" href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window.c</a>
+, <a class="el" href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window.h</a>
+</li>
+<li>remmina_chat_window_scroll_proc()
+: <a class="el" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_send()
+: <a class="el" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_send_text_on_key()
+: <a class="el" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window.c</a>
+</li>
+<li>remmina_chat_window_signals
+: <a class="el" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window.c</a>
+</li>
+<li>remmina_colors_file
+: <a class="el" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_pref.h</a>
+</li>
+<li>REMMINA_COMMAND_ABOUT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_AUTOSTART
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_CONNECT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_EDIT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_EXIT
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_FULL_VERSION
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_MAIN
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_NEW
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_NONE
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_PLUGIN
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_PREF
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">remmina_exec.h</a>
+</li>
+<li>REMMINA_COMMAND_VERSION
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONDISCONNECT
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONMAINWINDELETE
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">remmina_exec.h</a>
+</li>
+<li>REMMINA_CONDEXIT_ONQUIT
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">remmina_exec.h</a>
+</li>
+<li>remmina_crypt_decrypt()
+: <a class="el" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt.c</a>
+, <a class="el" href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d">remmina_crypt.h</a>
+</li>
+<li>remmina_crypt_encrypt()
+: <a class="el" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt.c</a>
+, <a class="el" href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9">remmina_crypt.h</a>
+</li>
+<li>remmina_crypt_init()
+: <a class="el" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt.c</a>
+</li>
+<li>remmina_debug()
+: <a class="el" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a">remmina_log.h</a>
+</li>
+<li>remmina_drop_types
+: <a class="el" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_main.c</a>
+</li>
+<li>remmina_exec_autostart_cb()
+: <a class="el" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec.c</a>
+</li>
+<li>remmina_exec_command()
+: <a class="el" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7">remmina_exec.h</a>
+</li>
+<li>remmina_exec_exitremmina()
+: <a class="el" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f">remmina_exec.h</a>
+</li>
+<li>remmina_exec_get_build_config()
+: <a class="el" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec.c</a>
+</li>
+<li>remmina_exec_set_setting()
+: <a class="el" href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec.c</a>
+, <a class="el" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec.h</a>
+</li>
+<li>remmina_ext_exec_new()
+: <a class="el" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec.c</a>
+, <a class="el" href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec.h</a>
+</li>
+<li>remmina_external_tools_from_filename()
+: <a class="el" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools.c</a>
+, <a class="el" href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85">remmina_external_tools.h</a>
+</li>
+<li>remmina_external_tools_launcher()
+: <a class="el" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools.c</a>
+</li>
+<li>remmina_file_copy()
+: <a class="el" href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343">remmina_file.h</a>
+</li>
+<li>remmina_file_delete()
+: <a class="el" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file.h</a>
+</li>
+<li>remmina_file_dup()
+: <a class="el" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file.h</a>
+</li>
+<li>remmina_file_dup_temp_protocol()
+: <a class="el" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file.h</a>
+</li>
+<li>remmina_file_editor_browse_avahi()
+: <a class="el" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_browse_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_button_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_check_profile()
+: <a class="el" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_class_init()
+: <a class="el" href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_all_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_check()
+: <a class="el" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_chooser()
+: <a class="el" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_combo()
+: <a class="el" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_notebook_container()
+: <a class="el" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_notebook_tab()
+: <a class="el" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_password()
+: <a class="el" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_select()
+: <a class="el" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_server()
+: <a class="el" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_ssh_privatekey()
+: <a class="el" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_ssh_tunnel_tab()
+: <a class="el" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_create_text()
+: <a class="el" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_destroy()
+: <a class="el" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_entry_on_changed()
+: <a class="el" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_file_save()
+: <a class="el" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_get_type()
+: <a class="el" href="remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_init()
+: <a class="el" href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_iterate_protocol()
+: <a class="el" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_new()
+: <a class="el" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_copy()
+: <a class="el" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_from_file()
+: <a class="el" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_from_filename()
+: <a class="el" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_new_full()
+: <a class="el" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor.c</a>
+, <a class="el" href="remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor.h</a>
+</li>
+<li>remmina_file_editor_on_cancel()
+: <a class="el" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_connect()
+: <a class="el" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_default()
+: <a class="el" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_realize()
+: <a class="el" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_save()
+: <a class="el" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_on_save_connect()
+: <a class="el" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_protocol_combo_on_changed()
+: <a class="el" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_save_ssh_tunnel_tab()
+: <a class="el" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_enabled_check_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled()
+: <a class="el" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update()
+: <a class="el" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update_resolution()
+: <a class="el" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_editor_update_settings()
+: <a class="el" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor.c</a>
+</li>
+<li>remmina_file_format_properties()
+: <a class="el" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file.h</a>
+</li>
+<li>remmina_file_free()
+: <a class="el" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file.h</a>
+</li>
+<li>remmina_file_generate_filename()
+: <a class="el" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file.h</a>
+</li>
+<li>remmina_file_get_datadir()
+: <a class="el" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_get_datetime()
+: <a class="el" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file.h</a>
+</li>
+<li>remmina_file_get_filename()
+: <a class="el" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file.h</a>
+</li>
+<li>remmina_file_get_icon_name()
+: <a class="el" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file.h</a>
+</li>
+<li>remmina_file_get_int()
+: <a class="el" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file.h</a>
+</li>
+<li>remmina_file_get_keyfile()
+: <a class="el" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file.c</a>
+</li>
+<li>remmina_file_get_secret()
+: <a class="el" href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file.h</a>
+</li>
+<li>remmina_file_get_string()
+: <a class="el" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file.h</a>
+</li>
+<li>remmina_file_load()
+: <a class="el" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file.h</a>
+</li>
+<li>remmina_file_manager_add_group()
+: <a class="el" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager.c</a>
+</li>
+<li>remmina_file_manager_do_copy()
+: <a class="el" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager.c</a>
+</li>
+<li>remmina_file_manager_free_group_tree()
+: <a class="el" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_get_group_tree()
+: <a class="el" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_get_groups()
+: <a class="el" href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_init()
+: <a class="el" href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_iterate()
+: <a class="el" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_manager_load_file()
+: <a class="el" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager.c</a>
+, <a class="el" href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager.h</a>
+</li>
+<li>remmina_file_multipasswd_changer_mt()
+: <a class="el" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_mpchange.c</a>
+</li>
+<li>remmina_file_new()
+: <a class="el" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892">remmina_file.h</a>
+</li>
+<li>remmina_file_new_empty()
+: <a class="el" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file.c</a>
+</li>
+<li>remmina_file_remove_key()
+: <a class="el" href="remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b">remmina_file.h</a>
+</li>
+<li>remmina_file_save()
+: <a class="el" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file.h</a>
+</li>
+<li>remmina_file_secret_schema
+: <a class="el" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">glibsecret_plugin.c</a>
+</li>
+<li>remmina_file_set_filename()
+: <a class="el" href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114">remmina_file.h</a>
+</li>
+<li>remmina_file_set_int()
+: <a class="el" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file.h</a>
+</li>
+<li>remmina_file_set_string()
+: <a class="el" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file.h</a>
+</li>
+<li>remmina_file_set_string_ref()
+: <a class="el" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file.h</a>
+</li>
+<li>remmina_file_store_secret_plugin_password()
+: <a class="el" href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file.h</a>
+</li>
+<li>remmina_file_touch()
+: <a class="el" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file.h</a>
+</li>
+<li>remmina_file_unsave_passwords()
+: <a class="el" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file.c</a>
+, <a class="el" href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014">remmina_file.h</a>
+</li>
+<li>remmina_ftp_client_action_delete()
+: <a class="el" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_download()
+: <a class="el" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_home()
+: <a class="el" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_parent()
+: <a class="el" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_refresh()
+: <a class="el" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_action_upload()
+: <a class="el" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_add_file()
+: <a class="el" href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_cell_data_filetype_pixbuf()
+: <a class="el" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_permission()
+: <a class="el" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_progress()
+: <a class="el" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_progress_pixbuf()
+: <a class="el" href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_size()
+: <a class="el" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_cell_data_size_progress()
+: <a class="el" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_class_init()
+: <a class="el" href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_clear_file_list()
+: <a class="el" href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_create_toolbar()
+: <a class="el" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_destroy()
+: <a class="el" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_dir_on_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_dir_on_changed()
+: <a class="el" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_download()
+: <a class="el" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_file_list_on_button_press()
+: <a class="el" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_file_selection_on_changed()
+: <a class="el" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_filter_visible_func()
+: <a class="el" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_get_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_download_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_get_overwrite_status()
+: <a class="el" href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_type()
+: <a class="el" href="remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_get_waiting_task()
+: <a class="el" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_init()
+: <a class="el" href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_load_state()
+: <a class="el" href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_new()
+: <a class="el" href="remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_open_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_popup_menu()
+: <a class="el" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_save_state()
+: <a class="el" href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_dir()
+: <a class="el" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_file_action_sensitive()
+: <a class="el" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_set_overwrite_status()
+: <a class="el" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_set_show_hidden()
+: <a class="el" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_signals
+: <a class="el" href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_size_to_str()
+: <a class="el" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_task_list_cell_on_activate()
+: <a class="el" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_task_list_on_query_tooltip()
+: <a class="el" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_taskid
+: <a class="el" href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_update_task()
+: <a class="el" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_client_upload_folder_on_toggled()
+: <a class="el" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client.c</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_GROUP
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_NAME
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_NAME_SORT
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_PERMISSION
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_SIZE
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_TYPE
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_COLUMN_USER
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_N_COLUMNS
+: <a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_N_TYPES
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_TYPE_DIR
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_FILE_TYPE_FILE
+: <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_DONESIZE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_LOCALDIR
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_NAME
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_REMOTEDIR
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_SIZE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_STATUS
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TASKID
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TASKTYPE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TOOLTIP
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_COLUMN_TYPE
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">remmina_ftp_client.h</a>
+</li>
+<li>remmina_ftp_task_free()
+: <a class="el" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_client.c</a>
+, <a class="el" href="remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_COLUMNS
+: <a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_STATUSES
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_N_TYPES
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_ERROR
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_FINISH
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_RUN
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_STATUS_WAIT
+: <a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_TYPE_DOWNLOAD
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">remmina_ftp_client.h</a>
+</li>
+<li>REMMINA_FTP_TASK_TYPE_UPLOAD
+: <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">remmina_ftp_client.h</a>
+</li>
+<li>remmina_gen_random_uuid()
+: <a class="el" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e">remmina_utils.h</a>
+</li>
+<li>remmina_get_keytype()
+: <a class="el" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">nx_session.c</a>
+</li>
+<li>remmina_gtk_check_version()
+: <a class="el" href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_public.h</a>
+</li>
+<li>remmina_gtksocket_available()
+: <a class="el" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_icon
+: <a class="el" href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0">remmina_icon.c</a>
+</li>
+<li>remmina_icon_about()
+: <a class="el" href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon.c</a>
+</li>
+<li>remmina_icon_create_autostart_file()
+: <a class="el" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon.c</a>
+</li>
+<li>remmina_icon_destroy()
+: <a class="el" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon.h</a>
+</li>
+<li>remmina_icon_enable_avahi()
+: <a class="el" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon.c</a>
+</li>
+<li>remmina_icon_init()
+: <a class="el" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6">remmina_icon.h</a>
+</li>
+<li>remmina_icon_is_autostart()
+: <a class="el" href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon.h</a>
+</li>
+<li>remmina_icon_is_available()
+: <a class="el" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon.h</a>
+</li>
+<li>remmina_icon_main()
+: <a class="el" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_activate()
+: <a class="el" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_edit_item()
+: <a class="el" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_launch_item()
+: <a class="el" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon.c</a>
+</li>
+<li>remmina_icon_on_popup_menu()
+: <a class="el" href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon.c</a>
+</li>
+<li>remmina_icon_popdown_menu()
+: <a class="el" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_additional_menu_item()
+: <a class="el" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_extra_menu_item()
+: <a class="el" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon.c</a>
+</li>
+<li>remmina_icon_populate_menu()
+: <a class="el" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon.h</a>
+</li>
+<li>remmina_icon_preferences()
+: <a class="el" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon.c</a>
+</li>
+<li>remmina_icon_save_autostart_file()
+: <a class="el" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon.c</a>
+</li>
+<li>remmina_icon_set_autostart()
+: <a class="el" href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon.c</a>
+, <a class="el" href="remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon.h</a>
+</li>
+<li>remmina_kbtype
+: <a class="el" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">nx_plugin.c</a>
+</li>
+<li>remmina_key_chooser_dialog_on_key_press()
+: <a class="el" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser.c</a>
+</li>
+<li>remmina_key_chooser_get_keyval()
+: <a class="el" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser.h</a>
+</li>
+<li>remmina_key_chooser_get_value()
+: <a class="el" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser.h</a>
+</li>
+<li>remmina_key_chooser_new()
+: <a class="el" href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser.c</a>
+, <a class="el" href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36">remmina_key_chooser.h</a>
+</li>
+<li>remmina_keymap_file
+: <a class="el" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_pref.c</a>
+</li>
+<li>remmina_keymap_table
+: <a class="el" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_pref.c</a>
+</li>
+<li>remmina_log_end()
+: <a class="el" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log.c</a>
+</li>
+<li>remmina_log_on_keypress()
+: <a class="el" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log.c</a>
+</li>
+<li>remmina_log_print()
+: <a class="el" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa">remmina_log.h</a>
+</li>
+<li>remmina_log_print_real()
+: <a class="el" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log.c</a>
+</li>
+<li>remmina_log_printf()
+: <a class="el" href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log.h</a>
+</li>
+<li>remmina_log_running()
+: <a class="el" href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log.h</a>
+</li>
+<li>remmina_log_scroll_to_end()
+: <a class="el" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log.c</a>
+</li>
+<li>remmina_log_start()
+: <a class="el" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log.c</a>
+, <a class="el" href="remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683">remmina_log.h</a>
+</li>
+<li>remmina_log_window_get_type()
+: <a class="el" href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e">remmina_log.c</a>
+</li>
+<li>remmina_log_window_init()
+: <a class="el" href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd">remmina_log.c</a>
+</li>
+<li>remmina_log_window_new()
+: <a class="el" href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log.c</a>
+</li>
+<li>remmina_main_action_tools_import_on_response()
+: <a class="el" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main.c</a>
+</li>
+<li>remmina_main_add_tool_plugin()
+: <a class="el" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main.c</a>
+</li>
+<li>remmina_main_clear_selection_data()
+: <a class="el" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main.c</a>
+</li>
+<li>remmina_main_destroy()
+: <a class="el" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main.h</a>
+</li>
+<li>remmina_main_dexit()
+: <a class="el" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main.c</a>
+</li>
+<li>remmina_main_expand_group()
+: <a class="el" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main.c</a>
+</li>
+<li>remmina_main_expand_group_traverse()
+: <a class="el" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main.c</a>
+</li>
+<li>remmina_main_file_editor_destroy()
+: <a class="el" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_button_press()
+: <a class="el" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_key_press()
+: <a class="el" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main.c</a>
+</li>
+<li>remmina_main_file_list_on_row_activated()
+: <a class="el" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main.c</a>
+</li>
+<li>remmina_main_file_model_on_sort()
+: <a class="el" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main.c</a>
+</li>
+<li>remmina_main_filter_visible_func()
+: <a class="el" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main.c</a>
+</li>
+<li>remmina_main_get_window()
+: <a class="el" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main.h</a>
+</li>
+<li>remmina_main_import_file_list()
+: <a class="el" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main.c</a>
+</li>
+<li>remmina_main_init()
+: <a class="el" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_list_callback()
+: <a class="el" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_callback()
+: <a class="el" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_find()
+: <a class="el" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_group()
+: <a class="el" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main.c</a>
+</li>
+<li>remmina_main_load_file_tree_traverse()
+: <a class="el" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main.c</a>
+</li>
+<li>remmina_main_load_files()
+: <a class="el" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main.c</a>
+</li>
+<li>remmina_main_load_files_cb()
+: <a class="el" href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0">remmina_main.c</a>
+</li>
+<li>remmina_main_new()
+: <a class="el" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_about()
+: <a class="el" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_default()
+: <a class="el" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_mpchange()
+: <a class="el" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_news()
+: <a class="el" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_plugins()
+: <a class="el" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_preferences()
+: <a class="el" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_application_quit()
+: <a class="el" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_collapse()
+: <a class="el" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_connect()
+: <a class="el" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_copy()
+: <a class="el" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_delete()
+: <a class="el" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_edit()
+: <a class="el" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_external_tools()
+: <a class="el" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_connection_new()
+: <a class="el" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_expand()
+: <a class="el" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_community()
+: <a class="el" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_debug()
+: <a class="el" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_donations()
+: <a class="el" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_homepage()
+: <a class="el" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_help_wiki()
+: <a class="el" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_tools_export()
+: <a class="el" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main.h</a>
+</li>
+<li>remmina_main_on_action_tools_import()
+: <a class="el" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main.h</a>
+</li>
+<li>remmina_main_on_date_column_sort_clicked()
+: <a class="el" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main.c</a>
+</li>
+<li>remmina_main_on_delete_event()
+: <a class="el" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main.c</a>
+</li>
+<li>remmina_main_on_drag_data_received()
+: <a class="el" href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main.c</a>
+</li>
+<li>remmina_main_on_search_toggle()
+: <a class="el" href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9">remmina_main.c</a>
+</li>
+<li>remmina_main_on_show()
+: <a class="el" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main.c</a>
+</li>
+<li>remmina_main_on_view_toggle()
+: <a class="el" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main.c</a>
+</li>
+<li>remmina_main_on_window_state_event()
+: <a class="el" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_enter()
+: <a class="el" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_on_changed()
+: <a class="el" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main.c</a>
+</li>
+<li>remmina_main_quick_search_on_icon_press()
+: <a class="el" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main.c</a>
+</li>
+<li>remmina_main_quickconnect()
+: <a class="el" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main.c</a>
+</li>
+<li>remmina_main_quickconnect_on_click()
+: <a class="el" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main.c</a>
+</li>
+<li>remmina_main_rmodestroy()
+: <a class="el" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main.c</a>
+</li>
+<li>remmina_main_save_before_destroy()
+: <a class="el" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main.h</a>
+</li>
+<li>remmina_main_save_expanded_group()
+: <a class="el" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main.c</a>
+</li>
+<li>remmina_main_save_expanded_group_func()
+: <a class="el" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main.c</a>
+</li>
+<li>remmina_main_save_size()
+: <a class="el" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main.c</a>
+</li>
+<li>remmina_main_select_file()
+: <a class="el" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main.c</a>
+</li>
+<li>remmina_main_selection_func()
+: <a class="el" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main.c</a>
+</li>
+<li>remmina_main_show_snap_welcome()
+: <a class="el" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main.c</a>
+</li>
+<li>remmina_main_show_warning_dialog()
+: <a class="el" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main.h</a>
+</li>
+<li>remmina_main_update_file_datetime()
+: <a class="el" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main.c</a>
+, <a class="el" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main.h</a>
+</li>
+<li>remmina_marshal_BOOLEAN__INT()
+: <a class="el" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshals.c</a>
+, <a class="el" href="remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384">remmina_marshals.h</a>
+</li>
+<li>remmina_marshal_BOOLEAN__INT_STRING()
+: <a class="el" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshals.c</a>
+, <a class="el" href="remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761">remmina_marshals.h</a>
+</li>
+<li>remmina_masterthread_exec_and_wait()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_masterthread_exec_callback()
+: <a class="el" href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec.c</a>
+</li>
+<li>remmina_masterthread_exec_cleanup_handler()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec.c</a>
+</li>
+<li>remmina_masterthread_exec_is_main_thread()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_masterthread_exec_save_main_thread_id()
+: <a class="el" href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec.c</a>
+, <a class="el" href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850">remmina_masterthread_exec.h</a>
+</li>
+<li>remmina_message_panel_button_clicked_callback()
+: <a class="el" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel.c</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CACERTFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CACRLFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_class_init()
+: <a class="el" href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9">remmina_message_panel.c</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CLIENTCERTFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_CLIENTKEYFILE
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_DOMAIN
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_get_filename()
+: <a class="el" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_get_string()
+: <a class="el" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_get_switch_state()
+: <a class="el" href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_filename()
+: <a class="el" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_string()
+: <a class="el" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_field_set_switch()
+: <a class="el" href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_DOMAIN
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_USERNAME
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">types.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">types.h</a>
+</li>
+<li>remmina_message_panel_focus_auth_entry()
+: <a class="el" href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_init()
+: <a class="el" href="remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c">remmina_message_panel.c</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_MAXWIDGETID
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_new()
+: <a class="el" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_PASSWORD
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_response()
+: <a class="el" href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_SAVEPASSWORD
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_auth()
+: <a class="el" href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_auth_x509()
+: <a class="el" href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_message()
+: <a class="el" href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_progress()
+: <a class="el" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel.h</a>
+</li>
+<li>remmina_message_panel_setup_question()
+: <a class="el" href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel.c</a>
+, <a class="el" href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel.h</a>
+</li>
+<li>REMMINA_MESSAGE_PANEL_USERNAME
+: <a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">remmina_message_panel.h</a>
+</li>
+<li>remmina_mpchange_checkbox_toggle()
+: <a class="el" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_dochange()
+: <a class="el" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_dochange_clicked()
+: <a class="el" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_fieldcompare()
+: <a class="el" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_file_list_callback()
+: <a class="el" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_schedule()
+: <a class="el" href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange.c</a>
+, <a class="el" href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed">remmina_mpchange.h</a>
+</li>
+<li>remmina_mpchange_searchfield_changed()
+: <a class="el" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_searchfield_changed_to()
+: <a class="el" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange.c</a>
+</li>
+<li>remmina_mpchange_stopsearch()
+: <a class="el" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange.c</a>
+</li>
+<li>REMMINA_NX_EVENT_ATTACH
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_CANCEL
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_RESTORE
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_START
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">nx_plugin.h</a>
+</li>
+<li>REMMINA_NX_EVENT_TERMINATE
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">nx_plugin.h</a>
+</li>
+<li>remmina_nx_init_mutex
+: <a class="el" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">nx_plugin.c</a>
+</li>
+<li>remmina_nx_session_add_common_parameters()
+: <a class="el" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">nx_session.c</a>
+</li>
+<li>remmina_nx_session_add_parameter()
+: <a class="el" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347">nx_session.h</a>
+</li>
+<li>remmina_nx_session_allow_start()
+: <a class="el" href="nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef">nx_session.h</a>
+</li>
+<li>remmina_nx_session_attach()
+: <a class="el" href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d">nx_session.h</a>
+</li>
+<li>remmina_nx_session_bye()
+: <a class="el" href="nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea">nx_session.h</a>
+</li>
+<li>remmina_nx_session_clear_error()
+: <a class="el" href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_DISPLAY
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_ID
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_NAME
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_STATUS
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">nx_session.h</a>
+</li>
+<li>REMMINA_NX_SESSION_COLUMN_TYPE
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">nx_session.h</a>
+</li>
+<li>remmina_nx_session_expect_status()
+: <a class="el" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">nx_session.c</a>
+</li>
+<li>remmina_nx_session_expect_status2()
+: <a class="el" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">nx_session.c</a>
+</li>
+<li>remmina_nx_session_free()
+: <a class="el" href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3">nx_session.h</a>
+</li>
+<li>remmina_nx_session_get_error()
+: <a class="el" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e">nx_session.h</a>
+</li>
+<li>remmina_nx_session_get_line()
+: <a class="el" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">nx_session.c</a>
+</li>
+<li>remmina_nx_session_get_proxy_option()
+: <a class="el" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">nx_session.c</a>
+</li>
+<li>remmina_nx_session_get_response()
+: <a class="el" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">nx_session.c</a>
+</li>
+<li>remmina_nx_session_has_error()
+: <a class="el" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9">nx_session.h</a>
+</li>
+<li>remmina_nx_session_invoke_proxy()
+: <a class="el" href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_first()
+: <a class="el" href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_get()
+: <a class="el" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_next()
+: <a class="el" href="nx__session_8c.html#a7d021133105bd538af31817eff263324">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a7d021133105bd538af31817eff263324">nx_session.h</a>
+</li>
+<li>remmina_nx_session_iter_set()
+: <a class="el" href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">nx_session.h</a>
+</li>
+<li>remmina_nx_session_list()
+: <a class="el" href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76">nx_session.h</a>
+</li>
+<li>remmina_nx_session_login()
+: <a class="el" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_manager_main()
+: <a class="el" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_on_response()
+: <a class="el" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_on_row_activated()
+: <a class="el" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_selection_func()
+: <a class="el" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_send_signal()
+: <a class="el" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_set_sensitive()
+: <a class="el" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">nx_session_manager.c</a>
+</li>
+<li>remmina_nx_session_manager_start()
+: <a class="el" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">nx_session_manager.c</a>
+, <a class="el" href="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5">nx_session_manager.h</a>
+</li>
+<li>REMMINA_NX_SESSION_N_COLUMNS
+: <a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">nx_session.h</a>
+</li>
+<li>remmina_nx_session_new()
+: <a class="el" href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c">nx_session.h</a>
+</li>
+<li>remmina_nx_session_open()
+: <a class="el" href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b">nx_session.h</a>
+</li>
+<li>remmina_nx_session_parse_line()
+: <a class="el" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">nx_session.c</a>
+</li>
+<li>remmina_nx_session_parse_response()
+: <a class="el" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">nx_session.c</a>
+</li>
+<li>remmina_nx_session_parse_session_list_line()
+: <a class="el" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">nx_session.c</a>
+</li>
+<li>remmina_nx_session_restore()
+: <a class="el" href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33">nx_session.h</a>
+</li>
+<li>remmina_nx_session_send_command()
+: <a class="el" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">nx_session.c</a>
+</li>
+<li>remmina_nx_session_send_session_command()
+: <a class="el" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_application_error()
+: <a class="el" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_encryption()
+: <a class="el" href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_error()
+: <a class="el" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">nx_session.c</a>
+</li>
+<li>remmina_nx_session_set_localport()
+: <a class="el" href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_log_callback()
+: <a class="el" href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7">nx_session.h</a>
+</li>
+<li>remmina_nx_session_set_tree_view()
+: <a class="el" href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41">nx_session.h</a>
+</li>
+<li>remmina_nx_session_start()
+: <a class="el" href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6">nx_session.h</a>
+</li>
+<li>remmina_nx_session_terminate()
+: <a class="el" href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c">nx_session.h</a>
+</li>
+<li>remmina_nx_session_tunnel_main_thread()
+: <a class="el" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">nx_session.c</a>
+</li>
+<li>remmina_nx_session_tunnel_open()
+: <a class="el" href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">nx_session.c</a>
+, <a class="el" href="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d">nx_session.h</a>
+</li>
+<li>remmina_nx_window_id_array
+: <a class="el" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">nx_plugin.c</a>
+</li>
+<li>remmina_on_command_line()
+: <a class="el" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina.c</a>
+</li>
+<li>remmina_on_local_cmdline()
+: <a class="el" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina.c</a>
+</li>
+<li>remmina_on_startup()
+: <a class="el" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina.c</a>
+</li>
+<li>remmina_options
+: <a class="el" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina.c</a>
+</li>
+<li>remmina_plugin
+: <a class="el" href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">exec_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">st_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">www_plugin.c</a>
+</li>
+<li>remmina_plugin_entry()
+: <a class="el" href="exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">exec_plugin.c</a>
+, <a class="el" href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208">kwallet_plugin_main.c</a>
+, <a class="el" href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">nx_plugin.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">rdp_plugin.c</a>
+, <a class="el" href="glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">glibsecret_plugin.c</a>
+, <a class="el" href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">spice_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">st_plugin.c</a>
+, <a class="el" href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">telepathy_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208">plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">vnc_plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">www_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_basic_settings
+: <a class="el" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_close()
+: <a class="el" href="exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_init()
+: <a class="el" href="exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_run()
+: <a class="el" href="exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret
+: <a class="el" href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_delete_password()
+: <a class="el" href="glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_get_password()
+: <a class="el" href="glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_init()
+: <a class="el" href="glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_is_service_available()
+: <a class="el" href="glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_store_password()
+: <a class="el" href="glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret_unlock_secret_service()
+: <a class="el" href="glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_kwallet
+: <a class="el" href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_delete_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_get_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_init()
+: <a class="el" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_is_service_available()
+: <a class="el" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_kwallet_store_password()
+: <a class="el" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_manager_compare_func()
+: <a class="el" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_for_each_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_for_each_plugin_stdout()
+: <a class="el" href="remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_canonical_setting_name()
+: <a class="el" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_export_file_handler()
+: <a class="el" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_import_file_handler()
+: <a class="el" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_get_secret_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_init()
+: <a class="el" href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_is_encrypted_setting()
+: <a class="el" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_load_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_query_feature_by_type()
+: <a class="el" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_register_plugin()
+: <a class="el" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_service
+: <a class="el" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_show()
+: <a class="el" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_manager_show_for_each()
+: <a class="el" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_show_for_each_stdout()
+: <a class="el" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_manager_show_stdout()
+: <a class="el" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_nx
+: <a class="el" href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_advanced_settings
+: <a class="el" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_basic_settings
+: <a class="el" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_call_feature()
+: <a class="el" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_close_connection()
+: <a class="el" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_dummy_handler()
+: <a class="el" href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_features
+: <a class="el" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_init()
+: <a class="el" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_main()
+: <a class="el" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_main_thread()
+: <a class="el" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_monitor_create_notify()
+: <a class="el" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_plug_added()
+: <a class="el" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_plug_removed()
+: <a class="el" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_on_proxy_exit()
+: <a class="el" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_open_connection()
+: <a class="el" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_query_feature()
+: <a class="el" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_remove_window_id()
+: <a class="el" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_send_ctrlaltdel()
+: <a class="el" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_service
+: <a class="el" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">nx_plugin.c</a>
+, <a class="el" href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf">nx_plugin.h</a>
+</li>
+<li>remmina_plugin_nx_ssh_auth_callback()
+: <a class="el" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_start_create_notify()
+: <a class="el" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_start_session()
+: <a class="el" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_try_window_id()
+: <a class="el" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_wait_signal()
+: <a class="el" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_rdp_version
+: <a class="el" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">rdp_plugin.c</a>
+</li>
+<li>remmina_plugin_service
+: <a class="el" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_sftp_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_ssh_plugin.c</a>
+, <a class="el" href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">exec_plugin.c</a>
+, <a class="el" href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">kwallet_plugin_main.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">rdp_plugin.c</a>
+, <a class="el" href="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7">rdp_plugin.h</a>
+, <a class="el" href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">glibsecret_plugin.c</a>
+, <a class="el" href="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">spice_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">st_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">vnc_plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">www_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp
+: <a class="el" href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_call_feature()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_client_on_realize()
+: <a class="el" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_close_connection()
+: <a class="el" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_features
+: <a class="el" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_init()
+: <a class="el" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_main_thread()
+: <a class="el" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_open_connection()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_query_feature()
+: <a class="el" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_start_direct_tunnel()
+: <a class="el" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_sftp_plugin.c</a>
+, <a class="el" href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917">remmina_sftp_plugin.h</a>
+</li>
+<li>remmina_plugin_spice
+: <a class="el" href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_advanced_settings
+: <a class="el" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_ask_auth()
+: <a class="el" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_basic_settings
+: <a class="el" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_call_feature()
+: <a class="el" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_channel_new_cb()
+: <a class="el" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_close_connection()
+: <a class="el" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_display_ready_cb()
+: <a class="el" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_SCALE
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">spice_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR
+: <a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_features
+: <a class="el" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_cancel_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_dialog_response_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_finished_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_new_cb()
+: <a class="el" href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">spice_plugin.c</a>
+, <a class="el" href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_file_transfer_progress_cb()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_init()
+: <a class="el" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_keystroke()
+: <a class="el" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_main_channel_event_cb()
+: <a class="el" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_open_connection()
+: <a class="el" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_query_feature()
+: <a class="el" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_select_usb_devices()
+: <a class="el" href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">spice_plugin.c</a>
+, <a class="el" href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b">spice_plugin_usb.c</a>
+</li>
+<li>remmina_plugin_spice_send_ctrlaltdel()
+: <a class="el" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_update_scale()
+: <a class="el" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_usb_connect_failed_cb()
+: <a class="el" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">spice_plugin_usb.c</a>
+</li>
+<li>remmina_plugin_spice_xfer_widgets_free()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_spice_xfer_widgets_new()
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">spice_plugin_file_transfer.c</a>
+</li>
+<li>remmina_plugin_ssh
+: <a class="el" href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_call_feature()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_close_connection()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_features
+: <a class="el" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_init()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_main_thread()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_on_focus_in()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_on_size_allocate()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_open_connection()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_popup_ui()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_query_feature()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_set_vte_pref()
+: <a class="el" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_vte_copy_clipboard()
+: <a class="el" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_paste_clipboard()
+: <a class="el" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_save_session()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_vte_select_all()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_ssh_vte_terminal_set_encoding_and_pty()
+: <a class="el" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_plugin_st_advanced_settings
+: <a class="el" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_basic_settings
+: <a class="el" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_close_connection()
+: <a class="el" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_init()
+: <a class="el" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_on_plug_added()
+: <a class="el" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_on_plug_removed()
+: <a class="el" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_open_connection()
+: <a class="el" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">st_plugin.c</a>
+</li>
+<li>remmina_plugin_table
+: <a class="el" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_telepathy
+: <a class="el" href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_telepathy_entry()
+: <a class="el" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_telepathy_service
+: <a class="el" href="telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_channel_handler.c</a>
+, <a class="el" href="telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_handler.c</a>
+, <a class="el" href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_tool_basic_settings
+: <a class="el" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">plugin.c</a>
+</li>
+<li>remmina_plugin_tool_close_connection()
+: <a class="el" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">plugin.c</a>
+</li>
+<li>remmina_plugin_tool_init()
+: <a class="el" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">plugin.c</a>
+</li>
+<li>remmina_plugin_tool_open_connection()
+: <a class="el" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_ENTRY
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_FILE
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">plugin.h</a>
+</li>
+<li>remmina_plugin_type_name
+: <a class="el" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_manager.c</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_PREF
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_PROTOCOL
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_SECRET
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_TYPE_TOOL
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">plugin.h</a>
+</li>
+<li>remmina_plugin_vnc
+: <a class="el" href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_advanced_settings
+: <a class="el" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_basic_settings
+: <a class="el" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_bits()
+: <a class="el" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_call_feature()
+: <a class="el" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_chat_on_destroy()
+: <a class="el" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_chat_on_send()
+: <a class="el" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_chat()
+: <a class="el" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_connection()
+: <a class="el" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_close_connection_timeout()
+: <a class="el" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">vnc_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_CUTTEXT
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">vnc_plugin.h</a>
+</li>
+<li>remmina_plugin_vnc_event_free()
+: <a class="el" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_free_all()
+: <a class="el" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">vnc_plugin.c</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_KEY
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">vnc_plugin.h</a>
+</li>
+<li>REMMINA_PLUGIN_VNC_EVENT_POINTER
+: <a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">vnc_plugin.h</a>
+</li>
+<li>remmina_plugin_vnc_event_push()
+: <a class="el" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_event_queue_pop_head()
+: <a class="el" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_features
+: <a class="el" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_incoming_connection()
+: <a class="el" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_init()
+: <a class="el" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_keystroke()
+: <a class="el" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main()
+: <a class="el" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main_loop()
+: <a class="el" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_main_thread()
+: <a class="el" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_no_encrypt_auth_types
+: <a class="el" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_button()
+: <a class="el" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_cuttext_request()
+: <a class="el" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_draw()
+: <a class="el" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_key()
+: <a class="el" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_motion()
+: <a class="el" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_realize()
+: <a class="el" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_on_scroll()
+: <a class="el" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_open_chat()
+: <a class="el" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_open_connection()
+: <a class="el" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_process_vnc_event()
+: <a class="el" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_query_feature()
+: <a class="el" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_draw_area()
+: <a class="el" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queue_draw_area_real()
+: <a class="el" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_queuecursor()
+: <a class="el" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_release_key()
+: <a class="el" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_allocfb()
+: <a class="el" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_bell()
+: <a class="el" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_chat()
+: <a class="el" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_credential()
+: <a class="el" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_cursor_shape()
+: <a class="el" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_cuttext()
+: <a class="el" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_fill_buffer()
+: <a class="el" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_password()
+: <a class="el" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_rfb_updatefb()
+: <a class="el" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_scale_area()
+: <a class="el" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_scale_coordinates()
+: <a class="el" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_send_ctrlaltdel()
+: <a class="el" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_setcursor()
+: <a class="el" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_colordepth()
+: <a class="el" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_quality()
+: <a class="el" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_update_scale()
+: <a class="el" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">vnc_plugin.c</a>
+, <a class="el" href="vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9">vnc_plugin.h</a>
+</li>
+<li>remmina_plugin_vnci
+: <a class="el" href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnci_basic_settings
+: <a class="el" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_www_advanced_settings
+: <a class="el" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_basic_settings
+: <a class="el" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_close_connection()
+: <a class="el" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_decide_nav()
+: <a class="el" href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_decide_newwin()
+: <a class="el" href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_decide_policy_cb()
+: <a class="el" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_decide_resource()
+: <a class="el" href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_download_started()
+: <a class="el" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_form_auth()
+: <a class="el" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_get_snapshot()
+: <a class="el" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_init()
+: <a class="el" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_load_failed_tls_cb()
+: <a class="el" href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_notify_download()
+: <a class="el" href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d">www_plugin.h</a>
+, <a class="el" href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_on_auth()
+: <a class="el" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_on_create()
+: <a class="el" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_open_connection()
+: <a class="el" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_response_received()
+: <a class="el" href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">www_plugin.c</a>
+, <a class="el" href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b">www_plugin.h</a>
+</li>
+<li>remmina_plugin_www_save_snapshot()
+: <a class="el" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">www_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp
+: <a class="el" href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_basic_settings
+: <a class="el" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_call_feature()
+: <a class="el" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_close_connection()
+: <a class="el" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_features
+: <a class="el" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_init()
+: <a class="el" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_main()
+: <a class="el" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_main_thread()
+: <a class="el" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_on_plug_added()
+: <a class="el" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_on_plug_removed()
+: <a class="el" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_open_connection()
+: <a class="el" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_query_feature()
+: <a class="el" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_send_ctrlaltdel()
+: <a class="el" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_start_xephyr()
+: <a class="el" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_tunnel_init_callback()
+: <a class="el" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">xdmcp_plugin.c</a>
+</li>
+<li>remmina_pref
+: <a class="el" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">rcw.c</a>
+, <a class="el" href="remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref.h</a>
+</li>
+<li>remmina_pref_add_recent()
+: <a class="el" href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref.h</a>
+</li>
+<li>REMMINA_PREF_APPEARANCE
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb">remmina_pref_dialog.h</a>
+</li>
+<li>REMMINA_PREF_APPLET_TAB
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_pref_clear_recent()
+: <a class="el" href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref.h</a>
+</li>
+<li>remmina_pref_dialog
+: <a class="el" href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_add_pref_plugin()
+: <a class="el" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_clear_recent()
+: <a class="el" href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_disable_tray_icon_on_toggled()
+: <a class="el" href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_get_dialog()
+: <a class="el" href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog.c</a>
+, <a class="el" href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_pref_dialog_init()
+: <a class="el" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_new()
+: <a class="el" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog.c</a>
+, <a class="el" href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_pref_dialog_on_close_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_on_key_chooser()
+: <a class="el" href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_set_button_label()
+: <a class="el" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_dialog_vte_font_on_toggled()
+: <a class="el" href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_file
+: <a class="el" href="remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref.h</a>
+, <a class="el" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">rcw.c</a>
+</li>
+<li>remmina_pref_file_do_copy()
+: <a class="el" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref.c</a>
+</li>
+<li>remmina_pref_file_load_colors()
+: <a class="el" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref.h</a>
+</li>
+<li>remmina_pref_gen_secret()
+: <a class="el" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_boolean()
+: <a class="el" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_keyval_from_str()
+: <a class="el" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref.c</a>
+</li>
+<li>remmina_pref_get_recent()
+: <a class="el" href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_scale_quality()
+: <a class="el" href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_loglevel()
+: <a class="el" href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_parseconfig()
+: <a class="el" href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepcnt()
+: <a class="el" href="remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepidle()
+: <a class="el" href="remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_keepintvl()
+: <a class="el" href="remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_ssh_tcp_usrtimeout()
+: <a class="el" href="remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_sshtunnel_port()
+: <a class="el" href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99">remmina_pref.h</a>
+</li>
+<li>remmina_pref_get_value()
+: <a class="el" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref.h</a>
+</li>
+<li>remmina_pref_init()
+: <a class="el" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref.h</a>
+</li>
+<li>remmina_pref_init_keymap()
+: <a class="el" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref.c</a>
+</li>
+<li>remmina_pref_is_rw()
+: <a class="el" href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref.c</a>
+</li>
+<li>remmina_pref_keymap_get_keyval()
+: <a class="el" href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8">remmina_pref.h</a>
+</li>
+<li>remmina_pref_keymap_groups()
+: <a class="el" href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref.c</a>
+</li>
+<li>remmina_pref_on_button_keystrokes_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_button_resolutions_clicked()
+: <a class="el" href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_color_scheme_selected()
+: <a class="el" href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_on_dialog_destroy()
+: <a class="el" href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d">remmina_pref_dialog.c</a>
+</li>
+<li>REMMINA_PREF_OPTIONS_TAB
+: <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_pref_save()
+: <a class="el" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref.h</a>
+</li>
+<li>remmina_pref_set_value()
+: <a class="el" href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref.c</a>
+, <a class="el" href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref.h</a>
+</li>
+<li>remmina_prefdiag_unlock_repwd_on_changed()
+: <a class="el" href="remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_pref_dialog.c</a>
+, <a class="el" href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_pref_dialog.h</a>
+</li>
+<li>remmina_profiles_get_data()
+: <a class="el" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_stats.c</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_END
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_PREF
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_SCALE
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_TOOL
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_CHECK
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_COMBO
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_END
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_FILE
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_FOLDER
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_SELECT
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_SERVER
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SETTING_TYPE_TEXT
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_NONE
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_SFTP
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_SSH
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_SSH_SETTING_TUNNEL
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">types.h</a>
+</li>
+<li>remmina_protocol_widget_call_feature_by_ref()
+: <a class="el" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_call_feature_by_type()
+: <a class="el" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_chat_close()
+: <a class="el" href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_chat_on_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_chat_open()
+: <a class="el" href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_chat_receive()
+: <a class="el" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_class_init()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_close_all_tunnels()
+: <a class="el" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_close_connection()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_desktop_resize()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_dialog()
+: <a class="el" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_dialog_mt_setup()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_emit_signal()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_cacert()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_cacrl()
+: <a class="el" href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_clientcert()
+: <a class="el" href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_clientkey()
+: <a class="el" href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_current_scale_mode()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_domain()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_error_message()
+: <a class="el" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_expand()
+: <a class="el" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_features()
+: <a class="el" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_file()
+: <a class="el" href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_height()
+: <a class="el" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_password()
+: <a class="el" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_profile_remote_height()
+: <a class="el" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_profile_remote_width()
+: <a class="el" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_savepassword()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_type()
+: <a class="el" href="remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_username()
+: <a class="el" href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_get_width()
+: <a class="el" href="remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_grab_focus()
+: <a class="el" href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_has_error()
+: <a class="el" href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_init()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_init_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_is_closed()
+: <a class="el" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_mpdestroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_mpprogress()
+: <a class="el" href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_new()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_on_key_press()
+: <a class="el" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_on_key_release()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_open_connection()
+: <a class="el" href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_open_connection_real()
+: <a class="el" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_auth()
+: <a class="el" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_authuserpwd_ssh_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_authx509()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_changed_certificate()
+: <a class="el" href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_destroy()
+: <a class="el" href="remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_hide()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_new_certificate()
+: <a class="el" href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_question_yesno()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_show()
+: <a class="el" href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_panel_show_listen()
+: <a class="el" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_panel_show_retry()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_plugin_receives_keystrokes()
+: <a class="el" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_plugin_screenshot()
+: <a class="el" href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_query_feature_by_ref()
+: <a class="el" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_query_feature_by_type()
+: <a class="el" href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_register_hostkey()
+: <a class="el" href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_save_cred()
+: <a class="el" href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget.c</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">types.h</a>
+</li>
+<li>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">types.h</a>
+</li>
+<li>remmina_protocol_widget_send_keys_signals()
+: <a class="el" href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_send_keystrokes()
+: <a class="el" href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_current_scale_mode()
+: <a class="el" href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_display()
+: <a class="el" href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_error()
+: <a class="el" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_expand()
+: <a class="el" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_height()
+: <a class="el" href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_hostkey_func()
+: <a class="el" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_set_width()
+: <a class="el" href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_setup()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_signal_connection_closed()
+: <a class="el" href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_signal_connection_opened()
+: <a class="el" href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_signals
+: <a class="el" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_ssh_exec()
+: <a class="el" href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_start_direct_tunnel()
+: <a class="el" href="remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_start_reverse_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_start_xport_tunnel()
+: <a class="el" href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_tunnel_destroy()
+: <a class="el" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_unlock_dynres()
+: <a class="el" href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_update_align()
+: <a class="el" href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget.c</a>
+, <a class="el" href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget.h</a>
+</li>
+<li>remmina_protocol_widget_update_alignment()
+: <a class="el" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">rcw.c</a>
+</li>
+<li>remmina_protocol_widget_update_remote_resolution()
+: <a class="el" href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget.h</a>
+, <a class="el" href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_connect_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_disconnect_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_protocol_widget_xport_tunnel_init_callback()
+: <a class="el" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_public_combine_path()
+: <a class="el" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0">remmina_public.h</a>
+</li>
+<li>remmina_public_combo_get_active_text()
+: <a class="el" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo()
+: <a class="el" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_entry()
+: <a class="el" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_map()
+: <a class="el" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_mapint()
+: <a class="el" href="remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public.h</a>
+</li>
+<li>remmina_public_create_combo_text_d()
+: <a class="el" href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde">remmina_public.h</a>
+</li>
+<li>remmina_public_create_group()
+: <a class="el" href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public.h</a>
+</li>
+<li>remmina_public_get_current_workspace()
+: <a class="el" href="remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public.h</a>
+</li>
+<li>remmina_public_get_keycode_for_keyval()
+: <a class="el" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public.h</a>
+</li>
+<li>remmina_public_get_modifier_for_keycode()
+: <a class="el" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a">remmina_public.h</a>
+</li>
+<li>remmina_public_get_server_port()
+: <a class="el" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149">remmina_public.h</a>
+</li>
+<li>remmina_public_get_window_workspace()
+: <a class="el" href="remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public.h</a>
+</li>
+<li>remmina_public_get_xauth_cookie()
+: <a class="el" href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public.h</a>
+</li>
+<li>remmina_public_gtk_builder_new_from_file()
+: <a class="el" href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public.c</a>
+</li>
+<li>remmina_public_gtk_widget_reparent()
+: <a class="el" href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912">remmina_public.c</a>
+</li>
+<li>remmina_public_load_combo_text_d()
+: <a class="el" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public.h</a>
+</li>
+<li>remmina_public_open_xdisplay()
+: <a class="el" href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767">remmina_public.h</a>
+</li>
+<li>remmina_public_popup_position()
+: <a class="el" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c">remmina_public.h</a>
+</li>
+<li>remmina_public_resolution_validation_func()
+: <a class="el" href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public.c</a>
+</li>
+<li>remmina_public_send_notification()
+: <a class="el" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public.h</a>
+</li>
+<li>remmina_public_split_resolution_string()
+: <a class="el" href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public.c</a>
+</li>
+<li>remmina_public_str_replace()
+: <a class="el" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public.c</a>
+, <a class="el" href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640">remmina_public.h</a>
+</li>
+<li>remmina_public_str_replace_in_place()
+: <a class="el" href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public.h</a>
+, <a class="el" href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public.c</a>
+</li>
+<li>remmina_rdp
+: <a class="el" href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_advanced_settings
+: <a class="el" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_authenticate()
+: <a class="el" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_basic_settings
+: <a class="el" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_call_feature()
+: <a class="el" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_channel_cliprdr_process()
+: <a class="el" href="rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_clipboard_abort_transfer()
+: <a class="el" href="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_clipboard_free()
+: <a class="el" href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_clipboard_init()
+: <a class="el" href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_detach_owner()
+: <a class="el" href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_cliprdr_empty_clipboard()
+: <a class="el" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_client_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_cliprdr_get_clipboard_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_format_from_gdkatom()
+: <a class="el" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_get_target_types()
+: <a class="el" href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_init()
+: <a class="el" href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">rdp_cliprdr.c</a>
+, <a class="el" href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d">rdp_cliprdr.h</a>
+</li>
+<li>remmina_rdp_cliprdr_monitor_ready()
+: <a class="el" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_mt_get_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_request_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_send_client_capabilities()
+: <a class="el" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_send_client_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_capabilities()
+: <a class="el" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_file_contents_request()
+: <a class="el" href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_file_contents_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_data_request()
+: <a class="el" href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_data_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_list()
+: <a class="el" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_server_format_list_response()
+: <a class="el" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_set_clipboard_content()
+: <a class="el" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_cliprdr_set_clipboard_data()
+: <a class="el" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_close_connection()
+: <a class="el" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_event_connected()
+: <a class="el" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_create_cairo_surface()
+: <a class="el" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_create_cursor()
+: <a class="el" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_cursor()
+: <a class="el" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_delayed_monitor_layout()
+: <a class="el" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">rdp_event.c</a>
+</li>
+<li>REMMINA_RDP_EVENT_DISCONNECT
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_event_event_push()
+: <a class="el" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">rdp_event.c</a>
+, <a class="el" href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_event_free_cursor()
+: <a class="el" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_free_event()
+: <a class="el" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_init()
+: <a class="el" href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_init_keymap()
+: <a class="el" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_button()
+: <a class="el" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_clipboard()
+: <a class="el" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_configure()
+: <a class="el" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_draw()
+: <a class="el" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_focus_in()
+: <a class="el" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_key()
+: <a class="el" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_motion()
+: <a class="el" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_on_scroll()
+: <a class="el" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_clipboard()
+: <a class="el" href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173">rdp_cliprdr.h</a>
+, <a class="el" href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">rdp_cliprdr.c</a>
+</li>
+<li>remmina_rdp_event_process_event()
+: <a class="el" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_ui_event()
+: <a class="el" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_process_ui_queue()
+: <a class="el" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_queue_ui()
+: <a class="el" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_queue_ui_async()
+: <a class="el" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_queue_ui_sync_retint()
+: <a class="el" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_queue_ui_sync_retptr()
+: <a class="el" href="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_reconnect_progress()
+: <a class="el" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_release_all_keys()
+: <a class="el" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_release_key()
+: <a class="el" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_reverse_translate_pos_reverse()
+: <a class="el" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_scale_area()
+: <a class="el" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_send_delayed_monitor_layout()
+: <a class="el" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_set_pointer_position()
+: <a class="el" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_translate_pos()
+: <a class="el" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">rdp_event.c</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_MOUSE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SCANCODE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_event_unfocus()
+: <a class="el" href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_uninit()
+: <a class="el" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_update_rect()
+: <a class="el" href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9">rdp_event.h</a>
+, <a class="el" href="rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_update_regions()
+: <a class="el" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">rdp_event.c</a>
+</li>
+<li>remmina_rdp_event_update_scale()
+: <a class="el" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">rdp_event.c</a>
+, <a class="el" href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497">rdp_event.h</a>
+</li>
+<li>remmina_rdp_event_update_scale_factor()
+: <a class="el" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">rdp_event.c</a>
+</li>
+<li>remmina_rdp_features
+: <a class="el" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_file_export()
+: <a class="el" href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b">rdp_file.h</a>
+, <a class="el" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_export_channel()
+: <a class="el" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_export_test()
+: <a class="el" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">rdp_file.c</a>
+, <a class="el" href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310">rdp_file.h</a>
+</li>
+<li>remmina_rdp_file_import()
+: <a class="el" href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c">rdp_file.h</a>
+, <a class="el" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import_channel()
+: <a class="el" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import_field()
+: <a class="el" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">rdp_file.c</a>
+</li>
+<li>remmina_rdp_file_import_test()
+: <a class="el" href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b">rdp_file.h</a>
+, <a class="el" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">rdp_file.c</a>
+</li>
+<li>remmina_rdp_find_prdriver()
+: <a class="el" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_get_screenshot()
+: <a class="el" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_gw_authenticate()
+: <a class="el" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_init()
+: <a class="el" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_keystroke()
+: <a class="el" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_load_static_channel_addin()
+: <a class="el" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main()
+: <a class="el" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main_loop()
+: <a class="el" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_main_thread()
+: <a class="el" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_OnChannelConnectedEventHandler()
+: <a class="el" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">rdp_channels.c</a>
+, <a class="el" href="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a">rdp_channels.h</a>
+</li>
+<li>remmina_rdp_OnChannelDisconnectedEventHandler()
+: <a class="el" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">rdp_channels.c</a>
+, <a class="el" href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d">rdp_channels.h</a>
+</li>
+<li>remmina_rdp_open_connection()
+: <a class="el" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_plugin_default_drive_name
+: <a class="el" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">rdp_plugin.c</a>
+</li>
+<li>REMMINA_RDP_POINTER_DEFAULT
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_FREE
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_NEW
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_NULL
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_SET
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_POINTER_SETPOS
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_post_connect()
+: <a class="el" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_post_disconnect()
+: <a class="el" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_pre_connect()
+: <a class="el" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_query_feature()
+: <a class="el" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_send_ctrlaltdel()
+: <a class="el" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_set_printers()
+: <a class="el" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_settings_appscale_on_changed()
+: <a class="el" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_get_keyboard_layout()
+: <a class="el" href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">rdp_settings.c</a>
+, <a class="el" href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c">rdp_settings.h</a>
+</li>
+<li>remmina_rdp_settings_get_orientation_scale_prefs()
+: <a class="el" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">rdp_settings.c</a>
+, <a class="el" href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c">rdp_settings.h</a>
+</li>
+<li>remmina_rdp_settings_grid_destroy()
+: <a class="el" href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_get_type()
+: <a class="el" href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_init()
+: <a class="el" href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_desktoporientation_combo()
+: <a class="el" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_devicescalefactor_combo()
+: <a class="el" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_layout()
+: <a class="el" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_grid_load_quality()
+: <a class="el" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_init()
+: <a class="el" href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87">rdp_settings.h</a>
+, <a class="el" href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_kbd_init()
+: <a class="el" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_new()
+: <a class="el" href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53">rdp_settings.h</a>
+, <a class="el" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_quality_on_changed()
+: <a class="el" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_quality_option_on_toggled()
+: <a class="el" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_settings_set_combo_active_item()
+: <a class="el" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">rdp_settings.c</a>
+</li>
+<li>remmina_rdp_tunnel_init()
+: <a class="el" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">rdp_plugin.c</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_FORMATLIST
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_GET_DATA
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CLIPBOARD_SET_DATA
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CONNECTED
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_CURSOR
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_ui_event_destroy_cairo_surface()
+: <a class="el" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">rdp_event.c</a>
+</li>
+<li>remmina_rdp_ui_event_update_scale()
+: <a class="el" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">rdp_event.c</a>
+</li>
+<li>REMMINA_RDP_UI_EVENT_UPDATE_SCALE
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_NOCODEC
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_RECONNECT_PROGRESS
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_RFX
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">rdp_plugin.h</a>
+</li>
+<li>REMMINA_RDP_UI_UPDATE_REGIONS
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">rdp_plugin.h</a>
+</li>
+<li>remmina_rdp_verify_certificate()
+: <a class="el" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_verify_changed_certificate()
+: <a class="el" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">rdp_plugin.c</a>
+</li>
+<li>remmina_rdpf
+: <a class="el" href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619">rdp_plugin.c</a>
+</li>
+<li>remmina_rdps
+: <a class="el" href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba">rdp_plugin.c</a>
+</li>
+<li>remmina_RSA_PubKey_v1
+: <a class="el" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_stats_sender.c</a>
+</li>
+<li>remmina_schedluer_remove()
+: <a class="el" href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b">remmina_scheduler.c</a>
+</li>
+<li>remmina_scheduler_periodic_check()
+: <a class="el" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler.c</a>
+</li>
+<li>remmina_scheduler_setup()
+: <a class="el" href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6">remmina_scheduler.h</a>
+, <a class="el" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler.c</a>
+</li>
+<li>remmina_scrolled_viewport_class_init()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_destroy()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_enter()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_get_preferred_height()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_get_type()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312">remmina_scrolled_viewport.h</a>
+</li>
+<li>remmina_scrolled_viewport_init()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_leave()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_motion_timeout()
+: <a class="el" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_new()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport.h</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_scrolled_viewport_remove_motion()
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport.h</a>
+, <a class="el" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport.c</a>
+</li>
+<li>remmina_secret_plugin
+: <a class="el" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_sftp_basic_settings
+: <a class="el" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_sftp_client_confirm_resume()
+: <a class="el" href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client.h</a>
+, <a class="el" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_destroy()
+: <a class="el" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_get_type()
+: <a class="el" href="remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d">remmina_sftp_client.h</a>
+</li>
+<li>remmina_sftp_client_init()
+: <a class="el" href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_new()
+: <a class="el" href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client.c</a>
+, <a class="el" href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d">remmina_sftp_client.h</a>
+</li>
+<li>remmina_sftp_client_on_canceltask()
+: <a class="el" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_deletefile()
+: <a class="el" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_newtask()
+: <a class="el" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_on_opendir()
+: <a class="el" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_open()
+: <a class="el" href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client.h</a>
+, <a class="el" href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_refresh()
+: <a class="el" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_sftp_session_closedir()
+: <a class="el" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_sftp_session_opendir()
+: <a class="el" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_download_file()
+: <a class="el" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_get_task()
+: <a class="el" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_main()
+: <a class="el" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_mkdir()
+: <a class="el" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_recursive_dir()
+: <a class="el" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_recursive_localdir()
+: <a class="el" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_set_error()
+: <a class="el" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_set_finish()
+: <a class="el" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_update_task()
+: <a class="el" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_client_thread_upload_file()
+: <a class="el" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client.c</a>
+</li>
+<li>remmina_sftp_free()
+: <a class="el" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_new_from_ssh()
+: <a class="el" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_open()
+: <a class="el" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_ssh.h</a>
+</li>
+<li>remmina_sftp_plugin_register()
+: <a class="el" href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4">remmina_sftp_plugin.h</a>
+, <a class="el" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_sha1_file()
+: <a class="el" href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_utils.c</a>
+</li>
+<li>remmina_sodium_init()
+: <a class="el" href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium.c</a>
+</li>
+<li>remmina_sodium_pwhash()
+: <a class="el" href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium.c</a>
+</li>
+<li>remmina_sodium_pwhash_str()
+: <a class="el" href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium.c</a>
+</li>
+<li>remmina_sodium_pwhash_str_verify()
+: <a class="el" href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium.h</a>
+, <a class="el" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium.c</a>
+</li>
+<li>remmina_ssh_advanced_settings
+: <a class="el" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_auth()
+: <a class="el" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_agent()
+: <a class="el" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh.c</a>
+</li>
+<li>REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_auth_auto_pubkey()
+: <a class="el" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh.c</a>
+</li>
+<li>REMMINA_SSH_AUTH_FATAL_ERROR
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_auth_gssapi()
+: <a class="el" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_gui()
+: <a class="el" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_auth_interactive()
+: <a class="el" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_password()
+: <a class="el" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_pubkey()
+: <a class="el" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_auth_result
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_SUCCESS
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_AUTH_USERCANCEL
+: <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_basic_settings
+: <a class="el" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_convert()
+: <a class="el" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_find_identity()
+: <a class="el" href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_free()
+: <a class="el" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_identity_path()
+: <a class="el" href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_init_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_init_session()
+: <a class="el" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_keystroke()
+: <a class="el" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_load_terminal_palettes()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_popup_menu()
+: <a class="el" href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin.h</a>
+, <a class="el" href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_plugin_register()
+: <a class="el" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9">remmina_ssh_plugin.h</a>
+</li>
+<li>remmina_ssh_set_application_error()
+: <a class="el" href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh.h</a>
+, <a class="el" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh.c</a>
+</li>
+<li>remmina_ssh_set_error()
+: <a class="el" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh.c</a>
+, <a class="el" href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_free()
+: <a class="el" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_new_from_ssh()
+: <a class="el" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_open()
+: <a class="el" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_shell_set_size()
+: <a class="el" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_cancel_accept()
+: <a class="el" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_free()
+: <a class="el" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_new_from_file()
+: <a class="el" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_open()
+: <a class="el" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_OPEN
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_REVERSE
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_reverse()
+: <a class="el" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_terminated()
+: <a class="el" href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_x11()
+: <a class="el" href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_X11
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">remmina_ssh.h</a>
+</li>
+<li>REMMINA_SSH_TUNNEL_XPORT
+: <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_tunnel_xport()
+: <a class="el" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh.h</a>
+</li>
+<li>remmina_ssh_unconvert()
+: <a class="el" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh.h</a>
+</li>
+<li>remmina_st_features
+: <a class="el" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">st_plugin.c</a>
+</li>
+<li>remmina_st_query_feature()
+: <a class="el" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">st_plugin.c</a>
+</li>
+<li>remmina_stat_sender_can_send()
+: <a class="el" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stats_sender.c</a>
+, <a class="el" href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff">remmina_stats_sender.h</a>
+</li>
+<li>remmina_stats_collector()
+: <a class="el" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_collector_done()
+: <a class="el" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_get_all()
+: <a class="el" href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae">remmina_stats.h</a>
+, <a class="el" href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_gtk_backend()
+: <a class="el" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_gtk_version()
+: <a class="el" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_indicator()
+: <a class="el" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_kiosk_mode()
+: <a class="el" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_master_password_status()
+: <a class="el" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_os_info()
+: <a class="el" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_profiles()
+: <a class="el" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_secret_plugin()
+: <a class="el" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_uid()
+: <a class="el" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_user_env()
+: <a class="el" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_version()
+: <a class="el" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats.c</a>
+</li>
+<li>remmina_stats_get_wm_name()
+: <a class="el" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats.c</a>
+</li>
+<li>remmina_stats_sender_periodic_check()
+: <a class="el" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender.c</a>
+</li>
+<li>remmina_stats_sender_schedule()
+: <a class="el" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender.c</a>
+, <a class="el" href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802">remmina_stats_sender.h</a>
+</li>
+<li>remmina_stats_sender_send()
+: <a class="el" href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender.h</a>
+, <a class="el" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender.c</a>
+</li>
+<li>remmina_string_array_add()
+: <a class="el" href="remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_compare_func()
+: <a class="el" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_find()
+: <a class="el" href="remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_free()
+: <a class="el" href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_intersect()
+: <a class="el" href="remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_new()
+: <a class="el" href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_new_from_allocated_string()
+: <a class="el" href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_new_from_string()
+: <a class="el" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_remove()
+: <a class="el" href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array.h</a>
+, <a class="el" href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array.c</a>
+</li>
+<li>remmina_string_array_remove_index()
+: <a class="el" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_sort()
+: <a class="el" href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array.h</a>
+</li>
+<li>remmina_string_array_to_string()
+: <a class="el" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array.c</a>
+, <a class="el" href="remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array.h</a>
+</li>
+<li>remmina_string_list_get_text()
+: <a class="el" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_init()
+: <a class="el" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_move_iter()
+: <a class="el" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_new()
+: <a class="el" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_on_action_add()
+: <a class="el" href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_down()
+: <a class="el" href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_remove()
+: <a class="el" href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_action_up()
+: <a class="el" href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_on_cell_edited()
+: <a class="el" href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_set_text()
+: <a class="el" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_set_titles()
+: <a class="el" href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list.h</a>
+, <a class="el" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list.c</a>
+</li>
+<li>remmina_string_list_set_validation_func()
+: <a class="el" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list.c</a>
+, <a class="el" href="remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list.h</a>
+</li>
+<li>remmina_string_list_update_buttons_state()
+: <a class="el" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list.c</a>
+</li>
+<li>remmina_sysinfo_get_gnome_shell_version()
+: <a class="el" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo.c</a>
+, <a class="el" href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb">remmina_sysinfo.h</a>
+</li>
+<li>remmina_sysinfo_get_wm_name()
+: <a class="el" href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo.c</a>
+, <a class="el" href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a">remmina_sysinfo.h</a>
+</li>
+<li>remmina_sysinfo_is_appindicator_available()
+: <a class="el" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo.c</a>
+, <a class="el" href="remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23">remmina_sysinfo.h</a>
+</li>
+<li>REMMINA_TAB_ALL
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_BY_GROUP
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_BY_PROTOCOL
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">remmina_pref.h</a>
+</li>
+<li>REMMINA_TAB_NONE
+: <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">remmina_pref.h</a>
+</li>
+<li>remmina_tp_channel_handler_accept()
+: <a class="el" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_account_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_channel_closed()
+: <a class="el" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_channel_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_connect()
+: <a class="el" href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_connection_ready()
+: <a class="el" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_free()
+: <a class="el" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_get_contacts()
+: <a class="el" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_get_service()
+: <a class="el" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_new()
+: <a class="el" href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c">telepathy_channel_handler.h</a>
+, <a class="el" href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_on_disconnect()
+: <a class="el" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_channel_handler_on_response()
+: <a class="el" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">telepathy_channel_handler.c</a>
+</li>
+<li>remmina_tp_handler
+: <a class="el" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">telepathy_plugin.c</a>
+</li>
+<li>remmina_tp_handler_class_init()
+: <a class="el" href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_handle_channels()
+: <a class="el" href="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_iface_init()
+: <a class="el" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_init()
+: <a class="el" href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_new()
+: <a class="el" href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6">telepathy_handler.h</a>
+, <a class="el" href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">telepathy_handler.c</a>
+</li>
+<li>remmina_tp_handler_register()
+: <a class="el" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">telepathy_handler.c</a>
+</li>
+<li>remmina_unlock_cancel_clicked()
+: <a class="el" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_dialog
+: <a class="el" href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_new()
+: <a class="el" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock.c</a>
+, <a class="el" href="remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7">remmina_unlock.h</a>
+</li>
+<li>remmina_unlock_timer_destroy()
+: <a class="el" href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_timer_init()
+: <a class="el" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_timer_reset()
+: <a class="el" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock.c</a>
+</li>
+<li>remmina_unlock_unlock_clicked()
+: <a class="el" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock.c</a>
+</li>
+<li>remmina_utils_get_etc_release()
+: <a class="el" href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_kernel_arch()
+: <a class="el" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_kernel_name()
+: <a class="el" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_kernel_release()
+: <a class="el" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_lang()
+: <a class="el" href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_lsb_codename()
+: <a class="el" href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_lsb_description()
+: <a class="el" href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_lsb_id()
+: <a class="el" href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils.h</a>
+</li>
+<li>remmina_utils_get_lsb_release()
+: <a class="el" href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils.c</a>
+</li>
+<li>remmina_utils_get_os_info()
+: <a class="el" href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils.c</a>
+</li>
+<li>remmina_utils_read_distrofile()
+: <a class="el" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils.c</a>
+</li>
+<li>remmina_utils_string_find()
+: <a class="el" href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be">remmina_utils.h</a>
+</li>
+<li>remmina_utils_string_replace()
+: <a class="el" href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils.h</a>
+, <a class="el" href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils.c</a>
+</li>
+<li>remmina_utils_string_replace_all()
+: <a class="el" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils.h</a>
+</li>
+<li>remmina_utils_string_strip()
+: <a class="el" href="remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils.c</a>
+, <a class="el" href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils.h</a>
+</li>
+<li>remmina_utils_strpos()
+: <a class="el" href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils.c</a>
+</li>
+<li>REMMINA_VIEW_FILE_LIST
+: <a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">remmina_pref.h</a>
+</li>
+<li>REMMINA_VIEW_FILE_TREE
+: <a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">remmina_pref.h</a>
+</li>
+<li>remmina_widget_pool
+: <a class="el" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_count()
+: <a class="el" href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_find()
+: <a class="el" href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool.c</a>
+, <a class="el" href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool.h</a>
+</li>
+<li>remmina_widget_pool_find_by_window()
+: <a class="el" href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool.c</a>
+, <a class="el" href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool.h</a>
+</li>
+<li>remmina_widget_pool_foreach()
+: <a class="el" href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_init()
+: <a class="el" href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool.h</a>
+, <a class="el" href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_on_widget_destroy()
+: <a class="el" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool.c</a>
+</li>
+<li>remmina_widget_pool_register()
+: <a class="el" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool.c</a>
+, <a class="el" href="remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool.h</a>
+</li>
+<li>remmina_www_features
+: <a class="el" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">www_plugin.c</a>
+</li>
+<li>remmina_www_query_feature()
+: <a class="el" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">www_plugin.c</a>
+</li>
+<li>remmina_www_web_view_js_finished()
+: <a class="el" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">www_plugin.c</a>
+</li>
+<li>RemminaAppletMenu
+: <a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAppletMenuClass
+: <a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAppletMenuItem
+: <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuItemClass
+: <a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuItemType
+: <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuNewConnectionType
+: <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAppletMenuPriv
+: <a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAuthpwdType
+: <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">types.h</a>
+</li>
+<li>RemminaAvahi
+: <a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">remmina_avahi.h</a>
+</li>
+<li>RemminaAvahiPriv
+: <a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">remmina_avahi.h</a>
+</li>
+<li>RemminaCellRendererPixbuf
+: <a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">remmina_ftp_client.c</a>
+</li>
+<li>RemminaCellRendererPixbufClass
+: <a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">remmina_ftp_client.c</a>
+</li>
+<li>RemminaChatWindow
+: <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">remmina_chat_window.h</a>
+</li>
+<li>RemminaChatWindowClass
+: <a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">remmina_chat_window.h</a>
+</li>
+<li>RemminaColorPref
+: <a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">remmina_pref.h</a>
+</li>
+<li>RemminaCommandType
+: <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">remmina_exec.h</a>
+</li>
+<li>RemminaCondExitType
+: <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">remmina_exec.h</a>
+</li>
+<li>RemminaConnectionObject
+: <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a4c54d77416105f6b094796316f5360a2">rcw.h</a>
+</li>
+<li>RemminaConnectionWindow
+: <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">rcw.h</a>
+</li>
+<li>RemminaConnectionWindowClass
+: <a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">rcw.h</a>
+</li>
+<li>RemminaConnectionWindowOnDeleteConfirmMode
+: <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">rcw.h</a>
+</li>
+<li>RemminaConnectionWindowPriv
+: <a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">rcw.h</a>
+</li>
+<li>remminadir
+: <a class="el" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remmina_file_manager.c</a>
+</li>
+<li>RemminaEntryPlugin
+: <a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">plugin.h</a>
+</li>
+<li>RemminaFile
+: <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">types.h</a>
+</li>
+<li>RemminaFileEditor
+: <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">remmina_file_editor.h</a>
+</li>
+<li>RemminaFileEditorClass
+: <a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">remmina_file_editor.h</a>
+</li>
+<li>RemminaFileEditorPriv
+: <a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">remmina_file_editor.h</a>
+</li>
+<li>RemminaFilePlugin
+: <a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">plugin.h</a>
+</li>
+<li>RemminaFTPClient
+: <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPClientClass
+: <a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPClientPriv
+: <a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPTask
+: <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">remmina_ftp_client.h</a>
+</li>
+<li>RemminaGroupData
+: <a class="el" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">remmina_file_manager.h</a>
+</li>
+<li>RemminaHostkeyFunc
+: <a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">remmina_protocol_widget.h</a>
+</li>
+<li>RemminaIcon
+: <a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">remmina_icon.c</a>
+</li>
+<li>RemminaKeyChooserArguments
+: <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">remmina_key_chooser.h</a>
+</li>
+<li>RemminaKeyVal
+: <a class="el" href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">vnc_plugin.c</a>
+</li>
+<li>RemminaLogWindow
+: <a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">remmina_log.c</a>
+</li>
+<li>RemminaLogWindowClass
+: <a class="el" href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">remmina_log.c</a>
+</li>
+<li>RemminaMain
+: <a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">remmina_main.h</a>
+</li>
+<li>remminamain
+: <a class="el" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remmina_main.c</a>
+</li>
+<li>RemminaMainPriv
+: <a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">remmina_main.h</a>
+</li>
+<li>RemminaMessagePanelCallback
+: <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">remmina_message_panel.h</a>
+</li>
+<li>RemminaMessagePanelFlags
+: <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">types.h</a>
+</li>
+<li>RemminaMTExecData
+: <a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">remmina_masterthread_exec.h</a>
+</li>
+<li>RemminaNewsDialog
+: <a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">rmnews.h</a>
+</li>
+<li>RemminaNXEventType
+: <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">nx_plugin.h</a>
+</li>
+<li>RemminaNXLogCallback
+: <a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">nx_session.h</a>
+</li>
+<li>RemminaNXPassphraseCallback
+: <a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">nx_session.h</a>
+</li>
+<li>RemminaNXSession
+: <a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">nx_session.h</a>
+</li>
+<li>RemminaPlugin
+: <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">plugin.h</a>
+</li>
+<li>RemminaPluginData
+: <a class="el" href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">st_plugin.c</a>
+</li>
+<li>RemminaPluginEntryFunc
+: <a class="el" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">plugin.h</a>
+</li>
+<li>RemminaPluginExecData
+: <a class="el" href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">exec_plugin.c</a>
+</li>
+<li>RemminaPluginFunc
+: <a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">remmina_plugin_manager.h</a>
+</li>
+<li>RemminaPluginNxData
+: <a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">nx_plugin.h</a>
+</li>
+<li>RemminaPluginRdpEvent
+: <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpEventType
+: <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpKeymapEntry
+: <a class="el" href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpsetGrid
+: <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">rdp_settings.c</a>
+</li>
+<li>RemminaPluginRdpsetGridClass
+: <a class="el" href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">rdp_settings.c</a>
+</li>
+<li>RemminaPluginRdpUiClipboardType
+: <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiEeventType
+: <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiObject
+: <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiPointerType
+: <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpUiType
+: <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginScreenshotData
+: <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">types.h</a>
+</li>
+<li>RemminaPluginService
+: <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">plugin.h</a>
+</li>
+<li>RemminaPluginSftpData
+: <a class="el" href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">remmina_sftp_plugin.c</a>
+</li>
+<li>RemminaPluginSpiceData
+: <a class="el" href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">spice_plugin.h</a>
+</li>
+<li>RemminaPluginSpiceXferWidgets
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">spice_plugin_file_transfer.c</a>
+</li>
+<li>RemminaPluginSshData
+: <a class="el" href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">remmina_ssh_plugin.c</a>
+</li>
+<li>RemminaPluginType
+: <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">plugin.h</a>
+</li>
+<li>RemminaPluginVncCoordinates
+: <a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginVncCuttextParam
+: <a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">vnc_plugin.c</a>
+</li>
+<li>RemminaPluginVncData
+: <a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginVncEvent
+: <a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginWWWData
+: <a class="el" href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">www_plugin.c</a>
+</li>
+<li>RemminaPluginXdmcpData
+: <a class="el" href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">xdmcp_plugin.c</a>
+</li>
+<li>RemminaPref
+: <a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">remmina_pref.h</a>
+</li>
+<li>RemminaPrefDialog
+: <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">remmina_pref_dialog.h</a>
+</li>
+<li>RemminaPrefDialogPriv
+: <a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">remmina_pref_dialog.h</a>
+</li>
+<li>RemminaPrefPlugin
+: <a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">plugin.h</a>
+</li>
+<li>RemminaProtocolFeature
+: <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">types.h</a>
+</li>
+<li>RemminaProtocolFeatureType
+: <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">types.h</a>
+</li>
+<li>RemminaProtocolPlugin
+: <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">plugin.h</a>
+</li>
+<li>RemminaProtocolSetting
+: <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">types.h</a>
+</li>
+<li>RemminaProtocolSettingOpt
+: <a class="el" href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">remmina_ssh_plugin.h</a>
+</li>
+<li>RemminaProtocolSettingType
+: <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">types.h</a>
+</li>
+<li>RemminaProtocolSSHSetting
+: <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">types.h</a>
+</li>
+<li>RemminaProtocolWidget
+: <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">types.h</a>
+</li>
+<li>RemminaProtocolWidgetClass
+: <a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">types.h</a>
+</li>
+<li>RemminaProtocolWidgetPriv
+: <a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">remmina_protocol_widget.h</a>
+</li>
+<li>RemminaProtocolWidgetResolutionMode
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">types.h</a>
+</li>
+<li>RemminaProtocolWidgetSignalData
+: <a class="el" href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">remmina_protocol_widget.c</a>
+</li>
+<li>RemminaScaleMode
+: <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">types.h</a>
+</li>
+<li>RemminaScrolledViewport
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">remmina_scrolled_viewport.h</a>
+</li>
+<li>RemminaScrolledViewportClass
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">remmina_scrolled_viewport.h</a>
+</li>
+<li>RemminaSecretPlugin
+: <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">plugin.h</a>
+</li>
+<li>RemminaSFTP
+: <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">remmina_ssh.h</a>
+</li>
+<li>RemminaSFTPClient
+: <a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">remmina_sftp_client.h</a>
+</li>
+<li>RemminaSFTPClientClass
+: <a class="el" href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">remmina_sftp_client.h</a>
+</li>
+<li>RemminaSSH
+: <a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHExitFunc
+: <a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHShell
+: <a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnel
+: <a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnelBuffer
+: <a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnelCallback
+: <a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">remmina_ssh.h</a>
+</li>
+<li>RemminaStringArray
+: <a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">remmina_string_array.h</a>
+</li>
+<li>RemminaStringList
+: <a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">remmina_string_list.h</a>
+</li>
+<li>RemminaStringListPriv
+: <a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">remmina_string_list.h</a>
+</li>
+<li>RemminaStringListValidationFunc
+: <a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">remmina_string_list.h</a>
+</li>
+<li>RemminaToolPlugin
+: <a class="el" href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">plugin.h</a>
+</li>
+<li>RemminaTpChannelHandler
+: <a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">telepathy_channel_handler.c</a>
+</li>
+<li>RemminaTpHandler
+: <a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">telepathy_handler.h</a>
+</li>
+<li>RemminaTpHandlerClass
+: <a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">telepathy_handler.h</a>
+</li>
+<li>RemminaTunnelInitFunc
+: <a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">types.h</a>
+</li>
+<li>RemminaUnlockDialog
+: <a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">remmina_unlock.h</a>
+</li>
+<li>remminavte
+: <a class="el" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remmina_ssh_plugin.c</a>
+</li>
+<li>RemminaWidgetPoolForEachFunc
+: <a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">remmina_widget_pool.h</a>
+</li>
+<li>RemminaXPortTunnelInitFunc
+: <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">types.h</a>
+</li>
+<li>RES_INVALID
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">types.h</a>
+</li>
+<li>RES_USE_CLIENT
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">types.h</a>
+</li>
+<li>RES_USE_CUSTOM
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">types.h</a>
+</li>
+<li>RES_USE_INITIAL_WINDOW_SIZE
+: <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">types.h</a>
+</li>
+<li>rf_auto_reconnect()
+: <a class="el" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rdp_plugin.c</a>
+</li>
+<li>rf_begin_paint()
+: <a class="el" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rdp_plugin.c</a>
+</li>
+<li>rf_Bitmap_Decompress()
+: <a class="el" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_Free()
+: <a class="el" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_New()
+: <a class="el" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_Paint()
+: <a class="el" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rdp_graphics.c</a>
+</li>
+<li>rf_Bitmap_SetSurface()
+: <a class="el" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rdp_graphics.c</a>
+</li>
+<li>rf_check_fds()
+: <a class="el" href="rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098">rdp_plugin.h</a>
+</li>
+<li>rf_desktop_resize()
+: <a class="el" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rdp_plugin.c</a>
+</li>
+<li>rf_end_paint()
+: <a class="el" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rdp_plugin.c</a>
+</li>
+<li>rf_get_fds()
+: <a class="el" href="rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc">rdp_plugin.h</a>
+</li>
+<li>rf_Glyph_BeginDraw()
+: <a class="el" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_Draw()
+: <a class="el" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_EndDraw()
+: <a class="el" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_Free()
+: <a class="el" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rdp_graphics.c</a>
+</li>
+<li>rf_Glyph_New()
+: <a class="el" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rdp_graphics.c</a>
+</li>
+<li>rf_init()
+: <a class="el" href="rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7">rdp_plugin.h</a>
+</li>
+<li>rf_keyboard_set_ime_status()
+: <a class="el" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rdp_plugin.c</a>
+</li>
+<li>rf_keyboard_set_indicators()
+: <a class="el" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rdp_plugin.c</a>
+</li>
+<li>rf_object_free()
+: <a class="el" href="rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433">rdp_plugin.h</a>
+</li>
+<li>rf_play_sound()
+: <a class="el" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rdp_plugin.c</a>
+</li>
+<li>rf_Pointer_Free()
+: <a class="el" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_New()
+: <a class="el" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_Set()
+: <a class="el" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetDefault()
+: <a class="el" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetNull()
+: <a class="el" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rdp_graphics.c</a>
+</li>
+<li>rf_Pointer_SetPosition()
+: <a class="el" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rdp_graphics.c</a>
+</li>
+<li>rf_process_event_queue()
+: <a class="el" href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rdp_plugin.c</a>
+</li>
+<li>rf_register_graphics()
+: <a class="el" href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rdp_graphics.c</a>
+, <a class="el" href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1">rdp_graphics.h</a>
+</li>
+<li>rf_uninit()
+: <a class="el" href="rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb">rdp_plugin.h</a>
+</li>
+<li>rfBitmap
+: <a class="el" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rdp_plugin.h</a>
+</li>
+<li>rfClipboard
+: <a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rdp_plugin.h</a>
+</li>
+<li>rfContext
+: <a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rdp_plugin.h</a>
+</li>
+<li>rfGlyph
+: <a class="el" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rdp_plugin.h</a>
+</li>
+<li>rfi_uninit()
+: <a class="el" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rdp_plugin.c</a>
+</li>
+<li>rfPointer
+: <a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rdp_plugin.h</a>
+</li>
+<li>rmnews_close_clicked()
+: <a class="el" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews.c</a>
+</li>
+<li>rmnews_defaultcl_on_click()
+: <a class="el" href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798">rmnews.c</a>
+</li>
+<li>rmnews_dialog_deleted()
+: <a class="el" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews.c</a>
+</li>
+<li>rmnews_get_file_contents()
+: <a class="el" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews.c</a>
+</li>
+<li>rmnews_get_news()
+: <a class="el" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews.c</a>
+</li>
+<li>rmnews_get_uid()
+: <a class="el" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews.c</a>
+</li>
+<li>rmnews_get_url()
+: <a class="el" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews.c</a>
+, <a class="el" href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews.h</a>
+</li>
+<li>rmnews_get_url_cb()
+: <a class="el" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews.c</a>
+</li>
+<li>rmnews_news_dialog
+: <a class="el" href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d">rmnews.c</a>
+</li>
+<li>rmnews_periodic_check()
+: <a class="el" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews.c</a>
+</li>
+<li>rmnews_schedule()
+: <a class="el" href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews.c</a>
+, <a class="el" href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888">rmnews.h</a>
+</li>
+<li>rmnews_show_news()
+: <a class="el" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews.c</a>
+, <a class="el" href="rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af">rmnews.h</a>
+</li>
+<li>rmnews_stats_switch_state_set_cb()
+: <a class="el" href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce">rmnews.c</a>
+</li>
+<li>rp_kwallet_delete_password()
+: <a class="el" href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_get_password()
+: <a class="el" href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_init()
+: <a class="el" href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_is_service_available()
+: <a class="el" href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">kwallet_plugin.h</a>
+</li>
+<li>rp_kwallet_store_password()
+: <a class="el" href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">kwallet_plugin.h</a>
+</li>
+<li>rpw_size_allocated_on_connection()
+: <a class="el" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rcw.c</a>
+</li>
+<li>RPWDT_AUTH
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">remmina_protocol_widget.c</a>
+</li>
+<li>RPWDT_AUTHX509
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">remmina_protocol_widget.c</a>
+</li>
+<li>RPWDT_QUESTIONYESNO
+: <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">remmina_protocol_widget.c</a>
+</li>
+<li>rsa_encrypt_string()
+: <a class="el" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">remmina_stats_sender.c</a>
+</li>
+<li>run_destroy_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">remmina_protocol_widget.c</a>
+</li>
+<li>run_response_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">remmina_protocol_widget.c</a>
+</li>
+<li>run_unmap_handler()
+: <a class="el" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">remmina_protocol_widget.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_s.html b/docs/globals_s.html
new file mode 100644
index 000000000..a90872c86
--- /dev/null
+++ b/docs/globals_s.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_s.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>SCROLLED_FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">remmina_pref.h</a>
+</li>
+<li>SCROLLED_WINDOW_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">remmina_pref.h</a>
+</li>
+<li>secretservice
+: <a class="el" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">glibsecret_plugin.c</a>
+</li>
+<li>security_list
+: <a class="el" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">rdp_plugin.c</a>
+</li>
+<li>SERVER_COLUMN
+: <a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">remmina_main.c</a>
+</li>
+<li>session
+: <a class="el" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">rmnews.c</a>
+</li>
+<li>shutdown_loop()
+: <a class="el" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">remmina_protocol_widget.c</a>
+</li>
+<li>SOLARIZED_DARK
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">remmina_ssh_plugin.c</a>
+</li>
+<li>solarized_dark_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">remmina_ssh_plugin.c</a>
+</li>
+<li>SOLARIZED_LIGHT
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">remmina_ssh_plugin.c</a>
+</li>
+<li>solarized_light_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">remmina_ssh_plugin.c</a>
+</li>
+<li>sound_list
+: <a class="el" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">rdp_plugin.c</a>
+</li>
+<li>soup_callback()
+: <a class="el" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">remmina_stats_sender.c</a>
+</li>
+<li>ssh_auth
+: <a class="el" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">remmina_sftp_plugin.c</a>
+</li>
+<li>SSH_AUTH_AGENT
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_AUTO_PUBLICKEY
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_GSSAPI
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_PASSWORD
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">remmina_file.h</a>
+</li>
+<li>SSH_AUTH_PUBLICKEY
+: <a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">remmina_file.h</a>
+</li>
+<li>ssh_charset_list
+: <a class="el" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">remmina_ssh_plugin.c</a>
+</li>
+<li>ssh_terminal_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">remmina_ssh_plugin.c</a>
+</li>
+<li>string_list
+: <a class="el" href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8">remmina_string_list.c</a>
+</li>
+<li>supported_mime_types
+: <a class="el" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">remmina_main.c</a>
+, <a class="el" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">rmnews.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_t.html b/docs/globals_t.html
new file mode 100644
index 000000000..718656279
--- /dev/null
+++ b/docs/globals_t.html
@@ -0,0 +1,131 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_t.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>TANGO
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">remmina_ssh_plugin.c</a>
+</li>
+<li>tango_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">remmina_ssh_plugin.c</a>
+</li>
+<li>term_list
+: <a class="el" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">st_plugin.c</a>
+</li>
+<li>timer
+: <a class="el" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">remmina_unlock.c</a>
+, <a class="el" href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0">remmina_unlock.h</a>
+</li>
+<li>times
+: <a class="el" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">remmina_file.c</a>
+</li>
+<li>TOOLBAR_PLACEMENT_BOTTOM
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_LEFT
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_RIGHT
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">remmina_pref.h</a>
+</li>
+<li>TOOLBAR_PLACEMENT_TOP
+: <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">remmina_pref.h</a>
+</li>
+<li>TOOLBARPLACE_SIGNAL
+: <a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">rcw.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_type.html b/docs/globals_type.html
new file mode 100644
index 000000000..ba91b5207
--- /dev/null
+++ b/docs/globals_type.html
@@ -0,0 +1,428 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_type.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>DistroInfo
+: <a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">remmina_utils.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>LSBDistroInfo
+: <a class="el" href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">remmina_utils.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>PThreadCleanupFunc
+: <a class="el" href="remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee">remmina_plugin.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>RemminaAppletMenu
+: <a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAppletMenuClass
+: <a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAppletMenuItem
+: <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuItemClass
+: <a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">remmina_applet_menu_item.h</a>
+</li>
+<li>RemminaAppletMenuPriv
+: <a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">remmina_applet_menu.h</a>
+</li>
+<li>RemminaAvahi
+: <a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">remmina_avahi.h</a>
+</li>
+<li>RemminaAvahiPriv
+: <a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">remmina_avahi.h</a>
+</li>
+<li>RemminaCellRendererPixbuf
+: <a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">remmina_ftp_client.c</a>
+</li>
+<li>RemminaCellRendererPixbufClass
+: <a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">remmina_ftp_client.c</a>
+</li>
+<li>RemminaChatWindow
+: <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">remmina_chat_window.h</a>
+</li>
+<li>RemminaChatWindowClass
+: <a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">remmina_chat_window.h</a>
+</li>
+<li>RemminaColorPref
+: <a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">remmina_pref.h</a>
+</li>
+<li>RemminaConnectionObject
+: <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">rcw.c</a>
+, <a class="el" href="rcw_8h.html#a4c54d77416105f6b094796316f5360a2">rcw.h</a>
+</li>
+<li>RemminaConnectionWindow
+: <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">rcw.h</a>
+</li>
+<li>RemminaConnectionWindowClass
+: <a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">rcw.h</a>
+</li>
+<li>RemminaConnectionWindowPriv
+: <a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">rcw.h</a>
+</li>
+<li>RemminaEntryPlugin
+: <a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">plugin.h</a>
+</li>
+<li>RemminaFile
+: <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">types.h</a>
+</li>
+<li>RemminaFileEditor
+: <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">remmina_file_editor.h</a>
+</li>
+<li>RemminaFileEditorClass
+: <a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">remmina_file_editor.h</a>
+</li>
+<li>RemminaFileEditorPriv
+: <a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">remmina_file_editor.h</a>
+</li>
+<li>RemminaFilePlugin
+: <a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">plugin.h</a>
+</li>
+<li>RemminaFTPClient
+: <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPClientClass
+: <a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPClientPriv
+: <a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">remmina_ftp_client.h</a>
+</li>
+<li>RemminaFTPTask
+: <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">remmina_ftp_client.h</a>
+</li>
+<li>RemminaGroupData
+: <a class="el" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">remmina_file_manager.h</a>
+</li>
+<li>RemminaHostkeyFunc
+: <a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">remmina_protocol_widget.h</a>
+</li>
+<li>RemminaIcon
+: <a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">remmina_icon.c</a>
+</li>
+<li>RemminaKeyChooserArguments
+: <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">remmina_key_chooser.h</a>
+</li>
+<li>RemminaKeyVal
+: <a class="el" href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">vnc_plugin.c</a>
+</li>
+<li>RemminaLogWindow
+: <a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">remmina_log.c</a>
+</li>
+<li>RemminaLogWindowClass
+: <a class="el" href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">remmina_log.c</a>
+</li>
+<li>RemminaMain
+: <a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">remmina_main.h</a>
+</li>
+<li>RemminaMainPriv
+: <a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">remmina_main.h</a>
+</li>
+<li>RemminaMessagePanelCallback
+: <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">remmina_message_panel.h</a>
+</li>
+<li>RemminaMTExecData
+: <a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">remmina_masterthread_exec.h</a>
+</li>
+<li>RemminaNewsDialog
+: <a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">rmnews.h</a>
+</li>
+<li>RemminaNXLogCallback
+: <a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">nx_session.h</a>
+</li>
+<li>RemminaNXPassphraseCallback
+: <a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">nx_session.h</a>
+</li>
+<li>RemminaNXSession
+: <a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">nx_session.h</a>
+</li>
+<li>RemminaPlugin
+: <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">plugin.h</a>
+</li>
+<li>RemminaPluginData
+: <a class="el" href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">st_plugin.c</a>
+</li>
+<li>RemminaPluginEntryFunc
+: <a class="el" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">plugin.h</a>
+</li>
+<li>RemminaPluginExecData
+: <a class="el" href="exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8">exec_plugin.c</a>
+</li>
+<li>RemminaPluginNxData
+: <a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">nx_plugin.h</a>
+</li>
+<li>RemminaPluginRdpEvent
+: <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpKeymapEntry
+: <a class="el" href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginRdpsetGrid
+: <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">rdp_settings.c</a>
+</li>
+<li>RemminaPluginRdpsetGridClass
+: <a class="el" href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">rdp_settings.c</a>
+</li>
+<li>RemminaPluginRdpUiObject
+: <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">rdp_plugin.h</a>
+</li>
+<li>RemminaPluginScreenshotData
+: <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">types.h</a>
+</li>
+<li>RemminaPluginService
+: <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">plugin.h</a>
+</li>
+<li>RemminaPluginSftpData
+: <a class="el" href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">remmina_sftp_plugin.c</a>
+</li>
+<li>RemminaPluginSpiceData
+: <a class="el" href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">spice_plugin.h</a>
+</li>
+<li>RemminaPluginSpiceXferWidgets
+: <a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">spice_plugin_file_transfer.c</a>
+</li>
+<li>RemminaPluginSshData
+: <a class="el" href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">remmina_ssh_plugin.c</a>
+</li>
+<li>RemminaPluginVncCoordinates
+: <a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginVncCuttextParam
+: <a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">vnc_plugin.c</a>
+</li>
+<li>RemminaPluginVncData
+: <a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginVncEvent
+: <a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">vnc_plugin.h</a>
+</li>
+<li>RemminaPluginWWWData
+: <a class="el" href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">www_plugin.c</a>
+</li>
+<li>RemminaPluginXdmcpData
+: <a class="el" href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">xdmcp_plugin.c</a>
+</li>
+<li>RemminaPref
+: <a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">remmina_pref.h</a>
+</li>
+<li>RemminaPrefDialog
+: <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">remmina_pref_dialog.h</a>
+</li>
+<li>RemminaPrefDialogPriv
+: <a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">remmina_pref_dialog.h</a>
+</li>
+<li>RemminaPrefPlugin
+: <a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">plugin.h</a>
+</li>
+<li>RemminaProtocolFeature
+: <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">types.h</a>
+</li>
+<li>RemminaProtocolPlugin
+: <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">plugin.h</a>
+</li>
+<li>RemminaProtocolSetting
+: <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">types.h</a>
+</li>
+<li>RemminaProtocolSettingOpt
+: <a class="el" href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">remmina_ssh_plugin.h</a>
+</li>
+<li>RemminaProtocolWidget
+: <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">types.h</a>
+</li>
+<li>RemminaProtocolWidgetClass
+: <a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">types.h</a>
+</li>
+<li>RemminaProtocolWidgetPriv
+: <a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">remmina_protocol_widget.h</a>
+</li>
+<li>RemminaProtocolWidgetSignalData
+: <a class="el" href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">remmina_protocol_widget.c</a>
+</li>
+<li>RemminaScrolledViewport
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">remmina_scrolled_viewport.h</a>
+</li>
+<li>RemminaScrolledViewportClass
+: <a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">remmina_scrolled_viewport.h</a>
+</li>
+<li>RemminaSecretPlugin
+: <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">plugin.h</a>
+</li>
+<li>RemminaSFTP
+: <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">remmina_ssh.h</a>
+</li>
+<li>RemminaSFTPClient
+: <a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">remmina_sftp_client.h</a>
+</li>
+<li>RemminaSFTPClientClass
+: <a class="el" href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">remmina_sftp_client.h</a>
+</li>
+<li>RemminaSSH
+: <a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHExitFunc
+: <a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHShell
+: <a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnel
+: <a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnelBuffer
+: <a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">remmina_ssh.h</a>
+</li>
+<li>RemminaSSHTunnelCallback
+: <a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">remmina_ssh.h</a>
+</li>
+<li>RemminaStringList
+: <a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">remmina_string_list.h</a>
+</li>
+<li>RemminaStringListPriv
+: <a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">remmina_string_list.h</a>
+</li>
+<li>RemminaStringListValidationFunc
+: <a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">remmina_string_list.h</a>
+</li>
+<li>RemminaToolPlugin
+: <a class="el" href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">plugin.h</a>
+</li>
+<li>RemminaTpChannelHandler
+: <a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">telepathy_channel_handler.c</a>
+</li>
+<li>RemminaTpHandler
+: <a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">telepathy_handler.h</a>
+</li>
+<li>RemminaTpHandlerClass
+: <a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">telepathy_handler.h</a>
+</li>
+<li>RemminaTunnelInitFunc
+: <a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">types.h</a>
+</li>
+<li>RemminaUnlockDialog
+: <a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">remmina_unlock.h</a>
+</li>
+<li>RemminaXPortTunnelInitFunc
+: <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">types.h</a>
+</li>
+<li>rfBitmap
+: <a class="el" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rdp_plugin.h</a>
+</li>
+<li>rfClipboard
+: <a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rdp_plugin.h</a>
+</li>
+<li>rfContext
+: <a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rdp_plugin.h</a>
+</li>
+<li>rfGlyph
+: <a class="el" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rdp_plugin.h</a>
+</li>
+<li>rfPointer
+: <a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rdp_plugin.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_u.html b/docs/globals_u.html
new file mode 100644
index 000000000..15351d8f6
--- /dev/null
+++ b/docs/globals_u.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_u.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>u
+: <a class="el" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">remmina_utils.c</a>
+</li>
+<li>UNDEFINED_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">remmina_pref.h</a>
+</li>
+<li>unlock_dynres()
+: <a class="el" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">remmina_protocol_widget.c</a>
+</li>
+<li>update_align()
+: <a class="el" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">remmina_protocol_widget.c</a>
+</li>
+<li>upgrade_sshkeys_202001()
+: <a class="el" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">remmina_file.c</a>
+</li>
+<li>upgrade_sshkeys_202001_mig_common_setting()
+: <a class="el" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">remmina_file.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_v.html b/docs/globals_v.html
new file mode 100644
index 000000000..3470b21d5
--- /dev/null
+++ b/docs/globals_v.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_v.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_v"></a>- v -</h3><ul>
+<li>view_popup_menu_onDoSomething()
+: <a class="el" href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">remmina_external_tools.c</a>
+</li>
+<li>VIEWPORT_FULLSCREEN_MODE
+: <a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">remmina_pref.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_vars.html b/docs/globals_vars.html
new file mode 100644
index 000000000..55f1468b2
--- /dev/null
+++ b/docs/globals_vars.html
@@ -0,0 +1,621 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_vars.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a id="index_b"></a>- b -</h3><ul>
+<li>btn_response_key
+: <a class="el" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">remmina_message_panel.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_c"></a>- c -</h3><ul>
+<li>cachedir
+: <a class="el" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">remmina_file_manager.c</a>
+</li>
+<li>clientbuild_list
+: <a class="el" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">rdp_plugin.c</a>
+</li>
+<li>clientbuild_tooltip
+: <a class="el" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">rdp_plugin.c</a>
+</li>
+<li>colordepth_list
+: <a class="el" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">vnc_plugin.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">rdp_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">xdmcp_plugin.c</a>
+</li>
+<li>common_identities
+: <a class="el" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">remmina_ssh.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>default_keymap_data
+: <a class="el" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">remmina_pref.c</a>
+</li>
+<li>default_keystrokes
+: <a class="el" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">remmina_pref.c</a>
+</li>
+<li>default_resolutions
+: <a class="el" href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290">remmina_pref.h</a>
+, <a class="el" href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">remmina_pref.c</a>
+</li>
+<li>defaultcollection
+: <a class="el" href="glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72">glibsecret_plugin.c</a>
+</li>
+<li>distroArray
+: <a class="el" href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478">remmina_utils.c</a>
+</li>
+<li>dnd_targets_ftb
+: <a class="el" href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90">rcw.c</a>
+</li>
+<li>dnd_targets_tb
+: <a class="el" href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523">rcw.c</a>
+</li>
+<li>dot_cursor_x_hot
+: <a class="el" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">vnc_plugin.c</a>
+</li>
+<li>dot_cursor_xpm
+: <a class="el" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">vnc_plugin.c</a>
+</li>
+<li>dot_cursor_y_hot
+: <a class="el" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">vnc_plugin.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_e"></a>- e -</h3><ul>
+<li>encrypted_settings_cache
+: <a class="el" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">remmina_plugin_manager.c</a>
+</li>
+<li>eweekdays
+: <a class="el" href="rmnews_8c.html#af4777302c760225b833206545e9f437d">rmnews.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>fun
+: <a class="el" href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">remmina_trace_calls.h</a>
+, <a class="el" href="remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24">remmina_main.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_g"></a>- g -</h3><ul>
+<li>GCRY_THREAD_OPTION_PTHREAD_IMPL
+: <a class="el" href="remmina_8c.html#a3d760300165528383af409d2964d79d2">remmina.c</a>
+</li>
+<li>gcrypt_thread_initialized
+: <a class="el" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">remmina.c</a>
+</li>
+<li>gfx_h264_available
+: <a class="el" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">rdp_plugin.c</a>
+</li>
+<li>gMainThreadID
+: <a class="el" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">remmina_masterthread_exec.c</a>
+</li>
+<li>gruvbox_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">remmina_ssh_plugin.c</a>
+</li>
+<li>gwtransp_list
+: <a class="el" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">rdp_plugin.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_i"></a>- i -</h3><ul>
+<li>isinit
+: <a class="el" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">remmina_unlock.c</a>
+, <a class="el" href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea">remmina_unlock.h</a>
+</li>
+</ul>
+
+
+<h3><a id="index_k"></a>- k -</h3><ul>
+<li>keyboard_layout
+: <a class="el" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">rdp_settings.c</a>
+</li>
+<li>kioskmode
+: <a class="el" href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1">remmina.h</a>
+, <a class="el" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">remmina.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_l"></a>- l -</h3><ul>
+<li>linux_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">remmina_ssh_plugin.c</a>
+</li>
+<li>log_tips
+: <a class="el" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">remmina_ssh_plugin.c</a>
+</li>
+<li>log_window
+: <a class="el" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">remmina_log.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_m"></a>- m -</h3><ul>
+<li>main_actions
+: <a class="el" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">remmina_main.c</a>
+</li>
+<li>messagepanel_signals
+: <a class="el" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">remmina_message_panel.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_n"></a>- n -</h3><ul>
+<li>nx_default_private_key
+: <a class="el" href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_session.c</a>
+</li>
+<li>nx_hello_server_msg
+: <a class="el" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_session.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_o"></a>- o -</h3><ul>
+<li>output_file_path
+: <a class="el" href="rmnews_8c.html#a565782499953048b5e51934123195e29">rmnews.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_p"></a>- p -</h3><ul>
+<li>palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_q"></a>- q -</h3><ul>
+<li>quality_list
+: <a class="el" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">nx_plugin.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">rdp_plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">vnc_plugin.c</a>
+</li>
+<li>quick_connect_plugin_list
+: <a class="el" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">remmina_main.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
+<li>rcw_signals
+: <a class="el" href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e">rcw.c</a>
+</li>
+<li>rdp_keyboard_layout
+: <a class="el" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_settings.c</a>
+</li>
+<li>remmina_applet_menu_signals
+: <a class="el" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu.c</a>
+</li>
+<li>remmina_chat_window_signals
+: <a class="el" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window.c</a>
+</li>
+<li>remmina_colors_file
+: <a class="el" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_pref.h</a>
+</li>
+<li>remmina_drop_types
+: <a class="el" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_main.c</a>
+</li>
+<li>remmina_file_secret_schema
+: <a class="el" href="glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f">glibsecret_plugin.c</a>
+</li>
+<li>remmina_ftp_client_signals
+: <a class="el" href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5">remmina_ftp_client.c</a>
+</li>
+<li>remmina_ftp_client_taskid
+: <a class="el" href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a">remmina_ftp_client.c</a>
+</li>
+<li>remmina_icon
+: <a class="el" href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0">remmina_icon.c</a>
+</li>
+<li>remmina_kbtype
+: <a class="el" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">nx_plugin.c</a>
+</li>
+<li>remmina_keymap_file
+: <a class="el" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_pref.c</a>
+</li>
+<li>remmina_keymap_table
+: <a class="el" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_pref.c</a>
+</li>
+<li>remmina_nx_init_mutex
+: <a class="el" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">nx_plugin.c</a>
+</li>
+<li>remmina_nx_window_id_array
+: <a class="el" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">nx_plugin.c</a>
+</li>
+<li>remmina_options
+: <a class="el" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina.c</a>
+</li>
+<li>remmina_plugin
+: <a class="el" href="exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">exec_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">st_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">www_plugin.c</a>
+</li>
+<li>remmina_plugin_exec_basic_settings
+: <a class="el" href="exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3">exec_plugin.c</a>
+</li>
+<li>remmina_plugin_glibsecret
+: <a class="el" href="glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd">glibsecret_plugin.c</a>
+</li>
+<li>remmina_plugin_kwallet
+: <a class="el" href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469">kwallet_plugin_main.c</a>
+</li>
+<li>remmina_plugin_manager_service
+: <a class="el" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager.c</a>
+, <a class="el" href="remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager.h</a>
+</li>
+<li>remmina_plugin_nx
+: <a class="el" href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_advanced_settings
+: <a class="el" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_basic_settings
+: <a class="el" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_features
+: <a class="el" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">nx_plugin.c</a>
+</li>
+<li>remmina_plugin_nx_service
+: <a class="el" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">nx_plugin.c</a>
+, <a class="el" href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf">nx_plugin.h</a>
+</li>
+<li>remmina_plugin_rdp_version
+: <a class="el" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">rdp_plugin.c</a>
+</li>
+<li>remmina_plugin_service
+: <a class="el" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_sftp_plugin.c</a>
+, <a class="el" href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_ssh_plugin.c</a>
+, <a class="el" href="exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">exec_plugin.c</a>
+, <a class="el" href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">kwallet_plugin_main.c</a>
+, <a class="el" href="rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">rdp_plugin.c</a>
+, <a class="el" href="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7">rdp_plugin.h</a>
+, <a class="el" href="glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">glibsecret_plugin.c</a>
+, <a class="el" href="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">spice_plugin.c</a>
+, <a class="el" href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">st_plugin.c</a>
+, <a class="el" href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">plugin.c</a>
+, <a class="el" href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">vnc_plugin.c</a>
+, <a class="el" href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">www_plugin.c</a>
+, <a class="el" href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp
+: <a class="el" href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_sftp_features
+: <a class="el" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_plugin_spice
+: <a class="el" href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_advanced_settings
+: <a class="el" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_basic_settings
+: <a class="el" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_spice_features
+: <a class="el" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">spice_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh
+: <a class="el" href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_ssh_features
+: <a class="el" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_plugin_st_advanced_settings
+: <a class="el" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">st_plugin.c</a>
+</li>
+<li>remmina_plugin_st_basic_settings
+: <a class="el" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">st_plugin.c</a>
+</li>
+<li>remmina_plugin_table
+: <a class="el" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_telepathy
+: <a class="el" href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_telepathy_service
+: <a class="el" href="telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_handler.c</a>
+, <a class="el" href="telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_channel_handler.c</a>
+, <a class="el" href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052">telepathy_plugin.c</a>
+</li>
+<li>remmina_plugin_tool_basic_settings
+: <a class="el" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">plugin.c</a>
+</li>
+<li>remmina_plugin_type_name
+: <a class="el" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_plugin_vnc
+: <a class="el" href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_advanced_settings
+: <a class="el" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_basic_settings
+: <a class="el" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_features
+: <a class="el" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnc_no_encrypt_auth_types
+: <a class="el" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnci
+: <a class="el" href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_vnci_basic_settings
+: <a class="el" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">vnc_plugin.c</a>
+</li>
+<li>remmina_plugin_www_advanced_settings
+: <a class="el" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">www_plugin.c</a>
+</li>
+<li>remmina_plugin_www_basic_settings
+: <a class="el" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">www_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp
+: <a class="el" href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_basic_settings
+: <a class="el" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">xdmcp_plugin.c</a>
+</li>
+<li>remmina_plugin_xdmcp_features
+: <a class="el" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">xdmcp_plugin.c</a>
+</li>
+<li>remmina_pref
+: <a class="el" href="remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref.h</a>
+, <a class="el" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">rcw.c</a>
+</li>
+<li>remmina_pref_dialog
+: <a class="el" href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368">remmina_pref_dialog.c</a>
+</li>
+<li>remmina_pref_file
+: <a class="el" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">rcw.c</a>
+, <a class="el" href="remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref.h</a>
+</li>
+<li>remmina_protocol_widget_signals
+: <a class="el" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget.c</a>
+</li>
+<li>remmina_rdp
+: <a class="el" href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_advanced_settings
+: <a class="el" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_basic_settings
+: <a class="el" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_features
+: <a class="el" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">rdp_plugin.c</a>
+</li>
+<li>remmina_rdp_plugin_default_drive_name
+: <a class="el" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">rdp_plugin.c</a>
+</li>
+<li>remmina_rdpf
+: <a class="el" href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619">rdp_plugin.c</a>
+</li>
+<li>remmina_rdps
+: <a class="el" href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba">rdp_plugin.c</a>
+</li>
+<li>remmina_RSA_PubKey_v1
+: <a class="el" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_stats_sender.c</a>
+</li>
+<li>remmina_secret_plugin
+: <a class="el" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_plugin_manager.c</a>
+</li>
+<li>remmina_sftp_basic_settings
+: <a class="el" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_plugin.c</a>
+</li>
+<li>remmina_ssh_advanced_settings
+: <a class="el" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_ssh_basic_settings
+: <a class="el" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_plugin.c</a>
+</li>
+<li>remmina_st_features
+: <a class="el" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">st_plugin.c</a>
+</li>
+<li>remmina_tp_handler
+: <a class="el" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">telepathy_plugin.c</a>
+</li>
+<li>remmina_unlock_dialog
+: <a class="el" href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7">remmina_unlock.c</a>
+</li>
+<li>remmina_widget_pool
+: <a class="el" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool.c</a>
+</li>
+<li>remmina_www_features
+: <a class="el" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">www_plugin.c</a>
+</li>
+<li>remminadir
+: <a class="el" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remmina_file_manager.c</a>
+</li>
+<li>remminamain
+: <a class="el" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remmina_main.c</a>
+</li>
+<li>RemminaPluginFunc
+: <a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">remmina_plugin_manager.h</a>
+</li>
+<li>RemminaStringArray
+: <a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">remmina_string_array.h</a>
+</li>
+<li>remminavte
+: <a class="el" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remmina_ssh_plugin.c</a>
+</li>
+<li>RemminaWidgetPoolForEachFunc
+: <a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">remmina_widget_pool.h</a>
+</li>
+<li>rmnews_news_dialog
+: <a class="el" href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d">rmnews.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>secretservice
+: <a class="el" href="glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7">glibsecret_plugin.c</a>
+</li>
+<li>security_list
+: <a class="el" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">rdp_plugin.c</a>
+</li>
+<li>session
+: <a class="el" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">rmnews.c</a>
+</li>
+<li>solarized_dark_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">remmina_ssh_plugin.c</a>
+</li>
+<li>solarized_light_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">remmina_ssh_plugin.c</a>
+</li>
+<li>sound_list
+: <a class="el" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">rdp_plugin.c</a>
+</li>
+<li>ssh_auth
+: <a class="el" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">remmina_ssh_plugin.c</a>
+, <a class="el" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">remmina_sftp_plugin.c</a>
+</li>
+<li>ssh_charset_list
+: <a class="el" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">remmina_ssh_plugin.c</a>
+</li>
+<li>ssh_terminal_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">remmina_ssh_plugin.c</a>
+</li>
+<li>string_list
+: <a class="el" href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8">remmina_string_list.c</a>
+</li>
+<li>supported_mime_types
+: <a class="el" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">rmnews.c</a>
+, <a class="el" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">remmina_main.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>tango_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">remmina_ssh_plugin.c</a>
+</li>
+<li>term_list
+: <a class="el" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">st_plugin.c</a>
+</li>
+<li>timer
+: <a class="el" href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0">remmina_unlock.h</a>
+, <a class="el" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">remmina_unlock.c</a>
+</li>
+<li>times
+: <a class="el" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">remmina_file.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_u"></a>- u -</h3><ul>
+<li>u
+: <a class="el" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">remmina_utils.c</a>
+</li>
+</ul>
+
+
+<h3><a id="index_x"></a>- x -</h3><ul>
+<li>xterm_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_w.html b/docs/globals_w.html
new file mode 100644
index 000000000..481d4ef58
--- /dev/null
+++ b/docs/globals_w.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_w.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_w"></a>- w -</h3><ul>
+<li>wait_for_child()
+: <a class="el" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">remmina_ext_exec.c</a>
+</li>
+<li>www_utils_send_notification()
+: <a class="el" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa">www_utils.h</a>
+</li>
+<li>www_utils_string_find()
+: <a class="el" href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27">www_utils.h</a>
+</li>
+<li>www_utils_string_replace()
+: <a class="el" href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc">www_utils.h</a>
+</li>
+<li>www_utils_string_replace_all()
+: <a class="el" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils.c</a>
+, <a class="el" href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c">www_utils.h</a>
+</li>
+<li>www_utils_strpos()
+: <a class="el" href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils.c</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_HTML
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_IMAGE
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_OTHER
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">www_plugin.h</a>
+</li>
+<li>WWW_WEB_VIEW_DOCUMENT_XML
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">www_plugin.h</a>
+</li>
+<li>WWWWebViewDocumentType
+: <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">www_plugin.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/globals_x.html b/docs/globals_x.html
new file mode 100644
index 000000000..101eeac59
--- /dev/null
+++ b/docs/globals_x.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('globals_x.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a id="index_x"></a>- x -</h3><ul>
+<li>XTERM
+: <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">remmina_ssh_plugin.c</a>
+</li>
+<li>xterm_palette
+: <a class="el" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">remmina_ssh_plugin.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/i18nstats_8sh.html b/docs/i18nstats_8sh.html
new file mode 100644
index 000000000..a373cd8d8
--- /dev/null
+++ b/docs/i18nstats_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: i18nstats.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('i18nstats_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">i18nstats.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="i18nstats_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="i18nstats_8sh.html">i18nstats.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/i18nstats_8sh_source.html b/docs/i18nstats_8sh_source.html
new file mode 100644
index 000000000..4c2c7516c
--- /dev/null
+++ b/docs/i18nstats_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: i18nstats.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('i18nstats_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">i18nstats.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="i18nstats_8sh.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;#!/bin/bash -</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;#===============================================================================</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;#</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;# FILE: i18nstats.sh</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;#</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;# USAGE: ./i18nstats.sh</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;#</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;# DESCRIPTION:</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;#</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;# OPTIONS: ---</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;# REQUIREMENTS: ---</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;# BUGS: ---</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;# NOTES: ---</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;# AUTHOR: Antenore Gatta (tmow), antenore@simbiosi.org</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;# ORGANIZATION: Remmina</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;# CREATED: 30. 01. 19 00:05:25</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;# LICENSE: GPLv2</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# REVISION: ---</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;#===============================================================================</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;set -o nounset # Treat unset variables as an error</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;SCRIPTPATH=&quot;$( cd &quot;$(dirname &quot;$0&quot;)&quot; ; pwd -P )&quot;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;REMMINATOP=&quot;$(dirname &quot;$SCRIPTPATH&quot;)&quot;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;REMTMPDIR=&quot;$(mktemp -d)&quot;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;REMTMPFILE=&quot;$(mktemp -p &quot;$REMTMPDIR&quot;)&quot;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;trap &quot;rm -rf $REMTMPDIR&quot; HUP INT QUIT TERM EXIT</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;declare -x TRANSLATED</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;declare -x UNTRANSLATED</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;declare -x FUZZY</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;#===============================================================================</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;# FUNCTION DEFINITIONS</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;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;#-------------------------------------------------------------------------------</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;# TODO: Move these functions in an external library file</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;#-------------------------------------------------------------------------------</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;rem_varhasvalue () {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; if [[ -n ${!1:-} ]]; then</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; return 0</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; fi</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; return 1</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;} # ---------- end of function rem_varhasvalue ----------</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;rem_varisdefined () {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; typeset -p ${1:-} &gt;/dev/null 2&gt;&amp;1 # Not portable, bash specific</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;} # ---------- end of function rem_varisdefined ----------</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;rem_log () {</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; local _cmnhead=&quot;${HOSTNAME:=$(hostname)}&quot;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; local _header=&quot;&quot;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; local _message=&quot;$*&quot;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; #local _stdout=&quot;&quot;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; local _msgdate=&quot;&quot;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; case &quot;$1&quot; in</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; CRITICAL)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; _header=&quot;CRITICAL&quot;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; shift</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; ;;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; ERROR)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; _header=&quot;ERROR&quot;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; shift</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; _message=&quot;$*&quot;</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; WARNING)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; _header=&quot;WARNING&quot;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; shift</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; ;;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; DEBUG)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; _header=&quot;DEBUG&quot;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; shift</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; ;;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; INFO)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; # We can add color support adding colors in the beginning</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; # GREEN=&quot;\033[0;32m&quot;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; # RESET=&quot;\033[0m&quot;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; # _reset=${RESET:-&#39;\033[0m&#39;}</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; # _color=${_reset}</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; #_color=${GREEN}</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; _header=&quot;INFO&quot;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; shift</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ;;</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; _header=&quot;INFO&quot;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; _message=&quot;$*&quot;</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; esac</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; if ! rem_varisdefined DFORMAT ; then</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; local _dateformat=&#39;%d/%m/%y %H:%M:%S&#39;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; else</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; local _dateformat=${DFORMAT:-}</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; fi</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; _msgdate=&quot;$(date +&quot;$_dateformat&quot;)&quot;</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; # printf &quot;%s%s - [%s] - %s - %s%s\n&quot; &quot;$_color&quot; &quot;$_header&quot; &quot;$_msgdate&quot; &quot;${_cmnhead}&quot; &quot;$_message&quot; &quot;$_reset&quot;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; printf &quot;%s - [%s] - %s - %s\n&quot; &quot;$_header&quot; &quot;$_msgdate&quot; &quot;${_cmnhead}&quot; &quot;$_message&quot;</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;} # ---------- end of function rem_log ----------</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;# rem_which a poorman which function</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;# Return 0 un success or 1 in case of failure</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;rem_which () {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; local _tool=()</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; local _ret=</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; for _tool in &quot;$@&quot; ; do</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; if type &quot;$_tool&quot; &gt;/dev/null 2&gt;&amp;1 ; then</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; _ret=0</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; else</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; _ret=1</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; fi</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; case $_ret in</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; 0)</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; rem_log INFO &quot;$_tool found&quot;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; ;;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; 1)</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; rem_log ERROR &quot;$_tool not found&quot;</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; esac</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; done</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; unset _tool</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; return &quot;$_ret&quot;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;} # ---------- end of function rem_which ----------</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;</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;# MAIN SCRIPT</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;#===============================================================================</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;if ! rem_which &quot;xgettext&quot; &quot;msgmerge&quot; &quot;git&quot; ; then</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; rem_log ERROR &quot;Some tools have not been found&quot;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; exit 1</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;fi</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;cd &quot;$REMMINATOP&quot;/po || { rem_log ERROR &quot;$REMMINATOP/po not found&quot; ; exit 1 ; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;for _pofile in *po ; do</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; printf &quot;%s: &quot; &quot;$_pofile&quot; ; msgfmt --statistics &quot;$_pofile&quot;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;done &gt;| &quot;$REMTMPFILE&quot; 2&gt;&amp;1</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"> 150</span>&#160;TRANSLATED=&quot;&quot;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;FUZZY=&quot;&quot;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;UNTRANSLATED=&quot;&quot;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;MAX=0</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;while IFS= read -r _msgstat ; do</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; #rem_log INFO &quot;dealing with data: $_msgstat&quot;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; if echo &quot;$_msgstat&quot; | grep &#39;^[a-z@_A-Z]\+\.po:.*\.$&#39; &gt;/dev/null 2&gt;&amp;1 ; then</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; _translated=&quot;$(echo &quot;$_msgstat&quot; | sed -e &#39;s/\(^[a-z]\+.*: \)\([0-9]\+\)\( \)\(translated messages\?\)\(.*\.$\)/\2/g&#39;)&quot;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; _fuzzy=&quot;$(echo &quot;$_msgstat&quot; | sed -e &#39;s/\(^[a-z]\+.* \)\([0-9]\+\)\( \)\(fuzzy translations\?\)\(.*\.$\)/\2/g&#39;)&quot;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; _untranslated=&quot;$(echo &quot;$_msgstat&quot; | sed -e &#39;s/\(^[a-z]\+.* \)\([0-9]\+\)\( \)\(untranslated messages\?\)\(.*\.$\)/\2/g&#39;)&quot;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; case $_translated in</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; &#39;&#39;|*[!0-9]*)</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; _translated=0</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"> 164</span>&#160; *)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; #rem_log INFO &quot;translated: $_translated&quot;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; ;;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; esac</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; case $_untranslated in</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; &#39;&#39;|*[!0-9]*)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; _untranslated=0</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; ;;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; *)</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; #rem_log INFO &quot;untranslated: $_untranslated&quot;</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; esac</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; case $_fuzzy in</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; &#39;&#39;|*[!0-9]*)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; _fuzzy=0</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; ;;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; *)</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; #rem_log INFO &quot;fuzzy: $_fuzzy&quot;</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; esac</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; _pofile=&quot;$(echo &quot;$_msgstat&quot; | cut -d: -f1)&quot;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; #printf &quot;%s %s %s %s\n&quot; &quot;$_pofile&quot; &quot;$_translated&quot; &quot;$_fuzzy&quot; &quot;$_untranslated&quot;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; _sum=$((_translated + _fuzzy + _untranslated))</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; [[ &quot;$MAX&quot; -lt &quot;$_sum&quot; ]] &amp;&amp; MAX=&quot;$_sum&quot;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; # [[&quot;0&quot;,32],[&quot;1&quot;,46],[&quot;2&quot;,28],[&quot;3&quot;,21],[&quot;4&quot;,20],[&quot;5&quot;,13],[&quot;6&quot;,27]]</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; _tav=&quot;$(printf &quot;[\&quot;%s\&quot;,%s],&quot; &quot;$_pofile&quot; &quot;$_translated&quot;)&quot;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; TRANSLATED=&quot;${TRANSLATED}$_tav&quot;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; _tav=&quot;$(printf &quot;[\&quot;%s\&quot;,%s],&quot; &quot;$_pofile&quot; &quot;$_fuzzy&quot;)&quot;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; FUZZY=&quot;${FUZZY}$_tav&quot;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; _tav=&quot;$(printf &quot;[\&quot;%s\&quot;,%s],&quot; &quot;$_pofile&quot; &quot;$_untranslated&quot;)&quot;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; UNTRANSLATED=&quot;${UNTRANSLATED}$_tav&quot;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; unset _translated _untranslated _fuzzy _tav</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; fi</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;done &lt; &quot;$REMTMPFILE&quot;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;cat &lt;&lt; EOF &gt; &quot;$REMMINATOP&quot;/data/reports/postats.html</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; lang=&quot;en-us&quot;&gt;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; &lt;head&gt;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot; /&gt;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; &lt;title&gt;Remmina Translation Status&lt;/title&gt;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; &lt;script type=&quot;text/javascript&quot; src=&quot;chartkick.min.js&quot;&gt;&lt;/script&gt;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; &lt;script type=&quot;text/javascript&quot; src=&quot;https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.bundle.js&quot;&gt;&lt;/script&gt;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; &lt;script type=&quot;text/javascript&quot;&gt;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; Chartkick.CustomChart = function (element, dataSource, options) {</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; &lt;/script&gt;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; &lt;style type=&quot;text/css&quot;&gt;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; body {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; padding: 20px;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; margin: 0;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; font-family: &quot;Helvetica Neue&quot;, Arial, Helvetica, sans-serif;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; h1 {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; text-align: center;</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; .container-fluid {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; max-width: 900px;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; margin-left: auto;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; margin-right: auto;</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; #multiple-bar-stacked {</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; height: 750px;</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; &lt;/style&gt;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; &lt;/head&gt;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; &lt;body&gt;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; &lt;div class=&quot;container-fluid&quot;&gt;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; &lt;h1&gt;Remmina Translation Status&lt;/h1&gt;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; &lt;div id=&quot;multiple-bar-stacked&quot;&gt;&lt;/div&gt;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; &lt;script type=&quot;text/javascript&quot;&gt;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; new Chartkick.BarChart(</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; &quot;multiple-bar-stacked&quot;, [</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; { name: &quot;Translated&quot;, data: [${TRANSLATED:0:-1}] },</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; { name: &quot;Fuzzy&quot;, data: [${FUZZY:0:-1}] },</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; { name: &quot;Untranslated&quot;, data: [${UNTRANSLATED:0:-1}] }</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; ],</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; { max: ${MAX}, stacked: true }</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; &lt;/script&gt;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; &lt;!--#include virtual=&quot;howto-i18n.html&quot; --&gt;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; &lt;/div&gt;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; &lt;/body&gt;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;&lt;/html&gt;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;EOF</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="i18nstats_8sh.html">i18nstats.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/index.html b/docs/index.html
new file mode 100644
index 000000000..87a254df3
--- /dev/null
+++ b/docs/index.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Main Page</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('index.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina - The GTK+ Remote Desktop Client Documentation</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p><a href="https://liberapay.com/Remmina/donate"></a> <a href="https://gitlab.com/Remmina/Remmina/pipelines"></a> <a href="https://hosted.weblate.org/engage/remmina/?utm_source=widget"></a> <a href="https://snapcraft.io/remmina"></a></p>
+<h2>Remmina remote desktop client</h2>
+<p><em>Use other desktops remotely, from a tiny screen or large monitors.</em></p>
+<ul>
+<li>RDP, VNC, SPICE, NX, XDMCP, SSH and EXEC network protocols are supported.</li>
+<li>Written in GTK, with a port to Qt underway.</li>
+<li>Released as "remmina" (the main program) and "remmina-plugins".</li>
+</ul>
+<h3>Installation</h3>
+<p><a href="https://remmina.org/how-to-install-remmina/">How to install Remmina</a>, editable on <a href="https://gitlab.com/Remmina/Remmina/wikis/home">the wiki</a>.</p>
+<h3>Configuration</h3>
+<p>Set up everything from the graphical interface, or from $HOME/.remmina or $HOME/.config/remmina</p>
+<h3>Contributing</h3>
+<ol type="1">
+<li>Fork it</li>
+<li>Create your feature branch (<code>git checkout -b my-new-feature</code>)</li>
+<li>Commit your changes (<code>git commit -am 'Add some feature'</code>)</li>
+<li>Push to the branch (<code>git push origin my-new-feature</code>)</li>
+<li>Create a new merge request</li>
+</ol>
+<p>There are <a class="el" href="md__c_o_n_t_r_i_b_u_t_i_n_g.html">other ways</a> to contribute too, get in contact on IRC (#remmina on freenode), or send an e-mail to the <a href="https://lists.remmina.org/listinfo/users">mailing list</a>.</p>
+<h3>Donations</h3>
+<p>This is the website <a href="https://remmina.org/wp/donations/">donation page</a>. THANKS is a list of supporters.</p>
+<h3>Authors</h3>
+<p>Maintained by <a href="https://gitlab.com/antenore">Antenore Gatta</a>, <a href="https://gitlab.com/giox069">Giovanni Panozzo</a> and <a href="https://gitlab.com/ic3d">Dario Cavedon</a>. Add yourself in [AUTHORS](AUTHORS) if you have contributed.</p>
+<h3>Resources</h3>
+<ul>
+<li><a href="https://www.remmina.org/">Website</a></li>
+<li>IRC room on freenode.net, in the #remmina channel, you can also use a <a href="https://kiwiirc.com/client/irc.freenode.net/?nick=remminer|?#remmina/">web client</a>.</li>
+</ul>
+<h3>License</h3>
+<p>Copylefted libre software, licensed <a href="https://gitlab.com/Remmina/Remmina/blob/master/COPYING">GPLv2+</a>.</p>
+<p>Initially developed by <a href="https://github.com/llyzs">Vic Lee</a>. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/jquery.js b/docs/jquery.js
new file mode 100644
index 000000000..f5343eda9
--- /dev/null
+++ b/docs/jquery.js
@@ -0,0 +1,87 @@
+/*!
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4<b3;b4++){if((b9=arguments[b4])!=null){for(b2 in b9){b0=b5[b2];b1=b9[b2];if(b5===b1){continue}if(b8&&b1&&(bF.isPlainObject(b1)||(b6=bF.isArray(b1)))){if(b6){b6=false;b7=b0&&bF.isArray(b0)?b0:[]}else{b7=b0&&bF.isPlainObject(b0)?b0:{}}b5[b2]=bF.extend(b8,b7,b1)}else{if(b1!==L){b5[b2]=b1}}}}}return b5};bF.extend({noConflict:function(b0){if(bb.$===bF){bb.$=bH}if(b0&&bb.jQuery===bF){bb.jQuery=bU}return bF},isReady:false,readyWait:1,holdReady:function(b0){if(b0){bF.readyWait++}else{bF.ready(true)}},ready:function(b0){if((b0===true&&!--bF.readyWait)||(b0!==true&&!bF.isReady)){if(!av.body){return setTimeout(bF.ready,1)}bF.isReady=true;if(b0!==true&&--bF.readyWait>0){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b4<b5;){if(b6.apply(b3[b4++],b2)===false){break}}}}else{if(b0){for(b1 in b3){if(b6.call(b3[b1],b1,b3[b1])===false){break}}}else{for(;b4<b5;){if(b6.call(b3[b4],b4,b3[b4++])===false){break}}}}return b3},trim:bO?function(b0){return b0==null?"":bO.call(b0)}:function(b0){return b0==null?"":b0.toString().replace(bI,"").replace(bE,"")},makeArray:function(b3,b1){var b0=b1||[];if(b3!=null){var b2=bF.type(b3);if(b3.length==null||b2==="string"||b2==="function"||b2==="regexp"||bF.isWindow(b3)){bz.call(b0,b3)}else{bF.merge(b0,b3)}}return b0},inArray:function(b2,b3,b1){var b0;if(b3){if(bv){return bv.call(b3,b2,b1)}b0=b3.length;b1=b1?b1<0?Math.max(0,b0+b1):b1:0;for(;b1<b0;b1++){if(b1 in b3&&b3[b1]===b2){return b1}}}return -1},merge:function(b4,b2){var b3=b4.length,b1=0;if(typeof b2.length==="number"){for(var b0=b2.length;b1<b0;b1++){b4[b3++]=b2[b1]}}else{while(b2[b1]!==L){b4[b3++]=b2[b1++]}}b4.length=b3;return b4},grep:function(b1,b6,b0){var b2=[],b5;b0=!!b0;for(var b3=0,b4=b1.length;b3<b4;b3++){b5=!!b6(b1[b3],b3);if(b0!==b5){b2.push(b1[b3])}}return b2},map:function(b0,b7,b8){var b5,b6,b4=[],b2=0,b1=b0.length,b3=b0 instanceof bF||b1!==L&&typeof b1==="number"&&((b1>0&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b2<b1;b2++){b5=b7(b0[b2],b2,b8);if(b5!=null){b4[b4.length]=b5}}}else{for(b6 in b0){b5=b7(b0[b6],b6,b8);if(b5!=null){b4[b4.length]=b5}}}return b4.concat.apply([],b4)},guid:1,proxy:function(b4,b3){if(typeof b3==="string"){var b2=b4[b3];b3=b4;b4=b2}if(!bF.isFunction(b4)){return L}var b0=bK.call(arguments,2),b1=function(){return b4.apply(b3,b0.concat(bK.call(arguments)))};b1.guid=b4.guid=b4.guid||b1.guid||bF.guid++;return b1},access:function(b0,b8,b6,b2,b5,b7){var b1=b0.length;if(typeof b8==="object"){for(var b3 in b8){bF.access(b0,b3,b8[b3],b2,b5,b6)}return b0}if(b6!==L){b2=!b7&&b2&&bF.isFunction(b6);for(var b4=0;b4<b1;b4++){b5(b0[b4],b8,b2?b6.call(b0[b4],b4,b5(b0[b4],b8)):b6,b7)}return b0}return b1?b5(b0[0],b8):L},now:function(){return(new Date()).getTime()},uaMatch:function(b1){b1=b1.toLowerCase();var b0=by.exec(b1)||bR.exec(b1)||bQ.exec(b1)||b1.indexOf("compatible")<0&&bS.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}},sub:function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bF.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bF&&!(b4 instanceof b0)){b4=b0(b4)}return bF.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(av);return b0},browser:{}});bF.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(b1,b0){bx["[object "+b0+"]"]=b0.toLowerCase()});bV=bF.uaMatch(bX);if(bV.browser){bF.browser[bV.browser]=true;bF.browser.version=bV.version}if(bF.browser.webkit){bF.browser.safari=true}if(bM.test("\xA0")){bI=/^[\s\xA0]+/;bE=/[\s\xA0]+$/}bD=bF(av);if(av.addEventListener){e=function(){av.removeEventListener("DOMContentLoaded",e,false);bF.ready()}}else{if(av.attachEvent){e=function(){if(av.readyState==="complete"){av.detachEvent("onreadystatechange",e);bF.ready()}}}}function bw(){if(bF.isReady){return}try{av.documentElement.doScroll("left")}catch(b0){setTimeout(bw,1);return}bF.ready()}return bF})();var a2={};function X(e){var bv=a2[e]={},bw,bx;e=e.split(/\s+/);for(bw=0,bx=e.length;bw<bx;bw++){bv[e[bw]]=true}return bv}b.Callbacks=function(bw){bw=bw?(a2[bw]||X(bw)):{};var bB=[],bC=[],bx,by,bv,bz,bA,bE=function(bF){var bG,bJ,bI,bH,bK;for(bG=0,bJ=bF.length;bG<bJ;bG++){bI=bF[bG];bH=b.type(bI);if(bH==="array"){bE(bI)}else{if(bH==="function"){if(!bw.unique||!bD.has(bI)){bB.push(bI)}}}}},e=function(bG,bF){bF=bF||[];bx=!bw.memory||[bG,bF];by=true;bA=bv||0;bv=0;bz=bB.length;for(;bB&&bA<bz;bA++){if(bB[bA].apply(bG,bF)===false&&bw.stopOnFalse){bx=true;break}}by=false;if(bB){if(!bw.once){if(bC&&bC.length){bx=bC.shift();bD.fireWith(bx[0],bx[1])}}else{if(bx===true){bD.disable()}else{bB=[]}}}},bD={add:function(){if(bB){var bF=bB.length;bE(arguments);if(by){bz=bB.length}else{if(bx&&bx!==true){bv=bF;e(bx[0],bx[1])}}}return this},remove:function(){if(bB){var bF=arguments,bH=0,bI=bF.length;for(;bH<bI;bH++){for(var bG=0;bG<bB.length;bG++){if(bF[bH]===bB[bG]){if(by){if(bG<=bz){bz--;if(bG<=bA){bA--}}}bB.splice(bG--,1);if(bw.unique){break}}}}}return this},has:function(bG){if(bB){var bF=0,bH=bB.length;for(;bF<bH;bF++){if(bG===bB[bF]){return true}}}return false},empty:function(){bB=[];return this},disable:function(){bB=bC=bx=L;return this},disabled:function(){return !bB},lock:function(){bC=L;if(!bx||bx===true){bD.disable()}return this},locked:function(){return !bC},fireWith:function(bG,bF){if(bC){if(by){if(!bw.once){bC.push([bG,bF])}}else{if(!(bw.once&&bx)){e(bG,bF)}}}return this},fire:function(){bD.fireWith(this,arguments);return this},fired:function(){return !!bx}};return bD};var aJ=[].slice;b.extend({Deferred:function(by){var bx=b.Callbacks("once memory"),bw=b.Callbacks("once memory"),bv=b.Callbacks("memory"),e="pending",bA={resolve:bx,reject:bw,notify:bv},bC={done:bx.add,fail:bw.add,progress:bv.add,state:function(){return e},isResolved:bx.fired,isRejected:bw.fired,then:function(bE,bD,bF){bB.done(bE).fail(bD).progress(bF);return this},always:function(){bB.done.apply(bB,arguments).fail.apply(bB,arguments);return this},pipe:function(bF,bE,bD){return b.Deferred(function(bG){b.each({done:[bF,"resolve"],fail:[bE,"reject"],progress:[bD,"notify"]},function(bI,bL){var bH=bL[0],bK=bL[1],bJ;if(b.isFunction(bH)){bB[bI](function(){bJ=bH.apply(this,arguments);if(bJ&&b.isFunction(bJ.promise)){bJ.promise().then(bG.resolve,bG.reject,bG.notify)}else{bG[bK+"With"](this===bB?bG:this,[bJ])}})}else{bB[bI](bG[bK])}})}).promise()},promise:function(bE){if(bE==null){bE=bC}else{for(var bD in bC){bE[bD]=bC[bD]}}return bE}},bB=bC.promise({}),bz;for(bz in bA){bB[bz]=bA[bz].fire;bB[bz+"With"]=bA[bz].fireWith}bB.done(function(){e="resolved"},bw.disable,bv.lock).fail(function(){e="rejected"},bx.disable,bv.lock);if(by){by.call(bB,bB)}return bB},when:function(bA){var bx=aJ.call(arguments,0),bv=0,e=bx.length,bB=new Array(e),bw=e,by=e,bC=e<=1&&bA&&b.isFunction(bA.promise)?bA:b.Deferred(),bE=bC.promise();function bD(bF){return function(bG){bx[bF]=arguments.length>1?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv<e;bv++){if(bx[bv]&&bx[bv].promise&&b.isFunction(bx[bv].promise)){bx[bv].promise().then(bD(bv),bC.reject,bz(bv))}else{--bw}}if(!bw){bC.resolveWith(bC,bx)}}else{if(bC!==bA){bC.resolveWith(bC,e?[bA]:[])}}return bE}});b.support=(function(){var bJ,bI,bF,bG,bx,bE,bA,bD,bz,bK,bB,by,bw,bv=av.createElement("div"),bH=av.documentElement;bv.setAttribute("className","t");bv.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="<div "+e+"><div></div></div><table "+e+" cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="<div style='width:4px;'></div>";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA<bz;bA++){delete bB[bv[bA]]}if(!(by?S:b.isEmptyObject)(bB)){return}}}if(!by){delete e[bw].data;if(!S(e[bw])){return}}if(b.support.deleteExpando||!e.setInterval){delete e[bw]}else{e[bw]=null}if(bD){if(b.support.deleteExpando){delete bx[bC]}else{if(bx.removeAttribute){bx.removeAttribute(bC)}else{bx[bC]=null}}}},_data:function(bv,e,bw){return b.data(bv,e,bw,true)},acceptData:function(bv){if(bv.nodeName){var e=b.noData[bv.nodeName.toLowerCase()];if(e){return !(e===true||bv.getAttribute("classid")!==e)}}return true}});b.fn.extend({data:function(by,bA){var bB,e,bw,bz=null;if(typeof by==="undefined"){if(this.length){bz=b.data(this[0]);if(this[0].nodeType===1&&!b._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var bx=0,bv=e.length;bx<bv;bx++){bw=e[bx].name;if(bw.indexOf("data-")===0){bw=b.camelCase(bw.substring(5));a5(this[0],bw,bz[bw])}}b._data(this[0],"parsedAttrs",true)}}return bz}else{if(typeof by==="object"){return this.each(function(){b.data(this,by)})}}bB=by.split(".");bB[1]=bB[1]?"."+bB[1]:"";if(bA===L){bz=this.triggerHandler("getData"+bB[1]+"!",[bB[0]]);if(bz===L&&this.length){bz=b.data(this[0],by);bz=a5(this[0],by,bz)}return bz===L&&bB[1]?this.data(bB[0]):bz}else{return this.each(function(){var bC=b(this),bD=[bB[0],bA];bC.triggerHandler("setData"+bB[1]+"!",bD);b.data(this,by,bA);bC.triggerHandler("changeData"+bB[1]+"!",bD)})}},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function a5(bx,bw,by){if(by===L&&bx.nodeType===1){var bv="data-"+bw.replace(aA,"-$1").toLowerCase();by=bx.getAttribute(bv);if(typeof by==="string"){try{by=by==="true"?true:by==="false"?false:by==="null"?null:b.isNumeric(by)?parseFloat(by):aS.test(by)?b.parseJSON(by):by}catch(bz){}b.data(bx,bw,by)}else{by=L}}return by}function S(bv){for(var e in bv){if(e==="data"&&b.isEmptyObject(bv[e])){continue}if(e!=="toJSON"){return false}}return true}function bi(by,bx,bA){var bw=bx+"defer",bv=bx+"queue",e=bx+"mark",bz=b._data(by,bw);if(bz&&(bA==="queue"||!b._data(by,bv))&&(bA==="mark"||!b._data(by,e))){setTimeout(function(){if(!b._data(by,bv)&&!b._data(by,e)){b.removeData(by,bw,true);bz.fire()}},0)}}b.extend({_mark:function(bv,e){if(bv){e=(e||"fx")+"mark";b._data(bv,e,(b._data(bv,e)||0)+1)}},_unmark:function(by,bx,bv){if(by!==true){bv=bx;bx=by;by=false}if(bx){bv=bv||"fx";var e=bv+"mark",bw=by?0:((b._data(bx,e)||1)-1);if(bw){b._data(bx,e,bw)}else{b.removeData(bx,e,true);bi(bx,bv,"mark")}}},queue:function(bv,e,bx){var bw;if(bv){e=(e||"fx")+"queue";bw=b._data(bv,e);if(bx){if(!bw||b.isArray(bx)){bw=b._data(bv,e,b.makeArray(bx))}else{bw.push(bx)}}return bw||[]}},dequeue:function(by,bx){bx=bx||"fx";var bv=b.queue(by,bx),bw=bv.shift(),e={};if(bw==="inprogress"){bw=bv.shift()}if(bw){if(bx==="fx"){bv.unshift("inprogress")}b._data(by,bx+".run",e);bw.call(by,function(){b.dequeue(by,bx)},e)}if(!bv.length){b.removeData(by,bx+"queue "+bx+".run",true);bi(by,bx,"queue")}}});b.fn.extend({queue:function(e,bv){if(typeof e!=="string"){bv=e;e="fx"}if(bv===L){return b.queue(this[0],e)}return this.each(function(){var bw=b.queue(this,e,bv);if(e==="fx"&&bw[0]!=="inprogress"){b.dequeue(this,e)}})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(bv,e){bv=b.fx?b.fx.speeds[bv]||bv:bv;e=e||"fx";return this.queue(e,function(bx,bw){var by=setTimeout(bx,bv);bw.stop=function(){clearTimeout(by)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(bD,bw){if(typeof bD!=="string"){bw=bD;bD=L}bD=bD||"fx";var e=b.Deferred(),bv=this,by=bv.length,bB=1,bz=bD+"defer",bA=bD+"queue",bC=bD+"mark",bx;function bE(){if(!(--bB)){e.resolveWith(bv,[bv])}}while(by--){if((bx=b.data(bv[by],bz,L,true)||(b.data(bv[by],bA,L,true)||b.data(bv[by],bC,L,true))&&b.data(bv[by],bz,b.Callbacks("once memory"),true))){bB++;bx.add(bE)}}bE();return e.promise()}});var aP=/[\n\t\r]/g,af=/\s+/,aU=/\r/g,g=/^(?:button|input)$/i,D=/^(?:button|input|object|select|textarea)$/i,l=/^a(?:rea)?$/i,ao=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,F=b.support.getSetAttribute,be,aY,aF;b.fn.extend({attr:function(e,bv){return b.access(this,e,bv,true,b.attr)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,bv){return b.access(this,e,bv,true,b.prop)},removeProp:function(e){e=b.propFix[e]||e;return this.each(function(){try{this[e]=L;delete this[e]}catch(bv){}})},addClass:function(by){var bA,bw,bv,bx,bz,bB,e;if(b.isFunction(by)){return this.each(function(bC){b(this).addClass(by.call(this,bC,this.className))})}if(by&&typeof by==="string"){bA=by.split(af);for(bw=0,bv=this.length;bw<bv;bw++){bx=this[bw];if(bx.nodeType===1){if(!bx.className&&bA.length===1){bx.className=by}else{bz=" "+bx.className+" ";for(bB=0,e=bA.length;bB<e;bB++){if(!~bz.indexOf(" "+bA[bB]+" ")){bz+=bA[bB]+" "}}bx.className=b.trim(bz)}}}}return this},removeClass:function(bz){var bA,bw,bv,by,bx,bB,e;if(b.isFunction(bz)){return this.each(function(bC){b(this).removeClass(bz.call(this,bC,this.className))})}if((bz&&typeof bz==="string")||bz===L){bA=(bz||"").split(af);for(bw=0,bv=this.length;bw<bv;bw++){by=this[bw];if(by.nodeType===1&&by.className){if(bz){bx=(" "+by.className+" ").replace(aP," ");for(bB=0,e=bA.length;bB<e;bB++){bx=bx.replace(" "+bA[bB]+" "," ")}by.className=b.trim(bx)}else{by.className=""}}}}return this},toggleClass:function(bx,bv){var bw=typeof bx,e=typeof bv==="boolean";if(b.isFunction(bx)){return this.each(function(by){b(this).toggleClass(bx.call(this,by,this.className,bv),bv)})}return this.each(function(){if(bw==="string"){var bA,bz=0,by=b(this),bB=bv,bC=bx.split(af);while((bA=bC[bz++])){bB=e?bB:!by.hasClass(bA);by[bB?"addClass":"removeClass"](bA)}}else{if(bw==="undefined"||bw==="boolean"){if(this.className){b._data(this,"__className__",this.className)}this.className=this.className||bx===false?"":b._data(this,"__className__")||""}}})},hasClass:function(e){var bx=" "+e+" ",bw=0,bv=this.length;for(;bw<bv;bw++){if(this[bw].nodeType===1&&(" "+this[bw].className+" ").replace(aP," ").indexOf(bx)>-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv<bz;bv++){bx=bC[bv];if(bx.selected&&(b.support.optDisabled?!bx.disabled:bx.getAttribute("disabled")===null)&&(!bx.parentNode.disabled||!b.nodeName(bx.parentNode,"optgroup"))){bA=b(bx).val();if(bw){return bA}bB.push(bA)}}if(bw&&!bB.length&&bC.length){return b(bC[by]).val()}return bB},set:function(bv,bw){var e=b.makeArray(bw);b(bv).find("option").each(function(){this.selected=b.inArray(b(this).val(),e)>=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw<e;bw++){bv=bA[bw];if(bv){by=b.propFix[bv]||bv;b.attr(bx,bv,"");bx.removeAttribute(F?bv:by);if(ao.test(bv)&&by in bx){bx[by]=false}}}}},attrHooks:{type:{set:function(e,bv){if(g.test(e.nodeName)&&e.parentNode){b.error("type property can't be changed")}else{if(!b.support.radioValue&&bv==="radio"&&b.nodeName(e,"input")){var bw=e.value;e.setAttribute("type",bv);if(bw){e.value=bw}return bv}}}},value:{get:function(bv,e){if(be&&b.nodeName(bv,"button")){return be.get(bv,e)}return e in bv?bv.value:null},set:function(bv,bw,e){if(be&&b.nodeName(bv,"button")){return be.set(bv,bw,e)}bv.value=bw}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(bz,bx,bA){var bw,e,by,bv=bz.nodeType;if(!bz||bv===3||bv===8||bv===2){return}by=bv!==1||!b.isXMLDoc(bz);if(by){bx=b.propFix[bx]||bx;e=b.propHooks[bx]}if(bA!==L){if(e&&"set" in e&&(bw=e.set(bz,bA,bx))!==L){return bw}else{return(bz[bx]=bA)}}else{if(e&&"get" in e&&(bw=e.get(bz,bx))!==null){return bw}else{return bz[bx]}}},propHooks:{tabIndex:{get:function(bv){var e=bv.getAttributeNode("tabindex");return e&&e.specified?parseInt(e.value,10):D.test(bv.nodeName)||l.test(bv.nodeName)&&bv.href?0:L}}}});b.attrHooks.tabindex=b.propHooks.tabIndex;aY={get:function(bv,e){var bx,bw=b.prop(bv,e);return bw===true||typeof bw!=="boolean"&&(bx=bv.getAttributeNode(e))&&bx.nodeValue!==false?e.toLowerCase():L},set:function(bv,bx,e){var bw;if(bx===false){b.removeAttr(bv,e)}else{bw=b.propFix[e]||e;if(bw in bv){bv[bw]=true}bv.setAttribute(e,e.toLowerCase())}return e}};if(!F){aF={name:true,id:true};be=b.valHooks.button={get:function(bw,bv){var e;e=bw.getAttributeNode(bv);return e&&(aF[bv]?e.nodeValue!=="":e.specified)?e.nodeValue:L},set:function(bw,bx,bv){var e=bw.getAttributeNode(bv);if(!e){e=av.createAttribute(bv);bw.setAttributeNode(e)}return(e.nodeValue=bx+"")}};b.attrHooks.tabindex.set=be.set;b.each(["width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{set:function(bw,bx){if(bx===""){bw.setAttribute(e,"auto");return bx}}})});b.attrHooks.contenteditable={get:be.get,set:function(bv,bw,e){if(bw===""){bw="false"}be.set(bv,bw,e)}}}if(!b.support.hrefNormalized){b.each(["href","src","width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{get:function(bx){var bw=bx.getAttribute(e,2);return bw===null?L:bw}})})}if(!b.support.style){b.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||L},set:function(e,bv){return(e.style.cssText=""+bv)}}}if(!b.support.optSelected){b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(bv){var e=bv.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}})}if(!b.support.enctype){b.propFix.enctype="encoding"}if(!b.support.checkOn){b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}})}b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,bv){if(b.isArray(bv)){return(e.checked=b.inArray(b(e).val(),bv)>=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI<bC.length;bI++){bH=n.exec(bC[bI])||[];bF=bH[1];e=(bH[2]||"").split(".").sort();bE=b.event.special[bF]||{};bF=(by?bE.delegateType:bE.bindType)||bF;bE=b.event.special[bF]||{};bG=b.extend({type:bF,origType:bH[1],data:bA,handler:bJ,guid:bJ.guid,selector:by,quick:Y(by),namespace:e.join(".")},bv);bw=bK[bF];if(!bw){bw=bK[bF]=[];bw.delegateCount=0;if(!bE.setup||bE.setup.call(bx,bA,e,bB)===false){if(bx.addEventListener){bx.addEventListener(bF,bB,false)}else{if(bx.attachEvent){bx.attachEvent("on"+bF,bB)}}}}if(bE.add){bE.add.call(bx,bG);if(!bG.handler.guid){bG.handler.guid=bJ.guid}}if(by){bw.splice(bw.delegateCount++,0,bG)}else{bw.push(bG)}b.event.global[bF]=true}bx=null},global:{},remove:function(bJ,bE,bv,bH,bB){var bI=b.hasData(bJ)&&b._data(bJ),bF,bx,bz,bL,bC,bA,bG,bw,by,bK,bD,e;if(!bI||!(bw=bI.events)){return}bE=b.trim(bt(bE||"")).split(" ");for(bF=0;bF<bE.length;bF++){bx=n.exec(bE[bF])||[];bz=bL=bx[1];bC=bx[2];if(!bz){for(bz in bw){b.event.remove(bJ,bz+bE[bF],bv,bH,true)}continue}by=b.event.special[bz]||{};bz=(bH?by.delegateType:by.bindType)||bz;bD=bw[bz]||[];bA=bD.length;bC=bC?new RegExp("(^|\\.)"+bC.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(bG=0;bG<bD.length;bG++){e=bD[bG];if((bB||bL===e.origType)&&(!bv||bv.guid===e.guid)&&(!bC||bC.test(e.namespace))&&(!bH||bH===e.selector||bH==="**"&&e.selector)){bD.splice(bG--,1);if(e.selector){bD.delegateCount--}if(by.remove){by.remove.call(bJ,e)}}}if(bD.length===0&&bA!==bD.length){if(!by.teardown||by.teardown.call(bJ,bC)===false){b.removeEvent(bJ,bz,bI.handle)}delete bw[bz]}}if(b.isEmptyObject(bw)){bK=bI.handle;if(bK){bK.elem=null}b.removeData(bJ,["events","handle"],true)}},customEvent:{getData:true,setData:true,changeData:true},trigger:function(bv,bD,bA,bJ){if(bA&&(bA.nodeType===3||bA.nodeType===8)){return}var bG=bv.type||bv,bx=[],e,bw,bC,bH,bz,by,bF,bE,bB,bI;if(T.test(bG+b.event.triggered)){return}if(bG.indexOf("!")>=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bC<bB.length&&!bv.isPropagationStopped();bC++){bH=bB[bC][0];bv.type=bB[bC][1];bE=(b._data(bH,"events")||{})[bv.type]&&b._data(bH,"handle");if(bE){bE.apply(bH,bD)}bE=by&&bH[by];if(bE&&b.acceptData(bH)&&bE.apply(bH,bD)===false){bv.preventDefault()}}bv.type=bG;if(!bJ&&!bv.isDefaultPrevented()){if((!bF._default||bF._default.apply(bA.ownerDocument,bD)===false)&&!(bG==="click"&&b.nodeName(bA,"a"))&&b.acceptData(bA)){if(by&&bA[bG]&&((bG!=="focus"&&bG!=="blur")||bv.target.offsetWidth!==0)&&!b.isWindow(bA)){bz=bA[by];if(bz){bA[by]=null}b.event.triggered=bG;bA[bG]();b.event.triggered=L;if(bz){bA[by]=bz}}}}return bv.result},dispatch:function(e){e=b.event.fix(e||bb.event);var bz=((b._data(this,"events")||{})[e.type]||[]),bA=bz.delegateCount,bG=[].slice.call(arguments,0),by=!e.exclusive&&!e.namespace,bH=[],bC,bB,bK,bx,bF,bE,bv,bD,bI,bw,bJ;bG[0]=e;e.delegateTarget=this;if(bA&&!e.target.disabled&&!(e.button&&e.type==="click")){bx=b(this);bx.context=this.ownerDocument||this;for(bK=e.target;bK!=this;bK=bK.parentNode||this){bE={};bD=[];bx[0]=bK;for(bC=0;bC<bA;bC++){bI=bz[bC];bw=bI.selector;if(bE[bw]===L){bE[bw]=(bI.quick?j(bK,bI.quick):bx.is(bw))}if(bE[bw]){bD.push(bI)}}if(bD.length){bH.push({elem:bK,matches:bD})}}}if(bz.length>bA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC<bH.length&&!e.isPropagationStopped();bC++){bv=bH[bC];e.currentTarget=bv.elem;for(bB=0;bB<bv.matches.length&&!e.isImmediatePropagationStopped();bB++){bI=bv.matches[bB];if(by||(!e.namespace&&!bI.namespace)||e.namespace_re&&e.namespace_re.test(bI.namespace)){e.data=bI.data;e.handleObj=bI;bF=((b.event.special[bI.origType]||{}).handle||bI.handler).apply(bv.elem,bG);if(bF!==L){e.result=bF;if(bF===false){e.preventDefault();e.stopPropagation()}}}}}return e.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(bv,e){if(bv.which==null){bv.which=e.charCode!=null?e.charCode:e.keyCode}return bv}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(bx,bw){var by,bz,e,bv=bw.button,bA=bw.fromElement;if(bx.pageX==null&&bw.clientX!=null){by=bx.target.ownerDocument||av;bz=by.documentElement;e=by.body;bx.pageX=bw.clientX+(bz&&bz.scrollLeft||e&&e.scrollLeft||0)-(bz&&bz.clientLeft||e&&e.clientLeft||0);bx.pageY=bw.clientY+(bz&&bz.scrollTop||e&&e.scrollTop||0)-(bz&&bz.clientTop||e&&e.clientTop||0)}if(!bx.relatedTarget&&bA){bx.relatedTarget=bA===bx.target?bw.toElement:bA}if(!bx.which&&bv!==L){bx.which=(bv&1?1:(bv&2?3:(bv&4?2:0)))}return bx}},fix:function(bw){if(bw[b.expando]){return bw}var bv,bz,e=bw,bx=b.event.fixHooks[bw.type]||{},by=bx.props?this.props.concat(bx.props):this.props;bw=b.Event(e);for(bv=by.length;bv;){bz=by[--bv];bw[bz]=e[bz]}if(!bw.target){bw.target=e.srcElement||av}if(bw.target.nodeType===3){bw.target=bw.target.parentNode}if(bw.metaKey===L){bw.metaKey=bw.ctrlKey}return bx.filter?bx.filter(bw,e):bw},special:{ready:{setup:b.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(bw,bv,e){if(b.isWindow(this)){this.onbeforeunload=e}},teardown:function(bv,e){if(this.onbeforeunload===e){this.onbeforeunload=null}}}},simulate:function(bw,by,bx,bv){var bz=b.extend(new b.Event(),bx,{type:bw,isSimulated:true,originalEvent:{}});if(bv){b.event.trigger(bz,null,by)}else{b.event.dispatch.call(by,bz)}if(bz.isDefaultPrevented()){bx.preventDefault()}}};b.event.handle=b.event.dispatch;b.removeEvent=av.removeEventListener?function(bv,e,bw){if(bv.removeEventListener){bv.removeEventListener(e,bw,false)}}:function(bv,e,bw){if(bv.detachEvent){bv.detachEvent("on"+e,bw)}};b.Event=function(bv,e){if(!(this instanceof b.Event)){return new b.Event(bv,e)}if(bv&&bv.type){this.originalEvent=bv;this.type=bv.type;this.isDefaultPrevented=(bv.defaultPrevented||bv.returnValue===false||bv.getPreventDefault&&bv.getPreventDefault())?i:bk}else{this.type=bv}if(e){b.extend(this,e)}this.timeStamp=bv&&bv.timeStamp||b.now();this[b.expando]=true};function bk(){return false}function i(){return true}b.Event.prototype={preventDefault:function(){this.isDefaultPrevented=i;var bv=this.originalEvent;if(!bv){return}if(bv.preventDefault){bv.preventDefault()}else{bv.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=i;var bv=this.originalEvent;if(!bv){return}if(bv.stopPropagation){bv.stopPropagation()}bv.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=i;this.stopPropagation()},isDefaultPrevented:bk,isPropagationStopped:bk,isImmediatePropagationStopped:bk};b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(bv,e){b.event.special[bv]={delegateType:e,bindType:e,handle:function(bz){var bB=this,bA=bz.relatedTarget,by=bz.handleObj,bw=by.selector,bx;if(!bA||(bA!==bB&&!b.contains(bB,bA))){bz.type=by.origType;bx=by.handler.apply(this,arguments);bz.type=e}return bx}}});if(!b.support.submitBubbles){b.event.special.submit={setup:function(){if(b.nodeName(this,"form")){return false}b.event.add(this,"click._submit keypress._submit",function(bx){var bw=bx.target,bv=b.nodeName(bw,"input")||b.nodeName(bw,"button")?bw.form:L;if(bv&&!bv._submit_attached){b.event.add(bv,"submit._submit",function(e){if(this.parentNode&&!e.isTrigger){b.event.simulate("submit",this.parentNode,e,true)}});bv._submit_attached=true}})},teardown:function(){if(b.nodeName(this,"form")){return false}b.event.remove(this,"._submit")}}}if(!b.support.changeBubbles){b.event.special.change={setup:function(){if(bd.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){b.event.add(this,"propertychange._change",function(e){if(e.originalEvent.propertyName==="checked"){this._just_changed=true}});b.event.add(this,"click._change",function(e){if(this._just_changed&&!e.isTrigger){this._just_changed=false;b.event.simulate("change",this,e,true)}})}return false}b.event.add(this,"beforeactivate._change",function(bw){var bv=bw.target;if(bd.test(bv.nodeName)&&!bv._change_attached){b.event.add(bv,"change._change",function(e){if(this.parentNode&&!e.isSimulated&&!e.isTrigger){b.event.simulate("change",this.parentNode,e,true)}});bv._change_attached=true}})},handle:function(bv){var e=bv.target;if(this!==e||bv.isSimulated||bv.isTrigger||(e.type!=="radio"&&e.type!=="checkbox")){return bv.handleObj.handler.apply(this,arguments)}},teardown:function(){b.event.remove(this,"._change");return bd.test(this.nodeName)}}}if(!b.support.focusinBubbles){b.each({focus:"focusin",blur:"focusout"},function(bx,e){var bv=0,bw=function(by){b.event.simulate(e,by.target,b.event.fix(by),true)};b.event.special[e]={setup:function(){if(bv++===0){av.addEventListener(bx,bw,true)}},teardown:function(){if(--bv===0){av.removeEventListener(bx,bw,true)}}}})}b.fn.extend({on:function(bw,e,bz,by,bv){var bA,bx;if(typeof bw==="object"){if(typeof e!=="string"){bz=e;e=L}for(bx in bw){this.on(bx,e,bz,bw[bx],bv)}return this}if(bz==null&&by==null){by=e;bz=e=L}else{if(by==null){if(typeof e==="string"){by=bz;bz=L}else{by=bz;bz=e;e=L}}}if(by===false){by=bk}else{if(!by){return this}}if(bv===1){bA=by;by=function(bB){b().off(bB);return bA.apply(this,arguments)};by.guid=bA.guid||(bA.guid=b.guid++)}return this.each(function(){b.event.add(this,bw,by,bz,e)})},one:function(bv,e,bx,bw){return this.on.call(this,bv,e,bx,bw,1)},off:function(bw,e,by){if(bw&&bw.preventDefault&&bw.handleObj){var bv=bw.handleObj;b(bw.delegateTarget).off(bv.namespace?bv.type+"."+bv.namespace:bv.type,bv.selector,bv.handler);return this}if(typeof bw==="object"){for(var bx in bw){this.off(bx,e,bw[bx])}return this}if(e===false||typeof e==="function"){by=e;e=L}if(by===false){by=bk}return this.each(function(){b.event.remove(this,bw,by,e)})},bind:function(e,bw,bv){return this.on(e,null,bw,bv)},unbind:function(e,bv){return this.off(e,null,bv)},live:function(e,bw,bv){b(this.context).on(e,this.selector,bw,bv);return this},die:function(e,bv){b(this.context).off(e,this.selector||"**",bv);return this},delegate:function(e,bv,bx,bw){return this.on(bv,e,bx,bw)},undelegate:function(e,bv,bw){return arguments.length==1?this.off(e,"**"):this.off(bv,e,bw)},trigger:function(e,bv){return this.each(function(){b.event.trigger(e,bv,this)})},triggerHandler:function(e,bv){if(this[0]){return b.event.trigger(e,bv,this[0],true)}},toggle:function(bx){var bv=arguments,e=bx.guid||b.guid++,bw=0,by=function(bz){var bA=(b._data(this,"lastToggle"+bx.guid)||0)%bw;b._data(this,"lastToggle"+bx.guid,bA+1);bz.preventDefault();return bv[bA].apply(this,arguments)||false};by.guid=e;while(bw<bv.length){bv[bw++].guid=e}return this.click(by)},hover:function(e,bv){return this.mouseenter(e).mouseleave(bv||e)}});b.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(bv,e){b.fn[e]=function(bx,bw){if(bw==null){bw=bx;bx=null}return arguments.length>0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
+/*!
+ * Sizzle CSS Selector Engine
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * More information: http://sizzlejs.com/
+ */
+(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e<bR.length;e++){if(bR[e]===bR[e-1]){bR.splice(e--,1)}}}}return bR};by.matches=function(e,bR){return by(e,null,null,bR)};by.matchesSelector=function(e,bR){return by(bR,null,null,[e]).length>0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS<bU;bS++){bV=bE.order[bS];if((bT=bE.leftMatch[bV].exec(bX))){bR=bT[1];bT.splice(1,1);if(bR.substr(bR.length-1)!=="\\"){bT[1]=(bT[1]||"").replace(bK,"");bW=bE.find[bV](bT,e,bY);if(bW!=null){bX=bX.replace(bE.match[bV],"");break}}}}if(!bW){bW=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:bW,expr:bX}};by.filter=function(b1,b0,b4,bU){var bW,e,bZ,b6,b3,bR,bT,bV,b2,bS=b1,b5=[],bY=b0,bX=b0&&b0[0]&&by.isXML(b0[0]);while(b1&&b0.length){for(bZ in bE.filter){if((bW=bE.leftMatch[bZ].exec(b1))!=null&&bW[2]){bR=bE.filter[bZ];bT=bW[1];e=false;bW.splice(1,1);if(bT.substr(bT.length-1)==="\\"){continue}if(bY===b5){b5=[]}if(bE.preFilter[bZ]){bW=bE.preFilter[bZ](bW,bY,b4,b5,bU,bX);if(!bW){e=b6=true}else{if(bW===true){continue}}}if(bW){for(bV=0;(b3=bY[bV])!=null;bV++){if(b3){b6=bR(b3,bW,bV,bY);b2=bU^b6;if(b4&&b6!=null){if(b2){e=true}else{bY[bV]=false}}else{if(b2){b5.push(b3);e=true}}}}}if(b6!==L){if(!b4){bY=b5}b1=b1.replace(bE.match[bZ],"");if(!e){return[]}break}}}if(b1===bS){if(e==null){by.error(b1)}else{break}}bS=b1}return bY};by.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var bw=by.getText=function(bU){var bS,bT,e=bU.nodeType,bR="";if(e){if(e===1||e===9){if(typeof bU.textContent==="string"){return bU.textContent}else{if(typeof bU.innerText==="string"){return bU.innerText.replace(bO,"")}else{for(bU=bU.firstChild;bU;bU=bU.nextSibling){bR+=bw(bU)}}}}else{if(e===3||e===4){return bU.nodeValue}}}else{for(bS=0;(bT=bU[bS]);bS++){if(bT.nodeType!==8){bR+=bw(bT)}}}return bR};var bE=by.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(bW,bR){var bT=typeof bR==="string",bV=bT&&!bQ.test(bR),bX=bT&&!bV;if(bV){bR=bR.toLowerCase()}for(var bS=0,e=bW.length,bU;bS<e;bS++){if((bU=bW[bS])){while((bU=bU.previousSibling)&&bU.nodeType!==1){}bW[bS]=bX||bU&&bU.nodeName.toLowerCase()===bR?bU||false:bU===bR}}if(bX){by.filter(bR,bW,true)}},">":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS<e;bS++){bV=bW[bS];if(bV){var bT=bV.parentNode;bW[bS]=bT.nodeName.toLowerCase()===bR?bT:false}}}else{for(;bS<e;bS++){bV=bW[bS];if(bV){bW[bS]=bU?bV.parentNode:bV.parentNode===bR}}if(bU){by.filter(bR,bW,true)}}},"":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("parentNode",bR,bS,bT,bU,bV)},"~":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("previousSibling",bR,bS,bT,bU,bV)}},find:{ID:function(bR,bS,bT){if(typeof bS.getElementById!=="undefined"&&!bT){var e=bS.getElementById(bR[1]);return e&&e.parentNode?[e]:[]}},NAME:function(bS,bV){if(typeof bV.getElementsByName!=="undefined"){var bR=[],bU=bV.getElementsByName(bS[1]);for(var bT=0,e=bU.length;bT<e;bT++){if(bU[bT].getAttribute("name")===bS[1]){bR.push(bU[bT])}}return bR.length===0?null:bR}},TAG:function(e,bR){if(typeof bR.getElementsByTagName!=="undefined"){return bR.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(bT,bR,bS,e,bW,bX){bT=" "+bT[1].replace(bK,"")+" ";if(bX){return bT}for(var bU=0,bV;(bV=bR[bU])!=null;bU++){if(bV){if(bW^(bV.className&&(" "+bV.className+" ").replace(/[\t\n\r]/g," ").indexOf(bT)>=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bR<e[3]-0},gt:function(bS,bR,e){return bR>e[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV<bU;bV++){if(bT[bV]===bS){return false}}return true}else{by.error(e)}}}},CHILD:function(bS,bU){var bT,b0,bW,bZ,e,bV,bY,bX=bU[1],bR=bS;switch(bX){case"only":case"first":while((bR=bR.previousSibling)){if(bR.nodeType===1){return false}}if(bX==="first"){return true}bR=bS;case"last":while((bR=bR.nextSibling)){if(bR.nodeType===1){return false}}return true;case"nth":bT=bU[2];b0=bU[3];if(bT===1&&b0===0){return true}bW=bU[0];bZ=bS.parentNode;if(bZ&&(bZ[bC]!==bW||!bS.nodeIndex)){bV=0;for(bR=bZ.firstChild;bR;bR=bR.nextSibling){if(bR.nodeType===1){bR.nodeIndex=++bV}}bZ[bC]=bW}bY=bS.nodeIndex-b0;if(bT===0){return bY===0}else{return(bY%bT===0&&bY/bT>=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS<e;bS++){bR.push(bU[bS])}}else{for(;bU[bS];bS++){bR.push(bU[bS])}}}return bR}}var bJ,bG;if(av.documentElement.compareDocumentPosition){bJ=function(bR,e){if(bR===e){bB=true;return 0}if(!bR.compareDocumentPosition||!e.compareDocumentPosition){return bR.compareDocumentPosition?-1:1}return bR.compareDocumentPosition(e)&4?-1:1}}else{bJ=function(bY,bX){if(bY===bX){bB=true;return 0}else{if(bY.sourceIndex&&bX.sourceIndex){return bY.sourceIndex-bX.sourceIndex}}var bV,bR,bS=[],e=[],bU=bY.parentNode,bW=bX.parentNode,bZ=bU;if(bU===bW){return bG(bY,bX)}else{if(!bU){return -1}else{if(!bW){return 1}}}while(bZ){bS.unshift(bZ);bZ=bZ.parentNode}bZ=bW;while(bZ){e.unshift(bZ);bZ=bZ.parentNode}bV=bS.length;bR=e.length;for(var bT=0;bT<bV&&bT<bR;bT++){if(bS[bT]!==e[bT]){return bG(bS[bT],e[bT])}}return bT===bV?bG(bY,e[bT],-1):bG(bS[bT],bX,1)};bG=function(bR,e,bS){if(bR===e){return bS}var bT=bR.nextSibling;while(bT){if(bT===e){return -1}bT=bT.nextSibling}return 1}}(function(){var bR=av.createElement("div"),bS="script"+(new Date()).getTime(),e=av.documentElement;bR.innerHTML="<a name='"+bS+"'/>";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="<p class='TEST'></p>";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1&&!bY){e[bC]=bV;e.sizset=bT}if(e.nodeName.toLowerCase()===bW){bU=e;break}e=e[bR]}bZ[bT]=bU}}}function bN(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1){if(!bY){e[bC]=bV;e.sizset=bT}if(typeof bW!=="string"){if(e===bW){bU=true;break}}else{if(by.filter(bW,[e]).length>0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT<bR;bT++){by(bS,bY[bT],bX,bW)}return by.filter(bU,bX)};by.attr=b.attr;by.selectors.attrMap={};b.find=by;b.expr=by.selectors;b.expr[":"]=b.expr.filters;b.unique=by.uniqueSort;b.text=by.getText;b.isXMLDoc=by.isXML;b.contains=by.contains})();var ab=/Until$/,aq=/^(?:parents|prevUntil|prevAll)/,a9=/,/,bp=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,H=b.expr.match.POS,ay={children:true,contents:true,next:true,prev:true};b.fn.extend({find:function(e){var bw=this,by,bv;if(typeof e!=="string"){return b(e).filter(function(){for(by=0,bv=bw.length;by<bv;by++){if(b.contains(bw[by],this)){return true}}})}var bx=this.pushStack("","find",e),bA,bB,bz;for(by=0,bv=this.length;by<bv;by++){bA=bx.length;b.find(e,this[by],bx);if(by>0){for(bB=bA;bB<bx.length;bB++){for(bz=0;bz<bA;bz++){if(bx[bz]===bx[bB]){bx.splice(bB--,1);break}}}}}return bx},has:function(bv){var e=b(bv);return this.filter(function(){for(var bx=0,bw=e.length;bx<bw;bx++){if(b.contains(this,e[bx])){return true}}})},not:function(e){return this.pushStack(aG(this,e,false),"not",e)},filter:function(e){return this.pushStack(aG(this,e,true),"filter",e)},is:function(e){return !!e&&(typeof e==="string"?H.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw<by.length;bw++){if(b(bz).is(by[bw])){bv.push({selector:by[bw],elem:bz,level:bB})}}bz=bz.parentNode;bB++}return bv}var bA=H.test(by)||typeof by!=="string"?b(by,bx||this.context):0;for(bw=0,e=this.length;bw<e;bw++){bz=this[bw];while(bz){if(bA?bA.index(bz)>-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/<tbody/i,W=/<|&#?\w+;/,ae=/<(?:script|style)/i,O=/<(?:script|object|embed|option|style)/i,ah=new RegExp("<(?:"+aR+")","i"),o=/checked\s*(?:[^=]|=\s*.checked.)/i,bm=/\/(java|ecma)script/i,aN=/^\s*<!(?:\[CDATA\[|\-\-)/,ax={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div<div>","</div>"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1></$2>");try{for(var bw=0,bv=this.length;bw<bv;bw++){if(this[bw].nodeType===1){b.cleanData(this[bw].getElementsByTagName("*"));this[bw].innerHTML=bx}}}catch(by){this.empty().append(bx)}}else{if(b.isFunction(bx)){this.each(function(bz){var e=b(this);e.html(bx.call(this,bz,e.html()))})}else{this.empty().append(bx)}}}return this},replaceWith:function(e){if(this[0]&&this[0].parentNode){if(b.isFunction(e)){return this.each(function(bx){var bw=b(this),bv=bw.html();bw.replaceWith(e.call(this,bx,bv))})}if(typeof e!=="string"){e=b(e).detach()}return this.each(function(){var bw=this.nextSibling,bv=this.parentNode;b(this).remove();if(bw){b(bw).before(e)}else{b(bv).append(e)}})}else{return this.length?this.pushStack(b(b.isFunction(e)?e():e),"replaceWith",e):this}},detach:function(e){return this.remove(e,true)},domManip:function(bB,bF,bE){var bx,by,bA,bD,bC=bB[0],bv=[];if(!b.support.checkClone&&arguments.length===3&&typeof bC==="string"&&o.test(bC)){return this.each(function(){b(this).domManip(bB,bF,bE,true)})}if(b.isFunction(bC)){return this.each(function(bH){var bG=b(this);bB[0]=bC.call(this,bH,bF?bG.html():L);bG.domManip(bB,bF,bE)})}if(this[0]){bD=bC&&bC.parentNode;if(b.support.parentNode&&bD&&bD.nodeType===11&&bD.childNodes.length===this.length){bx={fragment:bD}}else{bx=b.buildFragment(bB,this,bv)}bA=bx.fragment;if(bA.childNodes.length===1){by=bA=bA.firstChild}else{by=bA.firstChild}if(by){bF=bF&&b.nodeName(by,"tr");for(var bw=0,e=this.length,bz=e-1;bw<e;bw++){bE.call(bF?ba(this[bw],by):this[bw],bx.cacheable||(e>1&&bw<bz)?b.clone(bA,true,true):bA)}}if(bv.length){b.each(bv,bo)}}return this}});function ba(e,bv){return b.nodeName(e,"table")?(e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody"))):e}function t(bB,bv){if(bv.nodeType!==1||!b.hasData(bB)){return}var by,bx,e,bA=b._data(bB),bz=b._data(bv,bA),bw=bA.events;if(bw){delete bz.handle;bz.events={};for(by in bw){for(bx=0,e=bw[by].length;bx<e;bx++){b.event.add(bv,by+(bw[by][bx].namespace?".":"")+bw[by][bx].namespace,bw[by][bx],bw[by][bx].data)}}}if(bz.data){bz.data=b.extend({},bz.data)}}function ai(bv,e){var bw;if(e.nodeType!==1){return}if(e.clearAttributes){e.clearAttributes()}if(e.mergeAttributes){e.mergeAttributes(bv)}bw=e.nodeName.toLowerCase();if(bw==="object"){e.outerHTML=bv.outerHTML}else{if(bw==="input"&&(bv.type==="checkbox"||bv.type==="radio")){if(bv.checked){e.defaultChecked=e.checked=bv.checked}if(e.value!==bv.value){e.value=bv.value}}else{if(bw==="option"){e.selected=bv.defaultSelected}else{if(bw==="input"||bw==="textarea"){e.defaultValue=bv.defaultValue}}}}e.removeAttribute(b.expando)}b.buildFragment=function(bz,bx,bv){var by,e,bw,bA,bB=bz[0];if(bx&&bx[0]){bA=bx[0].ownerDocument||bx[0]}if(!bA.createDocumentFragment){bA=av}if(bz.length===1&&typeof bB==="string"&&bB.length<512&&bA===av&&bB.charAt(0)==="<"&&!O.test(bB)&&(b.support.checkClone||!o.test(bB))&&(b.support.html5Clone||!ah.test(bB))){e=true;bw=b.fragments[bB];if(bw&&bw!==1){by=bw}}if(!by){by=bA.createDocumentFragment();b.clean(bz,bA,by,bv)}if(e){b.fragments[bB]=bw?by:1}return{fragment:by,cacheable:e}};b.fragments={};b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,bv){b.fn[e]=function(bw){var bz=[],bC=b(bw),bB=this.length===1&&this[0].parentNode;if(bB&&bB.nodeType===11&&bB.childNodes.length===1&&bC.length===1){bC[bv](this[0]);return this}else{for(var bA=0,bx=bC.length;bA<bx;bA++){var by=(bA>0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1></$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]==="<table>"&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB<bG;bB++){E(bz[bB])}}else{E(bz)}}if(bz.nodeType){bI.push(bz)}else{bI=b.merge(bI,bz)}}if(bH){bF=function(bL){return !bL.type||bm.test(bL.type)};for(bE=0;bI[bE];bE++){if(bA&&b.nodeName(bI[bE],"script")&&(!bI[bE].type||bI[bE].type.toLowerCase()==="text/javascript")){bA.push(bI[bE].parentNode?bI[bE].parentNode.removeChild(bI[bE]):bI[bE])}else{if(bI[bE].nodeType===1){var bJ=b.grep(bI[bE].getElementsByTagName("script"),bF);bI.splice.apply(bI,[bE+1,0].concat(bJ))}bH.appendChild(bI[bE])}}}return bI},cleanData:function(bv){var by,bw,e=b.cache,bB=b.event.special,bA=b.support.deleteExpando;for(var bz=0,bx;(bx=bv[bz])!=null;bz++){if(bx.nodeName&&b.noData[bx.nodeName.toLowerCase()]){continue}bw=bx[b.expando];if(bw){by=e[bw];if(by&&by.events){for(var bC in by.events){if(bB[bC]){b.event.remove(bx,bC)}else{b.removeEvent(bx,bC,by.handle)}}if(by.handle){by.handle.elem=null}}if(bA){delete bx[b.expando]}else{if(bx.removeAttribute){bx.removeAttribute(b.expando)}}delete e[bw]}}}});function bo(e,bv){if(bv.src){b.ajax({url:bv.src,async:false,dataType:"script"})}else{b.globalEval((bv.text||bv.textContent||bv.innerHTML||"").replace(aN,"/*$0*/"))}if(bv.parentNode){bv.parentNode.removeChild(bv)}}var ak=/alpha\([^)]*\)/i,au=/opacity=([^)]*)/,z=/([A-Z]|^ms)/g,bc=/^-?\d+(?:px)?$/i,bn=/^-?\d/,I=/^([\-+])=([\-+.\de]+)/,a7={position:"absolute",visibility:"hidden",display:"block"},an=["Left","Right"],a1=["Top","Bottom"],Z,aI,aX;b.fn.css=function(e,bv){if(arguments.length===2&&bv===L){return this}return b.access(this,e,bv,true,function(bx,bw,by){return by!==L?b.style(bx,bw,by):b.css(bx,bw)})};b.extend({cssHooks:{opacity:{get:function(bw,bv){if(bv){var e=Z(bw,"opacity","opacity");return e===""?"1":e}else{return bw.style.opacity}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(bx,bw,bD,by){if(!bx||bx.nodeType===3||bx.nodeType===8||!bx.style){return}var bB,bC,bz=b.camelCase(bw),bv=bx.style,bE=b.cssHooks[bz];bw=b.cssProps[bz]||bz;if(bD!==L){bC=typeof bD;if(bC==="string"&&(bB=I.exec(bD))){bD=(+(bB[1]+1)*+bB[2])+parseFloat(b.css(bx,bw));bC="number"}if(bD==null||bC==="number"&&isNaN(bD)){return}if(bC==="number"&&!b.cssNumber[bz]){bD+="px"}if(!bE||!("set" in bE)||(bD=bE.set(bx,bD))!==L){try{bv[bw]=bD}catch(bA){}}}else{if(bE&&"get" in bE&&(bB=bE.get(bx,false,by))!==L){return bB}return bv[bw]}},css:function(by,bx,bv){var bw,e;bx=b.camelCase(bx);e=b.cssHooks[bx];bx=b.cssProps[bx]||bx;if(bx==="cssFloat"){bx="float"}if(e&&"get" in e&&(bw=e.get(by,true,bv))!==L){return bw}else{if(Z){return Z(by,bx)}}},swap:function(bx,bw,by){var e={};for(var bv in bw){e[bv]=bx.style[bv];bx.style[bv]=bw[bv]}by.call(bx);for(bv in bw){bx.style[bv]=e[bv]}}});b.curCSS=b.css;b.each(["height","width"],function(bv,e){b.cssHooks[e]={get:function(by,bx,bw){var bz;if(bx){if(by.offsetWidth!==0){return p(by,e,bw)}else{b.swap(by,a7,function(){bz=p(by,e,bw)})}return bz}},set:function(bw,bx){if(bc.test(bx)){bx=parseFloat(bx);if(bx>=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx<e;bx++){if(!bv){bA-=parseFloat(b.css(by,"padding"+bz[bx]))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}else{bA-=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}}}return bA+"px"}bA=Z(by,bw,bw);if(bA<0||bA==null){bA=by.style[bw]||0}bA=parseFloat(bA)||0;if(bv){for(;bx<e;bx++){bA+=parseFloat(b.css(by,"padding"+bz[bx]))||0;if(bv!=="padding"){bA+=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}}}return bA+"px"}if(b.expr&&b.expr.filters){b.expr.filters.hidden=function(bw){var bv=bw.offsetWidth,e=bw.offsetHeight;return(bv===0&&e===0)||(!b.support.reliableHiddenOffsets&&((bw.style&&bw.style.display)||b.css(bw,"display"))==="none")};b.expr.filters.visible=function(e){return !b.expr.filters.hidden(e)}}var k=/%20/g,ap=/\[\]$/,bs=/\r?\n/g,bq=/#.*$/,aD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,aZ=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aM=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,aQ=/^(?:GET|HEAD)$/,c=/^\/\//,M=/\?/,a6=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw<bz;bw++){bv=bx[bw];bC=/^\+/.test(bv);if(bC){bv=bv.substr(1)||"*"}bB=e[bv]=e[bv]||[];bB[bC?"unshift":"push"](bA)}}}}function aW(bv,bE,bz,bD,bB,bx){bB=bB||bE.dataTypes[0];bx=bx||{};bx[bB]=true;var bA=bv[bB],bw=0,e=bA?bA.length:0,by=(bv===aa),bC;for(;bw<e&&(by||!bC);bw++){bC=bA[bw](bE,bz,bD);if(typeof bC==="string"){if(!by||bx[bC]){bC=L}else{bE.dataTypes.unshift(bC);bC=aW(bv,bE,bz,bD,bC,bx)}}}if((by||!bC)&&!bx["*"]){bC=aW(bv,bE,bz,bD,"*",bx)}return bC}function am(bw,bx){var bv,e,by=b.ajaxSettings.flatOptions||{};for(bv in bx){if(bx[bv]!==L){(by[bv]?bw:(e||(e={})))[bv]=bx[bv]}}if(e){b.extend(true,bw,e)}}b.fn.extend({load:function(bw,bz,bA){if(typeof bw!=="string"&&A){return A.apply(this,arguments)}else{if(!this.length){return this}}var by=bw.indexOf(" ");if(by>=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("<div>").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA<bw;bA++){if(bA===1){for(bE in bH.converters){if(typeof bE==="string"){bG[bE.toLowerCase()]=bH.converters[bE]}}}bx=bC;bC=bD[bA];if(bC==="*"){bC=bx}else{if(bx!=="*"&&bx!==bC){by=bx+" "+bC;bF=bG[by]||bG["* "+bC];if(!bF){e=L;for(bv in bG){bB=bv.split(" ");if(bB[0]===bx||bB[0]==="*"){e=bG[bB[1]+" "+bC];if(e){bv=bG[bv];if(bv===true){bF=e}else{if(e===true){bF=bv}}break}}}}if(!(bF||e)){b.error("No conversion from "+by.replace(" "," to "))}if(bF!==true){bz=bF?bF(bz):e(bv(bz))}}}}return bz}var aC=b.now(),u=/(\=)\?(&|$)|\?\?/i;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return b.expando+"_"+(aC++)}});b.ajaxPrefilter("json jsonp",function(bD,bA,bC){var bx=bD.contentType==="application/x-www-form-urlencoded"&&(typeof bD.data==="string");if(bD.dataTypes[0]==="jsonp"||bD.jsonp!==false&&(u.test(bD.url)||bx&&u.test(bD.data))){var bB,bw=bD.jsonpCallback=b.isFunction(bD.jsonpCallback)?bD.jsonpCallback():bD.jsonpCallback,bz=bb[bw],e=bD.url,by=bD.data,bv="$1"+bw+"$2";if(bD.jsonp!==false){e=e.replace(u,bv);if(bD.url===e){if(bx){by=by.replace(u,bv)}if(bD.data===by){e+=(/\?/.test(e)?"&":"?")+bD.jsonp+"="+bw}}}bD.url=e;bD.data=by;bb[bw]=function(bE){bB=[bE]};bC.always(function(){bb[bw]=bz;if(bB&&b.isFunction(bz)){bb[bw](bB[0])}});bD.converters["script json"]=function(){if(!bB){b.error(bw+" was not called")}return bB[0]};bD.dataTypes[0]="json";return"script"}});b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){b.globalEval(e);return e}}});b.ajaxPrefilter("script",function(e){if(e.cache===L){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});b.ajaxTransport("script",function(bw){if(bw.crossDomain){var e,bv=av.head||av.getElementsByTagName("head")[0]||av.documentElement;return{send:function(bx,by){e=av.createElement("script");e.async="async";if(bw.scriptCharset){e.charset=bw.scriptCharset}e.src=bw.url;e.onload=e.onreadystatechange=function(bA,bz){if(bz||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bv&&e.parentNode){bv.removeChild(e)}e=L;if(!bz){by(200,"success")}}};bv.insertBefore(e,bv.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var B=bb.ActiveXObject?function(){for(var e in N){N[e](0,1)}}:false,y=0,N;function aL(){try{return new bb.XMLHttpRequest()}catch(bv){}}function aj(){try{return new bb.ActiveXObject("Microsoft.XMLHTTP")}catch(bv){}}b.ajaxSettings.xhr=bb.ActiveXObject?function(){return !this.isLocal&&aL()||aj()}:aL;(function(e){b.extend(b.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(b.ajaxSettings.xhr());if(b.support.ajax){b.ajaxTransport(function(e){if(!e.crossDomain||b.support.cors){var bv;return{send:function(bB,bw){var bA=e.xhr(),bz,by;if(e.username){bA.open(e.type,e.url,e.async,e.username,e.password)}else{bA.open(e.type,e.url,e.async)}if(e.xhrFields){for(by in e.xhrFields){bA[by]=e.xhrFields[by]}}if(e.mimeType&&bA.overrideMimeType){bA.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!bB["X-Requested-With"]){bB["X-Requested-With"]="XMLHttpRequest"}try{for(by in bB){bA.setRequestHeader(by,bB[by])}}catch(bx){}bA.send((e.hasContent&&e.data)||null);bv=function(bK,bE){var bF,bD,bC,bI,bH;try{if(bv&&(bE||bA.readyState===4)){bv=L;if(bz){bA.onreadystatechange=b.noop;if(B){delete N[bz]}}if(bE){if(bA.readyState!==4){bA.abort()}}else{bF=bA.status;bC=bA.getAllResponseHeaders();bI={};bH=bA.responseXML;if(bH&&bH.documentElement){bI.xml=bH}bI.text=bA.responseText;try{bD=bA.statusText}catch(bJ){bD=""}if(!bF&&e.isLocal&&!e.crossDomain){bF=bI.text?200:404}else{if(bF===1223){bF=204}}}}}catch(bG){if(!bE){bw(-1,bG)}}if(bI){bw(bF,bD,bI,bC)}};if(!e.async||bA.readyState===4){bv()}else{bz=++y;if(B){if(!N){N={};b(bb).unload(B)}N[bz]=bv}bA.onreadystatechange=bv}},abort:function(){if(bv){bv(0,1)}}}}})}var Q={},a8,m,aB=/^(?:toggle|show|hide)$/,aT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,a3,aH=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],a4;b.fn.extend({show:function(bx,bA,bz){var bw,by;if(bx||bx===0){return this.animate(a0("show",3),bx,bA,bz)}else{for(var bv=0,e=this.length;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(!b._data(bw,"olddisplay")&&by==="none"){by=bw.style.display=""}if(by===""&&b.css(bw,"display")==="none"){b._data(bw,"olddisplay",x(bw.nodeName))}}}for(bv=0;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(by===""||by==="none"){bw.style.display=b._data(bw,"olddisplay")||""}}}return this}},hide:function(bx,bA,bz){if(bx||bx===0){return this.animate(a0("hide",3),bx,bA,bz)}else{var bw,by,bv=0,e=this.length;for(;bv<e;bv++){bw=this[bv];if(bw.style){by=b.css(bw,"display");if(by!=="none"&&!b._data(bw,"olddisplay")){b._data(bw,"olddisplay",by)}}}for(bv=0;bv<e;bv++){if(this[bv].style){this[bv].style.display="none"}}return this}},_toggle:b.fn.toggle,toggle:function(bw,bv,bx){var e=typeof bw==="boolean";if(b.isFunction(bw)&&b.isFunction(bv)){this._toggle.apply(this,arguments)}else{if(bw==null||e){this.each(function(){var by=e?bw:b(this).is(":hidden");b(this)[by?"show":"hide"]()})}else{this.animate(a0("toggle",3),bw,bv,bx)}}return this},fadeTo:function(e,bx,bw,bv){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:bx},e,bw,bv)},animate:function(bz,bw,by,bx){var e=b.speed(bw,by,bx);if(b.isEmptyObject(bz)){return this.each(e.complete,[false])}bz=b.extend({},bz);function bv(){if(e.queue===false){b._mark(this)}var bE=b.extend({},e),bK=this.nodeType===1,bI=bK&&b(this).is(":hidden"),bB,bF,bD,bJ,bH,bC,bG,bL,bA;bE.animatedProperties={};for(bD in bz){bB=b.camelCase(bD);if(bD!==bB){bz[bB]=bz[bD];delete bz[bD]}bF=bz[bB];if(b.isArray(bF)){bE.animatedProperties[bB]=bF[1];bF=bz[bB]=bF[0]}else{bE.animatedProperties[bB]=bE.specialEasing&&bE.specialEasing[bB]||bE.easing||"swing"}if(bF==="hide"&&bI||bF==="show"&&!bI){return bE.complete.call(this)}if(bK&&(bB==="height"||bB==="width")){bE.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(b.css(this,"display")==="inline"&&b.css(this,"float")==="none"){if(!b.support.inlineBlockNeedsLayout||x(this.nodeName)==="inline"){this.style.display="inline-block"}else{this.style.zoom=1}}}}if(bE.overflow!=null){this.style.overflow="hidden"}for(bD in bz){bJ=new b.fx(this,bE,bD);bF=bz[bD];if(aB.test(bF)){bA=b._data(this,"toggle"+bD)||(bF==="toggle"?bI?"show":"hide":0);if(bA){b._data(this,"toggle"+bD,bA==="show"?"hide":"show");bJ[bA]()}else{bJ[bF]()}}else{bH=aT.exec(bF);bC=bJ.cur();if(bH){bG=parseFloat(bH[2]);bL=bH[3]||(b.cssNumber[bD]?"":"px");if(bL!=="px"){b.style(this,bD,(bG||1)+bL);bC=((bG||1)/bJ.cur())*bC;b.style(this,bD,bC+bL)}if(bH[1]){bG=((bH[1]==="-="?-1:1)*bG)+bC}bJ.custom(bC,bG,bL)}else{bJ.custom(bC,bF,"")}}}return true}return e.queue===false?this.each(bv):this.queue(e.queue,bv)},stop:function(bw,bv,e){if(typeof bw!=="string"){e=bv;bv=bw;bw=L}if(bv&&bw!==false){this.queue(bw||"fx",[])}return this.each(function(){var bx,by=false,bA=b.timers,bz=b._data(this);if(!e){b._unmark(true,this)}function bB(bE,bF,bD){var bC=bF[bD];b.removeData(bE,bD,true);bC.stop(e)}if(bw==null){for(bx in bz){if(bz[bx]&&bz[bx].stop&&bx.indexOf(".run")===bx.length-4){bB(this,bz,bx)}}}else{if(bz[bx=bw+".run"]&&bz[bx].stop){bB(this,bz,bx)}}for(bx=bA.length;bx--;){if(bA[bx].elem===this&&(bw==null||bA[bx].queue===bw)){if(e){bA[bx](true)}else{bA[bx].saveState()}by=true;bA.splice(bx,1)}}if(!(e&&by)){b.dequeue(this,bw)}})}});function bh(){setTimeout(at,0);return(a4=b.now())}function at(){a4=L}function a0(bv,e){var bw={};b.each(aH.concat.apply([],aH.slice(0,e)),function(){bw[this]=bv});return bw}b.each({slideDown:a0("show",1),slideUp:a0("hide",1),slideToggle:a0("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,bv){b.fn[e]=function(bw,by,bx){return this.animate(bv,bw,by,bx)}});b.extend({speed:function(bw,bx,bv){var e=bw&&typeof bw==="object"?b.extend({},bw):{complete:bv||!bv&&bx||b.isFunction(bw)&&bw,duration:bw,easing:bv&&bx||bx&&!b.isFunction(bx)&&bx};e.duration=b.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in b.fx.speeds?b.fx.speeds[e.duration]:b.fx.speeds._default;if(e.queue==null||e.queue===true){e.queue="fx"}e.old=e.complete;e.complete=function(by){if(b.isFunction(e.old)){e.old.call(this)}if(e.queue){b.dequeue(this,e.queue)}else{if(by!==false){b._unmark(this)}}};return e},easing:{linear:function(bw,bx,e,bv){return e+bv*bw},swing:function(bw,bx,e,bv){return((-Math.cos(bw*Math.PI)/2)+0.5)*bv+e}},timers:[],fx:function(bv,e,bw){this.options=e;this.elem=bv;this.prop=bw;e.orig=e.orig||{}}});b.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(b.fx.step[this.prop]||b.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var e,bv=b.css(this.elem,this.prop);return isNaN(e=parseFloat(bv))?!bv||bv==="auto"?0:bv:e},custom:function(bz,by,bx){var e=this,bw=b.fx;this.startTime=a4||bh();this.end=by;this.now=this.start=bz;this.pos=this.state=0;this.unit=bx||this.unit||(b.cssNumber[this.prop]?"":"px");function bv(bA){return e.step(bA)}bv.queue=this.options.queue;bv.elem=this.elem;bv.saveState=function(){if(e.options.hide&&b._data(e.elem,"fxshow"+e.prop)===L){b._data(e.elem,"fxshow"+e.prop,e.start)}};if(bv()&&b.timers.push(bv)&&!a3){a3=setInterval(bw.tick,bw.interval)}},show:function(){var e=b._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=e||b.style(this.elem,this.prop);this.options.show=true;if(e!==L){this.custom(this.cur(),e)}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur())}b(this.elem).show()},hide:function(){this.options.orig[this.prop]=b._data(this.elem,"fxshow"+this.prop)||b.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(by){var bA,bB,bv,bx=a4||bh(),e=true,bz=this.elem,bw=this.options;if(by||bx>=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e<bv.length;e++){bw=bv[e];if(!bw()&&bv[e]===bw){bv.splice(e--,1)}}if(!bv.length){b.fx.stop()}},interval:13,stop:function(){clearInterval(a3);a3=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(e){b.style(e.elem,"opacity",e.now)},_default:function(e){if(e.elem.style&&e.elem.style[e.prop]!=null){e.elem.style[e.prop]=e.now+e.unit}else{e.elem[e.prop]=e.now}}}});b.each(["width","height"],function(e,bv){b.fx.step[bv]=function(bw){b.style(bw.elem,bv,Math.max(0,bw.now)+bw.unit)}});if(b.expr&&b.expr.filters){b.expr.filters.animated=function(e){return b.grep(b.timers,function(bv){return e===bv.elem}).length}}function x(bx){if(!Q[bx]){var e=av.body,bv=b("<"+bx+">").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*!
+ * jQuery UI 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h<j.length;h++){if(e.options[j[h][0]]){j[h][1].apply(e.element,f)}}}},contains:function(f,e){return document.compareDocumentPosition?f.compareDocumentPosition(e)&16:f!==e&&f.contains(e)},hasScroll:function(h,f){if(a(h).css("overflow")==="hidden"){return false}var e=(f&&f==="left")?"scrollLeft":"scrollTop",g=false;if(h[e]>0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*!
+ * jQuery UI Widget 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*!
+ * jQuery UI Mouse 1.8.18
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ * jquery.ui.widget.js
+ */
+(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g<l.length;g++){var j=c.trim(l[g]),e="ui-resizable-"+j;var h=c('<div class="ui-resizable-handle '+e+'"></div>');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(h<e.maxWidth){e.maxWidth=h}if(k<e.maxHeight){e.maxHeight=k}}this._vBoundaries=e},_updateCache:function(e){var f=this.options;this.offset=this.helper.offset();if(a(e.left)){this.position.left=e.left}if(a(e.top)){this.position.top=e.top}if(a(e.height)){this.size.height=e.height}if(a(e.width)){this.size.width=e.width}},_updateRatio:function(h,g){var i=this.options,j=this.position,f=this.size,e=this.axis;if(a(h.height)){h.width=(h.height*this.aspectRatio)}else{if(a(h.width)){h.height=(h.width/this.aspectRatio)}}if(e=="sw"){h.left=j.left+(f.width-h.width);h.top=null}if(e=="nw"){h.top=j.top+(f.height-h.height);h.left=j.left+(f.width-h.width)}return h},_respectSize:function(l,g){var j=this.helper,i=this._vBoundaries,r=this._aspectRatio||g.shiftKey,q=this.axis,t=a(l.width)&&i.maxWidth&&(i.maxWidth<l.width),m=a(l.height)&&i.maxHeight&&(i.maxHeight<l.height),h=a(l.width)&&i.minWidth&&(i.minWidth>l.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f<this._proportionallyResizeElements.length;f++){var h=this._proportionallyResizeElements[f];if(!this.borderDif){var e=[h.css("borderTopWidth"),h.css("borderRightWidth"),h.css("borderBottomWidth"),h.css("borderLeftWidth")],j=[h.css("paddingTop"),h.css("paddingRight"),h.css("paddingBottom"),h.css("paddingLeft")];this.borderDif=c.map(e,function(l,n){var m=parseInt(l,10)||0,o=parseInt(j[n],10)||0;return m+o})}if(c.browser.msie&&!(!(c(g).is(":hidden")||c(g).parents(":hidden").length))){continue}h.css({height:(g.height()-this.borderDif[0]-this.borderDif[2])||0,width:(g.width()-this.borderDif[1]-this.borderDif[3])||0})}},_renderProxy:function(){var f=this.element,i=this.options;this.elementOffset=f.offset();if(this._helper){this.helper=this.helper||c('<div style="overflow:hidden;"></div>');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*!
+ * jQuery hashchange event - v1.3 - 7/21/2010
+ * http://benalman.com/projects/jquery-hashchange-plugin/
+ *
+ * Copyright (c) 2010 "Cowboy" Ben Alman
+ * Dual licensed under the MIT and GPL licenses.
+ * http://benalman.com/about/license/
+ */
+(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);(function(c){var a=c.scrollTo=function(f,e,d){c(window).scrollTo(f,e,d)};a.defaults={axis:"xy",duration:parseFloat(c.fn.jquery)>=1.3?0:1};a.window=function(d){return c(window)._scrollable()};c.fn._scrollable=function(){return this.map(function(){var e=this,d=!e.nodeName||c.inArray(e.nodeName.toLowerCase(),["iframe","#document","html","body"])!=-1;if(!d){return e}var f=(e.contentWindow||e).document||e.ownerDocument||e;return c.browser.safari||f.compatMode=="BackCompat"?f.body:f.documentElement})};c.fn.scrollTo=function(f,e,d){if(typeof e=="object"){d=e;e=0}if(typeof d=="function"){d={onAfter:d}}if(f=="max"){f=9000000000}d=c.extend({},a.defaults,d);e=e||d.speed||d.duration;d.queue=d.queue&&d.axis.length>1;if(d.queue){e/=2}d.offset=b(d.offset);d.over=b(d.over);return this._scrollable().each(function(){var l=this,j=c(l),k=f,i,g={},m=j.is("html,body");switch(typeof k){case"number":case"string":if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(k)){k=b(k);break}k=c(k,this);case"object":if(k.is||k.style){i=(k=c(k)).offset()}}c.each(d.axis.split(""),function(q,r){var s=r=="x"?"Left":"Top",u=s.toLowerCase(),p="scroll"+s,o=l[p],n=a.max(l,r);if(i){g[p]=i[u]+(m?0:o-j.offset()[u]);if(d.margin){g[p]-=parseInt(k.css("margin"+s))||0;g[p]-=parseInt(k.css("border"+s+"Width"))||0}g[p]+=d.offset[u]||0;if(d.over[u]){g[p]+=k[r=="x"?"width":"height"]()*d.over[u]}}else{var t=k[u];g[p]=t.slice&&t.slice(-1)=="%"?parseFloat(t)/100*n:t}if(/^\d+$/.test(g[p])){g[p]=g[p]<=0?0:Math.min(g[p],n)}if(!q&&d.queue){if(o!=g[p]){h(d.onAfterFirst)}delete g[p]}});h(d.onAfter);function h(n){j.animate(g,e,d.easing,n&&function(){n.call(this,f,d)})}}).end()};a.max=function(j,i){var h=i=="x"?"Width":"Height",e="scroll"+h;if(!c(j).is("html,body")){return j[e]-c(j)[h.toLowerCase()]()}var g="client"+h,f=j.ownerDocument.documentElement,d=j.ownerDocument.body;return Math.max(f[e],d[e])-Math.min(f[g],d[g])};function b(d){return typeof d=="object"?d:{top:d,left:d}}})(jQuery);/*!
+ PowerTip - v1.2.0 - 2013-04-03
+ http://stevenbenner.github.com/jquery-powertip/
+ Copyright (c) 2013 Steven Benner (http://stevenbenner.com/).
+ Released under MIT license.
+ https://raw.github.com/stevenbenner/jquery-powertip/master/LICENSE.txt
+*/
+(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{a(jQuery)}}(function(k){var A=k(document),s=k(window),w=k("body");var n="displayController",e="hasActiveHover",d="forcedOpen",u="hasMouseMove",f="mouseOnToPopup",g="originalTitle",y="powertip",o="powertipjq",l="powertiptarget",E=180/Math.PI;var c={isTipOpen:false,isFixedTipOpen:false,isClosing:false,tipOpenImminent:false,activeHover:null,currentX:0,currentY:0,previousX:0,previousY:0,desyncTimeout:null,mouseTrackingActive:false,delayInProgress:false,windowWidth:0,windowHeight:0,scrollTop:0,scrollLeft:0};var p={none:0,top:1,bottom:2,left:4,right:8};k.fn.powerTip=function(F,N){if(!this.length){return this}if(k.type(F)==="string"&&k.powerTip[F]){return k.powerTip[F].call(this,this,N)}var O=k.extend({},k.fn.powerTip.defaults,F),G=new x(O);h();this.each(function M(){var R=k(this),Q=R.data(y),P=R.data(o),T=R.data(l),S;if(R.data(n)){k.powerTip.destroy(R)}S=R.attr("title");if(!Q&&!T&&!P&&S){R.data(y,S);R.data(g,S);R.removeAttr("title")}R.data(n,new t(R,O,G))});if(!O.manual){this.on({"mouseenter.powertip":function J(P){k.powerTip.show(this,P)},"mouseleave.powertip":function L(){k.powerTip.hide(this)},"focus.powertip":function K(){k.powerTip.show(this)},"blur.powertip":function H(){k.powerTip.hide(this,true)},"keydown.powertip":function I(P){if(P.keyCode===27){k.powerTip.hide(this,true)}}})}return this};k.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false};k.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};k.powerTip={show:function z(F,G){if(G){i(G);c.previousX=G.pageX;c.previousY=G.pageY;k(F).data(n).show()}else{k(F).first().data(n).show(true,true)}return F},reposition:function r(F){k(F).first().data(n).resetPosition();return F},hide:function D(G,F){if(G){k(G).first().data(n).hide(F)}else{if(c.activeHover){c.activeHover.data(n).hide(true)}}return G},destroy:function C(G){k(G).off(".powertip").each(function F(){var I=k(this),H=[g,n,e,d];if(I.data(g)){I.attr("title",I.data(g));H.push(y)}I.removeData(H)});return G}};k.powerTip.showTip=k.powerTip.show;k.powerTip.closeTip=k.powerTip.hide;function b(){var F=this;F.top="auto";F.left="auto";F.right="auto";F.bottom="auto";F.set=function(H,G){if(k.isNumeric(G)){F[H]=Math.round(G)}}}function t(K,N,F){var J=null;function L(P,Q){M();if(!K.data(e)){if(!P){c.tipOpenImminent=true;J=setTimeout(function O(){J=null;I()},N.intentPollInterval)}else{if(Q){K.data(d,true)}F.showTip(K)}}}function G(P){M();c.tipOpenImminent=false;if(K.data(e)){K.data(d,false);if(!P){c.delayInProgress=true;J=setTimeout(function O(){J=null;F.hideTip(K);c.delayInProgress=false},N.closeDelay)}else{F.hideTip(K)}}}function I(){var Q=Math.abs(c.previousX-c.currentX),O=Math.abs(c.previousY-c.currentY),P=Q+O;if(P<N.intentSensitivity){F.showTip(K)}else{c.previousX=c.currentX;c.previousY=c.currentY;L()}}function M(){J=clearTimeout(J);c.delayInProgress=false}function H(){F.resetPosition(K)}this.show=L;this.hide=G;this.cancel=M;this.resetPosition=H}function j(){function G(M,L,J,O,P){var K=L.split("-")[0],N=new b(),I;if(q(M)){I=H(M,K)}else{I=F(M,K)}switch(L){case"n":N.set("left",I.left-(J/2));N.set("bottom",c.windowHeight-I.top+P);break;case"e":N.set("left",I.left+P);N.set("top",I.top-(O/2));break;case"s":N.set("left",I.left-(J/2));N.set("top",I.top+P);break;case"w":N.set("top",I.top-(O/2));N.set("right",c.windowWidth-I.left+P);break;case"nw":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"nw-alt":N.set("left",I.left);N.set("bottom",c.windowHeight-I.top+P);break;case"ne":N.set("left",I.left-20);N.set("bottom",c.windowHeight-I.top+P);break;case"ne-alt":N.set("bottom",c.windowHeight-I.top+P);N.set("right",c.windowWidth-I.left);break;case"sw":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left-20);break;case"sw-alt":N.set("left",I.left);N.set("top",I.top+P);break;case"se":N.set("left",I.left-20);N.set("top",I.top+P);break;case"se-alt":N.set("top",I.top+P);N.set("right",c.windowWidth-I.left);break}return N}function F(K,J){var O=K.offset(),N=K.outerWidth(),I=K.outerHeight(),M,L;switch(J){case"n":M=O.left+N/2;L=O.top;break;case"e":M=O.left+N;L=O.top+I/2;break;case"s":M=O.left+N/2;L=O.top+I;break;case"w":M=O.left;L=O.top+I/2;break;case"nw":M=O.left;L=O.top;break;case"ne":M=O.left+N;L=O.top;break;case"sw":M=O.left;L=O.top+I;break;case"se":M=O.left+N;L=O.top+I;break}return{top:L,left:M}}function H(O,K){var S=O.closest("svg")[0],N=O[0],W=S.createSVGPoint(),L=N.getBBox(),V=N.getScreenCTM(),M=L.width/2,Q=L.height/2,P=[],I=["nw","n","ne","e","se","s","sw","w"],U,X,R,T;function J(){P.push(W.matrixTransform(V))}W.x=L.x;W.y=L.y;J();W.x+=M;J();W.x+=M;J();W.y+=Q;J();W.y+=Q;J();W.x-=M;J();W.x-=M;J();W.y-=Q;J();if(P[0].y!==P[1].y||P[0].x!==P[7].x){X=Math.atan2(V.b,V.a)*E;R=Math.ceil(((X%360)-22.5)/45);if(R<1){R+=8}while(R--){I.push(I.shift())}}for(T=0;T<P.length;T++){if(I[T]===K){U=P[T];break}}return{top:U.y+c.scrollTop,left:U.x+c.scrollLeft}}this.compute=G}function x(Q){var P=new j(),O=k("#"+Q.popupId);if(O.length===0){O=k("<div/>",{id:Q.popupId});if(w.length===0){w=k("body")}w.append(O)}if(Q.followMouse){if(!O.data(u)){A.on("mousemove",M);s.on("scroll",M);O.data(u,true)}}if(Q.mouseOnToPopup){O.on({mouseenter:function L(){if(O.data(f)){if(c.activeHover){c.activeHover.data(n).cancel()}}},mouseleave:function N(){if(c.activeHover){c.activeHover.data(n).hide()}}})}function I(S){S.data(e,true);O.queue(function R(T){H(S);T()})}function H(S){var U;if(!S.data(e)){return}if(c.isTipOpen){if(!c.isClosing){K(c.activeHover)}O.delay(100).queue(function R(V){H(S);V()});return}S.trigger("powerTipPreRender");U=B(S);if(U){O.empty().append(U)}else{return}S.trigger("powerTipRender");c.activeHover=S;c.isTipOpen=true;O.data(f,Q.mouseOnToPopup);if(!Q.followMouse){G(S);c.isFixedTipOpen=true}else{M()}O.fadeIn(Q.fadeInTime,function T(){if(!c.desyncTimeout){c.desyncTimeout=setInterval(J,500)}S.trigger("powerTipOpen")})}function K(R){c.isClosing=true;c.activeHover=null;c.isTipOpen=false;c.desyncTimeout=clearInterval(c.desyncTimeout);R.data(e,false);R.data(d,false);O.fadeOut(Q.fadeOutTime,function S(){var T=new b();c.isClosing=false;c.isFixedTipOpen=false;O.removeClass();T.set("top",c.currentY+Q.offset);T.set("left",c.currentX+Q.offset);O.css(T);R.trigger("powerTipClose")})}function M(){if(!c.isFixedTipOpen&&(c.isTipOpen||(c.tipOpenImminent&&O.data(u)))){var R=O.outerWidth(),V=O.outerHeight(),U=new b(),S,T;U.set("top",c.currentY+Q.offset);U.set("left",c.currentX+Q.offset);S=m(U,R,V);if(S!==p.none){T=a(S);if(T===1){if(S===p.right){U.set("left",c.windowWidth-R)}else{if(S===p.bottom){U.set("top",c.scrollTop+c.windowHeight-V)}}}else{U.set("left",c.currentX-R-Q.offset);U.set("top",c.currentY-V-Q.offset)}}O.css(U)}}function G(S){var R,T;if(Q.smartPlacement){R=k.fn.powerTip.smartPlacementLists[Q.placement];k.each(R,function(U,W){var V=m(F(S,W),O.outerWidth(),O.outerHeight());T=W;if(V===p.none){return false}})}else{F(S,Q.placement);T=Q.placement}O.addClass(T)}function F(U,T){var R=0,S,W,V=new b();V.set("top",0);V.set("left",0);O.css(V);do{S=O.outerWidth();W=O.outerHeight();V=P.compute(U,T,S,W,Q.offset);O.css(V)}while(++R<=5&&(S!==O.outerWidth()||W!==O.outerHeight()));return V}function J(){var R=false;if(c.isTipOpen&&!c.isClosing&&!c.delayInProgress){if(c.activeHover.data(e)===false||c.activeHover.is(":disabled")){R=true}else{if(!v(c.activeHover)&&!c.activeHover.is(":focus")&&!c.activeHover.data(d)){if(O.data(f)){if(!v(O)){R=true}}else{R=true}}}if(R){K(c.activeHover)}}}this.showTip=I;this.hideTip=K;this.resetPosition=G}function q(F){return window.SVGElement&&F[0] instanceof SVGElement}function h(){if(!c.mouseTrackingActive){c.mouseTrackingActive=true;k(function H(){c.scrollLeft=s.scrollLeft();c.scrollTop=s.scrollTop();c.windowWidth=s.width();c.windowHeight=s.height()});A.on("mousemove",i);s.on({resize:function G(){c.windowWidth=s.width();c.windowHeight=s.height()},scroll:function F(){var I=s.scrollLeft(),J=s.scrollTop();if(I!==c.scrollLeft){c.currentX+=I-c.scrollLeft;c.scrollLeft=I}if(J!==c.scrollTop){c.currentY+=J-c.scrollTop;c.scrollTop=J}}})}}function i(F){c.currentX=F.pageX;c.currentY=F.pageY}function v(F){var H=F.offset(),J=F[0].getBoundingClientRect(),I=J.right-J.left,G=J.bottom-J.top;return c.currentX>=H.left&&c.currentX<=H.left+I&&c.currentY>=H.top&&c.currentY<=H.top+G}function B(I){var G=I.data(y),F=I.data(o),K=I.data(l),H,J;if(G){if(k.isFunction(G)){G=G.call(I[0])}J=G}else{if(F){if(k.isFunction(F)){F=F.call(I[0])}if(F.length>0){J=F.clone(true,true)}}else{if(K){H=k("#"+K);if(H.length>0){J=H.html()}}}}return J}function m(M,L,K){var G=c.scrollTop,J=c.scrollLeft,I=G+c.windowHeight,F=J+c.windowWidth,H=p.none;if(M.top<G||Math.abs(M.bottom-c.windowHeight)-K<G){H|=p.top}if(M.top+K>I||Math.abs(M.bottom-c.windowHeight)>I){H|=p.bottom}if(M.left<J||M.right+L>F){H|=p.left}if(M.left+L>F||M.right<J){H|=p.right}return H}function a(G){var F=0;while(G){G&=G-1;F++}return F}}));/*!
+ * jQuery UI Touch Punch 0.2.3
+ *
+ * Copyright 2011–2014, Dave Furfero
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ *
+ * Depends:
+ * jquery.ui.widget.js
+ * jquery.ui.mouse.js
+ */
+(function(b){b.support.touch="ontouchend" in document;if(!b.support.touch){return}var d=b.ui.mouse.prototype,f=d._mouseInit,c=d._mouseDestroy,a;function e(h,i){if(h.originalEvent.touches.length>1){return}h.preventDefault();var j=h.originalEvent.changedTouches[0],g=document.createEvent("MouseEvents");g.initMouseEvent(i,true,true,window,1,j.screenX,j.screenY,j.clientX,j.clientY,false,false,false,false,0,null);h.target.dispatchEvent(g)}d._touchStart=function(h){var g=this;if(a||!g._mouseCapture(h.originalEvent.changedTouches[0])){return}a=true;g._touchMoved=false;e(h,"mouseover");e(h,"mousemove");e(h,"mousedown")};d._touchMove=function(g){if(!a){return}this._touchMoved=true;e(g,"mousemove")};d._touchEnd=function(g){if(!a){return}e(g,"mouseup");e(g,"mouseout");if(!this._touchMoved){e(g,"click")}a=false};d._mouseInit=function(){var g=this;g.element.bind({touchstart:b.proxy(g,"_touchStart"),touchmove:b.proxy(g,"_touchMove"),touchend:b.proxy(g,"_touchEnd")});f.call(g)};d._mouseDestroy=function(){var g=this;g.element.unbind({touchstart:b.proxy(g,"_touchStart"),touchmove:b.proxy(g,"_touchMove"),touchend:b.proxy(g,"_touchEnd")});c.call(g)}})(jQuery);/*!
+ * SmartMenus jQuery Plugin - v1.0.0 - January 27, 2016
+ * http://www.smartmenus.org/
+ *
+ * Copyright Vasil Dinkov, Vadikom Web Ltd.
+ * http://vadikom.com
+ *
+ * Licensed MIT
+ */
+(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{if(typeof module==="object"&&typeof module.exports==="object"){module.exports=a(require("jquery"))}else{a(jQuery)}}}(function(a){var b=[],e=!!window.createPopup,f=false,d="ontouchstart" in window,h=false,g=window.requestAnimationFrame||function(l){return setTimeout(l,1000/60)},c=window.cancelAnimationFrame||function(l){clearTimeout(l)};function k(m){var n=".smartmenus_mouse";if(!h&&!m){var o=true,l=null;a(document).bind(i([["mousemove",function(s){var t={x:s.pageX,y:s.pageY,timeStamp:new Date().getTime()};if(l){var q=Math.abs(l.x-t.x),p=Math.abs(l.y-t.y);if((q>0||p>0)&&q<=2&&p<=2&&t.timeStamp-l.timeStamp<=300){f=true;if(o){var r=a(s.target).closest("a");if(r.is("a")){a.each(b,function(){if(a.contains(this.$root[0],r[0])){this.itemEnter({currentTarget:r[0]});return false}})}o=false}}}l=t}],[d?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut",function(p){if(j(p.originalEvent)){f=false}}]],n));h=true}else{if(h&&m){a(document).unbind(n);h=false}}}function j(l){return !/^(4|mouse)$/.test(l.pointerType)}function i(l,n){if(!n){n=""}var m={};a.each(l,function(o,p){m[p[0].split(" ").join(n+" ")+n]=p[1]});return m}a.SmartMenus=function(m,l){this.$root=a(m);this.opts=l;this.rootId="";this.accessIdPrefix="";this.$subArrow=null;this.activatedItems=[];this.visibleSubMenus=[];this.showTimeout=0;this.hideTimeout=0;this.scrollTimeout=0;this.clickActivated=false;this.focusActivated=false;this.zIndexInc=0;this.idInc=0;this.$firstLink=null;this.$firstSub=null;this.disabled=false;this.$disableOverlay=null;this.$touchScrollingSub=null;this.cssTransforms3d="perspective" in m.style||"webkitPerspective" in m.style;this.wasCollapsible=false;this.init()};a.extend(a.SmartMenus,{hideAll:function(){a.each(b,function(){this.menuHideAll()})},destroy:function(){while(b.length){b[0].destroy()}k(true)},prototype:{init:function(n){var l=this;if(!n){b.push(this);this.rootId=(new Date().getTime()+Math.random()+"").replace(/\D/g,"");this.accessIdPrefix="sm-"+this.rootId+"-";if(this.$root.hasClass("sm-rtl")){this.opts.rightToLeftSubMenus=true}var r=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).bind(i([["mouseover focusin",a.proxy(this.rootOver,this)],["mouseout focusout",a.proxy(this.rootOut,this)],["keydown",a.proxy(this.rootKeyDown,this)]],r)).delegate("a",i([["mouseenter",a.proxy(this.itemEnter,this)],["mouseleave",a.proxy(this.itemLeave,this)],["mousedown",a.proxy(this.itemDown,this)],["focus",a.proxy(this.itemFocus,this)],["blur",a.proxy(this.itemBlur,this)],["click",a.proxy(this.itemClick,this)]],r));r+=this.rootId;if(this.opts.hideOnClick){a(document).bind(i([["touchstart",a.proxy(this.docTouchStart,this)],["touchmove",a.proxy(this.docTouchMove,this)],["touchend",a.proxy(this.docTouchEnd,this)],["click",a.proxy(this.docClick,this)]],r))}a(window).bind(i([["resize orientationchange",a.proxy(this.winResize,this)]],r));if(this.opts.subIndicators){this.$subArrow=a("<span/>").addClass("sub-arrow");if(this.opts.subIndicatorsText){this.$subArrow.html(this.opts.subIndicatorsText)}}k()}this.$firstSub=this.$root.find("ul").each(function(){l.menuInit(a(this))}).eq(0);this.$firstLink=this.$root.find("a").eq(0);if(this.opts.markCurrentItem){var p=/(index|default)\.[^#\?\/]*/i,m=/#.*/,q=window.location.href.replace(p,""),o=q.replace(m,"");this.$root.find("a").each(function(){var s=this.href.replace(p,""),t=a(this);if(s==q||s==o){t.addClass("current");if(l.opts.markCurrentTree){t.parentsUntil("[data-smartmenus-id]","ul").each(function(){a(this).dataSM("parent-a").addClass("current")})}}})}this.wasCollapsible=this.isCollapsible()},destroy:function(m){if(!m){var n=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").unbind(n).undelegate(n);n+=this.rootId;a(document).unbind(n);a(window).unbind(n);if(this.opts.subIndicators){this.$subArrow=null}}this.menuHideAll();var l=this;this.$root.find("ul").each(function(){var o=a(this);if(o.dataSM("scroll-arrows")){o.dataSM("scroll-arrows").remove()}if(o.dataSM("shown-before")){if(l.opts.subMenusMinWidth||l.opts.subMenusMaxWidth){o.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap")}if(o.dataSM("scroll-arrows")){o.dataSM("scroll-arrows").remove()}o.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})}if((o.attr("id")||"").indexOf(l.accessIdPrefix)==0){o.removeAttr("id")}}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("ie-shim").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded");this.$root.find("a.has-submenu").each(function(){var o=a(this);if(o.attr("id").indexOf(l.accessIdPrefix)==0){o.removeAttr("id")}}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub");if(this.opts.subIndicators){this.$root.find("span.sub-arrow").remove()}if(this.opts.markCurrentItem){this.$root.find("a.current").removeClass("current")}if(!m){this.$root=null;this.$firstLink=null;this.$firstSub=null;if(this.$disableOverlay){this.$disableOverlay.remove();this.$disableOverlay=null}b.splice(a.inArray(this,b),1)}},disable:function(l){if(!this.disabled){this.menuHideAll();if(!l&&!this.opts.isPopup&&this.$root.is(":visible")){var m=this.$root.offset();this.$disableOverlay=a('<div class="sm-jquery-disable-overlay"/>').css({position:"absolute",top:m.top,left:m.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(true),opacity:0}).appendTo(document.body)}this.disabled=true}},docClick:function(l){if(this.$touchScrollingSub){this.$touchScrollingSub=null;return}if(this.visibleSubMenus.length&&!a.contains(this.$root[0],l.target)||a(l.target).is("a")){this.menuHideAll()}},docTouchEnd:function(m){if(!this.lastTouch){return}if(this.visibleSubMenus.length&&(this.lastTouch.x2===undefined||this.lastTouch.x1==this.lastTouch.x2)&&(this.lastTouch.y2===undefined||this.lastTouch.y1==this.lastTouch.y2)&&(!this.lastTouch.target||!a.contains(this.$root[0],this.lastTouch.target))){if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}var l=this;this.hideTimeout=setTimeout(function(){l.menuHideAll()},350)}this.lastTouch=null},docTouchMove:function(m){if(!this.lastTouch){return}var l=m.originalEvent.touches[0];this.lastTouch.x2=l.pageX;this.lastTouch.y2=l.pageY},docTouchStart:function(m){var l=m.originalEvent.touches[0];this.lastTouch={x1:l.pageX,y1:l.pageY,target:l.target}},enable:function(){if(this.disabled){if(this.$disableOverlay){this.$disableOverlay.remove();this.$disableOverlay=null}this.disabled=false}},getClosestMenu:function(m){var l=a(m).closest("ul");while(l.dataSM("in-mega")){l=l.parent().closest("ul")}return l[0]||null},getHeight:function(l){return this.getOffset(l,true)},getOffset:function(n,l){var m;if(n.css("display")=="none"){m={position:n[0].style.position,visibility:n[0].style.visibility};n.css({position:"absolute",visibility:"hidden"}).show()}var o=n[0].getBoundingClientRect&&n[0].getBoundingClientRect(),p=o&&(l?o.height||o.bottom-o.top:o.width||o.right-o.left);if(!p&&p!==0){p=l?n[0].offsetHeight:n[0].offsetWidth}if(m){n.hide().css(m)}return p},getStartZIndex:function(l){var m=parseInt(this[l?"$root":"$firstSub"].css("z-index"));if(!l&&isNaN(m)){m=parseInt(this.$root.css("z-index"))}return !isNaN(m)?m:1},getTouchPoint:function(l){return l.touches&&l.touches[0]||l.changedTouches&&l.changedTouches[0]||l},getViewport:function(l){var m=l?"Height":"Width",o=document.documentElement["client"+m],n=window["inner"+m];if(n){o=Math.min(o,n)}return o},getViewportHeight:function(){return this.getViewport(true)},getViewportWidth:function(){return this.getViewport()},getWidth:function(l){return this.getOffset(l)},handleEvents:function(){return !this.disabled&&this.isCSSOn()},handleItemEvents:function(l){return this.handleEvents()&&!this.isLinkInMegaMenu(l)},isCollapsible:function(){return this.$firstSub.css("position")=="static"},isCSSOn:function(){return this.$firstLink.css("display")=="block"},isFixed:function(){var l=this.$root.css("position")=="fixed";if(!l){this.$root.parentsUntil("body").each(function(){if(a(this).css("position")=="fixed"){l=true;return false}})}return l},isLinkInMegaMenu:function(l){return a(this.getClosestMenu(l[0])).hasClass("mega-menu")},isTouchMode:function(){return !f||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(p,l){var n=p.closest("ul"),q=n.dataSM("level");if(q>1&&(!this.activatedItems[q-2]||this.activatedItems[q-2][0]!=n.dataSM("parent-a")[0])){var m=this;a(n.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(n).each(function(){m.itemActivate(a(this).dataSM("parent-a"))})}if(!this.isCollapsible()||l){this.menuHideSubMenus(!this.activatedItems[q-1]||this.activatedItems[q-1][0]!=p[0]?q-1:q)}this.activatedItems[q-1]=p;if(this.$root.triggerHandler("activate.smapi",p[0])===false){return}var o=p.dataSM("sub");if(o&&(this.isTouchMode()||(!this.opts.showOnClick||this.clickActivated))){this.menuShow(o)}},itemBlur:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}this.$root.triggerHandler("blur.smapi",l[0])},itemClick:function(o){var n=a(o.currentTarget);if(!this.handleItemEvents(n)){return}if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==n.closest("ul")[0]){this.$touchScrollingSub=null;o.stopPropagation();return false}if(this.$root.triggerHandler("click.smapi",n[0])===false){return false}var p=a(o.target).is("span.sub-arrow"),m=n.dataSM("sub"),l=m?m.dataSM("level")==2:false;if(m&&!m.is(":visible")){if(this.opts.showOnClick&&l){this.clickActivated=true}this.itemActivate(n);if(m.is(":visible")){this.focusActivated=true;return false}}else{if(this.isCollapsible()&&p){this.itemActivate(n);this.menuHide(m);return false}}if(this.opts.showOnClick&&l||n.hasClass("disabled")||this.$root.triggerHandler("select.smapi",n[0])===false){return false}},itemDown:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}l.dataSM("mousedown",true)},itemEnter:function(n){var m=a(n.currentTarget);if(!this.handleItemEvents(m)){return}if(!this.isTouchMode()){if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}var l=this;this.showTimeout=setTimeout(function(){l.itemActivate(m)},this.opts.showOnClick&&m.closest("ul").dataSM("level")==1?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",m[0])},itemFocus:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}if(this.focusActivated&&(!this.isTouchMode()||!l.dataSM("mousedown"))&&(!this.activatedItems.length||this.activatedItems[this.activatedItems.length-1][0]!=l[0])){this.itemActivate(l,true)}this.$root.triggerHandler("focus.smapi",l[0])},itemLeave:function(m){var l=a(m.currentTarget);if(!this.handleItemEvents(l)){return}if(!this.isTouchMode()){l[0].blur();if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}}l.removeDataSM("mousedown");this.$root.triggerHandler("mouseleave.smapi",l[0])},menuHide:function(m){if(this.$root.triggerHandler("beforehide.smapi",m[0])===false){return}m.stop(true,true);if(m.css("display")!="none"){var l=function(){m.css("z-index","")};if(this.isCollapsible()){if(this.opts.collapsibleHideFunction){this.opts.collapsibleHideFunction.call(this,m,l)}else{m.hide(this.opts.collapsibleHideDuration,l)}}else{if(this.opts.hideFunction){this.opts.hideFunction.call(this,m,l)}else{m.hide(this.opts.hideDuration,l)}}if(m.dataSM("ie-shim")){m.dataSM("ie-shim").remove().css({"-webkit-transform":"",transform:""})}if(m.dataSM("scroll")){this.menuScrollStop(m);m.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).unbind(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()}m.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false");m.attr({"aria-expanded":"false","aria-hidden":"true"});var n=m.dataSM("level");this.activatedItems.splice(n-1,1);this.visibleSubMenus.splice(a.inArray(m,this.visibleSubMenus),1);this.$root.triggerHandler("hide.smapi",m[0])}},menuHideAll:function(){if(this.showTimeout){clearTimeout(this.showTimeout);this.showTimeout=0}var m=this.opts.isPopup?1:0;for(var l=this.visibleSubMenus.length-1;l>=m;l--){this.menuHide(this.visibleSubMenus[l])}if(this.opts.isPopup){this.$root.stop(true,true);if(this.$root.is(":visible")){if(this.opts.hideFunction){this.opts.hideFunction.call(this,this.$root)}else{this.$root.hide(this.opts.hideDuration)}if(this.$root.dataSM("ie-shim")){this.$root.dataSM("ie-shim").remove()}}}this.activatedItems=[];this.visibleSubMenus=[];this.clickActivated=false;this.focusActivated=false;this.zIndexInc=0;this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(n){for(var l=this.activatedItems.length-1;l>=n;l--){var m=this.activatedItems[l].dataSM("sub");if(m){this.menuHide(m)}}},menuIframeShim:function(l){if(e&&this.opts.overlapControlsInIE&&!l.dataSM("ie-shim")){l.dataSM("ie-shim",a("<iframe/>").attr({src:"javascript:0",tabindex:-9}).css({position:"absolute",top:"auto",left:"0",opacity:0,border:"0"}))}},menuInit:function(l){if(!l.dataSM("in-mega")){if(l.hasClass("mega-menu")){l.find("ul").dataSM("in-mega",true)}var q=2,m=l[0];while((m=m.parentNode.parentNode)!=this.$root[0]){q++}var n=l.prevAll("a").eq(-1);if(!n.length){n=l.prevAll().find("a").eq(-1)}n.addClass("has-submenu").dataSM("sub",l);l.dataSM("parent-a",n).dataSM("level",q).parent().dataSM("sub",l);var o=n.attr("id")||this.accessIdPrefix+(++this.idInc),p=l.attr("id")||this.accessIdPrefix+(++this.idInc);n.attr({id:o,"aria-haspopup":"true","aria-controls":p,"aria-expanded":"false"});l.attr({id:p,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"});if(this.opts.subIndicators){n[this.opts.subIndicatorsPos](this.$subArrow.clone())}}},menuPosition:function(K){var r=K.dataSM("parent-a"),D=r.closest("li"),E=D.parent(),l=K.dataSM("level"),t=this.getWidth(K),J=this.getHeight(K),u=r.offset(),o=u.left,m=u.top,q=this.getWidth(r),F=this.getHeight(r),H=a(window),v=H.scrollLeft(),s=H.scrollTop(),z=this.getViewportWidth(),L=this.getViewportHeight(),w=E.parent().is("[data-sm-horizontal-sub]")||l==2&&!E.hasClass("sm-vertical"),B=this.opts.rightToLeftSubMenus&&!D.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&D.is("[data-sm-reverse]"),p=l==2?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,n=l==2?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY,C,A;if(w){C=B?q-t-p:p;A=this.opts.bottomToTopSubMenus?-J-n:F+n}else{C=B?p-t:q-p;A=this.opts.bottomToTopSubMenus?F-n-J:n}if(this.opts.keepInViewport){var N=o+C,M=m+A;if(B&&N<v){C=w?v-N+C:q-p}else{if(!B&&N+t>v+z){C=w?v+z-t-N+C:p-t}}if(!w){if(J<L&&M+J>s+L){A+=s+L-J-M}else{if(J>=L||M<s){A+=s-M}}}if(w&&(M+J>s+L+0.49||M<s)||!w&&J>L+0.49){var G=this;if(!K.dataSM("scroll-arrows")){K.dataSM("scroll-arrows",a([a('<span class="scroll-up"><span class="scroll-up-arrow"></span></span>')[0],a('<span class="scroll-down"><span class="scroll-down-arrow"></span></span>')[0]]).bind({mouseenter:function(){K.dataSM("scroll").up=a(this).hasClass("scroll-up");G.menuScroll(K)},mouseleave:function(x){G.menuScrollStop(K);G.menuScrollOut(K,x)},"mousewheel DOMMouseScroll":function(x){x.preventDefault()}}).insertAfter(K))}var I=".smartmenus_scroll";K.dataSM("scroll",{y:this.cssTransforms3d?0:A-F,step:1,itemH:F,subH:J,arrowDownH:this.getHeight(K.dataSM("scroll-arrows").eq(1))}).bind(i([["mouseover",function(x){G.menuScrollOver(K,x)}],["mouseout",function(x){G.menuScrollOut(K,x)}],["mousewheel DOMMouseScroll",function(x){G.menuScrollMousewheel(K,x)}]],I)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:C+(parseInt(K.css("border-left-width"))||0),width:t-(parseInt(K.css("border-left-width"))||0)-(parseInt(K.css("border-right-width"))||0),zIndex:K.css("z-index")}).eq(w&&this.opts.bottomToTopSubMenus?0:1).show();if(this.isFixed()){K.css({"touch-action":"none","-ms-touch-action":"none"}).bind(i([[d?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp",function(x){G.menuScrollTouch(K,x)}]],I))}}}K.css({top:"auto",left:"0",marginLeft:C,marginTop:A-F});this.menuIframeShim(K);if(K.dataSM("ie-shim")){K.dataSM("ie-shim").css({zIndex:K.css("z-index"),width:t,height:J,marginLeft:C,marginTop:A-F})}},menuScroll:function(r,m,n){var p=r.dataSM("scroll"),q=r.dataSM("scroll-arrows"),o=p.up?p.upEnd:p.downEnd,s;if(!m&&p.momentum){p.momentum*=0.92;s=p.momentum;if(s<0.5){this.menuScrollStop(r);return}}else{s=n||(m||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(p.step))}var l=r.dataSM("level");if(this.activatedItems[l-1]&&this.activatedItems[l-1].dataSM("sub")&&this.activatedItems[l-1].dataSM("sub").is(":visible")){this.menuHideSubMenus(l-1)}p.y=p.up&&o<=p.y||!p.up&&o>=p.y?p.y:(Math.abs(o-p.y)>s?p.y+(p.up?s:-s):o);r.add(r.dataSM("ie-shim")).css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+p.y+"px, 0)",transform:"translate3d(0, "+p.y+"px, 0)"}:{marginTop:p.y});if(f&&(p.up&&p.y>p.downEnd||!p.up&&p.y<p.upEnd)){q.eq(p.up?1:0).show()}if(p.y==o){if(f){q.eq(p.up?0:1).hide()}this.menuScrollStop(r)}else{if(!m){if(this.opts.scrollAccelerate&&p.step<this.opts.scrollStep){p.step+=0.2}var t=this;this.scrollTimeout=g(function(){t.menuScroll(r)})}}},menuScrollMousewheel:function(m,n){if(this.getClosestMenu(n.target)==m[0]){n=n.originalEvent;var l=(n.wheelDelta||-n.detail)>0;if(m.dataSM("scroll-arrows").eq(l?0:1).is(":visible")){m.dataSM("scroll").up=l;this.menuScroll(m,true)}}n.preventDefault()},menuScrollOut:function(l,m){if(f){if(!/^scroll-(up|down)/.test((m.relatedTarget||"").className)&&(l[0]!=m.relatedTarget&&!a.contains(l[0],m.relatedTarget)||this.getClosestMenu(m.relatedTarget)!=l[0])){l.dataSM("scroll-arrows").css("visibility","hidden")}}},menuScrollOver:function(n,o){if(f){if(!/^scroll-(up|down)/.test(o.target.className)&&this.getClosestMenu(o.target)==n[0]){this.menuScrollRefreshData(n);var m=n.dataSM("scroll"),l=a(window).scrollTop()-n.dataSM("parent-a").offset().top-m.itemH;n.dataSM("scroll-arrows").eq(0).css("margin-top",l).end().eq(1).css("margin-top",l+this.getViewportHeight()-m.arrowDownH).end().css("visibility","visible")}}},menuScrollRefreshData:function(n){var m=n.dataSM("scroll"),l=a(window).scrollTop()-n.dataSM("parent-a").offset().top-m.itemH;if(this.cssTransforms3d){l=-(parseFloat(n.css("margin-top"))-l)}a.extend(m,{upEnd:l,downEnd:l+this.getViewportHeight()-m.subH})},menuScrollStop:function(l){if(this.scrollTimeout){c(this.scrollTimeout);this.scrollTimeout=0;l.dataSM("scroll").step=1;return true}},menuScrollTouch:function(p,q){q=q.originalEvent;if(j(q)){var m=this.getTouchPoint(q);if(this.getClosestMenu(m.target)==p[0]){var o=p.dataSM("scroll");if(/(start|down)$/i.test(q.type)){if(this.menuScrollStop(p)){q.preventDefault();this.$touchScrollingSub=p}else{this.$touchScrollingSub=null}this.menuScrollRefreshData(p);a.extend(o,{touchStartY:m.pageY,touchStartTime:q.timeStamp})}else{if(/move$/i.test(q.type)){var n=o.touchY!==undefined?o.touchY:o.touchStartY;if(n!==undefined&&n!=m.pageY){this.$touchScrollingSub=p;var l=n<m.pageY;if(o.up!==undefined&&o.up!=l){a.extend(o,{touchStartY:m.pageY,touchStartTime:q.timeStamp})}a.extend(o,{up:l,touchY:m.pageY});this.menuScroll(p,true,Math.abs(m.pageY-n))}q.preventDefault()}else{if(o.touchY!==undefined){if(o.momentum=Math.pow(Math.abs(m.pageY-o.touchStartY)/(q.timeStamp-o.touchStartTime),2)*15){this.menuScrollStop(p);this.menuScroll(p);q.preventDefault()}delete o.touchY}}}}}},menuShow:function(n){if(!n.dataSM("beforefirstshowfired")){n.dataSM("beforefirstshowfired",true);if(this.$root.triggerHandler("beforefirstshow.smapi",n[0])===false){return}}if(this.$root.triggerHandler("beforeshow.smapi",n[0])===false){return}n.dataSM("shown-before",true).stop(true,true);if(!n.is(":visible")){var m=n.dataSM("parent-a");if(this.opts.keepHighlighted||this.isCollapsible()){m.addClass("highlighted")}if(this.isCollapsible()){n.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""})}else{n.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1);if(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth){n.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap");if(this.opts.subMenusMinWidth){n.css("min-width",this.opts.subMenusMinWidth)}if(this.opts.subMenusMaxWidth){var o=this.getWidth(n);n.css("max-width",this.opts.subMenusMaxWidth);if(o>this.getWidth(n)){n.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}}}this.menuPosition(n);if(n.dataSM("ie-shim")){n.dataSM("ie-shim").insertBefore(n)}}var l=function(){n.css("overflow","")};if(this.isCollapsible()){if(this.opts.collapsibleShowFunction){this.opts.collapsibleShowFunction.call(this,n,l)}else{n.show(this.opts.collapsibleShowDuration,l)}}else{if(this.opts.showFunction){this.opts.showFunction.call(this,n,l)}else{n.show(this.opts.showDuration,l)}}m.attr("aria-expanded","true");n.attr({"aria-expanded":"true","aria-hidden":"false"});this.visibleSubMenus.push(n);this.$root.triggerHandler("show.smapi",n[0])}},popupHide:function(l){if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}var m=this;this.hideTimeout=setTimeout(function(){m.menuHideAll()},l?1:this.opts.hideTimeout)},popupShow:function(o,n){if(!this.opts.isPopup){alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.');return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}this.$root.dataSM("shown-before",true).stop(true,true);if(!this.$root.is(":visible")){this.$root.css({left:o,top:n});this.menuIframeShim(this.$root);if(this.$root.dataSM("ie-shim")){this.$root.dataSM("ie-shim").css({zIndex:this.$root.css("z-index"),width:this.getWidth(this.$root),height:this.getHeight(this.$root),left:o,top:n}).insertBefore(this.$root)}var m=this,l=function(){m.$root.css("overflow","")};if(this.opts.showFunction){this.opts.showFunction.call(this,this.$root,l)}else{this.$root.show(this.opts.showDuration,l)}this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(true);this.init(true)},rootKeyDown:function(o){if(!this.handleEvents()){return}switch(o.keyCode){case 27:var m=this.activatedItems[0];if(m){this.menuHideAll();m[0].focus();var n=m.dataSM("sub");if(n){this.menuHide(n)}}break;case 32:var l=a(o.target);if(l.is("a")&&this.handleItemEvents(l)){var n=l.dataSM("sub");if(n&&!n.is(":visible")){this.itemClick({currentTarget:o.target});o.preventDefault()}}break}},rootOut:function(m){if(!this.handleEvents()||this.isTouchMode()||m.target==this.$root[0]){return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}if(!this.opts.showOnClick||!this.opts.hideOnClick){var l=this;this.hideTimeout=setTimeout(function(){l.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(l){if(!this.handleEvents()||this.isTouchMode()||l.target==this.$root[0]){return}if(this.hideTimeout){clearTimeout(this.hideTimeout);this.hideTimeout=0}},winResize:function(m){if(!this.handleEvents()){if(this.$disableOverlay){var n=this.$root.offset();this.$disableOverlay.css({top:n.top,left:n.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}return}if(!("onorientationchange" in window)||m.type=="orientationchange"){var l=this.isCollapsible();if(!(this.wasCollapsible&&l)){if(this.activatedItems.length){this.activatedItems[this.activatedItems.length-1][0].blur()}this.menuHideAll()}this.wasCollapsible=l}}}});a.fn.dataSM=function(l,m){if(m){return this.data(l+"_smartmenus",m)}return this.data(l+"_smartmenus")};a.fn.removeDataSM=function(l){return this.removeData(l+"_smartmenus")};a.fn.smartmenus=function(m){if(typeof m=="string"){var l=arguments,o=m;Array.prototype.shift.call(l);return this.each(function(){var p=a(this).data("smartmenus");if(p&&p[o]){p[o].apply(p,l)}})}var n=a.extend({},a.fn.smartmenus.defaults,m);return this.each(function(){new a.SmartMenus(this,n)})};a.fn.smartmenus.defaults={isPopup:false,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:true,subIndicatorsPos:"prepend",subIndicatorsText:"+",scrollStep:30,scrollAccelerate:true,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(m,l){m.fadeOut(200,l)},collapsibleShowDuration:0,collapsibleShowFunction:function(m,l){m.slideDown(200,l)},collapsibleHideDuration:0,collapsibleHideFunction:function(m,l){m.slideUp(200,l)},showOnClick:false,hideOnClick:true,noMouseOver:false,keepInViewport:true,keepHighlighted:true,markCurrentItem:false,markCurrentTree:true,rightToLeftSubMenus:false,bottomToTopSubMenus:false,overlapControlsInIE:true};return a})); \ No newline at end of file
diff --git a/docs/kwallet__plugin_8h.html b/docs/kwallet__plugin_8h.html
new file mode 100644
index 000000000..66a8610f1
--- /dev/null
+++ b/docs/kwallet__plugin_8h.html
@@ -0,0 +1,220 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: kwallet_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('kwallet__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">kwallet_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="kwallet__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1cce5ef9ceee5e678840c92b4bb0a4a9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">rp_kwallet_init</a> (void)</td></tr>
+<tr class="separator:a1cce5ef9ceee5e678840c92b4bb0a4a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae088299c1e5a756c6a178e1dd1becfe3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">rp_kwallet_store_password</a> (const char *key, const char *password)</td></tr>
+<tr class="separator:ae088299c1e5a756c6a178e1dd1becfe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0039ed9f1ecfa8937bed720fe408ae5"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">rp_kwallet_get_password</a> (const char *key)</td></tr>
+<tr class="separator:ab0039ed9f1ecfa8937bed720fe408ae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad44ed3af2cdfb051e5122b85604cd0cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">rp_kwallet_delete_password</a> (const char *key)</td></tr>
+<tr class="separator:ad44ed3af2cdfb051e5122b85604cd0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad91b525d838f1f2d62734c84a9f890ba"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">rp_kwallet_is_service_available</a> (void)</td></tr>
+<tr class="separator:ad91b525d838f1f2d62734c84a9f890ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad44ed3af2cdfb051e5122b85604cd0cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad44ed3af2cdfb051e5122b85604cd0cd">&#9670;&nbsp;</a></span>rp_kwallet_delete_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rp_kwallet_delete_password </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab0039ed9f1ecfa8937bed720fe408ae5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0039ed9f1ecfa8937bed720fe408ae5">&#9670;&nbsp;</a></span>rp_kwallet_get_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* rp_kwallet_get_password </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1cce5ef9ceee5e678840c92b4bb0a4a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cce5ef9ceee5e678840c92b4bb0a4a9">&#9670;&nbsp;</a></span>rp_kwallet_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int rp_kwallet_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad91b525d838f1f2d62734c84a9f890ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad91b525d838f1f2d62734c84a9f890ba">&#9670;&nbsp;</a></span>rp_kwallet_is_service_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int rp_kwallet_is_service_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae088299c1e5a756c6a178e1dd1becfe3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae088299c1e5a756c6a178e1dd1becfe3">&#9670;&nbsp;</a></span>rp_kwallet_store_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rp_kwallet_store_password </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li><li class="navelem"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></li><li class="navelem"><a class="el" href="kwallet__plugin_8h.html">kwallet_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/kwallet__plugin_8h.js b/docs/kwallet__plugin_8h.js
new file mode 100644
index 000000000..ccb6d1fd9
--- /dev/null
+++ b/docs/kwallet__plugin_8h.js
@@ -0,0 +1,8 @@
+var kwallet__plugin_8h =
+[
+ [ "rp_kwallet_delete_password", "kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd", null ],
+ [ "rp_kwallet_get_password", "kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5", null ],
+ [ "rp_kwallet_init", "kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9", null ],
+ [ "rp_kwallet_is_service_available", "kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba", null ],
+ [ "rp_kwallet_store_password", "kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3", null ]
+]; \ No newline at end of file
diff --git a/docs/kwallet__plugin_8h_source.html b/docs/kwallet__plugin_8h_source.html
new file mode 100644
index 000000000..40e8bcedc
--- /dev/null
+++ b/docs/kwallet__plugin_8h_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: kwallet_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('kwallet__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">kwallet_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="kwallet__plugin_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) 2016-2020 Antenore Gatta &amp; Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * If you modify file(s) with this exception, you may extend this exception</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * to your version of the file(s), but you are not obligated to do so.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * If you do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version.</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#endif</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="keywordtype">int</span> <a class="code" href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">rp_kwallet_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">rp_kwallet_store_password</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key, <span class="keyword">const</span> <span class="keywordtype">char</span> *password);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">rp_kwallet_get_password</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">rp_kwallet_delete_password</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">int</span> <a class="code" href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">rp_kwallet_is_service_available</a>(<span class="keywordtype">void</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"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;}</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="kwallet__plugin_8h_html_ad91b525d838f1f2d62734c84a9f890ba"><div class="ttname"><a href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">rp_kwallet_is_service_available</a></div><div class="ttdeci">int rp_kwallet_is_service_available(void)</div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ae088299c1e5a756c6a178e1dd1becfe3"><div class="ttname"><a href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">rp_kwallet_store_password</a></div><div class="ttdeci">void rp_kwallet_store_password(const char *key, const char *password)</div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ad44ed3af2cdfb051e5122b85604cd0cd"><div class="ttname"><a href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">rp_kwallet_delete_password</a></div><div class="ttdeci">void rp_kwallet_delete_password(const char *key)</div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ab0039ed9f1ecfa8937bed720fe408ae5"><div class="ttname"><a href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">rp_kwallet_get_password</a></div><div class="ttdeci">char * rp_kwallet_get_password(const char *key)</div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_a1cce5ef9ceee5e678840c92b4bb0a4a9"><div class="ttname"><a href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">rp_kwallet_init</a></div><div class="ttdeci">int rp_kwallet_init(void)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li><li class="navelem"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></li><li class="navelem"><a class="el" href="kwallet__plugin_8h.html">kwallet_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/kwallet__plugin__main_8c.html b/docs/kwallet__plugin__main_8c.html
new file mode 100644
index 000000000..1c13cb6f6
--- /dev/null
+++ b/docs/kwallet__plugin__main_8c.html
@@ -0,0 +1,380 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: kwallet_plugin_main.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('kwallet__plugin__main_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">kwallet_plugin_main.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="kwallet__plugin__main_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac1ca29a8219b7e34330c6a10f4ea3d76"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a> ()</td></tr>
+<tr class="separator:ac1ca29a8219b7e34330c6a10f4ea3d76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a864de43408740eb3b6ef58c820773e2a"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:a864de43408740eb3b6ef58c820773e2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af53acf42b7887610820f47a3323aa650"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *password)</td></tr>
+<tr class="separator:af53acf42b7887610820f47a3323aa650"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac43da8da793eaf8a37af70c7fe96e2c8"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:ac43da8da793eaf8a37af70c7fe96e2c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebc944531076dba0af8a531abfcd01f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:aebc944531076dba0af8a531abfcd01f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef517573fb85cfca2843c7f8358d14d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a> ()</td></tr>
+<tr class="separator:a6ef517573fb85cfca2843c7f8358d14d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af31524d2a9ee0747edc915947283b469"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469">remmina_plugin_kwallet</a></td></tr>
+<tr class="separator:af31524d2a9ee0747edc915947283b469"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a864de43408740eb3b6ef58c820773e2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a864de43408740eb3b6ef58c820773e2a">&#9670;&nbsp;</a></span>build_kwallet_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* build_kwallet_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00053">53</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00130">130</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aebc944531076dba0af8a531abfcd01f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebc944531076dba0af8a531abfcd01f6">&#9670;&nbsp;</a></span>remmina_plugin_kwallet_delete_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_kwallet_delete_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00093">93</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ac43da8da793eaf8a37af70c7fe96e2c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac43da8da793eaf8a37af70c7fe96e2c8">&#9670;&nbsp;</a></span>remmina_plugin_kwallet_get_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_plugin_kwallet_get_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00081">81</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ef517573fb85cfca2843c7f8358d14d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ef517573fb85cfca2843c7f8358d14d">&#9670;&nbsp;</a></span>remmina_plugin_kwallet_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_kwallet_init </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00102">102</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1ca29a8219b7e34330c6a10f4ea3d76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1ca29a8219b7e34330c6a10f4ea3d76">&#9670;&nbsp;</a></span>remmina_plugin_kwallet_is_service_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_kwallet_is_service_available </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00047">47</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="af53acf42b7887610820f47a3323aa650"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af53acf42b7887610820f47a3323aa650">&#9670;&nbsp;</a></span>remmina_plugin_kwallet_store_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_kwallet_store_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00071">71</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="af31524d2a9ee0747edc915947283b469"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af31524d2a9ee0747edc915947283b469">&#9670;&nbsp;</a></span>remmina_plugin_kwallet</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a> remmina_plugin_kwallet</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>,</div><div class="line"> <span class="stringliteral">&quot;kwallet&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secured password storage in KWallet&quot;</span>),</div><div class="line"> NULL,</div><div class="line"> VERSION,</div><div class="line"> 1000,</div><div class="line"> <a class="code" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a>,</div><div class="line"> <a class="code" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a>,</div><div class="line"> <a class="code" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a>,</div><div class="line"> <a class="code" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a>,</div><div class="line"> <a class="code" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</a>,</div><div class="line">}</div><div class="ttc" id="kwallet__plugin__main_8c_html_a6ef517573fb85cfca2843c7f8358d14d"><div class="ttname"><a href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a></div><div class="ttdeci">gboolean remmina_plugin_kwallet_init()</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00102">kwallet_plugin_main.c:102</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_ac1ca29a8219b7e34330c6a10f4ea3d76"><div class="ttname"><a href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a></div><div class="ttdeci">gboolean remmina_plugin_kwallet_is_service_available()</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00047">kwallet_plugin_main.c:47</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_af53acf42b7887610820f47a3323aa650"><div class="ttname"><a href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a></div><div class="ttdeci">void remmina_plugin_kwallet_store_password(RemminaFile *remminafile, const gchar *key, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00071">kwallet_plugin_main.c:71</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_ac43da8da793eaf8a37af70c7fe96e2c8"><div class="ttname"><a href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a></div><div class="ttdeci">gchar * remmina_plugin_kwallet_get_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00081">kwallet_plugin_main.c:81</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_aebc944531076dba0af8a531abfcd01f6"><div class="ttname"><a href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</a></div><div class="ttdeci">void remmina_plugin_kwallet_delete_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00093">kwallet_plugin_main.c:93</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00115">115</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="kwallet__plugin__main_8c_source.html#l00045">45</a> of file <a class="el" href="kwallet__plugin__main_8c_source.html">kwallet_plugin_main.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li><li class="navelem"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></li><li class="navelem"><a class="el" href="kwallet__plugin__main_8c.html">kwallet_plugin_main.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/kwallet__plugin__main_8c.js b/docs/kwallet__plugin__main_8c.js
new file mode 100644
index 000000000..77fa3372a
--- /dev/null
+++ b/docs/kwallet__plugin__main_8c.js
@@ -0,0 +1,12 @@
+var kwallet__plugin__main_8c =
+[
+ [ "build_kwallet_key", "kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a", null ],
+ [ "remmina_plugin_entry", "kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_kwallet_delete_password", "kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6", null ],
+ [ "remmina_plugin_kwallet_get_password", "kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8", null ],
+ [ "remmina_plugin_kwallet_init", "kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d", null ],
+ [ "remmina_plugin_kwallet_is_service_available", "kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76", null ],
+ [ "remmina_plugin_kwallet_store_password", "kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650", null ],
+ [ "remmina_plugin_kwallet", "kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469", null ],
+ [ "remmina_plugin_service", "kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ]
+]; \ No newline at end of file
diff --git a/docs/kwallet__plugin__main_8c_source.html b/docs/kwallet__plugin__main_8c_source.html
new file mode 100644
index 000000000..6feec2122
--- /dev/null
+++ b/docs/kwallet__plugin__main_8c_source.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: kwallet_plugin_main.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('kwallet__plugin__main_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">kwallet_plugin_main.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="kwallet__plugin__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) 2016-2020 Antenore Gatta &amp; Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * If you modify file(s) with this exception, you may extend this exception</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * to your version of the file(s), but you are not obligated to do so.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * If you do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version.</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n-lib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="plugin_8h.html">remmina/plugin.h</a>&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="kwallet__plugin_8h.html">kwallet_plugin.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 45</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76"> 47</a></span>&#160;gboolean <a class="code" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a>()</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span> <a class="code" href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">rp_kwallet_is_service_available</a>();</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a"> 53</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> gchar *path;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; gchar *kwkey;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">size_t</span> kwkey_sz;</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; path = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a>(remminafile);</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; kwkey_sz = strlen(key) + 1 + strlen(path) + 1;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; kwkey = g_malloc(kwkey_sz);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; strcpy(kwkey, key);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; strcat(kwkey, <span class="stringliteral">&quot;;&quot;</span>);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; strcat(kwkey, path);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> kwkey;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</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"><a class="line" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650"> 71</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *password)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gchar *kwkey;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; kwkey = <a class="code" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a>(remminafile, key);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">rp_kwallet_store_password</a>(kwkey, password);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; g_free(kwkey);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;}</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;gchar*</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8"> 81</a></span>&#160;<a class="code" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; gchar *kwkey, *password;</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; kwkey = <a class="code" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a>(remminafile, key);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; password = <a class="code" href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">rp_kwallet_get_password</a>(kwkey);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; g_free(kwkey);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> password;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</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"><a class="line" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6"> 93</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gchar *kwkey;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; kwkey = <a class="code" href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a>(remminafile, key);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">rp_kwallet_delete_password</a>(kwkey);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; g_free(kwkey);</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"><a class="line" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d"> 102</a></span>&#160;gboolean <a class="code" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a>()</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">/* Activates only when KDE is running */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> gchar *envvar;</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; envvar = g_environ_getenv(g_get_environ(), <span class="stringliteral">&quot;XDG_CURRENT_DESKTOP&quot;</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (!envvar || strcmp(envvar, <span class="stringliteral">&quot;KDE&quot;</span>) != 0)</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">return</span> <a class="code" href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">rp_kwallet_init</a>();</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;}</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"><a class="line" href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469"> 115</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> <a class="code" href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469">remmina_plugin_kwallet</a> =</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;{ <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="stringliteral">&quot;kwallet&quot;</span>,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secured password storage in KWallet&quot;</span>),</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; NULL,</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; VERSION,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; 1000,</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a>,</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a>,</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a>,</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a>,</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</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;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208"> 130</a></span>&#160;<a class="code" href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;{</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="comment">/* This function should only register the secret plugin. No init action</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> * should be performed here. Initialization will be done later</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> * with remmina_plugin_xxx_init() . */</span></div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_kwallet)) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;}</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="ttc" id="kwallet__plugin__main_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00045">kwallet_plugin_main.c:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_a6ef517573fb85cfca2843c7f8358d14d"><div class="ttname"><a href="kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d">remmina_plugin_kwallet_init</a></div><div class="ttdeci">gboolean remmina_plugin_kwallet_init()</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00102">kwallet_plugin_main.c:102</a></div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ad91b525d838f1f2d62734c84a9f890ba"><div class="ttname"><a href="kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba">rp_kwallet_is_service_available</a></div><div class="ttdeci">int rp_kwallet_is_service_available(void)</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_a864de43408740eb3b6ef58c820773e2a"><div class="ttname"><a href="kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a">build_kwallet_key</a></div><div class="ttdeci">static gchar * build_kwallet_key(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00053">kwallet_plugin_main.c:53</a></div></div>
+<div class="ttc" id="plugin_8h_html"><div class="ttname"><a href="plugin_8h.html">plugin.h</a></div></div>
+<div class="ttc" id="kwallet__plugin_8h_html"><div class="ttname"><a href="kwallet__plugin_8h.html">kwallet_plugin.h</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_ac1ca29a8219b7e34330c6a10f4ea3d76"><div class="ttname"><a href="kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76">remmina_plugin_kwallet_is_service_available</a></div><div class="ttdeci">gboolean remmina_plugin_kwallet_is_service_available()</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00047">kwallet_plugin_main.c:47</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00130">kwallet_plugin_main.c:130</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_af31524d2a9ee0747edc915947283b469"><div class="ttname"><a href="kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469">remmina_plugin_kwallet</a></div><div class="ttdeci">static RemminaSecretPlugin remmina_plugin_kwallet</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00115">kwallet_plugin_main.c:115</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_af53acf42b7887610820f47a3323aa650"><div class="ttname"><a href="kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650">remmina_plugin_kwallet_store_password</a></div><div class="ttdeci">void remmina_plugin_kwallet_store_password(RemminaFile *remminafile, const gchar *key, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00071">kwallet_plugin_main.c:71</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa413711beeac32a453068c0faf75f164"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">_RemminaPluginService::file_get_path</a></div><div class="ttdeci">const gchar *(* file_get_path)(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00198">plugin.h:198</a></div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_ac43da8da793eaf8a37af70c7fe96e2c8"><div class="ttname"><a href="kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8">remmina_plugin_kwallet_get_password</a></div><div class="ttdeci">gchar * remmina_plugin_kwallet_get_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00081">kwallet_plugin_main.c:81</a></div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ae088299c1e5a756c6a178e1dd1becfe3"><div class="ttname"><a href="kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3">rp_kwallet_store_password</a></div><div class="ttdeci">void rp_kwallet_store_password(const char *key, const char *password)</div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ad44ed3af2cdfb051e5122b85604cd0cd"><div class="ttname"><a href="kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd">rp_kwallet_delete_password</a></div><div class="ttdeci">void rp_kwallet_delete_password(const char *key)</div></div>
+<div class="ttc" id="kwallet__plugin__main_8c_html_aebc944531076dba0af8a531abfcd01f6"><div class="ttname"><a href="kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6">remmina_plugin_kwallet_delete_password</a></div><div class="ttdeci">void remmina_plugin_kwallet_delete_password(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="kwallet__plugin__main_8c_source.html#l00093">kwallet_plugin_main.c:93</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_ab0039ed9f1ecfa8937bed720fe408ae5"><div class="ttname"><a href="kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5">rp_kwallet_get_password</a></div><div class="ttdeci">char * rp_kwallet_get_password(const char *key)</div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="kwallet__plugin_8h_html_a1cce5ef9ceee5e678840c92b4bb0a4a9"><div class="ttname"><a href="kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9">rp_kwallet_init</a></div><div class="ttdeci">int rp_kwallet_init(void)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ae0d860c7818897e816988ff8df918dc.html">kwallet</a></li><li class="navelem"><a class="el" href="dir_8ac755c0af1da912ea6f652cb1f7edd7.html">src</a></li><li class="navelem"><a class="el" href="kwallet__plugin__main_8c.html">kwallet_plugin_main.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/launcher_8sh.html b/docs/launcher_8sh.html
new file mode 100644
index 000000000..496955ca3
--- /dev/null
+++ b/docs/launcher_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: launcher.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('launcher_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">launcher.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="launcher_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="launcher_8sh.html">launcher.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/launcher_8sh_source.html b/docs/launcher_8sh_source.html
new file mode 100644
index 000000000..d8e758692
--- /dev/null
+++ b/docs/launcher_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: launcher.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('launcher_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">launcher.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="launcher_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;####################</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;# Main Script</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;####################</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;#gnome-terminal -e $(dirname $0)/$1</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;if [ -x &quot;/usr/bin/x-terminal-emulator&quot; ];</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;then</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160; TERMNAME=&quot;/usr/bin/x-terminal-emulator&quot;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;else</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; TERMNAME=&quot;gnome-terminal&quot;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;fi</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;$TERMNAME -e &quot;$1&quot; &amp;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;#if [ &quot;$2&quot; = &quot;1&quot; ]</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;#then</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# echo &quot;Hit a key to continue…&quot;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;# Pause</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;#fi</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="launcher_8sh.html">launcher.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html
new file mode 100644
index 000000000..701c78ec9
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation-guide-for-RHEL</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation-guide-for-RHEL </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p><b>How to install <a href="https://extensions.gnome.org/extension/615/appindicator-support/">KStatusNotifierItem/AppIndicator Support</a> extension</b></p>
+<p>These are the instructions for people who want to test the latest version of Remmina (<code>master</code> branch) on RHEL-like operating systems.</p>
+<p>Current version of this guide was tested on vanilla CentOS 7 GNOME Desktop (specifically: <a href="http://tux.rainside.sk/centos/7.7.1908/isos/x86_64/">CentOS-7-x86_64-DVD-1908.iso</a>), CentOS 8 Workstation (specifically: <a href="http://tux.rainside.sk/centos/8.1.1911/isos/x86_64/">CentOS-8.1.1911-x86_64-dvd1.iso</a>) and Fedora 31 x86_64 (specifically: <a href="https://download.fedoraproject.org/pub/fedora/linux/releases/31/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-31-1.9.iso">Fedora-Workstation-Live-x86_64-31-1.9.iso</a>). However, it should work on all CentOS 7+, Red Hat 7+ and Fedora 20+ versions. If you find anything not working, raise an <a href="https://gitlab.com/Remmina/Remmina/issues/new">issue</a>.</p>
+<p>Note that although on CentOS 8 and Fedora, they use <code>dnf</code> package manager, there is still the <code>yum</code> symlink to <code>dnf</code>, so we decided to keep <code>yum</code> in this guide to make it usable on all of these distributions without any modifications.</p>
+<p>If you want to uninstall the program, follow the instructions in the step 0.</p>
+<p><b>0.</b> It is important that no other Remmina or FreeRDP version is installed, therefore we need to remove it. ``<code>bash &lt;h1&gt;To check if a program is installed, we can use</code>whereis [program(s)]` whereis freerdp remmina</p>
+<h1>When FreeRDP is installed from the CentOS repo, use this command to remove it</h1>
+<p>sudo yum -y remove freerdp*</p>
+<h1>When FreeRDP is installed from source code, enter the FreeRDP source code folder</h1>
+<h1>and run the following command</h1>
+<p>cd ${HOME}/freerdp sudo rm $(cat install_manifest.txt)</p>
+<h1>When Remmina is installed from the CentOS repo, use this command to remove it</h1>
+<p>sudo yum -y remove remmina*</p>
+<h1>When Remmina is installed from source code, enter the <code>build</code> folder</h1>
+<h1>in Remmina source code folder and run the following command</h1>
+<p>cd ${HOME}/remmina/build sudo make uninstall</p>
+<h1>Finally, we need to delete the empty folders of Remmina and FreeRDP</h1>
+<h1>This needs to be run for uninstallation of either programs</h1>
+<p>sudo rmdir $(find $(whereis freerdp remmina | grep -Po "^[^:]*: \K.*$") -type d | tac) ```</p>
+<p><b>1.</b> Add necessary repos. Note that on CentOS 7 GNOME Desktop only <code>epel</code> and <code>rpmfusion-free-updates</code> are not installed by default. I presume that <code>base</code>, <code>extras</code> and <code>updates</code> repos are installed on all version of CentOS 7. ```bash </p><h1>Get some information of the currently installed distribution</h1>
+<h1>Note: This is used to determine what repositories are need to be be installed</h1>
+<h1>and to create the relevant URLs</h1>
+<p>distro_name="$(grep -Po '^ID="*[^"]*' /etc/os-release)" distro_version="$(rpm -E %$distro_name)"</p>
+<p>if [ "$distro_name" = 'fedora' ]; then distro_name_short='fedora' else distro_name_short='el' epel_repo='epel-release' fi</p>
+<h1>epel (on CentOS only): required for <code>openjpeg2-devel</code>, <code>openssl-devel</code></h1>
+<h1>rpmfusion-free-updates (on both CentOS and Fedora): required for <code>ffmpeg-devel</code></h1>
+<h1>PowerTools (on CentOS 8+ only)</h1>
+<h1>okay (on CentOS 8+); required for <code>avahi-ui-devel</code>, <code>openh264</code>, <code>libopenh264-devel</code>, <code>libx264-devel</code></h1>
+<p>sudo yum -y install $epel_repo \ <a href="https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm">https://download1.rpmfusion.org/free/${distro_name_short}/rpmfusion-free-release-${distro_version}.noarch.rpm</a></p>
+<p>if [ "$distro_name" = 'centos' ] &amp;&amp; [ "$distro_version" = 8 ]; then sudo dnf config-manager &ndash;enable PowerTools sudo rpm -ivh <a href="http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm">http://repo.okay.com.mx/${distro_name}/${distro_version}/x86_64/release/okay-release-1-3.el${distro_version}.noarch.rpm</a></p>
+<h1>Disable okay repo for potential package conflicts</h1>
+<p>sudo dnf config-manager &ndash;disable okay fi</p>
+<p>if [ "$distro_name" = 'fedora' ]; then sudo dnf config-manager &ndash;enable fedora-cisco-openh264 fi </p><div class="fragment"><div class="line">**3.** Update `yum` cache and packages. This step might require a reboot.</div><div class="line">```bash</div><div class="line">sudo yum -y upgrade</div></div><!-- fragment --><p><b>4.</b> Install dependencies of FreeRDP and Remmina. Note that the installation dependencies for FreeRDP and Remmina was merged. If you want to know exactly which program requires which package, see the <a href="#dependencies">Dependencies</a> section at the end of this document. </p><div class="fragment"><div class="line">sudo yum -y install alsa-lib-devel atk-devel avahi-ui-gtk3 cairo-devel cmake3 \</div><div class="line"> cups-devel docbook-style-xsl ffmpeg-devel gcc gcc-c++ git glib2-devel gnutls-devel \</div><div class="line"> gstreamer1-devel gstreamer1-plugins-base-devel gtk3-devel harfbuzz-devel \</div><div class="line"> json-glib-devel libappindicator-gtk3 libappindicator-gtk3-devel libgcrypt-devel \</div><div class="line"> libsecret-devel libSM-devel libsodium libsodium-devel libsoup-devel libssh-devel \</div><div class="line"> libusb-devel libvncserver-devel libX11-devel libXcursor-devel libXdamage-devel \</div><div class="line"> libXext-devel libXi-devel libXinerama-devel libxkbfile-devel libXrandr-devel libxslt \</div><div class="line"> libxslt-devel libXtst-devel libXv-devel make ninja-build openjpeg2-devel \</div><div class="line"> openssl-devel pango-devel pulseaudio-libs-devel vte291 vte291-devel webkitgtk4-devel \</div><div class="line"> xmlto xorg-x11-server-utils</div><div class="line"></div><div class="line"># On CentOS 8</div><div class="line">if [ &quot;$distro_name&quot; = &#39;centos&#39; ] &amp;&amp; [ &quot;$distro_version&quot; = 8 ]; then</div><div class="line"> sudo yum -y install --enablerepo=okay avahi-ui-devel openh264 libopenh264-devel libx264-devel</div><div class="line">fi</div><div class="line"></div><div class="line"># On Fedora</div><div class="line">if [ &quot;$distro_name&quot; = &#39;fedora&#39; ]; then</div><div class="line"> # TODO: Do we really need `libx264`? Or even `openh264` (that for CentOS too)?</div><div class="line"> sudo yum -y install avahi-ui-devel libx264 libx264-devel openh264 openh264-devel</div><div class="line">fi</div></div><!-- fragment --><p><b>5.</b> Clone FreeRDP and Remmina repos. You may want to modify the <code>${HOME}/{freerdp,remmina}</code> paths and the folder names. </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git ${HOME}/freerdp</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git ${HOME}/remmina</div></div><!-- fragment --><p><b>6.</b> Build FreeRDP. ```bash mkdir ${HOME}/freerdp/build cd ${HOME}/freerdp/build </p><h1>In the following line, the <code>DWITH_PULSE=ON</code> option needs to be included</h1>
+<h1>Note: <code>-DCMAKE_INSTALL_LIBDIR=/usr/lib64</code> is required when <code>-DCMAKE_INSTALL_PREFIX:PATH</code></h1>
+<h1>is not <code>/usr</code>; otherwise Remmina will not find the <code>libfreerdp*</code> libraries</h1>
+<h1>Note: <code>-DWITH_OPENH264=ON -DWITH_X264=OFF</code> makes FreeRDP use H264 which results</h1>
+<h1>in extreme good quality for a quite good performance</h1>
+<p>cmake3 -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off \ -DCMAKE_INSTALL_LIBDIR=/usr/lib64 -DCMAKE_INSTALL_PREFIX:PATH=/opt -DWITH_OPENH264=ON \ -DWITH_X264=OFF .. make &amp;&amp; sudo make install</p>
+<h1>If you install FreeRDP and Remmina to <code>/opt</code>, you need to add <code>/opt/bin</code> to PATH</h1>
+<p>export PATH="$PATH:/opt/bin" echo 'export PATH="$PATH:/opt/bin"' &gt;&gt; ${HOME}/.bashrc</p>
+<h1>You can test FreeRDP by connecting to an RDP host</h1>
+<p>xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username </p><div class="fragment"><div class="line">**7.** Make your system dynamic loader aware of the new libraries you installed</div><div class="line">```bash</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Build Remmina. ```bash mkdir ${HOME}/remmina/build cd ${HOME}/remmina/build </p><h1>Note: <code>-DCMAKE_INSTALL_LIBDIR=/usr/lib64</code> is not required to successfully run Remmina,</h1>
+<h1>but <code>/usr/lib64</code> is the proper location for the libraries; again, it is not required</h1>
+<h1>at all when Remmina is installed to <code>/usr</code></h1>
+<p>cmake3 -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt -DCMAKE_INSTALL_LIBDIR=/usr/lib64 \ -DCMAKE_PREFIX_PATH=/opt &ndash;build=build .. make &amp;&amp; sudo make install </p><div class="fragment"><div class="line">**9.** If Remmina is installed to a custom path (e.g. for use `/opt`), we need to create some symlinks in order to .</div><div class="line"></div><div class="line">```bash</div><div class="line">sudo mkdir -p /usr/share/icons/hicolor/scalable/panel /usr/share/icons/hicolor/apps</div><div class="line"></div><div class="line">for old in /opt/share/applications/*desktop $(find /opt/share/icons -type f | grep &#39;svg$\|png$&#39;); do</div><div class="line"> new=&quot;${old/opt/usr}&quot;</div><div class="line"> sudo ln -s $old $new</div><div class="line">done</div></div><!-- fragment --><p><b>10.</b> Now you should be able to run Remmina with the following command or using the GUI. </p><div class="fragment"><div class="line">remmina &amp;&gt; /dev/null &amp;</div></div><!-- fragment --><h2>Notes</h2>
+<h3>Remmina in the system tray on GNOME 3</h3>
+<p>Current GNOME Shell versions does not include system tray, therefore vanilla GNOME will not show the Remmina system tray icon and menu. Press <code>Super</code>+<code>M</code> to see the Remmina icon on the message bar. If you want to fix this, you could install either <a href="https://extensions.gnome.org/extension/615/appindicator-support/">KStatusNotifierItem/AppIndicator Support</a>.</p>
+<p>Below is a guide how to install the extension. For more information on installing the <code>chrome-gnome-shell</code> , see the <a href="https://wiki.gnome.org/Projects/GnomeShellIntegrationForChrome/Installation">documentation</a></p>
+<p>&lt;details&gt;</p>
+<p>This method installs the extension locally (i.e. for current user only).</p>
+<ol type="1">
+<li>Install <code>chrome-gnome-shell</code> package.</li>
+</ol>
+<div class="fragment"><div class="line">sudo yum -y install chrome-gnome-shell</div></div><!-- fragment --><ol type="1">
+<li>Install the browser extension. Go to <a href="https://extensions.gnome.org">GNOME extension website</a> and click on <em>Click here to install browser extension</em>; or you can install it from <a href="https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/">Firefox Browser Add-ons</a>.</li>
+<li>Install the <a href="https://extensions.gnome.org/extension/615/appindicator-support/">KStatusNotifierItem/AppIndicator Support</a> extension by clicking on the toggle on that page (it must be on <code>on</code> position). Then confirm the installation.</li>
+<li>Don't forget to re-login the GNOME. :smiley: &lt;/details&gt;</li>
+</ol>
+<h3>Remmina in the system tray on Xfce</h3>
+<blockquote class="doxtable">
+<p>:information_source: This might be outdated. If you know the current state of this issue or any workaround(s), open an <a href="https://gitlab.com/Remmina/Remmina/issues/new">issue</a>. </p>
+</blockquote>
+<p>Xfce and other desktop environments without app indicator support, will not show you the system tray icon if you are executing Remmina from its compilation folder (e.g. <code>~/remmina</code>) because it contains a folder named <code>remmina</code>. For more infomation, see <a href="https://bugs.launchpad.net/libappindicator/+bug/1363277">Bug #1363277 on Launchpad</a>.</p>
+<h3>Dependencies</h3>
+<ol type="1">
+<li>If you are cloning the repositories, you need <code>git</code>.</li>
+<li>FreeRDP dependencies:</li>
+</ol>
+<div class="fragment"><div class="line"># Official guide (src: https://github.com/FreeRDP/FreeRDP/wiki/Compilation [rhel based])</div><div class="line">gcc cmake ninja-build openssl-devel libX11-devel libXext-devel libXinerama-devel \</div><div class="line"> libXcursor-devel libXi-devel libXdamage-devel libXv-devel libxkbfile-devel \</div><div class="line"> alsa-lib-devel cups-devel ffmpeg-devel glib2-devel libusb-devel</div><div class="line"># We had to install these at least on CentOS 8, but they are probably required on CentOS 7 too;</div><div class="line"># otherwise the build failed</div><div class="line">make gcc-c++ pulseaudio-libs-devel libXrandr-devel</div><div class="line"># Recommended: these are required to build man pages</div><div class="line">libxslt libxslt-devel docbook-style-xsl</div><div class="line"># Recommended: for multimedia redirection, audio and video playback</div><div class="line">gstreamer1-devel gstreamer1-plugins-base-devel</div><div class="line"># Recommended: for some X11 addon</div><div class="line">xorg-x11-server-utils</div><div class="line"># Recommended: at build-time, FreeRDP states that this is &#39;required by virtual:world&#39;</div><div class="line">cairo-devel</div></div><!-- fragment --><ol type="1">
+<li>Remmina dependencies (besides FreeRDP and its dependencies):</li>
+</ol>
+<div class="fragment"><div class="line">atk-devel avahi-ui-devel avahi-ui-gtk3 cmake3 gnutls-devel gtk3-devel harfbuzz-devel \</div><div class="line"> json-glib-devel libappindicator-devel libappindicator-gtk3 libappindicator-gtk3-devel \</div><div class="line"> libgcrypt-devel libopenh264-devel libsecret-devel libSM-devel libsodium libsodium-devel \</div><div class="line"> libsoup-devel libssh-devel libvncserver-devel libx264-devel libXtst-devel openh264 \</div><div class="line"> openjpeg2-devel pango-devel vte291 vte291-devel webkitgtk4-devel xmlto</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html
new file mode 100644
index 000000000..1b2b15280
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compilation</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compilation </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>We have tested the compilation of Remmina on several operating systems. Unfortunately, some of these guides are outdated. If you find some issues (or even better: their solutions), raise an <a href="https://gitlab.com/Remmina/Remmina/issues/new">issue</a> please. :smiley:</p>
+<ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS">Compilation guide for CentOS</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux">Compile on Arch Linux</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster">Compile on Debian 10 Buster</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch">Compile on Debian 9 Stretch</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26">Compile on Fedora 20 ~ 26</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD">Compile on FreeBSD</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04">Compile on Ubuntu 14.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04">Compile on Ubuntu 16.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04">Compile on Ubuntu 18.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04">Compile on Ubuntu 20.04</a> </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html
new file mode 100644
index 000000000..7daeeb7d9
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on Arch</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on Arch </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>These are the instructions for people who want to test the latest version of Remmina on Arch linux</p>
+<p>You will obtain Remmina compiled under the /opt/remmina_devel/ subdir, so it will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p>You must be <b>root</b> to follow this guide.</p>
+<p><b>1.</b> Update your system </p><div class="fragment"><div class="line">pacman -Syu</div></div><!-- fragment --><p> and reboot if needed.</p>
+<p>Install packages needed to compile FreeRDP and Remmina: </p><div class="fragment"><div class="line">pacman -S base-devel git libssh libvncserver gnome-keyring libgnome-keyring libpulse \</div><div class="line"> vte3 cmake libappindicator-gtk3 docbook-utils docbook-xsl spice-gtk spice-protocol</div></div><!-- fragment --><p> <b>2.</b> Remove installed versions of remmina and freerdp</p>
+<div class="fragment"><div class="line">pacman -Rs remmina freerdp</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p><b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Arch x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib64 | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p> Please note: in your system the above lib directory could be different (<code>/opt/remmina_devel/freerdp/</code> in manjaro)</p>
+<p><b>8.</b> Link executable in /usr/local/bin </p><div class="fragment"><div class="line">ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p> <b>10.</b> Now clone remmina repository, to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p> <b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DWITH_TELEPATHY=off -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DWITH_APPINDICATOR=off -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; make install</div></div><!-- fragment --><p> <b>13.</b> Link the executable </p><div class="fragment"><div class="line">ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> NOTES for execution:</p><ul>
+<li>Icons and .desktop files are not installed, so don't search for remmina in Gnome Shell. You can only launch it from a terminal or pressing ALT-F2 and typing remmina.</li>
+<li>Gnome Shell will never show you the system tray icon and menu. Press Super+M to see the remmina icon on the message bar.</li>
+</ul>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory and the symlink </p><div class="fragment"><div class="line">rm -rf /opt/remmina_devel/ /usr/local/bin/remmina</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html
new file mode 100644
index 000000000..3fa3d6365
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on Debian 10</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on Debian 10 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>These are instructions for people or software developers who want to contribute to the development of Remmina on Debian 10 Stretch.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p>You need to execute the following commands as root or as a user with sudo privileges (member of the sudo group).</p>
+<p><b>1.</b> Install all packages required to build freerdp and remmina: Execute te following commands as root </p><div class="fragment"><div class="line">sudo apt install build-essential git-core libssh-dev cmake libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"> libxi-dev libavutil-dev libjson-glib-dev\</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt20-dev libpulse-dev \</div><div class="line"> libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls28-dev libsecret-1-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"> libsodium-dev libkf5wallet-dev</div></div><!-- fragment --><p> <b>2.</b> As root, remove freerdp-x11 package and all packages containing the string remmina in the package name. </p><div class="fragment"><div class="line">sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Create a symbolik link to the executable in /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_KF5WALLET=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>13.</b> Create a symbolik link to the the executable </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory </p><div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p> <b>3.</b> Cleanup symlinks and dynamic loader </p><div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html
new file mode 100644
index 000000000..c529eefd6
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on Debian 9</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on Debian 9 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>****NOTE: THIS IS NO LONGER REQUIRED, <a href="https://www.remmina.org/wp/debian-the-boys-are-backport-in-town">REMMINA IS NOW AVAILABLE FROM DEBIAN BACKPORTS</a>.****</p>
+<p>These are instructions for people or software developers who want to contribute to the latest version of Remmina on Debian 9 Stretch.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p><b>Changelog</b></p><ul>
+<li>Initial write: May 1 2017.</li>
+</ul>
+<p>You need to execute the following commands as root or as a user with sudo privileges (member of the sudo group).</p>
+<p><b>1.</b> Install all packages required to build freerdp and remmina: Execute te following commands as root </p><div class="fragment"><div class="line">sudo apt purge libssl-dev</div><div class="line"></div><div class="line">sudo apt install build-essential git-core libssh-dev cmake libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"> libxi-dev libavutil-dev libjson-glib-dev\</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libpulse-dev \</div><div class="line"> libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls28-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"> libsodium-dev</div></div><!-- fragment --><p> <b>2.</b> As root, remove freerdp-x11 package and all packages containing the string remmina in the package name. </p><div class="fragment"><div class="line">sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Create a symbolik link to the executable in /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>13.</b> Create a symbolik link to the the executable </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory </p><div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p> <b>3.</b> Cleanup symlinks and dynamic loader </p><div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html
new file mode 100644
index 000000000..ec01a5d1a
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Compiling Remmina on FreeBSD 11</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Compiling Remmina on FreeBSD 11 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>In order to use Remmina, you need at least one plugin, here we explain you how to build Remmina with most plugins but mainly with FreeRDP support.</p>
+<h2>How to compile FreeRDP</h2>
+<p>Follow the next procedure to compile FreerRDP</p>
+<h3>Install FreeRDP dependencies</h3>
+<div class="fragment"><div class="line">pkg install cmake gccmakedep git pkgconf libX11 libXext libXinerama libXcursor libXdamage libXv libxkbfile alsa-lib cups ffmpeg pulseaudio libssh libXi libXtst libXrandr xmlto gstreamer1 gstreamer1-plugins ffmpeg libx264 qt5-qmake qt5-buildtools</div></div><!-- fragment --> <h3>Get FreeRDP code in you development environment</h3>
+<p><b>1.</b> Prepare your dev environment </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>2.</b> Get the source code </p><div class="fragment"><div class="line">git clone --branch stable-2.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>3.</b> Configure FreeRDP </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_PULSE=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> <b>4.</b> Compile and install</p>
+<div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>5.</b> Add the freerdp library path to ldconfig Edit the file <code>/etc/ld-elf.so.conf</code>, create it if it does not exits. A add the line </p><div class="fragment"><div class="line">/opt/remmina_devel/freerdp/lib/</div></div><!-- fragment --><p> And then restart ldconfig with </p><div class="fragment"><div class="line">service ldconfig restart</div></div><!-- fragment --><p> <b>6.</b> Link the xfreerdp executable</p>
+<p>If you use Gnome, you probably have FreeRDP installed under /usr/local. Gnome needs vinagre that needs FreeRDP, so you won't be able to remove FreeRDP, that shouldn't be an issue as we installed the git version under /opt... But keep this in mind if you'll have troubles. If you don't have Gnome, you can link xfreerdp under /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>7.</b> Test xfreerdp </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --> <h2>How to compile Remmina</h2>
+<p><b>1.</b> Install Remmina dependencies. </p><div class="fragment"><div class="line">pkg install avahi-gtk3 gtk3 libgcrypt gnutls avahi vte3 telepathy-glib libSM openjpeg libvncserver libsodium libappindicator</div></div><!-- fragment --><p> <b>2.</b> Install gnome keyring or similar password storage for your specific desktop </p><div class="fragment"><div class="line">pkg install gnome-keyring</div></div><!-- fragment --><p> <b>3.</b> Clone Remmina </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p> <b>4.</b> Configure compile settings </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_APPINDICATOR=OFF -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>5.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; make install</div></div><!-- fragment --><p> <b>6.</b> Run Remmina </p><div class="fragment"><div class="line">/opt/remmina_devel/remmina/bin/remmina</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html
new file mode 100644
index 000000000..8c04111bc
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on ubuntu 14.04</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on ubuntu 14.04 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h3>WARNING: remmina is no longer supported on ubuntu 14.04, see this <a href="https://remmina.org/ubuntu-14-04-end-of-support/">blog post</a></h3>
+<p>These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 14.04.</p>
+<p>If you are an end user and you want to install the latest version of remmina, please use the "Remmina Team Ubuntu PPA - next branch", as explained on the <a href="https://github.com/FreeRDP/Remmina/wiki">homepage of the wiki</a>.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p><b>Changelog</b></p><ul>
+<li>Initial write: Aug 20 2014.</li>
+<li>Update Oct 3 2014: changed branch name from gtk3 to next</li>
+<li>Update Oct 15 2014: addedd -DWITH_CUPS=on -DWITH_WAYLAND=off to freerdp parameters</li>
+<li>Update Oct 23 2014: tested on ubuntu 14.10</li>
+<li>Update Oct 29 2014: tested on Mine 17.2 (based on Ubuntu 14.04)</li>
+<li>Update Oct 29 2015: Found a load of install issued on step 1, changed recommendation from apt-get to aptitude as it reports issues far more lucidly and they all boil down to my having later versions of packages these depend on.</li>
+<li>Update Nov 23 2015: Added libsecret-1-dev to packages to be installed</li>
+<li>Update Jan 16 2016: Added libsystemd-dev</li>
+<li>Update Jan 23 2016: Added libwebkit2gtk-3.0-dev</li>
+<li>Update Mar 12 2016: Added apt-get remove of some freerdp packages installed from the PPA, removed ubuntu 14.10</li>
+<li>Update Jan 08 2018: Added libsoup2.4-dev libjson-glib-dev to dependencies</li>
+</ul>
+<p><b>1.</b> Install all packages required to build freerdp and remmina: </p><div class="fragment"><div class="line">sudo aptitude install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \</div><div class="line"> libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"> libvte-2.90-dev libxkbfile-dev libfreerdp-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-3.0-dev \</div><div class="line"> libsoup2.4-dev libjson-glib-dev</div></div><!-- fragment --><p> And try also to install libsystemd-dev (available only in newer ubuntu) </p><div class="fragment"><div class="line">sudo aptitude install libsystemd-dev</div></div><!-- fragment --><p> <b>2.</b> Remove freerdp-x11 package and all packages containing the string remmina in the package name. </p><div class="fragment"><div class="line">sudo apt-get --purge remove freerdp-x11 \</div><div class="line"> remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc remmina-plugin-gnome \</div><div class="line"> remmina-plugin-nx remmina-plugin-telepathy remmina-plugin-xdmcp</div><div class="line">sudo apt-get --purge remove libfreerdp-dev libfreerdp-plugins-standard libfreerdp1</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p> For ubuntu 32 bit you have to change the path of the source lib folder in the first line.</p>
+<p><b>8.</b> Link executable in /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://github.com/FreeRDP/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>13.</b> Link the executable </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory </p><div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p> <b>3.</b> Cleanup symlinks and dynamic loader </p><div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html
new file mode 100644
index 000000000..96a918869
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on ubuntu 16.04</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on ubuntu 16.04 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 16.04.</p>
+<p>If you are an end user and you want to install the latest version of remmina, please use the "Remmina Team Ubuntu PPA - next branch", as explained on the <a href="https://github.com/FreeRDP/Remmina/wiki">homepage of the wiki</a>.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p><b>1.</b> Install all packages required to build freerdp and remmina: </p><div class="fragment"><div class="line">sudo apt-get install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \</div><div class="line"> libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"> libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"> libsoup2.4-dev libjson-glib-dev libavresample-dev libusb-1.0-0-dev</div></div><!-- fragment --><p> <b>2.</b> Remove freerdp-x11 package and all packages containing the string remmina in the package name. </p><div class="fragment"><div class="line">sudo apt-get --purge remove freerdp-x11 \</div><div class="line"> remmina remmina-common remmina-plugin-rdp remmina-plugin-vnc remmina-plugin-gnome \</div><div class="line"> remmina-plugin-nx remmina-plugin-telepathy remmina-plugin-xdmcp</div><div class="line">sudo apt-get --purge remove libfreerdp-dev libfreerdp-plugins-standard libfreerdp1 \</div><div class="line"> libfreerdp-utils1.1 libfreerdp-primitives1.1 libfreerdp-locale1.1 \</div><div class="line"> libfreerdp-gdi1.1 libfreerdp-crypto1.1 libfreerdp-core1.1 libfreerdp-common1.1.0 \</div><div class="line"> libfreerdp-codec1.1 libfreerdp-client1.1 libfreerdp-cache1.1</div><div class="line">sudo apt-get --purge remove \</div><div class="line"> libfreerdp-rail1.1 libwinpr-asn1-0.1 libwinpr-bcrypt0.1 libwinpr-credentials0.1 libwinpr-credui0.1 \</div><div class="line"> libwinpr-crt0.1 libwinpr-crypto0.1 libwinpr-dev libwinpr-dsparse0.1 libwinpr-environment0.1 \</div><div class="line"> libwinpr-error0.1 libwinpr-file0.1 libwinpr-handle0.1 libwinpr-heap0.1 libwinpr-input0.1 \</div><div class="line"> libwinpr-interlocked0.1 libwinpr-io0.1 libwinpr-library0.1 libwinpr-path0.1 libwinpr-pipe0.1 \</div><div class="line"> libwinpr-pool0.1 libwinpr-registry0.1 libwinpr-rpc0.1 libwinpr-sspi0.1 libwinpr-sspicli0.1 \</div><div class="line"> libwinpr-synch0.1 libwinpr-sysinfo0.1 libwinpr-thread0.1 libwinpr-timezone0.1 libwinpr-utils0.1 \</div><div class="line"> libwinpr-winhttp0.1 libwinpr-winsock0.1 freerdp2-x11 &quot;libfreerdp2*&quot; &quot;libwinpr2*&quot;</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Create a symbolik link to the executable in /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>13.</b> Create a symbolik link to the the executable </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory </p><div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p> <b>3.</b> Cleanup symlinks and dynamic loader </p><div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html
new file mode 100644
index 000000000..d6d6e91bc
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on ubuntu 18.04</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on ubuntu 18.04 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 18.04.</p>
+<p>If you are an end user and you want to install the latest version of remmina, please use the "Remmina Team Ubuntu PPA - next branch", as explained on the <a href="https://gitlab.com/Remmina/Remmina/wikis/home">homepage of the wiki</a>.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p><b>1.</b> Install all packages required to build freerdp and remmina: </p><div class="fragment"><div class="line">sudo apt install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"> libxi-dev libavutil-dev \</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"> libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls28-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"> libsoup2.4-dev libjson-glib-dev libavresample-dev libsodium-dev \</div><div class="line"> libusb-1.0-0-dev</div></div><!-- fragment --><p> <b>2.</b> Remove freerdp-x11 package and all packages containing the string remmina in the package name. </p><div class="fragment"><div class="line">sudo apt purge &quot;remmina*&quot; &quot;libfreerdp*&quot; &quot;libwinpr*&quot; &quot;freerdp*&quot;</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it </p><div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p> <b>4.</b> Download the latest source code of FreeRDP from its master branch </p><div class="fragment"><div class="line">git clone --branch 2.0.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p> <b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON) </p><div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_WAYLAND=off -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p> Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64: </p><div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Create a symbolik link to the executable in /usr/local/bin </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p> <b>9.</b> Test the new freerdp by connecting to a RDP host </p><div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir: </p><div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation </p><div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p> <b>12.</b> Compile remmina and install it </p><div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p> <b>13.</b> Create a symbolik link to the the executable </p><div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p> <b>14.</b> Run remmina </p><div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p> Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory </p><div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p> <b>2.</b> Remove the binary directory </p><div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p> <b>3.</b> Cleanup symlinks and dynamic loader </p><div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html
new file mode 100644
index 000000000..cc6196f6e
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Quick and dirty guide for compiling remmina on ubuntu 18.04</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Quick and dirty guide for compiling remmina on ubuntu 18.04 </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>These are instructions for people or software developers who want to contribute to the latest version of Remmina on Ubuntu 20.04.</p>
+<p>If you are an end user and you want to install the latest version of remmina, please use the "Remmina Team Ubuntu PPA - next branch", as explained on the <a href="https://gitlab.com/Remmina/Remmina/wikis/home">homepage of the wiki</a>.</p>
+<p>By following these instructions, you will get Remmina and FreeRDP compiled under the /opt/remmina_devel/ subdir, so they will not mess up your system too much. This is ideal for testing remmina.</p>
+<p>You will also find the uninstall instructions at the bottom of this page.</p>
+<p><b>1.</b> Install all packages required to build freerdp and remmina:</p>
+<div class="fragment"><div class="line">sudo apt install build-essential git-core cmake libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"> libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"> libxrandr-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \</div><div class="line"> libxi-dev libavutil-dev \</div><div class="line"> libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt20-dev libssh-dev libpulse-dev \</div><div class="line"> libvte-2.91-dev libxkbfile-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"> libgnutls28-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"> libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-4.0-dev libsystemd-dev \</div><div class="line"> libsoup2.4-dev libjson-glib-dev libavresample-dev libsodium-dev \</div><div class="line"> libusb-1.0-0-dev</div></div><!-- fragment --><p><b>2.</b> Remove freerdp-x11 package and all packages containing the string remmina in the package name.</p>
+<div class="fragment"><div class="line">sudo apt purge &quot;?name(^remmina.*)&quot; &quot;?name(^libfreerdp.*)&quot; &quot;?name(^freerdp.*)&quot; &quot;?name(^libwinpr.*)&quot;</div></div><!-- fragment --><p><b>3.</b> Create a new directory for development in your home directory, and cd into it</p>
+<div class="fragment"><div class="line">mkdir ~/remmina_devel</div><div class="line">cd ~/remmina_devel</div></div><!-- fragment --><p><b>4.</b> Download the latest source code of FreeRDP from its master branch</p>
+<div class="fragment"><div class="line">git clone --branch stable-2.0 https://github.com/FreeRDP/FreeRDP.git</div><div class="line">cd FreeRDP</div></div><!-- fragment --><p><b>5.</b> Configure FreeRDP for compilation (don't forget to include -DWITH_PULSE=ON)</p>
+<div class="fragment"><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DWITH_SSE2=ON -DWITH_CUPS=on -DWITH_PULSE=on -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/freerdp .</div></div><!-- fragment --><p>Please note that the above line will make FreeRDP install in /opt/remmina_devel/freerdp</p>
+<p><b>6.</b> Compile FreeRDP and install</p>
+<div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p><b>7.</b> Make your system dynamic loader aware of the new libraries you installed. For Ubuntu x64:</p>
+<div class="fragment"><div class="line">echo /opt/remmina_devel/freerdp/lib | sudo tee /etc/ld.so.conf.d/freerdp_devel.conf &gt; /dev/null</div><div class="line">sudo ldconfig</div></div><!-- fragment --><p><b>8.</b> Create a symbolik link to the executable in /usr/local/bin</p>
+<div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/freerdp/bin/xfreerdp /usr/local/bin/</div></div><!-- fragment --><p><b>9.</b> Test the new freerdp by connecting to a RDP host</p>
+<div class="fragment"><div class="line">xfreerdp +clipboard /sound:rate:44100,channel:2 /v:hostname /u:username</div></div><!-- fragment --><p><b>10.</b> Now clone remmina repository to your devel dir:</p>
+<div class="fragment"><div class="line">cd ~/remmina_devel</div><div class="line">git clone https://gitlab.com/Remmina/Remmina.git</div></div><!-- fragment --><p><b>11.</b> Configure Remmina for compilation</p>
+<div class="fragment"><div class="line">cd Remmina</div><div class="line">cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX:PATH=/opt/remmina_devel/remmina -DCMAKE_PREFIX_PATH=/opt/remmina_devel/freerdp --build=build .</div></div><!-- fragment --><p><b>12.</b> Compile remmina and install it</p>
+<div class="fragment"><div class="line">make &amp;&amp; sudo make install</div></div><!-- fragment --><p><b>13.</b> Create a symbolik link to the the executable</p>
+<div class="fragment"><div class="line">sudo ln -s /opt/remmina_devel/remmina/bin/remmina /usr/local/bin/</div></div><!-- fragment --><p><b>14.</b> Run remmina</p>
+<div class="fragment"><div class="line">remmina</div></div><!-- fragment --><p>Please note that icons and launcher files are not installed, so don't search for remmina using Unity Dash.</p>
+<h2>Uninstall everything</h2>
+<p><b>1.</b> Remove the devel directory</p>
+<div class="fragment"><div class="line">rm -rf ~/remmina_devel/</div></div><!-- fragment --><p><b>2.</b> Remove the binary directory</p>
+<div class="fragment"><div class="line">sudo rm -rf /opt/remmina_devel/</div></div><!-- fragment --><p><b>3.</b> Cleanup symlinks and dynamic loader</p>
+<div class="fragment"><div class="line">sudo rm /etc/ld.so.conf.d/freerdp_devel.conf /usr/local/bin/remmina /usr/local/bin/xfreerdp</div><div class="line">sudo ldconfig</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html
new file mode 100644
index 000000000..35773bf64
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Requirements</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Requirements </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h2><a href="https://github.com/skywinder/Github-Changelog-Generator">github_changelog_generator</a></h2>
+<p>You can install using gem</p>
+<div class="fragment"><div class="line">gem install github_changelog_generator</div></div><!-- fragment --><p>If you want to contribute back to the project you can clone the repository and build it.</p>
+<h2><a href="https://github.com/skywinder/github-changelog-generator/blob/master/README.md#github-token">GitHub token</a></h2>
+<p>You need the token because github doesn't accept more than 50 request per day with it's API. It's for free...</p>
+<h1>Generate the <a class="el" href="_c_h_a_n_g_e_l_o_g_8md.html">CHANGELOG.md</a></h1>
+<p>github_changelog_generator -t 689c2dd09acaebf4ce92fecaeed2ec8140b6bfbf</p>
+<h1>Commit the new <a class="el" href="_c_h_a_n_g_e_l_o_g_8md.html">CHANGELOG.md</a></h1>
+<p>The <a class="el" href="_c_h_a_n_g_e_l_o_g_8md.html">CHANGELOG.md</a> should be committed only after a new release. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html
new file mode 100644
index 000000000..8fa230ee2
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html
@@ -0,0 +1,114 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Development-Notes</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Development-Notes </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Use this page to add useful links and notes to help out with the development</p>
+<h1>Remmina generated documentation</h1>
+<p><a href="https://daguniverse.github.io/RemminaDoc/index.html">https://daguniverse.github.io/RemminaDoc/index.html</a></p>
+<h1>GTK3</h1>
+<h2>GTK3 Deprecation mini guide</h2>
+<ul>
+<li><a href="https://developer.gnome.org/gtk3/unstable/index.html">GTK3 Reference Manual</a></li>
+<li><a href="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html#names">Icon names standard</a></li>
+<li><a href="https://docs.google.com/document/d/1KCVPoYQBqMbDP11tHPpjW6uaEHrvLUmcDPqKAppCY8o/pub">GTK+ Stock Item Deprecation</a></li>
+<li><a href="https://docs.google.com/spreadsheet/pub?key=0AsPAM3pPwxagdGF4THNMMUpjUW5xMXZfdUNzMXhEa2c&amp;output=html">Stock Items Migration Guide</a></li>
+<li>Menu and GtkActionGroup deprecation: <a href="http://stackoverflow.com/questions/24788045/gtk-action-group-new-and-gtkstock-what-to-use-instead">what to use instead</a></li>
+<li>_"GtkAlignment has been deprecated in 3.14 and should not be used in newly-written code. The desired effect can be achieved by using the “halign”, “valign” and “margin” properties on the child widget."_ In remmina GtkAlignment has been replaced by a GtkAspectFrame, used by the "scaler" code to scale the remote desktop.</li>
+<li>Icons in menu are being removed. See <a href="https://igurublog.wordpress.com/2014/03/22/gtk-3-10-drops-menu-icons-and-mnemonics/">here</a>. Also mnemonics should be removed. </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html
new file mode 100644
index 000000000..3a4fe6d92
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Multi monitor support</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Multi monitor support </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>See also #6 and #323</p>
+<h2>Windows server support</h2>
+<ul>
+<li>Only in full scren</li>
+</ul>
+<h3>WINDOWS 2003 till WINDOWS 2008 (XP, Vista)</h3>
+<ul>
+<li>Only using span. One big bitmap for all monitors</li>
+<li>Going out of fullscreen we still have a huge bitmap as the server cannot be reconfigured.</li>
+<li>Removing a montor is not possible, we will have a window with the huge bitmap.</li>
+<li>As conswquence we can go back to fullscreen with any impact.</li>
+</ul>
+<h3>WINDOWS 2008R2, WINDOWS 2012 (Win7, Win8)</h3>
+<ul>
+<li>First basic, real multi monitor support, the server is aware of each monitor and places the windows correctly.</li>
+<li>Yet, it doesn't support the configuration change awareness.</li>
+<li>Same behaviors as above.</li>
+</ul>
+<h3>WINDOWS 2012R2, WINDOWS 2016 (Win 8.1, Win 10) and forward</h3>
+<p>"Display Control Virtual Channel Extension" has been implemented, <a href="https://msdn.microsoft.com/en-us/library/dn366738.aspx">https://msdn.microsoft.com/en-us/library/dn366738.aspx</a></p>
+<p>Every time we add qand remove a monitor, the remote server adapt its configuration.</p>
+<h2>FreeRDP</h2>
+<ul>
+<li>FreeRDP/client/common/client.c</li>
+</ul>
+<div class="fragment"><div class="line"><span class="comment">/* Moved logic for Multimon and Span monitors to force fullscreen, so</span></div><div class="line"><span class="comment"> * that the rdp file also triggers this functionality */</span> </div><div class="line"><span class="keywordflow">if</span> (settings-&gt;SpanMonitors) </div><div class="line">{ </div><div class="line"> settings-&gt;UseMultimon = TRUE; </div><div class="line"> settings-&gt;Fullscreen = TRUE; </div><div class="line">} </div><div class="line"><span class="keywordflow">else</span> <span class="keywordflow">if</span> (settings-&gt;UseMultimon) </div><div class="line">{ </div><div class="line"> settings-&gt;Fullscreen = TRUE; </div><div class="line">} </div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__home.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__home.html
new file mode 100644
index 000000000..85ef8ebce
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__home.html
@@ -0,0 +1,159 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: *Welcome to the Remmina wiki*</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__home.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">*Welcome to the Remmina wiki* </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Remmina is developed on <a href="https://gitlab.com/Remmina/Remmina">GitLab</a>, as of the 20th of June 2018.</p>
+<p>Use these <a href="https://gitlab.com/Remmina/Remmina/wikis/home">wiki</a> and <a href="https://gitlab.com/Remmina/Remmina/issues">issues</a> links instead of GitHub equivalents. </p><hr/>
+<p> Usually Remmina is <a href="https://repology.org/project/remmina/versions">included in your distribution</a>, or in an external repository you can add.</p>
+<p><a href="https://repology.org/project/remmina/versions"></a></p>
+<h2><a href="https://ubuntu.com/">Ubuntu</a> and <a href="https://linuxmint.com/">Linux Mint</a></h2>
+<p>An official PPA with the latest Remmina release can be install by copying and pasting this in a terminal:</p>
+<div class="fragment"><div class="line">sudo apt-add-repository ppa:remmina-ppa-team/remmina-next</div><div class="line">sudo apt update</div><div class="line">sudo apt install remmina remmina-plugin-rdp remmina-plugin-secret</div></div><!-- fragment --><p>Make sure Remmina is not running. Either close it, reboot, or kill it by pasting this in a terminal:</p>
+<div class="fragment"><div class="line">sudo killall remmina</div></div><!-- fragment --><p>List available plugins with <code>apt-cache search remmina-plugin</code>. By default RDP, SSH and SFTP are installed. To test a daily built development version, do the above, but start with</p>
+<div class="fragment"><div class="line">ppa:remmina-ppa-team/remmina-next-daily</div></div><!-- fragment --><h2><a href="https://www.debian.org/">Debian</a></h2>
+<h3>10 <a href="https://wiki.debian.org/DebianBuster">Buster</a> (stable), <a href="https://wiki.debian.org/DebianBullseye">Bullseye</a> (testing), and <a href="https://wiki.debian.org/DebianUnstable">Sid</a> (unstable)</h3>
+<p>Remmina is in the official stable, testing and unstable repositories.</p>
+<h3>9 <a href="https://wiki.debian.org/DebianStretch">Stretch</a> (oldstable)</h3>
+<p>Here Remmina can be <a href="https://www.remmina.org/debian-the-boys-are-backport-in-town/">installed from backports</a> by copying and pasting this in a terminal: </p><div class="fragment"><div class="line">echo &#39;deb http://ftp.debian.org/debian stretch-backports main&#39; | sudo tee --append /etc/apt/sources.list.d/stretch-backports.list &gt;&gt; /dev/null</div><div class="line">sudo apt update</div><div class="line">sudo apt install -t stretch-backports remmina remmina-plugin-rdp remmina-plugin-secret remmina-plugin-spice</div></div><!-- fragment --><h2><a href="https://www.raspberrypi.org/">Raspberry Pi</a></h2>
+<p>Remmina operates its own package repository for Raspbian Buster (10.x) you can install by copying and pasting this in a terminal: </p><div class="fragment"><div class="line">sudo apt install dirmngr</div><div class="line">sudo apt-key adv --fetch-keys https://www.remmina.org/raspbian/remmina_raspbian.asc</div><div class="line">sudo bash -c &#39;echo &quot;deb https://www.remmina.org/raspbian/ buster main&quot; &gt; /etc/apt/sources.list.d/remmina_raspbian.list&#39;</div><div class="line">sudo apt update</div><div class="line">sudo apt install remmina</div></div><!-- fragment --><p> (Tested on RPi 3B and 3B+) It is strongly advised to also install gnome-keyring to let Remmina save encrypted passwords in a safer place than .remmina textfiles in the /home user folder. </p><div class="fragment"><div class="line">sudo apt install gnome-keyring</div></div><!-- fragment --><p>(The remmina-next PPA can be used on Raspberry Pi 2 and 3, provided you are running one of the supported *buntu derivatives.)</p>
+<h2><a href="https://flathub.org/">Flatpak</a></h2>
+<p>This is a system agnostic package that works on just about every distribution.</p>
+<div class="fragment"><div class="line">flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo</div><div class="line"># In order to have H.264 codecs</div><div class="line">flatpak install org.freedesktop.Platform</div><div class="line">flatpak install org.freedesktop.Platform.openh264</div><div class="line">flatpak install --user flathub org.remmina.Remmina</div><div class="line">flatpak run --user org.remmina.Remmina</div></div><!-- fragment --><p>If you use SSH agent (<a href="https://github.com/flatpak/flatpak/issues/1438">https://github.com/flatpak/flatpak/issues/1438</a> )</p>
+<div class="fragment"><div class="line">flatpak run --filesystem=$SSH_AUTH_SOCK --env=SSH_AUTH_SOCK=$SSH_AUTH_SOCK org.remmina.Remmina</div></div><!-- fragment --><p>Flatpak stores data for installed applications (the XDG config/data folders) under <code>$HOME/.var</code> If you have previously installed Remmina with another package manager, you will have to transfer what was under <code>$HOME/.config/remmina</code> and <code>$HOME/.local/share/remmina</code> under, respectively <code>~/.var/app/org.remmina.Remmina/config/remmina</code> and <code>~/.var/app/org.remmina.Remmina/data/remmina</code></p>
+<h2><a href="https://snapcraft.io/">Snap</a></h2>
+<p>This also is a system agnostic package that works on many distributions, but mainly Ubuntu.</p>
+<p>If you run into issues, try something else first, and then <a href="https://github.com/FreeRDP/Remmina/issues">report the issues</a>. Our Snap package does not work on Ubuntu 17.10 if you use Wayland, see <a href="https://github.com/FreeRDP/Remmina/issues/1414">issue #1414</a>._</p>
+<p>First make sure you have <code>snapd</code> installed. Then install the last release from the Ubuntu Software Center by looking for <code>Remmina</code>, or install it from a terminal with:</p>
+<div class="fragment"><div class="line">sudo snap install remmina</div></div><!-- fragment --><p>The Snap subsystem has limitations, so some features, for example password storage via keyring is missing and <em>must</em> be fixed manually:</p>
+<div class="fragment"><div class="line">sudo snap connect remmina:avahi-observe :avahi-observe # servers discovery</div><div class="line">sudo snap connect remmina:cups-control :cups-control # printing</div><div class="line">sudo snap connect remmina:mount-observe :mount-observe # mount management</div><div class="line">sudo snap connect remmina:password-manager-service :password-manager-service # password manager</div></div><!-- fragment --><p>Some features just don't work on Snap, for example accessing your personal ~/.ssh directory is not possible. You have to manually copy your ~/.ssh/* files to ~/snap/remmina/common/.ssh/</p>
+<p>If you want to install latest Git revision of Remmina as Snap, get it from the <code>edge</code> channel:</p>
+<div class="fragment"><div class="line">sudo snap install remmina --edge</div></div><!-- fragment --><p><b>Or</b>, update your Remmina Snap install with your channel of choice:</p>
+<div class="fragment"><div class="line">sudo snap refresh remmina --channel=edge # use --channel=stable otherwise</div></div><!-- fragment --><p>Snaps are updated with the system and include both latest <code>FreeRDP</code> Git and the latest <code>libssh 0.7</code> release (for better security).</p>
+<h2><a href="https://getfedora.org/">Fedora</a> and <a href="https://www.redhat.com">Red Hat</a></h2>
+<p>As of March 2018 Remmina is available on most Fedora testing and stable, we still have a (not updated) Copr provided by <a href="https://github.com/Hubbitus">Hubbitus</a> (Pavel Alexeev), to install, paste this in a terminal as root:</p>
+<div class="fragment"><div class="line">dnf copr enable hubbitus/remmina-next</div><div class="line">dnf upgrade --refresh &#39;remmina*&#39; &#39;freerdp*&#39;</div></div><!-- fragment --><h2><a href="https://www.redhat.com">Red Hat</a></h2>
+<p>Install Remmina from the EPEL repository by pasting this in a terminal:</p>
+<div class="fragment"><div class="line">wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm</div><div class="line">rpm -ivh epel-release-latest-7.noarch.rpm</div></div><!-- fragment --><h2><a href="https://www.gentoo.org/">Gentoo</a></h2>
+<p>To build and install</p>
+<div class="fragment"><div class="line">emerge -av net-misc/remmina</div></div><!-- fragment --><p>To build a binary and install</p>
+<div class="fragment"><div class="line">emerge -avb net-misc/remmina</div></div><!-- fragment --><div class="fragment"><div class="line">emerge -avk remmina*.tar.bz</div><div class="line"># From cp /usr/portage/packages/net-misc remmina* &gt; /mnt/some-usb-stick to multiple boxes</div><div class="line">emerge -avk =net-misc/remmina-#??Version number</div></div><!-- fragment --><h2><a href="https://www.sabayon.org/">Sabayon</a></h2>
+<div class="fragment"><div class="line">equo -i net-misc/remmina</div></div><!-- fragment --><h2><a href="https://www.archlinux.org/">Arch Linux</a> (and friends)</h2>
+<p>There is an official Arch Linux Remmina package. <b>Or</b>, if you want to use the AUR, install <a href="https://aur.archlinux.org/packages/remmina-git">remmina-git</a>. There are also some external, not supported plugins provided by <a href="https://github.com/muflone">Muflone</a> and other Arch Remmina <a href="https://aur.archlinux.org/packages/?O=0&amp;SeB=nd&amp;K=Remmina&amp;outdated=&amp;SB=n&amp;SO=a&amp;PP=50&amp;do_Search=Go">Protocol plugins</a></p>
+<h2><a href="https://getsol.us/home/">Solus</a></h2>
+<div class="fragment"><div class="line">sudo eopkg update-repo</div><div class="line">sudo eopkg install remmina</div></div><!-- fragment --><h2><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation">Build from source</a></h2>
+<ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS">Compilation guide for CentOS</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux">Compile on Arch Linux</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster">Compile on Debian 10 Buster</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch">Compile on Debian 9 Stretch</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26">Compile on Fedora 20 ~ 26</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD">Compile on FreeBSD</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04">Compile on Ubuntu 14.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04">Compile on Ubuntu 16.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04">Compile on Ubuntu 18.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04">Compile on Ubuntu 20.04</a></li>
+</ul>
+<p>Code development and bugfixes take place on the master branch. It compiles with the current FreeRDP master branch, and will compile with <a href="http://www.freerdp.com/">FreeDRP</a> 2.0 when released as stable.</p>
+<h1>Links</h1>
+<ul>
+<li><a href="https://www.remmina.org/">Remmina website</a></li>
+<li><a href="https://reddit.com/r/Remmina">Remmina subreddit</a></li>
+<li><a href="https://remmina.gitlab.io/remminadoc.gitlab.io">Remmina Development Doc</a></li>
+<li><a href="https://repology.org/project/remmina/versions">Versions for various operating systems</a> </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html
new file mode 100644
index 000000000..75dc8ac41
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: How-to-translate-Remmina</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">How-to-translate-Remmina </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Please follow the https://gitlab.com/Remmina/Remmina/blob/master/CONTRIBUTING.md "CONTRIBUTING guide" for general informations on how to contribute to Remmina.</p>
+<p>Remmina uses xgettext to generate the translated strings, you don't necessarily need to have a good understanding of it but in the case you need an high level overview check <a href="https://www.gutenberg.org/wiki/Gutenberg:GNU_Gettext_Translation_How-To">this</a></p>
+<h1>Using Weblate</h1>
+<p><a href="https://hosted.weblate.org/engage/remmina/?utm_source=widget"></a></p>
+<ul>
+<li><a href="https://hosted.weblate.org/projects/remmina/">Translate</a></li>
+<li><a href="https://hosted.weblate.org/projects/remmina/#languages">View project languages</a></li>
+</ul>
+<h1>Using Git and and a Text or PO Editor</h1>
+<h2>To add a new language</h2>
+<p>Download the <a href="https://gitlab.com/Remmina/Remmina/blob/master/po/remmina.pot">remmina.pot</a> and using a po editor (poedit, gtranslator, ...) create the po file of your language.</p>
+<p>When you are done send it to <a href="#" onclick="location.href='mai'+'lto:'+'l10'+'n@'+'lis'+'ts'+'.re'+'mm'+'ina'+'.o'+'rg'; return false;">l10n@<span style="display: none;">.nosp@m.</span>list<span style="display: none;">.nosp@m.</span>s.rem<span style="display: none;">.nosp@m.</span>mina<span style="display: none;">.nosp@m.</span>.org</a> , alternatively you can fork the Remmina repository and submit a merge request.</p>
+<h2>To update an existing translation.</h2>
+<p>All the existing po files are under <a href="https://gitlab.com/Remmina/Remmina/blob/master/po">https://gitlab.com/Remmina/Remmina/blob/master/po</a></p>
+<p>Grab the one you want to update and use a po editor to update it, than you can either send to us at <a href="#" onclick="location.href='mai'+'lto:'+'l10'+'n@'+'lis'+'ts'+'.re'+'mm'+'ina'+'.o'+'rg'; return false;">l10n@<span style="display: none;">.nosp@m.</span>list<span style="display: none;">.nosp@m.</span>s.rem<span style="display: none;">.nosp@m.</span>mina<span style="display: none;">.nosp@m.</span>.org</a>, either submit a merge request.</p>
+<h2>Translations status</h2>
+<p><a href="https://hosted.weblate.org/engage/remmina/?utm_source=widget"></a> </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html
new file mode 100644
index 000000000..b5da1cbb8
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Update-gettext-messages</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Update-gettext-messages </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>This is a quick, dirty and no brainy procedure to update the po files in Remmina.</p>
+<p>Please count till 10 seconds before to copy&amp;paste it in the terminal.</p>
+<div class="fragment"><div class="line">REMMINATOP=~/remmina_devel/Remmina </div><div class="line">cd $REMMINATOP </div><div class="line">find src plugins -name &quot;*.c&quot; | sed &#39;s/^.\///&#39; &gt;| po/POTFILES.in </div><div class="line">find data -name &quot;*.glade&quot; | sed &#39;s/^.\///&#39; &gt;&gt; po/POTFILES.in </div><div class="line">find data -name &quot;*.appdata.xml&quot; | sed &#39;s/^.\///&#39; &gt;&gt; po/POTFILES.in</div><div class="line">xgettext --from-code=UTF-8 -k_ -kN_ -ktranslatable --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments --files-from=po/POTFILES.in --output=po/messages.pot --copyright-holder=&quot;2014-2018 Antenore Gatta, Giovanni Panozzo&quot; --package-name=&quot;Remmina&quot; --package-version=&quot;1.2.31&quot; --msgid-bugs-address=&quot;admin@remmina.org&quot;</div><div class="line">cd $REMMINATOP/po </div><div class="line">for i in *.po; do </div><div class="line">msgmerge -N --backup=off --update $i messages.pot </div><div class="line">done </div><div class="line">for i in $REMMINATOP/po/*.po ; do </div><div class="line">TMPF=/tmp/f$$.txt </div><div class="line">sed &#39;/^#~/d&#39; $i &gt; $TMPF </div><div class="line">awk &#39;BEGIN{bl=0}/^$/{bl++;if(bl==1)print;else next}/^..*$/{bl=0;print}&#39; $TMPF &gt;| $i </div><div class="line">rm $TMPF </div><div class="line">done </div><div class="line">rm *.po~ </div><div class="line">rm messages.pot </div></div><!-- fragment --><p>To test remmina in another language you can start it from the command line this way:</p>
+<div class="fragment"><div class="line">LANGUAGE=ru remmina</div></div><!-- fragment --> </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html
new file mode 100644
index 000000000..2cda48575
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: GTK-versions-on-various-distributions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">GTK-versions-on-various-distributions </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><table class="doxtable">
+<tr>
+<th>Distribution</th><th align="right">GTK+3 version</th><th align="right">libssh version</th><th align="right">libvncserver version </th></tr>
+<tr>
+<td>Debian 7 Wheezy</td><td align="right"><a href="https://packages.debian.org/wheezy/libgtk-3-0">3.4.2</a></td><td align="right"><a href="https://packages.debian.org/wheezy/libssh-4">0.5.4</a></td><td align="right"><a href="https://packages.debian.org/wheezy/libvncserver0">0.9.9</a> </td></tr>
+<tr>
+<td>Debian 8 Jessie</td><td align="right"><a href="https://packages.debian.org/jessie/libgtk-3-0">3.14.5</a></td><td align="right"><a href="https://packages.debian.org/jessie/libssh-4">0.6.3</a></td><td align="right"><a href="https://packages.debian.org/jessie/libvncserver0">0.9.9</a> </td></tr>
+<tr>
+<td>Debian 9 Stretch (current Raspbian)</td><td align="right"><a href="https://packages.debian.org/stretch/libgtk-3-0">3.22.11</a></td><td align="right"><a href="https://packages.debian.org/stretch/libssh-4">0.7.3</a></td><td align="right"><a href="https://packages.debian.org/stretch/libvncserver1">0.9.11</a> </td></tr>
+<tr>
+<td>Debian Sid</td><td align="right"><a href="https://packages.debian.org/sid/libgtk-3-0">3.22.30</a></td><td align="right"><a href="https://packages.debian.org/sid/libssh-4">0.8.0</a></td><td align="right"><a href="https://packages.debian.org/sid/libvncserver1">0.9.11</a> </td></tr>
+<tr>
+<td>CentOS 7/RHEL 7</td><td align="right"><a href="https://git.centos.org/summary/rpms!gtk3.git">3.8</a></td><td align="right"><a href="https://git.centos.org/summary/rpms!libssh.git">0.6.4</a></td><td align="right"><a href="https://git.centos.org/summary/rpms!libvncserver.git">0.9.9</a> </td></tr>
+<tr>
+<td>Fedora 26</td><td align="right"><a href="https://apps.fedoraproject.org/packages/gtk3">3.22.16</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libssh">0.7.5</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libvncserver">0.9.11</a> </td></tr>
+<tr>
+<td>Fedora 27</td><td align="right"><a href="https://apps.fedoraproject.org/packages/gtk3">3.22.24</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libssh">0.7.5</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libvncserver">0.9.11</a> </td></tr>
+<tr>
+<td>Fedora 28</td><td align="right"><a href="https://apps.fedoraproject.org/packages/gtk3">3.22.30</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libssh">0.7.5</a></td><td align="right"><a href="https://apps.fedoraproject.org/packages/libvncserver">0.9.11</a> </td></tr>
+<tr>
+<td>Ubuntu 10.04 LTS (Lucid Lynx)</td><td align="right">-</td><td align="right"><a href="http://packages.ubuntu.com/lucid-updates/libssh-4">0.4.2</a></td><td align="right"><a href="http://packages.ubuntu.com/lucid/libvncserver0">0.9.7</a> </td></tr>
+<tr>
+<td>Ubuntu 12.04 LTS (Precise Pangolin)</td><td align="right"><a href="http://packages.ubuntu.com/precise-updates/libgtk-3-0">3.4.2</a></td><td align="right"><a href="http://packages.ubuntu.com/precise-updates/libssh-4">0.5.2</a></td><td align="right"><a href="http://packages.ubuntu.com/precise-updates/libvncserver0">0.9.8.2</a> </td></tr>
+<tr>
+<td>Ubuntu 14.04 LTS (Trusty Tahr)</td><td align="right"><a href="http://packages.ubuntu.com/trusty-updates/libgtk-3-0">3.10.8</a></td><td align="right"><a href="http://packages.ubuntu.com/trusty-updates/libssh-4">0.6.1</a></td><td align="right"><a href="http://packages.ubuntu.com/trusty-updates/libvncserver0">0.9.9</a> </td></tr>
+<tr>
+<td>Ubuntu 14.10 (Utopic Unicorn)</td><td align="right"><a href="http://packages.ubuntu.com/utopic-updates/libgtk-3-0">3.12.2</a></td><td align="right"><a href="http://packages.ubuntu.com/utopic-updates/libssh-4">0.6.3</a></td><td align="right"><a href="http://packages.ubuntu.com/utopic/libvncserver0">0.9.9</a> </td></tr>
+<tr>
+<td>Ubuntu 15.04 (Vivid Vervet)</td><td align="right"><a href="http://packages.ubuntu.com/vivid/libgtk-3-0">3.14.7</a></td><td align="right"><a href="http://packages.ubuntu.com/vivid/libssh-4">0.6.3</a></td><td align="right"><a href="http://packages.ubuntu.com/vivid/libvncserver0">0.9.9</a> </td></tr>
+<tr>
+<td>Ubuntu 16.04 (Xenial Xerus)</td><td align="right"><a href="http://packages.ubuntu.com/xenial/libgtk-3-0">3.18.9</a></td><td align="right"><a href="http://packages.ubuntu.com/xenial/libssh-4">0.6.3</a></td><td align="right"><a href="http://packages.ubuntu.com/xenial/libvncserver1">0.9.10</a> </td></tr>
+<tr>
+<td>Ubuntu 17.04 (Zesty Zapus)</td><td align="right"><a href="http://packages.ubuntu.com/zesty/libgtk-3-0">3.22.11</a></td><td align="right"><a href="http://packages.ubuntu.com/zesty/libssh-4">0.7.3</a></td><td align="right"><a href="http://packages.ubuntu.com/zesty/libvncserver1">0.9.11</a> </td></tr>
+<tr>
+<td>Ubuntu 18.04 (Bionic Beaver)</td><td align="right"><a href="http://packages.ubuntu.com/bionic/libgtk-3-0">3.22.30</a></td><td align="right"><a href="http://packages.ubuntu.com/bionic/libssh-4">0.8.0</a></td><td align="right"><a href="http://packages.ubuntu.com/bionic/libvncserver1">0.9.11</a> </td></tr>
+<tr>
+<td>Arch Linux</td><td align="right"><a href="https://www.archlinux.org/packages/extra/x86_64/gtk3">3.22.30</a></td><td align="right"><a href="https://www.archlinux.org/packages/extra/x86_64/libssh">0.7.5</a></td><td align="right"><a href="https://www.archlinux.org/packages/extra/x86_64/libvncserver">0.9.11</a> </td></tr>
+<tr>
+<td>Solus</td><td align="right"><a href="https://dev.solus-project.com/source/libgtk-3/">3.22.26</a></td><td align="right"><a href="https://dev.solus-project.com/source/libssh/">0.7.5</a></td><td align="right"><a href="https://dev.solus-project.com/source/libssh/">0.9.11</a> </td></tr>
+</table>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html
new file mode 100644
index 000000000..38fb3d204
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Problems-with-Wayland</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Problems-with-Wayland </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><ul>
+<li>Composing a indicator menu with 250-300 elements takes a lot of time (up to 2-3 seconds some times). This composition is done outside remmina: after remmina sets the menu with app_indicator_set_menu() and builds it, remmina returns to the event loop. Then something external to remmina freezes the mouse cursor for 1-3 seconds when building that menu. Tested on ubuntu 18.04 with wayland.</li>
+<li>Remmina is not receiving clipboard owner-changes when it has not focus: <a href="https://gitlab.com/Remmina/Remmina/issues/2084">https://gitlab.com/Remmina/Remmina/issues/2084</a></li>
+<li>The Windows/Super key cannot be captured (to be verified) </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html
new file mode 100644
index 000000000..8ba2bc868
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-RDP-and-HiDPI-scaling</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-RDP-and-HiDPI-scaling </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>TL;DR all the RDP remote desktops are blurred on a HiDPI monitor with scaling enabled. And there is no way to fix it under Gnome Shell. Read issues #1778 #1878 to find a workaround for gnome shell, or switch to KDE desktop.</p>
+<h2>How is it supposed to work</h2>
+<p>The RDP protocol, starting with Windows 8.1, requires that scaling be done at the server-side. Your local Remmina client should simply draw unscaled the bitmaps it receives from the server.</p>
+<h2>Why it does not work</h2>
+<p>GTK3 and Gnome Shell have a horrible implementation of HiDPI scaling. When you enable scaling on your Gnome Shell settings, you enable an integer scaling factor, i.e. 1x 2x 3x. After enabling scaling under Gnome Shell, GTK 3 will scale all bitmaps we draw to a GtkDrawingArea by that scaling factor. It will also scale all cursor bitmaps and mouse positions/movement. As we told before, RDP requires that all those scaling operations to be done at the server-side by windows, not by the client.</p>
+<p>We tried to neutralize GTK integral scaling factor for Remmina application, but we did not reach acceptable results:</p>
+<ul>
+<li>Neutralize bitmap scaling: can be done in code with cairo, but requires some dozen lines of code in various Remmina parts</li>
+<li>Neutralize cursor position scaling: can be done just by multiplying by the scaling factor, but we lose precision in mouse position.</li>
+<li>Neutralize window dimension/allocation scaling: again this can be done by multiplying or dividing by the scaling factor the GtkDrawingArea width and height. But we lose precision.</li>
+<li>Neutralize cursor scaling: seems to be impossible to do with GTK. So we could scale down the cursor bitmap, but it will be shown pixelated due to the duplication of pixels done by GTK.</li>
+</ul>
+<p>All this effort took around 100 lines of code, 3-4 hours of development and many hours of testing. And the result is really bad: cursor is still bad, code became more complex, a bit of mouse precision is lost. Note that the first problem "neutralize bitmap scaling" could be also partially solved using the current Remmina scaler and a fix remote resolution, provided that every time you change the remote resolution you should recalculate your local window size. A simpler approach is to enable the Remmina scaler, set the remote resolution as your monitor full resolution and use Remmina full screen only. But cursors are still not scaled See <a href="https://gitlab.com/Remmina/Remmina/issues/1878">issue 1878</a>.</p>
+<h2>Even worse: fractional scaling experimental feature</h2>
+<p>Recently an experimental feature has been added to Gnome Shell to enable fractional scaling (i.e: 1.7x), both for X.Org and Wayland. This feature seems to set GTK scaling to 2x and then apply a global screen scaling via Xrandr or similar. This makes Remmina impossible to correctly deal with local scaling: Remmina can no longer disable scaling done by Xrandr, and is also unable to determine your current monitor scaling factor to send to the remote server. The result is very blurry.</p>
+<h2>How should it work</h2>
+<p>Windows 10, MacOS, KDE/Qt have a simple approach to HiDPI: an application can declare itself to be HiDPI aware. When the application declares itself HiDPI aware, all graphical drawings to the monitor are not scaled, all pointer motions are not scaled, all mouse cursor are not scaled. But all wigets of the application, like buttons, texts are still correctly rendered at bigger dimensions. Under Qt this can obtained with a single line of code: <code>QGuiApplication::setAttribute(Qt::AA_DisableHighDpiScaling);</code> Unfortunately, Remmina is not a Qt application, it's a GTK application. And Gnome Shell is not Plasma. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html
new file mode 100644
index 000000000..2458141b1
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina-VNC-to-Raspbian-Stretch</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina-VNC-to-Raspbian-Stretch </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>The RaspberryPi Raspbian 9 default VNC server is RealVNC. RealVNC only supports 5 propertary security types: 5, 6, 13, 130 and 192. According to the official RealVNC documentation for the "Authentication" parameter, Authentication=VncAuth is the only scheme that allows direct connections from VNC-compatible Viewer projects from third parties.</p>
+<p>In order to change to VncAuth scheme in your Raspbian and set a password to accept connections from Remmina VNC plugin, you have to:</p><ol type="1">
+<li>Open a SSH session or a terminal window to the raspberry</li>
+<li>As root, edit the file /root/.vnc/config.d/vncserver-x11 <div class="fragment"><div class="line">3. Add the following lines at the end of the file</div></div><!-- fragment --> Authentication=VncAuth Password=aa8ba782c23aff7e <div class="fragment"><div class="line">4. Save the file.</div><div class="line">5. Restart the VNC server service with</div><div class="line">```sudo systemctl restart vncserver-x11-service</div></div><!-- fragment --></li>
+</ol>
+<p>The above encrypted password is <b>remmina</b>, if you want to change it, type <code>sudo vncpasswd -service</code> and restart the VNC server service with <code>sudo systemctl restart vncserver-x11-serviced</code></p>
+<p>References:</p>
+<p>[1] IANA: <a href="https://www.iana.org/assignments/rfb/rfb.xhtml#rfb-1">Remote Framebuffer Security Types</a> [2] RealVNC: <a href="https://www.realvnc.com/en/connect/docs/server-parameter-ref.html">VNC Server parameter reference</a> </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html
new file mode 100644
index 000000000..5d9de5486
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html
@@ -0,0 +1,136 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Systray menu</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Systray menu </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Currently there is not a common way to create a systray menu compatible with all desktops.</p>
+<p><a href="https://developer.gnome.org/gtk3/stable/GtkStatusIcon.html">GtkStatusIcon</a> has been deprecated since GTK 3.14. So we must move to something else. Unfortunately, this "something else" is different from a desktop environment to another.</p>
+<p>E.g.: read <a href="https://trac.transmissionbt.com/ticket/3685">this discussion</a> for the same problem on Transmission client.</p>
+<p>Yet, we cannot use gtk_window_present() from a systray menu, see issue <a href="https://gitlab.com/Remmina/Remmina/issues/542">#542</a>.</p>
+<p>So, for each supported desktop environment, we must answer two questions:</p>
+<p>Q1. Where do we put the remmina systray menu, and which API do we use for it ? Q2. Does this place also allow the user to raise a hidden window via gtk_window_present() ?</p>
+<h3>References</h3>
+<ul>
+<li><a href="http://www.freedesktop.org/wiki/Specifications/systemtray-spec/">freedesktop.org system tray spec</a></li>
+<li><a href="http://bazaar.launchpad.net/~unity-team/libunity/trunk/files">Libunity source code</a>, written in vala.</li>
+</ul>
+<h1>The desktop environments</h1>
+<h3>Unity</h3>
+<p>In Ubuntu's Unity, we currently do not use GtkStatusIcon, but libappindicator. This almost works, but when the remmina windows are not on the top, we are unable to present its windows to users. This is explained in <a href="https://github.com/FreeRDP/Remmina/issues/542">issue #542</a> and it's a problem of the window manager which prevents gtk_window_present() to stealing focus to other applications. We could use DBusMenu and the <a href="https://wiki.ubuntu.com/Unity/LauncherAPI">Launcher API</a> to move all the current remmina systray menu into Unity Launcher icon as <b>dynamic quicklist entries</b>. Compatibility with gtk_window_present() must be tested.</p>
+<h3>Gnome Shell</h3>
+<p>Some functions of the <a href="https://developer.gnome.org/shell/stable/">Shell</a> for ShellTrayIcon object should help for the icon (but no menu support ???). For correctly placing a menu, we can take a look to <a href="https://github.com/rgcjonas/gnome-shell-extension-appindicator">Gnome Shell Extension Appindicator source code</a>.</p>
+<p>Read <a href="https://wiki.gnome.org/Design/Whiteboards/StatusIcons">this page</a> which contains a possible plan for GtkStatusIcon under Gnome Shell.</p>
+<p>In Gnome Shell, Status Icons (GtkStatusIcon) were hidden into the Message Tray at the bottom of the screen. See <a href="https://help.gnome.org/misc/release-notes/3.6/users-message-tray.html.en">https://help.gnome.org/misc/release-notes/3.6/users-message-tray.html.en</a> The Message Tray has been removed with Gnome Shell 3.16: <a href="https://help.gnome.org/misc/release-notes/3.16/">https://help.gnome.org/misc/release-notes/3.16/</a> and it seems that a new drawer has been added to the bottom left of the screen to host all application status icons. Unfortunately I'm currently unable to find official changelog/documentation for this drawer.</p>
+<p>Currently Remmina detects Gnome Shell and, if detected, remmina will quit when there are no visible windows on the screen. We did this because older Gnome Shells hides all deprecated GtkStatusIcons in a hidden place below the screen, and the user is unable to undestand when remmina is running. Starting with <a href="http://www.webupd8.org/2015/03/gnome-316-released-with-new.html">Gnome Shell 3.16</a> a new drawer has been introduced, which can give the user visual feedback of the GtkStatusIcon presence.</p>
+<h3>KDE</h3>
+<p>In KDE <a href="http://api.kde.org/frameworks-api/frameworks5-apidocs/knotifications/html/classKStatusNotifierItem.html">KStatusNotifierItem</a></p>
+<h3>Plasma 5</h3>
+<p>In Plasma 5 they have removed completely the support of the xembed protocol, but you can run XEmbed SNI Proxy and work around it.</p>
+<p>The goal of this project is to make xembed system trays available in Plasma:</p>
+<p><a href="https://github.com/KDE/plasma-workspace/tree/master/xembed-sni-proxy">https://github.com/KDE/plasma-workspace/tree/master/xembed-sni-proxy</a> [-]</p>
+<p>Just run </p><div class="fragment"><div class="line">xembedsniproxy</div></div><!-- fragment --><h3>XFCE</h3>
+<p>In XFCE ???</p>
+<h3>LXDE/LXQT</h3>
+<p>In LXDE ???</p>
+<h3>MATE</h3>
+<p>In MATE ???</p>
+<h3>EXTERNAL SOURCES</h3>
+<ul>
+<li><a href="https://code.google.com/p/chromium/issues/detail?id=419673">Proper implementation of system tray icons via libappindicator/StatusNotifierItem</a></li>
+<li><a href="https://github.com/nwjs/nw.js/pull/2327">Updated Tray to use libappindicator in Linux</a> Discussion that propose the same Google Chrome fix. </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html
new file mode 100644
index 000000000..4c8594f07
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: How to configure key mapping with the VNC plugin.</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">How to configure key mapping with the VNC plugin. </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Remmina has an hidden feature with which you can configure custom key mappings, this is useful if you need, for example, to map the local <em>Super</em> key to the remote macOS <em>Option</em> key *(leaving theexisting local <em>Alt</em> key to the remote macOS* Command <em>key map alone.)</em></p>
+<p>See #1716 for a long discussion about this.</p>
+<p>Keys can be mapped according to a configurable map. There is a predefined map called "Map Meta Key" that seems to be exactly what we need for macOS.</p>
+<p>Edit your connection profile, under "Basic settings", you will find "Keyboard mapping". Choose "Map Meta Keys".</p>
+<div class="image">
+<img src="https://gitlab.com/Remmina/Remmina/uploads/e990c8826e534df01d62ea58589cf192/image.png" alt="image"/>
+</div>
+<p>Save and connect.</p>
+<p><b>Map Meta Keys</b> is the following map:</p>
+<div class="fragment"><div class="line">[Map Meta Keys]</div><div class="line">Super_L = Meta_L</div><div class="line">Super_R = Meta_R</div><div class="line">Meta_L = Super_L</div><div class="line">Meta_R = Super_R</div></div><!-- fragment --><p>Other maps, using the same syntax, can be created in the <code>remmina.keymap</code> file, located in the same directory as the remmina.pref file, usually <code>~/.config/remmina/remmina.keymap</code> Key symbol names can be found on the GDK file <a href="https://gitlab.gnome.org/GNOME/gtk/raw/master/gdk/gdkkeysyms.h">gdk/gdkkeysyms.h</a>. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html
new file mode 100644
index 000000000..052d88706
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Table of contents</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Table of contents </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Home">Home</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Usage">Usage</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-SSH-Terminal-colour-schemes">Remmina SSH terminal colour schemes</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-Usage-FAQ">Remmina usage FAQ</a></li>
+<li>[Remmina user’s guide](<a href="https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-User's-guide">https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-User's-guide</a>)</li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation">Compilation</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compilation-guide-for-CentOS">Compilation guide for CentOS</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Arch-Linux">Compile on Arch Linux</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-10-Buster">Compile on Debian 10 Buster</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Debian-9-Stretch">Compile on Debian 9 Stretch</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Fedora-20-~-26">Compile on Fedora 20 ~ 26</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-FreeBSD">Compile on FreeBSD</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-14.04">Compile on Ubuntu 14.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-16.04">Compile on Ubuntu 16.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-18.04">Compile on Ubuntu 18.04</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Compilation/Compile-on-Ubuntu-20.04">Compile on Ubuntu 20.04</a></li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Development">Development</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Development/Development-Notes">Development Notes</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Development/multi-monitor-support">multi-monitor support</a></li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Contribution">Contribution</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Contribution/HOWTO-generate-the-changelog">HOWTO generate the changelog</a></li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Localisation">Localisation</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Localisation/How-to-translate-Remmina">How to translate Remmina</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Localisation/Update-gettext-messages">Update gettext messages</a></li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Testing">Testing</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Testing/Testing-under-Ubuntu-with-the-remmina-next-daily-PPA">Testing under Ubuntu with the remmina next daily PPA</a></li>
+</ul>
+</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks">Problems and tweaks</a><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/GTK-versions-on-various-distributions">GTK versions on various distributions</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Problems-with-Wayland">Problems with Wayland</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Remmina-RDP-and-HiDPI-scaling">Remmina RDP and HiDPI scaling</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Remmina-VNC-to-Raspbian-Stretch">Remmina VNC to Raspbian Stretch</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/Systray-menu">Systray menu</a></li>
+<li><a href="https://gitlab.com/Remmina/Remmina/-/wikis/Problems-and-tweaks/vnc-key-mapping-configuration">vnc key mapping configuration</a> </li>
+</ul>
+</li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html
new file mode 100644
index 000000000..37f06889e
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Testing under Ubuntu with the remmina-next-daily PPA</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Testing under Ubuntu with the remmina-next-daily PPA </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Remmina users using Ubuntu and derivatives are warmly invited to use our <b>remmina-next</b> PPA, as explained in our <a href="https://github.com/FreeRDP/Remmina/wiki">Remmina Wiki Homepage</a>. The <b>remmina-next</b> PPA is updated every official <a href="https://github.com/FreeRDP/Remmina/releases">release</a>, therefore it can be considered <b>stable</b>.</p>
+<p>We also provide an <b>unstable</b> PPA, called <b>remmina-next-daily</b>. remmina-next-daily is updated daily and contains our latest patches we push on the <em>next</em> github branch.</p>
+<p>If you want to help testing remmina before an official release, you can switch to the remmina-next-daily by using the following instructions:</p>
+<ol type="1">
+<li>Install the ppa-purge package <div class="fragment"><div class="line">2. Purge the remmina-next PPA</div><div class="line">```sudo ppa-purge ppa:remmina-ppa-team/remmina-nex</div></div><!-- fragment --></li>
+<li>Install the remmina-next-daily PPA <div class="fragment"><div class="line">sudo apt-add-repository ppa:remmina-ppa-team/remmina-next-daily</div><div class="line">sudo apt update</div></div><!-- fragment --></li>
+<li>Install remmina packages</li>
+</ol>
+<ul>
+<li>if not installed previously <div class="fragment"><div class="line">sudo apt install remmina remmina-plugin-rdp libfreerdp-plugins-standard</div></div><!-- fragment --></li>
+<li>if installed previously, just do: <div class="fragment"><div class="line">sudo apt upgrade</div></div><!-- fragment --> You might need to perform the following command to remove the previous remmina from memory: <div class="fragment"><div class="line">sudo killall remmina</div></div><!-- fragment --></li>
+</ul>
+<p>Happy testing :) </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html
new file mode 100644
index 000000000..337192105
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Using colour schemes in Remmina SSH protocol plugin</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Using colour schemes in Remmina SSH protocol plugin </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h2>Choosing between the standard colour schemes</h2>
+<p>You can chose a colour scheme directly in the advanced TAB of your SSH connection profile</p>
+<div class="image">
+<img src="https://i.imgur.com/PeJRFQv.png" alt="Chossing a colour scheme in the Remmina SSH profile"/>
+</div>
+<p>There are 6 predefined colour schemes</p>
+<h2>Importing a colour scheme</h2>
+<p>You can import a colour scheme from the general preferences</p>
+<div class="image">
+<img src="https://i.imgur.com/tb8FBP4.png" alt="Importing a color scheme - screenshot"/>
+</div>
+<p>Several colour schemes are available to download on the <a href="https://github.com/mbadolato/iTerm2-Color-Schemes/tree/master/remmina">iTerm2-Color-Schemes repository on GitHub</a>.</p>
+<p>As soon as you have found one you like, you must set "Custom colour scheme" in the SSH profile advanced TAB.</p>
+<div class="image">
+<img src="https://i.imgur.com/gQavQZH.png" alt="Custom Colour Scheme"/>
+</div>
+ </div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html
new file mode 100644
index 000000000..5ccf91895
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Remmina Usage FAQ</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Remmina Usage FAQ </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><ol type="1">
+<li><b>Where are all my connections and preferences stored ?</b> <b>A:</b> Remmina stores its configuration file in directories identified according the <a href="http://www.freedesktop.org/Standards/basedir-spec">XDG Base Directory Specification</a>. A main configuration file <code>remmina.pref</code> is stored into <code>$XDG_CONFIG_HOME/remmina/</code> directory, which defaults to <code>$HOME/.config/remmina/</code>. Every single connection profile is stored into a <code>XXXXXXXXXXXXX.remmina</code> file under <code>$XDG_DATA_HOME/remmina</code> directory, which defaults to <code>$HOME/.local/share/remmina</code>. Older versions of remmina used to store all <code>*.remmina</code> and <code>remmina.pref</code> files under <code>$HOME/.remmina</code>. If a newer version of remmina finds an existing <code>$HOME/.remmina/</code> legacy directory, then remmina will revert back to use it.</li>
+<li><b>Can I start a connection using a shell command ?</b> <b>A:</b> Yes, use <code>remmina -c filename</code>.</li>
+<li><b>When I'm in fullscreen mode, I cannot see the "floating toolbar" (the bar at the top of the screen), or I can see part of it but it does not scroll down or receive my input.</b> <b>A:</b> You are using Gnome Shell and an older version of remmina. This has been fixed under remmina 1.2.0-rcgit.3 compiled with GTK+ 3.10 or newer. Please restart your system after upgrading remmina.</li>
+<li><b>The "Quality settings" in Remmina preferences -&gt; RDP is not saving the default quality setting.</b> <b>A:</b> This is a quality profile editor, not a quality chooser. See issue #521</li>
+<li><b>I'm unable to escape from VMware vSphere client console pressing Ctrl+Alt.</b> <b>A:</b> You are probably pushing the Ctrl key on the right side of the keyboard. That key is reserved as Remmina Host key. Use the left Ctrl key or change the host key in the Remmina global settings.</li>
+<li><b>Under Gnome Shell the Remmina systray menu is hidden in the hidden notification area</b> <b>A:</b> Install this <a href="https://extensions.gnome.org/extension/615/appindicator-support/">AppIndicator Support Gnome Shell Extension</a> to see the systray menu in a more confortable place.</li>
+<li><b>After a Remmina upgrade, I'm unable to connect to some servers.</b> <b>A:</b> Try to remove the file <code>~/.config/freerdp/known_hosts</code>.</li>
+<li><b>After a Remmina upgrade, I have to reenter all passwords.</b> <b>A:</b> Yes, with commit 57ec85d8e9bf773b8a08c17a0218b6cd643c828b we switched to libsecret, and passwords cannot be imported automatically.</li>
+<li><b>Remmina cannot connect to Raspbian Stretch VNC server</b> <b>A:</b> See our guide: [Remmina VNC to Raspbian Stretch](Remmina-VNC-to-Raspbian-Stretch)</li>
+<li><b>Warning: This plugin requires GtkSocket, but it's not available</b> <b>A:</b> This usually happens when running remmina under wayland: some plugins needs the GtkSocket support. GtkSocket makes use of the xembed protocol, which is not available under Wayland. If your system is running XWayland you can try to workaround the problem by running remmina with the environment variable GDK_BACKEND set to x11. For example in a terminal, after closing all running instances of remmina, you can start remmina with <code>GDK_BACKEND=x11 remmina</code>. </li>
+</ol>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html
new file mode 100644
index 000000000..50b4a2617
--- /dev/null
+++ b/docs/md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: &#39;s-guide Introduction</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">'s-guide Introduction </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>This manual is a work in progress. Feel free to contribute and help us to make this manual useful and pleasant to read.</p>
+<p>Screen shots are taken and modified with <a href="http://shutter-project.org">Shutter</a></p>
+<h1>Remmina Introduction</h1>
+<p>Remmina is a feature rich Remote Desktop Application for GNU Linux(tm) and FreeBSD and possibly other Unixes.</p>
+<h2>Remmina features</h2>
+<ul>
+<li>Maintain a list of connection profiles, organized by groups</li>
+<li>Make quick connections by directly putting in the server address</li>
+<li>Remote desktops with higher resolutions are scrollable/scalable in both window and fullscreen mode.</li>
+<li>Viewport fullscreen mode: remote desktop automatically scrolls when the mouse moves over the screen edge.</li>
+<li>Floating toolbar in fullscreen mode, allows you to switch between modes, toggle keyboard grabbing, minimize, etc.</li>
+<li>Tabbed interface, optionally managed by groups.</li>
+<li>Tray icon, allows you to quickly access configured connection profiles</li>
+<li>Remote screen-shots</li>
+</ul>
+<div class="image">
+<img src="http://www.remmina.org/images/Remmina%20Features.png" alt="Remmina main features screenshot"/>
+</div>
+<h2>How to use Remmina</h2>
+<p>The following are typical use cases </p><h3>Quick connect using RDP</h3>
+<p>Use this if you don't need or want to save your connection. Only RDP, SSH, VNC and NX are supported in the quick connect. </p><div class="image">
+<img src="http://www.remmina.org/images/Remmina_quick_rdp.png" alt="Remmina Quick connect using RDP"/>
+</div>
+<ol type="1">
+<li>Choose the protocol</li>
+<li>Insert the server name</li>
+<li>Click on connect <h3>Create a new Profile</h3>
+</li>
+</ol>
+<ol type="1">
+<li>Click on the "New Profile" icon <div class="image">
+<img src="http://www.remmina.org/images/Remmina_newprofile.png" alt="Remmina New Profile screenshot"/>
+</div>
+</li>
+<li>Enter your server connection details <div class="image">
+<img src="http://www.remmina.org/images/Remmina_newvncprofile.png" alt="New VNC Profile"/>
+</div>
+</li>
+</ol>
+<ul>
+<li>You can ask Remmina to execute commands before and after the connection</li>
+<li>If you use Avahi, you can search available hosts as highlighted</li>
+<li>You can group different connections.</li>
+</ul>
+<h1>Options</h1>
+<ul>
+<li>Name: this is the name you gave to this connection, it's just for you to recognize it easily.</li>
+<li>Group:</li>
+<li>Protocol: here you choose the protocol type: [[RDP]], [[SFTP]], [[SSH]]</li>
+<li>Pre-command: what to do before starting the connection</li>
+<li>Post-command: what to do after closing the connection <h2>General</h2>
+</li>
+</ul>
+<ul>
+<li>Server: here you put the IP address of the remote machine </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__c_h_a_n_g_e_l_o_g.html b/docs/md__c_h_a_n_g_e_l_o_g.html
new file mode 100644
index 000000000..4ca25678e
--- /dev/null
+++ b/docs/md__c_h_a_n_g_e_l_o_g.html
@@ -0,0 +1,661 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Changelog</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__c_h_a_n_g_e_l_o_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Changelog </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h2>1.4.3</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.4.2...1.4.3">full changelog</a></p>
+<ul>
+<li>KB grabbing fixes (mostly for Wayland) <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2036">!2036</a> <em></em></li>
+<li>Adding Freerdp 3 compile option and using FreeRDP tag 2.0.0 as default <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2034">!2034</a> <em></em></li>
+<li>Adding remmina terminal dependencies <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2035">!2035</a> <em></em></li>
+<li>Translated using Weblate (Turkish) by Oğuz Ersen <a href="#" onclick="location.href='mai'+'lto:'+'ogu'+'ze'+'rse'+'n@'+'pro'+'to'+'nma'+'il'+'.co'+'m'; return false;">oguze<span style="display: none;">.nosp@m.</span>rsen<span style="display: none;">.nosp@m.</span>@prot<span style="display: none;">.nosp@m.</span>onma<span style="display: none;">.nosp@m.</span>il.co<span style="display: none;">.nosp@m.</span>m</a></li>
+<li>Translated using Weblate (Swedish) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Albanian) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Dutch) by Jennifer <a href="#" onclick="location.href='mai'+'lto:'+'jen'+'@e'+'lyp'+'ia'+'.or'+'g'; return false;">jen@e<span style="display: none;">.nosp@m.</span>lypi<span style="display: none;">.nosp@m.</span>a.org</a></li>
+<li>Translated using Weblate (Norwegian Bokmål) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Burmese) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Korean) by Justin Song <a href="#" onclick="location.href='mai'+'lto:'+'mcs'+'on'+'g@g'+'ma'+'il.'+'co'+'m'; return false;">mcson<span style="display: none;">.nosp@m.</span>g@gm<span style="display: none;">.nosp@m.</span>ail.c<span style="display: none;">.nosp@m.</span>om</a></li>
+<li>Translated using Weblate (Japanese) by anonymous <a href="#" onclick="location.href='mai'+'lto:'+'nor'+'ep'+'ly@'+'we'+'bla'+'te'+'.or'+'g'; return false;">norep<span style="display: none;">.nosp@m.</span>ly@w<span style="display: none;">.nosp@m.</span>eblat<span style="display: none;">.nosp@m.</span>e.or<span style="display: none;">.nosp@m.</span>g</a></li>
+<li>Translated using Weblate (Japanese) by FeLvi_zzz <a href="#" onclick="location.href='mai'+'lto:'+'fel'+'vi'+'.zz'+'z.'+'cof'+'fe'+'e@g'+'ma'+'il.'+'co'+'m'; return false;">felvi<span style="display: none;">.nosp@m.</span>.zzz<span style="display: none;">.nosp@m.</span>.coff<span style="display: none;">.nosp@m.</span>ee@g<span style="display: none;">.nosp@m.</span>mail.<span style="display: none;">.nosp@m.</span>com</a></li>
+<li>Translated using Weblate (Italian) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Basque) by Osoitz <a href="#" onclick="location.href='mai'+'lto:'+'oel'+'ko'+'ro@'+'gm'+'ail'+'.c'+'om'; return false;">oelko<span style="display: none;">.nosp@m.</span>ro@g<span style="display: none;">.nosp@m.</span>mail.<span style="display: none;">.nosp@m.</span>com</a></li>
+<li>Translated using Weblate (Spanish) by Adolfo Jayme Barrientos <a href="#" onclick="location.href='mai'+'lto:'+'fit'+'oj'+'b@u'+'bu'+'ntu'+'.c'+'om'; return false;">fitoj<span style="display: none;">.nosp@m.</span>b@ub<span style="display: none;">.nosp@m.</span>untu.<span style="display: none;">.nosp@m.</span>com</a></li>
+<li>Translated using Weblate (English (United Kingdom)) by Barbul Gergő <a href="#" onclick="location.href='mai'+'lto:'+'bar'+'bu'+'l.g'+'er'+'go@'+'st'+'ud.'+'u-'+'sze'+'ge'+'d.h'+'u'; return false;">barbu<span style="display: none;">.nosp@m.</span>l.ge<span style="display: none;">.nosp@m.</span>rgo@s<span style="display: none;">.nosp@m.</span>tud.<span style="display: none;">.nosp@m.</span>u-sze<span style="display: none;">.nosp@m.</span>ged.<span style="display: none;">.nosp@m.</span>hu</a></li>
+<li>Translated using Weblate (Arabic) by ButterflyOfFire <a href="#" onclick="location.href='mai'+'lto:'+'But'+'te'+'rfl'+'yO'+'fFi'+'re'+'@pr'+'ot'+'onm'+'ai'+'l.c'+'om'; return false;">Butte<span style="display: none;">.nosp@m.</span>rfly<span style="display: none;">.nosp@m.</span>OfFir<span style="display: none;">.nosp@m.</span>e@pr<span style="display: none;">.nosp@m.</span>otonm<span style="display: none;">.nosp@m.</span>ail.<span style="display: none;">.nosp@m.</span>com</a></li>
+<li>Translated using Weblate (Spanish) by Allan Nordhøy <a href="#" onclick="location.href='mai'+'lto:'+'epo'+'st'+'@an'+'ot'+'her'+'ag'+'enc'+'y.'+'no'; return false;">epost<span style="display: none;">.nosp@m.</span>@ano<span style="display: none;">.nosp@m.</span>thera<span style="display: none;">.nosp@m.</span>genc<span style="display: none;">.nosp@m.</span>y.no</a></li>
+<li>Translated using Weblate (Hebrew) by Yaron Shahrabani <a href="#" onclick="location.href='mai'+'lto:'+'sh.'+'ya'+'ron'+'@g'+'mai'+'l.'+'com'; return false;">sh.ya<span style="display: none;">.nosp@m.</span>ron@<span style="display: none;">.nosp@m.</span>gmail<span style="display: none;">.nosp@m.</span>.com</a></li>
+<li>Translated using Weblate (Spanish) by Juan Ignacio Cherrutti <a href="#" onclick="location.href='mai'+'lto:'+'jua'+'nc'+'her'+'ru'+'@gm'+'ai'+'l.c'+'om'; return false;">juanc<span style="display: none;">.nosp@m.</span>herr<span style="display: none;">.nosp@m.</span>u@gma<span style="display: none;">.nosp@m.</span>il.c<span style="display: none;">.nosp@m.</span>om</a></li>
+<li>Translated using Weblate (Slovak) by Dušan Kazik <a href="#" onclick="location.href='mai'+'lto:'+'pre'+'sc'+'ott'+'66'+'@gm'+'ai'+'l.c'+'om'; return false;">presc<span style="display: none;">.nosp@m.</span>ott6<span style="display: none;">.nosp@m.</span>6@gma<span style="display: none;">.nosp@m.</span>il.c<span style="display: none;">.nosp@m.</span>om</a></li>
+<li>Translated using Weblate (German) by Johannes Weberhofer <a href="#" onclick="location.href='mai'+'lto:'+'jwe'+'be'+'rho'+'fe'+'r@w'+'eb'+'erh'+'of'+'er.'+'at'; return false;">jwebe<span style="display: none;">.nosp@m.</span>rhof<span style="display: none;">.nosp@m.</span>er@we<span style="display: none;">.nosp@m.</span>berh<span style="display: none;">.nosp@m.</span>ofer.<span style="display: none;">.nosp@m.</span>at</a></li>
+<li>Translated using Weblate (Czech) by Pavel Borecki <a href="#" onclick="location.href='mai'+'lto:'+'pav'+'el'+'.bo'+'re'+'cki'+'@g'+'mai'+'l.'+'com'; return false;">pavel<span style="display: none;">.nosp@m.</span>.bor<span style="display: none;">.nosp@m.</span>ecki@<span style="display: none;">.nosp@m.</span>gmai<span style="display: none;">.nosp@m.</span>l.com</a></li>
+</ul>
+<h2>1.4.2</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.4.1...1.4.2">full changelog</a></p>
+<ul>
+<li>Spelling: Doublespace removed <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2011">!2011</a> <em></em></li>
+<li>Adds ClientBuild settings to RDP plugin to specify client version build number <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2012">!2012</a> <em></em></li>
+<li>Spelling: Smaller bullet points, RDP plugin, Git <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2014">!2014</a> <em></em></li>
+<li>Allow formatting for SSH session filename <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2015">!2015</a> <em>.rudsatz</em></li>
+<li>include juarezr in AUTHORS <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2017">!2017</a> <em>.rudsatz</em></li>
+<li>web-browser plugin fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2016">!2016</a> <em></em></li>
+<li>Make duplicate session sensitive only if a profile exists <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2019">!2019</a> <em></em></li>
+<li>Using updated Contribution page from website <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2021">!2021</a> <em></em></li>
+<li>Issue template reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2020">!2020</a> <em></em></li>
+<li>Fix null pointer dereference in remmina_main_quickconnect <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2022">!2022</a> <em></em></li>
+<li>SFTP with tunnel fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2023">!2023</a> <em></em></li>
+<li>Cppcheck and PVS Studio Fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2018">!2018</a> <em></em></li>
+<li>VNCI fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2025">!2025</a> <em></em></li>
+<li>Flatpak - Updating gnome to 3.36 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2026">!2026</a> <em></em></li>
+<li>Typo fix in <a class="el" href="remmina__ssh_8c.html">remmina_ssh.c</a> <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2024">!2024</a> <em></em></li>
+<li>Spelling: Select a folder, choose a folder <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2027">!2027</a> <em></em></li>
+<li>Allow enter key in domain textbox of authentication dialog to submit <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2028">!2028</a> <em></em></li>
+<li>rcw event sources cleanup <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2029">!2029</a> <em></em></li>
+<li>Contact file replaces CoC and new README <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2030">!2030</a> <em></em></li>
+<li>THANKS reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2031">!2031</a> <em></em></li>
+<li>Merge weblate translations in master <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2032">!2032</a> <em></em></li>
+</ul>
+<h2>1.4.1</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.4.0...1.4.1">full changelog</a></p>
+<ul>
+<li>SSH fixes, should fix #2094 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2009">!2009</a> <em></em></li>
+<li>Update <a class="el" href="remmina__filezilla__sftp_8sh.html">remmina_filezilla_sftp.sh</a> <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2010">!2010</a> <em></em></li>
+</ul>
+<h2>1.4.0</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.10...1.4.0">full changelog</a></p>
+<ul>
+<li>Rdp clipboard fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2007">!2007</a> <em></em></li>
+<li>Ssh authentication fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2006">!2006</a> <em></em></li>
+<li>Compiler warnings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1992">!1992</a> <em></em></li>
+<li>flatpak manifest update <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1993">!1993</a> <em></em></li>
+<li>Spelling: System proxy settings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1994">!1994</a> <em></em></li>
+<li>Update ru.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1995">!1995</a> <em></em></li>
+<li>SSH tunnel refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1996">!1996</a> <em></em></li>
+<li>Parameters passed individually, notation, "Press any key to continue…" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1997">!1997</a> <em></em></li>
+<li>Replace apt with apt-get <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1999">!1999</a> <em></em></li>
+<li>Updated boolean expressions <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2000">!2000</a> <em></em></li>
+<li>Add end of options escaping <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2002">!2002</a> <em></em></li>
+<li>Remove double-quotes escaping early <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2001">!2001</a> <em></em></li>
+<li>Ending code block whitespace line removed <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1998">!1998</a> <em></em></li>
+<li>Safer removal of build directory <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2003">!2003</a> <em></em></li>
+<li>Spelling: Could not access the RDP server x7 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2004">!2004</a> <em></em></li>
+<li>Removing double struct declaration. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/2005">!2005</a> <em></em></li>
+</ul>
+<h2>v1.3.10</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.9...v1.3.10">full changelog</a></p>
+<ul>
+<li>VNC: Fix a buffer overflow during cuttext <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1987">!1987</a> <em></em></li>
+<li>Fix KB/pointer grabbing again and add warning when GTK is using <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1988">!1988</a> <em></em></li>
+<li>GDK_CORE_DEVICE_EVENTS refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1989">!1989</a> <em></em></li>
+<li>Proxy support fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1990">!1990</a> <em></em></li>
+</ul>
+<h2>v1.3.9</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.8...v1.3.9">full changelog</a></p>
+<ul>
+<li>Grab and focus out woes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1985">!1985</a> <em></em></li>
+</ul>
+<h2>v1.3.8</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.7...v1.3.8">full changelog</a></p>
+<ul>
+<li>Avoid clearing username/domain when saving RDP password <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1981">!1981</a> <em></em></li>
+<li>Make Remmina news dialog modal to the main window <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1982">!1982</a> <em></em></li>
+<li>Change switch notebook page idle func order. Fixes #2034 <em></em></li>
+<li>Fixing bad seat grabbing behaviour (grab all keys not working) <em></em></li>
+<li>Adding cmake option to use latest FreeRDP symbols when compiling. Fixes #2024 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1977">!1977</a> <em></em></li>
+<li>Spelling: Private key, direct explanations <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1964">!1964</a> <em></em></li>
+<li>Spelling: Colour theme <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1973">!1973</a> <em></em></li>
+<li>Spelling: Error messages <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1965">!1965</a> <em></em></li>
+<li>Spelling: URL moved to avoid ending dot <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1966">!1966</a> <em></em></li>
+<li>Spelling: "web-browser plugin" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1967">!1967</a> <em></em></li>
+<li>Spelling: "simple terminal" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1968">!1968</a> <em></em></li>
+<li>Spelling: "Secure password storage in KWallet" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1969">!1969</a> <em></em></li>
+<li>Spelling: Connection name <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1971">!1971</a> <em></em></li>
+<li>Spelling: Their desktop, do you accept? <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1970">!1970</a> <em></em></li>
+<li>Spelling: "Warning:" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1972">!1972</a> <em></em></li>
+<li>Pluralized string for closing active connections <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1975">!1975</a> <em></em></li>
+<li>Spelling: Log SSH session when exiting Remmina <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1976">!1976</a> <em></em></li>
+<li>GitLab landing page now only links to installation instructions <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1978">!1978</a> <em></em></li>
+<li>Spelling: -on, , <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1979">!1979</a> <em></em></li>
+<li>Adding default application symbolic icons <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1980">!1980</a> <em></em></li>
+</ul>
+<h2>v1.3.7</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.6...v1.3.7">full changelog</a></p>
+<ul>
+<li>Better authentication MessagePanel API <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1937">!1937</a> <em></em></li>
+<li>Adding hidden proxy/socks settings for the RDP plugin <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1927">!1927</a> <em></em></li>
+<li>Debian Lintian, appstream and AppImage detected issues fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1901">!1901</a> <em></em></li>
+<li>Using antenore/ubuntu docker image for standard build <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1903">!1903</a> <em></em></li>
+<li>Tooltips in the remmina profile editor <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1904">!1904</a> <em></em></li>
+<li>Fix for issue #1949 (and #1968). It also relocates &ndash;version and &ndash;full-version in local istance. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1905">!1905</a> <em></em></li>
+<li>Enumerate and share all local printers. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1908">!1908</a> <em></em></li>
+<li>Manually specify more then one printer&amp;driver when connecting via RDP <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1909">!1909</a> <em></em></li>
+<li>Printer sharing remediation for !1909 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1915">!1915</a> <em></em></li>
+<li>Remove useless include <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1910">!1910</a> <em></em></li>
+<li>VTE is a suggested package <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1911">!1911</a> <em></em></li>
+<li>Adding official Ubuntu Docker images <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1913">!1913</a> <em></em></li>
+<li>AppImage path fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1914">!1914</a> <em></em></li>
+<li>Using remmina image for gnome 3.28 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1916">!1916</a> <em></em></li>
+<li>Fix crash when clicking AR-button <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1918">!1918</a> <em>.beu</em></li>
+<li>snap: Update yaml to use GNOME extension <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1922">!1922</a> <em></em></li>
+<li>Use ubuntudesktop/gnome-3-28-1804 docker image for snap build <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1925">!1925</a> <em></em></li>
+<li>Various Fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1931">!1931</a> <em></em></li>
+<li>Fix RDP failed auth after credentials panel: big rework on plugin connection close flow <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1935">!1935</a> <em></em></li>
+<li>Add RDP option to use old license workflow <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1961">!1961</a> <em></em></li>
+</ul>
+<h3>L10n, language and interface</h3>
+<ul>
+<li>Language reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1938">!1938</a> <em></em></li>
+<li>Spelling: Turn off scaling to avoid screenshot distortion. Scrolled fullscreen. Comments. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1939">!1939</a> <em></em></li>
+<li>Reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1943">!1943</a> <em></em></li>
+<li>Spelling: Connect via SSH, SFTP, details, comments <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1940">!1940</a> <em></em></li>
+<li>Spelling: Reworked, labels, toggle, Show/hide * shown in the * <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1942">!1942</a> <em></em></li>
+<li>Spelling: The file s, Last connection was made, , which is not <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1944">!1944</a> <em></em></li>
+<li>Keep it snimple snupple <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1945">!1945</a> <em></em></li>
+<li>Spelling: secrecy plugin <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1941">!1941</a> <em></em></li>
+<li>Are you sure you want to delete? HTTPS <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1947">!1947</a> <em></em></li>
+<li>Adding comments for translators <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1948">!1948</a> <em></em></li>
+<li>Spelling: Time, keepalive, TCP <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1949">!1949</a> <em></em></li>
+<li>L10n/comments <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1950">!1950</a> <em></em></li>
+<li>Spelling: SSH changed, could not x3 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1952">!1952</a> <em></em></li>
+<li>Spelling: Small/big versals, could not, library names <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1953">!1953</a> <em></em></li>
+<li>No news widget when in kiosk mode. Fixes #2012 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1954">!1954</a> <em></em></li>
+<li>Markup: Button + <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1951">!1951</a> <em></em></li>
+<li>SSH plugin minor fixes and enhanced debug output <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1946">!1946</a> <em></em></li>
+<li>Adding autostart profiles at remmina startup, closes #2013 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1955">!1955</a> <em></em></li>
+<li>Adding expand/collpse all in the popup menu, closes #955 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1956">!1956</a> <em></em></li>
+<li>Spelling: shortcuts <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1919">!1919</a> <em></em></li>
+<li>Language reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1920">!1920</a> <em></em></li>
+<li>Spelling: may cause Remmina not to respond <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1926">!1926</a> <em></em></li>
+<li>Spelling: Website, About, GTK, ©, en dash + HTTPS link <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1924">!1924</a> <em></em></li>
+<li>Language reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1929">!1929</a> <em></em></li>
+<li>Language reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1932">!1932</a> <em></em></li>
+<li>Language reworked <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1933">!1933</a> <em></em></li>
+<li>Various string improvements <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1934">!1934</a> <em></em></li>
+<li>Spelling: spatial navigation, - a x2 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1936">!1936</a> <em></em></li>
+<li>Update danish translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1907">!1907</a> <em></em></li>
+<li>Removed unnecessary word <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1921">!1921</a> <em></em></li>
+<li>remmina_preferences: Improve file chooser words <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1928">!1928</a> <em></em></li>
+<li>Brief on custom display numbers in usage. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1902">!1902</a> <em></em></li>
+<li>Fixing preferences layout <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1930">!1930</a> <em></em></li>
+<li>Translations (Arabic) Weblate</li>
+<li>Translations (Basque) Weblate</li>
+<li>Translations (Bosnian) Weblate</li>
+<li>Translations (Catalan) Weblate</li>
+<li>Translations (Chinese (Traditional)) Weblate</li>
+<li>Translations (Croatian) Weblate</li>
+<li>Translations (Czech) Weblate</li>
+<li>Translations (Danish) Weblate</li>
+<li>Translations (Dutch) Weblate</li>
+<li>Translations (Finnish) Weblate</li>
+<li>Translations (French) Weblate</li>
+<li>Translations (German) Weblate</li>
+<li>Translations (Greek) Weblate</li>
+<li>Translations (Hebrew) Weblate</li>
+<li>Translations (Italian) Weblate</li>
+<li>Translations (Japanese) Weblate</li>
+<li>Translations (Norwegian Bokmål) Weblate</li>
+<li>Translations (Occidental) Weblate</li>
+<li>Translations (Polish) Weblate</li>
+<li>Translations (Portuguese (Brazil)) Weblate</li>
+<li>Translations (Portuguese (Portugal)) Weblate</li>
+<li>Translations (Spanish) Weblate</li>
+<li>Translations (Swedish) Weblate</li>
+<li>Translations (Turkish) Weblate</li>
+<li>Translations (Ukrainian) Weblate</li>
+<li>Translations (Uyghur) Weblate</li>
+<li>Translations (Uzbek) Weblate</li>
+</ul>
+<h2>v1.3.6</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.5...v1.3.6">full changelog</a></p>
+<ul>
+<li>Fix fullscreen switching <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1895">!1895</a> <em></em></li>
+<li>Fullscreen fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1897">!1897</a> <em></em></li>
+<li>rdpr channel initialization for special devices sharing. Closes #1955 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1892">!1892</a> <em></em></li>
+<li>Fixing remminamain destroy issues <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1896">!1896</a> <em></em></li>
+<li>Makes Rmnews modal to avoid that it steals input to the RCW <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1899">!1899</a> <em></em></li>
+<li>Make some cmake targets optional to avoid packaging isssues <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1887">!1887</a> <em></em></li>
+<li>SNAP fixing dependencies for the plugin WWW <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1890">!1890</a> <em></em></li>
+<li>Updating Remmna icon to the yaru/suru icon set. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1891">!1891</a> <em></em></li>
+<li>Adding harfbuzz headers, closes #1941 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1894">!1894</a> <em></em></li>
+<li>New stats <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1898">!1898</a> <em></em></li>
+<li>*.md: typo corrections <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1889">!1889</a> <em></em></li>
+<li>Remove G+ from documents <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1888">!1888</a> <em></em></li>
+</ul>
+<h2>v1.3.5</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.4...v1.3.5">full changelog</a></p>
+<p><b>ATTENTION</b> New dependencies.</p>
+<ul>
+<li>-DWITH_KF5WALLET=ON is needed for the KDE Wallet plugin (and the kf5wallet libs to build it).</li>
+<li>webkit2gtk3 is needed to build the WWW plugin.</li>
+<li>libsodium is needed to buil Remmina</li>
+<li>rcw refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1815">!1815</a> <em></em></li>
+<li>Remmina files refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1814">!1814</a> <em></em></li>
+<li>RCW fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1817">!1817</a> <em></em></li>
+<li>Update Czech translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1818">!1818</a> <em></em></li>
+<li>Improve English wording <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1819">!1819</a> <em></em></li>
+<li>Typographic fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1820">!1820</a> <em></em></li>
+<li>Fix typo timout → timeout <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1821">!1821</a> <em></em></li>
+<li>Unset “120” (duration before locking) as a translatable string <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1822">!1822</a> <em></em></li>
+<li>Update Czech translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1824">!1824</a> <em></em></li>
+<li>Translate the new strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1823">!1823</a> <em></em></li>
+<li>Patch 1 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1825">!1825</a> <em></em></li>
+<li>Unset “300” as a translatable string + grammar fix (some widget*s*) <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1829">!1829</a> <em></em></li>
+<li>Update German translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1828">!1828</a> <em></em></li>
+<li>Updated translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1830">!1830</a> <em></em></li>
+<li>Restore a translation deleted after the removing of a wrong comma in its original string <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1831">!1831</a> <em></em></li>
+<li>Updated Russian translation (sent from Soltys Sergey by e-mail) <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1832">!1832</a> <em></em></li>
+<li>Replace non-interpreted HTML lists by text lists <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1833">!1833</a> <em></em></li>
+<li>Remmina news dialog <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1835">!1835</a> <em></em></li>
+<li>Fixing unlock called in the wrong places <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1836">!1836</a> <em></em></li>
+<li>Show an error dialog instead of crashing, fixes issue #1896 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1837">!1837</a> <em></em></li>
+<li>Resolve "Remmina profile file always gets overwriten when connecting" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1838">!1838</a> <em></em></li>
+<li>Translate two new strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1839">!1839</a> <em></em></li>
+<li>WWW plugin - A new plugin to connect to Webbased administration consoles fixes #551 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1841">!1841</a> <em></em></li>
+<li>Fixes #1904 - Change Address to URL <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1842">!1842</a> <em></em></li>
+<li>Adding default settings on startup <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1843">!1843</a> <em></em></li>
+<li>Adding default settings on startup <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1844">!1844</a> <em></em></li>
+<li>flatpak: enable smartcard support <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1834">!1834</a> <em></em></li>
+<li>WWW screenshot features <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1845">!1845</a> <em></em></li>
+<li>WWW Plugin improvements <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1846">!1846</a> <em></em></li>
+<li>Multiple fixes: duplicate tab, remmina_file warning, audible bell setting <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1847">!1847</a> <em></em></li>
+<li>Workaround for #1633 - re-ask user and password when auth error <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1848">!1848</a> <em></em></li>
+<li>Www enhance2 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1850">!1850</a> <em></em></li>
+<li>Remmina main window improvements to gain space and reduce code <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1851">!1851</a> <em></em></li>
+<li>Updating italian translations <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1852">!1852</a> <em></em></li>
+<li>Updating German translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1853">!1853</a> <em></em></li>
+<li>Complete the French translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1854">!1854</a> <em></em></li>
+<li>Fixing typos of X.Org, Java and H.264 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1855">!1855</a> <em></em></li>
+<li>Translations fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1856">!1856</a> <em></em></li>
+<li>Complete the French translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1858">!1858</a> <em></em></li>
+<li>Updated German translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1857">!1857</a> <em></em></li>
+<li>www policies <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1859">!1859</a> <em></em></li>
+<li>Remove msgmerge -N option to enable fuzzy strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1860">!1860</a> <em></em></li>
+<li>One more string translated to French <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1861">!1861</a> <em></em></li>
+<li>Replace ru.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1862">!1862</a> <em></em></li>
+<li>Update Croatian language <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1864">!1864</a> <em></em></li>
+<li>Remove outdated strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1865">!1865</a> <em></em></li>
+<li>Fixing preferences menu in the rcw toolbar <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1866">!1866</a> <em></em></li>
+<li>UI Stats and News refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1868">!1868</a> <em></em></li>
+<li>Update tr.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1869">!1869</a> <em></em></li>
+<li>Update da.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1867">!1867</a> <em></em></li>
+<li>Removed unused string in the remmina_news.glade file <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1870">!1870</a> <em></em></li>
+<li>Complete the French translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1871">!1871</a> <em></em></li>
+<li>Adding support for internationalization <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1872">!1872</a> <em></em></li>
+<li>Kwallet <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1873">!1873</a> <em></em></li>
+<li>remmina.pref readonly patches <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1874">!1874</a> <em></em></li>
+<li>Add uid to news GET request <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1876">!1876</a> <em></em></li>
+<li>Remember last quickconnect selected protocol <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1875">!1875</a> <em></em></li>
+<li>Refactoring - warnings cleanup <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1877">!1877</a> <em></em></li>
+</ul>
+<h2>v1.3.4</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.3...v1.3.4">full changelog</a></p>
+<ul>
+<li>Updated to use core18 and gnome-3-28-1804 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1797">!1797</a> <em></em></li>
+<li>Snap: Build snap in CI and publish to the edge channel for builds against master <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1810">!1810</a> <em></em></li>
+<li>Resolve "SSH public key cannot be imported: Access denied for 'none'. Authentication that can continie: publickey" <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1811">!1811</a> <em></em></li>
+<li>snap: Ensure the icon is installed <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1812">!1812</a> <em></em></li>
+</ul>
+<h2>v1.3.3</h2>
+<p><a href="https://gitlab.com/Remmina/Remmina/compare/v1.3.2...v1.3.3">full changelog</a></p>
+<ul>
+<li>Fix “Utranslated” typo + XHTML 1.0 strictness + move div CSS rule in style block <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1785">!1785</a> <em></em></li>
+<li>Revert autoclosed &lt;script&gt; tags. It seems to be badly surported <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1786">!1786</a> <em></em></li>
+<li>Remmina connection window refactoring <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1787">!1787</a> <em></em></li>
+<li>Adding Serial and parallel ports sharing <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1788">!1788</a> <em></em></li>
+<li>Translation of the new strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1790">!1790</a> <em></em></li>
+<li>Update de.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1789">!1789</a> <em></em></li>
+<li>Updating zh_CN.po from Zheng Qian <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1792">!1792</a> <em></em></li>
+<li>L10N Updating Italian translations <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1793">!1793</a> <em></em></li>
+<li>RemminaMain window refactoring - Removing deprecated functions. <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1794">!1794</a> <em></em></li>
+<li>Update fr.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1795">!1795</a> <em></em></li>
+<li>Fix #1836 implementing the correct message panel when authenticating <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1796">!1796</a> <em></em></li>
+<li>Make ssh tunnel pwd user manageable and public key import <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1798">!1798</a> <em></em></li>
+<li>Update tr.po turkish translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1799">!1799</a> <em></em></li>
+<li>Translate 3 new strings <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1800">!1800</a> <em></em></li>
+<li>Vnci fixes <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1801">!1801</a> <em></em></li>
+<li>Update fr.po <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1802">!1802</a> <em></em></li>
+<li>Translate new strings to German <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1803">!1803</a> <em></em></li>
+<li>Fix Yes/No inversion <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1805">!1805</a> <em></em></li>
+<li>Update Danish translation <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1804">!1804</a> <em></em></li>
+<li>Remmina release v.1.3.3 <a href="https://gitlab.com/Remmina/Remmina/merge_requests/1807">!1807</a> <em></em></li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.3.2">v1.3.2</a> (2019-01-31)</h2>
+<ul>
+<li>Change rcw size allocation wait algorithm, see issue #1809 (by Giovanni Panozzo)</li>
+<li>Fix a couple of VNCI crashes, see issue #1821 (by Giovanni Panozzo)</li>
+<li>Fix spice authentication, issue #1820 (by Giovanni Panozzo)</li>
+<li>Update translations script fixes (by Antenore Gatta)</li>
+<li>Add a missing end point in an SSH error message (by Davy Defaud)</li>
+<li>Complete the French translation (by Davy Defaud)</li>
+<li>New strings for it.po (by Giovanni Panozzo)</li>
+<li>Remmina Translations Statistics (by Antenore Gatta)</li>
+<li>Remmina Translation Report (by Antenore Gatta)</li>
+<li>Cosmetics fixes: (by Antenore Gatta &amp; Davy Defaud)</li>
+<li>Development Documentation fixes (by Antenore Gatta)</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.3.1">v1.3.1</a> (2019-01-28)</h2>
+<h3>Bug Fixing release</h3>
+<p>[Giovanni Panozzo]() has fixed many issues that have been introduced during the last release.</p>
+<p>Additionally a great rework has been done by [Davy Defaud]() to fix many typographic errors and translations.</p>
+<p>[Wolfgang Scherer]() has fixed an annoying clipboard bug in the VNC plugin.</p>
+<h3>List of changes</h3>
+<ul>
+<li>Updated author files (Antenore Gatta)</li>
+<li>Version bump (Antenore Gatta)</li>
+<li>Merge branch 'german-translation' into 'master' (Davy Defaud)</li>
+<li>Updated german translation (Johannes Weberhofer)</li>
+<li>Updated translations (Antenore Gatta)</li>
+<li>Fixed pot generation (Antenore Gatta)</li>
+<li>Fixed LINGUAS format (Antenore Gatta)</li>
+<li>Merge branch 'typographic_fixes' into 'master' (Antenore Gatta)</li>
+<li>Use uppercase for VNC, SSH, SFTP and RDP protocol names (Davy Defaud)</li>
+<li>Gettextize more SSH error messages (Davy Defaud)</li>
+<li>Replace single quotes by true apostrophes (Davy Defaud)</li>
+<li>Replace all triple points by ellipsis characters (Davy Defaud)</li>
+<li>Remove space before colons in English strings (Davy Defaud)</li>
+<li>Fix English typo transmittion → transmission (Davy Defaud)</li>
+<li>Fix a bad indent (spaces instead of a tab) (Davy Defaud)</li>
+<li>Merge branch 'vnc-blocks-after-clipboard' into 'master' (Giovanni Panozzo)</li>
+<li>VNC: prevent client from blocking when remote clipboard is changed (Wolfgang Scherer)</li>
+<li>Merge branch 'master' into 'master' (Davy Defaud)</li>
+<li>Updated ru.po for more human-like language (TreefeedXavier)</li>
+<li>Merge branch 'patch-5' into 'master' (Davy Defaud)</li>
+<li>Performance improvement (Antenore Gatta)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Bump documentation version (Antenore Gatta)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Fixing docker image (Antenore Gatta)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Add background class to message panel (Giovanni Panozzo)</li>
+<li>Merge branch 'css_fix' into 'master' (Giovanni Panozzo)</li>
+<li>Fix password field focusing, see issue #1811 (Giovanni Panozzo)</li>
+<li>Fix CSS of message panel and tab page (Giovanni Panozzo)</li>
+<li>Merge branch 'master' of gitlab.com:Remmina/Remmina (Antenore Gatta)</li>
+<li>Logo documentation (Antenore Gatta)</li>
+<li>Merge branch 'italian-strings' into 'master' (Davy Defaud)</li>
+<li>Remove the duplicate of the first header line (Davy Defaud)</li>
+<li>Some strings for it.po (Giovanni Panozzo)</li>
+<li>Merge branch 'rcw_fixess' into 'master' (Giovanni Panozzo)</li>
+<li>rcw fixes for fullscreen mode (Giovanni Panozzo)</li>
+<li>all rows translated (Serdar Sağlam)</li>
+<li>Merge branch 'master' of <a href="https://gitlab.com/Remmina/Remmina">https://gitlab.com/Remmina/Remmina</a> (Giovanni Panozzo)</li>
+<li>Fix border appearing in VIEWPORT_FULLSCREEN_MODE when not needed (Giovanni Panozzo)</li>
+<li>Merge branch '1813-a-few-fixes-improvements-for-the-po-files' into 'master' (Davy Defaud)</li>
+<li>Fix scrolling in VIEWPORT_FULLSCREEN_MODE (Giovanni Panozzo)</li>
+<li>Correctly reparent MessagePanel when moving a tab (Giovanni Panozzo)</li>
+<li>Make ftb visible before connecting (Giovanni Panozzo)</li>
+<li>Add the missing plural forms of a translation (yet to be translated…) (Davy Defaud)</li>
+<li>Add missing format specification in a Spanish translation string (Davy Defaud)</li>
+<li>Fix missing language code in po some file headers (Davy Defaud)</li>
+<li>Merge branch 'patch-4' into 'master' (Antenore Gatta)</li>
+<li>Update tr.po (Serdar Sağlam)</li>
+<li>Merge branch 'blackmp' into 'master' (Antenore Gatta)</li>
+<li>remove black background (Antenore Gatta)</li>
+<li>Merge branch 'issue-1809' into 'master' (Giovanni Panozzo)</li>
+<li>Set notebook current page to 1st page on new cnnwin (Giovanni Panozzo)</li>
+<li>Merge branch 'issue1810-icons' into 'master' (Antenore Gatta)</li>
+<li>Removed edit-delete.svg from the repository (Antenore Gatta)</li>
+<li>Merge branch 'issue1810-icons' into 'master' (Antenore Gatta)</li>
+<li>Removed edit-delete icon - fixes #1810 (Antenore Gatta)</li>
+<li>Merge branch 'patch-1' into 'master' (Antenore Gatta)</li>
+<li>flatpak: update spice-gtk from 0.35 to 0.36 (Denis Ollier)</li>
+<li>Translate the two new strings recently added (Davy Defaud)</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.3.0">v1.3.0</a> (2019-01-18)</h2>
+<h3>Most notable</h3>
+<ul>
+<li>Use window resolution #1 (by Giovanni Panozzo)</li>
+<li>rcw_preopen complete (by Giovanni Panozzo)</li>
+<li>RDP: new global parameter rdp_map_keycode (by Giovanni Panozzo)</li>
+<li>Use decimal instead of hex on rdp keycode map (by Giovanni Panozzo)</li>
+</ul>
+<h3>Translations</h3>
+<ul>
+<li>Adding basic script to update the po files (by Antenore Gatta)</li>
+<li>Added remmina.pot (by Antenore Gatta)</li>
+<li>Change es_VE.po header (Language-Team and Language) (by Antenore Gatta)</li>
+<li>Fixed some Italian translations (by Antenore Gatta)</li>
+<li>Fixing es_VE Spanish #1797 (by Antenore Gatta)</li>
+<li>French translation update for v1.3.0 (by Davy Defaud)</li>
+<li>Improving i18n subsystem (by Antenore Gatta)</li>
+<li>Russian translation updated (fully translated) (by TreefeedXavier)</li>
+<li>Translations - Fixing errors reported in the issue #1797 (by Antenore Gatta)</li>
+<li>Update Hungarian translation (by Meskó Balázs)</li>
+<li>Update de.po (by Ozzie Isaacs)</li>
+<li>Update tr.po (by Serdar Sağlam)</li>
+<li>Updated german translation (by Ozzie Isaacs)</li>
+<li>Updated ru.po (by TreefeedXavier)</li>
+<li>Updated translators list ru.po (by TreefeedXavier)</li>
+<li>Updating da.po (by Antenore Gatta)</li>
+<li>Updating po translation files (by Antenore Gatta)</li>
+<li>Updating translation credits (by Antenore Gatta)</li>
+</ul>
+<h3>Other enhancements and fixes</h3>
+<ul>
+<li>Added xrdp friendly options Closes #1742 (by Antenore Gatta)</li>
+<li>Adding language detection (by Antenore Gatta)</li>
+<li>Auth panel widget placement (by Antenore Gatta)</li>
+<li>CSS modifications to adapt to stock Gnome and Gtk themes (by Antenore Gatta)</li>
+<li>Correctly set focus after rcw_preopen (by Giovanni Panozzo)</li>
+<li>Deprecates dynamic_resolution_width and height cfg params (by Giovanni Panozzo)</li>
+<li>Disable glyph cache by default (by Antenore Gatta)</li>
+<li>Fix crash when showing password panel (by Giovanni Panozzo)</li>
+<li>Fix gtk_window_present_with_time() time (by Giovanni Panozzo)</li>
+<li>Fixed build for the flatpak (by Antenore Gatta)</li>
+<li>Fixed missing icons (by Antenore Gatta)</li>
+<li>Gtk deprecation and CSS restzling (by Antenore Gatta)</li>
+<li>Gtk icon cache update during install phase (by Antenore Gatta)</li>
+<li>Icons and gtk fixes for rcw_reopen (by Antenore Gatta)</li>
+<li>Make menu items paintable by the application (by Antenore Gatta)</li>
+<li>Open connection window before connecting (by Giovanni Panozzo)</li>
+<li>Prevent toolbar signals while reconfiguring toolbar (by Giovanni Panozzo)</li>
+<li>RDP fixes: remove redundant rfi-&gt;width/rfi-&gt;height and more (by Giovanni Panozzo)</li>
+<li>RDP: correctly destroy rfi-&gt;surface during a desktop resize (by Giovanni Panozzo)</li>
+<li>RDP: move gdi_resize() to a better place (by Giovanni Panozzo)</li>
+<li>RDP: remove unneeded OrderSupport struct init (by Giovanni Panozzo)</li>
+<li>Remove deprecated floating toolbar toplevel window (by Giovanni Panozzo)</li>
+<li>Search box clear icon (by Giovanni Panozzo)</li>
+<li>Update <a class="el" href="_c_o_n_t_r_i_b_u_t_i_n_g_8md.html">CONTRIBUTING.md</a> (by Antenore Gatta)</li>
+<li>Update <a class="el" href="_r_e_a_d_m_e_8md.html">README.md</a> (by Antenore Gatta)</li>
+<li>Update toolbar button handling (by Giovanni Panozzo)</li>
+<li>Updated CSS to have black background in fullscreen (by Antenore Gatta)</li>
+<li>Updated sponsor list (by Antenore Gatta)</li>
+<li>Updated wiki URLs (by Antenore Gatta)</li>
+<li>Updating Doxygen config (by Antenore Gatta)</li>
+<li>Updating coyright for year 2019 (by Antenore Gatta)</li>
+<li>VNC: Fix possible crash during connection (by Giovanni Panozzo)</li>
+<li>allow closing tab after error message panel is shown (by Giovanni Panozzo)</li>
+<li>flatpak: update freerdp from 2.0.0-rc3 to 2.0.0-rc4 (by Denis Ollier)</li>
+<li>flatpak: update gnome sdk from 3.28 to 3.30 (by Denis Ollier)</li>
+<li>flatpak: update libssh from 0.8.5 to 0.8.6 (by Denis Ollier)</li>
+<li>flatpak: update libvncserver from 0.9.11 to 0.9.12 (by Denis Ollier)</li>
+<li>flatpak: update nx-libs from 3.5.99.16 to 3.5.99.17 (by Denis Ollier)</li>
+<li>flatpak: update six from 1.11.0 to 1.12.0 (by Denis Ollier)</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.32.1">v1.2.32.1</a> (2018-11-14)</h2>
+<ul>
+<li>Add desktop-gnome-platform and fix themes in SNAP, fixes issue #1730 and fixes missing SNAP localization (Giovanni Panozzo)</li>
+<li>Fix SNAP icon (Giovanni Panozzo)</li>
+<li>flatpak: update libssh from 0.8.2 to 0.8.3 (Denis Ollier)</li>
+<li>flatpak: update libssh from 0.8.3 to 0.8.4 (Denis Ollier)</li>
+<li>flatpak: update libssh from 0.8.4 to 0.8.5 (Denis Ollier)</li>
+<li>flatpak: update lz4 from 1.8.2 to 1.8.3 (Denis Ollier)</li>
+<li>flatpak: update pyparsing from 2.2.0 to 2.2.1 (Denis Ollier)</li>
+<li>flatpak: update pyparsing from 2.2.1 to 2.2.2 (Denis Ollier)</li>
+<li>flatpak: update pyparsing from 2.2.2 to 2.3.0 (Denis Ollier)</li>
+<li>Implement smartcard name setting. Should fix #1737 (Antenore Gatta)</li>
+<li>man+help: elaborate on file types of -connect and -edit cmd line options (Mikkel Kirkgaard Nielsen)</li>
+<li>RDP: add FREERDP_ERROR_SERVER_DENIED_CONNECTION message (Giovanni Panozzo)</li>
+<li>Removing X11Forwarding code as it is wrong and causing issues (Antenore Gatta)</li>
+<li>Update fix tr.po (Serdar Sağlam)</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.32">v1.2.32</a> (2018-10-06)</h2>
+<ul>
+<li>Avoid to save last_success property if stats are not enabled. </li>
+<li>GW auth data was saved in the server auth data. </li>
+<li>Do not register socket plugins when X11 is not available. </li>
+<li>Screenshot enhancements. </li>
+<li>RDP GW authentication. </li>
+<li>Adding global preference for search bar visibility. </li>
+<li>Allow wayland backend again when GTK &gt;= 3.22.27. </li>
+<li>tr.po </li>
+<li>Add option to honour https_proxy and http_proxy environment variable. </li>
+<li>Force program name to app id. </li>
+<li>Printing builds flags with remmina &ndash;full-version command option. </li>
+<li>New plugin Simple Terminal. </li>
+<li>Fix KB grabbing when switching workspace. </li>
+<li>Dealing correcthly with some deprecations, getting rid of most of G_GNUC_BEGIN_IGNORE_DEPRECATIONS. </li>
+<li>Improving file type hadling. </li>
+<li>Adding error check on remmina_pref_save. </li>
+<li>Many bug fixing as usual.</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.31.4">v1.2.31.4</a> (2018-08-24)</h2>
+<p>This is a bug fixing release.</p>
+<p><b>Fixed bugs:</b></p>
+<ul>
+<li>Fix KB grabbing when switching workspace.</li>
+<li>Fix some possible crashes when reading a remminafile.</li>
+<li>Fixes a crash deleting XDMCP profile.</li>
+<li>Fixing libssh deprecations.</li>
+</ul>
+<p><b>Implemented enhancements:</b></p>
+<ul>
+<li>Improving file type hadling.</li>
+<li>flatpak: update libssh from 0.7.5 to 0.8.1</li>
+<li>flatpak: update freerdp from 2.0.0-rc2 to 2.0.0-rc3</li>
+<li>Snap: update to libssh 0.8.0.</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.31.3">v1.2.31.3</a> (2018-08-14)</h2>
+<p>This is a bug fixing release.</p>
+<p><b>Fixed bugs:</b></p>
+<ul>
+<li>Do not send stats if the remmina.pref file is read-only.</li>
+<li>cmake: include libssh_threads only when available.</li>
+<li>Set program class to REMMINA_APP_ID, fixes #1706.</li>
+</ul>
+<p><b>Implemented enhancements:</b></p>
+<ul>
+<li>Implement send ctrl+alt+fn keys. Closes #1707.</li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.31.1">v1.2.31.1</a> (2018-07-31)</h2>
+<p>This is a bug fixing release.</p>
+<p><b>Fixed bugs:</b></p>
+<ul>
+<li>Cannot minimize in fullscreen mode.</li>
+<li>Crash with the RDP plugin.</li>
+<li>Missing manual pages for Debian.</li>
+</ul>
+<p><b>Closed issues:</b></p>
+<ul>
+<li>Minimize window doesn't minimize the window <a href="https://gitlab.com/Remmina/Remmina/issues/1696">#1696</a></li>
+<li>Minimize window button is disable, after connecting to RDS <a href="https://gitlab.com/Remmina/Remmina/issues/1700">#1700</a></li>
+</ul>
+<h2><a href="https://gitlab.com/Remmina/Remmina/tags/v1.2.31">v1.2.31</a> (2018-07-28)</h2>
+<p>This is the first release on GitLab and we are still moving and adapting tools and integrations, therefore this changelog is quite short than usually.</p>
+<p>Notables changes since the last release are:</p>
+<ul>
+<li>Custom color schemes per profile for the SSH plugin ().</li>
+<li>Flatpak updates and fixes ()</li>
+<li>Kiosk mode with integration in the login manager ().</li>
+<li>New Icons ( and ).</li>
+<li>SFTP tool password fixes ().</li>
+<li>Several fixes around RDP and compilations issues ( and ). </li>
+</ul>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/md__c_o_n_t_r_i_b_u_t_i_n_g.html b/docs/md__c_o_n_t_r_i_b_u_t_i_n_g.html
new file mode 100644
index 000000000..a18167a1d
--- /dev/null
+++ b/docs/md__c_o_n_t_r_i_b_u_t_i_n_g.html
@@ -0,0 +1,163 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: CONTRIBUTING</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('md__c_o_n_t_r_i_b_u_t_i_n_g.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">CONTRIBUTING </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><p>Welcome, we are a kind, open-minded, simple community. All help welcome, in any way you can think of.</p>
+<h2>Coding</h2>
+<p><b>Remmina</b> uses the <a href="https://stackoverflow.com/questions/11582995/what-is-the-fork-pull-model-in-github">fork and pull</a> model. If you&amp;#8217;d like to make changes to this project, the following steps will get you there!</p>
+<ol type="1">
+<li>Fork <a href="https://gitlab.com/Remmina/Remmina/forks/new">this repo</a></li>
+<li>Make your changes</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/merge_requests/new">Submit a merge request</a></li>
+</ol>
+<p>The <a href="https://gitlab.com/Remmina/Remmina/wikis/home">wiki</a> has details on how to compile Remmina and FreeRDP. Look for issues labeled <a href="https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=help+wanted">&amp;#8220;help wanted&amp;#8221;</a>. There are also paid bounties available. Know how to fix a bug or implement anything requested or completely new, but lack the time? Get in touch, <b>We can pay for some hours of your time. Don't be shy.</b></p>
+<h3>Fix existing bugs</h3>
+<p>In general, this is the most important task. To see all the issues already labeled as bugs, you can use <a href="https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=bug">this query</a></p>
+<h3>Implement most wanted features and fixes (<em>bounty $305</em>)</h3>
+<p>Similarly, we have a quite important list of feature requests, that are labeled as <a href="https://gitlab.com/Remmina/Remmina/issues?label_name%5B%5D=enhancement&amp;sort=created_date&amp;state=opened">enhancement</a>, of which some that have a <a href="https://gitlab.com/Remmina/Remmina/issues?scope=all&amp;utf8=%E2%9C%93&amp;state=opened&amp;label_name[]=enhancement&amp;label_name[]=bounty">bounty</a> for those that will be able to implement them.</p><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/issues/476">#476</a> : Favorite and recent connections [$5]</li>
+<li><a href="https://gitlab.com/Remmina/Remmina/issues/376">#376</a> : RDP: Multi monitor support [$15]</li>
+</ul>
+<h3>Internal projects</h3>
+<ul>
+<li>Refactoring <a href="https://gitlab.com/Remmina/Remmina/blob/master/src/remmina_connection_window.c">remmina_connection_window.c</a> as it is big, complicated and hard to extend.</li>
+<li>Simplify the user interface.</li>
+<li>Separate plugin processes from the main process to improve stability.</li>
+<li>Write an additional plugin system to write plugins also in Python and eventually Ruby.</li>
+</ul>
+<h2>Documentation</h2>
+<p>Submit user and developer guides in any (accessible) format you want (screencasts, PDF, HTML, Open Document, .gs, .ps, LaTeX, GitLab wiki , etc).</p><ul>
+<li><a href="https://gitlab.com/Remmina/Remmina/wikis/home">Wiki</a></li>
+<li><a href="https://remmina.gitlab.io/remminadoc.gitlab.io">Dev documentation</a> Commenting the source code and writing checks is also an ongoing process.</li>
+</ul>
+<h2>Donating</h2>
+<p>Financial contributions help make Remmina a lot. More info to be found on the <a href="/donations/">Remmina website donation page</a>. <a href="https://remmina.org/donations/#donors">List of all the great supporters</a>.</p>
+<h2>Merchandise</h2>
+<p>From our store on <a href="http://tee.pub/lic/CfbUoWiygXM">TEEPUBLIC</a> you can get <a href="http://tee.pub/lic/fgVKOyGjHgc">mugged</a>, your ThinkPad <a href="http://tee.pub/lic/fgVKOyGjHgc">covered</a> and clad in this most compelling <a href="http://tee.pub/lic/fgVKOyGjHgc">T-shirt</a>.</p>
+<h2>Report bugs, ideas, issues</h2>
+<p>Install it, use it and report What doesn&amp;#8217;t work, is missing, or ugly. Don&amp;#8217;t hesitate to let us know. For bug and feature requests, use <a href="https://gitlab.com/Remmina/Remmina/issues">GitLab issues</a> or ask on IRC. #remmina on freenode.</p>
+<h2>Screenshots</h2>
+<p>Send in pictures or screengrabs of your setup.</p>
+<h2>Translation</h2>
+<p>Help translate Remmina to your language.</p><ul>
+<li><a href="https://hosted.weblate.org/projects/remmina/">Weblate</a></li>
+</ul>
+<h2>Videos</h2>
+<ul>
+<li>As short as you can. Around 2 minutes to maximum 4 minutes.</li>
+<li>Avoid showing copyrighted and distracting content, even custom/other desktop icons should not be shown.</li>
+</ul>
+<p>Videos demonstrating different ways to use Remmina, the more the merrier! The original video is needed, as it will be uploaded to video streaming services, if you need support let us know. These would make good topics for videos:</p>
+<ul>
+<li>Configuration and use of a basic RDP profile, quickly showing the most common controls (resizes, toolbar placement, screenshots, …).</li>
+<li>Creation of a default profile.</li>
+<li>Cration of and connection to a VNC server.</li>
+<li>Using a basic SSH tunnel.</li>
+</ul>
+<h3>Disclaimer</h3>
+<p>Your video will be uploaded to video streaming services, under the respective Remmina account at each site. You can add a watermark with the details you want to share, and a caption will be added in the linked video. Pick a suitable license, like CC-BY-SA 4.0-intl. Sending an unedited video is fine too.</p>
+<h3>Desktop/screen video recorder</h3>
+<ul>
+<li><a href="https://www.maartenbaert.be/simplescreenrecorder/">SimpleScreenRecorder</a></li>
+<li><a href="https://obsproject.com/">OBS Studio</a></li>
+</ul>
+<h3>Video editors</h3>
+<p>There are many video editors for Linux|GNU. <a href="https://www.openshot.org/">OpenShot</a> is good. To produce good looking videos choose a 1080p profile.</p>
+<h3>Share your videos with us</h3>
+<p>If you don't want to use reep.io, get in contact at <a href="#" onclick="location.href='mai'+'lto:'+'adm'+'in'+'@re'+'mm'+'ina'+'.o'+'rg'; return false;">admin<span style="display: none;">.nosp@m.</span>@rem<span style="display: none;">.nosp@m.</span>mina.<span style="display: none;">.nosp@m.</span>org</a>. <a href="https://reep.io/">reep.io</a> is a P2P file-sharing system, meaning there are no servers in the middle. </p>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/menu.js b/docs/menu.js
new file mode 100644
index 000000000..97db4c239
--- /dev/null
+++ b/docs/menu.js
@@ -0,0 +1,26 @@
+function initMenu(relPath,searchEnabled,serverSide,searchPage,search) {
+ function makeTree(data,relPath) {
+ var result='';
+ if ('children' in data) {
+ result+='<ul>';
+ for (var i in data.children) {
+ result+='<li><a href="'+relPath+data.children[i].url+'">'+
+ data.children[i].text+'</a>'+
+ makeTree(data.children[i],relPath)+'</li>';
+ }
+ result+='</ul>';
+ }
+ return result;
+ }
+
+ $('#main-nav').append(makeTree(menudata,relPath));
+ $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu');
+ if (searchEnabled) {
+ if (serverSide) {
+ $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><div class="left"><form id="FSearchBox" action="'+searchPage+'" method="get"><img id="MSearchSelect" src="'+relPath+'search/mag.png" alt=""/><input type="text" id="MSearchField" name="query" value="'+search+'" size="20" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)"></form></div><div class="right"></div></div></li>');
+ } else {
+ $('#main-menu').append('<li style="float:right"><div id="MSearchBox" class="MSearchBoxInactive"><span class="left"><img id="MSearchSelect" src="'+relPath+'search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/><input type="text" id="MSearchField" value="'+search+'" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/></span><span class="right"><a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="'+relPath+'search/close.png" alt=""/></a></span></div></li>');
+ }
+ }
+ $('#main-menu').smartmenus();
+}
diff --git a/docs/menudata.js b/docs/menudata.js
new file mode 100644
index 000000000..ceac7ad92
--- /dev/null
+++ b/docs/menudata.js
@@ -0,0 +1,151 @@
+var menudata={children:[
+{text:"Main Page",url:"index.html"},
+{text:"Related Pages",url:"pages.html"},
+{text:"Data Structures",url:"annotated.html",children:[
+{text:"Data Structures",url:"annotated.html"},
+{text:"Data Structure Index",url:"classes.html"},
+{text:"Data Fields",url:"functions.html",children:[
+{text:"All",url:"functions.html",children:[
+{text:"a",url:"functions.html#index_a"},
+{text:"b",url:"functions_b.html#index_b"},
+{text:"c",url:"functions_c.html#index_c"},
+{text:"d",url:"functions_d.html#index_d"},
+{text:"e",url:"functions_e.html#index_e"},
+{text:"f",url:"functions_f.html#index_f"},
+{text:"g",url:"functions_g.html#index_g"},
+{text:"h",url:"functions_h.html#index_h"},
+{text:"i",url:"functions_i.html#index_i"},
+{text:"k",url:"functions_k.html#index_k"},
+{text:"l",url:"functions_l.html#index_l"},
+{text:"m",url:"functions_m.html#index_m"},
+{text:"n",url:"functions_n.html#index_n"},
+{text:"o",url:"functions_o.html#index_o"},
+{text:"p",url:"functions_p.html#index_p"},
+{text:"q",url:"functions_q.html#index_q"},
+{text:"r",url:"functions_r.html#index_r"},
+{text:"s",url:"functions_s.html#index_s"},
+{text:"t",url:"functions_t.html#index_t"},
+{text:"u",url:"functions_u.html#index_u"},
+{text:"v",url:"functions_v.html#index_v"},
+{text:"w",url:"functions_w.html#index_w"},
+{text:"x",url:"functions_x.html#index_x"},
+{text:"y",url:"functions_y.html#index_y"}]},
+{text:"Functions",url:"functions_func.html"},
+{text:"Variables",url:"functions_vars.html",children:[
+{text:"a",url:"functions_vars.html#index_a"},
+{text:"b",url:"functions_vars_b.html#index_b"},
+{text:"c",url:"functions_vars_c.html#index_c"},
+{text:"d",url:"functions_vars_d.html#index_d"},
+{text:"e",url:"functions_vars_e.html#index_e"},
+{text:"f",url:"functions_vars_f.html#index_f"},
+{text:"g",url:"functions_vars_g.html#index_g"},
+{text:"h",url:"functions_vars_h.html#index_h"},
+{text:"i",url:"functions_vars_i.html#index_i"},
+{text:"k",url:"functions_vars_k.html#index_k"},
+{text:"l",url:"functions_vars_l.html#index_l"},
+{text:"m",url:"functions_vars_m.html#index_m"},
+{text:"n",url:"functions_vars_n.html#index_n"},
+{text:"o",url:"functions_vars_o.html#index_o"},
+{text:"p",url:"functions_vars_p.html#index_p"},
+{text:"q",url:"functions_vars_q.html#index_q"},
+{text:"r",url:"functions_vars_r.html#index_r"},
+{text:"s",url:"functions_vars_s.html#index_s"},
+{text:"t",url:"functions_vars_t.html#index_t"},
+{text:"u",url:"functions_vars_u.html#index_u"},
+{text:"v",url:"functions_vars_v.html#index_v"},
+{text:"w",url:"functions_vars_w.html#index_w"},
+{text:"x",url:"functions_vars_x.html#index_x"},
+{text:"y",url:"functions_vars_y.html#index_y"}]},
+{text:"Enumerator",url:"functions_eval.html"}]}]},
+{text:"Files",url:"files.html",children:[
+{text:"File List",url:"files.html"},
+{text:"Globals",url:"globals.html",children:[
+{text:"All",url:"globals.html",children:[
+{text:"_",url:"globals.html#index__"},
+{text:"a",url:"globals_a.html#index_a"},
+{text:"b",url:"globals_b.html#index_b"},
+{text:"c",url:"globals_c.html#index_c"},
+{text:"d",url:"globals_d.html#index_d"},
+{text:"e",url:"globals_e.html#index_e"},
+{text:"f",url:"globals_f.html#index_f"},
+{text:"g",url:"globals_g.html#index_g"},
+{text:"h",url:"globals_h.html#index_h"},
+{text:"i",url:"globals_i.html#index_i"},
+{text:"k",url:"globals_k.html#index_k"},
+{text:"l",url:"globals_l.html#index_l"},
+{text:"m",url:"globals_m.html#index_m"},
+{text:"n",url:"globals_n.html#index_n"},
+{text:"o",url:"globals_o.html#index_o"},
+{text:"p",url:"globals_p.html#index_p"},
+{text:"q",url:"globals_q.html#index_q"},
+{text:"r",url:"globals_r.html#index_r"},
+{text:"s",url:"globals_s.html#index_s"},
+{text:"t",url:"globals_t.html#index_t"},
+{text:"u",url:"globals_u.html#index_u"},
+{text:"v",url:"globals_v.html#index_v"},
+{text:"w",url:"globals_w.html#index_w"},
+{text:"x",url:"globals_x.html#index_x"}]},
+{text:"Functions",url:"globals_func.html",children:[
+{text:"_",url:"globals_func.html#index__"},
+{text:"a",url:"globals_func_a.html#index_a"},
+{text:"b",url:"globals_func_b.html#index_b"},
+{text:"c",url:"globals_func_c.html#index_c"},
+{text:"d",url:"globals_func_d.html#index_d"},
+{text:"e",url:"globals_func_e.html#index_e"},
+{text:"f",url:"globals_func_f.html#index_f"},
+{text:"g",url:"globals_func_g.html#index_g"},
+{text:"h",url:"globals_func_h.html#index_h"},
+{text:"i",url:"globals_func_i.html#index_i"},
+{text:"k",url:"globals_func_k.html#index_k"},
+{text:"l",url:"globals_func_l.html#index_l"},
+{text:"m",url:"globals_func_m.html#index_m"},
+{text:"n",url:"globals_func_n.html#index_n"},
+{text:"o",url:"globals_func_o.html#index_o"},
+{text:"r",url:"globals_func_r.html#index_r"},
+{text:"s",url:"globals_func_s.html#index_s"},
+{text:"u",url:"globals_func_u.html#index_u"},
+{text:"v",url:"globals_func_v.html#index_v"},
+{text:"w",url:"globals_func_w.html#index_w"}]},
+{text:"Variables",url:"globals_vars.html",children:[
+{text:"b",url:"globals_vars.html#index_b"},
+{text:"c",url:"globals_vars.html#index_c"},
+{text:"d",url:"globals_vars.html#index_d"},
+{text:"e",url:"globals_vars.html#index_e"},
+{text:"f",url:"globals_vars.html#index_f"},
+{text:"g",url:"globals_vars.html#index_g"},
+{text:"i",url:"globals_vars.html#index_i"},
+{text:"k",url:"globals_vars.html#index_k"},
+{text:"l",url:"globals_vars.html#index_l"},
+{text:"m",url:"globals_vars.html#index_m"},
+{text:"n",url:"globals_vars.html#index_n"},
+{text:"o",url:"globals_vars.html#index_o"},
+{text:"p",url:"globals_vars.html#index_p"},
+{text:"q",url:"globals_vars.html#index_q"},
+{text:"r",url:"globals_vars.html#index_r"},
+{text:"s",url:"globals_vars.html#index_s"},
+{text:"t",url:"globals_vars.html#index_t"},
+{text:"u",url:"globals_vars.html#index_u"},
+{text:"x",url:"globals_vars.html#index_x"}]},
+{text:"Typedefs",url:"globals_type.html",children:[
+{text:"d",url:"globals_type.html#index_d"},
+{text:"l",url:"globals_type.html#index_l"},
+{text:"p",url:"globals_type.html#index_p"},
+{text:"r",url:"globals_type.html#index_r"}]},
+{text:"Enumerations",url:"globals_enum.html"},
+{text:"Enumerator",url:"globals_eval.html",children:[
+{text:"c",url:"globals_eval.html#index_c"},
+{text:"d",url:"globals_eval_d.html#index_d"},
+{text:"e",url:"globals_eval_e.html#index_e"},
+{text:"f",url:"globals_eval_f.html#index_f"},
+{text:"g",url:"globals_eval_g.html#index_g"},
+{text:"l",url:"globals_eval_l.html#index_l"},
+{text:"n",url:"globals_eval_n.html#index_n"},
+{text:"o",url:"globals_eval_o.html#index_o"},
+{text:"p",url:"globals_eval_p.html#index_p"},
+{text:"r",url:"globals_eval_r.html#index_r"},
+{text:"s",url:"globals_eval_s.html#index_s"},
+{text:"t",url:"globals_eval_t.html#index_t"},
+{text:"u",url:"globals_eval_u.html#index_u"},
+{text:"v",url:"globals_eval_v.html#index_v"},
+{text:"w",url:"globals_eval_w.html#index_w"},
+{text:"x",url:"globals_eval_x.html#index_x"}]}]}]}]}
diff --git a/docs/multi-monitor-support_8md.html b/docs/multi-monitor-support_8md.html
new file mode 100644
index 000000000..df0c4df3a
--- /dev/null
+++ b/docs/multi-monitor-support_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: multi-monitor-support.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('multi-monitor-support_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">multi-monitor-support.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="multi-monitor-support_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="multi-monitor-support_8md.html">multi-monitor-support.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/multi-monitor-support_8md_source.html b/docs/multi-monitor-support_8md_source.html
new file mode 100644
index 000000000..445f4b6b0
--- /dev/null
+++ b/docs/multi-monitor-support_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: multi-monitor-support.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('multi-monitor-support_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">multi-monitor-support.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="multi-monitor-support_8md.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;# Multi monitor support</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;See also #6 and #323</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;## Windows server support</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;- Only in full scren</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;### WINDOWS 2003 till WINDOWS 2008 (XP, Vista)</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;- Only using span. One big bitmap for all monitors</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;- Going out of fullscreen we still have a huge bitmap as the server cannot be reconfigured.</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;- Removing a montor is not possible, we will have a window with the huge bitmap.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;- As conswquence we can go back to fullscreen with any impact.</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;### WINDOWS 2008R2, WINDOWS 2012 (Win7, Win8)</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;- First basic, real multi monitor support, the server is aware of each monitor and places the windows correctly.</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;- Yet, it doesn&#39;t support the configuration change awareness.</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;- Same behaviors as above.</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;### WINDOWS 2012R2, WINDOWS 2016 (Win 8.1, Win 10) and forward</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;&quot;Display Control Virtual Channel Extension&quot; has been implemented, https://msdn.microsoft.com/en-us/library/dn366738.aspx</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;Every time we add qand remove a monitor, the remote server adapt its configuration.</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;## FreeRDP</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;- FreeRDP/client/common/client.c</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;```c</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;/* Moved logic for Multimon and Span monitors to force fullscreen, so</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; * that the rdp file also triggers this functionality */ </div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;if (settings-&gt;SpanMonitors) </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; settings-&gt;UseMultimon = TRUE; </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; settings-&gt;Fullscreen = TRUE; </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;else if (settings-&gt;UseMultimon) </div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{ </div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; settings-&gt;Fullscreen = TRUE; </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;```</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="multi-monitor-support_8md.html">multi-monitor-support.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nav_f.png b/docs/nav_f.png
new file mode 100644
index 000000000..72a58a529
--- /dev/null
+++ b/docs/nav_f.png
Binary files differ
diff --git a/docs/nav_g.png b/docs/nav_g.png
new file mode 100644
index 000000000..2093a237a
--- /dev/null
+++ b/docs/nav_g.png
Binary files differ
diff --git a/docs/nav_h.png b/docs/nav_h.png
new file mode 100644
index 000000000..33389b101
--- /dev/null
+++ b/docs/nav_h.png
Binary files differ
diff --git a/docs/navtree.css b/docs/navtree.css
new file mode 100644
index 000000000..0cc7e776c
--- /dev/null
+++ b/docs/navtree.css
@@ -0,0 +1,146 @@
+#nav-tree .children_ul {
+ margin:0;
+ padding:4px;
+}
+
+#nav-tree ul {
+ list-style:none outside none;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree li {
+ white-space:nowrap;
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .plus {
+ margin:0px;
+}
+
+#nav-tree .selected {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
+
+#nav-tree img {
+ margin:0px;
+ padding:0px;
+ border:0px;
+ vertical-align: middle;
+}
+
+#nav-tree a {
+ text-decoration:none;
+ padding:0px;
+ margin:0px;
+ outline:none;
+}
+
+#nav-tree .label {
+ margin:0px;
+ padding:0px;
+ font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+#nav-tree .label a {
+ padding:2px;
+}
+
+#nav-tree .selected a {
+ text-decoration:none;
+ color:#fff;
+}
+
+#nav-tree .children_ul {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree .item {
+ margin:0px;
+ padding:0px;
+}
+
+#nav-tree {
+ padding: 0px 0px;
+ background-color: #FAFAFF;
+ font-size:14px;
+ overflow:auto;
+}
+
+#doc-content {
+ overflow:auto;
+ display:block;
+ padding:0px;
+ margin:0px;
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#side-nav {
+ padding:0 6px 0 0;
+ margin: 0px;
+ display:block;
+ position: absolute;
+ left: 0px;
+ width: 250px;
+}
+
+.ui-resizable .ui-resizable-handle {
+ display:block;
+}
+
+.ui-resizable-e {
+ background-image:url("splitbar.png");
+ background-size:100%;
+ background-repeat:no-repeat;
+ background-attachment: scroll;
+ cursor:ew-resize;
+ height:100%;
+ right:0;
+ top:0;
+ width:6px;
+}
+
+.ui-resizable-handle {
+ display:none;
+ font-size:0.1px;
+ position:absolute;
+ z-index:1;
+}
+
+#nav-tree-contents {
+ margin: 6px 0px 0px 0px;
+}
+
+#nav-tree {
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ -webkit-overflow-scrolling : touch; /* iOS 5+ */
+}
+
+#nav-sync {
+ position:absolute;
+ top:5px;
+ right:24px;
+ z-index:0;
+}
+
+#nav-sync img {
+ opacity:0.3;
+}
+
+#nav-sync img:hover {
+ opacity:0.9;
+}
+
+@media print
+{
+ #nav-tree { display: none; }
+ div.ui-resizable-handle { display: none; position: relative; }
+}
+
diff --git a/docs/navtree.js b/docs/navtree.js
new file mode 100644
index 000000000..e6d31b00d
--- /dev/null
+++ b/docs/navtree.js
@@ -0,0 +1,517 @@
+var navTreeSubIndices = new Array();
+var arrowDown = '&#9660;';
+var arrowRight = '&#9658;';
+
+function getData(varName)
+{
+ var i = varName.lastIndexOf('/');
+ var n = i>=0 ? varName.substring(i+1) : varName;
+ return eval(n.replace(/\-/g,'_'));
+}
+
+function stripPath(uri)
+{
+ return uri.substring(uri.lastIndexOf('/')+1);
+}
+
+function stripPath2(uri)
+{
+ var i = uri.lastIndexOf('/');
+ var s = uri.substring(i+1);
+ var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/);
+ return m ? uri.substring(i-6) : s;
+}
+
+function hashValue()
+{
+ return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,'');
+}
+
+function hashUrl()
+{
+ return '#'+hashValue();
+}
+
+function pathName()
+{
+ return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, '');
+}
+
+function localStorageSupported()
+{
+ try {
+ return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem;
+ }
+ catch(e) {
+ return false;
+ }
+}
+
+
+function storeLink(link)
+{
+ if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) {
+ window.localStorage.setItem('navpath',link);
+ }
+}
+
+function deleteLink()
+{
+ if (localStorageSupported()) {
+ window.localStorage.setItem('navpath','');
+ }
+}
+
+function cachedLink()
+{
+ if (localStorageSupported()) {
+ return window.localStorage.getItem('navpath');
+ } else {
+ return '';
+ }
+}
+
+function getScript(scriptName,func,show)
+{
+ var head = document.getElementsByTagName("head")[0];
+ var script = document.createElement('script');
+ script.id = scriptName;
+ script.type = 'text/javascript';
+ script.onload = func;
+ script.src = scriptName+'.js';
+ if ($.browser.msie && $.browser.version<=8) {
+ // script.onload does not work with older versions of IE
+ script.onreadystatechange = function() {
+ if (script.readyState=='complete' || script.readyState=='loaded') {
+ func(); if (show) showRoot();
+ }
+ }
+ }
+ head.appendChild(script);
+}
+
+function createIndent(o,domNode,node,level)
+{
+ var level=-1;
+ var n = node;
+ while (n.parentNode) { level++; n=n.parentNode; }
+ if (node.childrenData) {
+ var imgNode = document.createElement("span");
+ imgNode.className = 'arrow';
+ imgNode.style.paddingLeft=(16*level).toString()+'px';
+ imgNode.innerHTML=arrowRight;
+ node.plus_img = imgNode;
+ node.expandToggle = document.createElement("a");
+ node.expandToggle.href = "javascript:void(0)";
+ node.expandToggle.onclick = function() {
+ if (node.expanded) {
+ $(node.getChildrenUL()).slideUp("fast");
+ node.plus_img.innerHTML=arrowRight;
+ node.expanded = false;
+ } else {
+ expandNode(o, node, false, false);
+ }
+ }
+ node.expandToggle.appendChild(imgNode);
+ domNode.appendChild(node.expandToggle);
+ } else {
+ var span = document.createElement("span");
+ span.className = 'arrow';
+ span.style.width = 16*(level+1)+'px';
+ span.innerHTML = '&#160;';
+ domNode.appendChild(span);
+ }
+}
+
+var animationInProgress = false;
+
+function gotoAnchor(anchor,aname,updateLocation)
+{
+ var pos, docContent = $('#doc-content');
+ var ancParent = $(anchor.parent());
+ if (ancParent.hasClass('memItemLeft') ||
+ ancParent.hasClass('fieldname') ||
+ ancParent.hasClass('fieldtype') ||
+ ancParent.is(':header'))
+ {
+ pos = ancParent.position().top;
+ } else if (anchor.position()) {
+ pos = anchor.position().top;
+ }
+ if (pos) {
+ var dist = Math.abs(Math.min(
+ pos-docContent.offset().top,
+ docContent[0].scrollHeight-
+ docContent.height()-docContent.scrollTop()));
+ animationInProgress=true;
+ docContent.animate({
+ scrollTop: pos + docContent.scrollTop() - docContent.offset().top
+ },Math.max(50,Math.min(500,dist)),function(){
+ if (updateLocation) window.location.href=aname;
+ animationInProgress=false;
+ });
+ }
+}
+
+function newNode(o, po, text, link, childrenData, lastNode)
+{
+ var node = new Object();
+ node.children = Array();
+ node.childrenData = childrenData;
+ node.depth = po.depth + 1;
+ node.relpath = po.relpath;
+ node.isLast = lastNode;
+
+ node.li = document.createElement("li");
+ po.getChildrenUL().appendChild(node.li);
+ node.parentNode = po;
+
+ node.itemDiv = document.createElement("div");
+ node.itemDiv.className = "item";
+
+ node.labelSpan = document.createElement("span");
+ node.labelSpan.className = "label";
+
+ createIndent(o,node.itemDiv,node,0);
+ node.itemDiv.appendChild(node.labelSpan);
+ node.li.appendChild(node.itemDiv);
+
+ var a = document.createElement("a");
+ node.labelSpan.appendChild(a);
+ node.label = document.createTextNode(text);
+ node.expanded = false;
+ a.appendChild(node.label);
+ if (link) {
+ var url;
+ if (link.substring(0,1)=='^') {
+ url = link.substring(1);
+ link = url;
+ } else {
+ url = node.relpath+link;
+ }
+ a.className = stripPath(link.replace('#',':'));
+ if (link.indexOf('#')!=-1) {
+ var aname = '#'+link.split('#')[1];
+ var srcPage = stripPath(pathName());
+ var targetPage = stripPath(link.split('#')[0]);
+ a.href = srcPage!=targetPage ? url : "javascript:void(0)";
+ a.onclick = function(){
+ storeLink(link);
+ if (!$(a).parent().parent().hasClass('selected'))
+ {
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ $(a).parent().parent().addClass('selected');
+ $(a).parent().parent().attr('id','selected');
+ }
+ var anchor = $(aname);
+ gotoAnchor(anchor,aname,true);
+ };
+ } else {
+ a.href = url;
+ a.onclick = function() { storeLink(link); }
+ }
+ } else {
+ if (childrenData != null)
+ {
+ a.className = "nolink";
+ a.href = "javascript:void(0)";
+ a.onclick = node.expandToggle.onclick;
+ }
+ }
+
+ node.childrenUL = null;
+ node.getChildrenUL = function() {
+ if (!node.childrenUL) {
+ node.childrenUL = document.createElement("ul");
+ node.childrenUL.className = "children_ul";
+ node.childrenUL.style.display = "none";
+ node.li.appendChild(node.childrenUL);
+ }
+ return node.childrenUL;
+ };
+
+ return node;
+}
+
+function showRoot()
+{
+ var headerHeight = $("#top").height();
+ var footerHeight = $("#nav-path").height();
+ var windowHeight = $(window).height() - headerHeight - footerHeight;
+ (function (){ // retry until we can scroll to the selected item
+ try {
+ var navtree=$('#nav-tree');
+ navtree.scrollTo('#selected',0,{offset:-windowHeight/2});
+ } catch (err) {
+ setTimeout(arguments.callee, 0);
+ }
+ })();
+}
+
+function expandNode(o, node, imm, showRoot)
+{
+ if (node.childrenData && !node.expanded) {
+ if (typeof(node.childrenData)==='string') {
+ var varName = node.childrenData;
+ getScript(node.relpath+varName,function(){
+ node.childrenData = getData(varName);
+ expandNode(o, node, imm, showRoot);
+ }, showRoot);
+ } else {
+ if (!node.childrenVisited) {
+ getNode(o, node);
+ } if (imm || ($.browser.msie && $.browser.version>8)) {
+ // somehow slideDown jumps to the start of tree for IE9 :-(
+ $(node.getChildrenUL()).show();
+ } else {
+ $(node.getChildrenUL()).slideDown("fast");
+ }
+ node.plus_img.innerHTML = arrowDown;
+ node.expanded = true;
+ }
+ }
+}
+
+function glowEffect(n,duration)
+{
+ n.addClass('glow').delay(duration).queue(function(next){
+ $(this).removeClass('glow');next();
+ });
+}
+
+function highlightAnchor()
+{
+ var aname = hashUrl();
+ var anchor = $(aname);
+ if (anchor.parent().attr('class')=='memItemLeft'){
+ var rows = $('.memberdecls tr[class$="'+hashValue()+'"]');
+ glowEffect(rows.children(),300); // member without details
+ } else if (anchor.parent().attr('class')=='fieldname'){
+ glowEffect(anchor.parent().parent(),1000); // enum value
+ } else if (anchor.parent().attr('class')=='fieldtype'){
+ glowEffect(anchor.parent().parent(),1000); // struct field
+ } else if (anchor.parent().is(":header")) {
+ glowEffect(anchor.parent(),1000); // section header
+ } else {
+ glowEffect(anchor.next(),1000); // normal member
+ }
+ gotoAnchor(anchor,aname,false);
+}
+
+function selectAndHighlight(hash,n)
+{
+ var a;
+ if (hash) {
+ var link=stripPath(pathName())+':'+hash.substring(1);
+ a=$('.item a[class$="'+link+'"]');
+ }
+ if (a && a.length) {
+ a.parent().parent().addClass('selected');
+ a.parent().parent().attr('id','selected');
+ highlightAnchor();
+ } else if (n) {
+ $(n.itemDiv).addClass('selected');
+ $(n.itemDiv).attr('id','selected');
+ }
+ if ($('#nav-tree-contents .item:first').hasClass('selected')) {
+ $('#nav-sync').css('top','30px');
+ } else {
+ $('#nav-sync').css('top','5px');
+ }
+ showRoot();
+}
+
+function showNode(o, node, index, hash)
+{
+ if (node && node.childrenData) {
+ if (typeof(node.childrenData)==='string') {
+ var varName = node.childrenData;
+ getScript(node.relpath+varName,function(){
+ node.childrenData = getData(varName);
+ showNode(o,node,index,hash);
+ },true);
+ } else {
+ if (!node.childrenVisited) {
+ getNode(o, node);
+ }
+ $(node.getChildrenUL()).css({'display':'block'});
+ node.plus_img.innerHTML = arrowDown;
+ node.expanded = true;
+ var n = node.children[o.breadcrumbs[index]];
+ if (index+1<o.breadcrumbs.length) {
+ showNode(o,n,index+1,hash);
+ } else {
+ if (typeof(n.childrenData)==='string') {
+ var varName = n.childrenData;
+ getScript(n.relpath+varName,function(){
+ n.childrenData = getData(varName);
+ node.expanded=false;
+ showNode(o,node,index,hash); // retry with child node expanded
+ },true);
+ } else {
+ var rootBase = stripPath(o.toroot.replace(/\..+$/, ''));
+ if (rootBase=="index" || rootBase=="pages" || rootBase=="search") {
+ expandNode(o, n, true, true);
+ }
+ selectAndHighlight(hash,n);
+ }
+ }
+ }
+ } else {
+ selectAndHighlight(hash);
+ }
+}
+
+function removeToInsertLater(element) {
+ var parentNode = element.parentNode;
+ var nextSibling = element.nextSibling;
+ parentNode.removeChild(element);
+ return function() {
+ if (nextSibling) {
+ parentNode.insertBefore(element, nextSibling);
+ } else {
+ parentNode.appendChild(element);
+ }
+ };
+}
+
+function getNode(o, po)
+{
+ var insertFunction = removeToInsertLater(po.li);
+ po.childrenVisited = true;
+ var l = po.childrenData.length-1;
+ for (var i in po.childrenData) {
+ var nodeData = po.childrenData[i];
+ po.children[i] = newNode(o, po, nodeData[0], nodeData[1], nodeData[2],
+ i==l);
+ }
+ insertFunction();
+}
+
+function gotoNode(o,subIndex,root,hash,relpath)
+{
+ var nti = navTreeSubIndices[subIndex][root+hash];
+ o.breadcrumbs = $.extend(true, [], nti ? nti : navTreeSubIndices[subIndex][root]);
+ if (!o.breadcrumbs && root!=NAVTREE[0][1]) { // fallback: show index
+ navTo(o,NAVTREE[0][1],"",relpath);
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ }
+ if (o.breadcrumbs) {
+ o.breadcrumbs.unshift(0); // add 0 for root node
+ showNode(o, o.node, 0, hash);
+ }
+}
+
+function navTo(o,root,hash,relpath)
+{
+ var link = cachedLink();
+ if (link) {
+ var parts = link.split('#');
+ root = parts[0];
+ if (parts.length>1) hash = '#'+parts[1].replace(/[^\w\-]/g,'');
+ else hash='';
+ }
+ if (hash.match(/^#l\d+$/)) {
+ var anchor=$('a[name='+hash.substring(1)+']');
+ glowEffect(anchor.parent(),1000); // line number
+ hash=''; // strip line number anchors
+ }
+ var url=root+hash;
+ var i=-1;
+ while (NAVTREEINDEX[i+1]<=url) i++;
+ if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index
+ if (navTreeSubIndices[i]) {
+ gotoNode(o,i,root,hash,relpath)
+ } else {
+ getScript(relpath+'navtreeindex'+i,function(){
+ navTreeSubIndices[i] = eval('NAVTREEINDEX'+i);
+ if (navTreeSubIndices[i]) {
+ gotoNode(o,i,root,hash,relpath);
+ }
+ },true);
+ }
+}
+
+function showSyncOff(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
+}
+
+function showSyncOn(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_on.png" title="'+SYNCONMSG+'"/>');
+}
+
+function toggleSyncButton(relpath)
+{
+ var navSync = $('#nav-sync');
+ if (navSync.hasClass('sync')) {
+ navSync.removeClass('sync');
+ showSyncOff(navSync,relpath);
+ storeLink(stripPath2(pathName())+hashUrl());
+ } else {
+ navSync.addClass('sync');
+ showSyncOn(navSync,relpath);
+ deleteLink();
+ }
+}
+
+function initNavTree(toroot,relpath)
+{
+ var o = new Object();
+ o.toroot = toroot;
+ o.node = new Object();
+ o.node.li = document.getElementById("nav-tree-contents");
+ o.node.childrenData = NAVTREE;
+ o.node.children = new Array();
+ o.node.childrenUL = document.createElement("ul");
+ o.node.getChildrenUL = function() { return o.node.childrenUL; };
+ o.node.li.appendChild(o.node.childrenUL);
+ o.node.depth = 0;
+ o.node.relpath = relpath;
+ o.node.expanded = false;
+ o.node.isLast = true;
+ o.node.plus_img = document.createElement("span");
+ o.node.plus_img.className = 'arrow';
+ o.node.plus_img.innerHTML = arrowRight;
+
+ if (localStorageSupported()) {
+ var navSync = $('#nav-sync');
+ if (cachedLink()) {
+ showSyncOff(navSync,relpath);
+ navSync.removeClass('sync');
+ } else {
+ showSyncOn(navSync,relpath);
+ }
+ navSync.click(function(){ toggleSyncButton(relpath); });
+ }
+
+ $(window).load(function(){
+ navTo(o,toroot,hashUrl(),relpath);
+ showRoot();
+ });
+
+ $(window).bind('hashchange', function(){
+ if (window.location.hash && window.location.hash.length>1){
+ var a;
+ if ($(location).attr('hash')){
+ var clslink=stripPath(pathName())+':'+hashValue();
+ a=$('.item a[class$="'+clslink.replace(/</g,'\\3c ')+'"]');
+ }
+ if (a==null || !$(a).parent().parent().hasClass('selected')){
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ }
+ var link=stripPath2(pathName());
+ navTo(o,link,hashUrl(),relpath);
+ } else if (!animationInProgress) {
+ $('#doc-content').scrollTop(0);
+ $('.item').removeClass('selected');
+ $('.item').removeAttr('id');
+ navTo(o,toroot,hashUrl(),relpath);
+ }
+ })
+}
+
diff --git a/docs/navtreedata.js b/docs/navtreedata.js
new file mode 100644
index 000000000..793cc9d69
--- /dev/null
+++ b/docs/navtreedata.js
@@ -0,0 +1,79 @@
+var NAVTREE =
+[
+ [ "Remmina - The GTK+ Remote Desktop Client", "index.html", [
+ [ "Changelog", "md__c_h_a_n_g_e_l_o_g.html", null ],
+ [ "CONTRIBUTING", "md__c_o_n_t_r_i_b_u_t_i_n_g.html", null ],
+ [ "Table of contents", "md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html", null ],
+ [ "Compilation-guide-for-RHEL", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html", null ],
+ [ "Compilation", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html", null ],
+ [ "Quick and dirty guide for compiling remmina on Arch", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html", null ],
+ [ "Quick and dirty guide for compiling remmina on Debian 10", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html", null ],
+ [ "Quick and dirty guide for compiling remmina on Debian 9", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html", null ],
+ [ "Compiling Remmina on FreeBSD 11", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html", null ],
+ [ "Quick and dirty guide for compiling remmina on ubuntu 14.04", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html", null ],
+ [ "Quick and dirty guide for compiling remmina on ubuntu 16.04", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html", null ],
+ [ "Quick and dirty guide for compiling remmina on ubuntu 18.04", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html", null ],
+ [ "Quick and dirty guide for compiling remmina on ubuntu 18.04", "md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html", null ],
+ [ "Requirements", "md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html", null ],
+ [ "Development-Notes", "md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html", null ],
+ [ "Multi monitor support", "md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html", null ],
+ [ "*Welcome to the Remmina wiki*", "md__builds__remmina_remmina-ci__remmina_8wiki__home.html", null ],
+ [ "How-to-translate-Remmina", "md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html", null ],
+ [ "Update-gettext-messages", "md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html", null ],
+ [ "GTK-versions-on-various-distributions", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html", null ],
+ [ "Problems-with-Wayland", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html", null ],
+ [ "Remmina-RDP-and-HiDPI-scaling", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html", null ],
+ [ "Remmina-VNC-to-Raspbian-Stretch", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html", null ],
+ [ "Systray menu", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html", null ],
+ [ "How to configure key mapping with the VNC plugin.", "md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html", null ],
+ [ "Testing under Ubuntu with the remmina-next-daily PPA", "md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html", null ],
+ [ "Using colour schemes in Remmina SSH protocol plugin", "md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html", null ],
+ [ "Remmina Usage FAQ", "md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html", null ],
+ [ "'s-guide Introduction", "md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html", null ],
+ [ "Todo List", "todo.html", null ],
+ [ "Data Structures", "annotated.html", [
+ [ "Data Structures", "annotated.html", "annotated_dup" ],
+ [ "Data Structure Index", "classes.html", null ],
+ [ "Data Fields", "functions.html", [
+ [ "All", "functions.html", "functions_dup" ],
+ [ "Functions", "functions_func.html", null ],
+ [ "Variables", "functions_vars.html", "functions_vars" ],
+ [ "Enumerator", "functions_eval.html", null ]
+ ] ]
+ ] ],
+ [ "Files", null, [
+ [ "File List", "files.html", "files" ],
+ [ "Globals", "globals.html", [
+ [ "All", "globals.html", "globals_dup" ],
+ [ "Functions", "globals_func.html", "globals_func" ],
+ [ "Variables", "globals_vars.html", null ],
+ [ "Typedefs", "globals_type.html", null ],
+ [ "Enumerations", "globals_enum.html", null ],
+ [ "Enumerator", "globals_eval.html", "globals_eval" ]
+ ] ]
+ ] ]
+ ] ]
+];
+
+var NAVTREEINDEX =
+[
+"annotated.html",
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a",
+"rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4",
+"rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a",
+"remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5",
+"remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae",
+"remmina__nslookup_8sh.html",
+"remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48",
+"remmina__ssh_8h.html",
+"remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730",
+"struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09",
+"struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e",
+"struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952",
+"structmpchanger__params.html#a098952d194a183d4a505aa065797864b",
+"structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e",
+"xdmcp__plugin_8c.html"
+];
+
+var SYNCONMSG = 'click to disable panel synchronisation';
+var SYNCOFFMSG = 'click to enable panel synchronisation'; \ No newline at end of file
diff --git a/docs/navtreeindex0.js b/docs/navtreeindex0.js
new file mode 100644
index 000000000..526cb64c1
--- /dev/null
+++ b/docs/navtreeindex0.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX0 =
+{
+"annotated.html":[30,0],
+"classes.html":[30,1],
+"exec__plugin_8c.html":[31,0,0],
+"exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad":[31,0,0,8],
+"exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99":[31,0,0,9],
+"exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8":[31,0,0,1],
+"exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe":[31,0,0,7],
+"exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,0,5],
+"exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088":[31,0,0,6],
+"exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3":[31,0,0,10],
+"exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,0,11],
+"exec__plugin_8c.html#aa6294507761837488c3777f21096d219":[31,0,0,4],
+"exec__plugin_8c.html#ab43db37b96c68093747620fbde879327":[31,0,0,3],
+"exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71":[31,0,0,2],
+"exec__plugin_8c_source.html":[31,0,0],
+"exec__plugin__config_8h.html":[31,0,1],
+"exec__plugin__config_8h_source.html":[31,0,1],
+"files.html":[31,0],
+"functions.html":[30,2,0],
+"functions.html":[30,2,0,0],
+"functions_8sh.html":[31,0,2],
+"functions_8sh_source.html":[31,0,2],
+"functions_b.html":[30,2,0,1],
+"functions_c.html":[30,2,0,2],
+"functions_d.html":[30,2,0,3],
+"functions_e.html":[30,2,0,4],
+"functions_eval.html":[30,2,3],
+"functions_f.html":[30,2,0,5],
+"functions_func.html":[30,2,1],
+"functions_g.html":[30,2,0,6],
+"functions_h.html":[30,2,0,7],
+"functions_i.html":[30,2,0,8],
+"functions_k.html":[30,2,0,9],
+"functions_l.html":[30,2,0,10],
+"functions_m.html":[30,2,0,11],
+"functions_n.html":[30,2,0,12],
+"functions_o.html":[30,2,0,13],
+"functions_p.html":[30,2,0,14],
+"functions_q.html":[30,2,0,15],
+"functions_r.html":[30,2,0,16],
+"functions_s.html":[30,2,0,17],
+"functions_t.html":[30,2,0,18],
+"functions_u.html":[30,2,0,19],
+"functions_v.html":[30,2,0,20],
+"functions_vars.html":[30,2,2],
+"functions_vars.html":[30,2,2,0],
+"functions_vars_b.html":[30,2,2,1],
+"functions_vars_c.html":[30,2,2,2],
+"functions_vars_d.html":[30,2,2,3],
+"functions_vars_e.html":[30,2,2,4],
+"functions_vars_f.html":[30,2,2,5],
+"functions_vars_g.html":[30,2,2,6],
+"functions_vars_h.html":[30,2,2,7],
+"functions_vars_i.html":[30,2,2,8],
+"functions_vars_k.html":[30,2,2,9],
+"functions_vars_l.html":[30,2,2,10],
+"functions_vars_m.html":[30,2,2,11],
+"functions_vars_n.html":[30,2,2,12],
+"functions_vars_o.html":[30,2,2,13],
+"functions_vars_p.html":[30,2,2,14],
+"functions_vars_q.html":[30,2,2,15],
+"functions_vars_r.html":[30,2,2,16],
+"functions_vars_s.html":[30,2,2,17],
+"functions_vars_t.html":[30,2,2,18],
+"functions_vars_u.html":[30,2,2,19],
+"functions_vars_v.html":[30,2,2,20],
+"functions_vars_w.html":[30,2,2,21],
+"functions_vars_x.html":[30,2,2,22],
+"functions_vars_y.html":[30,2,2,23],
+"functions_w.html":[30,2,0,21],
+"functions_x.html":[30,2,0,22],
+"functions_y.html":[30,2,0,23],
+"gettranslator_8sh.html":[31,0,3],
+"gettranslator_8sh_source.html":[31,0,3],
+"glibsecret__plugin_8c.html":[31,0,4],
+"glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd":[31,0,4,9],
+"glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7":[31,0,4,11],
+"glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487":[31,0,4,6],
+"glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f":[31,0,4,8],
+"glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,4,0],
+"glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e":[31,0,4,1],
+"glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853":[31,0,4,5],
+"glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9":[31,0,4,4],
+"glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682":[31,0,4,3],
+"glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,4,10],
+"glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520":[31,0,4,2],
+"glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72":[31,0,4,7],
+"glibsecret__plugin_8c_source.html":[31,0,4],
+"glibsecret__plugin_8h.html":[31,0,5],
+"glibsecret__plugin_8h_source.html":[31,0,5],
+"globals.html":[31,1,0],
+"globals.html":[31,1,0,0],
+"globals_a.html":[31,1,0,1],
+"globals_b.html":[31,1,0,2],
+"globals_c.html":[31,1,0,3],
+"globals_d.html":[31,1,0,4],
+"globals_e.html":[31,1,0,5],
+"globals_enum.html":[31,1,4],
+"globals_eval.html":[31,1,5],
+"globals_eval.html":[31,1,5,0],
+"globals_eval_d.html":[31,1,5,1],
+"globals_eval_e.html":[31,1,5,2],
+"globals_eval_f.html":[31,1,5,3],
+"globals_eval_g.html":[31,1,5,4],
+"globals_eval_l.html":[31,1,5,5],
+"globals_eval_n.html":[31,1,5,6],
+"globals_eval_o.html":[31,1,5,7],
+"globals_eval_p.html":[31,1,5,8],
+"globals_eval_r.html":[31,1,5,9],
+"globals_eval_s.html":[31,1,5,10],
+"globals_eval_t.html":[31,1,5,11],
+"globals_eval_u.html":[31,1,5,12],
+"globals_eval_v.html":[31,1,5,13],
+"globals_eval_w.html":[31,1,5,14],
+"globals_eval_x.html":[31,1,5,15],
+"globals_f.html":[31,1,0,6],
+"globals_func.html":[31,1,1],
+"globals_func.html":[31,1,1,0],
+"globals_func_a.html":[31,1,1,1],
+"globals_func_b.html":[31,1,1,2],
+"globals_func_c.html":[31,1,1,3],
+"globals_func_d.html":[31,1,1,4],
+"globals_func_e.html":[31,1,1,5],
+"globals_func_f.html":[31,1,1,6],
+"globals_func_g.html":[31,1,1,7],
+"globals_func_h.html":[31,1,1,8],
+"globals_func_i.html":[31,1,1,9],
+"globals_func_k.html":[31,1,1,10],
+"globals_func_l.html":[31,1,1,11],
+"globals_func_m.html":[31,1,1,12],
+"globals_func_n.html":[31,1,1,13],
+"globals_func_o.html":[31,1,1,14],
+"globals_func_r.html":[31,1,1,15],
+"globals_func_s.html":[31,1,1,16],
+"globals_func_u.html":[31,1,1,17],
+"globals_func_v.html":[31,1,1,18],
+"globals_func_w.html":[31,1,1,19],
+"globals_g.html":[31,1,0,7],
+"globals_h.html":[31,1,0,8],
+"globals_i.html":[31,1,0,9],
+"globals_k.html":[31,1,0,10],
+"globals_l.html":[31,1,0,11],
+"globals_m.html":[31,1,0,12],
+"globals_n.html":[31,1,0,13],
+"globals_o.html":[31,1,0,14],
+"globals_p.html":[31,1,0,15],
+"globals_q.html":[31,1,0,16],
+"globals_r.html":[31,1,0,17],
+"globals_s.html":[31,1,0,18],
+"globals_t.html":[31,1,0,19],
+"globals_type.html":[31,1,3],
+"globals_u.html":[31,1,0,20],
+"globals_v.html":[31,1,0,21],
+"globals_vars.html":[31,1,2],
+"globals_w.html":[31,1,0,22],
+"globals_x.html":[31,1,0,23],
+"i18nstats_8sh.html":[31,0,6],
+"i18nstats_8sh_source.html":[31,0,6],
+"index.html":[],
+"kwallet__plugin_8h.html":[31,0,7],
+"kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9":[31,0,7,2],
+"kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5":[31,0,7,1],
+"kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd":[31,0,7,0],
+"kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba":[31,0,7,3],
+"kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3":[31,0,7,4],
+"kwallet__plugin_8h_source.html":[31,0,7],
+"kwallet__plugin__main_8c.html":[31,0,8],
+"kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,8,1],
+"kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d":[31,0,8,4],
+"kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a":[31,0,8,0],
+"kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,8,8],
+"kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76":[31,0,8,5],
+"kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8":[31,0,8,3],
+"kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6":[31,0,8,2],
+"kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469":[31,0,8,7],
+"kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650":[31,0,8,6],
+"kwallet__plugin__main_8c_source.html":[31,0,8],
+"launcher_8sh.html":[31,0,9],
+"launcher_8sh_source.html":[31,0,9],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html":[3],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html":[4],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html":[5],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html":[6],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html":[7],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html":[8],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html":[9],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html":[10],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html":[11],
+"md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html":[12],
+"md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html":[13],
+"md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html":[14],
+"md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html":[15],
+"md__builds__remmina_remmina-ci__remmina_8wiki__home.html":[16],
+"md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html":[17],
+"md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html":[18],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html":[19],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html":[20],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html":[21],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html":[22],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html":[23],
+"md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html":[24],
+"md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html":[2],
+"md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html":[25],
+"md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html":[26],
+"md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html":[27],
+"md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html":[28],
+"md__c_h_a_n_g_e_l_o_g.html":[0],
+"md__c_o_n_t_r_i_b_u_t_i_n_g.html":[1],
+"nx__plugin_8c.html":[31,0,10],
+"nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278":[31,0,10,29],
+"nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707":[31,0,10,16],
+"nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56":[31,0,10,24],
+"nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30":[31,0,10,20],
+"nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43":[31,0,10,3],
+"nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105":[31,0,10,18],
+"nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53":[31,0,10,4],
+"nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e":[31,0,10,6],
+"nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f":[31,0,10,32],
+"nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef":[31,0,10,23],
+"nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,10,5],
+"nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be":[31,0,10,31],
+"nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49":[31,0,10,2],
+"nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0":[31,0,10,26],
+"nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad":[31,0,10,17],
+"nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7":[31,0,10,25],
+"nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123":[31,0,10,15],
+"nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd":[31,0,10,27],
+"nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046":[31,0,10,11],
+"nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e":[31,0,10,9],
+"nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f":[31,0,10,28],
+"nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a":[31,0,10,7],
+"nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e":[31,0,10,14],
+"nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1":[31,0,10,1],
+"nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06":[31,0,10,13],
+"nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5":[31,0,10,22],
+"nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf":[31,0,10,10],
+"nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e":[31,0,10,19],
+"nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d":[31,0,10,8],
+"nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23":[31,0,10,21],
+"nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17":[31,0,10,12],
+"nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508":[31,0,10,30],
+"nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf":[31,0,10,33],
+"nx__plugin_8c_source.html":[31,0,10],
+"nx__plugin_8h.html":[31,0,11],
+"nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122":[31,0,11,1],
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c":[31,0,11,2],
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21":[31,0,11,2,1],
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f":[31,0,11,2,3],
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e":[31,0,11,2,4],
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24":[31,0,11,2,2]
+};
diff --git a/docs/navtreeindex1.js b/docs/navtreeindex1.js
new file mode 100644
index 000000000..3c0704e89
--- /dev/null
+++ b/docs/navtreeindex1.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX1 =
+{
+"nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a":[31,0,11,2,0],
+"nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf":[31,0,11,3],
+"nx__plugin_8h_source.html":[31,0,11],
+"nx__session_8c.html":[31,0,12],
+"nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866":[31,0,12,7],
+"nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33":[31,0,12,28],
+"nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76":[31,0,12,21],
+"nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef":[31,0,12,4],
+"nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28":[31,0,12,25],
+"nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0":[31,0,12,27],
+"nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6":[31,0,12,37],
+"nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c":[31,0,12,41],
+"nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c":[31,0,12,23],
+"nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9":[31,0,12,32],
+"nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d":[31,0,12,20],
+"nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6":[31,0,12,39],
+"nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea":[31,0,12,30],
+"nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41":[31,0,12,36],
+"nx__session_8c.html#a5d6f81a44339efa85a0048f759207825":[31,0,12,18],
+"nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac":[31,0,12,26],
+"nx__session_8c.html#a663b5b339b919527db0c7467123c7f62":[31,0,12,29],
+"nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6":[31,0,12,31],
+"nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b":[31,0,12,24],
+"nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d":[31,0,12,40],
+"nx__session_8c.html#a7d021133105bd538af31817eff263324":[31,0,12,19],
+"nx__session_8c.html#a880c07dbd498746d06490063159baa4c":[31,0,12,14],
+"nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7":[31,0,12,35],
+"nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf":[31,0,12,13],
+"nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9":[31,0,12,15],
+"nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0":[31,0,12,2],
+"nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f":[31,0,12,12],
+"nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3":[31,0,12,10],
+"nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b":[31,0,12,22],
+"nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d":[31,0,12,5],
+"nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b":[31,0,12,17],
+"nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea":[31,0,12,6],
+"nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d":[31,0,12,42],
+"nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841":[31,0,12,8],
+"nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc":[31,0,12,33],
+"nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5":[31,0,12,34],
+"nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0":[31,0,12,16],
+"nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c":[31,0,12,38],
+"nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135":[31,0,12,1],
+"nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea":[31,0,12,9],
+"nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347":[31,0,12,3],
+"nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e":[31,0,12,11],
+"nx__session_8c_source.html":[31,0,12],
+"nx__session_8h.html":[31,0,13],
+"nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866":[31,0,13,13],
+"nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff":[31,0,13,2],
+"nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33":[31,0,13,26],
+"nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76":[31,0,13,22],
+"nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef":[31,0,13,10],
+"nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6":[31,0,13,31],
+"nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c":[31,0,13,24],
+"nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9":[31,0,13,27],
+"nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d":[31,0,13,21],
+"nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41":[31,0,13,30],
+"nx__session_8h.html#a5d6f81a44339efa85a0048f759207825":[31,0,13,19],
+"nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b":[31,0,13,25],
+"nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d":[31,0,13,33],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca":[31,0,13,3],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d":[31,0,13,5],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1":[31,0,13,8],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431":[31,0,13,4],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9":[31,0,13,6],
+"nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912":[31,0,13,7],
+"nx__session_8h.html#a7d021133105bd538af31817eff263324":[31,0,13,20],
+"nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7":[31,0,13,29],
+"nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9":[31,0,13,16],
+"nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3":[31,0,13,14],
+"nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b":[31,0,13,23],
+"nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d":[31,0,13,11],
+"nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b":[31,0,13,18],
+"nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea":[31,0,13,12],
+"nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8":[31,0,13,0],
+"nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c":[31,0,13,1],
+"nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5":[31,0,13,28],
+"nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0":[31,0,13,17],
+"nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c":[31,0,13,32],
+"nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347":[31,0,13,9],
+"nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e":[31,0,13,15],
+"nx__session_8h_source.html":[31,0,13],
+"nx__session__manager_8c.html":[31,0,14],
+"nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08":[31,0,14,3],
+"nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e":[31,0,14,6],
+"nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e":[31,0,14,2],
+"nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51":[31,0,14,1],
+"nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911":[31,0,14,5],
+"nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c":[31,0,14,4],
+"nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02":[31,0,14,0],
+"nx__session__manager_8c_source.html":[31,0,14],
+"nx__session__manager_8h.html":[31,0,15],
+"nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5":[31,0,15,0],
+"nx__session__manager_8h_source.html":[31,0,15],
+"pages.html":[],
+"plugin_8c.html":[31,0,16],
+"plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99":[31,0,16,4],
+"plugin_8c.html#a5109cffc255b24e5a596e94404811f50":[31,0,16,3],
+"plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,16,0],
+"plugin_8c.html#a833f9235bae6f4784189b5b825189df6":[31,0,16,6],
+"plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,16,5],
+"plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61":[31,0,16,2],
+"plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb":[31,0,16,1],
+"plugin_8c_source.html":[31,0,16],
+"plugin_8h.html":[31,0,17],
+"plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff":[31,0,17,12],
+"plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e":[31,0,17,9],
+"plugin_8h.html#a144360664546fcbf4d5aa0457c395f25":[31,0,17,16],
+"plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb":[31,0,17,8],
+"plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd":[31,0,17,14],
+"plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22":[31,0,17,10],
+"plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948":[31,0,17,11],
+"plugin_8h.html#a8ffdd703265254b90f9a609795b427cc":[31,0,17,13],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624a":[31,0,17,17],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c":[31,0,17,17,5],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24":[31,0,17,17,0],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757":[31,0,17,17,4],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac":[31,0,17,17,2],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac":[31,0,17,17,3],
+"plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e":[31,0,17,17,1],
+"plugin_8h.html#aec59d37943e501da2d7107c933865782":[31,0,17,15],
+"plugin_8h_source.html":[31,0,17],
+"plugin__config_8h.html":[31,0,18],
+"plugin__config_8h_source.html":[31,0,18],
+"rcw_8c.html":[31,0,19],
+"rcw_8c.html#a010af24147287ef89f605e71ef315475":[31,0,19,60],
+"rcw_8c.html#a029feea88b7ef32425595efe7d270947":[31,0,19,29],
+"rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec":[31,0,19,119],
+"rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5":[31,0,19,14],
+"rcw_8c.html#a0650f31e99dd15c719328345411deba0":[31,0,19,22],
+"rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce":[31,0,19,3],
+"rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668":[31,0,19,2],
+"rcw_8c.html#a07802fc420dc07560fe937d29172573c":[31,0,19,51],
+"rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d":[31,0,19,80],
+"rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b":[31,0,19,97],
+"rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746":[31,0,19,46],
+"rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3":[31,0,19,105],
+"rcw_8c.html#a0d4ebd91bc6568257031111f56689a76":[31,0,19,73],
+"rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27":[31,0,19,123],
+"rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446":[31,0,19,102],
+"rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7":[31,0,19,58],
+"rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd":[31,0,19,68],
+"rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8":[31,0,19,44],
+"rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758":[31,0,19,99],
+"rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8":[31,0,19,115],
+"rcw_8c.html#a177a2ece80374b29bc26595fff8bed42":[31,0,19,88],
+"rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823":[31,0,19,76],
+"rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b":[31,0,19,104],
+"rcw_8c.html#a1b7a771392e15e527005305e71cc2546":[31,0,19,83],
+"rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6":[31,0,19,19],
+"rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517":[31,0,19,1],
+"rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff":[31,0,19,45],
+"rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec":[31,0,19,5],
+"rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa":[31,0,19,37],
+"rcw_8c.html#a23d848e45205a65618c84bb70b882b3f":[31,0,19,93],
+"rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9":[31,0,19,21],
+"rcw_8c.html#a27f545a9630a481f4df747478cd227fb":[31,0,19,77],
+"rcw_8c.html#a29701ae152ba15f6d8921f395174d2df":[31,0,19,131],
+"rcw_8c.html#a29df78f116c127e22a561beb4d8bae51":[31,0,19,39],
+"rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86":[31,0,19,48],
+"rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e":[31,0,19,130],
+"rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758":[31,0,19,57],
+"rcw_8c.html#a319e8c05fa25a57aa34875d48e182726":[31,0,19,36],
+"rcw_8c.html#a3237ef26caa19b9926b485f94132cea7":[31,0,19,27],
+"rcw_8c.html#a327f62be43b7f312982f9e22b86a2867":[31,0,19,122],
+"rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef":[31,0,19,38],
+"rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c":[31,0,19,69],
+"rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03":[31,0,19,110],
+"rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9":[31,0,19,112],
+"rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4":[31,0,19,41],
+"rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb":[31,0,19,18],
+"rcw_8c.html#a3a531286fa321e0931475b5afc86ec49":[31,0,19,13],
+"rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64":[31,0,19,11],
+"rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73":[31,0,19,74],
+"rcw_8c.html#a4204fcd726a60493b290dd5590ec693d":[31,0,19,92],
+"rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18":[31,0,19,54],
+"rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a":[31,0,19,111],
+"rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0":[31,0,19,91],
+"rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea":[31,0,19,62],
+"rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1":[31,0,19,116],
+"rcw_8c.html#a51bb9efba28252cbf96da6797710c919":[31,0,19,108],
+"rcw_8c.html#a544a61088b93ffc31a79554c70d97dff":[31,0,19,55],
+"rcw_8c.html#a56e026ede7a3e50374579ad538e33db7":[31,0,19,4],
+"rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4":[31,0,19,125],
+"rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f":[31,0,19,9],
+"rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a":[31,0,19,72],
+"rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9":[31,0,19,117],
+"rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0":[31,0,19,75],
+"rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964":[31,0,19,28],
+"rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90":[31,0,19,128],
+"rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0":[31,0,19,53],
+"rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3":[31,0,19,42],
+"rcw_8c.html#a6d710132769d5f21989af6844c04b43f":[31,0,19,78],
+"rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2":[31,0,19,98],
+"rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5":[31,0,19,70],
+"rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3":[31,0,19,66],
+"rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a":[31,0,19,61],
+"rcw_8c.html#a756830638372adda00be33468c8d3ed2":[31,0,19,7],
+"rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1":[31,0,19,120],
+"rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790":[31,0,19,32],
+"rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304":[31,0,19,118],
+"rcw_8c.html#a7e71031254421ccb10e0c29699cc9523":[31,0,19,129],
+"rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd":[31,0,19,10],
+"rcw_8c.html#a82c93bbb1ab73807b366b86928c37946":[31,0,19,71],
+"rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3":[31,0,19,59],
+"rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527":[31,0,19,23],
+"rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b":[31,0,19,81],
+"rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0":[31,0,19,47],
+"rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6":[31,0,19,56],
+"rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7":[31,0,19,20],
+"rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28":[31,0,19,63],
+"rcw_8c.html#aa1044979d82ce73db51117de1262832f":[31,0,19,101],
+"rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5":[31,0,19,85],
+"rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6":[31,0,19,107],
+"rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede":[31,0,19,30],
+"rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c":[31,0,19,52],
+"rcw_8c.html#aa9d246740106aae9643ab7edc32923f3":[31,0,19,95],
+"rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44":[31,0,19,64],
+"rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab":[31,0,19,106],
+"rcw_8c.html#aaef82069514845b2987ac0659993cecd":[31,0,19,16],
+"rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e":[31,0,19,113],
+"rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c":[31,0,19,100],
+"rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d":[31,0,19,126],
+"rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2":[31,0,19,109],
+"rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2":[31,0,19,6],
+"rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767":[31,0,19,90],
+"rcw_8c.html#ac21387fbd4b689472e4796467bd50a55":[31,0,19,8],
+"rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3":[31,0,19,87],
+"rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4":[31,0,19,34],
+"rcw_8c.html#ac973ca10137b1f285f45785f93966fd5":[31,0,19,103],
+"rcw_8c.html#acb1b2ab629603837e08f8d8de542316d":[31,0,19,67],
+"rcw_8c.html#acfa15d238ac64558487dee3c320c3701":[31,0,19,94],
+"rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a":[31,0,19,35],
+"rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76":[31,0,19,114],
+"rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff":[31,0,19,84],
+"rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e":[31,0,19,43],
+"rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757":[31,0,19,25],
+"rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9":[31,0,19,79],
+"rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc":[31,0,19,40],
+"rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd":[31,0,19,127],
+"rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7":[31,0,19,50],
+"rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a":[31,0,19,31],
+"rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9":[31,0,19,49],
+"rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5":[31,0,19,121],
+"rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f":[31,0,19,12],
+"rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844":[31,0,19,33],
+"rcw_8c.html#ae1c994940909e60d4f565be0e0478b34":[31,0,19,15],
+"rcw_8c.html#ae747a0b62a922df1de61c62092757b19":[31,0,19,89],
+"rcw_8c.html#aee06df544a91184cba1fe77c6991065a":[31,0,19,24]
+};
diff --git a/docs/navtreeindex10.js b/docs/navtreeindex10.js
new file mode 100644
index 000000000..f6246ebe4
--- /dev/null
+++ b/docs/navtreeindex10.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX10 =
+{
+"struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09":[30,0,22,1],
+"struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd":[30,0,22,2],
+"struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660":[30,0,22,0],
+"struct___remmina_icon.html":[30,0,23],
+"struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2":[30,0,23,1],
+"struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333":[30,0,23,5],
+"struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626":[30,0,23,3],
+"struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca":[30,0,23,0],
+"struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c":[30,0,23,2],
+"struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19":[30,0,23,4],
+"struct___remmina_key_chooser_arguments.html":[30,0,24],
+"struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7":[30,0,24,1],
+"struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03":[30,0,24,3],
+"struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c":[30,0,24,2],
+"struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f":[30,0,24,0],
+"struct___remmina_key_val.html":[30,0,25],
+"struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712":[30,0,25,1],
+"struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8":[30,0,25,0],
+"struct___remmina_log_window.html":[30,0,26],
+"struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232":[30,0,26,0],
+"struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087":[30,0,26,1],
+"struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184":[30,0,26,2],
+"struct___remmina_log_window_class.html":[30,0,27],
+"struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af":[30,0,27,0],
+"struct___remmina_main.html":[30,0,28],
+"struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549":[30,0,28,0],
+"struct___remmina_main.html#a1575015519fedca001bb26e129331b62":[30,0,28,14],
+"struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6":[30,0,28,13],
+"struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c":[30,0,28,2],
+"struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39":[30,0,28,10],
+"struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a":[30,0,28,15],
+"struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980":[30,0,28,18],
+"struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e":[30,0,28,7],
+"struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19":[30,0,28,1],
+"struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc":[30,0,28,9],
+"struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4":[30,0,28,16],
+"struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21":[30,0,28,6],
+"struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0":[30,0,28,17],
+"struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95":[30,0,28,4],
+"struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced":[30,0,28,22],
+"struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2":[30,0,28,25],
+"struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670":[30,0,28,23],
+"struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec":[30,0,28,12],
+"struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1":[30,0,28,5],
+"struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095":[30,0,28,11],
+"struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2":[30,0,28,21],
+"struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72":[30,0,28,20],
+"struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f":[30,0,28,3],
+"struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7":[30,0,28,24],
+"struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774":[30,0,28,8],
+"struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd":[30,0,28,19],
+"struct___remmina_main_priv.html":[30,0,29],
+"struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76":[30,0,29,5],
+"struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00":[30,0,29,6],
+"struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a":[30,0,29,0],
+"struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d":[30,0,29,7],
+"struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f":[30,0,29,4],
+"struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd":[30,0,29,3],
+"struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c":[30,0,29,2],
+"struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f":[30,0,29,1],
+"struct___remmina_n_x_session.html":[30,0,31],
+"struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17":[30,0,31,20],
+"struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad":[30,0,31,1],
+"struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4":[30,0,31,8],
+"struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3":[30,0,31,19],
+"struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3":[30,0,31,10],
+"struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7":[30,0,31,22],
+"struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac":[30,0,31,12],
+"struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44":[30,0,31,17],
+"struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4":[30,0,31,2],
+"struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a":[30,0,31,4],
+"struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f":[30,0,31,15],
+"struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874":[30,0,31,11],
+"struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048":[30,0,31,3],
+"struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6":[30,0,31,7],
+"struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508":[30,0,31,9],
+"struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594":[30,0,31,18],
+"struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82":[30,0,31,0],
+"struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8":[30,0,31,13],
+"struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f":[30,0,31,14],
+"struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7":[30,0,31,5],
+"struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5":[30,0,31,6],
+"struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6":[30,0,31,21],
+"struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a":[30,0,31,16],
+"struct___remmina_news_dialog.html":[30,0,30],
+"struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749":[30,0,30,5],
+"struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015":[30,0,30,0],
+"struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad":[30,0,30,3],
+"struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19":[30,0,30,4],
+"struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f":[30,0,30,1],
+"struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7":[30,0,30,7],
+"struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f":[30,0,30,8],
+"struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813":[30,0,30,2],
+"struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26":[30,0,30,6],
+"struct___remmina_plugin.html":[30,0,32],
+"struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201":[30,0,32,1],
+"struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582":[30,0,32,2],
+"struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde":[30,0,32,0],
+"struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3":[30,0,32,3],
+"struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099":[30,0,32,4],
+"struct___remmina_plugin_data.html":[30,0,33],
+"struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835":[30,0,33,1],
+"struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3":[30,0,33,2],
+"struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739":[30,0,33,0],
+"struct___remmina_plugin_exec_data.html":[30,0,34],
+"struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb":[30,0,34,3],
+"struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41":[30,0,34,1],
+"struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4":[30,0,34,0],
+"struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1":[30,0,34,2],
+"struct___remmina_plugin_nx_data.html":[30,0,35],
+"struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1":[30,0,35,1],
+"struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d":[30,0,35,3],
+"struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c":[30,0,35,13],
+"struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b":[30,0,35,10],
+"struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4":[30,0,35,6],
+"struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6":[30,0,35,11],
+"struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b":[30,0,35,5],
+"struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256":[30,0,35,8],
+"struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c":[30,0,35,9],
+"struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4":[30,0,35,4],
+"struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3":[30,0,35,2],
+"struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54":[30,0,35,0],
+"struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82":[30,0,35,7],
+"struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645":[30,0,35,12],
+"struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc":[30,0,35,14],
+"struct___remmina_plugin_rdpset_grid.html":[30,0,36],
+"struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0":[30,0,36,20],
+"struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621":[30,0,36,15],
+"struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af":[30,0,36,16],
+"struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4":[30,0,36,3],
+"struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860":[30,0,36,7],
+"struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93":[30,0,36,1],
+"struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d":[30,0,36,13],
+"struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372":[30,0,36,4],
+"struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b":[30,0,36,5],
+"struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5":[30,0,36,11],
+"struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec":[30,0,36,10],
+"struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b":[30,0,36,14],
+"struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6":[30,0,36,8],
+"struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e":[30,0,36,0],
+"struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3":[30,0,36,6],
+"struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29":[30,0,36,2],
+"struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3":[30,0,36,9],
+"struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf":[30,0,36,17],
+"struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319":[30,0,36,19],
+"struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f":[30,0,36,12],
+"struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970":[30,0,36,18],
+"struct___remmina_plugin_rdpset_grid_class.html":[30,0,37],
+"struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9":[30,0,37,0],
+"struct___remmina_plugin_screenshot_data.html":[30,0,38],
+"struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c":[30,0,38,1],
+"struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e":[30,0,38,3],
+"struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44":[30,0,38,2],
+"struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6":[30,0,38,4],
+"struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d":[30,0,38,0],
+"struct___remmina_plugin_service.html":[30,0,39],
+"struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e":[30,0,39,62],
+"struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2":[30,0,39,23],
+"struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de":[30,0,39,1],
+"struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d":[30,0,39,65],
+"struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4":[30,0,39,32],
+"struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1":[30,0,39,58],
+"struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f":[30,0,39,5],
+"struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550":[30,0,39,50],
+"struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa":[30,0,39,10],
+"struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de":[30,0,39,15],
+"struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0":[30,0,39,9],
+"struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87":[30,0,39,54],
+"struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c":[30,0,39,24],
+"struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad":[30,0,39,57],
+"struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3":[30,0,39,8],
+"struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186":[30,0,39,30],
+"struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb":[30,0,39,7],
+"struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189":[30,0,39,52],
+"struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2":[30,0,39,68],
+"struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999":[30,0,39,37],
+"struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea":[30,0,39,49],
+"struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3":[30,0,39,51],
+"struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc":[30,0,39,4],
+"struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081":[30,0,39,0],
+"struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f":[30,0,39,12],
+"struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524":[30,0,39,70],
+"struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f":[30,0,39,29],
+"struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1":[30,0,39,56],
+"struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834":[30,0,39,42],
+"struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72":[30,0,39,55],
+"struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24":[30,0,39,41],
+"struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053":[30,0,39,26],
+"struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9":[30,0,39,22],
+"struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a":[30,0,39,28],
+"struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef":[30,0,39,17],
+"struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5":[30,0,39,40],
+"struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057":[30,0,39,31],
+"struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2":[30,0,39,20],
+"struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b":[30,0,39,14],
+"struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704":[30,0,39,36],
+"struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d":[30,0,39,39],
+"struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e":[30,0,39,66],
+"struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820":[30,0,39,33],
+"struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164":[30,0,39,2],
+"struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b":[30,0,39,43],
+"struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d":[30,0,39,67],
+"struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6":[30,0,39,61],
+"struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f":[30,0,39,60],
+"struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030":[30,0,39,27],
+"struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047":[30,0,39,59],
+"struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290":[30,0,39,18],
+"struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f":[30,0,39,35],
+"struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34":[30,0,39,53],
+"struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b":[30,0,39,48],
+"struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d":[30,0,39,46],
+"struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3":[30,0,39,47],
+"struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b":[30,0,39,19],
+"struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895":[30,0,39,6],
+"struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749":[30,0,39,64],
+"struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174":[30,0,39,44],
+"struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce":[30,0,39,34],
+"struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d":[30,0,39,3],
+"struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5":[30,0,39,21],
+"struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183":[30,0,39,63],
+"struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed":[30,0,39,69],
+"struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662":[30,0,39,13],
+"struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c":[30,0,39,38],
+"struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d":[30,0,39,16],
+"struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b":[30,0,39,45],
+"struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee":[30,0,39,25],
+"struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a":[30,0,39,11],
+"struct___remmina_plugin_sftp_data.html":[30,0,40],
+"struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5":[30,0,40,2],
+"struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f":[30,0,40,0],
+"struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab":[30,0,40,1],
+"struct___remmina_plugin_spice_data.html":[30,0,41],
+"struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69":[30,0,41,5],
+"struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02":[30,0,41,0],
+"struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f":[30,0,41,6],
+"struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad":[30,0,41,1],
+"struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781":[30,0,41,4],
+"struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6":[30,0,41,2],
+"struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633":[30,0,41,7],
+"struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e":[30,0,41,3],
+"struct___remmina_plugin_spice_xfer_widgets.html":[30,0,42],
+"struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716":[30,0,42,4],
+"struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a":[30,0,42,2],
+"struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c":[30,0,42,1],
+"struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe":[30,0,42,3],
+"struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53":[30,0,42,0],
+"struct___remmina_plugin_ssh_data.html":[30,0,43],
+"struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14":[30,0,43,3],
+"struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae":[30,0,43,1],
+"struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563":[30,0,43,0]
+};
diff --git a/docs/navtreeindex11.js b/docs/navtreeindex11.js
new file mode 100644
index 000000000..dfc741c58
--- /dev/null
+++ b/docs/navtreeindex11.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX11 =
+{
+"struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e":[30,0,43,2],
+"struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91":[30,0,43,4],
+"struct___remmina_plugin_vnc_coordinates.html":[30,0,44],
+"struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a":[30,0,44,0],
+"struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e":[30,0,44,1],
+"struct___remmina_plugin_vnc_cuttext_param.html":[30,0,45],
+"struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76":[30,0,45,2],
+"struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09":[30,0,45,0],
+"struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30":[30,0,45,1],
+"struct___remmina_plugin_vnc_data.html":[30,0,46],
+"struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0":[30,0,46,10],
+"struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e":[30,0,46,19],
+"struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a":[30,0,46,25],
+"struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2":[30,0,46,17],
+"struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095":[30,0,46,22],
+"struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90":[30,0,46,4],
+"struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e":[30,0,46,18],
+"struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c":[30,0,46,3],
+"struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c":[30,0,46,9],
+"struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990":[30,0,46,15],
+"struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030":[30,0,46,20],
+"struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3":[30,0,46,1],
+"struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca":[30,0,46,23],
+"struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb":[30,0,46,12],
+"struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063":[30,0,46,26],
+"struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea":[30,0,46,24],
+"struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2":[30,0,46,13],
+"struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97":[30,0,46,0],
+"struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89":[30,0,46,2],
+"struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6":[30,0,46,16],
+"struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc":[30,0,46,6],
+"struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95":[30,0,46,7],
+"struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93":[30,0,46,21],
+"struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57":[30,0,46,8],
+"struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd":[30,0,46,14],
+"struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364":[30,0,46,11],
+"struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c":[30,0,46,5],
+"struct___remmina_plugin_vnc_event.html":[30,0,47],
+"struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32":[30,0,47,0],
+"struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0":[30,0,47,2],
+"struct___remmina_plugin_vnc_event.html#a17fd02bcca976213ff16edde4b754ec6":[30,0,47,8],
+"struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8":[30,0,47,6],
+"struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11":[30,0,47,10],
+"struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6":[30,0,47,1],
+"struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f":[30,0,47,3],
+"struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8":[30,0,47,9],
+"struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65":[30,0,47,7],
+"struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895":[30,0,47,5],
+"struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87":[30,0,47,4],
+"struct___remmina_plugin_w_w_w_data.html":[30,0,48],
+"struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e":[30,0,48,2],
+"struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690":[30,0,48,11],
+"struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54":[30,0,48,9],
+"struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb":[30,0,48,10],
+"struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db":[30,0,48,1],
+"struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84":[30,0,48,6],
+"struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab":[30,0,48,4],
+"struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db":[30,0,48,5],
+"struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959":[30,0,48,3],
+"struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd":[30,0,48,0],
+"struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436":[30,0,48,7],
+"struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0":[30,0,48,8],
+"struct___remmina_plugin_xdmcp_data.html":[30,0,49],
+"struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f":[30,0,49,4],
+"struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d":[30,0,49,1],
+"struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f":[30,0,49,0],
+"struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496":[30,0,49,6],
+"struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb":[30,0,49,7],
+"struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca":[30,0,49,3],
+"struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223":[30,0,49,2],
+"struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f":[30,0,49,5],
+"struct___remmina_pref.html":[30,0,50],
+"struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133":[30,0,50,65],
+"struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef":[30,0,50,8],
+"struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f":[30,0,50,58],
+"struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65":[30,0,50,20],
+"struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e":[30,0,50,39],
+"struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f":[30,0,50,46],
+"struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7":[30,0,50,44],
+"struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7":[30,0,50,34],
+"struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005":[30,0,50,28],
+"struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209":[30,0,50,52],
+"struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7":[30,0,50,57],
+"struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765":[30,0,50,51],
+"struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0":[30,0,50,55],
+"struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203":[30,0,50,59],
+"struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a":[30,0,50,45],
+"struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc":[30,0,50,47],
+"struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c":[30,0,50,41],
+"struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4":[30,0,50,26],
+"struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b":[30,0,50,50],
+"struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f":[30,0,50,66],
+"struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b":[30,0,50,14],
+"struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51":[30,0,50,54],
+"struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3":[30,0,50,32],
+"struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17":[30,0,50,72],
+"struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457":[30,0,50,75],
+"struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22":[30,0,50,78],
+"struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6":[30,0,50,29],
+"struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4":[30,0,50,70],
+"struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37":[30,0,50,37],
+"struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449":[30,0,50,64],
+"struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222":[30,0,50,27],
+"struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c":[30,0,50,4],
+"struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc":[30,0,50,67],
+"struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797":[30,0,50,19],
+"struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9":[30,0,50,0],
+"struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095":[30,0,50,49],
+"struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd":[30,0,50,60],
+"struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8":[30,0,50,5],
+"struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06":[30,0,50,30],
+"struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b":[30,0,50,48],
+"struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd":[30,0,50,18],
+"struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6":[30,0,50,24],
+"struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6":[30,0,50,76],
+"struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011":[30,0,50,7],
+"struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e":[30,0,50,16],
+"struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f":[30,0,50,15],
+"struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568":[30,0,50,3],
+"struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259":[30,0,50,42],
+"struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad":[30,0,50,77],
+"struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f":[30,0,50,36],
+"struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b":[30,0,50,53],
+"struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5":[30,0,50,12],
+"struct___remmina_pref.html#aac4f34f297a653052752b571777bc001":[30,0,50,56],
+"struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676":[30,0,50,38],
+"struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d":[30,0,50,9],
+"struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1":[30,0,50,71],
+"struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644":[30,0,50,35],
+"struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792":[30,0,50,1],
+"struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651":[30,0,50,68],
+"struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0":[30,0,50,25],
+"struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e":[30,0,50,21],
+"struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b":[30,0,50,73],
+"struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21":[30,0,50,13],
+"struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd":[30,0,50,2],
+"struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f":[30,0,50,6],
+"struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8":[30,0,50,61],
+"struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736":[30,0,50,31],
+"struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6":[30,0,50,40],
+"struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101":[30,0,50,17],
+"struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47":[30,0,50,43],
+"struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35":[30,0,50,10],
+"struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd":[30,0,50,22],
+"struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875":[30,0,50,23],
+"struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468":[30,0,50,63],
+"struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972":[30,0,50,69],
+"struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400":[30,0,50,62],
+"struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850":[30,0,50,74],
+"struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c":[30,0,50,11],
+"struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7":[30,0,50,33],
+"struct___remmina_pref_dialog.html":[30,0,51],
+"struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d":[30,0,51,69],
+"struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11":[30,0,51,74],
+"struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97":[30,0,51,84],
+"struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be":[30,0,51,7],
+"struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5":[30,0,51,22],
+"struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6":[30,0,51,16],
+"struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3":[30,0,51,71],
+"struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f":[30,0,51,2],
+"struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb":[30,0,51,45],
+"struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119":[30,0,51,28],
+"struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb":[30,0,51,75],
+"struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1":[30,0,51,25],
+"struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485":[30,0,51,46],
+"struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196":[30,0,51,63],
+"struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a":[30,0,51,40],
+"struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2":[30,0,51,4],
+"struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d":[30,0,51,72],
+"struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028":[30,0,51,27],
+"struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6":[30,0,51,18],
+"struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd":[30,0,51,20],
+"struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097":[30,0,51,82],
+"struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8":[30,0,51,34],
+"struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6":[30,0,51,50],
+"struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d":[30,0,51,37],
+"struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f":[30,0,51,21],
+"struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3":[30,0,51,42],
+"struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972":[30,0,51,54],
+"struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876":[30,0,51,0],
+"struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c":[30,0,51,56],
+"struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d":[30,0,51,53],
+"struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e":[30,0,51,73],
+"struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b":[30,0,51,83],
+"struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980":[30,0,51,80],
+"struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab":[30,0,51,47],
+"struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32":[30,0,51,62],
+"struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826":[30,0,51,6],
+"struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94":[30,0,51,10],
+"struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571":[30,0,51,58],
+"struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903":[30,0,51,17],
+"struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40":[30,0,51,60],
+"struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0":[30,0,51,61],
+"struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c":[30,0,51,36],
+"struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18":[30,0,51,78],
+"struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b":[30,0,51,77],
+"struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb":[30,0,51,49],
+"struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c":[30,0,51,26],
+"struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531":[30,0,51,57],
+"struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061":[30,0,51,52],
+"struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877":[30,0,51,31],
+"struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811":[30,0,51,32],
+"struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97":[30,0,51,5],
+"struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3":[30,0,51,43],
+"struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2":[30,0,51,51],
+"struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb":[30,0,51,39],
+"struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2":[30,0,51,48],
+"struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35":[30,0,51,35],
+"struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0":[30,0,51,12],
+"struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7":[30,0,51,64],
+"struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2":[30,0,51,1],
+"struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3":[30,0,51,38],
+"struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6":[30,0,51,24],
+"struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5":[30,0,51,14],
+"struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc":[30,0,51,29],
+"struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123":[30,0,51,66],
+"struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b":[30,0,51,59],
+"struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46":[30,0,51,81],
+"struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb":[30,0,51,70],
+"struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912":[30,0,51,23],
+"struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87":[30,0,51,19],
+"struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d":[30,0,51,76],
+"struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a":[30,0,51,33],
+"struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9":[30,0,51,9],
+"struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4":[30,0,51,30],
+"struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c":[30,0,51,44],
+"struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189":[30,0,51,65],
+"struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8":[30,0,51,13],
+"struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1":[30,0,51,3],
+"struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27":[30,0,51,67],
+"struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74":[30,0,51,8],
+"struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c":[30,0,51,55],
+"struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327":[30,0,51,15],
+"struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb":[30,0,51,68],
+"struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171":[30,0,51,79],
+"struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f":[30,0,51,41],
+"struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0":[30,0,51,11],
+"struct___remmina_pref_dialog_priv.html":[30,0,52],
+"struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05":[30,0,52,0],
+"struct___remmina_pref_plugin.html":[30,0,53],
+"struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0":[30,0,53,0],
+"struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf":[30,0,53,1],
+"struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d":[30,0,53,6],
+"struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989":[30,0,53,2],
+"struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d":[30,0,53,4],
+"struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b":[30,0,53,3],
+"struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522":[30,0,53,5],
+"struct___remmina_protocol_feature.html":[30,0,54],
+"struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9":[30,0,54,4],
+"struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20":[30,0,54,0]
+};
diff --git a/docs/navtreeindex12.js b/docs/navtreeindex12.js
new file mode 100644
index 000000000..86921c36e
--- /dev/null
+++ b/docs/navtreeindex12.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX12 =
+{
+"struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952":[30,0,54,1],
+"struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d":[30,0,54,2],
+"struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190":[30,0,54,3],
+"struct___remmina_protocol_plugin.html":[30,0,55],
+"struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2":[30,0,55,10],
+"struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff":[30,0,55,17],
+"struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1":[30,0,55,2],
+"struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae":[30,0,55,5],
+"struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4":[30,0,55,11],
+"struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3":[30,0,55,9],
+"struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7":[30,0,55,14],
+"struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10":[30,0,55,8],
+"struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70":[30,0,55,4],
+"struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de":[30,0,55,13],
+"struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb":[30,0,55,15],
+"struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d":[30,0,55,1],
+"struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0":[30,0,55,16],
+"struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db":[30,0,55,0],
+"struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd":[30,0,55,12],
+"struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4":[30,0,55,7],
+"struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2":[30,0,55,3],
+"struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff":[30,0,55,6],
+"struct___remmina_protocol_setting.html":[30,0,56],
+"struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9":[30,0,56,5],
+"struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4":[30,0,56,1],
+"struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6":[30,0,56,0],
+"struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857":[30,0,56,2],
+"struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167":[30,0,56,4],
+"struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0":[30,0,56,3],
+"struct___remmina_protocol_setting_opt.html":[30,0,57],
+"struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed":[30,0,57,1],
+"struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20":[30,0,57,3],
+"struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea":[30,0,57,2],
+"struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc":[30,0,57,0],
+"struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867":[30,0,57,4],
+"struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a":[30,0,57,5],
+"struct___remmina_protocol_widget.html":[30,0,58],
+"struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6":[30,0,58,2],
+"struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc":[30,0,58,1],
+"struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67":[30,0,58,0],
+"struct___remmina_protocol_widget_class.html":[30,0,59],
+"struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3":[30,0,59,4],
+"struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760":[30,0,59,0],
+"struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213":[30,0,59,2],
+"struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2":[30,0,59,3],
+"struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99":[30,0,59,5],
+"struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b":[30,0,59,1],
+"struct___remmina_protocol_widget_priv.html":[30,0,60],
+"struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e":[30,0,60,3],
+"struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec":[30,0,60,20],
+"struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7":[30,0,60,16],
+"struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f":[30,0,60,8],
+"struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0":[30,0,60,17],
+"struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116":[30,0,60,24],
+"struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e":[30,0,60,1],
+"struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05":[30,0,60,4],
+"struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211":[30,0,60,14],
+"struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93":[30,0,60,26],
+"struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b":[30,0,60,0],
+"struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483":[30,0,60,7],
+"struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640":[30,0,60,15],
+"struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d":[30,0,60,11],
+"struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791":[30,0,60,21],
+"struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6":[30,0,60,6],
+"struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca":[30,0,60,18],
+"struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c":[30,0,60,23],
+"struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533":[30,0,60,22],
+"struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10":[30,0,60,19],
+"struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4":[30,0,60,9],
+"struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326":[30,0,60,13],
+"struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d":[30,0,60,10],
+"struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885":[30,0,60,25],
+"struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0":[30,0,60,5],
+"struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380":[30,0,60,12],
+"struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4":[30,0,60,2],
+"struct___remmina_protocol_widget_signal_data.html":[30,0,61],
+"struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada":[30,0,61,1],
+"struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a":[30,0,61,0],
+"struct___remmina_s_f_t_p.html":[30,0,65],
+"struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e":[30,0,65,1],
+"struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df":[30,0,65,0],
+"struct___remmina_s_f_t_p_client.html":[30,0,66],
+"struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210":[30,0,66,1],
+"struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1":[30,0,66,0],
+"struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270":[30,0,66,3],
+"struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b":[30,0,66,4],
+"struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c":[30,0,66,2],
+"struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875":[30,0,66,5],
+"struct___remmina_s_f_t_p_client_class.html":[30,0,67],
+"struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d":[30,0,67,0],
+"struct___remmina_s_s_h.html":[30,0,68],
+"struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5":[30,0,68,3],
+"struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0":[30,0,68,4],
+"struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed":[30,0,68,9],
+"struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb":[30,0,68,21],
+"struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed":[30,0,68,6],
+"struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3":[30,0,68,16],
+"struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52":[30,0,68,17],
+"struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9":[30,0,68,18],
+"struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a":[30,0,68,7],
+"struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f":[30,0,68,20],
+"struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc":[30,0,68,12],
+"struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529":[30,0,68,10],
+"struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378":[30,0,68,2],
+"struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870":[30,0,68,5],
+"struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03":[30,0,68,0],
+"struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af":[30,0,68,14],
+"struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d":[30,0,68,1],
+"struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6":[30,0,68,8],
+"struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89":[30,0,68,11],
+"struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b":[30,0,68,15],
+"struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602":[30,0,68,19],
+"struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e":[30,0,68,13],
+"struct___remmina_s_s_h_shell.html":[30,0,69],
+"struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7":[30,0,69,2],
+"struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80":[30,0,69,1],
+"struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6":[30,0,69,5],
+"struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2":[30,0,69,0],
+"struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226":[30,0,69,7],
+"struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a":[30,0,69,3],
+"struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f":[30,0,69,4],
+"struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d":[30,0,69,8],
+"struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098":[30,0,69,6],
+"struct___remmina_s_s_h_tunnel.html":[30,0,70],
+"struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d":[30,0,70,25],
+"struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1":[30,0,70,12],
+"struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047":[30,0,70,1],
+"struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c":[30,0,70,10],
+"struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778":[30,0,70,8],
+"struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1":[30,0,70,20],
+"struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795":[30,0,70,9],
+"struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91":[30,0,70,5],
+"struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da":[30,0,70,7],
+"struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6":[30,0,70,14],
+"struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6":[30,0,70,3],
+"struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b":[30,0,70,0],
+"struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69":[30,0,70,19],
+"struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d":[30,0,70,11],
+"struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb":[30,0,70,2],
+"struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd":[30,0,70,18],
+"struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd":[30,0,70,23],
+"struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660":[30,0,70,6],
+"struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3":[30,0,70,21],
+"struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4":[30,0,70,4],
+"struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513":[30,0,70,15],
+"struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df":[30,0,70,24],
+"struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc":[30,0,70,16],
+"struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23":[30,0,70,22],
+"struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260":[30,0,70,13],
+"struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28":[30,0,70,17],
+"struct___remmina_scrolled_viewport.html":[30,0,62],
+"struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded":[30,0,62,0],
+"struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af":[30,0,62,1],
+"struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966":[30,0,62,2],
+"struct___remmina_scrolled_viewport_class.html":[30,0,63],
+"struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f":[30,0,63,0],
+"struct___remmina_secret_plugin.html":[30,0,64],
+"struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09":[30,0,64,5],
+"struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659":[30,0,64,1],
+"struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a":[30,0,64,7],
+"struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2":[30,0,64,9],
+"struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4":[30,0,64,6],
+"struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6":[30,0,64,8],
+"struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef":[30,0,64,0],
+"struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e":[30,0,64,2],
+"struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629":[30,0,64,3],
+"struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa":[30,0,64,10],
+"struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56":[30,0,64,4],
+"struct___remmina_string_list.html":[30,0,71],
+"struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1":[30,0,71,2],
+"struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2":[30,0,71,12],
+"struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3":[30,0,71,14],
+"struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933":[30,0,71,9],
+"struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd":[30,0,71,0],
+"struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65":[30,0,71,4],
+"struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256":[30,0,71,5],
+"struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4":[30,0,71,1],
+"struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3":[30,0,71,11],
+"struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558":[30,0,71,7],
+"struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe":[30,0,71,6],
+"struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97":[30,0,71,13],
+"struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7":[30,0,71,8],
+"struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab":[30,0,71,10],
+"struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500":[30,0,71,3],
+"struct___remmina_string_list_priv.html":[30,0,72],
+"struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24":[30,0,72,2],
+"struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb":[30,0,72,1],
+"struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7":[30,0,72,0],
+"struct___remmina_tool_plugin.html":[30,0,73],
+"struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9":[30,0,73,0],
+"struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e":[30,0,73,1],
+"struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b":[30,0,73,5],
+"struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17":[30,0,73,2],
+"struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af":[30,0,73,3],
+"struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176":[30,0,73,4],
+"struct___remmina_tp_channel_handler.html":[30,0,74],
+"struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363":[30,0,74,9],
+"struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334":[30,0,74,1],
+"struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068":[30,0,74,8],
+"struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece":[30,0,74,3],
+"struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981":[30,0,74,6],
+"struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213":[30,0,74,7],
+"struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769":[30,0,74,4],
+"struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107":[30,0,74,11],
+"struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659":[30,0,74,13],
+"struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632":[30,0,74,5],
+"struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed":[30,0,74,10],
+"struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3":[30,0,74,2],
+"struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545":[30,0,74,12],
+"struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8":[30,0,74,0],
+"struct___remmina_tp_handler.html":[30,0,75],
+"struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510":[30,0,75,0],
+"struct___remmina_tp_handler_class.html":[30,0,76],
+"struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f":[30,0,76,0],
+"struct___remmina_unlock_dialog.html":[30,0,77],
+"struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d":[30,0,77,1],
+"struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235":[30,0,77,5],
+"struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e":[30,0,77,3],
+"struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b":[30,0,77,6],
+"struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b":[30,0,77,0],
+"struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109":[30,0,77,4],
+"struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44":[30,0,77,2],
+"struct_mp_run_info.html":[30,0,81],
+"struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5":[30,0,81,2],
+"struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91":[30,0,81,0],
+"struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904":[30,0,81,3],
+"struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079":[30,0,81,1],
+"struct_p_con___spinner.html":[30,0,83],
+"struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046":[30,0,83,3],
+"struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646":[30,0,83,1],
+"struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e":[30,0,83,0],
+"struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281":[30,0,83,2],
+"struct_profiles_data.html":[30,0,84],
+"struct_profiles_data.html#a010a740c75d19daf63572f87565ae956":[30,0,84,4],
+"struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4":[30,0,84,2],
+"struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b":[30,0,84,0],
+"struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a":[30,0,84,5],
+"struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef":[30,0,84,3],
+"struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680":[30,0,84,1],
+"struct_remmina_message_panel_private.html":[30,0,91],
+"struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4":[30,0,91,1],
+"struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8":[30,0,91,2],
+"struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283":[30,0,91,0],
+"structdistro__info.html":[30,0,78],
+"structdistro__info.html#a1999084b11586bdb56bc2453fce7f633":[30,0,78,0],
+"structdistro__info.html#a27013edbc763fecb35337ca0affacfc2":[30,0,78,1],
+"structlsb__distro__info.html":[30,0,79],
+"structlsb__distro__info.html#a251763a49054183774e2082595537e47":[30,0,79,0],
+"structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7":[30,0,79,1],
+"structmpchanger__params.html":[30,0,80]
+};
diff --git a/docs/navtreeindex13.js b/docs/navtreeindex13.js
new file mode 100644
index 000000000..6ccde6d00
--- /dev/null
+++ b/docs/navtreeindex13.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX13 =
+{
+"structmpchanger__params.html#a098952d194a183d4a505aa065797864b":[30,0,80,9],
+"structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87":[30,0,80,13],
+"structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46":[30,0,80,10],
+"structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73":[30,0,80,15],
+"structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e":[30,0,80,11],
+"structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719":[30,0,80,1],
+"structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be":[30,0,80,7],
+"structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742":[30,0,80,17],
+"structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2":[30,0,80,16],
+"structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c":[30,0,80,3],
+"structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245":[30,0,80,6],
+"structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2":[30,0,80,0],
+"structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348":[30,0,80,5],
+"structmpchanger__params.html#ac8fdacd94418731904020ff679475918":[30,0,80,12],
+"structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd":[30,0,80,14],
+"structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809":[30,0,80,8],
+"structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568":[30,0,80,2],
+"structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed":[30,0,80,4],
+"structon_main_thread__cb__data.html":[30,0,82],
+"structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8":[30,0,82,10],
+"structon_main_thread__cb__data.html#a2b555e0dc84d0475e25ec578ca05e19b":[30,0,82,3],
+"structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4":[30,0,82,9],
+"structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75":[30,0,82,2],
+"structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4":[30,0,82,12],
+"structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc":[30,0,82,0],
+"structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222":[30,0,82,13],
+"structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41":[30,0,82,1],
+"structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74":[30,0,82,6],
+"structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc":[30,0,82,7],
+"structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb":[30,0,82,5],
+"structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172":[30,0,82,4],
+"structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f":[30,0,82,14],
+"structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783":[30,0,82,11],
+"structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242":[30,0,82,8],
+"structregion.html":[30,0,85],
+"structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6":[30,0,85,1],
+"structregion.html#a585e1a437e6e8f8a80785aec2f2762c8":[30,0,85,0],
+"structregion.html#a97015e361d0cbedf7dcab10fbea95b10":[30,0,85,3],
+"structregion.html#ad258e7b02e819b46656294de5e4bd8ad":[30,0,85,2],
+"structremmina__masterthread__exec__data.html":[30,0,86],
+"structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d":[30,0,86,16],
+"structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910":[30,0,86,50],
+"structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b":[30,0,86,15],
+"structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1":[30,0,86,53],
+"structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1":[30,0,86,54],
+"structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9":[30,0,86,19],
+"structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020":[30,0,86,14],
+"structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43":[30,0,86,21],
+"structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493":[30,0,86,22],
+"structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b":[30,0,86,39],
+"structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e":[30,0,86,51],
+"structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1":[30,0,86,23],
+"structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92":[30,0,86,31],
+"structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4":[30,0,86,25],
+"structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6":[30,0,86,36],
+"structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1":[30,0,86,29],
+"structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304":[30,0,86,26],
+"structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327":[30,0,86,56],
+"structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b":[30,0,86,35],
+"structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668":[30,0,86,18],
+"structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050":[30,0,86,30],
+"structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2":[30,0,86,20],
+"structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077":[30,0,86,49],
+"structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6":[30,0,86,27],
+"structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95":[30,0,86,38],
+"structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de":[30,0,86,55],
+"structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15":[30,0,86,45],
+"structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9":[30,0,86,32],
+"structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1":[30,0,86,44],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09":[30,0,86,6],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d":[30,0,86,1],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605":[30,0,86,12],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567":[30,0,86,7],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10":[30,0,86,3],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537":[30,0,86,2],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809":[30,0,86,9],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9":[30,0,86,5],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a":[30,0,86,0],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82":[30,0,86,4],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197":[30,0,86,8],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60":[30,0,86,11],
+"structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b":[30,0,86,10],
+"structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1":[30,0,86,37],
+"structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b":[30,0,86,48],
+"structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63":[30,0,86,13],
+"structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c":[30,0,86,24],
+"structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9":[30,0,86,41],
+"structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea":[30,0,86,52],
+"structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9":[30,0,86,33],
+"structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319":[30,0,86,40],
+"structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543":[30,0,86,42],
+"structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61":[30,0,86,28],
+"structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c":[30,0,86,46],
+"structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07":[30,0,86,47],
+"structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd":[30,0,86,17],
+"structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658":[30,0,86,43],
+"structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c":[30,0,86,34],
+"structremmina__plugin__rdp__event.html":[30,0,87],
+"structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082":[30,0,87,15],
+"structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649":[30,0,87,9],
+"structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3":[30,0,87,0],
+"structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105":[30,0,87,21],
+"structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57":[30,0,87,6],
+"structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2":[30,0,87,11],
+"structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6":[30,0,87,1],
+"structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0":[30,0,87,2],
+"structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151":[30,0,87,10],
+"structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b":[30,0,87,18],
+"structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c":[30,0,87,8],
+"structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba":[30,0,87,16],
+"structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126":[30,0,87,17],
+"structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e":[30,0,87,13],
+"structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094":[30,0,87,19],
+"structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b":[30,0,87,20],
+"structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0":[30,0,87,4],
+"structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c":[30,0,87,14],
+"structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948":[30,0,87,12],
+"structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985":[30,0,87,5],
+"structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e":[30,0,87,7],
+"structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf":[30,0,87,22],
+"structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624":[30,0,87,3],
+"structremmina__plugin__rdp__keymap__entry.html":[30,0,88],
+"structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88":[30,0,88,0],
+"structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1":[30,0,88,1],
+"structremmina__plugin__rdp__ui__object.html":[30,0,89],
+"structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0":[30,0,89,16],
+"structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589":[30,0,89,26],
+"structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34":[30,0,89,13],
+"structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f":[30,0,89,30],
+"structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e":[30,0,89,15],
+"structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262":[30,0,89,25],
+"structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849":[30,0,89,9],
+"structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1":[30,0,89,0],
+"structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed":[30,0,89,14],
+"structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6":[30,0,89,22],
+"structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c":[30,0,89,3],
+"structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60":[30,0,89,20],
+"structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475":[30,0,89,23],
+"structremmina__plugin__rdp__ui__object.html#a6c993ee64cd27392efb8bc6f53e0dca0":[30,0,89,2],
+"structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24":[30,0,89,17],
+"structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d":[30,0,89,29],
+"structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c":[30,0,89,32],
+"structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e":[30,0,89,11],
+"structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb":[30,0,89,12],
+"structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070":[30,0,89,24],
+"structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee":[30,0,89,18],
+"structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7":[30,0,89,19],
+"structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b":[30,0,89,28],
+"structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9":[30,0,89,31],
+"structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a":[30,0,89,1],
+"structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db":[30,0,89,4],
+"structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a":[30,0,89,5],
+"structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d":[30,0,89,7],
+"structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725":[30,0,89,27],
+"structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b":[30,0,89,8],
+"structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559":[30,0,89,10],
+"structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509":[30,0,89,21],
+"structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181":[30,0,89,6],
+"structremmina__protocol__widget__dialog__mt__data__t.html":[30,0,90],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7":[30,0,90,4],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361":[30,0,90,1],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5":[30,0,90,9],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf":[30,0,90,8],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74":[30,0,90,11],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850":[30,0,90,2],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544":[30,0,90,10],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f":[30,0,90,0],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8":[30,0,90,6],
+"structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda":[30,0,90,7],
+"structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a":[30,0,90,5],
+"structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28":[30,0,90,3],
+"structrf__bitmap.html":[30,0,92],
+"structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507":[30,0,92,0],
+"structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b":[30,0,92,2],
+"structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b":[30,0,92,1],
+"structrf__clipboard.html":[30,0,93],
+"structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68":[30,0,93,7],
+"structrf__clipboard.html#a52ca364a1902d7f4095234923feed724":[30,0,93,3],
+"structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205":[30,0,93,12],
+"structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3":[30,0,93,6],
+"structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1":[30,0,93,0],
+"structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e":[30,0,93,1],
+"structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b":[30,0,93,2],
+"structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa":[30,0,93,4],
+"structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7":[30,0,93,11],
+"structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b":[30,0,93,5],
+"structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf":[30,0,93,10],
+"structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7":[30,0,93,9],
+"structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026":[30,0,93,8],
+"structrf__context.html":[30,0,94],
+"structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3":[30,0,94,28],
+"structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f":[30,0,94,31],
+"structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8":[30,0,94,8],
+"structrf__context.html#a23192b58404d1dc629d5e7db3fb103be":[30,0,94,11],
+"structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d":[30,0,94,42],
+"structrf__context.html#a2a708b989f3e12af802ab4266af39363":[30,0,94,16],
+"structrf__context.html#a335c40ccb90ae472525b203c832e7701":[30,0,94,27],
+"structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d":[30,0,94,22],
+"structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329":[30,0,94,49],
+"structrf__context.html#a3a32bbd599b6684a3c41db9281863362":[30,0,94,20],
+"structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6":[30,0,94,44],
+"structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73":[30,0,94,10],
+"structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b":[30,0,94,5],
+"structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7":[30,0,94,3],
+"structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413":[30,0,94,33],
+"structrf__context.html#a522c742a333cf0603dfa7d06a7376669":[30,0,94,17],
+"structrf__context.html#a538399f42e4454d5a44effbc59ea9091":[30,0,94,41],
+"structrf__context.html#a539feef609228a91c5e54d5da837bb7a":[30,0,94,18],
+"structrf__context.html#a584505347366c40e6efa710353d4264f":[30,0,94,39],
+"structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565":[30,0,94,19],
+"structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174":[30,0,94,13],
+"structrf__context.html#a72d2a3d60347327237692947df93aea7":[30,0,94,7],
+"structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999":[30,0,94,52],
+"structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706":[30,0,94,35],
+"structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169":[30,0,94,37],
+"structrf__context.html#a7c4234646c4b584e41e36521b7eab889":[30,0,94,14],
+"structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982":[30,0,94,2],
+"structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6":[30,0,94,1],
+"structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68":[30,0,94,0],
+"structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764":[30,0,94,40],
+"structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3":[30,0,94,4],
+"structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2":[30,0,94,45],
+"structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4":[30,0,94,29],
+"structrf__context.html#a957e6f6867170470689210d55770342e":[30,0,94,12],
+"structrf__context.html#a96c4689f6bc062482536038cb3b24e78":[30,0,94,36],
+"structrf__context.html#a9d28c775fe1ee90ad48941d753564a76":[30,0,94,43],
+"structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee":[30,0,94,32],
+"structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0":[30,0,94,6],
+"structrf__context.html#aa574515edb4966117f539d26e26f0a62":[30,0,94,46],
+"structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec":[30,0,94,34],
+"structrf__context.html#aafce196b029d2578151275acd07ccb82":[30,0,94,24],
+"structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a":[30,0,94,30],
+"structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8":[30,0,94,50],
+"structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48":[30,0,94,26],
+"structrf__context.html#acacad775c2c168f900deaa6c90481319":[30,0,94,51],
+"structrf__context.html#acee2095e72fb2428c498f62e21800026":[30,0,94,15],
+"structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523":[30,0,94,9],
+"structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4":[30,0,94,25],
+"structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960":[30,0,94,23],
+"structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3":[30,0,94,48],
+"structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0":[30,0,94,47],
+"structrf__context.html#aedf6fcd090e6ba788956565ce312ab70":[30,0,94,38],
+"structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8":[30,0,94,21],
+"structrf__glyph.html":[30,0,95],
+"structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22":[30,0,95,1],
+"structrf__glyph.html#ac258216d1331ac44afc01a3329357e94":[30,0,95,0],
+"structrf__pointer.html":[30,0,96],
+"structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf":[30,0,96,1],
+"structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0":[30,0,96,0],
+"structrs_sched_data.html":[30,0,97]
+};
diff --git a/docs/navtreeindex14.js b/docs/navtreeindex14.js
new file mode 100644
index 000000000..7ea18a323
--- /dev/null
+++ b/docs/navtreeindex14.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX14 =
+{
+"structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e":[30,0,97,2],
+"structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f":[30,0,97,3],
+"structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b":[30,0,97,0],
+"structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688":[30,0,97,4],
+"structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646":[30,0,97,1],
+"structsc__tdata.html":[30,0,98],
+"structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b":[30,0,98,1],
+"structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23":[30,0,98,0],
+"telepathy__channel__handler_8c.html":[31,0,134],
+"telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb":[31,0,134,9],
+"telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9":[31,0,134,8],
+"telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb":[31,0,134,2],
+"telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84":[31,0,134,1],
+"telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b":[31,0,134,5],
+"telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404":[31,0,134,11],
+"telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e":[31,0,134,13],
+"telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e":[31,0,134,7],
+"telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f":[31,0,134,4],
+"telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e":[31,0,134,10],
+"telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052":[31,0,134,14],
+"telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537":[31,0,134,3],
+"telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6":[31,0,134,6],
+"telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8":[31,0,134,12],
+"telepathy__channel__handler_8c_source.html":[31,0,134],
+"telepathy__channel__handler_8h.html":[31,0,135],
+"telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c":[31,0,135,0],
+"telepathy__channel__handler_8h_source.html":[31,0,135],
+"telepathy__handler_8c.html":[31,0,136],
+"telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a":[31,0,136,2],
+"telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc":[31,0,136,1],
+"telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8":[31,0,136,0],
+"telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c":[31,0,136,4],
+"telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4":[31,0,136,3],
+"telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6":[31,0,136,5],
+"telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052":[31,0,136,7],
+"telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9":[31,0,136,6],
+"telepathy__handler_8c_source.html":[31,0,136],
+"telepathy__handler_8h.html":[31,0,137],
+"telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6":[31,0,137,4],
+"telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0":[31,0,137,2],
+"telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924":[31,0,137,3],
+"telepathy__handler_8h_source.html":[31,0,137],
+"telepathy__plugin_8c.html":[31,0,138],
+"telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0":[31,0,138,4],
+"telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58":[31,0,138,2],
+"telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,138,0],
+"telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356":[31,0,138,1],
+"telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052":[31,0,138,3],
+"telepathy__plugin_8c_source.html":[31,0,138],
+"todo.html":[29],
+"travis-build_8sh.html":[31,0,139],
+"travis-build_8sh_source.html":[31,0,139],
+"types_8h.html":[31,0,140],
+"types_8h.html#a112d7cc6c755209cabb68cf2a62ad515":[31,0,140,3],
+"types_8h.html#a1ace68e95e55a30fcf8b991f52332501":[31,0,140,9],
+"types_8h.html#a341a0a8b6509633809d99348cc3ba486":[31,0,140,12],
+"types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a":[31,0,140,12,0],
+"types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a":[31,0,140,12,1],
+"types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c":[31,0,140,12,2],
+"types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c":[31,0,140,12,3],
+"types_8h.html#a373ddef8221457d86c64830c26d3f78a":[31,0,140,16],
+"types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724":[31,0,140,16,0],
+"types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef":[31,0,140,16,3],
+"types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d":[31,0,140,16,2],
+"types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd":[31,0,140,16,1],
+"types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4":[31,0,140,7],
+"types_8h.html#a41c04d02e6a15ad17be8065453cc4933":[31,0,140,6],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7":[31,0,140,15],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371":[31,0,140,15,2],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd":[31,0,140,15,3],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093":[31,0,140,15,0],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a":[31,0,140,15,1],
+"types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3":[31,0,140,15,4],
+"types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5":[31,0,140,11],
+"types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d":[31,0,140,11,1],
+"types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920":[31,0,140,11,2],
+"types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2":[31,0,140,11,0],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5":[31,0,140,13],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1":[31,0,140,13,3],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf":[31,0,140,13,5],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527":[31,0,140,13,1],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4":[31,0,140,13,0],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7":[31,0,140,13,6],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507":[31,0,140,13,2],
+"types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f":[31,0,140,13,4],
+"types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1":[31,0,140,4],
+"types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74":[31,0,140,5],
+"types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8":[31,0,140,8],
+"types_8h.html#aee1a3e130e6991978acd907b52204350":[31,0,140,14],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d":[31,0,140,14,6],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da":[31,0,140,14,9],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f":[31,0,140,14,8],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92":[31,0,140,14,1],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f":[31,0,140,14,10],
+"types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296":[31,0,140,14,5],
+"types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba":[31,0,140,14,3],
+"types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3":[31,0,140,14,0],
+"types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425":[31,0,140,14,4],
+"types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5":[31,0,140,14,7],
+"types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa":[31,0,140,14,2],
+"types_8h.html#aeea5ee1e675368413b6f6ab09883e7de":[31,0,140,17],
+"types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946":[31,0,140,17,2],
+"types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20":[31,0,140,17,1],
+"types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd":[31,0,140,17,0],
+"types_8h.html#afae2f546eaf9ef8a816a804e830055bf":[31,0,140,10],
+"types_8h_source.html":[31,0,140],
+"ubuntu-build_8sh.html":[31,0,141],
+"ubuntu-build_8sh_source.html":[31,0,141],
+"update-translations_8sh.html":[31,0,142],
+"update-translations_8sh_source.html":[31,0,142],
+"vnc__plugin_8c.html":[31,0,143],
+"vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5":[31,0,143,64],
+"vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307":[31,0,143,4],
+"vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02":[31,0,143,26],
+"vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108":[31,0,143,51],
+"vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8":[31,0,143,27],
+"vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a":[31,0,143,34],
+"vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1":[31,0,143,47],
+"vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c":[31,0,143,60],
+"vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9":[31,0,143,72],
+"vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f":[31,0,143,37],
+"vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10":[31,0,143,19],
+"vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e":[31,0,143,3],
+"vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80":[31,0,143,55],
+"vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53":[31,0,143,9],
+"vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4":[31,0,143,44],
+"vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1":[31,0,143,33],
+"vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242":[31,0,143,36],
+"vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a":[31,0,143,28],
+"vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81":[31,0,143,32],
+"vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42":[31,0,143,22],
+"vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4":[31,0,143,31],
+"vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,143,10],
+"vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0":[31,0,143,23],
+"vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61":[31,0,143,17],
+"vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49":[31,0,143,8],
+"vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7":[31,0,143,15],
+"vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6":[31,0,143,12],
+"vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7":[31,0,143,65],
+"vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44":[31,0,143,39],
+"vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697":[31,0,143,35],
+"vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55":[31,0,143,58],
+"vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751":[31,0,143,5],
+"vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d":[31,0,143,29],
+"vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1":[31,0,143,61],
+"vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14":[31,0,143,49],
+"vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688":[31,0,143,16],
+"vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c":[31,0,143,43],
+"vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7":[31,0,143,68],
+"vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452":[31,0,143,25],
+"vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d":[31,0,143,20],
+"vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc":[31,0,143,42],
+"vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3":[31,0,143,69],
+"vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586":[31,0,143,45],
+"vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,143,66],
+"vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea":[31,0,143,67],
+"vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99":[31,0,143,30],
+"vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1":[31,0,143,7],
+"vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469":[31,0,143,59],
+"vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d":[31,0,143,40],
+"vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece":[31,0,143,71],
+"vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e":[31,0,143,24],
+"vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a":[31,0,143,14],
+"vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d":[31,0,143,48],
+"vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003":[31,0,143,52],
+"vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e":[31,0,143,6],
+"vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21":[31,0,143,70],
+"vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0":[31,0,143,54],
+"vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57":[31,0,143,73],
+"vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d":[31,0,143,57],
+"vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1":[31,0,143,56],
+"vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca":[31,0,143,13],
+"vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1":[31,0,143,50],
+"vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100":[31,0,143,63],
+"vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9":[31,0,143,41],
+"vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8":[31,0,143,21],
+"vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac":[31,0,143,46],
+"vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449":[31,0,143,18],
+"vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383":[31,0,143,38],
+"vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff":[31,0,143,62],
+"vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8":[31,0,143,11],
+"vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc":[31,0,143,53],
+"vnc__plugin_8c_source.html":[31,0,143],
+"vnc__plugin_8h.html":[31,0,144],
+"vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9":[31,0,144,4],
+"vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18":[31,0,144,3],
+"vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18":[31,0,144,5],
+"vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9":[31,0,144,12],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd":[31,0,144,8],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee":[31,0,144,10],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f":[31,0,144,7],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df":[31,0,144,11],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540":[31,0,144,6],
+"vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718":[31,0,144,9],
+"vnc__plugin_8h_source.html":[31,0,144],
+"www__config_8h.html":[31,0,145],
+"www__config_8h_source.html":[31,0,145],
+"www__plugin_8c.html":[31,0,146],
+"www__plugin_8c.html#a05218b821edab542795439a87ad9d909":[31,0,146,5],
+"www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2":[31,0,146,4],
+"www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8":[31,0,146,18],
+"www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72":[31,0,146,16],
+"www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb":[31,0,146,20],
+"www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb":[31,0,146,24],
+"www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99":[31,0,146,21],
+"www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,146,2],
+"www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f":[31,0,146,12],
+"www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9":[31,0,146,1],
+"www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71":[31,0,146,10],
+"www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,146,22],
+"www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b":[31,0,146,17],
+"www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed":[31,0,146,6],
+"www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374":[31,0,146,7],
+"www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057":[31,0,146,15],
+"www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1":[31,0,146,23],
+"www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e":[31,0,146,9],
+"www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4":[31,0,146,19],
+"www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00":[31,0,146,11],
+"www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8":[31,0,146,25],
+"www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d":[31,0,146,13],
+"www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23":[31,0,146,14],
+"www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea":[31,0,146,3],
+"www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19":[31,0,146,8],
+"www__plugin_8c_source.html":[31,0,146],
+"www__plugin_8h.html":[31,0,147],
+"www__plugin_8h.html#a05218b821edab542795439a87ad9d909":[31,0,147,2],
+"www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b":[31,0,147,5],
+"www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374":[31,0,147,3],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9":[31,0,147,0],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4":[31,0,147,0,3],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569":[31,0,147,0,1],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd":[31,0,147,0,2],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b":[31,0,147,0,4],
+"www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c":[31,0,147,0,0],
+"www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32":[31,0,147,1],
+"www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d":[31,0,147,4],
+"www__plugin_8h_source.html":[31,0,147],
+"www__utils_8c.html":[31,0,148],
+"www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf":[31,0,148,1],
+"www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c":[31,0,148,3],
+"www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa":[31,0,148,0],
+"www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069":[31,0,148,4],
+"www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc":[31,0,148,2],
+"www__utils_8c_source.html":[31,0,148],
+"www__utils_8h.html":[31,0,149],
+"www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c":[31,0,149,3],
+"www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa":[31,0,149,0],
+"www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27":[31,0,149,1],
+"www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc":[31,0,149,2],
+"www__utils_8h_source.html":[31,0,149]
+};
diff --git a/docs/navtreeindex15.js b/docs/navtreeindex15.js
new file mode 100644
index 000000000..79083877e
--- /dev/null
+++ b/docs/navtreeindex15.js
@@ -0,0 +1,24 @@
+var NAVTREEINDEX15 =
+{
+"xdmcp__plugin_8c.html":[31,0,150],
+"xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba":[31,0,150,6],
+"xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d":[31,0,150,18],
+"xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26":[31,0,150,5],
+"xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0":[31,0,150,7],
+"xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f":[31,0,150,17],
+"xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8":[31,0,150,3],
+"xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,150,2],
+"xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694":[31,0,150,11],
+"xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632":[31,0,150,14],
+"xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7":[31,0,150,9],
+"xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c":[31,0,150,10],
+"xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1":[31,0,150,15],
+"xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,150,16],
+"xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe":[31,0,150,1],
+"xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5":[31,0,150,13],
+"xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a":[31,0,150,19],
+"xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277":[31,0,150,8],
+"xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903":[31,0,150,4],
+"xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2":[31,0,150,12],
+"xdmcp__plugin_8c_source.html":[31,0,150]
+};
diff --git a/docs/navtreeindex2.js b/docs/navtreeindex2.js
new file mode 100644
index 000000000..cfe3bc665
--- /dev/null
+++ b/docs/navtreeindex2.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX2 =
+{
+"rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4":[31,0,19,26],
+"rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715":[31,0,19,132],
+"rcw_8c.html#af8d1a8843f974fb8170d76f945a72080":[31,0,19,124],
+"rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93":[31,0,19,82],
+"rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292":[31,0,19,86],
+"rcw_8c.html#afcbac7a8924d543a58039037837710ba":[31,0,19,17],
+"rcw_8c.html#afec9666876babf3ae115fade7470915e":[31,0,19,96],
+"rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47":[31,0,19,65],
+"rcw_8c_source.html":[31,0,19],
+"rcw_8h.html":[31,0,20],
+"rcw_8h.html#a188e61c274e65626077c95e5f426c296":[31,0,20,4],
+"rcw_8h.html#a1b7a771392e15e527005305e71cc2546":[31,0,20,12],
+"rcw_8h.html#a2450dfe27d3ded59370ea879419f307f":[31,0,20,6],
+"rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc":[31,0,20,6,1],
+"rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b":[31,0,20,6,0],
+"rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b":[31,0,20,11],
+"rcw_8h.html#a4204fcd726a60493b290dd5590ec693d":[31,0,20,15],
+"rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec":[31,0,20,5],
+"rcw_8h.html#a4c54d77416105f6b094796316f5360a2":[31,0,20,2],
+"rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7":[31,0,20,7],
+"rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5":[31,0,20,14],
+"rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4":[31,0,20,9],
+"rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff":[31,0,20,13],
+"rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7":[31,0,20,10],
+"rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7":[31,0,20,3],
+"rcw_8h.html#aee06df544a91184cba1fe77c6991065a":[31,0,20,8],
+"rcw_8h_source.html":[31,0,20],
+"rdp__channels_8c.html":[31,0,21],
+"rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d":[31,0,21,1],
+"rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12":[31,0,21,0],
+"rdp__channels_8c_source.html":[31,0,21],
+"rdp__channels_8h.html":[31,0,22],
+"rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d":[31,0,22,1],
+"rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a":[31,0,22,0],
+"rdp__channels_8h_source.html":[31,0,22],
+"rdp__cliprdr_8c.html":[31,0,23],
+"rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5":[31,0,23,25],
+"rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4":[31,0,23,22],
+"rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42":[31,0,23,21],
+"rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5":[31,0,23,8],
+"rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489":[31,0,23,15],
+"rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d":[31,0,23,11],
+"rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3":[31,0,23,14],
+"rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365":[31,0,23,3],
+"rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772":[31,0,23,1],
+"rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4":[31,0,23,10],
+"rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859":[31,0,23,0],
+"rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b":[31,0,23,19],
+"rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d":[31,0,23,6],
+"rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf":[31,0,23,5],
+"rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea":[31,0,23,9],
+"rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8":[31,0,23,23],
+"rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b":[31,0,23,16],
+"rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130":[31,0,23,2],
+"rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5":[31,0,23,13],
+"rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca":[31,0,23,12],
+"rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3":[31,0,23,4],
+"rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3":[31,0,23,24],
+"rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934":[31,0,23,18],
+"rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f":[31,0,23,7],
+"rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173":[31,0,23,26],
+"rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945":[31,0,23,17],
+"rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054":[31,0,23,20],
+"rdp__cliprdr_8c_source.html":[31,0,23],
+"rdp__cliprdr_8h.html":[31,0,24],
+"rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d":[31,0,24,6],
+"rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365":[31,0,24,2],
+"rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff":[31,0,24,0],
+"rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf":[31,0,24,4],
+"rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130":[31,0,24,1],
+"rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3":[31,0,24,3],
+"rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f":[31,0,24,5],
+"rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173":[31,0,24,7],
+"rdp__cliprdr_8h_source.html":[31,0,24],
+"rdp__event_8c.html":[31,0,25],
+"rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c":[31,0,25,28],
+"rdp__event_8c.html#a064c56982a401aff33a8c723eb157016":[31,0,25,4],
+"rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5":[31,0,25,30],
+"rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6":[31,0,25,11],
+"rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554":[31,0,25,27],
+"rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c":[31,0,25,29],
+"rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945":[31,0,25,22],
+"rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a":[31,0,25,12],
+"rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89":[31,0,25,37],
+"rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8":[31,0,25,32],
+"rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e":[31,0,25,5],
+"rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225":[31,0,25,13],
+"rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f":[31,0,25,8],
+"rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c":[31,0,25,34],
+"rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0":[31,0,25,10],
+"rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5":[31,0,25,19],
+"rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6":[31,0,25,39],
+"rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497":[31,0,25,38],
+"rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc":[31,0,25,35],
+"rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466":[31,0,25,20],
+"rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58":[31,0,25,15],
+"rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9":[31,0,25,36],
+"rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461":[31,0,25,7],
+"rdp__event_8c.html#a789ec99777755da7cae468216a74095a":[31,0,25,2],
+"rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469":[31,0,25,18],
+"rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81":[31,0,25,24],
+"rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2":[31,0,25,0],
+"rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65":[31,0,25,26],
+"rdp__event_8c.html#abe98674433c473136ccd28aab85a7748":[31,0,25,1],
+"rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23":[31,0,25,21],
+"rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024":[31,0,25,17],
+"rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe":[31,0,25,31],
+"rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c":[31,0,25,14],
+"rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31":[31,0,25,40],
+"rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580":[31,0,25,6],
+"rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56":[31,0,25,16],
+"rdp__event_8c.html#adaaf3de8342309cc52668f318a473350":[31,0,25,25],
+"rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde":[31,0,25,41],
+"rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325":[31,0,25,23],
+"rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc":[31,0,25,3],
+"rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca":[31,0,25,9],
+"rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332":[31,0,25,33],
+"rdp__event_8c_source.html":[31,0,25],
+"rdp__event_8h.html":[31,0,26],
+"rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c":[31,0,26,5],
+"rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497":[31,0,26,8],
+"rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc":[31,0,26,6],
+"rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9":[31,0,26,7],
+"rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81":[31,0,26,2],
+"rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe":[31,0,26,4],
+"rdp__event_8h.html#adaaf3de8342309cc52668f318a473350":[31,0,26,3],
+"rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325":[31,0,26,1],
+"rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc":[31,0,26,0],
+"rdp__event_8h_source.html":[31,0,26],
+"rdp__file_8c.html":[31,0,27],
+"rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642":[31,0,27,4],
+"rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b":[31,0,27,0],
+"rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310":[31,0,27,2],
+"rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce":[31,0,27,6],
+"rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313":[31,0,27,5],
+"rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c":[31,0,27,3],
+"rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229":[31,0,27,1],
+"rdp__file_8c_source.html":[31,0,27],
+"rdp__file_8h.html":[31,0,28],
+"rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b":[31,0,28,0],
+"rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310":[31,0,28,1],
+"rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c":[31,0,28,2],
+"rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b":[31,0,28,3],
+"rdp__file_8h_source.html":[31,0,28],
+"rdp__graphics_8c.html":[31,0,29],
+"rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718":[31,0,29,0],
+"rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e":[31,0,29,5],
+"rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c":[31,0,29,15],
+"rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c":[31,0,29,7],
+"rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9":[31,0,29,8],
+"rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e":[31,0,29,3],
+"rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1":[31,0,29,16],
+"rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129":[31,0,29,11],
+"rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6":[31,0,29,13],
+"rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633":[31,0,29,2],
+"rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d":[31,0,29,1],
+"rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a":[31,0,29,14],
+"rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3":[31,0,29,6],
+"rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747":[31,0,29,12],
+"rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28":[31,0,29,4],
+"rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce":[31,0,29,9],
+"rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f":[31,0,29,10],
+"rdp__graphics_8c_source.html":[31,0,29],
+"rdp__graphics_8h.html":[31,0,30],
+"rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1":[31,0,30,0],
+"rdp__graphics_8h_source.html":[31,0,30],
+"rdp__plugin_8c.html":[31,0,31],
+"rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43":[31,0,31,19],
+"rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e":[31,0,31,20],
+"rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b":[31,0,31,29],
+"rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789":[31,0,31,18],
+"rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde":[31,0,31,31],
+"rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5":[31,0,31,24],
+"rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0":[31,0,31,12],
+"rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f":[31,0,31,37],
+"rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4":[31,0,31,30],
+"rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76":[31,0,31,5],
+"rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4":[31,0,31,40],
+"rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1":[31,0,31,44],
+"rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf":[31,0,31,26],
+"rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f":[31,0,31,49],
+"rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc":[31,0,31,50],
+"rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54":[31,0,31,14],
+"rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19":[31,0,31,4],
+"rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619":[31,0,31,47],
+"rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,31,2],
+"rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5":[31,0,31,15],
+"rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7":[31,0,31,39],
+"rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797":[31,0,31,23],
+"rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243":[31,0,31,35],
+"rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5":[31,0,31,1],
+"rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7":[31,0,31,25],
+"rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309":[31,0,31,9],
+"rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591":[31,0,31,0],
+"rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579":[31,0,31,8],
+"rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5":[31,0,31,34],
+"rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1":[31,0,31,36],
+"rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29":[31,0,31,32],
+"rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a":[31,0,31,42],
+"rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30":[31,0,31,7],
+"rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,31,41],
+"rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901":[31,0,31,27],
+"rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626":[31,0,31,38],
+"rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2":[31,0,31,11],
+"rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31":[31,0,31,21],
+"rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f":[31,0,31,28],
+"rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046":[31,0,31,17],
+"rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f":[31,0,31,6],
+"rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e":[31,0,31,45],
+"rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc":[31,0,31,16],
+"rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f":[31,0,31,43],
+"rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9":[31,0,31,13],
+"rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b":[31,0,31,10],
+"rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b":[31,0,31,33],
+"rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676":[31,0,31,3],
+"rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66":[31,0,31,46],
+"rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba":[31,0,31,48],
+"rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af":[31,0,31,22],
+"rdp__plugin_8c_source.html":[31,0,31],
+"rdp__plugin_8h.html":[31,0,32],
+"rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6":[31,0,32,18],
+"rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe":[31,0,32,18,3],
+"rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc":[31,0,32,18,0],
+"rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad":[31,0,32,18,2],
+"rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7":[31,0,32,18,1],
+"rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf":[31,0,32,16],
+"rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16":[31,0,32,14],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072":[31,0,32,21],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c":[31,0,32,21,4],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7":[31,0,32,21,2],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b":[31,0,32,21,5],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000":[31,0,32,21,7],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe":[31,0,32,21,3],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e":[31,0,32,21,0],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9":[31,0,32,21,1],
+"rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f":[31,0,32,21,6],
+"rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433":[31,0,32,26],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed":[31,0,32,20],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232":[31,0,32,20,0],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068":[31,0,32,20,2],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56":[31,0,32,20,4],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2":[31,0,32,20,1],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49":[31,0,32,20,3],
+"rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522":[31,0,32,20,5],
+"rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1":[31,0,32,11],
+"rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098":[31,0,32,23],
+"rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35":[31,0,32,19],
+"rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4":[31,0,32,19,0],
+"rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48":[31,0,32,19,1],
+"rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267":[31,0,32,10]
+};
diff --git a/docs/navtreeindex3.js b/docs/navtreeindex3.js
new file mode 100644
index 000000000..bb373e3de
--- /dev/null
+++ b/docs/navtreeindex3.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX3 =
+{
+"rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a":[31,0,32,15],
+"rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,32,28],
+"rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea":[31,0,32,13],
+"rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb":[31,0,32,27],
+"rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc":[31,0,32,24],
+"rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336":[31,0,32,9],
+"rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580":[31,0,32,22],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7":[31,0,32,17],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05":[31,0,32,17,6],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6":[31,0,32,17,4],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03":[31,0,32,17,7],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b":[31,0,32,17,5],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b":[31,0,32,17,2],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f":[31,0,32,17,1],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2":[31,0,32,17,0],
+"rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50":[31,0,32,17,3],
+"rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7":[31,0,32,25],
+"rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94":[31,0,32,12],
+"rdp__plugin_8h_source.html":[31,0,32],
+"rdp__settings_8c.html":[31,0,33],
+"rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35":[31,0,33,17],
+"rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc":[31,0,33,13],
+"rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c":[31,0,33,5],
+"rdp__settings_8c.html#a407235521d446266678392af62bd05a2":[31,0,33,7],
+"rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444":[31,0,33,21],
+"rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d":[31,0,33,9],
+"rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4":[31,0,33,3],
+"rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c":[31,0,33,6],
+"rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485":[31,0,33,15],
+"rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63":[31,0,33,20],
+"rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c":[31,0,33,12],
+"rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222":[31,0,33,18],
+"rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7":[31,0,33,11],
+"rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5":[31,0,33,4],
+"rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea":[31,0,33,8],
+"rdp__settings_8c.html#acf37368f3376add8547723d13443cccb":[31,0,33,14],
+"rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13":[31,0,33,19],
+"rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53":[31,0,33,16],
+"rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463":[31,0,33,10],
+"rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b":[31,0,33,2],
+"rdp__settings_8c_source.html":[31,0,33],
+"rdp__settings_8h.html":[31,0,34],
+"rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87":[31,0,34,2],
+"rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c":[31,0,34,0],
+"rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c":[31,0,34,1],
+"rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53":[31,0,34,3],
+"rdp__settings_8h_source.html":[31,0,34],
+"remmina_8c.html":[31,0,35],
+"remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97":[31,0,35,1],
+"remmina_8c.html#a1ecec6e37469e2e927a612747269587c":[31,0,35,0],
+"remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a":[31,0,35,4],
+"remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5":[31,0,35,8],
+"remmina_8c.html#a3d760300165528383af409d2964d79d2":[31,0,35,5],
+"remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104":[31,0,35,6],
+"remmina_8c.html#a9e8319f901232eb5fada98335217979c":[31,0,35,3],
+"remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae":[31,0,35,7],
+"remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914":[31,0,35,2],
+"remmina_8c_source.html":[31,0,35],
+"remmina_8h.html":[31,0,36],
+"remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1":[31,0,36,0],
+"remmina_8h_source.html":[31,0,36],
+"remmina__about_8c.html":[31,0,37],
+"remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4":[31,0,37,0],
+"remmina__about_8c_source.html":[31,0,37],
+"remmina__about_8h.html":[31,0,38],
+"remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8":[31,0,38,0],
+"remmina__about_8h_source.html":[31,0,38],
+"remmina__applet__menu_8c.html":[31,0,39],
+"remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6":[31,0,39,8],
+"remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596":[31,0,39,15],
+"remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23":[31,0,39,5],
+"remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5":[31,0,39,9],
+"remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66":[31,0,39,12],
+"remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8":[31,0,39,6],
+"remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb":[31,0,39,4],
+"remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f":[31,0,39,7],
+"remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751":[31,0,39,13],
+"remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872":[31,0,39,10],
+"remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce":[31,0,39,2],
+"remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8":[31,0,39,1],
+"remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7":[31,0,39,0],
+"remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2":[31,0,39,11],
+"remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe":[31,0,39,14],
+"remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366":[31,0,39,3],
+"remmina__applet__menu_8c_source.html":[31,0,39],
+"remmina__applet__menu_8h.html":[31,0,40],
+"remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197":[31,0,40,7],
+"remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23":[31,0,40,6],
+"remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66":[31,0,40,9],
+"remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d":[31,0,40,2],
+"remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb":[31,0,40,5],
+"remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3":[31,0,40,5,0],
+"remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2":[31,0,40,5,1],
+"remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16":[31,0,40,5,2],
+"remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751":[31,0,40,10],
+"remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a":[31,0,40,3],
+"remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872":[31,0,40,8],
+"remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423":[31,0,40,4],
+"remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe":[31,0,40,11],
+"remmina__applet__menu_8h_source.html":[31,0,40],
+"remmina__applet__menu__item_8c.html":[31,0,41],
+"remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08":[31,0,41,2],
+"remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701":[31,0,41,1],
+"remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96":[31,0,41,4],
+"remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f":[31,0,41,0],
+"remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0":[31,0,41,3],
+"remmina__applet__menu__item_8c_source.html":[31,0,41],
+"remmina__applet__menu__item_8h.html":[31,0,42],
+"remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08":[31,0,42,5],
+"remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5":[31,0,42,3],
+"remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727":[31,0,42,4],
+"remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1":[31,0,42,4,2],
+"remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3":[31,0,42,4,1],
+"remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572":[31,0,42,4,0],
+"remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96":[31,0,42,7],
+"remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef":[31,0,42,6],
+"remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3":[31,0,42,2],
+"remmina__applet__menu__item_8h_source.html":[31,0,42],
+"remmina__avahi_8c.html":[31,0,43],
+"remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7":[31,0,43,2],
+"remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d":[31,0,43,1],
+"remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71":[31,0,43,7],
+"remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436":[31,0,43,3],
+"remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f":[31,0,43,5],
+"remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30":[31,0,43,8],
+"remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9":[31,0,43,4],
+"remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de":[31,0,43,6],
+"remmina__avahi_8c_source.html":[31,0,43],
+"remmina__avahi_8h.html":[31,0,44],
+"remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71":[31,0,44,5],
+"remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436":[31,0,44,3],
+"remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663":[31,0,44,1],
+"remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30":[31,0,44,6],
+"remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba":[31,0,44,2],
+"remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392":[31,0,44,4],
+"remmina__avahi_8h_source.html":[31,0,44],
+"remmina__chat__window_8c.html":[31,0,45],
+"remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457":[31,0,45,2],
+"remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70":[31,0,45,7],
+"remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e":[31,0,45,3],
+"remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022":[31,0,45,6],
+"remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87":[31,0,45,10],
+"remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a":[31,0,45,9],
+"remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f":[31,0,45,5],
+"remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50":[31,0,45,8],
+"remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9":[31,0,45,4],
+"remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007":[31,0,45,0],
+"remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f":[31,0,45,1],
+"remmina__chat__window_8c_source.html":[31,0,45],
+"remmina__chat__window_8h.html":[31,0,46],
+"remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022":[31,0,46,6],
+"remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782":[31,0,46,4],
+"remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f":[31,0,46,5],
+"remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4":[31,0,46,3],
+"remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446":[31,0,46,2],
+"remmina__chat__window_8h_source.html":[31,0,46],
+"remmina__crypt_8c.html":[31,0,47],
+"remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9":[31,0,47,0],
+"remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1":[31,0,47,1],
+"remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171":[31,0,47,2],
+"remmina__crypt_8c_source.html":[31,0,47],
+"remmina__crypt_8h.html":[31,0,48],
+"remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9":[31,0,48,1],
+"remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d":[31,0,48,0],
+"remmina__crypt_8h_source.html":[31,0,48],
+"remmina__exec_8c.html":[31,0,49],
+"remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a":[31,0,49,0],
+"remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271":[31,0,49,6],
+"remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7":[31,0,49,5],
+"remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9":[31,0,49,8],
+"remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3":[31,0,49,7],
+"remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31":[31,0,49,3],
+"remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f":[31,0,49,1],
+"remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305":[31,0,49,2],
+"remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d":[31,0,49,4],
+"remmina__exec_8c_source.html":[31,0,49],
+"remmina__exec_8h.html":[31,0,50],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c":[31,0,50,0],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7":[31,0,50,0,3],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d":[31,0,50,0,4],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224":[31,0,50,0,0],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a":[31,0,50,0,10],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704":[31,0,50,0,2],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06":[31,0,50,0,7],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885":[31,0,50,0,8],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad":[31,0,50,0,9],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8":[31,0,50,0,11],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b":[31,0,50,0,6],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65":[31,0,50,0,5],
+"remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5":[31,0,50,0,1],
+"remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7":[31,0,50,3],
+"remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9":[31,0,50,5],
+"remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31":[31,0,50,2],
+"remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f":[31,0,50,4],
+"remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5":[31,0,50,1],
+"remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51":[31,0,50,1,0],
+"remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284":[31,0,50,1,1],
+"remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40":[31,0,50,1,2],
+"remmina__exec_8h_source.html":[31,0,50],
+"remmina__ext__exec_8c.html":[31,0,51],
+"remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7":[31,0,51,0],
+"remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd":[31,0,51,1],
+"remmina__ext__exec_8c_source.html":[31,0,51],
+"remmina__ext__exec_8h.html":[31,0,52],
+"remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7":[31,0,52,1],
+"remmina__ext__exec_8h_source.html":[31,0,52],
+"remmina__external__tools_8c.html":[31,0,53],
+"remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d":[31,0,53,0],
+"remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60":[31,0,53,1],
+"remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71":[31,0,53,2],
+"remmina__external__tools_8c_source.html":[31,0,53],
+"remmina__external__tools_8h.html":[31,0,54],
+"remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85":[31,0,54,0],
+"remmina__external__tools_8h_source.html":[31,0,54],
+"remmina__file_8c.html":[31,0,55],
+"remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99":[31,0,55,0],
+"remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331":[31,0,55,10],
+"remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d":[31,0,55,28],
+"remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5":[31,0,55,23],
+"remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c":[31,0,55,24],
+"remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5":[31,0,55,3],
+"remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6":[31,0,55,26],
+"remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960":[31,0,55,27],
+"remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66":[31,0,55,11],
+"remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014":[31,0,55,25],
+"remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60":[31,0,55,4],
+"remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4":[31,0,55,2],
+"remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892":[31,0,55,16],
+"remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6":[31,0,55,22],
+"remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954":[31,0,55,21],
+"remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f":[31,0,55,12],
+"remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7":[31,0,55,18],
+"remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e":[31,0,55,14],
+"remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe":[31,0,55,8],
+"remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114":[31,0,55,19],
+"remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7":[31,0,55,6],
+"remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343":[31,0,55,1],
+"remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e":[31,0,55,15],
+"remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e":[31,0,55,7],
+"remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d":[31,0,55,9],
+"remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a":[31,0,55,13],
+"remmina__file_8c.html#adab087b7139756f029020a87a5438cfa":[31,0,55,17],
+"remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c":[31,0,55,20],
+"remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03":[31,0,55,5],
+"remmina__file_8c_source.html":[31,0,55],
+"remmina__file_8h.html":[31,0,56],
+"remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b":[31,0,56,21],
+"remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331":[31,0,56,15],
+"remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5":[31,0,56,27],
+"remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c":[31,0,56,28]
+};
diff --git a/docs/navtreeindex4.js b/docs/navtreeindex4.js
new file mode 100644
index 000000000..fc773211b
--- /dev/null
+++ b/docs/navtreeindex4.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX4 =
+{
+"remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5":[31,0,56,8],
+"remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66":[31,0,56,16],
+"remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014":[31,0,56,29],
+"remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60":[31,0,56,9],
+"remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4":[31,0,56,7],
+"remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892":[31,0,56,20],
+"remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6":[31,0,56,26],
+"remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954":[31,0,56,25],
+"remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7":[31,0,56,22],
+"remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e":[31,0,56,18],
+"remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe":[31,0,56,13],
+"remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e":[31,0,56,3],
+"remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a":[31,0,56,5],
+"remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe":[31,0,56,1],
+"remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e":[31,0,56,4],
+"remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930":[31,0,56,2],
+"remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114":[31,0,56,23],
+"remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7":[31,0,56,11],
+"remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343":[31,0,56,6],
+"remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e":[31,0,56,19],
+"remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e":[31,0,56,12],
+"remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d":[31,0,56,14],
+"remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a":[31,0,56,17],
+"remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c":[31,0,56,24],
+"remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03":[31,0,56,10],
+"remmina__file_8h_source.html":[31,0,56],
+"remmina__file__editor_8c.html":[31,0,57],
+"remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23":[31,0,57,12],
+"remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9":[31,0,57,7],
+"remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06":[31,0,57,27],
+"remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb":[31,0,57,3],
+"remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b":[31,0,57,19],
+"remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd":[31,0,57,43],
+"remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b":[31,0,57,21],
+"remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16":[31,0,57,36],
+"remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056":[31,0,57,22],
+"remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea":[31,0,57,10],
+"remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a":[31,0,57,42],
+"remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4":[31,0,57,2],
+"remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e":[31,0,57,35],
+"remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9":[31,0,57,40],
+"remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38":[31,0,57,6],
+"remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f":[31,0,57,20],
+"remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d":[31,0,57,16],
+"remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25":[31,0,57,31],
+"remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b":[31,0,57,5],
+"remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b":[31,0,57,33],
+"remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019":[31,0,57,39],
+"remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7":[31,0,57,37],
+"remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d":[31,0,57,23],
+"remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05":[31,0,57,1],
+"remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e":[31,0,57,25],
+"remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf":[31,0,57,26],
+"remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea":[31,0,57,28],
+"remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3":[31,0,57,30],
+"remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1":[31,0,57,17],
+"remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067":[31,0,57,41],
+"remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb":[31,0,57,29],
+"remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23":[31,0,57,18],
+"remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de":[31,0,57,0],
+"remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad":[31,0,57,34],
+"remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca":[31,0,57,38],
+"remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877":[31,0,57,14],
+"remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257":[31,0,57,4],
+"remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556":[31,0,57,11],
+"remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae":[31,0,57,15],
+"remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5":[31,0,57,13],
+"remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89":[31,0,57,8],
+"remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355":[31,0,57,9],
+"remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b":[31,0,57,24],
+"remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6":[31,0,57,32],
+"remmina__file__editor_8c_source.html":[31,0,57],
+"remmina__file__editor_8h.html":[31,0,58],
+"remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06":[31,0,58,10],
+"remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498":[31,0,58,2],
+"remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056":[31,0,58,6],
+"remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e":[31,0,58,8],
+"remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf":[31,0,58,9],
+"remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea":[31,0,58,11],
+"remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb":[31,0,58,12],
+"remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530":[31,0,58,4],
+"remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f":[31,0,58,7],
+"remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208":[31,0,58,3],
+"remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257":[31,0,58,5],
+"remmina__file__editor_8h_source.html":[31,0,58],
+"remmina__file__manager_8c.html":[31,0,59],
+"remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798":[31,0,59,3],
+"remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66":[31,0,59,1],
+"remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3":[31,0,59,2],
+"remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d":[31,0,59,5],
+"remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a":[31,0,59,7],
+"remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857":[31,0,59,4],
+"remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5":[31,0,59,0],
+"remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9":[31,0,59,9],
+"remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab":[31,0,59,8],
+"remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482":[31,0,59,10],
+"remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72":[31,0,59,6],
+"remmina__file__manager_8c_source.html":[31,0,59],
+"remmina__file__manager_8h.html":[31,0,60],
+"remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90":[31,0,60,1],
+"remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798":[31,0,60,3],
+"remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d":[31,0,60,5],
+"remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a":[31,0,60,7],
+"remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857":[31,0,60,4],
+"remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5":[31,0,60,2],
+"remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab":[31,0,60,8],
+"remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72":[31,0,60,6],
+"remmina__file__manager_8h_source.html":[31,0,60],
+"remmina__filezilla__sftp_8sh.html":[31,0,61],
+"remmina__filezilla__sftp_8sh_source.html":[31,0,61],
+"remmina__filezilla__sftp__pki_8sh.html":[31,0,62],
+"remmina__filezilla__sftp__pki_8sh_source.html":[31,0,62],
+"remmina__ftp__client_8c.html":[31,0,63],
+"remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb":[31,0,63,52],
+"remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510":[31,0,63,54],
+"remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b":[31,0,63,30],
+"remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43":[31,0,63,17],
+"remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969":[31,0,63,53],
+"remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a":[31,0,63,37],
+"remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f":[31,0,63,48],
+"remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e":[31,0,63,40],
+"remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba":[31,0,63,31],
+"remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89":[31,0,63,22],
+"remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3":[31,0,63,47],
+"remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa":[31,0,63,43],
+"remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed":[31,0,63,21],
+"remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141":[31,0,63,41],
+"remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488":[31,0,63,16],
+"remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c":[31,0,63,32],
+"remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5":[31,0,63,58],
+"remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1":[31,0,63,24],
+"remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2":[31,0,63,13],
+"remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715":[31,0,63,14],
+"remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8":[31,0,63,35],
+"remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4":[31,0,63,23],
+"remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a":[31,0,63,59],
+"remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6":[31,0,63,15],
+"remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee":[31,0,63,19],
+"remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372":[31,0,63,18],
+"remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854":[31,0,63,39],
+"remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7":[31,0,63,57],
+"remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4":[31,0,63,33],
+"remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447":[31,0,63,10],
+"remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696":[31,0,63,25],
+"remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc":[31,0,63,36],
+"remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c":[31,0,63,3],
+"remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc":[31,0,63,38],
+"remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b":[31,0,63,12],
+"remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10":[31,0,63,42],
+"remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406":[31,0,63,56],
+"remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291":[31,0,63,9],
+"remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939":[31,0,63,26],
+"remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30":[31,0,63,2],
+"remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185":[31,0,63,11],
+"remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d":[31,0,63,44],
+"remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce":[31,0,63,8],
+"remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114":[31,0,63,7],
+"remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0":[31,0,63,5],
+"remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03":[31,0,63,6],
+"remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64":[31,0,63,4],
+"remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd":[31,0,63,55],
+"remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac":[31,0,63,46],
+"remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6":[31,0,63,51],
+"remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36":[31,0,63,49],
+"remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805":[31,0,63,34],
+"remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f":[31,0,63,50],
+"remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b":[31,0,63,27],
+"remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286":[31,0,63,45],
+"remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc":[31,0,63,29],
+"remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf":[31,0,63,28],
+"remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd":[31,0,63,20],
+"remmina__ftp__client_8c_source.html":[31,0,63],
+"remmina__ftp__client_8h.html":[31,0,64],
+"remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a":[31,0,64,25],
+"remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad":[31,0,64,21],
+"remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca":[31,0,64,23],
+"remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c":[31,0,64,24],
+"remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7":[31,0,64,22],
+"remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069":[31,0,64,4],
+"remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f":[31,0,64,46],
+"remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e":[31,0,64,40],
+"remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3":[31,0,64,45],
+"remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa":[31,0,64,43],
+"remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed":[31,0,64,37],
+"remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141":[31,0,64,42],
+"remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920":[31,0,64,41],
+"remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b":[31,0,64,6],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2":[31,0,64,15],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284":[31,0,64,16],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c":[31,0,64,13],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50":[31,0,64,14],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96":[31,0,64,11],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98":[31,0,64,17],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b":[31,0,64,10],
+"remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e":[31,0,64,12],
+"remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7":[31,0,64,50],
+"remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc":[31,0,64,39],
+"remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24":[31,0,64,19],
+"remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19":[31,0,64,20],
+"remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d":[31,0,64,18],
+"remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4":[31,0,64,3],
+"remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a":[31,0,64,5],
+"remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d":[31,0,64,44],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed":[31,0,64,35],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe":[31,0,64,32],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf":[31,0,64,33],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2":[31,0,64,30],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e":[31,0,64,34],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342":[31,0,64,28],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae":[31,0,64,29],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356":[31,0,64,26],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba":[31,0,64,27],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625":[31,0,64,31],
+"remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24":[31,0,64,36],
+"remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd":[31,0,64,49],
+"remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6":[31,0,64,48],
+"remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8":[31,0,64,9],
+"remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5":[31,0,64,8],
+"remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0":[31,0,64,7],
+"remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f":[31,0,64,47],
+"remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc":[31,0,64,38],
+"remmina__ftp__client_8h_source.html":[31,0,64],
+"remmina__icon_8c.html":[31,0,65],
+"remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735":[31,0,65,19],
+"remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1":[31,0,65,4],
+"remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f":[31,0,65,16],
+"remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6":[31,0,65,8],
+"remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833":[31,0,65,14],
+"remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0":[31,0,65,3],
+"remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d":[31,0,65,20],
+"remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71":[31,0,65,2],
+"remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5":[31,0,65,1],
+"remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56":[31,0,65,15],
+"remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0":[31,0,65,21],
+"remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497":[31,0,65,9],
+"remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93":[31,0,65,13],
+"remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6":[31,0,65,5],
+"remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83":[31,0,65,12],
+"remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404":[31,0,65,18],
+"remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae":[31,0,65,7],
+"remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d":[31,0,65,10],
+"remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2":[31,0,65,17],
+"remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129":[31,0,65,11],
+"remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58":[31,0,65,6],
+"remmina__icon_8c_source.html":[31,0,65],
+"remmina__icon_8h.html":[31,0,66],
+"remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1":[31,0,66,0],
+"remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6":[31,0,66,3],
+"remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d":[31,0,66,5],
+"remmina__icon_8h.html#a741c81815e562f40672c4485172306d6":[31,0,66,1]
+};
diff --git a/docs/navtreeindex5.js b/docs/navtreeindex5.js
new file mode 100644
index 000000000..4ce427bc6
--- /dev/null
+++ b/docs/navtreeindex5.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX5 =
+{
+"remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae":[31,0,66,2],
+"remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2":[31,0,66,4],
+"remmina__icon_8h_source.html":[31,0,66],
+"remmina__key__chooser_8c.html":[31,0,67],
+"remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46":[31,0,67,0],
+"remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f":[31,0,67,2],
+"remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94":[31,0,67,3],
+"remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474":[31,0,67,1],
+"remmina__key__chooser_8c_source.html":[31,0,67],
+"remmina__key__chooser_8h.html":[31,0,68],
+"remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27":[31,0,68,1],
+"remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f":[31,0,68,3],
+"remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36":[31,0,68,4],
+"remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474":[31,0,68,2],
+"remmina__key__chooser_8h_source.html":[31,0,68],
+"remmina__log_8c.html":[31,0,69],
+"remmina__log_8c.html#a070042aa580b708536dc793336722660":[31,0,69,15],
+"remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd":[31,0,69,14],
+"remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c":[31,0,69,5],
+"remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1":[31,0,69,6],
+"remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe":[31,0,69,3],
+"remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b":[31,0,69,11],
+"remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a":[31,0,69,16],
+"remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d":[31,0,69,12],
+"remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1":[31,0,69,8],
+"remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e":[31,0,69,13],
+"remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5":[31,0,69,10],
+"remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a":[31,0,69,4],
+"remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8":[31,0,69,9],
+"remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa":[31,0,69,7],
+"remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19":[31,0,69,2],
+"remmina__log_8c_source.html":[31,0,69],
+"remmina__log_8h.html":[31,0,70],
+"remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683":[31,0,70,4],
+"remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5":[31,0,70,3],
+"remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a":[31,0,70,0],
+"remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8":[31,0,70,2],
+"remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa":[31,0,70,1],
+"remmina__log_8h_source.html":[31,0,70],
+"remmina__main_8c.html":[31,0,71],
+"remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df":[31,0,71,67],
+"remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1":[31,0,71,33],
+"remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6":[31,0,71,35],
+"remmina__main_8c.html#a0c32fe66988056b353220128611b9116":[31,0,71,51],
+"remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a":[31,0,71,39],
+"remmina__main_8c.html#a10e574723222f5df9db456977e62a093":[31,0,71,42],
+"remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657":[31,0,71,62],
+"remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d":[31,0,71,65],
+"remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277":[31,0,71,49],
+"remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5":[31,0,71,28],
+"remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0":[31,0,71,30],
+"remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193":[31,0,71,17],
+"remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2":[31,0,71,12],
+"remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7":[31,0,71,29],
+"remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66":[31,0,71,72],
+"remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db":[31,0,71,54],
+"remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302":[31,0,71,55],
+"remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1":[31,0,71,41],
+"remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e":[31,0,71,13],
+"remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c":[31,0,71,53],
+"remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2":[31,0,71,69],
+"remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af":[31,0,71,45],
+"remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a":[31,0,71,38],
+"remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a":[31,0,71,75],
+"remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc":[31,0,71,48],
+"remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24":[31,0,71,76],
+"remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd":[31,0,71,15],
+"remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d":[31,0,71,40],
+"remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427":[31,0,71,61],
+"remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92":[31,0,71,37],
+"remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a":[31,0,71,50],
+"remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0":[31,0,71,66],
+"remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6":[31,0,71,24],
+"remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7":[31,0,71,19],
+"remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c":[31,0,71,14],
+"remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e":[31,0,71,21],
+"remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9":[31,0,71,57],
+"remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f":[31,0,71,9],
+"remmina__main_8c.html#a802458852abacebfb16f1f4295806a01":[31,0,71,64],
+"remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497":[31,0,71,26],
+"remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d":[31,0,71,8],
+"remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79":[31,0,71,60],
+"remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda":[31,0,71,79],
+"remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12":[31,0,71,81],
+"remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c":[31,0,71,11],
+"remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12":[31,0,71,10],
+"remmina__main_8c.html#aa20963aed43242994c88d5a97a546355":[31,0,71,71],
+"remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296":[31,0,71,27],
+"remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2":[31,0,71,58],
+"remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc":[31,0,71,32],
+"remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32":[31,0,71,47],
+"remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c":[31,0,71,78],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b":[31,0,71,2],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c":[31,0,71,1],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445":[31,0,71,0],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb":[31,0,71,5],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f":[31,0,71,3],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d":[31,0,71,6],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4":[31,0,71,7],
+"remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756":[31,0,71,4],
+"remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5":[31,0,71,73],
+"remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800":[31,0,71,20],
+"remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d":[31,0,71,52],
+"remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89":[31,0,71,80],
+"remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8":[31,0,71,46],
+"remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10":[31,0,71,18],
+"remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1":[31,0,71,44],
+"remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229":[31,0,71,34],
+"remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766":[31,0,71,59],
+"remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee":[31,0,71,70],
+"remmina__main_8c.html#ac767825cb87a34531306cfb587216d20":[31,0,71,22],
+"remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9":[31,0,71,16],
+"remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40":[31,0,71,68],
+"remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7":[31,0,71,74],
+"remmina__main_8c.html#adf073486149762f547504020484bff70":[31,0,71,56],
+"remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc":[31,0,71,36],
+"remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc":[31,0,71,43],
+"remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4":[31,0,71,25],
+"remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3":[31,0,71,77],
+"remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01":[31,0,71,31],
+"remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f":[31,0,71,63],
+"remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300":[31,0,71,23],
+"remmina__main_8c_source.html":[31,0,71],
+"remmina__main_8h.html":[31,0,72],
+"remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1":[31,0,72,8],
+"remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6":[31,0,72,10],
+"remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7":[31,0,72,6],
+"remmina__main_8h.html#a0c32fe66988056b353220128611b9116":[31,0,72,26],
+"remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a":[31,0,72,14],
+"remmina__main_8h.html#a10e574723222f5df9db456977e62a093":[31,0,72,17],
+"remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277":[31,0,72,24],
+"remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc":[31,0,72,5],
+"remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1":[31,0,72,16],
+"remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052":[31,0,72,3],
+"remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c":[31,0,72,28],
+"remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af":[31,0,72,20],
+"remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a":[31,0,72,13],
+"remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a":[31,0,72,31],
+"remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc":[31,0,72,23],
+"remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d":[31,0,72,15],
+"remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92":[31,0,72,12],
+"remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a":[31,0,72,25],
+"remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8":[31,0,72,4],
+"remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5":[31,0,72,29],
+"remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc":[31,0,72,7],
+"remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32":[31,0,72,22],
+"remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d":[31,0,72,27],
+"remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8":[31,0,72,21],
+"remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1":[31,0,72,19],
+"remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229":[31,0,72,9],
+"remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1":[31,0,72,2],
+"remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7":[31,0,72,30],
+"remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc":[31,0,72,11],
+"remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc":[31,0,72,18],
+"remmina__main_8h_source.html":[31,0,72],
+"remmina__marshals_8c.html":[31,0,73],
+"remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b":[31,0,73,1],
+"remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99":[31,0,73,0],
+"remmina__marshals_8c_source.html":[31,0,73],
+"remmina__marshals_8h.html":[31,0,74],
+"remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384":[31,0,74,0],
+"remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761":[31,0,74,1],
+"remmina__marshals_8h_source.html":[31,0,74],
+"remmina__masterthread__exec_8c.html":[31,0,75],
+"remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d":[31,0,75,0],
+"remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4":[31,0,75,3],
+"remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e":[31,0,75,4],
+"remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0":[31,0,75,5],
+"remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c":[31,0,75,2],
+"remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f":[31,0,75,1],
+"remmina__masterthread__exec_8c_source.html":[31,0,75],
+"remmina__masterthread__exec_8h.html":[31,0,76],
+"remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d":[31,0,76,2],
+"remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850":[31,0,76,4],
+"remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e":[31,0,76,1],
+"remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c":[31,0,76,3],
+"remmina__masterthread__exec_8h_source.html":[31,0,76],
+"remmina__message__panel_8c.html":[31,0,77],
+"remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901":[31,0,77,8],
+"remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4":[31,0,77,5],
+"remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f":[31,0,77,9],
+"remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9":[31,0,77,3],
+"remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55":[31,0,77,12],
+"remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa":[31,0,77,6],
+"remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d":[31,0,77,10],
+"remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c":[31,0,77,11],
+"remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4":[31,0,77,4],
+"remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062":[31,0,77,2],
+"remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407":[31,0,77,15],
+"remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953":[31,0,77,19],
+"remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e":[31,0,77,1],
+"remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c":[31,0,77,20],
+"remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434":[31,0,77,16],
+"remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667":[31,0,77,14],
+"remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32":[31,0,77,18],
+"remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff":[31,0,77,7],
+"remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40":[31,0,77,13],
+"remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620":[31,0,77,17],
+"remmina__message__panel_8c_source.html":[31,0,77],
+"remmina__message__panel_8h.html":[31,0,78],
+"remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901":[31,0,78,16],
+"remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4":[31,0,78,13],
+"remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156":[31,0,78,11],
+"remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f":[31,0,78,17],
+"remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa":[31,0,78,14],
+"remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d":[31,0,78,18],
+"remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4":[31,0,78,12],
+"remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407":[31,0,78,22],
+"remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294":[31,0,78,19],
+"remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434":[31,0,78,23],
+"remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a":[31,0,78,0],
+"remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667":[31,0,78,21],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7":[31,0,78,6],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6":[31,0,78,2],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7":[31,0,78,8],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3":[31,0,78,9],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25":[31,0,78,1],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779":[31,0,78,7],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725":[31,0,78,5],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a":[31,0,78,3],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e":[31,0,78,4],
+"remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a":[31,0,78,10],
+"remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32":[31,0,78,25],
+"remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff":[31,0,78,15],
+"remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40":[31,0,78,20],
+"remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620":[31,0,78,24],
+"remmina__message__panel_8h_source.html":[31,0,78],
+"remmina__mpchange_8c.html":[31,0,79],
+"remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b":[31,0,79,12],
+"remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a":[31,0,79,18],
+"remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd":[31,0,79,11],
+"remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd":[31,0,79,14],
+"remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f":[31,0,79,17],
+"remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131":[31,0,79,13],
+"remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2":[31,0,79,9],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd":[31,0,79,3],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e":[31,0,79,4],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24":[31,0,79,2],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1":[31,0,79,6],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a":[31,0,79,1],
+"remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3":[31,0,79,5],
+"remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15":[31,0,79,8],
+"remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85":[31,0,79,10],
+"remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839":[31,0,79,7],
+"remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960":[31,0,79,15],
+"remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f":[31,0,79,16],
+"remmina__mpchange_8c_source.html":[31,0,79],
+"remmina__mpchange_8h.html":[31,0,80],
+"remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed":[31,0,80,0],
+"remmina__mpchange_8h_source.html":[31,0,80]
+};
diff --git a/docs/navtreeindex6.js b/docs/navtreeindex6.js
new file mode 100644
index 000000000..ac7711c21
--- /dev/null
+++ b/docs/navtreeindex6.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX6 =
+{
+"remmina__nslookup_8sh.html":[31,0,81],
+"remmina__nslookup_8sh_source.html":[31,0,81],
+"remmina__ping_8sh.html":[31,0,82],
+"remmina__ping_8sh_source.html":[31,0,82],
+"remmina__plugin_8h.html":[31,0,83],
+"remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee":[31,0,83,0],
+"remmina__plugin_8h_source.html":[31,0,83],
+"remmina__plugin__manager_8c.html":[31,0,84],
+"remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031":[31,0,84,5],
+"remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49":[31,0,84,20],
+"remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080":[31,0,84,14],
+"remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f":[31,0,84,3],
+"remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932":[31,0,84,9],
+"remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10":[31,0,84,21],
+"remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07":[31,0,84,18],
+"remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e":[31,0,84,24],
+"remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c":[31,0,84,17],
+"remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e":[31,0,84,22],
+"remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10":[31,0,84,23],
+"remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046":[31,0,84,2],
+"remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86":[31,0,84,1],
+"remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076":[31,0,84,8],
+"remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd":[31,0,84,11],
+"remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5":[31,0,84,0],
+"remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4":[31,0,84,10],
+"remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8":[31,0,84,15],
+"remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e":[31,0,84,13],
+"remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e":[31,0,84,4],
+"remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276":[31,0,84,16],
+"remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b":[31,0,84,12],
+"remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55":[31,0,84,6],
+"remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07":[31,0,84,7],
+"remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d":[31,0,84,19],
+"remmina__plugin__manager_8c_source.html":[31,0,84],
+"remmina__plugin__manager_8h.html":[31,0,85],
+"remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a":[31,0,85,2],
+"remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031":[31,0,85,1],
+"remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080":[31,0,85,10],
+"remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f":[31,0,85,0],
+"remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932":[31,0,85,6],
+"remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10":[31,0,85,13],
+"remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18":[31,0,85,14],
+"remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076":[31,0,85,5],
+"remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd":[31,0,85,8],
+"remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4":[31,0,85,7],
+"remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276":[31,0,85,11],
+"remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b":[31,0,85,9],
+"remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55":[31,0,85,3],
+"remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07":[31,0,85,4],
+"remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d":[31,0,85,12],
+"remmina__plugin__manager_8h_source.html":[31,0,85],
+"remmina__pref_8c.html":[31,0,86],
+"remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05":[31,0,86,7],
+"remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3":[31,0,86,6],
+"remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c":[31,0,86,19],
+"remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743":[31,0,86,27],
+"remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267":[31,0,86,9],
+"remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714":[31,0,86,14],
+"remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44":[31,0,86,24],
+"remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290":[31,0,86,26],
+"remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b":[31,0,86,8],
+"remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd":[31,0,86,17],
+"remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02":[31,0,86,23],
+"remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be":[31,0,86,12],
+"remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99":[31,0,86,15],
+"remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6":[31,0,86,16],
+"remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395":[31,0,86,21],
+"remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b":[31,0,86,11],
+"remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81":[31,0,86,2],
+"remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd":[31,0,86,25],
+"remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23":[31,0,86,10],
+"remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f":[31,0,86,5],
+"remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8":[31,0,86,20],
+"remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60":[31,0,86,0],
+"remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46":[31,0,86,28],
+"remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14":[31,0,86,1],
+"remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218":[31,0,86,3],
+"remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414":[31,0,86,13],
+"remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f":[31,0,86,22],
+"remmina__pref_8c.html#aed7f3859d4306419932df15131987355":[31,0,86,18],
+"remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c":[31,0,86,4],
+"remmina__pref_8c_source.html":[31,0,86],
+"remmina__pref_8h.html":[31,0,87],
+"remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05":[31,0,87,30],
+"remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970":[31,0,87,2],
+"remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f":[31,0,87,15],
+"remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf":[31,0,87,18],
+"remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076":[31,0,87,17],
+"remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27":[31,0,87,16],
+"remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c":[31,0,87,41],
+"remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d":[31,0,87,14],
+"remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796":[31,0,87,13],
+"remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267":[31,0,87,32],
+"remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714":[31,0,87,37],
+"remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df":[31,0,87,48],
+"remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290":[31,0,87,46],
+"remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b":[31,0,87,31],
+"remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd":[31,0,87,40],
+"remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33":[31,0,87,19],
+"remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631":[31,0,87,22],
+"remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558":[31,0,87,20],
+"remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9":[31,0,87,21],
+"remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e":[31,0,87,23],
+"remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c":[31,0,87,25],
+"remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc":[31,0,87,24],
+"remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b":[31,0,87,3],
+"remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02":[31,0,87,45],
+"remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3":[31,0,87,7],
+"remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a":[31,0,87,6],
+"remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be":[31,0,87,35],
+"remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99":[31,0,87,38],
+"remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6":[31,0,87,39],
+"remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395":[31,0,87,43],
+"remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b":[31,0,87,34],
+"remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce":[31,0,87,47],
+"remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23":[31,0,87,33],
+"remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f":[31,0,87,29],
+"remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8":[31,0,87,42],
+"remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df":[31,0,87,5],
+"remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7":[31,0,87,4],
+"remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3":[31,0,87,10],
+"remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955":[31,0,87,12],
+"remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e":[31,0,87,11],
+"remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f":[31,0,87,8],
+"remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a":[31,0,87,9],
+"remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60":[31,0,87,26],
+"remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14":[31,0,87,27],
+"remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218":[31,0,87,28],
+"remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414":[31,0,87,36],
+"remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f":[31,0,87,44],
+"remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715":[31,0,87,49],
+"remmina__pref_8h_source.html":[31,0,87],
+"remmina__pref__dialog_8c.html":[31,0,88],
+"remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131":[31,0,88,10],
+"remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342":[31,0,88,5],
+"remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a":[31,0,88,2],
+"remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f":[31,0,88,14],
+"remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368":[31,0,88,15],
+"remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59":[31,0,88,8],
+"remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662":[31,0,88,1],
+"remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1":[31,0,88,12],
+"remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e":[31,0,88,9],
+"remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877":[31,0,88,7],
+"remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344":[31,0,88,4],
+"remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d":[31,0,88,13],
+"remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f":[31,0,88,11],
+"remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69":[31,0,88,6],
+"remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4":[31,0,88,0],
+"remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a":[31,0,88,3],
+"remmina__pref__dialog_8c_source.html":[31,0,88],
+"remmina__pref__dialog_8h.html":[31,0,89],
+"remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f":[31,0,89,9],
+"remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a":[31,0,89,8],
+"remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7":[31,0,89,2],
+"remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a":[31,0,89,4],
+"remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c":[31,0,89,6],
+"remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb":[31,0,89,5],
+"remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4":[31,0,89,7],
+"remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2":[31,0,89,3],
+"remmina__pref__dialog_8h_source.html":[31,0,89],
+"remmina__protocol__widget_8c.html":[31,0,90],
+"remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d":[31,0,90,19],
+"remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c":[31,0,90,86],
+"remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9":[31,0,90,7],
+"remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1":[31,0,90,33],
+"remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3":[31,0,90,10],
+"remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa":[31,0,90,80],
+"remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df":[31,0,90,49],
+"remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1":[31,0,90,23],
+"remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf":[31,0,90,99],
+"remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a":[31,0,90,87],
+"remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c":[31,0,90,73],
+"remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767":[31,0,90,94],
+"remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54":[31,0,90,78],
+"remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4":[31,0,90,90],
+"remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1":[31,0,90,55],
+"remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261":[31,0,90,85],
+"remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32":[31,0,90,15],
+"remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069":[31,0,90,39],
+"remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d":[31,0,90,92],
+"remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572":[31,0,90,101],
+"remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25":[31,0,90,37],
+"remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084":[31,0,90,64],
+"remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d":[31,0,90,67],
+"remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3":[31,0,90,51],
+"remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1":[31,0,90,47],
+"remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130":[31,0,90,104],
+"remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923":[31,0,90,41],
+"remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a":[31,0,90,71],
+"remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380":[31,0,90,83],
+"remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d":[31,0,90,96],
+"remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601":[31,0,90,69],
+"remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953":[31,0,90,18],
+"remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5":[31,0,90,9],
+"remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29":[31,0,90,36],
+"remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3":[31,0,90,50],
+"remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca":[31,0,90,70],
+"remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8":[31,0,90,82],
+"remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62":[31,0,90,54],
+"remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7":[31,0,90,34],
+"remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692":[31,0,90,16],
+"remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b":[31,0,90,57],
+"remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2":[31,0,90,20],
+"remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016":[31,0,90,12],
+"remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9":[31,0,90,17],
+"remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3":[31,0,90,31],
+"remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd":[31,0,90,58],
+"remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1":[31,0,90,53],
+"remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8":[31,0,90,98],
+"remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac":[31,0,90,35],
+"remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f":[31,0,90,26],
+"remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895":[31,0,90,68],
+"remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b":[31,0,90,66],
+"remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a":[31,0,90,103],
+"remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54":[31,0,90,27],
+"remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74":[31,0,90,22],
+"remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad":[31,0,90,63],
+"remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b":[31,0,90,65],
+"remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1":[31,0,90,4],
+"remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373":[31,0,90,5],
+"remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65":[31,0,90,5,1],
+"remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed":[31,0,90,5,2],
+"remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c":[31,0,90,5,0],
+"remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d":[31,0,90,30],
+"remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af":[31,0,90,79],
+"remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0":[31,0,90,45],
+"remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5":[31,0,90,52],
+"remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227":[31,0,90,8],
+"remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee":[31,0,90,25],
+"remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705":[31,0,90,75],
+"remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7":[31,0,90,88],
+"remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d":[31,0,90,44],
+"remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb":[31,0,90,6],
+"remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22":[31,0,90,24],
+"remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31":[31,0,90,61],
+"remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c":[31,0,90,89],
+"remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e":[31,0,90,93],
+"remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113":[31,0,90,28],
+"remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771":[31,0,90,48],
+"remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044":[31,0,90,81],
+"remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995":[31,0,90,46],
+"remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907":[31,0,90,43],
+"remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504":[31,0,90,74],
+"remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b":[31,0,90,32],
+"remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0":[31,0,90,56],
+"remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b":[31,0,90,29],
+"remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8":[31,0,90,84],
+"remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d":[31,0,90,100],
+"remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1":[31,0,90,62],
+"remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba":[31,0,90,60]
+};
diff --git a/docs/navtreeindex7.js b/docs/navtreeindex7.js
new file mode 100644
index 000000000..36980151e
--- /dev/null
+++ b/docs/navtreeindex7.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX7 =
+{
+"remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48":[31,0,90,77],
+"remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9":[31,0,90,42],
+"remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d":[31,0,90,72],
+"remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e":[31,0,90,102],
+"remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee":[31,0,90,95],
+"remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0":[31,0,90,21],
+"remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5":[31,0,90,40],
+"remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736":[31,0,90,97],
+"remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565":[31,0,90,14],
+"remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868":[31,0,90,59],
+"remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb":[31,0,90,91],
+"remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac":[31,0,90,11],
+"remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48":[31,0,90,13],
+"remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd":[31,0,90,38],
+"remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471":[31,0,90,76],
+"remmina__protocol__widget_8c_source.html":[31,0,90],
+"remmina__protocol__widget_8h.html":[31,0,91],
+"remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c":[31,0,91,65],
+"remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1":[31,0,91,15],
+"remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa":[31,0,91,59],
+"remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a":[31,0,91,66],
+"remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c":[31,0,91,52],
+"remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767":[31,0,91,72],
+"remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54":[31,0,91,57],
+"remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4":[31,0,91,69],
+"remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261":[31,0,91,64],
+"remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069":[31,0,91,21],
+"remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d":[31,0,91,70],
+"remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25":[31,0,91,19],
+"remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084":[31,0,91,43],
+"remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d":[31,0,91,46],
+"remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3":[31,0,91,32],
+"remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1":[31,0,91,30],
+"remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923":[31,0,91,23],
+"remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a":[31,0,91,50],
+"remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380":[31,0,91,62],
+"remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601":[31,0,91,48],
+"remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953":[31,0,91,6],
+"remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29":[31,0,91,18],
+"remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca":[31,0,91,49],
+"remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8":[31,0,91,61],
+"remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62":[31,0,91,35],
+"remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7":[31,0,91,16],
+"remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692":[31,0,91,4],
+"remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b":[31,0,91,36],
+"remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2":[31,0,91,7],
+"remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9":[31,0,91,5],
+"remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3":[31,0,91,13],
+"remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae":[31,0,91,41],
+"remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1":[31,0,91,34],
+"remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac":[31,0,91,17],
+"remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895":[31,0,91,47],
+"remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b":[31,0,91,45],
+"remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad":[31,0,91,42],
+"remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b":[31,0,91,44],
+"remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d":[31,0,91,12],
+"remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af":[31,0,91,58],
+"remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0":[31,0,91,28],
+"remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5":[31,0,91,33],
+"remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee":[31,0,91,10],
+"remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705":[31,0,91,54],
+"remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7":[31,0,91,67],
+"remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d":[31,0,91,26],
+"remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22":[31,0,91,9],
+"remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31":[31,0,91,39],
+"remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c":[31,0,91,68],
+"remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e":[31,0,91,71],
+"remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771":[31,0,91,31],
+"remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044":[31,0,91,60],
+"remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995":[31,0,91,29],
+"remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907":[31,0,91,25],
+"remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504":[31,0,91,53],
+"remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390":[31,0,91,2],
+"remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b":[31,0,91,14],
+"remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b":[31,0,91,11],
+"remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8":[31,0,91,63],
+"remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e":[31,0,91,27],
+"remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1":[31,0,91,40],
+"remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba":[31,0,91,38],
+"remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48":[31,0,91,56],
+"remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9":[31,0,91,24],
+"remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d":[31,0,91,51],
+"remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0":[31,0,91,8],
+"remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5":[31,0,91,22],
+"remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868":[31,0,91,37],
+"remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19":[31,0,91,3],
+"remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd":[31,0,91,20],
+"remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471":[31,0,91,55],
+"remmina__protocol__widget_8h_source.html":[31,0,91],
+"remmina__public_8c.html":[31,0,92],
+"remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0":[31,0,92,20],
+"remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf":[31,0,92,14],
+"remmina__public_8c.html#a1fac51670815da6a72700a10866c179a":[31,0,92,11],
+"remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41":[31,0,92,15],
+"remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde":[31,0,92,7],
+"remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767":[31,0,92,18],
+"remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b":[31,0,92,5],
+"remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758":[31,0,92,9],
+"remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0":[31,0,92,1],
+"remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6":[31,0,92,21],
+"remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2":[31,0,92,24],
+"remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c":[31,0,92,19],
+"remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb":[31,0,92,10],
+"remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25":[31,0,92,13],
+"remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a":[31,0,92,4],
+"remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8":[31,0,92,17],
+"remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173":[31,0,92,22],
+"remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f":[31,0,92,3],
+"remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912":[31,0,92,16],
+"remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b":[31,0,92,6],
+"remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3":[31,0,92,0],
+"remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149":[31,0,92,12],
+"remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640":[31,0,92,23],
+"remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb":[31,0,92,2],
+"remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739":[31,0,92,8],
+"remmina__public_8c_source.html":[31,0,92],
+"remmina__public_8h.html":[31,0,93],
+"remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0":[31,0,93,20],
+"remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf":[31,0,93,14],
+"remmina__public_8h.html#a1fac51670815da6a72700a10866c179a":[31,0,93,11],
+"remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41":[31,0,93,15],
+"remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde":[31,0,93,7],
+"remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767":[31,0,93,18],
+"remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b":[31,0,93,5],
+"remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758":[31,0,93,9],
+"remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0":[31,0,93,1],
+"remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6":[31,0,93,21],
+"remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2":[31,0,93,24],
+"remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c":[31,0,93,19],
+"remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb":[31,0,93,10],
+"remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25":[31,0,93,13],
+"remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8":[31,0,93,17],
+"remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173":[31,0,93,22],
+"remmina__public_8h.html#ab28356392468fbd147814f09cda6e168":[31,0,93,4],
+"remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f":[31,0,93,3],
+"remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912":[31,0,93,16],
+"remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b":[31,0,93,6],
+"remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3":[31,0,93,0],
+"remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149":[31,0,93,12],
+"remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640":[31,0,93,23],
+"remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb":[31,0,93,2],
+"remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739":[31,0,93,8],
+"remmina__public_8h_source.html":[31,0,93],
+"remmina__scheduler_8c.html":[31,0,94],
+"remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b":[31,0,94,0],
+"remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a":[31,0,94,2],
+"remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1":[31,0,94,1],
+"remmina__scheduler_8c_source.html":[31,0,94],
+"remmina__scheduler_8h.html":[31,0,95],
+"remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6":[31,0,95,1],
+"remmina__scheduler_8h_source.html":[31,0,95],
+"remmina__scrolled__viewport_8c.html":[31,0,96],
+"remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c":[31,0,96,9],
+"remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7":[31,0,96,2],
+"remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0":[31,0,96,4],
+"remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b":[31,0,96,5],
+"remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e":[31,0,96,6],
+"remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011":[31,0,96,1],
+"remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee":[31,0,96,8],
+"remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f":[31,0,96,7],
+"remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5":[31,0,96,3],
+"remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d":[31,0,96,0],
+"remmina__scrolled__viewport_8c_source.html":[31,0,96],
+"remmina__scrolled__viewport_8h.html":[31,0,97],
+"remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c":[31,0,97,6],
+"remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312":[31,0,97,4],
+"remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f":[31,0,97,2],
+"remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036":[31,0,97,3],
+"remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee":[31,0,97,5],
+"remmina__scrolled__viewport_8h_source.html":[31,0,97],
+"remmina__sftp__client_8c.html":[31,0,98],
+"remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b":[31,0,98,6],
+"remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33":[31,0,98,1],
+"remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112":[31,0,98,20],
+"remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2":[31,0,98,2],
+"remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c":[31,0,98,11],
+"remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea":[31,0,98,8],
+"remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3":[31,0,98,16],
+"remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0":[31,0,98,3],
+"remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31":[31,0,98,12],
+"remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa":[31,0,98,19],
+"remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c":[31,0,98,18],
+"remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636":[31,0,98,7],
+"remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4":[31,0,98,13],
+"remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830":[31,0,98,21],
+"remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce":[31,0,98,22],
+"remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1":[31,0,98,9],
+"remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8":[31,0,98,0],
+"remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05":[31,0,98,14],
+"remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba":[31,0,98,4],
+"remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f":[31,0,98,5],
+"remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee":[31,0,98,17],
+"remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c":[31,0,98,10],
+"remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7":[31,0,98,15],
+"remmina__sftp__client_8c_source.html":[31,0,98],
+"remmina__sftp__client_8h.html":[31,0,99],
+"remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d":[31,0,99,6],
+"remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33":[31,0,99,4],
+"remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1":[31,0,99,7],
+"remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492":[31,0,99,3],
+"remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d":[31,0,99,5],
+"remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6":[31,0,99,2],
+"remmina__sftp__client_8h_source.html":[31,0,99],
+"remmina__sftp__plugin_8c.html":[31,0,100],
+"remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4":[31,0,100,7],
+"remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9":[31,0,100,10],
+"remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab":[31,0,100,12],
+"remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917":[31,0,100,9],
+"remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2":[31,0,100,1],
+"remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863":[31,0,100,2],
+"remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855":[31,0,100,13],
+"remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,100,11],
+"remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315":[31,0,100,14],
+"remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543":[31,0,100,5],
+"remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9":[31,0,100,6],
+"remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19":[31,0,100,15],
+"remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323":[31,0,100,8],
+"remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6":[31,0,100,3],
+"remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a":[31,0,100,4],
+"remmina__sftp__plugin_8c_source.html":[31,0,100],
+"remmina__sftp__plugin_8h.html":[31,0,101],
+"remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917":[31,0,101,0],
+"remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4":[31,0,101,1],
+"remmina__sftp__plugin_8h_source.html":[31,0,101],
+"remmina__sodium_8c.html":[31,0,102],
+"remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a":[31,0,102,0],
+"remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e":[31,0,102,2],
+"remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f":[31,0,102,3],
+"remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c":[31,0,102,1],
+"remmina__sodium_8c_source.html":[31,0,102],
+"remmina__sodium_8h.html":[31,0,103],
+"remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a":[31,0,103,0],
+"remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e":[31,0,103,2],
+"remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f":[31,0,103,3],
+"remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c":[31,0,103,1],
+"remmina__sodium_8h_source.html":[31,0,103],
+"remmina__ssh_8c.html":[31,0,104],
+"remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67":[31,0,104,3],
+"remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d":[31,0,104,9],
+"remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156":[31,0,104,6],
+"remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796":[31,0,104,1],
+"remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42":[31,0,104,8],
+"remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694":[31,0,104,11],
+"remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c":[31,0,104,4],
+"remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a":[31,0,104,2],
+"remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b":[31,0,104,0],
+"remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798":[31,0,104,7],
+"remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553":[31,0,104,10],
+"remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65":[31,0,104,5],
+"remmina__ssh_8c_source.html":[31,0,104]
+};
diff --git a/docs/navtreeindex8.js b/docs/navtreeindex8.js
new file mode 100644
index 000000000..6d91c5326
--- /dev/null
+++ b/docs/navtreeindex8.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX8 =
+{
+"remmina__ssh_8h.html":[31,0,105],
+"remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330":[31,0,105,22],
+"remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188":[31,0,105,18],
+"remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b":[31,0,105,33],
+"remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d":[31,0,105,7],
+"remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2":[31,0,105,19],
+"remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d":[31,0,105,28],
+"remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06":[31,0,105,36],
+"remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d":[31,0,105,31],
+"remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84":[31,0,105,30],
+"remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e":[31,0,105,17],
+"remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286":[31,0,105,8],
+"remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01":[31,0,105,6],
+"remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53":[31,0,105,38],
+"remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924":[31,0,105,10],
+"remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33":[31,0,105,27],
+"remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102":[31,0,105,26],
+"remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42":[31,0,105,25],
+"remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1":[31,0,105,15],
+"remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f":[31,0,105,15,1],
+"remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea":[31,0,105,15,2],
+"remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735":[31,0,105,15,3],
+"remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266":[31,0,105,15,0],
+"remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca":[31,0,105,4],
+"remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9":[31,0,105,16],
+"remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b":[31,0,105,20],
+"remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91":[31,0,105,12],
+"remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14":[31,0,105,11],
+"remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459":[31,0,105,14],
+"remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326":[31,0,105,13],
+"remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798":[31,0,105,23],
+"remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4":[31,0,105,42],
+"remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553":[31,0,105,29],
+"remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d":[31,0,105,37],
+"remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508":[31,0,105,34],
+"remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146":[31,0,105,41],
+"remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02":[31,0,105,24],
+"remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f":[31,0,105,21],
+"remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4":[31,0,105,32],
+"remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2":[31,0,105,39],
+"remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909":[31,0,105,35],
+"remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38":[31,0,105,40],
+"remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea":[31,0,105,43],
+"remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc":[31,0,105,5],
+"remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0":[31,0,105,9],
+"remmina__ssh_8h_source.html":[31,0,105],
+"remmina__ssh__plugin_8c.html":[31,0,106],
+"remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f":[31,0,106,10],
+"remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4":[31,0,106,20],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c":[31,0,106,2],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56":[31,0,106,2,5],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab":[31,0,106,2,3],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c":[31,0,106,2,2],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508":[31,0,106,2,1],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5":[31,0,106,2,6],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13":[31,0,106,2,4],
+"remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4":[31,0,106,2,0],
+"remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244":[31,0,106,38],
+"remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4":[31,0,106,3],
+"remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf":[31,0,106,31],
+"remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599":[31,0,106,12],
+"remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505":[31,0,106,17],
+"remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599":[31,0,106,28],
+"remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9":[31,0,106,21],
+"remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2":[31,0,106,25],
+"remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead":[31,0,106,11],
+"remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee":[31,0,106,7],
+"remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570":[31,0,106,16],
+"remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807":[31,0,106,30],
+"remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7":[31,0,106,34],
+"remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd":[31,0,106,6],
+"remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203":[31,0,106,5],
+"remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494":[31,0,106,24],
+"remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1":[31,0,106,32],
+"remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c":[31,0,106,22],
+"remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046":[31,0,106,8],
+"remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7":[31,0,106,1],
+"remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89":[31,0,106,36],
+"remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,106,27],
+"remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0":[31,0,106,39],
+"remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f":[31,0,106,13],
+"remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5":[31,0,106,26],
+"remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0":[31,0,106,29],
+"remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229":[31,0,106,19],
+"remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19":[31,0,106,35],
+"remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718":[31,0,106,9],
+"remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc":[31,0,106,4],
+"remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146":[31,0,106,14],
+"remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce":[31,0,106,18],
+"remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb":[31,0,106,37],
+"remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146":[31,0,106,15],
+"remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173":[31,0,106,23],
+"remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f":[31,0,106,33],
+"remmina__ssh__plugin_8c_source.html":[31,0,106],
+"remmina__ssh__plugin_8h.html":[31,0,107],
+"remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505":[31,0,107,4],
+"remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9":[31,0,107,6],
+"remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146":[31,0,107,2],
+"remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec":[31,0,107,1],
+"remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce":[31,0,107,5],
+"remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146":[31,0,107,3],
+"remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9":[31,0,107,7],
+"remmina__ssh__plugin_8h_source.html":[31,0,107],
+"remmina__stats_8c.html":[31,0,108],
+"remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328":[31,0,108,1],
+"remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648":[31,0,108,12],
+"remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a":[31,0,108,8],
+"remmina__stats_8c.html#a56956b7db0c631121151b19b920176da":[31,0,108,6],
+"remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847":[31,0,108,9],
+"remmina__stats_8c.html#a7398b36347e3621772776c466b565641":[31,0,108,2],
+"remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c":[31,0,108,3],
+"remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e":[31,0,108,13],
+"remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3":[31,0,108,7],
+"remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d":[31,0,108,11],
+"remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a":[31,0,108,14],
+"remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731":[31,0,108,4],
+"remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734":[31,0,108,5],
+"remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c":[31,0,108,10],
+"remmina__stats_8c_source.html":[31,0,108],
+"remmina__stats_8h.html":[31,0,109],
+"remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae":[31,0,109,0],
+"remmina__stats_8h_source.html":[31,0,109],
+"remmina__stats__sender_8c.html":[31,0,110],
+"remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9":[31,0,110,5],
+"remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7":[31,0,110,7],
+"remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20":[31,0,110,8],
+"remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7":[31,0,110,3],
+"remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79":[31,0,110,9],
+"remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516":[31,0,110,1],
+"remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2":[31,0,110,4],
+"remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518":[31,0,110,2],
+"remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919":[31,0,110,6],
+"remmina__stats__sender_8c_source.html":[31,0,110],
+"remmina__stats__sender_8h.html":[31,0,111],
+"remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff":[31,0,111,0],
+"remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802":[31,0,111,1],
+"remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919":[31,0,111,2],
+"remmina__stats__sender_8h_source.html":[31,0,111],
+"remmina__string__array_8c.html":[31,0,112],
+"remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3":[31,0,112,8],
+"remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0":[31,0,112,0],
+"remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70":[31,0,112,10],
+"remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5":[31,0,112,1],
+"remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b":[31,0,112,9],
+"remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a":[31,0,112,6],
+"remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90":[31,0,112,7],
+"remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe":[31,0,112,3],
+"remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec":[31,0,112,11],
+"remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986":[31,0,112,2],
+"remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308":[31,0,112,4],
+"remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02":[31,0,112,5],
+"remmina__string__array_8c_source.html":[31,0,112],
+"remmina__string__array_8h.html":[31,0,113],
+"remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3":[31,0,113,7],
+"remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0":[31,0,113,0],
+"remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70":[31,0,113,9],
+"remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b":[31,0,113,8],
+"remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a":[31,0,113,5],
+"remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb":[31,0,113,11],
+"remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90":[31,0,113,6],
+"remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe":[31,0,113,2],
+"remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec":[31,0,113,10],
+"remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986":[31,0,113,1],
+"remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308":[31,0,113,3],
+"remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02":[31,0,113,4],
+"remmina__string__array_8h_source.html":[31,0,113],
+"remmina__string__list_8c.html":[31,0,114],
+"remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e":[31,0,114,3],
+"remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3":[31,0,114,7],
+"remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab":[31,0,114,1],
+"remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae":[31,0,114,6],
+"remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b":[31,0,114,4],
+"remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e":[31,0,114,11],
+"remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819":[31,0,114,2],
+"remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8":[31,0,114,13],
+"remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec":[31,0,114,0],
+"remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff":[31,0,114,12],
+"remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87":[31,0,114,10],
+"remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0":[31,0,114,9],
+"remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481":[31,0,114,5],
+"remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085":[31,0,114,8],
+"remmina__string__list_8c_source.html":[31,0,114],
+"remmina__string__list_8h.html":[31,0,115],
+"remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029":[31,0,115,6],
+"remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb":[31,0,115,4],
+"remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349":[31,0,115,3],
+"remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e":[31,0,115,9],
+"remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec":[31,0,115,5],
+"remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001":[31,0,115,2],
+"remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87":[31,0,115,8],
+"remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0":[31,0,115,7],
+"remmina__string__list_8h_source.html":[31,0,115],
+"remmina__sysinfo_8c.html":[31,0,116],
+"remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f":[31,0,116,0],
+"remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4":[31,0,116,1],
+"remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590":[31,0,116,2],
+"remmina__sysinfo_8c_source.html":[31,0,116],
+"remmina__sysinfo_8h.html":[31,0,117],
+"remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a":[31,0,117,1],
+"remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23":[31,0,117,2],
+"remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb":[31,0,117,0],
+"remmina__sysinfo_8h_source.html":[31,0,117],
+"remmina__trace__calls_8h.html":[31,0,118],
+"remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24":[31,0,118,0],
+"remmina__trace__calls_8h_source.html":[31,0,118],
+"remmina__traceroute_8sh.html":[31,0,119],
+"remmina__traceroute_8sh_source.html":[31,0,119],
+"remmina__unlock_8c.html":[31,0,120],
+"remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3":[31,0,120,5],
+"remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7":[31,0,120,7],
+"remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2":[31,0,120,3],
+"remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0":[31,0,120,8],
+"remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e":[31,0,120,1],
+"remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e":[31,0,120,4],
+"remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18":[31,0,120,0],
+"remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea":[31,0,120,6],
+"remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd":[31,0,120,2],
+"remmina__unlock_8c_source.html":[31,0,120],
+"remmina__unlock_8h.html":[31,0,121],
+"remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720":[31,0,121,1],
+"remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7":[31,0,121,2],
+"remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0":[31,0,121,4],
+"remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea":[31,0,121,3],
+"remmina__unlock_8h_source.html":[31,0,121],
+"remmina__utils_8c.html":[31,0,122],
+"remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324":[31,0,122,10],
+"remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730":[31,0,122,7],
+"remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1":[31,0,122,2],
+"remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa":[31,0,122,16],
+"remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c":[31,0,122,11],
+"remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba":[31,0,122,3],
+"remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e":[31,0,122,4],
+"remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c":[31,0,122,6],
+"remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa":[31,0,122,9],
+"remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca":[31,0,122,14],
+"remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355":[31,0,122,17],
+"remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478":[31,0,122,22],
+"remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c":[31,0,122,23],
+"remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4":[31,0,122,18],
+"remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22":[31,0,122,13],
+"remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522":[31,0,122,8],
+"remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75":[31,0,122,12],
+"remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66":[31,0,122,19],
+"remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3":[31,0,122,21],
+"remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99":[31,0,122,15],
+"remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d":[31,0,122,20],
+"remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8":[31,0,122,5],
+"remmina__utils_8c_source.html":[31,0,122],
+"remmina__utils_8h.html":[31,0,123],
+"remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324":[31,0,123,6]
+};
diff --git a/docs/navtreeindex9.js b/docs/navtreeindex9.js
new file mode 100644
index 000000000..6466b5736
--- /dev/null
+++ b/docs/navtreeindex9.js
@@ -0,0 +1,253 @@
+var NAVTREEINDEX9 =
+{
+"remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730":[31,0,123,3],
+"remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c":[31,0,123,7],
+"remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be":[31,0,123,12],
+"remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e":[31,0,123,0],
+"remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c":[31,0,123,2],
+"remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa":[31,0,123,5],
+"remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca":[31,0,123,10],
+"remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4":[31,0,123,13],
+"remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22":[31,0,123,9],
+"remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522":[31,0,123,4],
+"remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75":[31,0,123,8],
+"remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66":[31,0,123,14],
+"remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99":[31,0,123,11],
+"remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d":[31,0,123,15],
+"remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8":[31,0,123,1],
+"remmina__utils_8h_source.html":[31,0,123],
+"remmina__widget__pool_8c.html":[31,0,124],
+"remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e":[31,0,124,2],
+"remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b":[31,0,124,3],
+"remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2":[31,0,124,7],
+"remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8":[31,0,124,0],
+"remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664":[31,0,124,5],
+"remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09":[31,0,124,4],
+"remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05":[31,0,124,1],
+"remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95":[31,0,124,6],
+"remmina__widget__pool_8c_source.html":[31,0,124],
+"remmina__widget__pool_8h.html":[31,0,125],
+"remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e":[31,0,125,2],
+"remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b":[31,0,125,3],
+"remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e":[31,0,125,6],
+"remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09":[31,0,125,4],
+"remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05":[31,0,125,1],
+"remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95":[31,0,125,5],
+"remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a":[31,0,125,0],
+"remmina__widget__pool_8h_source.html":[31,0,125],
+"rmnews_8c.html":[31,0,126],
+"rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9":[31,0,126,3],
+"rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336":[31,0,126,15],
+"rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301":[31,0,126,4],
+"rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e":[31,0,126,6],
+"rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce":[31,0,126,11],
+"rmnews_8c.html#a565782499953048b5e51934123195e29":[31,0,126,13],
+"rmnews_8c.html#a59416d6e8999802e8b145b0338331081":[31,0,126,5],
+"rmnews_8c.html#a7825b2c9facea97439f5780d83e86798":[31,0,126,1],
+"rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a":[31,0,126,9],
+"rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814":[31,0,126,8],
+"rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12":[31,0,126,16],
+"rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38":[31,0,126,7],
+"rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00":[31,0,126,0],
+"rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4":[31,0,126,2],
+"rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d":[31,0,126,14],
+"rmnews_8c.html#af4777302c760225b833206545e9f437d":[31,0,126,12],
+"rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe":[31,0,126,10],
+"rmnews_8c_source.html":[31,0,126],
+"rmnews_8h.html":[31,0,127],
+"rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e":[31,0,127,2],
+"rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af":[31,0,127,4],
+"rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709":[31,0,127,1],
+"rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888":[31,0,127,3],
+"rmnews_8h_source.html":[31,0,127],
+"spice__plugin_8c.html":[31,0,128],
+"spice__plugin_8c.html#a0524df751040673aec5d62839c76a438":[31,0,128,11],
+"spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb":[31,0,128,10],
+"spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998":[31,0,128,22],
+"spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe":[31,0,128,9],
+"spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb":[31,0,128,13],
+"spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660":[31,0,128,19],
+"spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4":[31,0,128,18],
+"spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,128,6],
+"spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a":[31,0,128,17],
+"spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81":[31,0,128,25],
+"spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d":[31,0,128,15],
+"spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9":[31,0,128,20],
+"spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,128,21],
+"spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317":[31,0,128,14],
+"spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b":[31,0,128,7],
+"spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4":[31,0,128,16],
+"spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c":[31,0,128,24],
+"spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2":[31,0,128,8],
+"spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c":[31,0,128,12],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28":[31,0,128,5],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7":[31,0,128,1],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa":[31,0,128,4],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278":[31,0,128,3],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1":[31,0,128,0],
+"spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d":[31,0,128,2],
+"spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409":[31,0,128,23],
+"spice__plugin_8c_source.html":[31,0,128],
+"spice__plugin_8h.html":[31,0,129],
+"spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368":[31,0,129,1],
+"spice__plugin_8h_source.html":[31,0,129],
+"spice__plugin__file__transfer_8c.html":[31,0,130],
+"spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9":[31,0,130,5],
+"spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38":[31,0,130,8],
+"spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02":[31,0,130,1],
+"spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249":[31,0,130,2],
+"spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b":[31,0,130,6],
+"spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668":[31,0,130,4],
+"spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a":[31,0,130,3],
+"spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19":[31,0,130,7],
+"spice__plugin__file__transfer_8c_source.html":[31,0,130],
+"spice__plugin__usb_8c.html":[31,0,131],
+"spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b":[31,0,131,0],
+"spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b":[31,0,131,1],
+"spice__plugin__usb_8c_source.html":[31,0,131],
+"st__plugin_8c.html":[31,0,132],
+"st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a":[31,0,132,14],
+"st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4":[31,0,132,1],
+"st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01":[31,0,132,8],
+"st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d":[31,0,132,4],
+"st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99":[31,0,132,9],
+"st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208":[31,0,132,2],
+"st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1":[31,0,132,12],
+"st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7":[31,0,132,10],
+"st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46":[31,0,132,11],
+"st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c":[31,0,132,3],
+"st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7":[31,0,132,5],
+"st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4":[31,0,132,13],
+"st__plugin_8c.html#ae829911e1c265665933ab5318f462466":[31,0,132,6],
+"st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430":[31,0,132,7],
+"st__plugin_8c_source.html":[31,0,132],
+"st__plugin__config_8h.html":[31,0,133],
+"st__plugin__config_8h_source.html":[31,0,133],
+"struct___remmina_applet_menu.html":[30,0,0],
+"struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a":[30,0,0,1],
+"struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f":[30,0,0,0],
+"struct___remmina_applet_menu_class.html":[30,0,1],
+"struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689":[30,0,1,1],
+"struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45":[30,0,1,0],
+"struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5":[30,0,1,2],
+"struct___remmina_applet_menu_item.html":[30,0,2],
+"struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e":[30,0,2,5],
+"struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4":[30,0,2,2],
+"struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e":[30,0,2,1],
+"struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa":[30,0,2,3],
+"struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674":[30,0,2,0],
+"struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c":[30,0,2,4],
+"struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3":[30,0,2,6],
+"struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3":[30,0,2,7],
+"struct___remmina_applet_menu_item_class.html":[30,0,3],
+"struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a":[30,0,3,0],
+"struct___remmina_avahi.html":[30,0,4],
+"struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675":[30,0,4,0],
+"struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e":[30,0,4,2],
+"struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb":[30,0,4,1],
+"struct___remmina_avahi_priv.html":[30,0,5],
+"struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304":[30,0,5,4],
+"struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8":[30,0,5,1],
+"struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0":[30,0,5,2],
+"struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8":[30,0,5,3],
+"struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040":[30,0,5,0],
+"struct___remmina_cell_renderer_pixbuf.html":[30,0,6],
+"struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045":[30,0,6,0],
+"struct___remmina_cell_renderer_pixbuf_class.html":[30,0,7],
+"struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1":[30,0,7,0],
+"struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279":[30,0,7,1],
+"struct___remmina_chat_window.html":[30,0,8],
+"struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c":[30,0,8,1],
+"struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29":[30,0,8,2],
+"struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea":[30,0,8,0],
+"struct___remmina_chat_window_class.html":[30,0,9],
+"struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19":[30,0,9,0],
+"struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372":[30,0,9,1],
+"struct___remmina_color_pref.html":[30,0,10],
+"struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7":[30,0,10,14],
+"struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc":[30,0,10,6],
+"struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808":[30,0,10,1],
+"struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60":[30,0,10,12],
+"struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4":[30,0,10,9],
+"struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79":[30,0,10,7],
+"struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500":[30,0,10,17],
+"struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4":[30,0,10,15],
+"struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49":[30,0,10,0],
+"struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60":[30,0,10,8],
+"struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9":[30,0,10,13],
+"struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867":[30,0,10,18],
+"struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff":[30,0,10,2],
+"struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316":[30,0,10,10],
+"struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928":[30,0,10,5],
+"struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc":[30,0,10,16],
+"struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97":[30,0,10,4],
+"struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c":[30,0,10,3],
+"struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914":[30,0,10,11],
+"struct___remmina_connection_object.html":[30,0,11],
+"struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d":[30,0,11,9],
+"struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2":[30,0,11,3],
+"struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250":[30,0,11,5],
+"struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c":[30,0,11,7],
+"struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae":[30,0,11,0],
+"struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a":[30,0,11,4],
+"struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328":[30,0,11,1],
+"struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995":[30,0,11,6],
+"struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d":[30,0,11,2],
+"struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30":[30,0,11,8],
+"struct___remmina_connection_window.html":[30,0,12],
+"struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c":[30,0,12,0],
+"struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d":[30,0,12,1],
+"struct___remmina_connection_window_class.html":[30,0,13],
+"struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab":[30,0,13,0],
+"struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d":[30,0,13,1],
+"struct___remmina_entry_plugin.html":[30,0,14],
+"struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533":[30,0,14,1],
+"struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1":[30,0,14,3],
+"struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264":[30,0,14,4],
+"struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4":[30,0,14,0],
+"struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e":[30,0,14,2],
+"struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441":[30,0,14,5],
+"struct___remmina_f_t_p_client.html":[30,0,19],
+"struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77":[30,0,19,1],
+"struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54":[30,0,19,0],
+"struct___remmina_f_t_p_client_class.html":[30,0,20],
+"struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7":[30,0,20,3],
+"struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905":[30,0,20,1],
+"struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93":[30,0,20,0],
+"struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce":[30,0,20,4],
+"struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343":[30,0,20,2],
+"struct___remmina_f_t_p_task.html":[30,0,21],
+"struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8":[30,0,21,4],
+"struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840":[30,0,21,7],
+"struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9":[30,0,21,1],
+"struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce":[30,0,21,8],
+"struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7":[30,0,21,5],
+"struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9":[30,0,21,6],
+"struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307":[30,0,21,2],
+"struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9":[30,0,21,10],
+"struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667":[30,0,21,9],
+"struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0":[30,0,21,0],
+"struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87":[30,0,21,3],
+"struct___remmina_file.html":[30,0,15],
+"struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07":[30,0,15,0],
+"struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5":[30,0,15,3],
+"struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd":[30,0,15,2],
+"struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488":[30,0,15,1],
+"struct___remmina_file_editor.html":[30,0,16],
+"struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a":[30,0,16,1],
+"struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872":[30,0,16,0],
+"struct___remmina_file_editor_class.html":[30,0,17],
+"struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f":[30,0,17,0],
+"struct___remmina_file_plugin.html":[30,0,18],
+"struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f":[30,0,18,1],
+"struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1":[30,0,18,0],
+"struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494":[30,0,18,8],
+"struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8":[30,0,18,9],
+"struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6":[30,0,18,7],
+"struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03":[30,0,18,4],
+"struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1":[30,0,18,2],
+"struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4":[30,0,18,6],
+"struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f":[30,0,18,3],
+"struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7":[30,0,18,5],
+"struct___remmina_group_data.html":[30,0,22]
+};
diff --git a/docs/nx__plugin_8c.html b/docs/nx__plugin_8c.html
new file mode 100644
index 000000000..5c514b3c2
--- /dev/null
+++ b/docs/nx__plugin_8c.html
@@ -0,0 +1,1176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">nx_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9ba8e968998b64b3832e484a2ca7dfc1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a> (struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</td></tr>
+<tr class="separator:a9ba8e968998b64b3832e484a2ca7dfc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dea604d34a804e23a5cd8a6683d9e49"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a> (gpointer data)</td></tr>
+<tr class="separator:a5dea604d34a804e23a5cd8a6683d9e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a390e3b371156197feb518b737a31cc53"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a> (struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</td></tr>
+<tr class="separator:a390e3b371156197feb518b737a31cc53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31b9185763acddffe0bbdef41380bf43"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">onMainThread_gtk_socket_add_id</a> (GtkSocket *sk, Window w)</td></tr>
+<tr class="separator:a31b9185763acddffe0bbdef41380bf43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c034c5e70f4c327eaab63bbd9c9edef"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">remmina_plugin_nx_try_window_id</a> (Window window_id)</td></tr>
+<tr class="separator:a4c034c5e70f4c327eaab63bbd9c9edef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38661931521f9b3472c6d76b6c201105"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">remmina_plugin_nx_remove_window_id</a> (Window window_id)</td></tr>
+<tr class="separator:a38661931521f9b3472c6d76b6c201105"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f17900103bf5e4dfa17ad0c185faf06"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">remmina_plugin_nx_on_plug_added</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9f17900103bf5e4dfa17ad0c185faf06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ad082d04b9e0e374b58d98e8474821e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">remmina_plugin_nx_on_plug_removed</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9ad082d04b9e0e374b58d98e8474821e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3154460257b0cccadad068cff973ce30"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">remmina_plugin_nx_ssh_auth_callback</a> (gchar **passphrase, gpointer userdata)</td></tr>
+<tr class="separator:a3154460257b0cccadad068cff973ce30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65c4ca70de2ad9bc56a0c2a3cf2e8123"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">remmina_plugin_nx_on_proxy_exit</a> (GPid pid, gint status, gpointer data)</td></tr>
+<tr class="separator:a65c4ca70de2ad9bc56a0c2a3cf2e8123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4a4c9b55ff6b6b1ffe2acefbf49199d"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">remmina_plugin_nx_dummy_handler</a> (Display *dsp, XErrorEvent *err)</td></tr>
+<tr class="separator:ad4a4c9b55ff6b6b1ffe2acefbf49199d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4b790bf7e413fa815f636c1b0fcbe23"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">remmina_plugin_nx_start_create_notify</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae4b790bf7e413fa815f636c1b0fcbe23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb6030365c211465628de098dca1ac17"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">remmina_plugin_nx_monitor_create_notify</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *cmd)</td></tr>
+<tr class="separator:aeb6030365c211465628de098dca1ac17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a259295f4bce4182ccc132e958ea7eb56"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">remmina_plugin_nx_wait_signal</a> (<a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a> *gpdata)</td></tr>
+<tr class="separator:a259295f4bce4182ccc132e958ea7eb56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa471a4e13385a583efb610d33fd9a1b5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">remmina_plugin_nx_start_session</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa471a4e13385a583efb610d33fd9a1b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aada1c6767dcc37e55c4b4ce3b5d8ebdf"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">remmina_plugin_nx_main</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aada1c6767dcc37e55c4b4ce3b5d8ebdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a747a6fa8ff786ff6539d664ad6e38046"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">remmina_plugin_nx_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a747a6fa8ff786ff6539d664ad6e38046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79807a1c2a499d75b83d267b8c08cd7e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a79807a1c2a499d75b83d267b8c08cd7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24d40a7cb7e890449902b5970ab50707"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a24d40a7cb7e890449902b5970ab50707"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89f57765ecdaf9ce7ee896dc16cd268a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a89f57765ecdaf9ce7ee896dc16cd268a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7107dd5c7dad8e647489abb6650ed6e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">remmina_plugin_nx_send_ctrlaltdel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab7107dd5c7dad8e647489abb6650ed6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f6e5136c200aefda845bb8979babbad"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a5f6e5136c200aefda845bb8979babbad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c538a1cbd6efdd4989ae9e142a2de4e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a3c538a1cbd6efdd4989ae9e142a2de4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a014fb78d715a43890b4d6c720b97a278"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278">remmina_plugin_nx</a></td></tr>
+<tr class="separator:a014fb78d715a43890b4d6c720b97a278"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8bb68a7a80a23d5a13203b813ff18bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a> = NULL</td></tr>
+<tr class="separator:af8bb68a7a80a23d5a13203b813ff18bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e2a04444e5b0f130329705d4a3b8ec0"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a> = &quot;pc102/us&quot;</td></tr>
+<tr class="separator:a5e2a04444e5b0f130329705d4a3b8ec0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73d6717ebcde73fb3bedf42f9551adbd"><td class="memItemLeft" align="right" valign="top">static pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a></td></tr>
+<tr class="separator:a73d6717ebcde73fb3bedf42f9551adbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a808b6bebe5102ad2b80a15224e30ff4f"><td class="memItemLeft" align="right" valign="top">static GArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a></td></tr>
+<tr class="separator:a808b6bebe5102ad2b80a15224e30ff4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a> []</td></tr>
+<tr class="separator:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a354592d1041bee12f9de4522d446be"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a> []</td></tr>
+<tr class="separator:a5a354592d1041bee12f9de4522d446be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5037031066cbbf12246587ea27fb508"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a> []</td></tr>
+<tr class="separator:af5037031066cbbf12246587ea27fb508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a6925a5bf78cac68ce04d1fe8293e9f"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a> []</td></tr>
+<tr class="separator:a4a6925a5bf78cac68ce04d1fe8293e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a9ba8e968998b64b3832e484a2ca7dfc1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ba8e968998b64b3832e484a2ca7dfc1">&#9670;&nbsp;</a></span>onMainThread_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean onMainThread_cb </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00080">80</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5dea604d34a804e23a5cd8a6683d9e49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5dea604d34a804e23a5cd8a6683d9e49">&#9670;&nbsp;</a></span>onMainThread_cleanup_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void onMainThread_cleanup_handler </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00098">98</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a31b9185763acddffe0bbdef41380bf43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31b9185763acddffe0bbdef41380bf43">&#9670;&nbsp;</a></span>onMainThread_gtk_socket_add_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void onMainThread_gtk_socket_add_id </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>sk</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Window&#160;</td>
+ <td class="paramname"><em>w</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00122">122</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a390e3b371156197feb518b737a31cc53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a390e3b371156197feb518b737a31cc53">&#9670;&nbsp;</a></span>onMainThread_schedule_callback_and_wait()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void onMainThread_schedule_callback_and_wait </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00106">106</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00777">777</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3c538a1cbd6efdd4989ae9e142a2de4e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c538a1cbd6efdd4989ae9e142a2de4e">&#9670;&nbsp;</a></span>remmina_plugin_nx_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00683">683</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a89f57765ecdaf9ce7ee896dc16cd268a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a89f57765ecdaf9ce7ee896dc16cd268a">&#9670;&nbsp;</a></span>remmina_plugin_nx_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00629">629</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4a4c9b55ff6b6b1ffe2acefbf49199d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4a4c9b55ff6b6b1ffe2acefbf49199d">&#9670;&nbsp;</a></span>remmina_plugin_nx_dummy_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int remmina_plugin_nx_dummy_handler </td>
+ <td>(</td>
+ <td class="paramtype">Display *&#160;</td>
+ <td class="paramname"><em>dsp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">XErrorEvent *&#160;</td>
+ <td class="paramname"><em>err</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00221">221</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a79807a1c2a499d75b83d267b8c08cd7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79807a1c2a499d75b83d267b8c08cd7e">&#9670;&nbsp;</a></span>remmina_plugin_nx_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00571">571</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aada1c6767dcc37e55c4b4ce3b5d8ebdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aada1c6767dcc37e55c4b4ce3b5d8ebdf">&#9670;&nbsp;</a></span>remmina_plugin_nx_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_main </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00538">538</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a747a6fa8ff786ff6539d664ad6e38046"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a747a6fa8ff786ff6539d664ad6e38046">&#9670;&nbsp;</a></span>remmina_plugin_nx_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_plugin_nx_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00558">558</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aeb6030365c211465628de098dca1ac17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb6030365c211465628de098dca1ac17">&#9670;&nbsp;</a></span>remmina_plugin_nx_monitor_create_notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_monitor_create_notify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>cmd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00243">243</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9f17900103bf5e4dfa17ad0c185faf06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f17900103bf5e4dfa17ad0c185faf06">&#9670;&nbsp;</a></span>remmina_plugin_nx_on_plug_added()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_on_plug_added </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00182">182</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ad082d04b9e0e374b58d98e8474821e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ad082d04b9e0e374b58d98e8474821e">&#9670;&nbsp;</a></span>remmina_plugin_nx_on_plug_removed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_on_plug_removed </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00188">188</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a65c4ca70de2ad9bc56a0c2a3cf2e8123"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65c4ca70de2ad9bc56a0c2a3cf2e8123">&#9670;&nbsp;</a></span>remmina_plugin_nx_on_proxy_exit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_on_proxy_exit </td>
+ <td>(</td>
+ <td class="paramtype">GPid&#160;</td>
+ <td class="paramname"><em>pid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00213">213</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a24d40a7cb7e890449902b5970ab50707"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24d40a7cb7e890449902b5970ab50707">&#9670;&nbsp;</a></span>remmina_plugin_nx_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00597">597</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f6e5136c200aefda845bb8979babbad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f6e5136c200aefda845bb8979babbad">&#9670;&nbsp;</a></span>remmina_plugin_nx_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00677">677</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a38661931521f9b3472c6d76b6c201105"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38661931521f9b3472c6d76b6c201105">&#9670;&nbsp;</a></span>remmina_plugin_nx_remove_window_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_remove_window_id </td>
+ <td>(</td>
+ <td class="paramtype">Window&#160;</td>
+ <td class="paramname"><em>window_id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00163">163</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab7107dd5c7dad8e647489abb6650ed6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7107dd5c7dad8e647489abb6650ed6e">&#9670;&nbsp;</a></span>remmina_plugin_nx_send_ctrlaltdel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_nx_send_ctrlaltdel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00667">667</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3154460257b0cccadad068cff973ce30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3154460257b0cccadad068cff973ce30">&#9670;&nbsp;</a></span>remmina_plugin_nx_ssh_auth_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_nx_ssh_auth_callback </td>
+ <td>(</td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>passphrase</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00194">194</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4b790bf7e413fa815f636c1b0fcbe23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4b790bf7e413fa815f636c1b0fcbe23">&#9670;&nbsp;</a></span>remmina_plugin_nx_start_create_notify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_start_create_notify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00227">227</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa471a4e13385a583efb610d33fd9a1b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa471a4e13385a583efb610d33fd9a1b5">&#9670;&nbsp;</a></span>remmina_plugin_nx_start_session()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_start_session </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00310">310</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4c034c5e70f4c327eaab63bbd9c9edef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c034c5e70f4c327eaab63bbd9c9edef">&#9670;&nbsp;</a></span>remmina_plugin_nx_try_window_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_nx_try_window_id </td>
+ <td>(</td>
+ <td class="paramtype">Window&#160;</td>
+ <td class="paramname"><em>window_id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00142">142</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a259295f4bce4182ccc132e958ea7eb56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a259295f4bce4182ccc132e958ea7eb56">&#9670;&nbsp;</a></span>remmina_plugin_nx_wait_signal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_plugin_nx_wait_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a> *&#160;</td>
+ <td class="paramname"><em>gpdata</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00296">296</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a64254af45bb17a5a40a3a0383daa3fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64254af45bb17a5a40a3a0383daa3fe7">&#9670;&nbsp;</a></span>quality_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer quality_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00696">696</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e2a04444e5b0f130329705d4a3b8ec0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e2a04444e5b0f130329705d4a3b8ec0">&#9670;&nbsp;</a></span>remmina_kbtype</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_kbtype = &quot;pc102/us&quot;</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a73d6717ebcde73fb3bedf42f9551adbd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73d6717ebcde73fb3bedf42f9551adbd">&#9670;&nbsp;</a></span>remmina_nx_init_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t remmina_nx_init_mutex</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00063">63</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a808b6bebe5102ad2b80a15224e30ff4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a808b6bebe5102ad2b80a15224e30ff4f">&#9670;&nbsp;</a></span>remmina_nx_window_id_array</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GArray* remmina_nx_window_id_array</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00064">64</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a014fb78d715a43890b4d6c720b97a278"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a014fb78d715a43890b4d6c720b97a278">&#9670;&nbsp;</a></span>remmina_plugin_nx</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_nx</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;NX&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;NX - NX Technology&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <span class="stringliteral">&quot;remmina-nx-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-nx-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a>, </div><div class="line"> <a class="code" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a>, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5a354592d1041bee12f9de4522d446be"><div class="ttname"><a href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_nx_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00714">nx_plugin.c:714</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a3c538a1cbd6efdd4989ae9e142a2de4e"><div class="ttname"><a href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a></div><div class="ttdeci">static void remmina_plugin_nx_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00683">nx_plugin.c:683</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_af5037031066cbbf12246587ea27fb508"><div class="ttname"><a href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_nx_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00735">nx_plugin.c:735</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a24d40a7cb7e890449902b5970ab50707"><div class="ttname"><a href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00597">nx_plugin.c:597</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a79807a1c2a499d75b83d267b8c08cd7e"><div class="ttname"><a href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a></div><div class="ttdeci">static void remmina_plugin_nx_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00571">nx_plugin.c:571</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a4a6925a5bf78cac68ce04d1fe8293e9f"><div class="ttname"><a href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_nx_features[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00746">nx_plugin.c:746</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a89f57765ecdaf9ce7ee896dc16cd268a"><div class="ttname"><a href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00629">nx_plugin.c:629</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5f6e5136c200aefda845bb8979babbad"><div class="ttname"><a href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00677">nx_plugin.c:677</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00054">54</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af5037031066cbbf12246587ea27fb508"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af5037031066cbbf12246587ea27fb508">&#9670;&nbsp;</a></span>remmina_plugin_nx_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_nx_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableencryption&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable encryption&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use local cursor&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00735">735</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5a354592d1041bee12f9de4522d446be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a354592d1041bee12f9de4522d446be">&#9670;&nbsp;</a></span>remmina_plugin_nx_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_nx_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;nx_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, GINT_TO_POINTER(1), NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, <span class="stringliteral">&quot;GNOME,KDE,Xfce,Shadow&quot;</span>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00088">types.h:88</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00696">nx_plugin.c:696</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00714">714</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4a6925a5bf78cac68ce04d1fe8293e9f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a6925a5bf78cac68ce04d1fe8293e9f">&#9670;&nbsp;</a></span>remmina_plugin_nx_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_nx_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_NX_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Del&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_NX_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00746">746</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af8bb68a7a80a23d5a13203b813ff18bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8bb68a7a80a23d5a13203b813ff18bf">&#9670;&nbsp;</a></span>remmina_plugin_nx_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_nx_service = NULL</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00056">56</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__plugin_8c.html">nx_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__plugin_8c.js b/docs/nx__plugin_8c.js
new file mode 100644
index 000000000..7ea66b8c2
--- /dev/null
+++ b/docs/nx__plugin_8c.js
@@ -0,0 +1,37 @@
+var nx__plugin_8c =
+[
+ [ "onMainThread_cb_data", "structon_main_thread__cb__data.html", "structon_main_thread__cb__data" ],
+ [ "onMainThread_cb", "nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1", null ],
+ [ "onMainThread_cleanup_handler", "nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49", null ],
+ [ "onMainThread_gtk_socket_add_id", "nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43", null ],
+ [ "onMainThread_schedule_callback_and_wait", "nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53", null ],
+ [ "remmina_plugin_entry", "nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_nx_call_feature", "nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e", null ],
+ [ "remmina_plugin_nx_close_connection", "nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a", null ],
+ [ "remmina_plugin_nx_dummy_handler", "nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d", null ],
+ [ "remmina_plugin_nx_init", "nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e", null ],
+ [ "remmina_plugin_nx_main", "nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf", null ],
+ [ "remmina_plugin_nx_main_thread", "nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046", null ],
+ [ "remmina_plugin_nx_monitor_create_notify", "nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17", null ],
+ [ "remmina_plugin_nx_on_plug_added", "nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06", null ],
+ [ "remmina_plugin_nx_on_plug_removed", "nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e", null ],
+ [ "remmina_plugin_nx_on_proxy_exit", "nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123", null ],
+ [ "remmina_plugin_nx_open_connection", "nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707", null ],
+ [ "remmina_plugin_nx_query_feature", "nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad", null ],
+ [ "remmina_plugin_nx_remove_window_id", "nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105", null ],
+ [ "remmina_plugin_nx_send_ctrlaltdel", "nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e", null ],
+ [ "remmina_plugin_nx_ssh_auth_callback", "nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30", null ],
+ [ "remmina_plugin_nx_start_create_notify", "nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23", null ],
+ [ "remmina_plugin_nx_start_session", "nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5", null ],
+ [ "remmina_plugin_nx_try_window_id", "nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef", null ],
+ [ "remmina_plugin_nx_wait_signal", "nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56", null ],
+ [ "quality_list", "nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7", null ],
+ [ "remmina_kbtype", "nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0", null ],
+ [ "remmina_nx_init_mutex", "nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd", null ],
+ [ "remmina_nx_window_id_array", "nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f", null ],
+ [ "remmina_plugin_nx", "nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278", null ],
+ [ "remmina_plugin_nx_advanced_settings", "nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508", null ],
+ [ "remmina_plugin_nx_basic_settings", "nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be", null ],
+ [ "remmina_plugin_nx_features", "nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f", null ],
+ [ "remmina_plugin_nx_service", "nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__plugin_8c_source.html b/docs/nx__plugin_8c_source.html
new file mode 100644
index 000000000..11bf0bcbc
--- /dev/null
+++ b/docs/nx__plugin_8c_source.html
@@ -0,0 +1,238 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__plugin_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-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-2020 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 &lt;errno.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtkx.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;time.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define LIBSSH_STATIC 1</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;libssh/libssh.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;X11/Xlib.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;X11/XKBlib.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;X11/extensions/XKBrules.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="nx__plugin_8h.html">nx_plugin.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="nx__session__manager_8h.html">nx_session_manager.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_NX_FEATURE_TOOL_SENDCTRLALTDEL 1</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_NX_FEATURE_GTKSOCKET 1</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Forward declaration */</span></div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278"> 54</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278">remmina_plugin_nx</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf"> 56</a></span>&#160;<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a> = NULL;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0"> 58</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a> = <span class="stringliteral">&quot;pc102/us&quot;</span>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/* When more than one NX sessions is connecting in progress, we need this mutex and array</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> * to prevent them from stealing the same window ID.</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd"> 63</a></span>&#160;<span class="keyword">static</span> pthread_mutex_t <a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f"> 64</a></span>&#160;<span class="keyword">static</span> GArray *<a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* --------- Support for execution on main thread of GTK functions -------------- */</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html"> 68</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> {</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc"> 69</a></span>&#160; <span class="keyword">enum</span> { <a class="code" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">FUNC_GTK_SOCKET_ADD_ID</a> } <a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</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"><a class="line" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4"> 71</a></span>&#160; GtkSocket* <a class="code" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8"> 72</a></span>&#160; Window <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">/* Mutex for thread synchronization */</span></div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc"> 75</a></span>&#160; pthread_mutex_t <a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">/* Flag to catch cancellations */</span></div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75"> 77</a></span>&#160; gboolean <a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;};</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"><a class="line" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1"> 80</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a>(<span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;{</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> ( !d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a> ) {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">switch</span> ( d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a> ) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">case</span> <a class="code" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">FUNC_GTK_SOCKET_ADD_ID</a>:</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; gtk_socket_add_id( d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a>, d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a> );</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">break</span>;</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"> 89</span>&#160; pthread_mutex_unlock( &amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a> );</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/* Thread has been cancelled, so we must free d memory here */</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; g_free( d );</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"> 94</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49"> 98</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a>(gpointer data)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d = data;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a> = TRUE;</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;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53"> 106</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a>( <span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d )</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;{</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a> = FALSE;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; pthread_cleanup_push( <a class="code" href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a>, d );</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; pthread_mutex_init( &amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>, NULL );</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; pthread_mutex_lock( &amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a> );</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; gdk_threads_add_idle( (GSourceFunc)<a class="code" href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a>, (gpointer)d );</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; pthread_mutex_lock( &amp;d-&gt;mu );</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; pthread_cleanup_pop(0);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; pthread_mutex_unlock( &amp;d-&gt;mu );</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; pthread_mutex_destroy( &amp;d-&gt;mu );</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</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"><a class="line" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43"> 122</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">onMainThread_gtk_socket_add_id</a>( GtkSocket* <a class="code" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a>, Window <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; TRACE_CALL(__func__);</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"> 126</span>&#160; <span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d;</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; d = (<span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *)g_malloc( <span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a>) );</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a> = <a class="code" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">FUNC_GTK_SOCKET_ADD_ID</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a> = <a class="code" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a> = <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</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; <a class="code" href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a>( d );</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; g_free(d);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;}</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">/* --------------------------------------- */</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;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef"> 142</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">remmina_plugin_nx_try_window_id</a>(Window window_id)</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gint i;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; gboolean found = FALSE;</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; pthread_mutex_lock(&amp;<a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>-&gt;len; i++) {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span> (g_array_index(<a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>, Window, i) == window_id) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; found = TRUE;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">break</span>;</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"> 155</span>&#160; <span class="keywordflow">if</span> (!found) {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; g_array_append_val(<a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>, window_id);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; pthread_mutex_unlock(&amp;<a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> (!found);</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"><a class="line" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105"> 163</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">remmina_plugin_nx_remove_window_id</a>(Window window_id)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;{</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; gint i;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; gboolean found = FALSE;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; pthread_mutex_lock(&amp;<a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>-&gt;len; i++) {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (g_array_index(<a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>, Window, i) == window_id) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; found = TRUE;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">break</span>;</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="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span> (found) {</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_array_remove_index_fast(<a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a>, i);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; pthread_mutex_unlock(&amp;<a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;}</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"><a class="line" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06"> 182</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">remmina_plugin_nx_on_plug_added</a>(GtkSocket *socket, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;{</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;}</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e"> 188</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">remmina_plugin_nx_on_plug_removed</a>(GtkSocket *socket, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</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"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30"> 194</a></span>&#160;gboolean <a class="code" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">remmina_plugin_nx_ssh_auth_callback</a>(gchar **passphrase, gpointer userdata)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>*)userdata;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; gint ret;</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; <span class="comment">/* SSH passwords must not be saved */</span></div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; ret = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp, 0,</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; _(<span class="stringliteral">&quot;SSH credentials&quot;</span>), NULL,</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; NULL,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; NULL,</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; _(<span class="stringliteral">&quot;Password for private SSH key&quot;</span>));</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; *passphrase = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123"> 213</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">remmina_plugin_nx_on_proxy_exit</a>(GPid pid, gint status, gpointer data)</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;{</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>*)data;</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; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</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="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d"> 221</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">remmina_plugin_nx_dummy_handler</a>(Display *dsp, XErrorEvent *err)</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; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;}</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"><a class="line" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23"> 227</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">remmina_plugin_nx_start_create_notify</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;{</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a> = XOpenDisplay(gdk_display_get_name(gdk_display_get_default()));</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a> == NULL)</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">orig_handler</a> = XSetErrorHandler(<a class="code" href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">remmina_plugin_nx_dummy_handler</a>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; XSelectInput(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a>, XDefaultRootWindow(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a>), SubstructureNotifyMask);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17"> 243</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">remmina_plugin_nx_monitor_create_notify</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> gchar *cmd)</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; Atom atom;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; XEvent xev;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; Window <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; Atom type;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordtype">int</span> format;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> nitems, rest;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *data = NULL;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keyword">struct </span>timespec ts;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; CANCEL_DEFER</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; atom = XInternAtom(gpdata-&gt;display, <span class="stringliteral">&quot;WM_COMMAND&quot;</span>, True);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">if</span> (atom == None)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> FALSE;</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; ts.tv_sec = 0;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; ts.tv_nsec = 200000000;</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; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; pthread_testcancel();</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">while</span> (!XPending(gpdata-&gt;display)) {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; nanosleep(&amp;ts, NULL);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">continue</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"> 272</span>&#160; XNextEvent(gpdata-&gt;display, &amp;xev);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (xev.type != CreateNotify)</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; w = xev.xcreatewindow.window;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">if</span> (XGetWindowProperty(gpdata-&gt;display, w, atom, 0, 255, False, AnyPropertyType, &amp;type, &amp;format, &amp;nitems, &amp;rest,</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; &amp;data) != Success)</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">if</span> (data &amp;&amp; strstr((<span class="keywordtype">char</span>*)data, cmd) &amp;&amp; <a class="code" href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">remmina_plugin_nx_try_window_id</a>(w)) {</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; gpdata-&gt;window_id = <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; XFree(data);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span> (data)</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; XFree(data);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; }</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; XSetErrorHandler(gpdata-&gt;orig_handler);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; XCloseDisplay(gpdata-&gt;display);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; gpdata-&gt;display = 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; CANCEL_ASYNC</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;}</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56"> 296</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">remmina_plugin_nx_wait_signal</a>(<a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; fd_set <span class="keyword">set</span>;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; guchar dummy = 0;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; FD_ZERO(&amp;<span class="keyword">set</span>);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; FD_SET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0], &amp;<span class="keyword">set</span>);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; select(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0] + 1, &amp;<span class="keyword">set</span>, NULL, NULL, NULL);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">if</span> (read(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0], &amp;dummy, 1)) {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">return</span> (gint)dummy;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;}</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5"> 310</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">remmina_plugin_nx_start_session</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keyword">const</span> gchar *type, *app;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; gchar *s1, *s2;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; gint port;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; gint ret;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; gboolean is_empty_list;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; gint event_type = 0;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keyword">const</span> gchar *cs;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gint i;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; remminafile = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; nx = gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="comment">/* Connect */</span></div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <a class="code" href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a>(nx,</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableencryption&quot;</span>, FALSE) ? 0 : 1);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <a class="code" href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a>(nx, remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5">pref_get_sshtunnel_port</a>());</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a>(nx, remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>);</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; s2 = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, 22, FALSE);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (s2 == NULL) {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; }</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(s2, 22, &amp;s1, &amp;port);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; g_free(s2);</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; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a>(nx, s1, port, remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;nx_privatekey&quot;</span>),</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">remmina_plugin_nx_ssh_auth_callback</a>, <a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)) {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; g_free(s1);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> FALSE;</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_free(s1);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="comment">/* Login */</span></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; s1 = g_strdup(remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>));</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; s2 = g_strdup(remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>));</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"> 355</span>&#160; <span class="keywordflow">if</span> (s1 &amp;&amp; s2) {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; ret = <a class="code" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a>(nx, s1, s2);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; gchar *s_username, *s_password;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; disablepasswordstoring = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; ret = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a>,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; _(<span class="stringliteral">&quot;Enter NX authentication credentials&quot;</span>),</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>),</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; NULL,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; NULL);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; gboolean save;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; s_username = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a>(gp);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; s_password = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; save = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, s_username);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, s_password);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0">file_unsave_passwords</a>(remminafile);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> False;</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;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; ret = <a class="code" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a>(nx, s_username, s_password);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; g_free(s_username);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; g_free(s_password);</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; g_free(s1);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; g_free(s2);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (!ret)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">protocol_plugin_init_save_cred</a>(gp);</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="comment">/* Prepare the session type and application */</span></div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; cs = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">if</span> (!cs || g_strcmp0(cs, <span class="stringliteral">&quot;GNOME&quot;</span>) == 0) {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; type = <span class="stringliteral">&quot;unix-gnome&quot;</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; app = NULL;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; }<span class="keywordflow">else</span></div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;KDE&quot;</span>) == 0) {</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; type = <span class="stringliteral">&quot;unix-kde&quot;</span>;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; app = NULL;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }<span class="keywordflow">else</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;Xfce&quot;</span>) == 0) {</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="comment">/* NX does not know Xfce. So we simply launch the Xfce startup program. */</span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; type = <span class="stringliteral">&quot;unix-application&quot;</span>;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; app = <span class="stringliteral">&quot;startxfce4&quot;</span>;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; }<span class="keywordflow">else</span></div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;Shadow&quot;</span>) == 0) {</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; type = <span class="stringliteral">&quot;shadow&quot;</span>;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; app = NULL;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; type = <span class="stringliteral">&quot;unix-application&quot;</span>;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; app = cs;</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"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="comment">/* List sessions */</span></div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a> = (g_strcmp0(type, <span class="stringliteral">&quot;shadow&quot;</span>) == 0);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;type&quot;</span>, type);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a>) {</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;user&quot;</span>,</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>));</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;status&quot;</span>, <span class="stringliteral">&quot;suspended,running&quot;</span>);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; }</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a>(nx)) {</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; is_empty_list = !<a class="code" href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a>(nx, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">if</span> (is_empty_list &amp;&amp; !gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">manager_started</a> &amp;&amp; !gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a>) {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; event_type = <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a>;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a>(gp);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; event_type = <a class="code" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">remmina_plugin_nx_wait_signal</a>(gpdata);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">if</span> (event_type == <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>) {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">if</span> (event_type == <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>) {</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (!is_empty_list) {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; s1 = <a class="code" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(nx, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;sessionid&quot;</span>, s1);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; g_free(s1);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a>(nx)) {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <a class="code" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a>(gp);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <a class="code" href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">remmina_plugin_nx_wait_signal</a>(gpdata);</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; }</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">continue</span>;</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"> 455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; }</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="comment">/* Start, Restore or Attach, based on the setting and existing session */</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;type&quot;</span>, type);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; i = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;quality&quot;</span>, 0);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;link&quot;</span>, i &gt; 2 ? <span class="stringliteral">&quot;lan&quot;</span> : i == 2 ? <span class="stringliteral">&quot;adsl&quot;</span> : i == 1 ? <span class="stringliteral">&quot;isdn&quot;</span> : <span class="stringliteral">&quot;modem&quot;</span>);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;geometry&quot;</span>, <span class="stringliteral">&quot;%ix%i&quot;</span>,</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a>(gp),</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a>(gp));</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;keyboard&quot;</span>, <a class="code" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a>);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;client&quot;</span>, <span class="stringliteral">&quot;linux&quot;</span>);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;media&quot;</span>, <span class="stringliteral">&quot;0&quot;</span>);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;clipboard&quot;</span>,</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE) ? <span class="stringliteral">&quot;none&quot;</span> : <span class="stringliteral">&quot;both&quot;</span>);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">switch</span> (event_type) {</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordflow">case</span> <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a>:</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">if</span> (app)</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;application&quot;</span>, app);</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; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;session&quot;</span>,</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;screeninfo&quot;</span>, <span class="stringliteral">&quot;%ix%ix24+render&quot;</span>,</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resolution_width&quot;</span>, 0),</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resolution_height&quot;</span>, 0));</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; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a>(nx))</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">case</span> <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>:</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; s1 = <a class="code" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(nx, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>);</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;id&quot;</span>, s1);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; g_free(s1);</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; s1 = <a class="code" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(nx, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;display&quot;</span>, s1);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; g_free(s1);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a>(nx))</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">case</span> <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>:</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; s1 = <a class="code" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(nx, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;id&quot;</span>, s1);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; g_free(s1);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;session&quot;</span>,</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a>(nx))</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; }</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; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a>(nx))</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">remmina_plugin_nx_start_create_notify</a>(gp))</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="comment">/* nxproxy */</span></div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a>(nx, -1, <a class="code" href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">remmina_plugin_nx_on_proxy_exit</a>, gp))</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">return</span> FALSE;</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="comment">/* get the window id of the remote nxagent */</span></div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">remmina_plugin_nx_monitor_create_notify</a>(gp, <span class="stringliteral">&quot;nxagent&quot;</span>))</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="comment">/* embed it */</span></div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">onMainThread_gtk_socket_add_id</a>(GTK_SOCKET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">window_id</a>);</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;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;}</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div><div class="line"><a name="l00538"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf"> 538</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">remmina_plugin_nx_main</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;{</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; gboolean ret;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keyword">const</span> gchar *err;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a> = <a class="code" href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a>();</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; ret = <a class="code" href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">remmina_plugin_nx_start_session</a>(gp);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">if</span> (!ret) {</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; err = <a class="code" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">if</span> (err) {</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, err);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; }</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; }</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a> = 0;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;}</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046"> 558</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">remmina_plugin_nx_main_thread</a>(gpointer data)</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;{</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; CANCEL_ASYNC</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">remmina_plugin_nx_main</a>(gp)) {</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; }</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;}</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e"> 571</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;{</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; gint flags;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a>, 1);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a> = gtk_socket_new();</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>), <span class="stringliteral">&quot;plug-added&quot;</span>, G_CALLBACK(<a class="code" href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">remmina_plugin_nx_on_plug_added</a>), gp);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>), <span class="stringliteral">&quot;plug-removed&quot;</span>, G_CALLBACK(<a class="code" href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">remmina_plugin_nx_on_plug_removed</a>), gp);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">if</span> (pipe(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>)) {</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; g_print(<span class="stringliteral">&quot;Error creating pipes.\n&quot;</span>);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0] = -1;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[1] = -1;</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; flags = fcntl(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0], F_GETFL, 0);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; fcntl(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0], F_SETFL, flags | O_NONBLOCK);</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;}</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707"> 597</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">gtksocket_available</a>()) {</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; _(<span class="stringliteral">&quot;The protocol \&quot;%s\&quot; is unavailable because GtkSocket only works under X.Org.&quot;</span>),</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; remmina_plugin_nx.<a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; }</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; width = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a>(gp);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; height = remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a>(gp);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, width);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, height);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gp), width, height);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">socket_id</a> = gtk_socket_get_id(GTK_SOCKET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>));</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>, NULL, <a class="code" href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">remmina_plugin_nx_main_thread</a>, gp)) {</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="stringliteral">&quot;Failed to initialize pthread. Falling back to non-thread mode…&quot;</span>);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a> = 0;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; }</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;}</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"><a class="line" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a"> 629</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;{</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>) {</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; pthread_cancel(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>)</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; pthread_join(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>, NULL);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; }</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a>) {</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; g_source_remove(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a>);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a> = 0;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; }</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">window_id</a>) {</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <a class="code" href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">remmina_plugin_nx_remove_window_id</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">window_id</a>);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; }</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>) {</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <a class="code" href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a> = NULL;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; }</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a>) {</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; XSetErrorHandler(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">orig_handler</a>);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; XCloseDisplay(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a>);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a> = NULL;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; }</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[0]);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[1]);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;}</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="comment">/* Send CTRL+ALT+DEL keys keystrokes to the plugin socket widget */</span></div><div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e"> 667</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">remmina_plugin_nx_send_ctrlaltdel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;{</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; guint keys[] = { GDK_KEY_Control_L, GDK_KEY_Alt_L, GDK_KEY_Delete };</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; remmina_plugin_nx_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>,</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; keys, G_N_ELEMENTS(keys), GDK_KEY_PRESS | GDK_KEY_RELEASE);</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;</div><div class="line"><a name="l00677"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad"> 677</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;{</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;}</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;</div><div class="line"><a name="l00683"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e"> 683</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;{</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_NX_FEATURE_TOOL_SENDCTRLALTDEL:</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <a class="code" href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">remmina_plugin_nx_send_ctrlaltdel</a>(gp);</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; }</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;}</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;<span class="comment">/* Array of key/value pairs for quality selection */</span></div><div class="line"><a name="l00696"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7"> 696</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>[] =</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; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; NULL</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">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;<span class="comment"> * f) Setting tooltip</span></div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00714"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be"> 714</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a>[] =</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;{</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;nx_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, GINT_TO_POINTER(1), NULL },</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, <span class="stringliteral">&quot;GNOME,KDE,Xfce,Shadow&quot;</span>, NULL },</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;};</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;<span class="comment"> * f) Setting tooltip</span></div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00735"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508"> 735</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a>[] =</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;{</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableencryption&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable encryption&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use local cursor&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;};</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00746"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f"> 746</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a>[] =</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; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_NX_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Del&quot;</span>), NULL, NULL },</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_NX_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160;};</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> remmina_plugin_nx =</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160;{</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="stringliteral">&quot;NX&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;NX - NX Technology&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <span class="stringliteral">&quot;remmina-nx-symbolic&quot;</span>, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="stringliteral">&quot;remmina-nx-symbolic&quot;</span>, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <a class="code" href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <a class="code" href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <a class="code" href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <a class="code" href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <a class="code" href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <a class="code" href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <a class="code" href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <a class="code" href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; NULL <span class="comment">// Screenshot support unavailable</span></div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;};</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00777"></a><span class="lineno"><a class="line" href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 777</a></span>&#160;<a class="code" href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; Display *dpy;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; XkbRF_VarDefsRec vd;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; gchar *s;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; remmina_plugin_nx_service = service;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <span class="keywordflow">if</span> ((dpy = XkbOpenDisplay(NULL, NULL, NULL, NULL, NULL, NULL)) != NULL) {</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordflow">if</span> (XkbRF_GetNamesProp(dpy, NULL, &amp;vd)) {</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <a class="code" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a> = g_strdup_printf(<span class="stringliteral">&quot;%s/%s&quot;</span>, vd.model, vd.layout);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="keywordflow">if</span> (vd.layout)</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; XFree(vd.layout);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">if</span> (vd.model)</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; XFree(vd.model);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <span class="keywordflow">if</span> (vd.variant)</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; XFree(vd.variant);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; <span class="keywordflow">if</span> (vd.options)</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; XFree(vd.options);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; s = strchr(<a class="code" href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a>, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; <span class="keywordflow">if</span> (s)</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; *s = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <span class="comment">/* g_print(&quot;NX: Detected \&quot;%s\&quot; keyboard type\n&quot;, remmina_kbtype); */</span></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"> 805</span>&#160; XCloseDisplay(dpy);</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;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_nx)) {</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; }</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; ssh_init();</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; pthread_mutex_init(&amp;<a class="code" href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a>, NULL);</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; <a class="code" href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a> = g_array_new(FALSE, TRUE, <span class="keyword">sizeof</span>(Window));</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;}</div><div class="ttc" id="struct___remmina_plugin_nx_data_html_ab2a0f845613b6728a4e2dfef4a335256"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">_RemminaPluginNxData::nx</a></div><div class="ttdeci">RemminaNXSession * nx</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00059">nx_plugin.h:59</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_aeb6030365c211465628de098dca1ac17"><div class="ttname"><a href="nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17">remmina_plugin_nx_monitor_create_notify</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_monitor_create_notify(RemminaProtocolWidget *gp, const gchar *cmd)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00243">nx_plugin.c:243</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a6d58e7958d408e2a0abd015688ba912b"><div class="ttname"><a href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a></div><div class="ttdeci">gboolean remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00529">nx_session.c:529</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00777">nx_plugin.c:777</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1022be897e129b97a7cdf609129fc68d"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">_RemminaPluginNxData::event_pipe</a></div><div class="ttdeci">gint event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00071">nx_plugin.h:71</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a8de7b5ae6b68d7e193cd3f55704d32f7"><div class="ttname"><a href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a></div><div class="ttdeci">void remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00250">nx_session.c:250</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ac97d379b04df53ca7dc166676fcbffb5"><div class="ttname"><a href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a></div><div class="ttdeci">void remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00244">nx_session.c:244</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a2819729ddf9ffa92927a4ef7d3a6e0f8"><div class="ttname"><a href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">onMainThread_cb_data::w</a></div><div class="ttdeci">Window w</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00072">nx_plugin.c:72</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html"><div class="ttname"><a href="struct___remmina_n_x_session.html">_RemminaNXSession</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00093">nx_session.c:93</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aacd5938d1a58872644a3a68bc1cac66d"><div class="ttname"><a href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a></div><div class="ttdeci">gboolean remmina_nx_session_attach(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00753">nx_session.c:753</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a7373c5ab0ca53f54c493f9e461ae679d"><div class="ttname"><a href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a></div><div class="ttdeci">gboolean remmina_nx_session_tunnel_open(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00881">nx_session.c:881</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac432221a82ead6babe045cbf18061a0b"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">_RemminaPluginService::protocol_plugin_init_save_cred</a></div><div class="ttdeci">void(* protocol_plugin_init_save_cred)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00184">plugin.h:184</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a5e30cb652981c14d8270c31c566d95a6"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">_RemminaPluginNxData::socket</a></div><div class="ttdeci">GtkWidget * socket</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00054">nx_plugin.h:54</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc"><div class="ttname"><a href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">onMainThread_cb_data::FUNC_GTK_SOCKET_ADD_ID</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00069">nx_plugin.c:69</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a2123ed756f82d65c5c6f4062606803c6"><div class="ttname"><a href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a></div><div class="ttdeci">gboolean remmina_nx_session_start(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00746">nx_session.c:746</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ad1f2562fd244eea96de8431713bf0fd3"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">_RemminaPluginNxData::display</a></div><div class="ttdeci">Display * display</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00061">nx_plugin.h:61</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a9ad082d04b9e0e374b58d98e8474821e"><div class="ttname"><a href="nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e">remmina_plugin_nx_on_plug_removed</a></div><div class="ttdeci">static void remmina_plugin_nx_on_plug_removed(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00188">nx_plugin.c:188</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a4c034c5e70f4c327eaab63bbd9c9edef"><div class="ttname"><a href="nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef">remmina_plugin_nx_try_window_id</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_try_window_id(Window window_id)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00142">nx_plugin.c:142</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_aec544598d9e3b88543a8f2f4d042a4fc"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">_RemminaPluginNxData::window_id</a></div><div class="ttdeci">Window window_id</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00062">nx_plugin.h:62</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5dea604d34a804e23a5cd8a6683d9e49"><div class="ttname"><a href="nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a></div><div class="ttdeci">static void onMainThread_cleanup_handler(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00098">nx_plugin.c:98</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00048">nx_plugin.h:48</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad01b66a877f8c30dc4bdf1ba6f3beac0"><div class="ttname"><a href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a></div><div class="ttdeci">gboolean remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00951">nx_session.c:951</a></div></div>
+<div class="ttc" id="nx__session__manager_8h_html"><div class="ttname"><a href="nx__session__manager_8h.html">nx_session_manager.h</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a65c4ca70de2ad9bc56a0c2a3cf2e8123"><div class="ttname"><a href="nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123">remmina_plugin_nx_on_proxy_exit</a></div><div class="ttdeci">static void remmina_plugin_nx_on_proxy_exit(GPid pid, gint status, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00213">nx_plugin.c:213</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_adb992195207fc2b42f7a49890f429f82"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">_RemminaPluginNxData::manager_started</a></div><div class="ttdeci">gboolean manager_started</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00066">nx_plugin.h:66</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00088">types.h:88</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00049">nx_plugin.h:49</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ae4e7f359af598b707927c162c3c37e1e"><div class="ttname"><a href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a></div><div class="ttdeci">const gchar * remmina_nx_session_get_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00223">nx_session.c:223</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_a2d6704aa58ecc18ecc178ea418addd87"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService::protocol_plugin_send_keys_signals</a></div><div class="ttdeci">void(* protocol_plugin_send_keys_signals)(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00193">plugin.h:193</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae431bee04c6b084082394687909c83e5"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5">_RemminaPluginService::pref_get_sshtunnel_port</a></div><div class="ttdeci">gint(* pref_get_sshtunnel_port)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00209">plugin.h:209</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_ae4b790bf7e413fa815f636c1b0fcbe23"><div class="ttname"><a href="nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23">remmina_plugin_nx_start_create_notify</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_start_create_notify(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00227">nx_plugin.c:227</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a390e3b371156197feb518b737a31cc53"><div class="ttname"><a href="nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a></div><div class="ttdeci">static void onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00106">nx_plugin.c:106</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a5f094257bbcbad3dd9afd970b2de0f2e"><div class="ttname"><a href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a></div><div class="ttdeci">void remmina_nx_session_manager_start(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00235">nx_session_manager.c:235</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a8bf0f89b3c961ac28ccae9a9e1060db4"><div class="ttname"><a href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">onMainThread_cb_data::width</a></div><div class="ttdeci">gint width</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a33e8f6637275c331c86f321bf1da448c"><div class="ttname"><a href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a></div><div class="ttdeci">RemminaNXSession * remmina_nx_session_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00129">nx_session.c:129</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5a354592d1041bee12f9de4522d446be"><div class="ttname"><a href="nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be">remmina_plugin_nx_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_nx_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00714">nx_plugin.c:714</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00053">nx_plugin.h:53</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a6b2f9914552d4323f98a60e6bdcc99c4"><div class="ttname"><a href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">onMainThread_cb_data::sk</a></div><div class="ttdeci">GtkSocket * sk</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00071">nx_plugin.c:71</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a3c538a1cbd6efdd4989ae9e142a2de4e"><div class="ttname"><a href="nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e">remmina_plugin_nx_call_feature</a></div><div class="ttdeci">static void remmina_plugin_nx_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00683">nx_plugin.c:683</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_af5037031066cbbf12246587ea27fb508"><div class="ttname"><a href="nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508">remmina_plugin_nx_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_nx_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00735">nx_plugin.c:735</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a24d40a7cb7e890449902b5970ab50707"><div class="ttname"><a href="nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707">remmina_plugin_nx_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00597">nx_plugin.c:597</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5e2a04444e5b0f130329705d4a3b8ec0"><div class="ttname"><a href="nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0">remmina_kbtype</a></div><div class="ttdeci">static gchar * remmina_kbtype</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00058">nx_plugin.c:58</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ad23fdec26a110b8974c90650dfe05e54"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">_RemminaPluginNxData::attach_session</a></div><div class="ttdeci">gboolean attach_session</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00073">nx_plugin.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af2b857b2de1af3621f543b810f68b17b"><div class="ttname"><a href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService::protocol_plugin_init_get_savepassword</a></div><div class="ttdeci">gboolean(* protocol_plugin_init_get_savepassword)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00178">plugin.h:178</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a014fb78d715a43890b4d6c720b97a278"><div class="ttname"><a href="nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278">remmina_plugin_nx</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_nx</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00054">nx_plugin.c:54</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a3154460257b0cccadad068cff973ce30"><div class="ttname"><a href="nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30">remmina_plugin_nx_ssh_auth_callback</a></div><div class="ttdeci">gboolean remmina_plugin_nx_ssh_auth_callback(gchar **passphrase, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00194">nx_plugin.c:194</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa7cec91dde56b12471bbe8acd451d9d3"><div class="ttname"><a href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a></div><div class="ttdeci">void remmina_nx_session_free(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00145">nx_session.c:145</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a259295f4bce4182ccc132e958ea7eb56"><div class="ttname"><a href="nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56">remmina_plugin_nx_wait_signal</a></div><div class="ttdeci">static gint remmina_plugin_nx_wait_signal(RemminaPluginNxData *gpdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00296">nx_plugin.c:296</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a36da737bdb6708e5e5e85437cab112f9"><div class="ttname"><a href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a></div><div class="ttdeci">void remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00238">nx_session.c:238</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a79807a1c2a499d75b83d267b8c08cd7e"><div class="ttname"><a href="nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e">remmina_plugin_nx_init</a></div><div class="ttdeci">static void remmina_plugin_nx_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00571">nx_plugin.c:571</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae990775845392eace305018b4cd87662"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">_RemminaPluginService::gtksocket_available</a></div><div class="ttdeci">gboolean(* gtksocket_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00223">plugin.h:223</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a128499f3768aae8bc5c233f6fb616a76"><div class="ttname"><a href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a></div><div class="ttdeci">gboolean remmina_nx_session_list(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00667">nx_session.c:667</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_aa471a4e13385a583efb610d33fd9a1b5"><div class="ttname"><a href="nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5">remmina_plugin_nx_start_session</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_start_session(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00310">nx_plugin.c:310</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a4a6925a5bf78cac68ce04d1fe8293e9f"><div class="ttname"><a href="nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f">remmina_plugin_nx_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_nx_features[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00746">nx_plugin.c:746</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00696">nx_plugin.c:696</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_acd24d873a255b1a1e8158114d3ce2fe4"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">_RemminaPluginNxData::iter</a></div><div class="ttdeci">GtkTreeIter iter</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00074">nx_plugin.h:74</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ae4e00fb7501df9af20b7fdc61331c347"><div class="ttname"><a href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a></div><div class="ttdeci">void remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00634">nx_session.c:634</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a5d6f81a44339efa85a0048f759207825"><div class="ttname"><a href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a></div><div class="ttdeci">gchar * remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00706">nx_session.c:706</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a89f57765ecdaf9ce7ee896dc16cd268a"><div class="ttname"><a href="nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a">remmina_plugin_nx_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00629">nx_plugin.c:629</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9b4cfe0a97a34260e58784feef693704"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService::protocol_plugin_init_auth</a></div><div class="ttdeci">gint(* protocol_plugin_init_auth)(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00172">plugin.h:172</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_acd2e5f24279a00e0d426d67604dc8fbc"><div class="ttname"><a href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">onMainThread_cb_data::mu</a></div><div class="ttdeci">pthread_mutex_t mu</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00075">nx_plugin.c:75</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_ae1c4269d260792a4cdb1c160229d3172"><div class="ttname"><a href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">onMainThread_cb_data::func</a></div><div class="ttdeci">enum onMainThread_cb_data::@37 func</div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00050">nx_plugin.h:50</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00047">nx_plugin.h:47</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a9f17900103bf5e4dfa17ad0c185faf06"><div class="ttname"><a href="nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06">remmina_plugin_nx_on_plug_added</a></div><div class="ttdeci">static void remmina_plugin_nx_on_plug_added(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00182">nx_plugin.c:182</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2b75137f9d7739c0d7881ee16e2aabfa"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">_RemminaPluginService::get_profile_remote_height</a></div><div class="ttdeci">gint(* get_profile_remote_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00225">plugin.h:225</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a5f6e5136c200aefda845bb8979babbad"><div class="ttname"><a href="nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad">remmina_plugin_nx_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00677">nx_plugin.c:677</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a10edf199cbe51034a9f4e571f903a48c"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">_RemminaPluginNxData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00057">nx_plugin.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1abb925da85e0240f20009e8bd1b1e0b"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">_RemminaPluginNxData::session_manager_start_handler</a></div><div class="ttdeci">guint session_manager_start_handler</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00072">nx_plugin.h:72</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_aada1c6767dcc37e55c4b4ce3b5d8ebdf"><div class="ttname"><a href="nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf">remmina_plugin_nx_main</a></div><div class="ttdeci">static gboolean remmina_plugin_nx_main(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00538">nx_plugin.c:538</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2cf031e840ea76da2d17cfcd8d20c4e0"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0">_RemminaPluginService::file_unsave_passwords</a></div><div class="ttdeci">void(* file_unsave_passwords)(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00204">plugin.h:204</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac892dd297fae87868752a1f86e07937d"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService::protocol_plugin_init_get_username</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_username)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00175">plugin.h:175</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00041">nx_session.h:41</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00046">nx_plugin.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_afe3c32a421cd5dcc735b99318ff8844a"><div class="ttname"><a href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">_RemminaPluginService::get_profile_remote_width</a></div><div class="ttdeci">gint(* get_profile_remote_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00224">plugin.h:224</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad98eaa3efc0214bc701dc66b5730e174"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService::protocol_plugin_init_get_password</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_password)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00176">plugin.h:176</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a9ba8e968998b64b3832e484a2ca7dfc1"><div class="ttname"><a href="nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a></div><div class="ttdeci">static gboolean onMainThread_cb(struct onMainThread_cb_data *d)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00080">nx_plugin.c:80</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a6e04143450eeb71e3d0b2c14983860a4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00063">plugin.h:63</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a31b9185763acddffe0bbdef41380bf43"><div class="ttname"><a href="nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43">onMainThread_gtk_socket_add_id</a></div><div class="ttdeci">static void onMainThread_gtk_socket_add_id(GtkSocket *sk, Window w)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00122">nx_plugin.c:122</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_ad4a4c9b55ff6b6b1ffe2acefbf49199d"><div class="ttname"><a href="nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d">remmina_plugin_nx_dummy_handler</a></div><div class="ttdeci">static int remmina_plugin_nx_dummy_handler(Display *dsp, XErrorEvent *err)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00221">nx_plugin.c:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_aa01cccfd573952ec0cd5df823e2d8f74"><div class="ttname"><a href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">onMainThread_cb_data::height</a></div><div class="ttdeci">gint height</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad217fb5180a6ed57c47f174a0b20cf8c"><div class="ttname"><a href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a></div><div class="ttdeci">gboolean remmina_nx_session_terminate(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00767">nx_session.c:767</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_ad4019cdd5ac560eb1cd47d9f924831bb"><div class="ttname"><a href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">onMainThread_cb_data::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00068">vnc_plugin.c:68</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00043">nx_session.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a73d6717ebcde73fb3bedf42f9551adbd"><div class="ttname"><a href="nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd">remmina_nx_init_mutex</a></div><div class="ttdeci">static pthread_mutex_t remmina_nx_init_mutex</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00063">nx_plugin.c:63</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa912b495508a0f74fe8e121c5b532f6b"><div class="ttname"><a href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a></div><div class="ttdeci">gboolean remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00611">nx_session.c:611</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_ab7107dd5c7dad8e647489abb6650ed6e"><div class="ttname"><a href="nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e">remmina_plugin_nx_send_ctrlaltdel</a></div><div class="ttdeci">static void remmina_plugin_nx_send_ctrlaltdel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00667">nx_plugin.c:667</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ab4248d0cfbac9b21095e70c33980e51c"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">_RemminaPluginNxData::orig_handler</a></div><div class="ttdeci">int(* orig_handler)(Display *, XErrorEvent *)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00063">nx_plugin.h:63</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_af8bb68a7a80a23d5a13203b813ff18bf"><div class="ttname"><a href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_nx_service</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00056">nx_plugin.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aadff42154c92ef10a80b403cadec5c1b"><div class="ttname"><a href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a></div><div class="ttdeci">gboolean remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00689">nx_session.c:689</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html"><div class="ttname"><a href="nx__plugin_8h.html">nx_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ae8ebf2192bfc7378c0e6375931373645"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">_RemminaPluginNxData::socket_id</a></div><div class="ttdeci">gint socket_id</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00055">nx_plugin.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a808b6bebe5102ad2b80a15224e30ff4f"><div class="ttname"><a href="nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f">remmina_nx_window_id_array</a></div><div class="ttdeci">static GArray * remmina_nx_window_id_array</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00064">nx_plugin.c:64</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html"><div class="ttname"><a href="structon_main_thread__cb__data.html">onMainThread_cb_data</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00068">nx_plugin.c:68</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a0de55cb12904503503d7d9ab3338aa33"><div class="ttname"><a href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a></div><div class="ttdeci">gboolean remmina_nx_session_restore(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00760">nx_session.c:760</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a38661931521f9b3472c6d76b6c201105"><div class="ttname"><a href="nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105">remmina_plugin_nx_remove_window_id</a></div><div class="ttdeci">static void remmina_plugin_nx_remove_window_id(Window window_id)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00163">nx_plugin.c:163</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_a747a6fa8ff786ff6539d664ad6e38046"><div class="ttname"><a href="nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046">remmina_plugin_nx_main_thread</a></div><div class="ttdeci">static gpointer remmina_plugin_nx_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00558">nx_plugin.c:558</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a75eab61445fbabacaa34f95e2437ea75"><div class="ttname"><a href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">onMainThread_cb_data::cancelled</a></div><div class="ttdeci">gboolean cancelled</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00077">nx_plugin.c:77</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__plugin_8c.html">nx_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__plugin_8h.html b/docs/nx__plugin_8h.html
new file mode 100644
index 000000000..9819bfe6e
--- /dev/null
+++ b/docs/nx__plugin_8h.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">nx_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2a03ded9a85fd59c27de3053a7cae122"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a></td></tr>
+<tr class="separator:a2a03ded9a85fd59c27de3053a7cae122"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aef3e25a6bbd288f0a417a1fa331e661c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">RemminaNXEventType</a> { <br />
+&#160;&#160;<a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>,
+<a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a>,
+<a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>,
+<a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>,
+<br />
+&#160;&#160;<a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>
+<br />
+ }</td></tr>
+<tr class="separator:aef3e25a6bbd288f0a417a1fa331e661c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:af8bb68a7a80a23d5a13203b813ff18bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a></td></tr>
+<tr class="separator:af8bb68a7a80a23d5a13203b813ff18bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a2a03ded9a85fd59c27de3053a7cae122"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a03ded9a85fd59c27de3053a7cae122">&#9670;&nbsp;</a></span>RemminaPluginNxData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a> <a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="aef3e25a6bbd288f0a417a1fa331e661c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef3e25a6bbd288f0a417a1fa331e661c">&#9670;&nbsp;</a></span>RemminaNXEventType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">RemminaNXEventType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a"></a>REMMINA_NX_EVENT_CANCEL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21"></a>REMMINA_NX_EVENT_START&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24"></a>REMMINA_NX_EVENT_RESTORE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f"></a>REMMINA_NX_EVENT_ATTACH&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e"></a>REMMINA_NX_EVENT_TERMINATE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00045">45</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="af8bb68a7a80a23d5a13203b813ff18bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8bb68a7a80a23d5a13203b813ff18bf">&#9670;&nbsp;</a></span>remmina_plugin_nx_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_nx_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00056">56</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__plugin_8h.html">nx_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__plugin_8h.js b/docs/nx__plugin_8h.js
new file mode 100644
index 000000000..7ddcdaedf
--- /dev/null
+++ b/docs/nx__plugin_8h.js
@@ -0,0 +1,13 @@
+var nx__plugin_8h =
+[
+ [ "_RemminaPluginNxData", "struct___remmina_plugin_nx_data.html", "struct___remmina_plugin_nx_data" ],
+ [ "RemminaPluginNxData", "nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122", null ],
+ [ "RemminaNXEventType", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c", [
+ [ "REMMINA_NX_EVENT_CANCEL", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a", null ],
+ [ "REMMINA_NX_EVENT_START", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21", null ],
+ [ "REMMINA_NX_EVENT_RESTORE", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24", null ],
+ [ "REMMINA_NX_EVENT_ATTACH", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f", null ],
+ [ "REMMINA_NX_EVENT_TERMINATE", "nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e", null ]
+ ] ],
+ [ "remmina_plugin_nx_service", "nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__plugin_8h_source.html b/docs/nx__plugin_8h_source.html
new file mode 100644
index 000000000..2b0663c05
--- /dev/null
+++ b/docs/nx__plugin_8h_source.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__plugin_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginNxData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;);</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="nx__session_8h.html">nx_session.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a"> 46</a></span>&#160; <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21"> 47</a></span>&#160; <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a>,</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24"> 48</a></span>&#160; <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f"> 49</a></span>&#160; <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e"> 50</a></span>&#160; <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">RemminaNXEventType</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a> {</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6"> 54</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645"> 55</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">socket_id</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c"> 57</a></span>&#160; pthread_t <a class="code" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a>;</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"><a class="line" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256"> 59</a></span>&#160; <a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> * <a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>;</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"><a class="line" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3"> 61</a></span>&#160; Display * <a class="code" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc"> 62</a></span>&#160; Window <a class="code" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">window_id</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c"> 63</a></span>&#160; int (*<a class="code" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">orig_handler</a>)(Display *, XErrorEvent *);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* Session Manager data */</span></div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82"> 66</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">manager_started</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b"> 67</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4"> 68</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* Communication between the NX thread and the session manager */</span></div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d"> 71</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[2];</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b"> 72</a></span>&#160; guint <a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54"> 73</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4"> 74</a></span>&#160; GtkTreeIter <a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1"> 75</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;} <a class="code" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a>;</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"> 78</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>;</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_plugin_nx_data_html_ab2a0f845613b6728a4e2dfef4a335256"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">_RemminaPluginNxData::nx</a></div><div class="ttdeci">RemminaNXSession * nx</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00059">nx_plugin.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1022be897e129b97a7cdf609129fc68d"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">_RemminaPluginNxData::event_pipe</a></div><div class="ttdeci">gint event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00071">nx_plugin.h:71</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_af8bb68a7a80a23d5a13203b813ff18bf"><div class="ttname"><a href="nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_nx_service</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00056">nx_plugin.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html"><div class="ttname"><a href="struct___remmina_n_x_session.html">_RemminaNXSession</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00093">nx_session.c:93</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a5e30cb652981c14d8270c31c566d95a6"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">_RemminaPluginNxData::socket</a></div><div class="ttdeci">GtkWidget * socket</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00054">nx_plugin.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ad1f2562fd244eea96de8431713bf0fd3"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">_RemminaPluginNxData::display</a></div><div class="ttdeci">Display * display</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00061">nx_plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_aec544598d9e3b88543a8f2f4d042a4fc"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">_RemminaPluginNxData::window_id</a></div><div class="ttdeci">Window window_id</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00062">nx_plugin.h:62</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00048">nx_plugin.h:48</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661c"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c">RemminaNXEventType</a></div><div class="ttdeci">RemminaNXEventType</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00045">nx_plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a0e4e9e8356abb5e1bceb9d677bb45ba1"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">_RemminaPluginNxData::default_response</a></div><div class="ttdeci">gint default_response</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00075">nx_plugin.h:75</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_adb992195207fc2b42f7a49890f429f82"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">_RemminaPluginNxData::manager_started</a></div><div class="ttdeci">gboolean manager_started</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00066">nx_plugin.h:66</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00049">nx_plugin.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a85b685983e65896aa7af74a1fa24076b"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">_RemminaPluginNxData::manager_dialog</a></div><div class="ttdeci">GtkWidget * manager_dialog</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00067">nx_plugin.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00053">nx_plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ad23fdec26a110b8974c90650dfe05e54"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">_RemminaPluginNxData::attach_session</a></div><div class="ttdeci">gboolean attach_session</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00073">nx_plugin.h:73</a></div></div>
+<div class="ttc" id="nx__session_8h_html"><div class="ttname"><a href="nx__session_8h.html">nx_session.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_acd24d873a255b1a1e8158114d3ce2fe4"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">_RemminaPluginNxData::iter</a></div><div class="ttdeci">GtkTreeIter iter</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00074">nx_plugin.h:74</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00050">nx_plugin.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a4c7c10613fa45f91a9082bb72341e2e4"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">_RemminaPluginNxData::manager_selected</a></div><div class="ttdeci">gboolean manager_selected</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00068">nx_plugin.h:68</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00047">nx_plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a10edf199cbe51034a9f4e571f903a48c"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">_RemminaPluginNxData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00057">nx_plugin.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1abb925da85e0240f20009e8bd1b1e0b"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">_RemminaPluginNxData::session_manager_start_handler</a></div><div class="ttdeci">guint session_manager_start_handler</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00072">nx_plugin.h:72</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00046">nx_plugin.h:46</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_a2a03ded9a85fd59c27de3053a7cae122"><div class="ttname"><a href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a></div><div class="ttdeci">struct _RemminaPluginNxData RemminaPluginNxData</div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ab4248d0cfbac9b21095e70c33980e51c"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">_RemminaPluginNxData::orig_handler</a></div><div class="ttdeci">int(* orig_handler)(Display *, XErrorEvent *)</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00063">nx_plugin.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ae8ebf2192bfc7378c0e6375931373645"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">_RemminaPluginNxData::socket_id</a></div><div class="ttdeci">gint socket_id</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00055">nx_plugin.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__plugin_8h.html">nx_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session_8c.html b/docs/nx__session_8c.html
new file mode 100644
index 000000000..2ed2f4c8e
--- /dev/null
+++ b/docs/nx__session_8c.html
@@ -0,0 +1,1491 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">nx_session.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__session_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html">_RemminaNXSession</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad3ab1f08fffd57b68fa36360c7ef8135"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">remmina_get_keytype</a> (const gchar *private_key_file, gint *keytype, gboolean *encrypted)</td></tr>
+<tr class="separator:ad3ab1f08fffd57b68fa36360c7ef8135"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33e8f6637275c331c86f321bf1da448c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a> (void)</td></tr>
+<tr class="separator:a33e8f6637275c331c86f321bf1da448c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7cec91dde56b12471bbe8acd451d9d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa7cec91dde56b12471bbe8acd451d9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe9c344eaf302b01759e5bd305cb5abc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *fmt)</td></tr>
+<tr class="separator:abe9c344eaf302b01759e5bd305cb5abc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68bff7bd24db82a337fc00e42942d1c6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *fmt,...)</td></tr>
+<tr class="separator:a68bff7bd24db82a337fc00e42942d1c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa02aea77cb6428ea4eebddc0d80217e9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa02aea77cb6428ea4eebddc0d80217e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e7f359af598b707927c162c3c37e1e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:ae4e7f359af598b707927c162c3c37e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0279cdfc0ad8129fcb3e1cc26297f866"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a0279cdfc0ad8129fcb3e1cc26297f866"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36da737bdb6708e5e5e85437cab112f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint encryption)</td></tr>
+<tr class="separator:a36da737bdb6708e5e5e85437cab112f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac97d379b04df53ca7dc166676fcbffb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint localport)</td></tr>
+<tr class="separator:ac97d379b04df53ca7dc166676fcbffb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8de7b5ae6b68d7e193cd3f55704d32f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, <a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> log_callback)</td></tr>
+<tr class="separator:a8de7b5ae6b68d7e193cd3f55704d32f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a880c07dbd498746d06490063159baa4c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">remmina_nx_session_get_response</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a880c07dbd498746d06490063159baa4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d1f38d0bee83fe75e528a7f157c12c0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">remmina_nx_session_parse_session_list_line</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *line)</td></tr>
+<tr class="separator:a1d1f38d0bee83fe75e528a7f157c12c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a72f258cb806b8f1150c4719a68af28"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">remmina_nx_session_parse_line</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *line, gchar **valueptr)</td></tr>
+<tr class="separator:a1a72f258cb806b8f1150c4719a68af28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa200231bf9d2f3e00a8f92bacddbe09f"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">remmina_nx_session_get_line</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa200231bf9d2f3e00a8f92bacddbe09f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a625f0605bf73f0465866b26cf7563eac"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">remmina_nx_session_parse_response</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a625f0605bf73f0465866b26cf7563eac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6ae8dc606c87632bb8b8b477509bcea"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">remmina_nx_session_expect_status2</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint status, gint status2)</td></tr>
+<tr class="separator:ad6ae8dc606c87632bb8b8b477509bcea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc225e383dc70c0f6a12baf7b9cc3841"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint status)</td></tr>
+<tr class="separator:abc225e383dc70c0f6a12baf7b9cc3841"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a663b5b339b919527db0c7467123c7f62"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *cmdfmt,...)</td></tr>
+<tr class="separator:a663b5b339b919527db0c7467123c7f62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d58e7958d408e2a0abd015688ba912b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *server, guint port, const gchar *private_key_file, <a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a> passphrase_func, gpointer userdata)</td></tr>
+<tr class="separator:a6d58e7958d408e2a0abd015688ba912b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa912b495508a0f74fe8e121c5b532f6b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *username, const gchar *password)</td></tr>
+<tr class="separator:aa912b495508a0f74fe8e121c5b532f6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e00fb7501df9af20b7fdc61331c347"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *name, const gchar *valuefmt,...)</td></tr>
+<tr class="separator:ae4e00fb7501df9af20b7fdc61331c347"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a563a10864cfa73bffc2899141b6a35ea"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *cmd_type, gint response)</td></tr>
+<tr class="separator:a563a10864cfa73bffc2899141b6a35ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a128499f3768aae8bc5c233f6fb616a76"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a128499f3768aae8bc5c233f6fb616a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b9d8589f544d54350a6d96b49275e41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeView *tree)</td></tr>
+<tr class="separator:a5b9d8589f544d54350a6d96b49275e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadff42154c92ef10a80b403cadec5c1b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter)</td></tr>
+<tr class="separator:aadff42154c92ef10a80b403cadec5c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d021133105bd538af31817eff263324"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter)</td></tr>
+<tr class="separator:a7d021133105bd538af31817eff263324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d6f81a44339efa85a0048f759207825"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column)</td></tr>
+<tr class="separator:a5d6f81a44339efa85a0048f759207825"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49f2ddc5baaf992f7a39f3d8f6ab061d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column, const gchar *data)</td></tr>
+<tr class="separator:a49f2ddc5baaf992f7a39f3d8f6ab061d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13c14492f22eda65b325337be14aa3ef"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a13c14492f22eda65b325337be14aa3ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1398fd24f8083867db1f8f392638bf0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa1398fd24f8083867db1f8f392638bf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2123ed756f82d65c5c6f4062606803c6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a2123ed756f82d65c5c6f4062606803c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacd5938d1a58872644a3a68bc1cac66d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aacd5938d1a58872644a3a68bc1cac66d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0de55cb12904503503d7d9ab3338aa33"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a0de55cb12904503503d7d9ab3338aa33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad217fb5180a6ed57c47f174a0b20cf8c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:ad217fb5180a6ed57c47f174a0b20cf8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4bce96ad49020acbbbbe09c3eefa97a6"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">remmina_nx_session_tunnel_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a4bce96ad49020acbbbbe09c3eefa97a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7373c5ab0ca53f54c493f9e461ae679d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a7373c5ab0ca53f54c493f9e461ae679d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a98fead7295fa90624d8a494d3570cf"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">remmina_nx_session_get_proxy_option</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a9a98fead7295fa90624d8a494d3570cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad01b66a877f8c30dc4bdf1ba6f3beac0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</td></tr>
+<tr class="separator:ad01b66a877f8c30dc4bdf1ba6f3beac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf2a3e4773fb982b8418fd2f147abaea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aaf2a3e4773fb982b8418fd2f147abaea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a2dc3db8078c966530a0790f208c9148c"><td class="memItemLeft" align="right" valign="top">static const gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_default_private_key</a> []</td></tr>
+<tr class="separator:a2dc3db8078c966530a0790f208c9148c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab16725d4a1ce169180b759b66492fc1d"><td class="memItemLeft" align="right" valign="top">static const gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_hello_server_msg</a> [] = &quot;hello nxserver - version &quot;</td></tr>
+<tr class="separator:ab16725d4a1ce169180b759b66492fc1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad3ab1f08fffd57b68fa36360c7ef8135"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3ab1f08fffd57b68fa36360c7ef8135">&#9670;&nbsp;</a></span>remmina_get_keytype()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_get_keytype </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>private_key_file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>keytype</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean *&#160;</td>
+ <td class="paramname"><em>encrypted</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00049">49</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa1398fd24f8083867db1f8f392638bf0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1398fd24f8083867db1f8f392638bf0">&#9670;&nbsp;</a></span>remmina_nx_session_add_common_parameters()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_add_common_parameters </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00727">727</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4e00fb7501df9af20b7fdc61331c347"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4e00fb7501df9af20b7fdc61331c347">&#9670;&nbsp;</a></span>remmina_nx_session_add_parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_add_parameter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>valuefmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00634">634</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a13c14492f22eda65b325337be14aa3ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13c14492f22eda65b325337be14aa3ef">&#9670;&nbsp;</a></span>remmina_nx_session_allow_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_allow_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00721">721</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aacd5938d1a58872644a3a68bc1cac66d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacd5938d1a58872644a3a68bc1cac66d">&#9670;&nbsp;</a></span>remmina_nx_session_attach()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_attach </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00753">753</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf2a3e4773fb982b8418fd2f147abaea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf2a3e4773fb982b8418fd2f147abaea">&#9670;&nbsp;</a></span>remmina_nx_session_bye()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_bye </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l01002">1002</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a0279cdfc0ad8129fcb3e1cc26297f866"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0279cdfc0ad8129fcb3e1cc26297f866">&#9670;&nbsp;</a></span>remmina_nx_session_clear_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_clear_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00229">229</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="abc225e383dc70c0f6a12baf7b9cc3841"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc225e383dc70c0f6a12baf7b9cc3841">&#9670;&nbsp;</a></span>remmina_nx_session_expect_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_nx_session_expect_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00507">507</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6ae8dc606c87632bb8b8b477509bcea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6ae8dc606c87632bb8b8b477509bcea">&#9670;&nbsp;</a></span>remmina_nx_session_expect_status2()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_nx_session_expect_status2 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>status2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00490">490</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa7cec91dde56b12471bbe8acd451d9d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7cec91dde56b12471bbe8acd451d9d3">&#9670;&nbsp;</a></span>remmina_nx_session_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00145">145</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4e7f359af598b707927c162c3c37e1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4e7f359af598b707927c162c3c37e1e">&#9670;&nbsp;</a></span>remmina_nx_session_get_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_nx_session_get_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00223">223</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa200231bf9d2f3e00a8f92bacddbe09f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa200231bf9d2f3e00a8f92bacddbe09f">&#9670;&nbsp;</a></span>remmina_nx_session_get_line()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* remmina_nx_session_get_line </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00406">406</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a98fead7295fa90624d8a494d3570cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a98fead7295fa90624d8a494d3570cf">&#9670;&nbsp;</a></span>remmina_nx_session_get_proxy_option()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* remmina_nx_session_get_proxy_option </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00937">937</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a880c07dbd498746d06490063159baa4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a880c07dbd498746d06490063159baa4c">&#9670;&nbsp;</a></span>remmina_nx_session_get_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_nx_session_get_response </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00256">256</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa02aea77cb6428ea4eebddc0d80217e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa02aea77cb6428ea4eebddc0d80217e9">&#9670;&nbsp;</a></span>remmina_nx_session_has_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_has_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00216">216</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ad01b66a877f8c30dc4bdf1ba6f3beac0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad01b66a877f8c30dc4bdf1ba6f3beac0">&#9670;&nbsp;</a></span>remmina_nx_session_invoke_proxy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_invoke_proxy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>display</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GChildWatchFunc&#160;</td>
+ <td class="paramname"><em>exit_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00951">951</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aadff42154c92ef10a80b403cadec5c1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadff42154c92ef10a80b403cadec5c1b">&#9670;&nbsp;</a></span>remmina_nx_session_iter_first()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_iter_first </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00689">689</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a5d6f81a44339efa85a0048f759207825"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d6f81a44339efa85a0048f759207825">&#9670;&nbsp;</a></span>remmina_nx_session_iter_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_nx_session_iter_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>column</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00706">706</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d021133105bd538af31817eff263324"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d021133105bd538af31817eff263324">&#9670;&nbsp;</a></span>remmina_nx_session_iter_next()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_iter_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00697">697</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a49f2ddc5baaf992f7a39f3d8f6ab061d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49f2ddc5baaf992f7a39f3d8f6ab061d">&#9670;&nbsp;</a></span>remmina_nx_session_iter_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_iter_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00715">715</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a128499f3768aae8bc5c233f6fb616a76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a128499f3768aae8bc5c233f6fb616a76">&#9670;&nbsp;</a></span>remmina_nx_session_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00667">667</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa912b495508a0f74fe8e121c5b532f6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa912b495508a0f74fe8e121c5b532f6b">&#9670;&nbsp;</a></span>remmina_nx_session_login()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_login </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00611">611</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a33e8f6637275c331c86f321bf1da448c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e8f6637275c331c86f321bf1da448c">&#9670;&nbsp;</a></span>remmina_nx_session_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a>* remmina_nx_session_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00129">129</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d58e7958d408e2a0abd015688ba912b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d58e7958d408e2a0abd015688ba912b">&#9670;&nbsp;</a></span>remmina_nx_session_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>private_key_file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a>&#160;</td>
+ <td class="paramname"><em>passphrase_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00529">529</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a1a72f258cb806b8f1150c4719a68af28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a72f258cb806b8f1150c4719a68af28">&#9670;&nbsp;</a></span>remmina_nx_session_parse_line()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_nx_session_parse_line </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>valueptr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00354">354</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a625f0605bf73f0465866b26cf7563eac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a625f0605bf73f0465866b26cf7563eac">&#9670;&nbsp;</a></span>remmina_nx_session_parse_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_nx_session_parse_response </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00434">434</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a1d1f38d0bee83fe75e528a7f157c12c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d1f38d0bee83fe75e528a7f157c12c0">&#9670;&nbsp;</a></span>remmina_nx_session_parse_session_list_line()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_parse_session_list_line </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>line</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00298">298</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a0de55cb12904503503d7d9ab3338aa33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0de55cb12904503503d7d9ab3338aa33">&#9670;&nbsp;</a></span>remmina_nx_session_restore()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_restore </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00760">760</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a663b5b339b919527db0c7467123c7f62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a663b5b339b919527db0c7467123c7f62">&#9670;&nbsp;</a></span>remmina_nx_session_send_command()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_send_command </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>cmdfmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00513">513</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a563a10864cfa73bffc2899141b6a35ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a563a10864cfa73bffc2899141b6a35ea">&#9670;&nbsp;</a></span>remmina_nx_session_send_session_command()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_nx_session_send_session_command </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>cmd_type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00646">646</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a68bff7bd24db82a337fc00e42942d1c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68bff7bd24db82a337fc00e42942d1c6">&#9670;&nbsp;</a></span>remmina_nx_session_set_application_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_set_application_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00205">205</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a36da737bdb6708e5e5e85437cab112f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36da737bdb6708e5e5e85437cab112f9">&#9670;&nbsp;</a></span>remmina_nx_session_set_encryption()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_encryption </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>encryption</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00238">238</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="abe9c344eaf302b01759e5bd305cb5abc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe9c344eaf302b01759e5bd305cb5abc">&#9670;&nbsp;</a></span>remmina_nx_session_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00194">194</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ac97d379b04df53ca7dc166676fcbffb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac97d379b04df53ca7dc166676fcbffb5">&#9670;&nbsp;</a></span>remmina_nx_session_set_localport()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_localport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>localport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00244">244</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a8de7b5ae6b68d7e193cd3f55704d32f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8de7b5ae6b68d7e193cd3f55704d32f7">&#9670;&nbsp;</a></span>remmina_nx_session_set_log_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_log_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a>&#160;</td>
+ <td class="paramname"><em>log_callback</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00250">250</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a5b9d8589f544d54350a6d96b49275e41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b9d8589f544d54350a6d96b49275e41">&#9670;&nbsp;</a></span>remmina_nx_session_set_tree_view()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_tree_view </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeView *&#160;</td>
+ <td class="paramname"><em>tree</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00683">683</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a2123ed756f82d65c5c6f4062606803c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2123ed756f82d65c5c6f4062606803c6">&#9670;&nbsp;</a></span>remmina_nx_session_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00746">746</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ad217fb5180a6ed57c47f174a0b20cf8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad217fb5180a6ed57c47f174a0b20cf8c">&#9670;&nbsp;</a></span>remmina_nx_session_terminate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_terminate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00767">767</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a4bce96ad49020acbbbbe09c3eefa97a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4bce96ad49020acbbbbe09c3eefa97a6">&#9670;&nbsp;</a></span>remmina_nx_session_tunnel_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_nx_session_tunnel_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00773">773</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a7373c5ab0ca53f54c493f9e461ae679d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7373c5ab0ca53f54c493f9e461ae679d">&#9670;&nbsp;</a></span>remmina_nx_session_tunnel_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_tunnel_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00881">881</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a2dc3db8078c966530a0790f208c9148c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2dc3db8078c966530a0790f208c9148c">&#9670;&nbsp;</a></span>nx_default_private_key</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar nx_default_private_key[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= <span class="stringliteral">&quot;-----BEGIN DSA PRIVATE KEY-----\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;MIIBuwIBAAKBgQCXv9AzQXjxvXWC1qu3CdEqskX9YomTfyG865gb4D02ZwWuRU/9\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;C3I9/bEWLdaWgJYXIcFJsMCIkmWjjeSZyTmeoypI1iLifTHUxn3b7WNWi8AzKcVF\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;aBsBGiljsop9NiD1mEpA0G+nHHrhvTXz7pUvYrsrXcdMyM6rxqn77nbbnwIVALCi\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;xFdHZADw5KAVZI7r6QatEkqLAoGBAI4L1TQGFkq5xQ/nIIciW8setAAIyrcWdK/z\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;5/ZPeELdq70KDJxoLf81NL/8uIc4PoNyTRJjtT3R4f8Az1TsZWeh2+ReCEJxDWgG\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;fbk2YhRqoQTtXPFsI4qvzBWct42WonWqyyb1bPBHk+JmXFscJu5yFQ+JUVNsENpY\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;+Gkz3HqTAoGANlgcCuA4wrC+3Cic9CFkqiwO/Rn1vk8dvGuEQqFJ6f6LVfPfRTfa\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;QU7TGVLk2CzY4dasrwxJ1f6FsT8DHTNGnxELPKRuLstGrFY/PR7KeafeFZDf+fJ3\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;mbX5nxrld3wi5titTnX+8s4IKv29HJguPvOK/SI7cjzA+SqNfD7qEo8CFDIm1xRf\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;8xAPsSKs6yZ6j1FNklfu\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;-----END DSA PRIVATE KEY-----\n&quot;</span></div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00078">78</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ab16725d4a1ce169180b759b66492fc1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab16725d4a1ce169180b759b66492fc1d">&#9670;&nbsp;</a></span>nx_hello_server_msg</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar nx_hello_server_msg[] = &quot;hello nxserver - version &quot;</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00091">91</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session_8c.html">nx_session.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session_8c.js b/docs/nx__session_8c.js
new file mode 100644
index 000000000..6bf934490
--- /dev/null
+++ b/docs/nx__session_8c.js
@@ -0,0 +1,46 @@
+var nx__session_8c =
+[
+ [ "_RemminaNXSession", "struct___remmina_n_x_session.html", "struct___remmina_n_x_session" ],
+ [ "remmina_get_keytype", "nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135", null ],
+ [ "remmina_nx_session_add_common_parameters", "nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0", null ],
+ [ "remmina_nx_session_add_parameter", "nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347", null ],
+ [ "remmina_nx_session_allow_start", "nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef", null ],
+ [ "remmina_nx_session_attach", "nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d", null ],
+ [ "remmina_nx_session_bye", "nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea", null ],
+ [ "remmina_nx_session_clear_error", "nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866", null ],
+ [ "remmina_nx_session_expect_status", "nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841", null ],
+ [ "remmina_nx_session_expect_status2", "nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea", null ],
+ [ "remmina_nx_session_free", "nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3", null ],
+ [ "remmina_nx_session_get_error", "nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e", null ],
+ [ "remmina_nx_session_get_line", "nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f", null ],
+ [ "remmina_nx_session_get_proxy_option", "nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf", null ],
+ [ "remmina_nx_session_get_response", "nx__session_8c.html#a880c07dbd498746d06490063159baa4c", null ],
+ [ "remmina_nx_session_has_error", "nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9", null ],
+ [ "remmina_nx_session_invoke_proxy", "nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0", null ],
+ [ "remmina_nx_session_iter_first", "nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b", null ],
+ [ "remmina_nx_session_iter_get", "nx__session_8c.html#a5d6f81a44339efa85a0048f759207825", null ],
+ [ "remmina_nx_session_iter_next", "nx__session_8c.html#a7d021133105bd538af31817eff263324", null ],
+ [ "remmina_nx_session_iter_set", "nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d", null ],
+ [ "remmina_nx_session_list", "nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76", null ],
+ [ "remmina_nx_session_login", "nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b", null ],
+ [ "remmina_nx_session_new", "nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c", null ],
+ [ "remmina_nx_session_open", "nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b", null ],
+ [ "remmina_nx_session_parse_line", "nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28", null ],
+ [ "remmina_nx_session_parse_response", "nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac", null ],
+ [ "remmina_nx_session_parse_session_list_line", "nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0", null ],
+ [ "remmina_nx_session_restore", "nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33", null ],
+ [ "remmina_nx_session_send_command", "nx__session_8c.html#a663b5b339b919527db0c7467123c7f62", null ],
+ [ "remmina_nx_session_send_session_command", "nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea", null ],
+ [ "remmina_nx_session_set_application_error", "nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6", null ],
+ [ "remmina_nx_session_set_encryption", "nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9", null ],
+ [ "remmina_nx_session_set_error", "nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc", null ],
+ [ "remmina_nx_session_set_localport", "nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5", null ],
+ [ "remmina_nx_session_set_log_callback", "nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7", null ],
+ [ "remmina_nx_session_set_tree_view", "nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41", null ],
+ [ "remmina_nx_session_start", "nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6", null ],
+ [ "remmina_nx_session_terminate", "nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c", null ],
+ [ "remmina_nx_session_tunnel_main_thread", "nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6", null ],
+ [ "remmina_nx_session_tunnel_open", "nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d", null ],
+ [ "nx_default_private_key", "nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c", null ],
+ [ "nx_hello_server_msg", "nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__session_8c_source.html b/docs/nx__session_8c_source.html
new file mode 100644
index 000000000..f260e2b66
--- /dev/null
+++ b/docs/nx__session_8c_source.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_session.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__session_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-2020 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 &lt;errno.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define LIBSSH_STATIC 1</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;libssh/libssh.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="nx__session_8h.html">nx_session.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Some missing stuff in libssh */</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_SSH_TYPE_DSS 1</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_SSH_TYPE_RSA 2</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135"> 49</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">remmina_get_keytype</a>(<span class="keyword">const</span> gchar *private_key_file, gint *keytype, gboolean *encrypted)</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; FILE *fp;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; gchar buf1[100], buf2[100];</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordflow">if</span> ((fp = g_fopen(private_key_file, <span class="stringliteral">&quot;r&quot;</span>)) == NULL) {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (!fgets(buf1, <span class="keyword">sizeof</span>(buf1), fp) || !fgets(buf2, <span class="keyword">sizeof</span>(buf2), fp)) {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; fclose(fp);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; fclose(fp);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (strstr(buf1, <span class="stringliteral">&quot;BEGIN RSA&quot;</span>))</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; *keytype = REMMINA_SSH_TYPE_RSA;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strstr(buf1, <span class="stringliteral">&quot;BEGIN DSA&quot;</span>))</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; *keytype = REMMINA_SSH_TYPE_DSS;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> FALSE;</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; *encrypted = (strstr(buf2, <span class="stringliteral">&quot;ENCRYPTED&quot;</span>) ? TRUE : FALSE);</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="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/*****/</span></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="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c"> 78</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar <a class="code" href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_default_private_key</a>[] = <span class="stringliteral">&quot;-----BEGIN DSA PRIVATE KEY-----\n&quot;</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="stringliteral">&quot;MIIBuwIBAAKBgQCXv9AzQXjxvXWC1qu3CdEqskX9YomTfyG865gb4D02ZwWuRU/9\n&quot;</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="stringliteral">&quot;C3I9/bEWLdaWgJYXIcFJsMCIkmWjjeSZyTmeoypI1iLifTHUxn3b7WNWi8AzKcVF\n&quot;</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="stringliteral">&quot;aBsBGiljsop9NiD1mEpA0G+nHHrhvTXz7pUvYrsrXcdMyM6rxqn77nbbnwIVALCi\n&quot;</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;xFdHZADw5KAVZI7r6QatEkqLAoGBAI4L1TQGFkq5xQ/nIIciW8setAAIyrcWdK/z\n&quot;</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;5/ZPeELdq70KDJxoLf81NL/8uIc4PoNyTRJjtT3R4f8Az1TsZWeh2+ReCEJxDWgG\n&quot;</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;fbk2YhRqoQTtXPFsI4qvzBWct42WonWqyyb1bPBHk+JmXFscJu5yFQ+JUVNsENpY\n&quot;</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;+Gkz3HqTAoGANlgcCuA4wrC+3Cic9CFkqiwO/Rn1vk8dvGuEQqFJ6f6LVfPfRTfa\n&quot;</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="stringliteral">&quot;QU7TGVLk2CzY4dasrwxJ1f6FsT8DHTNGnxELPKRuLstGrFY/PR7KeafeFZDf+fJ3\n&quot;</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;mbX5nxrld3wi5titTnX+8s4IKv29HJguPvOK/SI7cjzA+SqNfD7qEo8CFDIm1xRf\n&quot;</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;8xAPsSKs6yZ6j1FNklfu\n&quot;</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="stringliteral">&quot;-----END DSA PRIVATE KEY-----\n&quot;</span>;</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"><a class="line" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d"> 91</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar <a class="code" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_hello_server_msg</a>[] = <span class="stringliteral">&quot;hello nxserver - version &quot;</span>;</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"><a class="line" href="struct___remmina_n_x_session.html"> 93</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_n_x_session.html">_RemminaNXSession</a> {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">/* Common SSH members */</span></div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f"> 95</a></span>&#160; ssh_session <a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad"> 96</a></span>&#160; ssh_channel <a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac"> 97</a></span>&#160; gchar *<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048"> 98</a></span>&#160; gchar *<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7"> 99</a></span>&#160; <a class="code" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> <a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</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; <span class="comment">/* Tunnel related members */</span></div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6"> 102</a></span>&#160; pthread_t <a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874"> 103</a></span>&#160; gboolean <a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8"> 104</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">/* NX related members */</span></div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3"> 107</a></span>&#160; GHashTable *<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>;</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"><a class="line" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508"> 109</a></span>&#160; GString *<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3"> 110</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a>;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17"> 111</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4"> 112</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a"> 113</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a>;</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"><a class="line" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7"> 115</a></span>&#160; gchar *<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a"> 116</a></span>&#160; gchar *<a class="code" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f"> 117</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a>;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5"> 118</a></span>&#160; gchar *<a class="code" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</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"><a class="line" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82"> 120</a></span>&#160; gboolean <a class="code" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">allow_start</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44"> 121</a></span>&#160; GtkListStore *<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594"> 122</a></span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6"> 124</a></span>&#160; GPid <a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4"> 125</a></span>&#160; guint <a class="code" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a>;</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;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a>*</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c"> 129</a></span>&#160;<a class="code" href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; nx = g_new0(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a>, 1);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a> = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a> = g_string_new(NULL);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a> = -1;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a> = 1;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a> = -1;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> nx;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3"> 145</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; pthread_t <a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a>;</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"> 150</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a>) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; g_source_remove(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a>);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a> = 0;</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; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>) {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; kill(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>, SIGTERM);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; g_spawn_close_pid(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a> = 0;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; thread = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (thread) {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; pthread_cancel(thread);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; pthread_join(thread, NULL);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a> = 0;</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; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; ssh_channel_close(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; ssh_channel_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a> &gt;= 0) {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; close(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a>);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a> = -1;</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; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a>);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_hash_table_destroy(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_string_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>, TRUE);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a>);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</a>);</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">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; g_object_unref(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a> = NULL;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>) {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; ssh_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a> = NULL;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; g_free(nx);</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"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc"> 194</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *fmt)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> gchar *err;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>)</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; err = ssh_get_error(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a> = g_strdup_printf(fmt, err);</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;</div><div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6"> 205</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *fmt, ...)</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;{</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; va_list args;</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"> 210</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>) g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; va_start(args, fmt);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a> = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; va_end(args);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;}</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9"> 216</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">return</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a> != NULL);</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"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="keyword">const</span> gchar*</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e"> 223</a></span>&#160;<a class="code" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span> nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;}</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866"> 229</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;{</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>) {</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; g_free(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a>);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a> = NULL;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; }</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;</div><div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9"> 238</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>)</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a> = <a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;}</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"><a class="line" href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5"> 244</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a>)</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;{</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a> = <a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;}</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"><a class="line" href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7"> 250</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <a class="code" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> <a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a> = <a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;}</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c"> 256</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">remmina_nx_session_get_response</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;{</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keyword">struct </span>timeval timeout;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; ssh_channel ch[2];</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; gchar *buffer;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gint len;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; gint is_stderr;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; timeout.tv_sec = 60;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; timeout.tv_usec = 0;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; ch[0] = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; ch[1] = NULL;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; ssh_channel_select(ch, NULL, NULL, &amp;timeout);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; is_stderr = 0;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">while</span> (is_stderr &lt;= 1) {</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; len = ssh_channel_poll(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>, is_stderr);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (len == SSH_ERROR) {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="code" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a>(nx, <span class="stringliteral">&quot;Error reading channel: %s&quot;</span>);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (len &gt; 0)</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; is_stderr++;</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="keywordflow">if</span> (is_stderr &gt; 1)</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; buffer = g_malloc(<span class="keyword">sizeof</span>(*buffer) * len);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; len = ssh_channel_read(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>, buffer, len, is_stderr);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (len &lt;= 0) {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Channel closed.&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; }</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; g_string_append_len(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>, buffer, len);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; g_free(buffer);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;}</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"><a class="line" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0"> 298</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">remmina_nx_session_parse_session_list_line</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *line)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; gchar *p1, *p2;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; gchar *val;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; gint i;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; p1 = (<span class="keywordtype">char</span>*)line;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">while</span> (*p1 == <span class="charliteral">&#39; &#39;</span>)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; p1++;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">if</span> (*p1 == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">return</span>;</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; gtk_list_store_append(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter);</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; p1 = (<span class="keywordtype">char</span>*)line;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; 7; i++) {</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; p2 = strchr(p1, <span class="charliteral">&#39; &#39;</span>);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">if</span> (!p2)</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; val = g_strndup(p1, (gint)(p2 - p1));</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">switch</span> (i) {</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>, val, -1);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">case</span> 1:</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a>, val, -1);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">case</span> 2:</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>, val, -1);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">case</span> 6:</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>, val, -1);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">break</span>;</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; g_free(val);</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; <span class="keywordflow">while</span> (*p2 == <span class="charliteral">&#39; &#39;</span>)</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; p2++;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; p1 = p2;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="comment">/* The last name column might contains space so it’s not in the above loop. We simply rtrim it here. */</span></div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; i = strlen(p1);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">if</span> (i &lt; 1)</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; p2 = p1 + i - 1;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">while</span> (*p2 == <span class="charliteral">&#39; &#39;</span> &amp;&amp; p2 &gt; p1)</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; p2--;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; val = g_strndup(p1, (gint)(p2 - p1 + 1));</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, &amp;iter, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a>, val, -1);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; g_free(val);</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"><a class="line" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28"> 354</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">remmina_nx_session_parse_line</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *line, gchar **valueptr)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;{</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; gchar *s;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; gchar *ptr;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</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; *valueptr = NULL;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="comment">/* Get the server version from the initial line */</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>) {</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; s = g_ascii_strdown(line, -1);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; ptr = strstr(s, <a class="code" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_hello_server_msg</a>);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">if</span> (!ptr) {</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="comment">/* Try to use a default version */</span></div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a> = g_strdup(<span class="stringliteral">&quot;3.3.0&quot;</span>);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a> = g_strdup(ptr + strlen(<a class="code" href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_hello_server_msg</a>));</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; ptr = strchr(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>, <span class="charliteral">&#39; &#39;</span>);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (ptr)</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; *ptr = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="comment">/* NoMachine NX append a dash+subversion. Need to be removed. */</span></div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; ptr = strchr(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>, <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">if</span> (ptr)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; *ptr = <span class="charliteral">&#39;\0&#39;</span>;</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"> 380</span>&#160; g_free(s);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">return</span> nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">if</span> (sscanf(line, <span class="stringliteral">&quot;NX&gt; %i &quot;</span>, &amp;status) &lt; 1) {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> &amp;&amp; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>) {</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> == 1 &amp;&amp; strncmp(line, <span class="stringliteral">&quot;----&quot;</span>, 4) == 0) {</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> = 2;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> == 2) {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <a class="code" href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">remmina_nx_session_parse_session_list_line</a>(nx, line);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">return</span> nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</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;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> = 0;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a> = <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; ptr = strchr(line, <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">if</span> (!ptr)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">return</span> <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; *valueptr = ptr + 2;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">return</span> <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;}</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="keyword">static</span> gchar*</div><div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f"> 406</a></span>&#160;<a class="code" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">remmina_nx_session_get_line</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;{</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; gchar *line;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; gchar *pos, *ptr;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gint len;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; gint l;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a> &gt;= nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>-&gt;len)</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 417</span>&#160; pos = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>-&gt;str + nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a>;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">if</span> ((ptr = strchr(pos, <span class="charliteral">&#39;\n&#39;</span>)) == NULL)</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; len = ((gint)(ptr - pos)) + 1;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; line = g_strndup(pos, len - 1);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; l = strlen(line);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span> (l &gt; 0 &amp;&amp; line[l - 1] == <span class="charliteral">&#39;\r&#39;</span>) {</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; line[l - 1] = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; }</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a> += len;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">return</span> line;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;}</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac"> 434</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">remmina_nx_session_parse_response</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; gchar *line;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; gchar *pos, *p;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a> = -1;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a> &gt;= nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>-&gt;len)</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> -1;</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; <span class="keywordflow">while</span> ((line = <a class="code" href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">remmina_nx_session_get_line</a>(nx)) != NULL) {</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>)</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>(line);</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; status = <a class="code" href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">remmina_nx_session_parse_line</a>(nx, line, &amp;p);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">if</span> (status == 500) {</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="comment">/* 500: Last operation failed. Should be ignored. */</span></div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (status &gt;= 400 &amp;&amp; status &lt;= 599) {</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;%s&quot;</span>, line);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">switch</span> (status) {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">case</span> 127: <span class="comment">/* Session list */</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> = 1;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">case</span> 148: <span class="comment">/* Server capacity not reached for user xxx */</span></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> = 0;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">allow_start</a> = TRUE;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">case</span> 700:</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a> = g_strdup(p);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">case</span> 705:</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a> = atoi(p);</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; <span class="keywordflow">case</span> 701:</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</a> = g_strdup(p);</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; }</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; }</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; g_free(line);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a> = <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</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; pos = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>-&gt;str + nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a>;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordflow">if</span> (sscanf(pos, <span class="stringliteral">&quot;NX&gt; %i &quot;</span>, &amp;status) &lt; 1) {</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; status = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>)</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>(pos);</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a> += 8;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; }</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a> = -1;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">return</span> <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;}</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"><a class="line" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea"> 490</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">remmina_nx_session_expect_status2</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>, gint status2)</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;{</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keywordflow">while</span> ((response = <a class="code" href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">remmina_nx_session_parse_response</a>(nx)) != status &amp;&amp; response != status2) {</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">if</span> (response == 999)</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">remmina_nx_session_get_response</a>(nx))</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; }</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a> = 0;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a>(nx))</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordflow">return</span> <a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;}</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"><a class="line" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841"> 507</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a>)</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;{</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">remmina_nx_session_expect_status2</a>(nx, status, 0) == status);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;}</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62"> 513</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *cmdfmt, ...)</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"> 515</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; va_list args;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; gchar *cmd;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; va_start(args, cmdfmt);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; cmd = g_strdup_vprintf(cmdfmt, args);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; ssh_channel_write(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>, cmd, strlen(cmd));</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; g_free(cmd);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; ssh_set_fd_towrite(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; ssh_channel_write(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>, <span class="stringliteral">&quot;\n&quot;</span>, 1);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; va_end(args);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;}</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"><a class="line" href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b"> 529</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a>, guint port, <span class="keyword">const</span> gchar *private_key_file,</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <a class="code" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a> passphrase_func, gpointer userdata)</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;{</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gint ret;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; ssh_key priv_key;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gint keytype;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gboolean encrypted;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; gchar *passphrase = NULL;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a> = ssh_new();</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; ssh_options_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>, SSH_OPTIONS_HOST, server);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; ssh_options_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>, SSH_OPTIONS_PORT, &amp;port);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; ssh_options_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>, SSH_OPTIONS_USER, <span class="stringliteral">&quot;nx&quot;</span>);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">if</span> (private_key_file &amp;&amp; private_key_file[0]) {</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">remmina_get_keytype</a>(private_key_file, &amp;keytype, &amp;encrypted)) {</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Invalid private key file.&quot;</span>);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; }</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">if</span> (encrypted &amp;&amp; !passphrase_func(&amp;passphrase, userdata)) {</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; }</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">if</span> ( ssh_pki_import_privkey_file(private_key_file, (passphrase ? passphrase : <span class="stringliteral">&quot;&quot;</span>), NULL, NULL, &amp;priv_key) != SSH_OK ) {</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Error importing private key from file.&quot;</span>);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; g_free(passphrase);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; }</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; g_free(passphrase);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="comment">/* Use NoMachine’s default nx private key */</span></div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">if</span> ( ssh_pki_import_privkey_base64(<a class="code" href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_default_private_key</a>, NULL, NULL, NULL, &amp;priv_key) != SSH_OK ) {</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to import NX default private key.&quot;</span>);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; }</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;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keywordflow">if</span> (ssh_connect(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>)) {</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; ssh_key_free(priv_key);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <a class="code" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a>(nx, <span class="stringliteral">&quot;Failed to startup SSH session: %s&quot;</span>);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; }</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; ret = ssh_userauth_publickey(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>, NULL, priv_key);</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; ssh_key_free(priv_key);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <a class="code" href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a>(nx, <span class="stringliteral">&quot;NX SSH authentication failed: %s&quot;</span>);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; }</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">if</span> ((nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a> = ssh_channel_new(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>)) == NULL || ssh_channel_open_session(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>) != SSH_OK) {</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; }</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; <span class="keywordflow">if</span> (ssh_channel_request_shell(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>) != SSH_OK) {</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="comment">/* NX server starts the session with an initial 105 status */</span></div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 105))</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="comment">/* Say hello to the NX server */</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;HELLO NXCLIENT - Version %s&quot;</span>, nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a>);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 105))</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="comment">/* Set the NX session environment */</span></div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;SET SHELL_MODE SHELL&quot;</span>);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 105))</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;SET AUTH_MODE PASSWORD&quot;</span>);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 105))</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordflow">return</span> FALSE;</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; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a> = g_strdup(server);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;}</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;</div><div class="line"><a name="l00611"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b"> 611</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *username, <span class="keyword">const</span> gchar *password)</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;{</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; gint <a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a>;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="comment">/* Login to the NX server */</span></div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;login&quot;</span>);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 101))</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, username);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="comment">/* NoMachine Testdrive does not prompt for password, in which case 105 response is received without 102 */</span></div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; response = <a class="code" href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">remmina_nx_session_expect_status2</a>(nx, 102, 105);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">if</span> (response == 102) {</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, password);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 105))</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (response != 105) {</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; }</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;}</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"><a class="line" href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347"> 634</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *name, <span class="keyword">const</span> gchar *valuefmt, ...)</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;{</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; va_list args;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; gchar *value;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; va_start(args, valuefmt);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; value = g_strdup_vprintf(valuefmt, args);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; g_hash_table_insert(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>, g_strdup(name), value);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; va_end(args);</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="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea"> 646</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *cmd_type, gint <a class="code" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</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; GString *cmd;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; gchar *key, *value;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; cmd = g_string_new(cmd_type);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; g_hash_table_iter_init(&amp;iter, nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, (gpointer*)&amp;key, (gpointer*)&amp;value)) {</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; g_string_append_printf(cmd, <span class="stringliteral">&quot; --%s=\&quot;%s\&quot;&quot;</span>, key, value);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; }</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; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, cmd-&gt;str);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; g_string_free(cmd, TRUE);</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; g_hash_table_remove_all(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keywordflow">return</span> <a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, response);</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;</div><div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76"> 667</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;{</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; gboolean ret;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a> == NULL) {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a> = gtk_list_store_new(<a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">REMMINA_NX_SESSION_N_COLUMNS</a>, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING,</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; G_TYPE_STRING, G_TYPE_STRING);</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; gtk_list_store_clear(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; }</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; ret = <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(nx, <span class="stringliteral">&quot;listsession&quot;</span>, 105);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;}</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;</div><div class="line"><a name="l00683"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41"> 683</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeView *tree)</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;{</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; gtk_tree_view_set_model(tree, GTK_TREE_MODEL(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>));</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;</div><div class="line"><a name="l00689"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b"> 689</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter)</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;{</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>)</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">return</span> gtk_tree_model_get_iter_first(GTK_TREE_MODEL(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>), iter);</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;}</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a7d021133105bd538af31817eff263324"> 697</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>)</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">return</span> gtk_tree_model_iter_next(GTK_TREE_MODEL(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>), iter);</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;gchar*</div><div class="line"><a name="l00706"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825"> 706</a></span>&#160;<a class="code" href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; gchar *val;</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; gtk_tree_model_get(GTK_TREE_MODEL(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>), iter, column, &amp;val, -1);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <span class="keywordflow">return</span> val;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;}</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d"> 715</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column, <span class="keyword">const</span> gchar *data)</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;{</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; gtk_list_store_set(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a>, iter, column, data, -1);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;}</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef"> 721</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;{</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">return</span> nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">allow_start</a>;</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;}</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"><a class="line" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0"> 727</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;{</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; gchar *value;</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; <span class="comment">/* Add fixed session parameters for startsession */</span></div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;cache&quot;</span>, <span class="stringliteral">&quot;16M&quot;</span>);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;images&quot;</span>, <span class="stringliteral">&quot;64M&quot;</span>);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;render&quot;</span>, <span class="stringliteral">&quot;1&quot;</span>);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;backingstore&quot;</span>, <span class="stringliteral">&quot;1&quot;</span>);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;agent_server&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;agent_user&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;agent_password&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; value = g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>);</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <a class="code" href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(nx, <span class="stringliteral">&quot;encryption&quot;</span>, value);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; g_free(value);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;}</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6"> 746</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <a class="code" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a>(nx);</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordflow">return</span> <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(nx, <span class="stringliteral">&quot;startsession&quot;</span>, 105);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160;}</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;</div><div class="line"><a name="l00753"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d"> 753</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <a class="code" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a>(nx);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="keywordflow">return</span> <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(nx, <span class="stringliteral">&quot;attachsession&quot;</span>, 105);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;}</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"><a class="line" href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33"> 760</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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"> 762</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <a class="code" href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a>(nx);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <span class="keywordflow">return</span> <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(nx, <span class="stringliteral">&quot;restoresession&quot;</span>, 105);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160;}</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"><a class="line" href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c"> 767</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160;{</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <span class="keywordflow">return</span> <a class="code" href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a>(nx, <span class="stringliteral">&quot;terminate&quot;</span>, 105);</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;</div><div class="line"><a name="l00773"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6"> 773</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">remmina_nx_session_tunnel_main_thread</a>(gpointer data)</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;{</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx = (<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a>*)data;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; gchar *ptr;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; ssize_t len = 0, lenw = 0;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; fd_set <span class="keyword">set</span>;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keyword">struct </span>timeval timeout;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; ssh_channel channels[2];</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; ssh_channel channels_out[2];</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; gint sock;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; gint ret;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; gchar buffer[10240];</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; gchar socketbuffer[10240];</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; gchar *socketbuffer_ptr = NULL;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; gint socketbuffer_len = 0;</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; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL);</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; <span class="comment">/* Accept a local connection */</span></div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; sock = accept(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a>, NULL, NULL);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; <span class="keywordflow">if</span> (sock &lt; 0) {</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to accept local socket&quot;</span>);</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a> = 0;</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; }</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; close(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a>);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a> = -1;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; channels[0] = nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a>;</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; channels[1] = NULL;</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160;</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <span class="comment">/* Start the tunnel data transmission */</span></div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; <span class="keywordflow">while</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a>) {</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; timeout.tv_sec = 1;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; timeout.tv_usec = 0;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; FD_ZERO(&amp;<span class="keyword">set</span>);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; FD_SET(sock, &amp;<span class="keyword">set</span>);</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"> 814</span>&#160; ret = ssh_select(channels, channels_out, sock + 1, &amp;<span class="keyword">set</span>, &amp;timeout);</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a>)</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <span class="keywordflow">if</span> (ret == SSH_EINTR)</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keywordflow">if</span> (ret == -1)</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="keywordflow">if</span> (FD_ISSET(sock, &amp;<span class="keyword">set</span>)) {</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; len = read(sock, buffer, <span class="keyword">sizeof</span>(buffer));</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; <span class="keywordflow">if</span> (len == 0)</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (len &gt; 0) {</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <span class="keywordflow">for</span> (ptr = buffer, lenw = 0; len &gt; 0; len -= lenw, ptr += lenw) {</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; ssh_set_fd_towrite(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a>);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; lenw = ssh_channel_write(channels[0], (<span class="keywordtype">char</span>*)ptr, len);</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <span class="keywordflow">if</span> (lenw &lt;= 0) {</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">break</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; }</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; }</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; }</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a>)</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <span class="keywordflow">if</span> (channels_out[0] &amp;&amp; socketbuffer_len &lt;= 0) {</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; len = ssh_channel_read_nonblocking(channels_out[0], socketbuffer, <span class="keyword">sizeof</span>(socketbuffer), 0);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">if</span> (len == SSH_ERROR || len == SSH_EOF) {</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (len &gt; 0) {</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; socketbuffer_ptr = socketbuffer;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; socketbuffer_len = len;</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <span class="comment">/* Clean up the stderr buffer in case FreeNX send something there */</span></div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; len = ssh_channel_read_nonblocking(channels_out[0], buffer, <span class="keyword">sizeof</span>(buffer), 1);</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <span class="keywordflow">if</span> (len == SSH_ERROR || len == SSH_EOF) {</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; }</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; }</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;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> &amp;&amp; socketbuffer_len &gt; 0) {</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; <span class="keywordflow">for</span> (lenw = 0; socketbuffer_len &gt; 0; socketbuffer_len -= lenw, socketbuffer_ptr += lenw) {</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; lenw = write(sock, socketbuffer_ptr, socketbuffer_len);</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; <span class="keywordflow">if</span> (lenw == -1 &amp;&amp; errno == EAGAIN &amp;&amp; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a>) {</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; <span class="comment">/* Sometimes we cannot write to a socket (always EAGAIN), probably because it’s internal</span></div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;<span class="comment"> * buffer is full. We need read the pending bytes from the socket first. so here we simply</span></div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;<span class="comment"> * break, leave the buffer there, and continue with other data */</span></div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; }</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; <span class="keywordflow">if</span> (lenw &lt;= 0) {</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = FALSE;</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; }</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; }</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160;</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a> = 0;</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> NULL;</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="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d"> 881</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</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; gint port;</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; gint sock;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; gint sockopt = 1;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <span class="keyword">struct </span>sockaddr_in sin;</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; <span class="keywordflow">if</span> (!nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>)</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;bye&quot;</span>);</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a>(nx, 999)) {</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; <span class="comment">/* Shoud not happen, just in case */</span></div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Server won’t say bye to us?&quot;</span>);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; }</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; port = (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a> ? nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a> : nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a>) + 4000;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="comment">/* Create the server socket that listens on the local port */</span></div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; sock = socket(AF_INET, SOCK_STREAM, 0);</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; <span class="keywordflow">if</span> (sock &lt; 0) {</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to create socket.&quot;</span>);</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; <span class="keywordflow">return</span> FALSE;</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; setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &amp;sockopt, <span class="keyword">sizeof</span>(sockopt));</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; sin.sin_family = AF_INET;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; sin.sin_port = htons(port);</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; sin.sin_addr.s_addr = inet_addr(<span class="stringliteral">&quot;127.0.0.1&quot;</span>);</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; <span class="keywordflow">if</span> (bind(sock, (<span class="keyword">struct</span> sockaddr *)&amp;sin, <span class="keyword">sizeof</span>(sin))) {</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to bind on local port.&quot;</span>);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; close(sock);</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; }</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> (listen(sock, 1)) {</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to listen on local port.&quot;</span>);</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; close(sock);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a> = sock;</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a> = TRUE;</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a>, NULL, <a class="code" href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">remmina_nx_session_tunnel_main_thread</a>, nx)) {</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;Failed to initialize pthread.&quot;</span>);</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a> = 0;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; }</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160;<span class="keyword">static</span> gchar*</div><div class="line"><a name="l00937"></a><span class="lineno"><a class="line" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf"> 937</a></span>&#160;<a class="code" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">remmina_nx_session_get_proxy_option</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;{</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; <span class="keywordflow">if</span> (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>) {</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;nx,session=%s,cookie=%s,id=%s,shmem=1,shpix=1,connect=127.0.0.1:%i&quot;</span>,</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; (gchar*)g_hash_table_lookup(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>, <span class="stringliteral">&quot;session&quot;</span>), nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</a>,</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a>, (nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a> ? nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a> : nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a>));</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;nx,session=%s,cookie=%s,id=%s,shmem=1,shpix=1,connect=%s:%i&quot;</span>,</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; (gchar*)g_hash_table_lookup(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a>, <span class="stringliteral">&quot;session&quot;</span>), nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</a>,</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a>, nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a>, nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a>);</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; }</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160;}</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"><a class="line" href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0"> 951</a></span>&#160;gboolean <a class="code" href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;{</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; gchar *argv[50];</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; gint argc;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; GError *<a class="code" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a> = NULL;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; gboolean ret;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; gchar **envp;</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; gchar *s;</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; gint i;</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="comment">/* Copy all current environment variable, but change DISPLAY. Assume we should always have DISPLAY… */</span></div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <span class="keywordflow">if</span> (display &gt;= 0) {</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; envp = g_listenv();</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; <span class="keywordflow">for</span> (i = 0; envp[i]; i++) {</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(envp[i], <span class="stringliteral">&quot;DISPLAY&quot;</span>) == 0) {</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;DISPLAY=:%i&quot;</span>, display);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s=%s&quot;</span>, envp[i], g_getenv(envp[i]));</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; }</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; g_free(envp[i]);</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; envp[i] = s;</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; }</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; envp = NULL;</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"> 977</span>&#160;</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; argc = 0;</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;nxproxy&quot;</span>);</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-S&quot;</span>);</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; argv[argc++] = <a class="code" href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">remmina_nx_session_get_proxy_option</a>(nx);</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; argv[argc++] = NULL;</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; ret = g_spawn_async(NULL, argv, envp, G_SPAWN_SEARCH_PATH | G_SPAWN_DO_NOT_REAP_CHILD, NULL, NULL, &amp;nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>,</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; &amp;error);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; g_strfreev(envp);</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; argc; i++)</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; g_free(argv[i]);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160;</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; <span class="keywordflow">if</span> (!ret) {</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; <a class="code" href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a>(nx, <span class="stringliteral">&quot;%s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; }</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; <span class="keywordflow">if</span> (exit_func) {</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a> = g_child_watch_add(nx-&gt;<a class="code" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a>, exit_func, user_data);</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;</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;}</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"><a class="line" href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea"> 1002</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx)</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;{</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <a class="code" href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a>(nx, <span class="stringliteral">&quot;bye&quot;</span>);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; <a class="code" href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">remmina_nx_session_get_response</a>(nx);</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;}</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;</div><div class="ttc" id="nx__session_8c_html_a6d58e7958d408e2a0abd015688ba912b"><div class="ttname"><a href="nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a></div><div class="ttdeci">gboolean remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00529">nx_session.c:529</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a2b4b40924bf991f5c889a90ee7fd48b4"><div class="ttname"><a href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">_RemminaNXSession::proxy_watch_source</a></div><div class="ttdeci">guint proxy_watch_source</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00125">nx_session.c:125</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a8de7b5ae6b68d7e193cd3f55704d32f7"><div class="ttname"><a href="nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a></div><div class="ttdeci">void remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00250">nx_session.c:250</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ac97d379b04df53ca7dc166676fcbffb5"><div class="ttname"><a href="nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a></div><div class="ttdeci">void remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00244">nx_session.c:244</a></div></div>
+<div class="ttc" id="nx__session_8c_html_abc225e383dc70c0f6a12baf7b9cc3841"><div class="ttname"><a href="nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841">remmina_nx_session_expect_status</a></div><div class="ttdeci">static gboolean remmina_nx_session_expect_status(RemminaNXSession *nx, gint status)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00507">nx_session.c:507</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aaf2a3e4773fb982b8418fd2f147abaea"><div class="ttname"><a href="nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a></div><div class="ttdeci">void remmina_nx_session_bye(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l01002">nx_session.c:1002</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html"><div class="ttname"><a href="struct___remmina_n_x_session.html">_RemminaNXSession</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00093">nx_session.c:93</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a1a72f258cb806b8f1150c4719a68af28"><div class="ttname"><a href="nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28">remmina_nx_session_parse_line</a></div><div class="ttdeci">static gint remmina_nx_session_parse_line(RemminaNXSession *nx, const gchar *line, gchar **valueptr)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00354">nx_session.c:354</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aacd5938d1a58872644a3a68bc1cac66d"><div class="ttname"><a href="nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a></div><div class="ttdeci">gboolean remmina_nx_session_attach(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00753">nx_session.c:753</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a7373c5ab0ca53f54c493f9e461ae679d"><div class="ttname"><a href="nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a></div><div class="ttdeci">gboolean remmina_nx_session_tunnel_open(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00881">nx_session.c:881</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ade30ec7b3ab10db3c0d944ff0f93a64f"><div class="ttname"><a href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">_RemminaNXSession::session</a></div><div class="ttdeci">ssh_session session</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00095">nx_session.c:95</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a2123ed756f82d65c5c6f4062606803c6"><div class="ttname"><a href="nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a></div><div class="ttdeci">gboolean remmina_nx_session_start(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00746">nx_session.c:746</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa200231bf9d2f3e00a8f92bacddbe09f"><div class="ttname"><a href="nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f">remmina_nx_session_get_line</a></div><div class="ttdeci">static gchar * remmina_nx_session_get_line(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00406">nx_session.c:406</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ab3c48efc4625d0f41dc99a6e383943a8"><div class="ttname"><a href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a></div><div class="ttdeci">void(* RemminaNXLogCallback)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00052">nx_session.h:52</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad3ab1f08fffd57b68fa36360c7ef8135"><div class="ttname"><a href="nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135">remmina_get_keytype</a></div><div class="ttdeci">static gboolean remmina_get_keytype(const gchar *private_key_file, gint *keytype, gboolean *encrypted)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00049">nx_session.c:49</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad01b66a877f8c30dc4bdf1ba6f3beac0"><div class="ttname"><a href="nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a></div><div class="ttdeci">gboolean remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00951">nx_session.c:951</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00045">nx_session.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ae7db217f1b651367e3f2b99d2823c22a"><div class="ttname"><a href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">_RemminaNXSession::session_id</a></div><div class="ttdeci">gchar * session_id</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00116">nx_session.c:116</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a38fc966f870cf85028243a968356aee7"><div class="ttname"><a href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">_RemminaNXSession::version</a></div><div class="ttdeci">gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00115">nx_session.c:115</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_acb432c33574cfe82012c70d34a495b82"><div class="ttname"><a href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">_RemminaNXSession::allow_start</a></div><div class="ttdeci">gboolean allow_start</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00120">nx_session.c:120</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ae4e7f359af598b707927c162c3c37e1e"><div class="ttname"><a href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a></div><div class="ttdeci">const gchar * remmina_nx_session_get_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00223">nx_session.c:223</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a563a10864cfa73bffc2899141b6a35ea"><div class="ttname"><a href="nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea">remmina_nx_session_send_session_command</a></div><div class="ttdeci">static gboolean remmina_nx_session_send_session_command(RemminaNXSession *nx, const gchar *cmd_type, gint response)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00646">nx_session.c:646</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a320798f97f2c662fd0005cbc7ae606b3"><div class="ttname"><a href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">_RemminaNXSession::response_pos</a></div><div class="ttdeci">gint response_pos</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00110">nx_session.c:110</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ae3d1942fc8672cb8e1ad62e26ae162c5"><div class="ttname"><a href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">_RemminaNXSession::proxy_cookie</a></div><div class="ttdeci">gchar * proxy_cookie</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00118">nx_session.c:118</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a3fd55eec41ac937d5f92b76af7112dac"><div class="ttname"><a href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">_RemminaNXSession::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00097">nx_session.c:97</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a94f4baa1c4a6befb0c0a84f1b87d8508"><div class="ttname"><a href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">_RemminaNXSession::response</a></div><div class="ttdeci">GString * response</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00109">nx_session.c:109</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a9a98fead7295fa90624d8a494d3570cf"><div class="ttname"><a href="nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf">remmina_nx_session_get_proxy_option</a></div><div class="ttdeci">static gchar * remmina_nx_session_get_proxy_option(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00937">nx_session.c:937</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad6ae8dc606c87632bb8b8b477509bcea"><div class="ttname"><a href="nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea">remmina_nx_session_expect_status2</a></div><div class="ttdeci">static gint remmina_nx_session_expect_status2(RemminaNXSession *nx, gint status, gint status2)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00490">nx_session.c:490</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a33e8f6637275c331c86f321bf1da448c"><div class="ttname"><a href="nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a></div><div class="ttdeci">RemminaNXSession * remmina_nx_session_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00129">nx_session.c:129</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ab69a075e55bbed5a8104a6c319e9a20c"><div class="ttname"><a href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a></div><div class="ttdeci">gboolean(* RemminaNXPassphraseCallback)(gchar **passphrase, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00051">nx_session.h:51</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa02aea77cb6428ea4eebddc0d80217e9"><div class="ttname"><a href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a></div><div class="ttdeci">gboolean remmina_nx_session_has_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00216">nx_session.c:216</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a8265fdd8a96b911b5cd8092599992048"><div class="ttname"><a href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">_RemminaNXSession::error</a></div><div class="ttdeci">gchar * error</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00098">nx_session.c:98</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a1d1f38d0bee83fe75e528a7f157c12c0"><div class="ttname"><a href="nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0">remmina_nx_session_parse_session_list_line</a></div><div class="ttdeci">static void remmina_nx_session_parse_session_list_line(RemminaNXSession *nx, const gchar *line)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00298">nx_session.c:298</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa1398fd24f8083867db1f8f392638bf0"><div class="ttname"><a href="nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0">remmina_nx_session_add_common_parameters</a></div><div class="ttdeci">static void remmina_nx_session_add_common_parameters(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00727">nx_session.c:727</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a7a48b762c4eefbc6f48b93d336dd0874"><div class="ttname"><a href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">_RemminaNXSession::running</a></div><div class="ttdeci">gboolean running</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00103">nx_session.c:103</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a2dc3db8078c966530a0790f208c9148c"><div class="ttname"><a href="nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c">nx_default_private_key</a></div><div class="ttdeci">static const gchar nx_default_private_key[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00078">nx_session.c:78</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa7cec91dde56b12471bbe8acd451d9d3"><div class="ttname"><a href="nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a></div><div class="ttdeci">void remmina_nx_session_free(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00145">nx_session.c:145</a></div></div>
+<div class="ttc" id="nx__session_8h_html"><div class="ttname"><a href="nx__session_8h.html">nx_session.h</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ab16725d4a1ce169180b759b66492fc1d"><div class="ttname"><a href="nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d">nx_hello_server_msg</a></div><div class="ttdeci">static const gchar nx_hello_server_msg[]</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00091">nx_session.c:91</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a36da737bdb6708e5e5e85437cab112f9"><div class="ttname"><a href="nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a></div><div class="ttdeci">void remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00238">nx_session.c:238</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a128499f3768aae8bc5c233f6fb616a76"><div class="ttname"><a href="nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a></div><div class="ttdeci">gboolean remmina_nx_session_list(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00667">nx_session.c:667</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ae2e716ee1eb3d039e99d79f6988946e7"><div class="ttname"><a href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">_RemminaNXSession::log_callback</a></div><div class="ttdeci">RemminaNXLogCallback log_callback</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00099">nx_session.c:99</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a7d021133105bd538af31817eff263324"><div class="ttname"><a href="nx__session_8c.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a></div><div class="ttdeci">gboolean remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00697">nx_session.c:697</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a96a06206abbe66cc159c9c2900501594"><div class="ttname"><a href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">_RemminaNXSession::session_list_state</a></div><div class="ttdeci">gint session_list_state</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00122">nx_session.c:122</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a301e9e32110ea5c3269025921f9b11a3"><div class="ttname"><a href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">_RemminaNXSession::session_parameters</a></div><div class="ttdeci">GHashTable * session_parameters</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00107">nx_session.c:107</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a13c14492f22eda65b325337be14aa3ef"><div class="ttname"><a href="nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a></div><div class="ttdeci">gboolean remmina_nx_session_allow_start(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00721">nx_session.c:721</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a663b5b339b919527db0c7467123c7f62"><div class="ttname"><a href="nx__session_8c.html#a663b5b339b919527db0c7467123c7f62">remmina_nx_session_send_command</a></div><div class="ttdeci">static void remmina_nx_session_send_command(RemminaNXSession *nx, const gchar *cmdfmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00513">nx_session.c:513</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a625f0605bf73f0465866b26cf7563eac"><div class="ttname"><a href="nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac">remmina_nx_session_parse_response</a></div><div class="ttdeci">static gint remmina_nx_session_parse_response(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00434">nx_session.c:434</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ae4e00fb7501df9af20b7fdc61331c347"><div class="ttname"><a href="nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a></div><div class="ttdeci">void remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00634">nx_session.c:634</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a5d6f81a44339efa85a0048f759207825"><div class="ttname"><a href="nx__session_8c.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a></div><div class="ttdeci">gchar * remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00706">nx_session.c:706</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a4bce96ad49020acbbbbe09c3eefa97a6"><div class="ttname"><a href="nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6">remmina_nx_session_tunnel_main_thread</a></div><div class="ttdeci">static gpointer remmina_nx_session_tunnel_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00773">nx_session.c:773</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a68bff7bd24db82a337fc00e42942d1c6"><div class="ttname"><a href="nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6">remmina_nx_session_set_application_error</a></div><div class="ttdeci">static void remmina_nx_session_set_application_error(RemminaNXSession *nx, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00205">nx_session.c:205</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a5d82270696558ff011d0f1583e8e5b44"><div class="ttname"><a href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">_RemminaNXSession::session_list</a></div><div class="ttdeci">GtkListStore * session_list</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00121">nx_session.c:121</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a49f2ddc5baaf992f7a39f3d8f6ab061d"><div class="ttname"><a href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a></div><div class="ttdeci">void remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00715">nx_session.c:715</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a936a3e78f90b86fc1d6fbb1ad82e41d6"><div class="ttname"><a href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">_RemminaNXSession::proxy_pid</a></div><div class="ttdeci">GPid proxy_pid</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00124">nx_session.c:124</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00041">nx_session.h:41</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00044">nx_session.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a792e500d6555092699d0a1ad117f627f"><div class="ttname"><a href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">_RemminaNXSession::session_display</a></div><div class="ttdeci">gint session_display</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00117">nx_session.c:117</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">REMMINA_NX_SESSION_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00046">nx_session.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a061c5a4413fae2bd0b856cb5a079bf17"><div class="ttname"><a href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">_RemminaNXSession::status</a></div><div class="ttdeci">gint status</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00111">nx_session.c:111</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ad217fb5180a6ed57c47f174a0b20cf8c"><div class="ttname"><a href="nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a></div><div class="ttdeci">gboolean remmina_nx_session_terminate(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00767">nx_session.c:767</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a0279cdfc0ad8129fcb3e1cc26297f866"><div class="ttname"><a href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a></div><div class="ttdeci">void remmina_nx_session_clear_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00229">nx_session.c:229</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00043">nx_session.h:43</a></div></div>
+<div class="ttc" id="nx__session_8c_html_abe9c344eaf302b01759e5bd305cb5abc"><div class="ttname"><a href="nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc">remmina_nx_session_set_error</a></div><div class="ttdeci">static void remmina_nx_session_set_error(RemminaNXSession *nx, const gchar *fmt)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00194">nx_session.c:194</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa912b495508a0f74fe8e121c5b532f6b"><div class="ttname"><a href="nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a></div><div class="ttdeci">gboolean remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00611">nx_session.c:611</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00042">nx_session.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a625c909bea52f8e22d277fdf64d67fa4"><div class="ttname"><a href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">_RemminaNXSession::encryption</a></div><div class="ttdeci">gint encryption</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00112">nx_session.c:112</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a5b9d8589f544d54350a6d96b49275e41"><div class="ttname"><a href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a></div><div class="ttdeci">void remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00683">nx_session.c:683</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aadff42154c92ef10a80b403cadec5c1b"><div class="ttname"><a href="nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a></div><div class="ttdeci">gboolean remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00689">nx_session.c:689</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a6e8a2518c6717188f2acda9dd4f5188a"><div class="ttname"><a href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">_RemminaNXSession::localport</a></div><div class="ttdeci">gint localport</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00113">nx_session.c:113</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ae4c9bb12c639ebd1b661cdbc5ebc2bc6"><div class="ttname"><a href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">_RemminaNXSession::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00102">nx_session.c:102</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a880c07dbd498746d06490063159baa4c"><div class="ttname"><a href="nx__session_8c.html#a880c07dbd498746d06490063159baa4c">remmina_nx_session_get_response</a></div><div class="ttdeci">static gboolean remmina_nx_session_get_response(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00256">nx_session.c:256</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a0de55cb12904503503d7d9ab3338aa33"><div class="ttname"><a href="nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a></div><div class="ttdeci">gboolean remmina_nx_session_restore(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00760">nx_session.c:760</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_adc8191b8b242c369a1287df3333ff9d8"><div class="ttname"><a href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">_RemminaNXSession::server_sock</a></div><div class="ttdeci">gint server_sock</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00104">nx_session.c:104</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a18ace4f039f5580e24147bb5db1b2aad"><div class="ttname"><a href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">_RemminaNXSession::channel</a></div><div class="ttdeci">ssh_channel channel</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00096">nx_session.c:96</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session_8c.html">nx_session.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session_8h.html b/docs/nx__session_8h.html
new file mode 100644
index 000000000..d30c96461
--- /dev/null
+++ b/docs/nx__session_8h.html
@@ -0,0 +1,951 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">nx_session.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__session_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a07d927acbda6a5ca8beecdda9fdf9fff"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_n_x_session.html">_RemminaNXSession</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a></td></tr>
+<tr class="separator:a07d927acbda6a5ca8beecdda9fdf9fff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab69a075e55bbed5a8104a6c319e9a20c"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a>) (gchar **passphrase, gpointer userdata)</td></tr>
+<tr class="separator:ab69a075e55bbed5a8104a6c319e9a20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3c48efc4625d0f41dc99a6e383943a8"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a>) (const gchar *fmt,...)</td></tr>
+<tr class="separator:ab3c48efc4625d0f41dc99a6e383943a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a77867ab4129f63159b37bca3b652a798"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>,
+<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a>,
+<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>,
+<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>,
+<br />
+&#160;&#160;<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a>,
+<a class="el" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">REMMINA_NX_SESSION_N_COLUMNS</a>
+<br />
+ }</td></tr>
+<tr class="separator:a77867ab4129f63159b37bca3b652a798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a33e8f6637275c331c86f321bf1da448c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a> (void)</td></tr>
+<tr class="separator:a33e8f6637275c331c86f321bf1da448c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7cec91dde56b12471bbe8acd451d9d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa7cec91dde56b12471bbe8acd451d9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa02aea77cb6428ea4eebddc0d80217e9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aa02aea77cb6428ea4eebddc0d80217e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e7f359af598b707927c162c3c37e1e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:ae4e7f359af598b707927c162c3c37e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0279cdfc0ad8129fcb3e1cc26297f866"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a0279cdfc0ad8129fcb3e1cc26297f866"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36da737bdb6708e5e5e85437cab112f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint encryption)</td></tr>
+<tr class="separator:a36da737bdb6708e5e5e85437cab112f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac97d379b04df53ca7dc166676fcbffb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint localport)</td></tr>
+<tr class="separator:ac97d379b04df53ca7dc166676fcbffb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8de7b5ae6b68d7e193cd3f55704d32f7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, <a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> log_callback)</td></tr>
+<tr class="separator:a8de7b5ae6b68d7e193cd3f55704d32f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d58e7958d408e2a0abd015688ba912b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *server, guint port, const gchar *private_key_file, <a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a> passphrase_func, gpointer userdata)</td></tr>
+<tr class="separator:a6d58e7958d408e2a0abd015688ba912b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa912b495508a0f74fe8e121c5b532f6b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *username, const gchar *password)</td></tr>
+<tr class="separator:aa912b495508a0f74fe8e121c5b532f6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e00fb7501df9af20b7fdc61331c347"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, const gchar *name, const gchar *valuefmt,...)</td></tr>
+<tr class="separator:ae4e00fb7501df9af20b7fdc61331c347"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a128499f3768aae8bc5c233f6fb616a76"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a128499f3768aae8bc5c233f6fb616a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b9d8589f544d54350a6d96b49275e41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeView *tree)</td></tr>
+<tr class="separator:a5b9d8589f544d54350a6d96b49275e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadff42154c92ef10a80b403cadec5c1b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter)</td></tr>
+<tr class="separator:aadff42154c92ef10a80b403cadec5c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d021133105bd538af31817eff263324"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter)</td></tr>
+<tr class="separator:a7d021133105bd538af31817eff263324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d6f81a44339efa85a0048f759207825"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column)</td></tr>
+<tr class="separator:a5d6f81a44339efa85a0048f759207825"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49f2ddc5baaf992f7a39f3d8f6ab061d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column, const gchar *data)</td></tr>
+<tr class="separator:a49f2ddc5baaf992f7a39f3d8f6ab061d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13c14492f22eda65b325337be14aa3ef"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a13c14492f22eda65b325337be14aa3ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2123ed756f82d65c5c6f4062606803c6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a2123ed756f82d65c5c6f4062606803c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacd5938d1a58872644a3a68bc1cac66d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aacd5938d1a58872644a3a68bc1cac66d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0de55cb12904503503d7d9ab3338aa33"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a0de55cb12904503503d7d9ab3338aa33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad217fb5180a6ed57c47f174a0b20cf8c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:ad217fb5180a6ed57c47f174a0b20cf8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7373c5ab0ca53f54c493f9e461ae679d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:a7373c5ab0ca53f54c493f9e461ae679d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad01b66a877f8c30dc4bdf1ba6f3beac0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</td></tr>
+<tr class="separator:ad01b66a877f8c30dc4bdf1ba6f3beac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf2a3e4773fb982b8418fd2f147abaea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a> (<a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *nx)</td></tr>
+<tr class="separator:aaf2a3e4773fb982b8418fd2f147abaea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ab3c48efc4625d0f41dc99a6e383943a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3c48efc4625d0f41dc99a6e383943a8">&#9670;&nbsp;</a></span>RemminaNXLogCallback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* RemminaNXLogCallback) (const gchar *fmt,...)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8h_source.html#l00052">52</a> of file <a class="el" href="nx__session_8h_source.html">nx_session.h</a>.</p>
+
+</div>
+</div>
+<a id="ab69a075e55bbed5a8104a6c319e9a20c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab69a075e55bbed5a8104a6c319e9a20c">&#9670;&nbsp;</a></span>RemminaNXPassphraseCallback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gboolean(* RemminaNXPassphraseCallback) (gchar **passphrase, gpointer userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8h_source.html#l00051">51</a> of file <a class="el" href="nx__session_8h_source.html">nx_session.h</a>.</p>
+
+</div>
+</div>
+<a id="a07d927acbda6a5ca8beecdda9fdf9fff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07d927acbda6a5ca8beecdda9fdf9fff">&#9670;&nbsp;</a></span>RemminaNXSession</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_n_x_session.html">_RemminaNXSession</a> <a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8h_source.html#l00049">49</a> of file <a class="el" href="nx__session_8h_source.html">nx_session.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a77867ab4129f63159b37bca3b652a798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77867ab4129f63159b37bca3b652a798">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"></a>REMMINA_NX_SESSION_COLUMN_DISPLAY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431"></a>REMMINA_NX_SESSION_COLUMN_TYPE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"></a>REMMINA_NX_SESSION_COLUMN_ID&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9"></a>REMMINA_NX_SESSION_COLUMN_STATUS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912"></a>REMMINA_NX_SESSION_COLUMN_NAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1"></a>REMMINA_NX_SESSION_N_COLUMNS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8h_source.html#l00040">40</a> of file <a class="el" href="nx__session_8h_source.html">nx_session.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ae4e00fb7501df9af20b7fdc61331c347"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4e00fb7501df9af20b7fdc61331c347">&#9670;&nbsp;</a></span>remmina_nx_session_add_parameter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_add_parameter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>valuefmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00634">634</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a13c14492f22eda65b325337be14aa3ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13c14492f22eda65b325337be14aa3ef">&#9670;&nbsp;</a></span>remmina_nx_session_allow_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_allow_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00721">721</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aacd5938d1a58872644a3a68bc1cac66d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacd5938d1a58872644a3a68bc1cac66d">&#9670;&nbsp;</a></span>remmina_nx_session_attach()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_attach </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00753">753</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf2a3e4773fb982b8418fd2f147abaea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf2a3e4773fb982b8418fd2f147abaea">&#9670;&nbsp;</a></span>remmina_nx_session_bye()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_bye </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l01002">1002</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a0279cdfc0ad8129fcb3e1cc26297f866"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0279cdfc0ad8129fcb3e1cc26297f866">&#9670;&nbsp;</a></span>remmina_nx_session_clear_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_clear_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00229">229</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa7cec91dde56b12471bbe8acd451d9d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7cec91dde56b12471bbe8acd451d9d3">&#9670;&nbsp;</a></span>remmina_nx_session_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00145">145</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4e7f359af598b707927c162c3c37e1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4e7f359af598b707927c162c3c37e1e">&#9670;&nbsp;</a></span>remmina_nx_session_get_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_nx_session_get_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00223">223</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa02aea77cb6428ea4eebddc0d80217e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa02aea77cb6428ea4eebddc0d80217e9">&#9670;&nbsp;</a></span>remmina_nx_session_has_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_has_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00216">216</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ad01b66a877f8c30dc4bdf1ba6f3beac0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad01b66a877f8c30dc4bdf1ba6f3beac0">&#9670;&nbsp;</a></span>remmina_nx_session_invoke_proxy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_invoke_proxy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>display</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GChildWatchFunc&#160;</td>
+ <td class="paramname"><em>exit_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00951">951</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aadff42154c92ef10a80b403cadec5c1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadff42154c92ef10a80b403cadec5c1b">&#9670;&nbsp;</a></span>remmina_nx_session_iter_first()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_iter_first </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00689">689</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a5d6f81a44339efa85a0048f759207825"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d6f81a44339efa85a0048f759207825">&#9670;&nbsp;</a></span>remmina_nx_session_iter_get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_nx_session_iter_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>column</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00706">706</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d021133105bd538af31817eff263324"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d021133105bd538af31817eff263324">&#9670;&nbsp;</a></span>remmina_nx_session_iter_next()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_iter_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00697">697</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a49f2ddc5baaf992f7a39f3d8f6ab061d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49f2ddc5baaf992f7a39f3d8f6ab061d">&#9670;&nbsp;</a></span>remmina_nx_session_iter_set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_iter_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00715">715</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a128499f3768aae8bc5c233f6fb616a76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a128499f3768aae8bc5c233f6fb616a76">&#9670;&nbsp;</a></span>remmina_nx_session_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00667">667</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="aa912b495508a0f74fe8e121c5b532f6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa912b495508a0f74fe8e121c5b532f6b">&#9670;&nbsp;</a></span>remmina_nx_session_login()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_login </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00611">611</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a33e8f6637275c331c86f321bf1da448c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e8f6637275c331c86f321bf1da448c">&#9670;&nbsp;</a></span>remmina_nx_session_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a>* remmina_nx_session_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00129">129</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d58e7958d408e2a0abd015688ba912b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d58e7958d408e2a0abd015688ba912b">&#9670;&nbsp;</a></span>remmina_nx_session_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>private_key_file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a>&#160;</td>
+ <td class="paramname"><em>passphrase_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00529">529</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a0de55cb12904503503d7d9ab3338aa33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0de55cb12904503503d7d9ab3338aa33">&#9670;&nbsp;</a></span>remmina_nx_session_restore()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_restore </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00760">760</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a36da737bdb6708e5e5e85437cab112f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36da737bdb6708e5e5e85437cab112f9">&#9670;&nbsp;</a></span>remmina_nx_session_set_encryption()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_encryption </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>encryption</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00238">238</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ac97d379b04df53ca7dc166676fcbffb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac97d379b04df53ca7dc166676fcbffb5">&#9670;&nbsp;</a></span>remmina_nx_session_set_localport()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_localport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>localport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00244">244</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a8de7b5ae6b68d7e193cd3f55704d32f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8de7b5ae6b68d7e193cd3f55704d32f7">&#9670;&nbsp;</a></span>remmina_nx_session_set_log_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_log_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a>&#160;</td>
+ <td class="paramname"><em>log_callback</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00250">250</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a5b9d8589f544d54350a6d96b49275e41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b9d8589f544d54350a6d96b49275e41">&#9670;&nbsp;</a></span>remmina_nx_session_set_tree_view()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_set_tree_view </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeView *&#160;</td>
+ <td class="paramname"><em>tree</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00683">683</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a2123ed756f82d65c5c6f4062606803c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2123ed756f82d65c5c6f4062606803c6">&#9670;&nbsp;</a></span>remmina_nx_session_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00746">746</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ad217fb5180a6ed57c47f174a0b20cf8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad217fb5180a6ed57c47f174a0b20cf8c">&#9670;&nbsp;</a></span>remmina_nx_session_terminate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_terminate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00767">767</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a7373c5ab0ca53f54c493f9e461ae679d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7373c5ab0ca53f54c493f9e461ae679d">&#9670;&nbsp;</a></span>remmina_nx_session_tunnel_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_nx_session_tunnel_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td>
+ <td class="paramname"><em>nx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00881">881</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session_8h.html">nx_session.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session_8h.js b/docs/nx__session_8h.js
new file mode 100644
index 000000000..2e9f59a61
--- /dev/null
+++ b/docs/nx__session_8h.js
@@ -0,0 +1,37 @@
+var nx__session_8h =
+[
+ [ "RemminaNXLogCallback", "nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8", null ],
+ [ "RemminaNXPassphraseCallback", "nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c", null ],
+ [ "RemminaNXSession", "nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff", null ],
+ [ "REMMINA_NX_SESSION_COLUMN_DISPLAY", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca", null ],
+ [ "REMMINA_NX_SESSION_COLUMN_TYPE", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431", null ],
+ [ "REMMINA_NX_SESSION_COLUMN_ID", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d", null ],
+ [ "REMMINA_NX_SESSION_COLUMN_STATUS", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9", null ],
+ [ "REMMINA_NX_SESSION_COLUMN_NAME", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912", null ],
+ [ "REMMINA_NX_SESSION_N_COLUMNS", "nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1", null ],
+ [ "remmina_nx_session_add_parameter", "nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347", null ],
+ [ "remmina_nx_session_allow_start", "nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef", null ],
+ [ "remmina_nx_session_attach", "nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d", null ],
+ [ "remmina_nx_session_bye", "nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea", null ],
+ [ "remmina_nx_session_clear_error", "nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866", null ],
+ [ "remmina_nx_session_free", "nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3", null ],
+ [ "remmina_nx_session_get_error", "nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e", null ],
+ [ "remmina_nx_session_has_error", "nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9", null ],
+ [ "remmina_nx_session_invoke_proxy", "nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0", null ],
+ [ "remmina_nx_session_iter_first", "nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b", null ],
+ [ "remmina_nx_session_iter_get", "nx__session_8h.html#a5d6f81a44339efa85a0048f759207825", null ],
+ [ "remmina_nx_session_iter_next", "nx__session_8h.html#a7d021133105bd538af31817eff263324", null ],
+ [ "remmina_nx_session_iter_set", "nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d", null ],
+ [ "remmina_nx_session_list", "nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76", null ],
+ [ "remmina_nx_session_login", "nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b", null ],
+ [ "remmina_nx_session_new", "nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c", null ],
+ [ "remmina_nx_session_open", "nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b", null ],
+ [ "remmina_nx_session_restore", "nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33", null ],
+ [ "remmina_nx_session_set_encryption", "nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9", null ],
+ [ "remmina_nx_session_set_localport", "nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5", null ],
+ [ "remmina_nx_session_set_log_callback", "nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7", null ],
+ [ "remmina_nx_session_set_tree_view", "nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41", null ],
+ [ "remmina_nx_session_start", "nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6", null ],
+ [ "remmina_nx_session_terminate", "nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c", null ],
+ [ "remmina_nx_session_tunnel_open", "nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__session_8h_source.html b/docs/nx__session_8h_source.html
new file mode 100644
index 000000000..7d97b36f9
--- /dev/null
+++ b/docs/nx__session_8h_source.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_session.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__session_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keyword">enum</span> {</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"> 41</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>,</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431"> 42</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a>,</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"> 43</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>,</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9"> 44</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912"> 45</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a>,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1"> 46</a></span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">REMMINA_NX_SESSION_N_COLUMNS</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"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_n_x_session.html">_RemminaNXSession</a> <a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c"> 51</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a>)(gchar **passphrase, gpointer userdata);</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8"> 52</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a>)(<span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *<a class="code" href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;gboolean <a class="code" href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a>);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint <a class="code" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <a class="code" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> <a class="code" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a>);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a>, guint port, <span class="keyword">const</span> gchar *private_key_file, <a class="code" href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a> passphrase_func, gpointer userdata);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;gboolean <a class="code" href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *username, <span class="keyword">const</span> gchar *password);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, <span class="keyword">const</span> gchar *name, <span class="keyword">const</span> gchar *valuefmt, ...);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</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"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeView *tree);</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;gboolean <a class="code" href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;gchar *<a class="code" href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column);</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="keywordtype">void</span> <a class="code" href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, GtkTreeIter *iter, gint column, <span class="keyword">const</span> gchar *data);</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;gboolean <a class="code" href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;gboolean <a class="code" href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</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"> 94</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</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;gboolean <a class="code" href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;gboolean <a class="code" href="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;gboolean <a class="code" href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx, gint display, GChildWatchFunc exit_func, gpointer user_data);</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;<span class="keywordtype">void</span> <a class="code" href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a>(<a class="code" href="struct___remmina_n_x_session.html">RemminaNXSession</a> *nx);</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;G_END_DECLS</div><div class="ttc" id="nx__session_8h_html_ae4e00fb7501df9af20b7fdc61331c347"><div class="ttname"><a href="nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347">remmina_nx_session_add_parameter</a></div><div class="ttdeci">void remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00634">nx_session.c:634</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a7d021133105bd538af31817eff263324"><div class="ttname"><a href="nx__session_8h.html#a7d021133105bd538af31817eff263324">remmina_nx_session_iter_next</a></div><div class="ttdeci">gboolean remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00697">nx_session.c:697</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ac97d379b04df53ca7dc166676fcbffb5"><div class="ttname"><a href="nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5">remmina_nx_session_set_localport</a></div><div class="ttdeci">void remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00244">nx_session.c:244</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html"><div class="ttname"><a href="struct___remmina_n_x_session.html">_RemminaNXSession</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00093">nx_session.c:93</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aa02aea77cb6428ea4eebddc0d80217e9"><div class="ttname"><a href="nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a></div><div class="ttdeci">gboolean remmina_nx_session_has_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00216">nx_session.c:216</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ad217fb5180a6ed57c47f174a0b20cf8c"><div class="ttname"><a href="nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c">remmina_nx_session_terminate</a></div><div class="ttdeci">gboolean remmina_nx_session_terminate(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00767">nx_session.c:767</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ab3c48efc4625d0f41dc99a6e383943a8"><div class="ttname"><a href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a></div><div class="ttdeci">void(* RemminaNXLogCallback)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00052">nx_session.h:52</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a128499f3768aae8bc5c233f6fb616a76"><div class="ttname"><a href="nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76">remmina_nx_session_list</a></div><div class="ttdeci">gboolean remmina_nx_session_list(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00667">nx_session.c:667</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a7373c5ab0ca53f54c493f9e461ae679d"><div class="ttname"><a href="nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d">remmina_nx_session_tunnel_open</a></div><div class="ttdeci">gboolean remmina_nx_session_tunnel_open(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00881">nx_session.c:881</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00045">nx_session.h:45</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ae4e7f359af598b707927c162c3c37e1e"><div class="ttname"><a href="nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a></div><div class="ttdeci">const gchar * remmina_nx_session_get_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00223">nx_session.c:223</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a0279cdfc0ad8129fcb3e1cc26297f866"><div class="ttname"><a href="nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a></div><div class="ttdeci">void remmina_nx_session_clear_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00229">nx_session.c:229</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a3fd55eec41ac937d5f92b76af7112dac"><div class="ttname"><a href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">_RemminaNXSession::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00097">nx_session.c:97</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a5d6f81a44339efa85a0048f759207825"><div class="ttname"><a href="nx__session_8h.html#a5d6f81a44339efa85a0048f759207825">remmina_nx_session_iter_get</a></div><div class="ttdeci">gchar * remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00706">nx_session.c:706</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aa912b495508a0f74fe8e121c5b532f6b"><div class="ttname"><a href="nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b">remmina_nx_session_login</a></div><div class="ttdeci">gboolean remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00611">nx_session.c:611</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ab69a075e55bbed5a8104a6c319e9a20c"><div class="ttname"><a href="nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c">RemminaNXPassphraseCallback</a></div><div class="ttdeci">gboolean(* RemminaNXPassphraseCallback)(gchar **passphrase, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00051">nx_session.h:51</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a5b9d8589f544d54350a6d96b49275e41"><div class="ttname"><a href="nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a></div><div class="ttdeci">void remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00683">nx_session.c:683</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a2123ed756f82d65c5c6f4062606803c6"><div class="ttname"><a href="nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6">remmina_nx_session_start</a></div><div class="ttdeci">gboolean remmina_nx_session_start(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00746">nx_session.c:746</a></div></div>
+<div class="ttc" id="nx__session_8h_html_ad01b66a877f8c30dc4bdf1ba6f3beac0"><div class="ttname"><a href="nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0">remmina_nx_session_invoke_proxy</a></div><div class="ttdeci">gboolean remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00951">nx_session.c:951</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_ae2e716ee1eb3d039e99d79f6988946e7"><div class="ttname"><a href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">_RemminaNXSession::log_callback</a></div><div class="ttdeci">RemminaNXLogCallback log_callback</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00099">nx_session.c:99</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a33e8f6637275c331c86f321bf1da448c"><div class="ttname"><a href="nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c">remmina_nx_session_new</a></div><div class="ttdeci">RemminaNXSession * remmina_nx_session_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00129">nx_session.c:129</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aadff42154c92ef10a80b403cadec5c1b"><div class="ttname"><a href="nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b">remmina_nx_session_iter_first</a></div><div class="ttdeci">gboolean remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00689">nx_session.c:689</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a6d58e7958d408e2a0abd015688ba912b"><div class="ttname"><a href="nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b">remmina_nx_session_open</a></div><div class="ttdeci">gboolean remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00529">nx_session.c:529</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a36da737bdb6708e5e5e85437cab112f9"><div class="ttname"><a href="nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9">remmina_nx_session_set_encryption</a></div><div class="ttdeci">void remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00238">nx_session.c:238</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aacd5938d1a58872644a3a68bc1cac66d"><div class="ttname"><a href="nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d">remmina_nx_session_attach</a></div><div class="ttdeci">gboolean remmina_nx_session_attach(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00753">nx_session.c:753</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a13c14492f22eda65b325337be14aa3ef"><div class="ttname"><a href="nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef">remmina_nx_session_allow_start</a></div><div class="ttdeci">gboolean remmina_nx_session_allow_start(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00721">nx_session.c:721</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00041">nx_session.h:41</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a49f2ddc5baaf992f7a39f3d8f6ab061d"><div class="ttname"><a href="nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a></div><div class="ttdeci">void remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00715">nx_session.c:715</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00044">nx_session.h:44</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aa7cec91dde56b12471bbe8acd451d9d3"><div class="ttname"><a href="nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3">remmina_nx_session_free</a></div><div class="ttdeci">void remmina_nx_session_free(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00145">nx_session.c:145</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1">REMMINA_NX_SESSION_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00046">nx_session.h:46</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00043">nx_session.h:43</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00042">nx_session.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a625c909bea52f8e22d277fdf64d67fa4"><div class="ttname"><a href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">_RemminaNXSession::encryption</a></div><div class="ttdeci">gint encryption</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00112">nx_session.c:112</a></div></div>
+<div class="ttc" id="struct___remmina_n_x_session_html_a6e8a2518c6717188f2acda9dd4f5188a"><div class="ttname"><a href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">_RemminaNXSession::localport</a></div><div class="ttdeci">gint localport</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00113">nx_session.c:113</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a8de7b5ae6b68d7e193cd3f55704d32f7"><div class="ttname"><a href="nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7">remmina_nx_session_set_log_callback</a></div><div class="ttdeci">void remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00250">nx_session.c:250</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a0de55cb12904503503d7d9ab3338aa33"><div class="ttname"><a href="nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33">remmina_nx_session_restore</a></div><div class="ttdeci">gboolean remmina_nx_session_restore(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00760">nx_session.c:760</a></div></div>
+<div class="ttc" id="nx__session_8h_html_aaf2a3e4773fb982b8418fd2f147abaea"><div class="ttname"><a href="nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea">remmina_nx_session_bye</a></div><div class="ttdeci">void remmina_nx_session_bye(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l01002">nx_session.c:1002</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session_8h.html">nx_session.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session__manager_8c.html b/docs/nx__session__manager_8c.html
new file mode 100644
index 000000000..c993807e7
--- /dev/null
+++ b/docs/nx__session__manager_8c.html
@@ -0,0 +1,390 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session_manager.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session__manager_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">nx_session_manager.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__session__manager_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9d26a9054a74df5137935c6ea7eed911"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean sensitive)</td></tr>
+<tr class="separator:a9d26a9054a74df5137935c6ea7eed911"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1da3561ad5f667b639738b9289b73d08"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">remmina_nx_session_manager_selection_func</a> (GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path, gboolean path_currently_selected, gpointer user_data)</td></tr>
+<tr class="separator:a1da3561ad5f667b639738b9289b73d08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcb80c50ed17b4e6ce51a06fe690602c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">remmina_nx_session_manager_send_signal</a> (<a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a> *gpdata, gint event_type)</td></tr>
+<tr class="separator:abcb80c50ed17b4e6ce51a06fe690602c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e1362868bf6ce2402193ee1da978a51"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">remmina_nx_session_manager_on_response</a> (GtkWidget *dialog, gint response_id, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6e1362868bf6ce2402193ee1da978a51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67942d77023ce617e67c2592f33e9a3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">remmina_nx_session_manager_on_row_activated</a> (GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a67942d77023ce617e67c2592f33e9a3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad065dfe6474f3d04c41c45568b79dc02"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">remmina_nx_session_manager_main</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad065dfe6474f3d04c41c45568b79dc02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f094257bbcbad3dd9afd970b2de0f2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5f094257bbcbad3dd9afd970b2de0f2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad065dfe6474f3d04c41c45568b79dc02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad065dfe6474f3d04c41c45568b79dc02">&#9670;&nbsp;</a></span>remmina_nx_session_manager_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_nx_session_manager_main </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00124">124</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a6e1362868bf6ce2402193ee1da978a51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e1362868bf6ce2402193ee1da978a51">&#9670;&nbsp;</a></span>remmina_nx_session_manager_on_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_manager_on_response </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>dialog</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00085">85</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a67942d77023ce617e67c2592f33e9a3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67942d77023ce617e67c2592f33e9a3e">&#9670;&nbsp;</a></span>remmina_nx_session_manager_on_row_activated()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_manager_on_row_activated </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeView *&#160;</td>
+ <td class="paramname"><em>tree</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreePath *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00112">112</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a1da3561ad5f667b639738b9289b73d08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1da3561ad5f667b639738b9289b73d08">&#9670;&nbsp;</a></span>remmina_nx_session_manager_selection_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_nx_session_manager_selection_func </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeSelection *&#160;</td>
+ <td class="paramname"><em>selection</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreePath *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>path_currently_selected</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00056">56</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="abcb80c50ed17b4e6ce51a06fe690602c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abcb80c50ed17b4e6ce51a06fe690602c">&#9670;&nbsp;</a></span>remmina_nx_session_manager_send_signal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_manager_send_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122">RemminaPluginNxData</a> *&#160;</td>
+ <td class="paramname"><em>gpdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>event_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00076">76</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d26a9054a74df5137935c6ea7eed911"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d26a9054a74df5137935c6ea7eed911">&#9670;&nbsp;</a></span>remmina_nx_session_manager_set_sensitive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_nx_session_manager_set_sensitive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>sensitive</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00042">42</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f094257bbcbad3dd9afd970b2de0f2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f094257bbcbad3dd9afd970b2de0f2e">&#9670;&nbsp;</a></span>remmina_nx_session_manager_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_nx_session_manager_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00235">235</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session__manager_8c.html">nx_session_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session__manager_8c.js b/docs/nx__session__manager_8c.js
new file mode 100644
index 000000000..1fec74c13
--- /dev/null
+++ b/docs/nx__session__manager_8c.js
@@ -0,0 +1,10 @@
+var nx__session__manager_8c =
+[
+ [ "remmina_nx_session_manager_main", "nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02", null ],
+ [ "remmina_nx_session_manager_on_response", "nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51", null ],
+ [ "remmina_nx_session_manager_on_row_activated", "nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e", null ],
+ [ "remmina_nx_session_manager_selection_func", "nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08", null ],
+ [ "remmina_nx_session_manager_send_signal", "nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c", null ],
+ [ "remmina_nx_session_manager_set_sensitive", "nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911", null ],
+ [ "remmina_nx_session_manager_start", "nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__session__manager_8c_source.html b/docs/nx__session__manager_8c_source.html
new file mode 100644
index 000000000..d6222148d
--- /dev/null
+++ b/docs/nx__session__manager_8c_source.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session_manager.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session__manager_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_session_manager.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__session__manager_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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;X11/Xlib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="nx__plugin_8h.html">nx_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="nx__session__manager_8h.html">nx_session_manager.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911"> 42</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean sensitive)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a>) {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; gtk_dialog_set_response_sensitive(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>, sensitive);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; gtk_dialog_set_response_sensitive(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>, sensitive);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; gtk_dialog_set_response_sensitive(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>, sensitive);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; gtk_dialog_set_response_sensitive(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>, sensitive);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; }</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08"> 56</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">remmina_nx_session_manager_selection_func</a>(GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path,</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gboolean path_currently_selected, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>*)user_data;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a> = FALSE;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (path_currently_selected) {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a>(gp, FALSE);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</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; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, path))</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a> = TRUE;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a>(gp, TRUE);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c"> 76</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">remmina_nx_session_manager_send_signal</a>(<a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata, gint event_type)</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"> 78</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; guchar dummy = (guchar)event_type;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">/* Signal the NX thread to resume execution */</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (write(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a>[1], &amp;dummy, 1)) {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</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"><a class="line" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51"> 85</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">remmina_nx_session_manager_on_response</a>(GtkWidget *dialog, gint response_id, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; gint event_type;</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; <a class="code" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a>(gp, FALSE);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (response_id &lt;= 0) {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; event_type = <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; event_type = response_id;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">if</span> (response_id == <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a> &amp;&amp; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a>) {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>, _(<span class="stringliteral">&quot;Terminating…&quot;</span>));</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (response_id != <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a> = NULL;</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="keywordflow">if</span> (response_id != <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a> &amp;&amp; response_id != <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>) {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea">protocol_plugin_init_show</a>(gp);</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; <a class="code" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">remmina_nx_session_manager_send_signal</a>(gpdata, event_type);</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;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/* Handle double click on a row in the NX Session manager</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> * Automatically close the dialog using the default response ID */</span></div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e"> 112</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">remmina_nx_session_manager_on_row_activated</a>(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;{</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Default response_id %d&quot;</span>,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a>);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a> &gt;= 0) {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gtk_dialog_response(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a>);</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"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02"> 124</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">remmina_nx_session_manager_main</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 126</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; gchar *s;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; GtkWidget *scrolledwindow;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; GtkWidget *tree;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; GtkCellRenderer *renderer;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; GtkTreeViewColumn *column;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; remminafile = <a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a> = -1;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">manager_started</a>) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3">protocol_plugin_init_hide</a>(gp);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; dialog = gtk_dialog_new();</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; s = g_strdup_printf(_(<span class="stringliteral">&quot;NX sessions on %s&quot;</span>), <a class="code" href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gtk_window_set_title(GTK_WINDOW(dialog), s);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; g_free(s);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a>) {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gtk_dialog_add_button(GTK_DIALOG(dialog), _(<span class="stringliteral">&quot;Attach&quot;</span>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="comment">/* Set default response id for attach */</span></div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a> = <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; gtk_dialog_add_button(GTK_DIALOG(dialog), _(<span class="stringliteral">&quot;Restore&quot;</span>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; gtk_dialog_add_button(GTK_DIALOG(dialog), _(<span class="stringliteral">&quot;Start&quot;</span>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a>);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">/* Set default response id for restore */</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a> = <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a>;</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_dialog_add_button(GTK_DIALOG(dialog), _(<span class="stringliteral">&quot;_Cancel&quot;</span>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; gtk_dialog_add_button(GTK_DIALOG(dialog), _(<span class="stringliteral">&quot;Terminate&quot;</span>), <a class="code" href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; gtk_window_set_default_size(GTK_WINDOW(dialog), 640, 300);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a> = dialog;</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; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))), scrolledwindow, TRUE, TRUE, 0);</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; tree = gtk_tree_view_new();</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), tree);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gtk_widget_show(tree);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>, GTK_TREE_VIEW(tree));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">/* Handle double click on the row */</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_signal_connect(G_OBJECT(tree), <span class="stringliteral">&quot;row-activated&quot;</span>,</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; G_CALLBACK(<a class="code" href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">remmina_nx_session_manager_on_row_activated</a>), gp);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; column = gtk_tree_view_column_new_with_attributes(<span class="stringliteral">&quot;#&quot;</span>, renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>, NULL);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a>);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Type&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a>,</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; NULL);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a>);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Display&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>, NULL);</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a>);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Status&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>, NULL);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a>);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Name&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a>,</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; NULL);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a>);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</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"> 210</span>&#160; gtk_tree_selection_set_select_function(gtk_tree_view_get_selection(GTK_TREE_VIEW(tree)),</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">remmina_nx_session_manager_selection_func</a>, gp, 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; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(<a class="code" href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">remmina_nx_session_manager_on_response</a>), gp);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">manager_started</a> = TRUE;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a> = FALSE;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a>(gp, FALSE);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>);</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"> 221</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>)) {</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; dialog = gtk_message_dialog_new((gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a> ? GTK_WINDOW(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a>) : NULL),</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, <span class="stringliteral">&quot;%s&quot;</span>,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>));</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a>);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">remmina_nx_session_manager_send_signal</a>(gpdata, 0);</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;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a> = 0;</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="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5"> 235</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <a class="code" href="struct___remmina_plugin_nx_data.html">RemminaPluginNxData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a> == 0) {</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a> = IDLE_ADD((GSourceFunc)<a class="code" href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">remmina_nx_session_manager_main</a>, gp);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</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="ttc" id="struct___remmina_plugin_nx_data_html_ab2a0f845613b6728a4e2dfef4a335256"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">_RemminaPluginNxData::nx</a></div><div class="ttdeci">RemminaNXSession * nx</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00059">nx_plugin.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1022be897e129b97a7cdf609129fc68d"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">_RemminaPluginNxData::event_pipe</a></div><div class="ttdeci">gint event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00071">nx_plugin.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24">REMMINA_NX_EVENT_RESTORE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00048">nx_plugin.h:48</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_ad065dfe6474f3d04c41c45568b79dc02"><div class="ttname"><a href="nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02">remmina_nx_session_manager_main</a></div><div class="ttdeci">static gboolean remmina_nx_session_manager_main(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00124">nx_session_manager.c:124</a></div></div>
+<div class="ttc" id="nx__session__manager_8h_html"><div class="ttname"><a href="nx__session__manager_8h.html">nx_session_manager.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a0e4e9e8356abb5e1bceb9d677bb45ba1"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">_RemminaPluginNxData::default_response</a></div><div class="ttdeci">gint default_response</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00075">nx_plugin.h:75</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912">REMMINA_NX_SESSION_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00045">nx_session.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_adb992195207fc2b42f7a49890f429f82"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">_RemminaPluginNxData::manager_started</a></div><div class="ttdeci">gboolean manager_started</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00066">nx_plugin.h:66</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a67942d77023ce617e67c2592f33e9a3e"><div class="ttname"><a href="nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e">remmina_nx_session_manager_on_row_activated</a></div><div class="ttdeci">void remmina_nx_session_manager_on_row_activated(GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00112">nx_session_manager.c:112</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f">REMMINA_NX_EVENT_ATTACH</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00049">nx_plugin.h:49</a></div></div>
+<div class="ttc" id="nx__session_8c_html_ae4e7f359af598b707927c162c3c37e1e"><div class="ttname"><a href="nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e">remmina_nx_session_get_error</a></div><div class="ttdeci">const gchar * remmina_nx_session_get_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00223">nx_session.c:223</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a5f094257bbcbad3dd9afd970b2de0f2e"><div class="ttname"><a href="nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e">remmina_nx_session_manager_start</a></div><div class="ttdeci">void remmina_nx_session_manager_start(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00235">nx_session_manager.c:235</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a85b685983e65896aa7af74a1fa24076b"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">_RemminaPluginNxData::manager_dialog</a></div><div class="ttdeci">GtkWidget * manager_dialog</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00067">nx_plugin.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00053">nx_plugin.h:53</a></div></div>
+<div class="ttc" id="nx__session_8c_html_aa02aea77cb6428ea4eebddc0d80217e9"><div class="ttname"><a href="nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9">remmina_nx_session_has_error</a></div><div class="ttdeci">gboolean remmina_nx_session_has_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00216">nx_session.c:216</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_ad23fdec26a110b8974c90650dfe05e54"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">_RemminaPluginNxData::attach_session</a></div><div class="ttdeci">gboolean attach_session</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00073">nx_plugin.h:73</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_abcb80c50ed17b4e6ce51a06fe690602c"><div class="ttname"><a href="nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c">remmina_nx_session_manager_send_signal</a></div><div class="ttdeci">static void remmina_nx_session_manager_send_signal(RemminaPluginNxData *gpdata, gint event_type)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00076">nx_session_manager.c:76</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_acd24d873a255b1a1e8158114d3ce2fe4"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">_RemminaPluginNxData::iter</a></div><div class="ttdeci">GtkTreeIter iter</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00074">nx_plugin.h:74</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e">REMMINA_NX_EVENT_TERMINATE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00050">nx_plugin.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a4c7c10613fa45f91a9082bb72341e2e4"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">_RemminaPluginNxData::manager_selected</a></div><div class="ttdeci">gboolean manager_selected</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00068">nx_plugin.h:68</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21">REMMINA_NX_EVENT_START</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00047">nx_plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a56d9c128a36c1713ddb2dc88033ae7ea"><div class="ttname"><a href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea">_RemminaPluginService::protocol_plugin_init_show</a></div><div class="ttdeci">void(* protocol_plugin_init_show)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00187">plugin.h:187</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac8dab22a850ab394e261bd8d013dc5a3"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3">_RemminaPluginService::protocol_plugin_init_hide</a></div><div class="ttdeci">void(* protocol_plugin_init_hide)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00188">plugin.h:188</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a9d26a9054a74df5137935c6ea7eed911"><div class="ttname"><a href="nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911">remmina_nx_session_manager_set_sensitive</a></div><div class="ttdeci">static void remmina_nx_session_manager_set_sensitive(RemminaProtocolWidget *gp, gboolean sensitive)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00042">nx_session_manager.c:42</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_nx_data_html_a1abb925da85e0240f20009e8bd1b1e0b"><div class="ttname"><a href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">_RemminaPluginNxData::session_manager_start_handler</a></div><div class="ttdeci">guint session_manager_start_handler</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00072">nx_plugin.h:72</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a49f2ddc5baaf992f7a39f3d8f6ab061d"><div class="ttname"><a href="nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d">remmina_nx_session_iter_set</a></div><div class="ttdeci">void remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00715">nx_session.c:715</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca">REMMINA_NX_SESSION_COLUMN_DISPLAY</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00041">nx_session.h:41</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html_aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a"><div class="ttname"><a href="nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a">REMMINA_NX_EVENT_CANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8h_source.html#l00046">nx_plugin.h:46</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9">REMMINA_NX_SESSION_COLUMN_STATUS</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00044">nx_session.h:44</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a0279cdfc0ad8129fcb3e1cc26297f866"><div class="ttname"><a href="nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866">remmina_nx_session_clear_error</a></div><div class="ttdeci">void remmina_nx_session_clear_error(RemminaNXSession *nx)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00229">nx_session.c:229</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d">REMMINA_NX_SESSION_COLUMN_ID</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00043">nx_session.h:43</a></div></div>
+<div class="ttc" id="nx__session_8h_html_a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431"><div class="ttname"><a href="nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431">REMMINA_NX_SESSION_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8h_source.html#l00042">nx_session.h:42</a></div></div>
+<div class="ttc" id="nx__session_8c_html_a5b9d8589f544d54350a6d96b49275e41"><div class="ttname"><a href="nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41">remmina_nx_session_set_tree_view</a></div><div class="ttdeci">void remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session_8c_source.html#l00683">nx_session.c:683</a></div></div>
+<div class="ttc" id="nx__plugin_8c_html_af8bb68a7a80a23d5a13203b813ff18bf"><div class="ttname"><a href="nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf">remmina_plugin_nx_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_nx_service</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00056">nx_plugin.c:56</a></div></div>
+<div class="ttc" id="nx__plugin_8h_html"><div class="ttname"><a href="nx__plugin_8h.html">nx_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a6e1362868bf6ce2402193ee1da978a51"><div class="ttname"><a href="nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51">remmina_nx_session_manager_on_response</a></div><div class="ttdeci">static void remmina_nx_session_manager_on_response(GtkWidget *dialog, gint response_id, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00085">nx_session_manager.c:85</a></div></div>
+<div class="ttc" id="nx__session__manager_8c_html_a1da3561ad5f667b639738b9289b73d08"><div class="ttname"><a href="nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08">remmina_nx_session_manager_selection_func</a></div><div class="ttdeci">static gboolean remmina_nx_session_manager_selection_func(GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path, gboolean path_currently_selected, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00056">nx_session_manager.c:56</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session__manager_8c.html">nx_session_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session__manager_8h.html b/docs/nx__session__manager_8h.html
new file mode 100644
index 000000000..0455574c8
--- /dev/null
+++ b/docs/nx__session__manager_8h.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session_manager.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session__manager_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">nx_session_manager.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="nx__session__manager_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a24df61d5f718595f3586647718caa3e5"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5">remmina_nx_session_manager_start</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a24df61d5f718595f3586647718caa3e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a24df61d5f718595f3586647718caa3e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24df61d5f718595f3586647718caa3e5">&#9670;&nbsp;</a></span>remmina_nx_session_manager_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_nx_session_manager_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session__manager_8c_source.html#l00235">235</a> of file <a class="el" href="nx__session__manager_8c_source.html">nx_session_manager.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session__manager_8h.html">nx_session_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/nx__session__manager_8h.js b/docs/nx__session__manager_8h.js
new file mode 100644
index 000000000..0d2ba8eab
--- /dev/null
+++ b/docs/nx__session__manager_8h.js
@@ -0,0 +1,4 @@
+var nx__session__manager_8h =
+[
+ [ "remmina_nx_session_manager_start", "nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5", null ]
+]; \ No newline at end of file
diff --git a/docs/nx__session__manager_8h_source.html b/docs/nx__session__manager_8h_source.html
new file mode 100644
index 000000000..8dec4eeac
--- /dev/null
+++ b/docs/nx__session__manager_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: nx_session_manager.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('nx__session__manager_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">nx_session_manager.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="nx__session__manager_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keywordtype">void</span> <a class="code" href="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5">remmina_nx_session_manager_start</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;G_END_DECLS</div><div class="ttc" id="nx__session__manager_8h_html_a24df61d5f718595f3586647718caa3e5"><div class="ttname"><a href="nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5">remmina_nx_session_manager_start</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_nx_session_manager_start(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="nx__session__manager_8c_source.html#l00235">nx_session_manager.c:235</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_1a3d72b38ed81de42b4df14ef8f2e809.html">nx</a></li><li class="navelem"><a class="el" href="nx__session__manager_8h.html">nx_session_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/open.png b/docs/open.png
new file mode 100644
index 000000000..30f75c7ef
--- /dev/null
+++ b/docs/open.png
Binary files differ
diff --git a/docs/org.remmina.Remmina.png b/docs/org.remmina.Remmina.png
new file mode 100644
index 000000000..550ab3d69
--- /dev/null
+++ b/docs/org.remmina.Remmina.png
Binary files differ
diff --git a/docs/pages.html b/docs/pages.html
new file mode 100644
index 000000000..ce89f2892
--- /dev/null
+++ b/docs/pages.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Related Pages</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('pages.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Related Pages</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__c_h_a_n_g_e_l_o_g.html" target="_self">Changelog</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__c_o_n_t_r_i_b_u_t_i_n_g.html" target="_self">CONTRIBUTING</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html" target="_self">Table of contents</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html" target="_self">Compilation-guide-for-RHEL</a></td><td class="desc"><b>How to install <a href="https://extensions.gnome.org/extension/615/appindicator-support/">KStatusNotifierItem/AppIndicator Support</a> extension</b></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html" target="_self">Compilation</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html" target="_self">Quick and dirty guide for compiling remmina on Arch</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html" target="_self">Quick and dirty guide for compiling remmina on Debian 10</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html" target="_self">Quick and dirty guide for compiling remmina on Debian 9</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html" target="_self">Compiling Remmina on FreeBSD 11</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html" target="_self">Quick and dirty guide for compiling remmina on ubuntu 14.04</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html" target="_self">Quick and dirty guide for compiling remmina on ubuntu 16.04</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html" target="_self">Quick and dirty guide for compiling remmina on ubuntu 18.04</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html" target="_self">Quick and dirty guide for compiling remmina on ubuntu 18.04</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html" target="_self">Requirements</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html" target="_self">Development-Notes</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html" target="_self">Multi monitor support</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__home.html" target="_self">*Welcome to the Remmina wiki*</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html" target="_self">How-to-translate-Remmina</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html" target="_self">Update-gettext-messages</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html" target="_self">GTK-versions-on-various-distributions</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html" target="_self">Problems-with-Wayland</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html" target="_self">Remmina-RDP-and-HiDPI-scaling</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html" target="_self">Remmina-VNC-to-Raspbian-Stretch</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html" target="_self">Systray menu</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html" target="_self">How to configure key mapping with the VNC plugin.</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html" target="_self">Testing under Ubuntu with the remmina-next-daily PPA</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html" target="_self">Using colour schemes in Remmina SSH protocol plugin</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html" target="_self">Remmina Usage FAQ</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_user.html" target="_self">&#39;s-guide Introduction</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a class="el" href="todo.html" target="_self">Todo List</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin_8c.html b/docs/plugin_8c.html
new file mode 100644
index 000000000..242e0bb20
--- /dev/null
+++ b/docs/plugin_8c.html
@@ -0,0 +1,312 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad7d68793cc9dfffacf0b5e7eda20ad61"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad7d68793cc9dfffacf0b5e7eda20ad61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5109cffc255b24e5a596e94404811f50"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5109cffc255b24e5a596e94404811f50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeb34fbeae9f4974869223f6dd83ddcb"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aeeb34fbeae9f4974869223f6dd83ddcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a833f9235bae6f4784189b5b825189df6"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a> []</td></tr>
+<tr class="separator:a833f9235bae6f4784189b5b825189df6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></td></tr>
+<tr class="separator:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00109">109</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aeeb34fbeae9f4974869223f6dd83ddcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeeb34fbeae9f4974869223f6dd83ddcb">&#9670;&nbsp;</a></span>remmina_plugin_tool_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_tool_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00065">65</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad7d68793cc9dfffacf0b5e7eda20ad61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7d68793cc9dfffacf0b5e7eda20ad61">&#9670;&nbsp;</a></span>remmina_plugin_tool_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_tool_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00046">46</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5109cffc255b24e5a596e94404811f50"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5109cffc255b24e5a596e94404811f50">&#9670;&nbsp;</a></span>remmina_plugin_tool_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_tool_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00052">52</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3b53d8bbfcf5bdf5564c8804d211cf99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b53d8bbfcf5bdf5564c8804d211cf99">&#9670;&nbsp;</a></span>remmina_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> PLUGIN_NAME, </div><div class="line"> PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> PLUGIN_VERSION, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> <a class="code" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a>, </div><div class="line"> <a class="code" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a>, </div><div class="line"> <a class="code" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a>, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="plugin_8c_html_a833f9235bae6f4784189b5b825189df6"><div class="ttname"><a href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_tool_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00082">plugin.c:82</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="plugin_8c_html_ad7d68793cc9dfffacf0b5e7eda20ad61"><div class="ttname"><a href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a></div><div class="ttdeci">static void remmina_plugin_tool_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00046">plugin.c:46</a></div></div>
+<div class="ttc" id="plugin_8c_html_a5109cffc255b24e5a596e94404811f50"><div class="ttname"><a href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_tool_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00052">plugin.c:52</a></div></div>
+<div class="ttc" id="plugin_8c_html_aeeb34fbeae9f4974869223f6dd83ddcb"><div class="ttname"><a href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_tool_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00065">plugin.c:65</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00088">88</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00044">44</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a833f9235bae6f4784189b5b825189df6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a833f9235bae6f4784189b5b825189df6">&#9670;&nbsp;</a></span>remmina_plugin_tool_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_tool_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="plugin_8c_source.html#l00082">82</a> of file <a class="el" href="plugin_8c_source.html">plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></li><li class="navelem"><a class="el" href="plugin_8c.html">plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin_8c.js b/docs/plugin_8c.js
new file mode 100644
index 000000000..c85b0f1da
--- /dev/null
+++ b/docs/plugin_8c.js
@@ -0,0 +1,10 @@
+var plugin_8c =
+[
+ [ "remmina_plugin_entry", "plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_tool_close_connection", "plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb", null ],
+ [ "remmina_plugin_tool_init", "plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61", null ],
+ [ "remmina_plugin_tool_open_connection", "plugin_8c.html#a5109cffc255b24e5a596e94404811f50", null ],
+ [ "remmina_plugin", "plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99", null ],
+ [ "remmina_plugin_service", "plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_tool_basic_settings", "plugin_8c.html#a833f9235bae6f4784189b5b825189df6", null ]
+]; \ No newline at end of file
diff --git a/docs/plugin_8c_source.html b/docs/plugin_8c_source.html
new file mode 100644
index 000000000..a9b657db0
--- /dev/null
+++ b/docs/plugin_8c_source.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="plugin_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-2020 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;<a class="code" href="plugin__config_8h.html">plugin_config.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;gtk/gtkx.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.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"><a class="line" href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 44</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</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="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61"> 46</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin init&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50"> 52</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin open connection&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; GtkDialog *dialog;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; dialog = GTK_DIALOG(gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL | GTK_DIALOG_USE_HEADER_BAR,</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; GTK_MESSAGE_INFO, GTK_BUTTONS_OK, PLUGIN_DESCRIPTION));</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;}</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb"> 65</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 67</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin close connection&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186">protocol_plugin_emit_signal</a>(gp, <span class="stringliteral">&quot;disconnect&quot;</span>);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</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="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6"> 82</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a>[] =</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;{</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</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;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99"> 88</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a> = {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; PLUGIN_VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; NULL, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; NULL, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; NULL, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; NULL, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; NULL <span class="comment">// No screenshot support available</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;};</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"><a class="line" href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 109</a></span>&#160;G_MODULE_EXPORT gboolean <a class="code" href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin)) {</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;}</div><div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="plugin_8c_html_a833f9235bae6f4784189b5b825189df6"><div class="ttname"><a href="plugin_8c.html#a833f9235bae6f4784189b5b825189df6">remmina_plugin_tool_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_tool_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00082">plugin.c:82</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="plugin__config_8h_html"><div class="ttname"><a href="plugin__config_8h.html">plugin_config.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="plugin_8c_html_ad7d68793cc9dfffacf0b5e7eda20ad61"><div class="ttname"><a href="plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61">remmina_plugin_tool_init</a></div><div class="ttdeci">static void remmina_plugin_tool_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00046">plugin.c:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="plugin_8c_html_a5109cffc255b24e5a596e94404811f50"><div class="ttname"><a href="plugin_8c.html#a5109cffc255b24e5a596e94404811f50">remmina_plugin_tool_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_tool_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00052">plugin.c:52</a></div></div>
+<div class="ttc" id="plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00109">plugin.c:109</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="plugin_8c_html_a3b53d8bbfcf5bdf5564c8804d211cf99"><div class="ttname"><a href="plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00088">plugin.c:88</a></div></div>
+<div class="ttc" id="plugin_8c_html_aeeb34fbeae9f4974869223f6dd83ddcb"><div class="ttname"><a href="plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb">remmina_plugin_tool_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_tool_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00065">plugin.c:65</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4d39a5300472a230a65d44ac16391186"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186">_RemminaPluginService::protocol_plugin_emit_signal</a></div><div class="ttdeci">void(* protocol_plugin_emit_signal)(RemminaProtocolWidget *gp, const gchar *signal_name)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00161">plugin.h:161</a></div></div>
+<div class="ttc" id="plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8c_source.html#l00044">plugin.c:44</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></li><li class="navelem"><a class="el" href="plugin_8c.html">plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin_8h.html b/docs/plugin_8h.html
new file mode 100644
index 000000000..8d851273d
--- /dev/null
+++ b/docs/plugin_8h.html
@@ -0,0 +1,316 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html">_RemminaPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html">_RemminaPluginService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a55c60503140443d4fec9e84c33dfdd22"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin.html">_RemminaPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a></td></tr>
+<tr class="separator:a55c60503140443d4fec9e84c33dfdd22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52531fe685f868ce2bf593ed7328e8fd"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a></td></tr>
+<tr class="separator:a52531fe685f868ce2bf593ed7328e8fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dee6a0774488524b232ab1eeeb939bb"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</a></td></tr>
+<tr class="separator:a3dee6a0774488524b232ab1eeeb939bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0af573c4b030a452ba1635025a5b7b2e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a></td></tr>
+<tr class="separator:a0af573c4b030a452ba1635025a5b7b2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a144360664546fcbf4d5aa0457c395f25"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">RemminaToolPlugin</a></td></tr>
+<tr class="separator:a144360664546fcbf4d5aa0457c395f25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ffdd703265254b90f9a609795b427cc"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a></td></tr>
+<tr class="separator:a8ffdd703265254b90f9a609795b427cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec59d37943e501da2d7107c933865782"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a></td></tr>
+<tr class="separator:aec59d37943e501da2d7107c933865782"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a078ccfc19f738c83e58bf7a81259eaff"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_service.html">_RemminaPluginService</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a></td></tr>
+<tr class="separator:a078ccfc19f738c83e58bf7a81259eaff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59fee7dbde41c8d29059ca64622d1948"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">RemminaPluginEntryFunc</a>) (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a59fee7dbde41c8d29059ca64622d1948"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aaf53c620d115a4642130227cff4a624a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> { <br />
+&#160;&#160;<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a> = 0,
+<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a> = 1,
+<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a> = 2,
+<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a> = 3,
+<br />
+&#160;&#160;<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a> = 4,
+<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a> = 5
+<br />
+ }</td></tr>
+<tr class="separator:aaf53c620d115a4642130227cff4a624a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a3dee6a0774488524b232ab1eeeb939bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3dee6a0774488524b232ab1eeeb939bb">&#9670;&nbsp;</a></span>RemminaEntryPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a> <a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a0af573c4b030a452ba1635025a5b7b2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0af573c4b030a452ba1635025a5b7b2e">&#9670;&nbsp;</a></span>RemminaFilePlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a> <a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a55c60503140443d4fec9e84c33dfdd22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55c60503140443d4fec9e84c33dfdd22">&#9670;&nbsp;</a></span>RemminaPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin.html">_RemminaPlugin</a> <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a59fee7dbde41c8d29059ca64622d1948"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59fee7dbde41c8d29059ca64622d1948">&#9670;&nbsp;</a></span>RemminaPluginEntryFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gboolean(* RemminaPluginEntryFunc) (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00229">229</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a078ccfc19f738c83e58bf7a81259eaff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a078ccfc19f738c83e58bf7a81259eaff">&#9670;&nbsp;</a></span>RemminaPluginService</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_service.html">_RemminaPluginService</a> <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8ffdd703265254b90f9a609795b427cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ffdd703265254b90f9a609795b427cc">&#9670;&nbsp;</a></span>RemminaPrefPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a> <a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a52531fe685f868ce2bf593ed7328e8fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52531fe685f868ce2bf593ed7328e8fd">&#9670;&nbsp;</a></span>RemminaProtocolPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a> <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aec59d37943e501da2d7107c933865782"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec59d37943e501da2d7107c933865782">&#9670;&nbsp;</a></span>RemminaSecretPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a> <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a144360664546fcbf4d5aa0457c395f25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a144360664546fcbf4d5aa0457c395f25">&#9670;&nbsp;</a></span>RemminaToolPlugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a> <a class="el" href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">RemminaToolPlugin</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="aaf53c620d115a4642130227cff4a624a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf53c620d115a4642130227cff4a624a">&#9670;&nbsp;</a></span>RemminaPluginType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"></a>REMMINA_PLUGIN_TYPE_PROTOCOL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"></a>REMMINA_PLUGIN_TYPE_ENTRY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"></a>REMMINA_PLUGIN_TYPE_FILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac"></a>REMMINA_PLUGIN_TYPE_TOOL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"></a>REMMINA_PLUGIN_TYPE_PREF&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"></a>REMMINA_PLUGIN_TYPE_SECRET&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00044">44</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="plugin_8h.html">plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin_8h.js b/docs/plugin_8h.js
new file mode 100644
index 000000000..4acab368b
--- /dev/null
+++ b/docs/plugin_8h.js
@@ -0,0 +1,28 @@
+var plugin_8h =
+[
+ [ "_RemminaPlugin", "struct___remmina_plugin.html", "struct___remmina_plugin" ],
+ [ "_RemminaProtocolPlugin", "struct___remmina_protocol_plugin.html", "struct___remmina_protocol_plugin" ],
+ [ "_RemminaEntryPlugin", "struct___remmina_entry_plugin.html", "struct___remmina_entry_plugin" ],
+ [ "_RemminaFilePlugin", "struct___remmina_file_plugin.html", "struct___remmina_file_plugin" ],
+ [ "_RemminaToolPlugin", "struct___remmina_tool_plugin.html", "struct___remmina_tool_plugin" ],
+ [ "_RemminaPrefPlugin", "struct___remmina_pref_plugin.html", "struct___remmina_pref_plugin" ],
+ [ "_RemminaSecretPlugin", "struct___remmina_secret_plugin.html", "struct___remmina_secret_plugin" ],
+ [ "_RemminaPluginService", "struct___remmina_plugin_service.html", "struct___remmina_plugin_service" ],
+ [ "RemminaEntryPlugin", "plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb", null ],
+ [ "RemminaFilePlugin", "plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e", null ],
+ [ "RemminaPlugin", "plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22", null ],
+ [ "RemminaPluginEntryFunc", "plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948", null ],
+ [ "RemminaPluginService", "plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff", null ],
+ [ "RemminaPrefPlugin", "plugin_8h.html#a8ffdd703265254b90f9a609795b427cc", null ],
+ [ "RemminaProtocolPlugin", "plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd", null ],
+ [ "RemminaSecretPlugin", "plugin_8h.html#aec59d37943e501da2d7107c933865782", null ],
+ [ "RemminaToolPlugin", "plugin_8h.html#a144360664546fcbf4d5aa0457c395f25", null ],
+ [ "RemminaPluginType", "plugin_8h.html#aaf53c620d115a4642130227cff4a624a", [
+ [ "REMMINA_PLUGIN_TYPE_PROTOCOL", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24", null ],
+ [ "REMMINA_PLUGIN_TYPE_ENTRY", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e", null ],
+ [ "REMMINA_PLUGIN_TYPE_FILE", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac", null ],
+ [ "REMMINA_PLUGIN_TYPE_TOOL", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac", null ],
+ [ "REMMINA_PLUGIN_TYPE_PREF", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757", null ],
+ [ "REMMINA_PLUGIN_TYPE_SECRET", "plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c", null ]
+ ] ]
+]; \ No newline at end of file
diff --git a/docs/plugin_8h_source.html b/docs/plugin_8h_source.html
new file mode 100644
index 000000000..ee82a8cad
--- /dev/null
+++ b/docs/plugin_8h_source.html
@@ -0,0 +1,181 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="plugin_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) 2010-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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="types_8h.html">remmina/types.h</a>&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;G_BEGIN_DECLS</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"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"> 45</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a> = 0,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"> 46</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a> = 1,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"> 47</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a> = 2,</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac"> 48</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a> = 3,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"> 49</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a> = 4,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"> 50</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a> = 5</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin.html">_RemminaPlugin</a> {</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3"> 54</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582"> 55</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde"> 56</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201"> 57</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">domain</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099"> 58</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">version</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a>;</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"><a class="line" href="struct___remmina_protocol_plugin.html"> 61</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a> {</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0"> 62</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0">type</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4"> 63</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70"> 64</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70">description</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae"> 65</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae">domain</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff"> 66</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff">version</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10"> 68</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">icon_name</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3"> 69</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">icon_name_ssh</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d"> 70</a></span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> * <a class="code" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">basic_settings</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db"> 71</a></span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> * <a class="code" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb"> 72</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> <a class="code" href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb">ssh_setting</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff"> 73</a></span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> * <a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2"> 75</a></span>&#160; void (*init)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd"> 76</a></span>&#160; gboolean (*open_connection)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2"> 77</a></span>&#160; gboolean (*close_connection)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de"> 78</a></span>&#160; gboolean (*query_feature)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature);</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1"> 79</a></span>&#160; void (*call_feature)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature);</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7"> 80</a></span>&#160; void (*send_keystrokes)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> guint keystrokes[], <span class="keyword">const</span> gint keylen);</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4"> 81</a></span>&#160; gboolean (*get_plugin_screenshot)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> *rpsd);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;} <a class="code" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html"> 84</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a> {</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264"> 85</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264">type</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1"> 86</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1">name</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4"> 87</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4">description</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533"> 88</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533">domain</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441"> 89</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441">version</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"><a class="line" href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e"> 91</a></span>&#160; void (*entry_func)(void);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;} <a class="code" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</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_file_plugin.html"> 94</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a> {</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494"> 95</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">type</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6"> 96</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6">name</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1"> 97</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1">description</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f"> 98</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f">domain</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8"> 99</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8">version</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"><a class="line" href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4"> 101</a></span>&#160; gboolean (*import_test_func)(<span class="keyword">const</span> gchar *from_file);</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7"> 102</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * (*import_func)(<span class="keyword">const</span> gchar * from_file);</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03"> 103</a></span>&#160; gboolean (*export_test_func)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file);</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1"> 104</a></span>&#160; gboolean (*export_func)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file, <span class="keyword">const</span> gchar *to_file);</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f"> 105</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">export_hints</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;} <a class="code" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html"> 108</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a> {</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176"> 109</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176">type</a>;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af"> 110</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af">name</a>;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9"> 111</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9">description</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e"> 112</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e">domain</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b"> 113</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b">version</a>;</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"><a class="line" href="struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17"> 115</a></span>&#160; void (*exec_func)(void);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;} <a class="code" href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">RemminaToolPlugin</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html"> 118</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a> {</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522"> 119</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522">type</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b"> 120</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b">name</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0"> 121</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0">description</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf"> 122</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf">domain</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d"> 123</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d">version</a>;</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"><a class="line" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d"> 125</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">pref_label</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989"> 126</a></span>&#160; GtkWidget * (*get_pref_body)(void);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;} <a class="code" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html"> 129</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a> {</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2"> 130</a></span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> <a class="code" href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2">type</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a"> 131</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">name</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659"> 132</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659">description</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e"> 133</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e">domain</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa"> 134</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa">version</a>;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09"> 135</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56"> 137</a></span>&#160; gboolean (*init)(void);</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4"> 138</a></span>&#160; gboolean (*is_service_available)(void);</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6"> 139</a></span>&#160; void (*store_password)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *password);</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629"> 140</a></span>&#160; gchar * (*get_password)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remminafile, <span class="keyword">const</span> gchar *key);</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef"> 141</a></span>&#160; void (*delete_password)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;} <a class="code" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment">/* Plugin Service is a struct containing a list of function pointers,</span></div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> * which is passed from Remmina main program to the plugin module</span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> * through the plugin entry function remmina_plugin_entry() */</span></div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html"> 147</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_service.html">_RemminaPluginService</a> {</div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2"> 148</a></span>&#160; gboolean (*register_plugin)(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin);</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="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce"> 150</a></span>&#160; gint (*protocol_plugin_get_width)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047"> 151</a></span>&#160; void (*protocol_plugin_set_width)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint width);</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820"> 152</a></span>&#160; gint (*protocol_plugin_get_height)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1"> 153</a></span>&#160; void (*protocol_plugin_set_height)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint height);</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed"> 154</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> (*<a class="code" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057"> 155</a></span>&#160; gboolean (*protocol_plugin_get_expand)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad"> 156</a></span>&#160; void (*protocol_plugin_set_expand)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean expand);</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f"> 157</a></span>&#160; gboolean (*protocol_plugin_has_error)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1"> 158</a></span>&#160; void (*protocol_plugin_set_error)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189"> 159</a></span>&#160; gboolean (*protocol_plugin_is_closed)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4"> 160</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * (*protocol_plugin_get_file)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186"> 161</a></span>&#160; void (*protocol_plugin_emit_signal)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *signal_name);</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34"> 162</a></span>&#160; void (*protocol_plugin_register_hostkey)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, GtkWidget *widget);</div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183"> 163</a></span>&#160; gchar * (*protocol_plugin_start_direct_tunnel)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp, gint default_port, gboolean port_plus);</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749"> 164</a></span>&#160; gboolean (*protocol_plugin_start_reverse_tunnel)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint local_port);</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d"> 165</a></span>&#160; gboolean (*protocol_plugin_start_xport_tunnel)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func);</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72"> 166</a></span>&#160; void (*protocol_plugin_set_display)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint display);</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f"> 167</a></span>&#160; void (*protocol_plugin_signal_connection_closed)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6"> 168</a></span>&#160; void (*protocol_plugin_signal_connection_opened)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d"> 169</a></span>&#160; void (*protocol_plugin_update_align)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e"> 170</a></span>&#160; void (*protocol_plugin_unlock_dynres)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f"> 171</a></span>&#160; void (*protocol_plugin_desktop_resize)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704"> 172</a></span>&#160; gint (*protocol_plugin_init_auth)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, <span class="keyword">const</span> gchar *title, <span class="keyword">const</span> gchar *default_username, <span class="keyword">const</span> gchar *default_password, <span class="keyword">const</span> gchar *default_domain, <span class="keyword">const</span> gchar *password_prompt);</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c"> 173</a></span>&#160; gint (*protocol_plugin_init_certificate)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *fingerprint);</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee"> 174</a></span>&#160; gint (*protocol_plugin_changed_certificate)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *new_fingerprint, <span class="keyword">const</span> gchar *old_fingerprint);</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d"> 175</a></span>&#160; gchar * (*protocol_plugin_init_get_username)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174"> 176</a></span>&#160; gchar * (*protocol_plugin_init_get_password)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b"> 177</a></span>&#160; gchar * (*protocol_plugin_init_get_domain)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b"> 178</a></span>&#160; gboolean (*protocol_plugin_init_get_savepassword)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999"> 179</a></span>&#160; gint (*protocol_plugin_init_authx509)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d"> 180</a></span>&#160; gchar * (*protocol_plugin_init_get_cacert)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5"> 181</a></span>&#160; gchar * (*protocol_plugin_init_get_cacrl)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24"> 182</a></span>&#160; gchar * (*protocol_plugin_init_get_clientcert)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834"> 183</a></span>&#160; gchar * (*protocol_plugin_init_get_clientkey)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp);</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b"> 184</a></span>&#160; void (*protocol_plugin_init_save_cred)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550"> 185</a></span>&#160; void (*protocol_plugin_init_show_listen)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint port);</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3"> 186</a></span>&#160; void (*protocol_plugin_init_show_retry)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea"> 187</a></span>&#160; void (*protocol_plugin_init_show)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3"> 188</a></span>&#160; void (*protocol_plugin_init_hide)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e"> 189</a></span>&#160; gboolean (*protocol_plugin_ssh_exec)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean wait, <span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030"> 190</a></span>&#160; void (*protocol_plugin_chat_open)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>, void (*on_send)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text), <span class="keywordtype">void</span> (*on_destroy)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp));</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053"> 191</a></span>&#160; void (*protocol_plugin_chat_close)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a"> 192</a></span>&#160; void (*protocol_plugin_chat_receive)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87"> 193</a></span>&#160; void (*protocol_plugin_send_keys_signals)(GtkWidget *widget, <span class="keyword">const</span> guint *keyvals, <span class="keywordtype">int</span> length, GdkEventType action);</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"><a class="line" href="struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f"> 195</a></span>&#160; gchar * (*file_get_user_datadir)(void);</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"><a class="line" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895"> 197</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * (*file_new)(void);</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164"> 198</a></span>&#160; <span class="keyword">const</span> gchar * (*file_get_path)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remminafile);</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3"> 199</a></span>&#160; void (*file_set_string)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, <span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc"> 200</a></span>&#160; <span class="keyword">const</span> gchar * (*file_get_string)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d"> 201</a></span>&#160; gchar * (*file_get_secret)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb"> 202</a></span>&#160; void (*file_set_int)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint value);</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de"> 203</a></span>&#160; gint (*file_get_int)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint default_value);</div><div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0"> 204</a></span>&#160; void (*file_unsave_passwords)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</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"><a class="line" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c"> 206</a></span>&#160; void (*pref_set_value)(<span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9"> 207</a></span>&#160; gchar * (*pref_get_value)(<span class="keyword">const</span> gchar * key);</div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290"> 208</a></span>&#160; gint (*pref_get_scale_quality)(void);</div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5"> 209</a></span>&#160; gint (*pref_get_sshtunnel_port)(void);</div><div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b"> 210</a></span>&#160; gint (*pref_get_ssh_loglevel)(void);</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2"> 211</a></span>&#160; gboolean (*pref_get_ssh_parseconfig)(void);</div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2"> 212</a></span>&#160; guint (*pref_keymap_get_keyval)(<span class="keyword">const</span> gchar *keymap, guint keyval);</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"><a class="line" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081"> 214</a></span>&#160; void (*debug)(<span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de"> 215</a></span>&#160; void (*log_print)(<span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d"> 216</a></span>&#160; void (*log_printf)(<span class="keyword">const</span> gchar *fmt, ...);</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"><a class="line" href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524"> 218</a></span>&#160; void (*ui_register)(GtkWidget *widget);</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"><a class="line" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef"> 220</a></span>&#160; GtkWidget * (*open_connection)(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remminafile, GCallback disconnect_cb, gpointer data, guint *handler);</div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f"> 221</a></span>&#160; void (*get_server_port)(<span class="keyword">const</span> gchar *server, gint defaultport, gchar **host, gint *port);</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b"> 222</a></span>&#160; gboolean (*is_main_thread)(void);</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662"> 223</a></span>&#160; gboolean (*gtksocket_available)(void);</div><div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a"> 224</a></span>&#160; gint (*get_profile_remote_width)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa"> 225</a></span>&#160; gint (*get_profile_remote_height)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;} <a class="code" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">/* &quot;Prototype&quot; of the plugin entry function */</span></div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948"> 229</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">RemminaPluginEntryFunc</a>) (<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_secret_plugin_html_a3e49bae6984c9bfd714ea8c664ce33a2"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2">_RemminaSecretPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00130">plugin.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_a9f57732269208cb7e6198c5f60f1da8b"><div class="ttname"><a href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b">_RemminaToolPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00113">plugin.h:113</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_ade323f1200f3aae6e5b580c764467522"><div class="ttname"><a href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522">_RemminaPrefPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00119">plugin.h:119</a></div></div>
+<div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</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#l00108">plugin.h:108</a></div></div>
+<div class="ttc" id="plugin_8h_html_a078ccfc19f738c83e58bf7a81259eaff"><div class="ttname"><a href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a></div><div class="ttdeci">struct _RemminaPluginService RemminaPluginService</div></div>
+<div class="ttc" id="plugin_8h_html_a8ffdd703265254b90f9a609795b427cc"><div class="ttname"><a href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a></div><div class="ttdeci">struct _RemminaPrefPlugin RemminaPrefPlugin</div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00048">plugin.h:48</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_ac7f294cb3a5e989e95f619780ede87d3"><div class="ttname"><a href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">_RemminaPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00054">plugin.h:54</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00047">plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_ac4f2b0118490cede0577aaee9f2e0b5f"><div class="ttname"><a href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">_RemminaFilePlugin::export_hints</a></div><div class="ttdeci">const gchar * export_hints</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00105">plugin.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_afb8b164b36f2a9cff50176befbc23441"><div class="ttname"><a href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441">_RemminaEntryPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00089">plugin.h:89</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aa5727804eb3f5cd4a4a40acb98df76bb"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb">_RemminaProtocolPlugin::ssh_setting</a></div><div class="ttdeci">RemminaProtocolSSHSetting ssh_setting</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00072">plugin.h:72</a></div></div>
+<div class="ttc" id="plugin_8h_html_a52531fe685f868ce2bf593ed7328e8fd"><div class="ttname"><a href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a></div><div class="ttdeci">struct _RemminaProtocolPlugin RemminaProtocolPlugin</div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a0155c6684591e0dd843c7145792fef09"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">_RemminaSecretPlugin::init_order</a></div><div class="ttdeci">int init_order</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00135">plugin.h:135</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_ac6927c92267fdb786b01319aeade0daa"><div class="ttname"><a href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa">_RemminaSecretPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00134">plugin.h:134</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_afa1a3a21c504b386cecfb42d1c9e6bff"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">_RemminaProtocolPlugin::features</a></div><div class="ttdeci">const RemminaProtocolFeature * features</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__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a024d3e6d752dd29828b31c60c8c7c201"><div class="ttname"><a href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">_RemminaPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00057">plugin.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a81ff30e7efe61fd0057184640baf545e"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e">_RemminaSecretPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00133">plugin.h:133</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_a44723a4f75f1a2ac3e029212fe0e8533"><div class="ttname"><a href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533">_RemminaEntryPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00088">plugin.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a4a036be229f8b3797c3e0ad4913c7cdf"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf">_RemminaPrefPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00122">plugin.h:122</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5ec62969da54155e24edcb1d998f93f7"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01141">remmina_protocol_widget.c:1141</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a1de86485b3c4db138b0fcd264884483f"><div class="ttname"><a href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f">_RemminaFilePlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00098">plugin.h:98</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_a4c4f13e65c7b64ba2d8bc019fd00e6a1"><div class="ttname"><a href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1">_RemminaEntryPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00086">plugin.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a4ac66b7ebefb9bd8167737eb1af83cde"><div class="ttname"><a href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00056">plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_aecdad5d7ff5bdfbf0ce80b4b73f65099"><div class="ttname"><a href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">_RemminaPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00058">plugin.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_abec2e8cc2551f64eda4ee21d553accd4"><div class="ttname"><a href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4">_RemminaEntryPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00087">plugin.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html"><div class="ttname"><a href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00084">plugin.h:84</a></div></div>
+<div class="ttc" id="plugin_8h_html_a144360664546fcbf4d5aa0457c395f25"><div class="ttname"><a href="plugin_8h.html#a144360664546fcbf4d5aa0457c395f25">RemminaToolPlugin</a></div><div class="ttdeci">struct _RemminaToolPlugin RemminaToolPlugin</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#l00129">plugin.h:129</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#l00069">plugin.h:69</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a></div><div class="ttdeci">RemminaMessagePanelFlags</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00131">types.h:131</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00049">plugin.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a9bac82016e8b61d3c63b2e427be3ec70"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70">_RemminaProtocolPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00064">plugin.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a175d83898486e37aadd16279f559f659"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659">_RemminaSecretPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00132">plugin.h:132</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a197b28d8b71ccb0c91ce8bf27690968a"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">_RemminaSecretPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00131">plugin.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_a9c2d66a167a088f071e545c1d656139e"><div class="ttname"><a href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e">_RemminaToolPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00112">plugin.h:112</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a31f24f29db7e806ccf65f19fb88133b0"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0">_RemminaPrefPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00121">plugin.h:121</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a></div><div class="ttdeci">RemminaProtocolSSHSetting</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00103">types.h:103</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a9ea805605a462db2ce7912ef05a4fd9d"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">_RemminaPrefPlugin::pref_label</a></div><div class="ttdeci">const gchar * pref_label</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00125">plugin.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a8ef191449f269aec279e9097cadb7ee6"><div class="ttname"><a href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6">_RemminaFilePlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00096">plugin.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aae09a7e2c978cc36e85d0f295518978d"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">_RemminaProtocolPlugin::basic_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * basic_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00070">plugin.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_a02b12a1cbcb64caa5532196ddf5214e9"><div class="ttname"><a href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9">_RemminaToolPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00111">plugin.h:111</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a57bf1f4e71c86165cbac2563309e35b8"><div class="ttname"><a href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8">_RemminaFilePlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00099">plugin.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_ac783acfaf93007d0100bd02f1faff7f0"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0">_RemminaProtocolPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00062">plugin.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_adcdd7f3020665461c0a95a47ac6675af"><div class="ttname"><a href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af">_RemminaToolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00110">plugin.h:110</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="plugin_8h_html_a59fee7dbde41c8d29059ca64622d1948"><div class="ttname"><a href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">RemminaPluginEntryFunc</a></div><div class="ttdeci">gboolean(* RemminaPluginEntryFunc)(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00229">plugin.h:229</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html"><div class="ttname"><a href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00118">plugin.h:118</a></div></div>
+<div class="ttc" id="plugin_8h_html_aec59d37943e501da2d7107c933865782"><div class="ttname"><a href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a></div><div class="ttdeci">struct _RemminaSecretPlugin RemminaSecretPlugin</div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a3ff85e56bf902817630aafea67e3e494"><div class="ttname"><a href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">_RemminaFilePlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00095">plugin.h:95</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a5dcdfe2a1aa15b61834d0146a3367c3d"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d">_RemminaPrefPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00123">plugin.h:123</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a36c131a8e8c0180950faa80f497f23c1"><div class="ttname"><a href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1">_RemminaFilePlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00097">plugin.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_aab77d73c001e013228ed77b1418a210b"><div class="ttname"><a href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b">_RemminaPrefPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00120">plugin.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a3f3cd7ad27c78a1670de3f42414861ff"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff">_RemminaProtocolPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00066">plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a6e04143450eeb71e3d0b2c14983860a4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00063">plugin.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_a96038d752844e137a47f8e2aa1e67264"><div class="ttname"><a href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264">_RemminaEntryPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00085">plugin.h:85</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aceb00d9dff794500ccb04a1373eb32db"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin::advanced_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * advanced_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00071">plugin.h:71</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624a"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a></div><div class="ttdeci">RemminaPluginType</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00044">plugin.h:44</a></div></div>
+<div class="ttc" id="plugin_8h_html_a0af573c4b030a452ba1635025a5b7b2e"><div class="ttname"><a href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a></div><div class="ttdeci">struct _RemminaFilePlugin RemminaFilePlugin</div></div>
+<div class="ttc" id="plugin_8h_html_a3dee6a0774488524b232ab1eeeb939bb"><div class="ttname"><a href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</a></div><div class="ttdeci">struct _RemminaEntryPlugin RemminaEntryPlugin</div></div>
+<div class="ttc" id="plugin_8h_html_a55c60503140443d4fec9e84c33dfdd22"><div class="ttname"><a href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a></div><div class="ttdeci">struct _RemminaPlugin RemminaPlugin</div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a9552c70a10eea2b8263dbc7d05e2fb10"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">_RemminaProtocolPlugin::icon_name</a></div><div class="ttdeci">const gchar * icon_name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00068">plugin.h:68</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_ae812659a7e2bd72a7875a05193b88176"><div class="ttname"><a href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176">_RemminaToolPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00109">plugin.h:109</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="types_8h_html_afae2f546eaf9ef8a816a804e830055bf"><div class="ttname"><a href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a></div><div class="ttdeci">gboolean(* RemminaXPortTunnelInitFunc)(RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00076">types.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a61bee777a81714c80bed22d0cf8e13ae"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae">_RemminaProtocolPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00065">plugin.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a3f09b29bb3b0c044780d56a8b1a51582"><div class="ttname"><a href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">_RemminaPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00055">plugin.h:55</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00046">plugin.h:46</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="plugin_8h.html">plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin__config_8h.html b/docs/plugin__config_8h.html
new file mode 100644
index 000000000..e33e54f17
--- /dev/null
+++ b/docs/plugin__config_8h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin_config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin__config_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">plugin_config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="plugin__config_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></li><li class="navelem"><a class="el" href="plugin__config_8h.html">plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/plugin__config_8h_source.html b/docs/plugin__config_8h_source.html
new file mode 100644
index 000000000..77ad65683
--- /dev/null
+++ b/docs/plugin__config_8h_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: plugin_config.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('plugin__config_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">plugin_config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="plugin__config_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) 2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#ifndef __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#define __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#define PLUGIN_NAME &quot;HELLO&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#define PLUGIN_DESCRIPTION N_(&quot;Hello, World!&quot;)</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define PLUGIN_VERSION &quot;1.0&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define PLUGIN_APPICON &quot;remmina-tool&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_fa8c5cacd6671c1854478287e377f3ab.html">tool_hello_world</a></li><li class="navelem"><a class="el" href="plugin__config_8h.html">plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rcw_8c.html b/docs/rcw_8c.html
new file mode 100644
index 000000000..87a2f9945
--- /dev/null
+++ b/docs/rcw_8c.html
@@ -0,0 +1,4944 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rcw.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rcw_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">rcw.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rcw_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a1cc1f656edfbe0d9c5483ac858b76517"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a></td></tr>
+<tr class="separator:a1cc1f656edfbe0d9c5483ac858b76517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a06fc87d81c62e9abb8790b6e5713c55b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">TOOLBARPLACE_SIGNAL</a>,
+<a class="el" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>
+ }</td></tr>
+<tr class="separator:a06fc87d81c62e9abb8790b6e5713c55b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a21e0a6e416667f30c2b1599b8b24faec"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>, rcw, GTK_TYPE_WINDOW)</td></tr>
+<tr class="separator:a21e0a6e416667f30c2b1599b8b24faec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95c64795004c7778c56068abeb1a6bd0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a> (gint width, gint height, gboolean maximize)</td></tr>
+<tr class="separator:a95c64795004c7778c56068abeb1a6bd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11bb04a25b6c8a79af3cb34f22e28dd8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a> (GtkWindow *old, gint view_mode)</td></tr>
+<tr class="separator:a11bb04a25b6c8a79af3cb34f22e28dd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb1b2ab629603837e08f8d8de542316d"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw_hostkey_func</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release)</td></tr>
+<tr class="separator:acb1b2ab629603837e08f8d8de542316d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c40706e7ac542d396d2db99ba944dc6"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rco_create_tab_page</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a1c40706e7ac542d396d2db99ba944dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3928a83b083a55e3af1ed81da49b25eb"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rco_create_tab_label</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a3928a83b083a55e3af1ed81da49b25eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7189a0f1289a24fc5cc9fdfaf37244f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a7189a0f1289a24fc5cc9fdfaf37244f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2caca4bce3a8ec22a99ede169746af86"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, gint mode)</td></tr>
+<tr class="separator:a2caca4bce3a8ec22a99ede169746af86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc62938ff8bcaad6b743f50ecf36d292"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a> (GtkToolbar *toolbar, GtkGrid *grid, GtkWidget *sibling, int toolbar_placement)</td></tr>
+<tr class="separator:afc62938ff8bcaad6b743f50ecf36d292"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a362cc1f55ba8365460c2ebfc0528e01c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a362cc1f55ba8365460c2ebfc0528e01c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5a67ac52028302d5681cceaf9ac46bc"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ad5a67ac52028302d5681cceaf9ac46bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73532ae8f8fa05711035bc3d4c82ac2a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw_ftb_drag_begin</a> (GtkWidget *widget, GdkDragContext *context, gpointer user_data)</td></tr>
+<tr class="separator:a73532ae8f8fa05711035bc3d4c82ac2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36b924d7fb7ccb1418912ea4c47620a4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4">rcw_class_init</a> (<a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a> *klass)</td></tr>
+<tr class="separator:a36b924d7fb7ccb1418912ea4c47620a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaad3184fedef1eccd1f92d8ef43cca44"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw_get_cnnobj_at_page</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, gint npage)</td></tr>
+<tr class="separator:aaad3184fedef1eccd1f92d8ef43cca44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affd8155adb04dc7ffbb7f4fff379dc47"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:affd8155adb04dc7ffbb7f4fff379dc47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbc84b2c450f62c288ff827c5d2c5cd2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, gboolean *dynres_avail, gboolean *scale_avail)</td></tr>
+<tr class="separator:abbc84b2c450f62c288ff827c5d2c5cd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2690c97a972e458dea9f5c0566ea50b9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rco_disconnect_current_page</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a2690c97a972e458dea9f5c0566ea50b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82c93bbb1ab73807b366b86928c37946"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a82c93bbb1ab73807b366b86928c37946"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71284e0ce3acb9fce6d4ecf6fea1a3f5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw_keyboard_grab_retry</a> (gpointer user_data)</td></tr>
+<tr class="separator:a71284e0ce3acb9fce6d4ecf6fea1a3f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a177a2ece80374b29bc26595fff8bed42"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw_pointer_ungrab</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a177a2ece80374b29bc26595fff8bed42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3e012d5e499aebb8fcbef55f505f2f3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ac3e012d5e499aebb8fcbef55f505f2f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bd6b600564be75e95870a0375c0a4d3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw_close_all_connections</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a6bd6b600564be75e95870a0375c0a4d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adae469553aa0647d0df5d88b180e7cd7"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:adae469553aa0647d0df5d88b180e7cd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07802fc420dc07560fe937d29172573c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw_delete_event</a> (GtkWidget *widget, GdkEvent *event, gpointer data)</td></tr>
+<tr class="separator:a07802fc420dc07560fe937d29172573c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7de86386944c333dc9f4bf87f819f9c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw_destroy</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:aa7de86386944c333dc9f4bf87f819f9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60f9f738cfd988cfc7cc39997538e4e0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw_notify_widget_toolbar_placement</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a60f9f738cfd988cfc7cc39997538e4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14a8e53afac8e750b7839d74dc50c758"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw_tb_drag_failed</a> (GtkWidget *widget, GdkDragContext *context, GtkDragResult result, gpointer user_data)</td></tr>
+<tr class="separator:a14a8e53afac8e750b7839d74dc50c758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70d89903e3279a1650dc0684f26ed9c2"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw_tb_drag_drop</a> (GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, gpointer user_data)</td></tr>
+<tr class="separator:a70d89903e3279a1650dc0684f26ed9c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ca9e87bf2fc3855699f80315d72314b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw_tb_drag_begin</a> (GtkWidget *widget, GdkDragContext *context, gpointer user_data)</td></tr>
+<tr class="separator:a0ca9e87bf2fc3855699f80315d72314b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5929f8c1c1513c0fd75a88cd4721b8a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a5929f8c1c1513c0fd75a88cd4721b8a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a544a61088b93ffc31a79554c70d97dff"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw_floating_toolbar_make_invisible</a> (gpointer data)</td></tr>
+<tr class="separator:a544a61088b93ffc31a79554c70d97dff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10b9b689406b4b3071ace2b7c8562aa7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, gboolean show)</td></tr>
+<tr class="separator:a10b9b689406b4b3071ace2b7c8562aa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cb8bd7679116f409b29399a5d14c527"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rco_get_desktop_size</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, gint *width, gint *height)</td></tr>
+<tr class="separator:a8cb8bd7679116f409b29399a5d14c527"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0f54fdd4d7526ba4e110d04d7fb2844"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, GtkScrolledWindow *scrolled_window)</td></tr>
+<tr class="separator:ae0f54fdd4d7526ba4e110d04d7fb2844"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcbac7a8924d543a58039037837710ba"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rco_create_scrolled_container</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, int view_mode)</td></tr>
+<tr class="separator:afcbac7a8924d543a58039037837710ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1044979d82ce73db51117de1262832f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw_toolbar_autofit_restore</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:aa1044979d82ce73db51117de1262832f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4b9810ed2b9ae62933b969c1d9acf3c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ab4b9810ed2b9ae62933b969c1d9acf3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee06df544a91184cba1fe77c6991065a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, GdkRectangle *sz)</td></tr>
+<tr class="separator:aee06df544a91184cba1fe77c6991065a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1c994940909e60d4f565be0e0478b34"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ae1c994940909e60d4f565be0e0478b34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfa15d238ac64558487dee3c320c3701"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a> (GtkWidget *item, const gchar *tip, guint key1, guint key2)</td></tr>
+<tr class="separator:acfa15d238ac64558487dee3c320c3701"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7dc553cbd2005feb77163cf79f48f6d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ab7dc553cbd2005feb77163cf79f48f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e70819cad41022a0070c8102dd6dd6f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">nb_set_current_page</a> (GtkNotebook *notebook, GtkWidget *page)</td></tr>
+<tr class="separator:a5e70819cad41022a0070c8102dd6dd6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac21387fbd4b689472e4796467bd50a55"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">nb_migrate_page_content</a> (GtkWidget *frompage, GtkWidget *topage)</td></tr>
+<tr class="separator:ac21387fbd4b689472e4796467bd50a55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d4ebd91bc6568257031111f56689a76"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *from, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *to)</td></tr>
+<tr class="separator:a0d4ebd91bc6568257031111f56689a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afec9666876babf3ae115fade7470915e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, int newmode)</td></tr>
+<tr class="separator:afec9666876babf3ae115fade7470915e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cc69ded61b733b2d01a489f1c3c72d3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw_toolbar_fullscreen</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a0cc69ded61b733b2d01a489f1c3c72d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3463779f231df73defb8ff86f27ec9ef"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rco_viewport_fullscreen_mode</a> (GtkWidget *widget, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a3463779f231df73defb8ff86f27ec9ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b60c2cb02c4a893d8d2054f0bb53790"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rco_scrolled_fullscreen_mode</a> (GtkWidget *widget, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a7b60c2cb02c4a893d8d2054f0bb53790"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ffed90419a36560bf0c4d213a853c28"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw_fullscreen_option_popdown</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a9ffed90419a36560bf0c4d213a853c28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaedf05f5ff4fadcb28346d1cfc4accab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw_toolbar_fullscreen_option</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:aaedf05f5ff4fadcb28346d1cfc4accab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45ecb24606954e4268f2f3c5d7e2e1e0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw_scaler_option_popdown</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a45ecb24606954e4268f2f3c5d7e2e1e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae747a0b62a922df1de61c62092757b19"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw_scaler_expand</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ae747a0b62a922df1de61c62092757b19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd0a6de10dd92a8a84f24b8e66da5767"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw_scaler_keep_aspect</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:abd0a6de10dd92a8a84f24b8e66da5767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cfb767a626e63e3003ddbe0a8fea8a1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw_toolbar_scaler_option</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a4cfb767a626e63e3003ddbe0a8fea8a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfe9306fecab6d93b5ab51571b69fc6a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rco_switch_page_activate</a> (GtkMenuItem *menuitem, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:acfe9306fecab6d93b5ab51571b69fc6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03311f33ff921f943f6edbbc1867d1ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw_toolbar_switch_page_popdown</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a03311f33ff921f943f6edbbc1867d1ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d26c5dd2d9e941486a7a9bfe0f81304"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw_toolbar_switch_page</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a7d26c5dd2d9e941486a7a9bfe0f81304"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23692809213a6dfe683afe3d0dece3aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rco_update_toolbar_autofit_button</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a23692809213a6dfe683afe3d0dece3aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a042a37c7e92f49443ddbdc6dc948b8b5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rco_change_scalemode</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, gboolean bdyn, gboolean bscale)</td></tr>
+<tr class="separator:a042a37c7e92f49443ddbdc6dc948b8b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1af82a0b7f5fd27477d6f4c55ed0898b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw_toolbar_dynres</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a1af82a0b7f5fd27477d6f4c55ed0898b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1647e25501f5ee2852dfd27a10e0d8c8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw_toolbar_scaled_mode</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a1647e25501f5ee2852dfd27a10e0d8c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4b422fe9972866b74db8b763f8cb42e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw_toolbar_preferences_popdown</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ab4b422fe9972866b74db8b763f8cb42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0243af9dbe4b388a39ea432c3e580e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw_toolbar_tools_popdown</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ae0243af9dbe4b388a39ea432c3e580e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a531286fa321e0931475b5afc86ec49"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rco_call_protocol_feature_radio</a> (GtkMenuItem *menuitem, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a3a531286fa321e0931475b5afc86ec49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae09c2a83e973c3041254fb57bd58666f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rco_call_protocol_feature_check</a> (GtkMenuItem *menuitem, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ae09c2a83e973c3041254fb57bd58666f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cc04a8362110361d062a840b8ae5f64"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rco_call_protocol_feature_activate</a> (GtkMenuItem *menuitem, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a3cc04a8362110361d062a840b8ae5f64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad13167e478305c3fae8a4cea1d0e2f76"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw_toolbar_preferences_radio</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GtkWidget *menu, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature, const gchar *domain, gboolean enabled)</td></tr>
+<tr class="separator:ad13167e478305c3fae8a4cea1d0e2f76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a366d1ea1fc39ddc72c384d07d47a25d9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw_toolbar_preferences_check</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, GtkWidget *menu, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature, const gchar *domain, gboolean enabled)</td></tr>
+<tr class="separator:a366d1ea1fc39ddc72c384d07d47a25d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4482a8c41ac6707436e8eb847867dc1a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw_toolbar_preferences</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a4482a8c41ac6707436e8eb847867dc1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7abfab8a6281126baaf5f443ff4adda1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw_toolbar_tools</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a7abfab8a6281126baaf5f443ff4adda1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac973ca10137b1f285f45785f93966fd5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw_toolbar_duplicate</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ac973ca10137b1f285f45785f93966fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a604971831f6ef8dd750ad6d29abb73a9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw_toolbar_screenshot</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a604971831f6ef8dd750ad6d29abb73a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51bb9efba28252cbf96da6797710c919"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw_toolbar_minimize</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a51bb9efba28252cbf96da6797710c919"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fbf6bfa4022b5f7b3286a68b0a3c446"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw_toolbar_disconnect</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a0fbf6bfa4022b5f7b3286a68b0a3c446"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6e4f2ac3249f0e5e537b65d0a7163d6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw_toolbar_grab</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:aa6e4f2ac3249f0e5e537b65d0a7163d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a319e8c05fa25a57aa34875d48e182726"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a319e8c05fa25a57aa34875d48e182726"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23d848e45205a65618c84bb70b882b3f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw_set_toolbar_visibility</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a23d848e45205a65618c84bb70b882b3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a961e539a6f6ccbe73a301869c6960ab6"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw_floating_toolbar_on_enter</a> (GtkWidget *widget, GdkEventCrossing *event, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a961e539a6f6ccbe73a301869c6960ab6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27f545a9630a481f4df747478cd227fb"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw_on_leave_notify_event</a> (GtkWidget *widget, GdkEventCrossing *event, gpointer user_data)</td></tr>
+<tr class="separator:a27f545a9630a481f4df747478cd227fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad45e51f5a72b7ffe9bca86d336563757"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rco_leave_protocol_widget</a> (GtkWidget *widget, GdkEventCrossing *event, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ad45e51f5a72b7ffe9bca86d336563757"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0650f31e99dd15c719328345411deba0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rco_enter_protocol_widget</a> (GtkWidget *widget, GdkEventCrossing *event, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a0650f31e99dd15c719328345411deba0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a789be4e849f79bf8064bc47ba85ea3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw_focus_in</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a8a789be4e849f79bf8064bc47ba85ea3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a010af24147287ef89f605e71ef315475"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw_focus_out</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a010af24147287ef89f605e71ef315475"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a423aaf9a4d3eed6dac67de5a8cc24a18"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw_floating_toolbar_hide</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a423aaf9a4d3eed6dac67de5a8cc24a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f4b8ba7f51a4bf6e12a585177d55758"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw_floating_toolbar_on_scroll</a> (GtkWidget *widget, GdkEventScroll *event, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a2f4b8ba7f51a4bf6e12a585177d55758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29df78f116c127e22a561beb4d8bae51"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw_after_configure_scrolled</a> (gpointer user_data)</td></tr>
+<tr class="separator:a29df78f116c127e22a561beb4d8bae51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1aa257faac7a8b75c12a286ad20ce823"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw_on_configure</a> (GtkWidget *widget, GdkEventConfigure *event, gpointer data)</td></tr>
+<tr class="separator:a1aa257faac7a8b75c12a286ad20ce823"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e69db7ebd2d2998d34fbf6853ce2f27"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw_update_pin</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a0e69db7ebd2d2998d34fbf6853ce2f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba6a0bf71cc04aa6ac20920d4dd219d2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw_toolbar_pin</a> (GtkWidget *widget, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:aba6a0bf71cc04aa6ac20920d4dd219d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3c92ea50f889b1252614586d9f7a23e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw_create_floating_toolbar</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, gint mode)</td></tr>
+<tr class="separator:ad3c92ea50f889b1252614586d9f7a23e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a366b8717c9906fdb1938659dc2ab1b03"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw_toolbar_place_signal</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, gpointer data)</td></tr>
+<tr class="separator:a366b8717c9906fdb1938659dc2ab1b03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10c64d29db5f199eb4c86b0ae5a5a0bd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd">rcw_init</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a10c64d29db5f199eb4c86b0ae5a5a0bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9d246740106aae9643ab7edc32923f3"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw_state_event</a> (GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</td></tr>
+<tr class="separator:aa9d246740106aae9643ab7edc32923f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f5a9e8173b3ce9831f1771089fe778a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw_map_event_fullscreen</a> (GtkWidget *widget, GdkEvent *event, gpointer data)</td></tr>
+<tr class="separator:a5f5a9e8173b3ce9831f1771089fe778a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f9d79b58064438a513d47b4ff690b73"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw_new</a> (gboolean fullscreen, int full_screen_target_monitor)</td></tr>
+<tr class="separator:a3f9d79b58064438a513d47b4ff690b73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8d1a8843f974fb8170d76f945a72080"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw_update_tag</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:af8d1a8843f974fb8170d76f945a72080"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a756830638372adda00be33468c8d3ed2"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a> (GtkNotebook *notebook, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a756830638372adda00be33468c8d3ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaef82069514845b2987ac0659993cecd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaef82069514845b2987ac0659993cecd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4bcd597461ffa30d2975cbc6b071ce4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rco_on_close_button_clicked</a> (GtkButton *button, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:af4bcd597461ffa30d2975cbc6b071ce4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a327f62be43b7f312982f9e22b86a2867"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw_update_notebook</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a327f62be43b7f312982f9e22b86a2867"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af99dc9a4135deff0a11c2d56877bad93"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw_on_switch_page_finalsel</a> (gpointer user_data)</td></tr>
+<tr class="separator:af99dc9a4135deff0a11c2d56877bad93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f8175377bfbda4794674e619ca0fa8b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw_on_switch_page</a> (GtkNotebook *notebook, GtkWidget *newpage, guint page_num, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a8f8175377bfbda4794674e619ca0fa8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4d4fa75260167fe894750ecd01ee4e9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw_on_page_added</a> (GtkNotebook *notebook, GtkWidget *child, guint page_num, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:ad4d4fa75260167fe894750ecd01ee4e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0aef50fe641f959f5715ab7e01bfd23d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw_on_page_removed</a> (GtkNotebook *notebook, GtkWidget *child, guint page_num, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a0aef50fe641f959f5715ab7e01bfd23d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d710132769d5f21989af6844c04b43f"><td class="memItemLeft" align="right" valign="top">static GtkNotebook *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw_on_notebook_create_window</a> (GtkNotebook *notebook, GtkWidget *page, gint x, gint y, gpointer data)</td></tr>
+<tr class="separator:a6d710132769d5f21989af6844c04b43f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fce938658aee966b1ccffb4a0ab4cff"><td class="memItemLeft" align="right" valign="top">static GtkNotebook *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw_create_notebook</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a1fce938658aee966b1ccffb4a0ab4cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cb504e984baf9ad7ba06b03da6ab746"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw_create_overlay_ftb_overlay</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a0cb504e984baf9ad7ba06b03da6ab746"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ab5e41b9227097a9eec6f73dcb453ea"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw_ftb_drag_drop</a> (GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:a4ab5e41b9227097a9eec6f73dcb453ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a61db497c95cf18aea60b2a3a5a31c0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw_find</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a6a61db497c95cf18aea60b2a3a5a31c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add97977d493b64a6ea1c54ee7412f2c9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw_delayed_window_present</a> (gpointer user_data)</td></tr>
+<tr class="separator:add97977d493b64a6ea1c54ee7412f2c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3237ef26caa19b9926b485f94132cea7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rco_on_connect</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:a3237ef26caa19b9926b485f94132cea7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e026ede7a3e50374579ad538e33db7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">cb_lasterror_confirmed</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:a56e026ede7a3e50374579ad538e33db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a029feea88b7ef32425595efe7d270947"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rco_on_disconnect</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:a029feea88b7ef32425595efe7d270947"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61b9eae2dd47962c5966d5d32eec9964"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rco_on_desktop_resize</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:a61b9eae2dd47962c5966d5d32eec9964"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adca4317296daf9b6c51c4258a70faf5a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rco_on_update_align</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:adca4317296daf9b6c51c4258a70faf5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa79b4c65a2a416a94c27363324c1cede"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rco_on_unlock_dynres</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:aa79b4c65a2a416a94c27363324c1cede"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa37f2a9c56df0ce1a0dbc32f8989e4b5"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa37f2a9c56df0ce1a0dbc32f8989e4b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80f465cb910660ded402fb0e7bb3a7fd"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">open_connection_last_stage</a> (gpointer user_data)</td></tr>
+<tr class="separator:a80f465cb910660ded402fb0e7bb3a7fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5ac9d52e0afc18834da73ef2bf18edd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rpw_size_allocated_on_connection</a> (GtkWidget *w, GdkRectangle *allocation, gpointer user_data)</td></tr>
+<tr class="separator:ad5ac9d52e0afc18834da73ef2bf18edd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b7a771392e15e527005305e71cc2546"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a1b7a771392e15e527005305e71cc2546"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3c2fe67b137c757bd21b79ad5dcc5ff"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</td></tr>
+<tr class="separator:ad3c2fe67b137c757bd21b79ad5dcc5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4204fcd726a60493b290dd5590ec693d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> mode)</td></tr>
+<tr class="separator:a4204fcd726a60493b290dd5590ec693d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96e821dc68caa7f3380a513eb47aead7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="memdesc:a96e821dc68caa7f3380a513eb47aead7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last remaining one. <a href="#a96e821dc68caa7f3380a513eb47aead7">More...</a><br /></td></tr>
+<tr class="separator:a96e821dc68caa7f3380a513eb47aead7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="memdesc:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. <a href="#ac5eda3a29c88ac88d80b5775e39ffcb4">More...</a><br /></td></tr>
+<tr class="separator:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:af657fd4825d16d8d003a8b42fbd0c715"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a></td></tr>
+<tr class="separator:af657fd4825d16d8d003a8b42fbd0c715"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29701ae152ba15f6d8921f395174d2df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a></td></tr>
+<tr class="separator:a29701ae152ba15f6d8921f395174d2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ea4e41deacf11e9b9b71e7eac06869e"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e">rcw_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td></tr>
+<tr class="separator:a2ea4e41deacf11e9b9b71e7eac06869e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6515e726b5d3e4c0a9aefc3cf20f3d90"><td class="memItemLeft" align="right" valign="top">static const GtkTargetEntry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90">dnd_targets_ftb</a> []</td></tr>
+<tr class="separator:a6515e726b5d3e4c0a9aefc3cf20f3d90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e71031254421ccb10e0c29699cc9523"><td class="memItemLeft" align="right" valign="top">static const GtkTargetEntry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523">dnd_targets_tb</a> []</td></tr>
+<tr class="separator:a7e71031254421ccb10e0c29699cc9523"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a1cc1f656edfbe0d9c5483ac858b76517"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cc1f656edfbe0d9c5483ac858b76517">&#9670;&nbsp;</a></span>RemminaConnectionObject</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a> <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a06fc87d81c62e9abb8790b6e5713c55b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06fc87d81c62e9abb8790b6e5713c55b">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668"></a>TOOLBARPLACE_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"></a>LAST_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00171">171</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e026ede7a3e50374579ad538e33db7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e026ede7a3e50374579ad538e33db7">&#9670;&nbsp;</a></span>cb_lasterror_confirmed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cb_lasterror_confirmed </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03768">3768</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a21e0a6e416667f30c2b1599b8b24faec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a21e0a6e416667f30c2b1599b8b24faec">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rcw&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_WINDOW&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00075">75</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="abbc84b2c450f62c288ff827c5d2c5cd2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbc84b2c450f62c288ff827c5d2c5cd2">&#9670;&nbsp;</a></span>get_current_allowed_scale_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> get_current_allowed_scale_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean *&#160;</td>
+ <td class="paramname"><em>dynres_avail</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean *&#160;</td>
+ <td class="paramname"><em>scale_avail</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00381">381</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a756830638372adda00be33468c8d3ed2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a756830638372adda00be33468c8d3ed2">&#9670;&nbsp;</a></span>nb_find_page_by_cnnobj()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* nb_find_page_by_cnnobj </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02931">2931</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ac21387fbd4b689472e4796467bd50a55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac21387fbd4b689472e4796467bd50a55">&#9670;&nbsp;</a></span>nb_migrate_page_content()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void nb_migrate_page_content </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>frompage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>topage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01185">1185</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e70819cad41022a0070c8102dd6dd6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e70819cad41022a0070c8102dd6dd6f">&#9670;&nbsp;</a></span>nb_set_current_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void nb_set_current_page </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>page</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01172">1172</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a80f465cb910660ded402fb0e7bb3a7fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80f465cb910660ded402fb0e7bb3a7fd">&#9670;&nbsp;</a></span>open_connection_last_stage()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean open_connection_last_stage </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03867">3867</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3cc04a8362110361d062a840b8ae5f64"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cc04a8362110361d062a840b8ae5f64">&#9670;&nbsp;</a></span>rco_call_protocol_feature_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_call_protocol_feature_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01692">1692</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ae09c2a83e973c3041254fb57bd58666f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae09c2a83e973c3041254fb57bd58666f">&#9670;&nbsp;</a></span>rco_call_protocol_feature_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_call_protocol_feature_check </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01680">1680</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3a531286fa321e0931475b5afc86ec49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a531286fa321e0931475b5afc86ec49">&#9670;&nbsp;</a></span>rco_call_protocol_feature_radio()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_call_protocol_feature_radio </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01665">1665</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a042a37c7e92f49443ddbdc6dc948b8b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a042a37c7e92f49443ddbdc6dc948b8b5">&#9670;&nbsp;</a></span>rco_change_scalemode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_change_scalemode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>bdyn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>bscale</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01565">1565</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ae1c994940909e60d4f565be0e0478b34"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1c994940909e60d4f565be0e0478b34">&#9670;&nbsp;</a></span>rco_check_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_check_resize </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01011">1011</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aaef82069514845b2987ac0659993cecd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaef82069514845b2987ac0659993cecd">&#9670;&nbsp;</a></span>rco_closewin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_closewin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02952">2952</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="afcbac7a8924d543a58039037837710ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcbac7a8924d543a58039037837710ba">&#9670;&nbsp;</a></span>rco_create_scrolled_container()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* rco_create_scrolled_container </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>view_mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00884">884</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3928a83b083a55e3af1ed81da49b25eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3928a83b083a55e3af1ed81da49b25eb">&#9670;&nbsp;</a></span>rco_create_tab_label()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget * rco_create_tab_label </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02985">2985</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1c40706e7ac542d396d2db99ba944dc6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c40706e7ac542d396d2db99ba944dc6">&#9670;&nbsp;</a></span>rco_create_tab_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget * rco_create_tab_page </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03030">3030</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a96e821dc68caa7f3380a513eb47aead7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96e821dc68caa7f3380a513eb47aead7">&#9670;&nbsp;</a></span>rco_destroy_message_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_destroy_message_panel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last remaining one. </p>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04060">4060</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a2690c97a972e458dea9f5c0566ea50b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2690c97a972e458dea9f5c0566ea50b9">&#9670;&nbsp;</a></span>rco_disconnect_current_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_disconnect_current_page </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00411">411</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0650f31e99dd15c719328345411deba0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0650f31e99dd15c719328345411deba0">&#9670;&nbsp;</a></span>rco_enter_protocol_widget()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rco_enter_protocol_widget </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02506">2506</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a8cb8bd7679116f409b29399a5d14c527"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cb8bd7679116f409b29399a5d14c527">&#9670;&nbsp;</a></span>rco_get_desktop_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_get_desktop_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>height</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00858">858</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aee06df544a91184cba1fe77c6991065a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee06df544a91184cba1fe77c6991065a">&#9670;&nbsp;</a></span>rco_get_monitor_geometry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_get_monitor_geometry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkRectangle *&#160;</td>
+ <td class="paramname"><em>sz</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00960">960</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad45e51f5a72b7ffe9bca86d336563757"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad45e51f5a72b7ffe9bca86d336563757">&#9670;&nbsp;</a></span>rco_leave_protocol_widget()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rco_leave_protocol_widget </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02460">2460</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="af4bcd597461ffa30d2975cbc6b071ce4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4bcd597461ffa30d2975cbc6b071ce4">&#9670;&nbsp;</a></span>rco_on_close_button_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_close_button_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02974">2974</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3237ef26caa19b9926b485f94132cea7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3237ef26caa19b9926b485f94132cea7">&#9670;&nbsp;</a></span>rco_on_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_connect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Remember recent list for quick connect, and save the current date in the last_used field.</p>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03721">3721</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a61b9eae2dd47962c5966d5d32eec9964"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61b9eae2dd47962c5966d5d32eec9964">&#9670;&nbsp;</a></span>rco_on_desktop_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_desktop_resize </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03824">3824</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a029feea88b7ef32425595efe7d270947"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a029feea88b7ef32425595efe7d270947">&#9670;&nbsp;</a></span>rco_on_disconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_disconnect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03774">3774</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa79b4c65a2a416a94c27363324c1cede"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa79b4c65a2a416a94c27363324c1cede">&#9670;&nbsp;</a></span>rco_on_unlock_dynres()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_unlock_dynres </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03839">3839</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="adca4317296daf9b6c51c4258a70faf5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adca4317296daf9b6c51c4258a70faf5a">&#9670;&nbsp;</a></span>rco_on_update_align()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_on_update_align </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03832">3832</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a7b60c2cb02c4a893d8d2054f0bb53790"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b60c2cb02c4a893d8d2054f0bb53790">&#9670;&nbsp;</a></span>rco_scrolled_fullscreen_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_scrolled_fullscreen_mode </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01315">1315</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ae0f54fdd4d7526ba4e110d04d7fb2844"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0f54fdd4d7526ba4e110d04d7fb2844">&#9670;&nbsp;</a></span>rco_set_scrolled_policy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_set_scrolled_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkScrolledWindow *&#160;</td>
+ <td class="paramname"><em>scrolled_window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00874">874</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ac5eda3a29c88ac88d80b5775e39ffcb4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5eda3a29c88ac88d80b5775e39ffcb4">&#9670;&nbsp;</a></span>rco_show_message_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_show_message_panel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. </p>
+<p>This function adds a RemminaMessagePanel to cnnobj-&gt;page, move it to top, and makes it the only visible one. </p>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04107">4107</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="acfe9306fecab6d93b5ab51571b69fc6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acfe9306fecab6d93b5ab51571b69fc6a">&#9670;&nbsp;</a></span>rco_switch_page_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_switch_page_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01475">1475</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a319e8c05fa25a57aa34875d48e182726"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a319e8c05fa25a57aa34875d48e182726">&#9670;&nbsp;</a></span>rco_update_toolbar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_update_toolbar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02352">2352</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a23692809213a6dfe683afe3d0dece3aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23692809213a6dfe683afe3d0dece3aa">&#9670;&nbsp;</a></span>rco_update_toolbar_autofit_button()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_update_toolbar_autofit_button </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01547">1547</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3463779f231df73defb8ff86f27ec9ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3463779f231df73defb8ff86f27ec9ef">&#9670;&nbsp;</a></span>rco_viewport_fullscreen_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rco_viewport_fullscreen_mode </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01304">1304</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a29df78f116c127e22a561beb4d8bae51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29df78f116c127e22a561beb4d8bae51">&#9670;&nbsp;</a></span>rcw_after_configure_scrolled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_after_configure_scrolled </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02630">2630</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad5a67ac52028302d5681cceaf9ac46bc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5a67ac52028302d5681cceaf9ac46bc">&#9670;&nbsp;</a></span>rcw_append_new_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget * rcw_append_new_page </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03041">3041</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a36b924d7fb7ccb1418912ea4c47620a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36b924d7fb7ccb1418912ea4c47620a4">&#9670;&nbsp;</a></span>rcw_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00212">212</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a6bd6b600564be75e95870a0375c0a4d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6bd6b600564be75e95870a0375c0a4d3">&#9670;&nbsp;</a></span>rcw_close_all_connections()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_close_all_connections </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00605">605</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad3c92ea50f889b1252614586d9f7a23e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3c92ea50f889b1252614586d9f7a23e">&#9670;&nbsp;</a></span>rcw_create_floating_toolbar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_create_floating_toolbar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02717">2717</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a11bb04a25b6c8a79af3cb34f22e28dd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11bb04a25b6c8a79af3cb34f22e28dd8">&#9670;&nbsp;</a></span>rcw_create_fullscreen()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> * rcw_create_fullscreen </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>old</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>view_mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03438">3438</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1fce938658aee966b1ccffb4a0ab4cff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1fce938658aee966b1ccffb4a0ab4cff">&#9670;&nbsp;</a></span>rcw_create_notebook()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkNotebook* rcw_create_notebook </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03213">3213</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0cb504e984baf9ad7ba06b03da6ab746"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0cb504e984baf9ad7ba06b03da6ab746">&#9670;&nbsp;</a></span>rcw_create_overlay_ftb_overlay()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_create_overlay_ftb_overlay </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03302">3302</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a95c64795004c7778c56068abeb1a6bd0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95c64795004c7778c56068abeb1a6bd0">&#9670;&nbsp;</a></span>rcw_create_scrolled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> * rcw_create_scrolled </td>
+ <td>(</td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>maximize</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03233">3233</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a2caca4bce3a8ec22a99ede169746af86"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2caca4bce3a8ec22a99ede169746af86">&#9670;&nbsp;</a></span>rcw_create_toolbar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget * rcw_create_toolbar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02113">2113</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="add97977d493b64a6ea1c54ee7412f2c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add97977d493b64a6ea1c54ee7412f2c9">&#9670;&nbsp;</a></span>rcw_delayed_window_present()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_delayed_window_present </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03709">3709</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="adae469553aa0647d0df5d88b180e7cd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adae469553aa0647d0df5d88b180e7cd7">&#9670;&nbsp;</a></span>rcw_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_delete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00624">624</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a07802fc420dc07560fe937d29172573c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07802fc420dc07560fe937d29172573c">&#9670;&nbsp;</a></span>rcw_delete_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_delete_event </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00652">652</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa7de86386944c333dc9f4bf87f819f9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7de86386944c333dc9f4bf87f819f9c">&#9670;&nbsp;</a></span>rcw_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00659">659</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a6a61db497c95cf18aea60b2a3a5a31c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a61db497c95cf18aea60b2a3a5a31c0">&#9670;&nbsp;</a></span>rcw_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>* rcw_find </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03687">3687</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a423aaf9a4d3eed6dac67de5a8cc24a18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a423aaf9a4d3eed6dac67de5a8cc24a18">&#9670;&nbsp;</a></span>rcw_floating_toolbar_hide()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_floating_toolbar_hide </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02573">2573</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a544a61088b93ffc31a79554c70d97dff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a544a61088b93ffc31a79554c70d97dff">&#9670;&nbsp;</a></span>rcw_floating_toolbar_make_invisible()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_floating_toolbar_make_invisible </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00822">822</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a961e539a6f6ccbe73a301869c6960ab6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a961e539a6f6ccbe73a301869c6960ab6">&#9670;&nbsp;</a></span>rcw_floating_toolbar_on_enter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_floating_toolbar_on_enter </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02441">2441</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a2f4b8ba7f51a4bf6e12a585177d55758"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f4b8ba7f51a4bf6e12a585177d55758">&#9670;&nbsp;</a></span>rcw_floating_toolbar_on_scroll()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_floating_toolbar_on_scroll </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventScroll *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02582">2582</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a10b9b689406b4b3071ace2b7c8562aa7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10b9b689406b4b3071ace2b7c8562aa7">&#9670;&nbsp;</a></span>rcw_floating_toolbar_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_floating_toolbar_show </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>show</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00831">831</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a8a789be4e849f79bf8064bc47ba85ea3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a789be4e849f79bf8064bc47ba85ea3">&#9670;&nbsp;</a></span>rcw_focus_in()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_focus_in </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02533">2533</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a010af24147287ef89f605e71ef315475"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a010af24147287ef89f605e71ef315475">&#9670;&nbsp;</a></span>rcw_focus_out()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_focus_out </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02554">2554</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a73532ae8f8fa05711035bc3d4c82ac2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73532ae8f8fa05711035bc3d4c82ac2a">&#9670;&nbsp;</a></span>rcw_ftb_drag_begin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_ftb_drag_begin </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03415">3415</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a4ab5e41b9227097a9eec6f73dcb453ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ab5e41b9227097a9eec6f73dcb453ea">&#9670;&nbsp;</a></span>rcw_ftb_drag_drop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_ftb_drag_drop </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>time</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03386">3386</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ffed90419a36560bf0c4d213a853c28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ffed90419a36560bf0c4d213a853c28">&#9670;&nbsp;</a></span>rcw_fullscreen_option_popdown()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_fullscreen_option_popdown </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01326">1326</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aaad3184fedef1eccd1f92d8ef43cca44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaad3184fedef1eccd1f92d8ef43cca44">&#9670;&nbsp;</a></span>rcw_get_cnnobj_at_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a>* rcw_get_cnnobj_at_page </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>npage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00357">357</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="affd8155adb04dc7ffbb7f4fff379dc47"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affd8155adb04dc7ffbb7f4fff379dc47">&#9670;&nbsp;</a></span>rcw_get_visible_cnnobj()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a>* rcw_get_visible_cnnobj </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00367">367</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a7189a0f1289a24fc5cc9fdfaf37244f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7189a0f1289a24fc5cc9fdfaf37244f3">&#9670;&nbsp;</a></span>rcw_grab_focus()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_grab_focus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02920">2920</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="acb1b2ab629603837e08f8d8de542316d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb1b2ab629603837e08f8d8de542316d">&#9670;&nbsp;</a></span>rcw_hostkey_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_hostkey_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>release</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>Add callback for hostname transparent overlay #832 </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03506">3506</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a10c64d29db5f199eb4c86b0ae5a5a0bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10c64d29db5f199eb4c86b0ae5a5a0bd">&#9670;&nbsp;</a></span>rcw_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02796">2796</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a362cc1f55ba8365460c2ebfc0528e01c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a362cc1f55ba8365460c2ebfc0528e01c">&#9670;&nbsp;</a></span>rcw_keyboard_grab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_keyboard_grab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00524">524</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a71284e0ce3acb9fce6d4ecf6fea1a3f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71284e0ce3acb9fce6d4ecf6fea1a3f5">&#9670;&nbsp;</a></span>rcw_keyboard_grab_retry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_keyboard_grab_retry </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00470">470</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a82c93bbb1ab73807b366b86928c37946"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a82c93bbb1ab73807b366b86928c37946">&#9670;&nbsp;</a></span>rcw_kp_ungrab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_kp_ungrab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00419">419</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f5a9e8173b3ce9831f1771089fe778a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f5a9e8173b3ce9831f1771089fe778a">&#9670;&nbsp;</a></span>rcw_map_event_fullscreen()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_map_event_fullscreen </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02837">2837</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0d4ebd91bc6568257031111f56689a76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d4ebd91bc6568257031111f56689a76">&#9670;&nbsp;</a></span>rcw_migrate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_migrate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01212">1212</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a3f9d79b58064438a513d47b4ff690b73"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f9d79b58064438a513d47b4ff690b73">&#9670;&nbsp;</a></span>rcw_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>* rcw_new </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>fullscreen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>full_screen_target_monitor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02868">2868</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a60f9f738cfd988cfc7cc39997538e4e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60f9f738cfd988cfc7cc39997538e4e0">&#9670;&nbsp;</a></span>rcw_notify_widget_toolbar_placement()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_notify_widget_toolbar_placement </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00710">710</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1aa257faac7a8b75c12a286ad20ce823"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1aa257faac7a8b75c12a286ad20ce823">&#9670;&nbsp;</a></span>rcw_on_configure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_on_configure </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventConfigure *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02666">2666</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a27f545a9630a481f4df747478cd227fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27f545a9630a481f4df747478cd227fb">&#9670;&nbsp;</a></span>rcw_on_leave_notify_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_on_leave_notify_event </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02449">2449</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d710132769d5f21989af6844c04b43f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d710132769d5f21989af6844c04b43f">&#9670;&nbsp;</a></span>rcw_on_notebook_create_window()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkNotebook* rcw_on_notebook_create_window </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>page</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03151">3151</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4d4fa75260167fe894750ecd01ee4e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4d4fa75260167fe894750ecd01ee4e9">&#9670;&nbsp;</a></span>rcw_on_page_added()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_on_page_added </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>child</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>page_num</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03134">3134</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0aef50fe641f959f5715ab7e01bfd23d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0aef50fe641f959f5715ab7e01bfd23d">&#9670;&nbsp;</a></span>rcw_on_page_removed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_on_page_removed </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>child</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>page_num</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03141">3141</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a8f8175377bfbda4794674e619ca0fa8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f8175377bfbda4794674e619ca0fa8b">&#9670;&nbsp;</a></span>rcw_on_switch_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_on_switch_page </td>
+ <td>(</td>
+ <td class="paramtype">GtkNotebook *&#160;</td>
+ <td class="paramname"><em>notebook</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>newpage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>page_num</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03121">3121</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="af99dc9a4135deff0a11c2d56877bad93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af99dc9a4135deff0a11c2d56877bad93">&#9670;&nbsp;</a></span>rcw_on_switch_page_finalsel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_on_switch_page_finalsel </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03092">3092</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1b7a771392e15e527005305e71cc2546"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b7a771392e15e527005305e71cc2546">&#9670;&nbsp;</a></span>rcw_open_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_open_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03892">3892</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad3c2fe67b137c757bd21b79ad5dcc5ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3c2fe67b137c757bd21b79ad5dcc5ff">&#9670;&nbsp;</a></span>rcw_open_from_file_full()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* rcw_open_from_file_full </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GCallback&#160;</td>
+ <td class="paramname"><em>disconnect_cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint *&#160;</td>
+ <td class="paramname"><em>handler</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03898">3898</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa37f2a9c56df0ce1a0dbc32f8989e4b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa37f2a9c56df0ce1a0dbc32f8989e4b5">&#9670;&nbsp;</a></span>rcw_open_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_open_from_filename </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03847">3847</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="afc62938ff8bcaad6b743f50ecf36d292"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc62938ff8bcaad6b743f50ecf36d292">&#9670;&nbsp;</a></span>rcw_place_toolbar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_place_toolbar </td>
+ <td>(</td>
+ <td class="paramtype">GtkToolbar *&#160;</td>
+ <td class="paramname"><em>toolbar</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkGrid *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>sibling</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>toolbar_placement</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02318">2318</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3e012d5e499aebb8fcbef55f505f2f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3e012d5e499aebb8fcbef55f505f2f3">&#9670;&nbsp;</a></span>rcw_pointer_grab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_pointer_grab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00494">494</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a177a2ece80374b29bc26595fff8bed42"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a177a2ece80374b29bc26595fff8bed42">&#9670;&nbsp;</a></span>rcw_pointer_ungrab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_pointer_ungrab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00480">480</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ae747a0b62a922df1de61c62092757b19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae747a0b62a922df1de61c62092757b19">&#9670;&nbsp;</a></span>rcw_scaler_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_scaler_expand </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01394">1394</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="abd0a6de10dd92a8a84f24b8e66da5767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd0a6de10dd92a8a84f24b8e66da5767">&#9670;&nbsp;</a></span>rcw_scaler_keep_aspect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_scaler_keep_aspect </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01408">1408</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a45ecb24606954e4268f2f3c5d7e2e1e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45ecb24606954e4268f2f3c5d7e2e1e0">&#9670;&nbsp;</a></span>rcw_scaler_option_popdown()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_scaler_option_popdown </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01383">1383</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a4204fcd726a60493b290dd5590ec693d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4204fcd726a60493b290dd5590ec693d">&#9670;&nbsp;</a></span>rcw_set_delete_confirm_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_set_delete_confirm_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a>&#160;</td>
+ <td class="paramname"><em>mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04050">4050</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a23d848e45205a65618c84bb70b882b3f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23d848e45205a65618c84bb70b882b3f">&#9670;&nbsp;</a></span>rcw_set_toolbar_visibility()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_set_toolbar_visibility </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02428">2428</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="acfa15d238ac64558487dee3c320c3701"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acfa15d238ac64558487dee3c320c3701">&#9670;&nbsp;</a></span>rcw_set_tooltip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_set_tooltip </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>item</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>tip</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>key1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>key2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01075">1075</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9d246740106aae9643ab7edc32923f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9d246740106aae9643ab7edc32923f3">&#9670;&nbsp;</a></span>rcw_state_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_state_event </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventWindowState *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02820">2820</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="afec9666876babf3ae115fade7470915e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afec9666876babf3ae115fade7470915e">&#9670;&nbsp;</a></span>rcw_switch_viewmode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_switch_viewmode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>newmode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01247">1247</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0ca9e87bf2fc3855699f80315d72314b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ca9e87bf2fc3855699f80315d72314b">&#9670;&nbsp;</a></span>rcw_tb_drag_begin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_tb_drag_begin </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00781">781</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a70d89903e3279a1650dc0684f26ed9c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70d89903e3279a1650dc0684f26ed9c2">&#9670;&nbsp;</a></span>rcw_tb_drag_drop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_tb_drag_drop </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>time</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00739">739</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a14a8e53afac8e750b7839d74dc50c758"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14a8e53afac8e750b7839d74dc50c758">&#9670;&nbsp;</a></span>rcw_tb_drag_failed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rcw_tb_drag_failed </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkDragResult&#160;</td>
+ <td class="paramname"><em>result</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00722">722</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4b9810ed2b9ae62933b969c1d9acf3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4b9810ed2b9ae62933b969c1d9acf3c">&#9670;&nbsp;</a></span>rcw_toolbar_autofit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_autofit </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00939">939</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa1044979d82ce73db51117de1262832f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1044979d82ce73db51117de1262832f">&#9670;&nbsp;</a></span>rcw_toolbar_autofit_restore()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_toolbar_autofit_restore </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00903">903</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0fbf6bfa4022b5f7b3286a68b0a3c446"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0fbf6bfa4022b5f7b3286a68b0a3c446">&#9670;&nbsp;</a></span>rcw_toolbar_disconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_disconnect </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02077">2077</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ac973ca10137b1f285f45785f93966fd5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac973ca10137b1f285f45785f93966fd5">&#9670;&nbsp;</a></span>rcw_toolbar_duplicate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_duplicate </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01912">1912</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1af82a0b7f5fd27477d6f4c55ed0898b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1af82a0b7f5fd27477d6f4c55ed0898b">&#9670;&nbsp;</a></span>rcw_toolbar_dynres()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_dynres </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01591">1591</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0cc69ded61b733b2d01a489f1c3c72d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0cc69ded61b733b2d01a489f1c3c72d3">&#9670;&nbsp;</a></span>rcw_toolbar_fullscreen()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_fullscreen </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01287">1287</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aaedf05f5ff4fadcb28346d1cfc4accab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaedf05f5ff4fadcb28346d1cfc4accab">&#9670;&nbsp;</a></span>rcw_toolbar_fullscreen_option()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_toolbar_fullscreen_option </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01336">1336</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6e4f2ac3249f0e5e537b65d0a7163d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6e4f2ac3249f0e5e537b65d0a7163d6">&#9670;&nbsp;</a></span>rcw_toolbar_grab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_grab </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02087">2087</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a51bb9efba28252cbf96da6797710c919"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51bb9efba28252cbf96da6797710c919">&#9670;&nbsp;</a></span>rcw_toolbar_minimize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_minimize </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02066">2066</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aba6a0bf71cc04aa6ac20920d4dd219d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba6a0bf71cc04aa6ac20920d4dd219d2">&#9670;&nbsp;</a></span>rcw_toolbar_pin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_pin </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02709">2709</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a366b8717c9906fdb1938659dc2ab1b03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a366b8717c9906fdb1938659dc2ab1b03">&#9670;&nbsp;</a></span>rcw_toolbar_place_signal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_place_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02780">2780</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a4482a8c41ac6707436e8eb847867dc1a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4482a8c41ac6707436e8eb847867dc1a">&#9670;&nbsp;</a></span>rcw_toolbar_preferences()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_preferences </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01759">1759</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a366d1ea1fc39ddc72c384d07d47a25d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a366d1ea1fc39ddc72c384d07d47a25d9">&#9670;&nbsp;</a></span>rcw_toolbar_preferences_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_toolbar_preferences_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>enabled</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01735">1735</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4b422fe9972866b74db8b763f8cb42e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4b422fe9972866b74db8b763f8cb42e">&#9670;&nbsp;</a></span>rcw_toolbar_preferences_popdown()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_preferences_popdown </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01636">1636</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad13167e478305c3fae8a4cea1d0e2f76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad13167e478305c3fae8a4cea1d0e2f76">&#9670;&nbsp;</a></span>rcw_toolbar_preferences_radio()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_toolbar_preferences_radio </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>enabled</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01701">1701</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1647e25501f5ee2852dfd27a10e0d8c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1647e25501f5ee2852dfd27a10e0d8c8">&#9670;&nbsp;</a></span>rcw_toolbar_scaled_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_scaled_mode </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01615">1615</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a4cfb767a626e63e3003ddbe0a8fea8a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4cfb767a626e63e3003ddbe0a8fea8a1">&#9670;&nbsp;</a></span>rcw_toolbar_scaler_option()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_scaler_option </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01424">1424</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a604971831f6ef8dd750ad6d29abb73a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a604971831f6ef8dd750ad6d29abb73a9">&#9670;&nbsp;</a></span>rcw_toolbar_screenshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_screenshot </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01928">1928</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d26c5dd2d9e941486a7a9bfe0f81304"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d26c5dd2d9e941486a7a9bfe0f81304">&#9670;&nbsp;</a></span>rcw_toolbar_switch_page()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_switch_page </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01496">1496</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a03311f33ff921f943f6edbbc1867d1ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03311f33ff921f943f6edbbc1867d1ec">&#9670;&nbsp;</a></span>rcw_toolbar_switch_page_popdown()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_toolbar_switch_page_popdown </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01485">1485</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a7abfab8a6281126baaf5f443ff4adda1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7abfab8a6281126baaf5f443ff4adda1">&#9670;&nbsp;</a></span>rcw_toolbar_tools()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_toolbar_tools </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01822">1822</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ae0243af9dbe4b388a39ea432c3e580e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0243af9dbe4b388a39ea432c3e580e5">&#9670;&nbsp;</a></span>rcw_toolbar_tools_popdown()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_toolbar_tools_popdown </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01651">1651</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a327f62be43b7f312982f9e22b86a2867"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a327f62be43b7f312982f9e22b86a2867">&#9670;&nbsp;</a></span>rcw_update_notebook()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_update_notebook </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03071">3071</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a0e69db7ebd2d2998d34fbf6853ce2f27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e69db7ebd2d2998d34fbf6853ce2f27">&#9670;&nbsp;</a></span>rcw_update_pin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_update_pin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02698">2698</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="af8d1a8843f974fb8170d76f945a72080"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8d1a8843f974fb8170d76f945a72080">&#9670;&nbsp;</a></span>rcw_update_tag()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rcw_update_tag </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l02901">2901</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a5929f8c1c1513c0fd75a88cd4721b8a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5929f8c1c1513c0fd75a88cd4721b8a4">&#9670;&nbsp;</a></span>rcw_update_toolbar_opacity()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_update_toolbar_opacity </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00806">806</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ab7dc553cbd2005feb77163cf79f48f6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7dc553cbd2005feb77163cf79f48f6d">&#9670;&nbsp;</a></span>remmina_protocol_widget_update_alignment()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_update_alignment </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l01099">1099</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad5ac9d52e0afc18834da73ef2bf18edd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5ac9d52e0afc18834da73ef2bf18edd">&#9670;&nbsp;</a></span>rpw_size_allocated_on_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rpw_size_allocated_on_connection </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkRectangle *&#160;</td>
+ <td class="paramname"><em>allocation</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03879">3879</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a6515e726b5d3e4c0a9aefc3cf20f3d90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6515e726b5d3e4c0a9aefc3cf20f3d90">&#9670;&nbsp;</a></span>dnd_targets_ftb</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GtkTargetEntry dnd_targets_ftb[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> {</div><div class="line"> (<span class="keywordtype">char</span> *)<span class="stringliteral">&quot;text/x-remmina-ftb&quot;</span>,</div><div class="line"> GTK_TARGET_SAME_APP | GTK_TARGET_OTHER_WIDGET,</div><div class="line"> 0</div><div class="line"> },</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00194">194</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a7e71031254421ccb10e0c29699cc9523"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e71031254421ccb10e0c29699cc9523">&#9670;&nbsp;</a></span>dnd_targets_tb</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GtkTargetEntry dnd_targets_tb[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> {</div><div class="line"> (<span class="keywordtype">char</span> *)<span class="stringliteral">&quot;text/x-remmina-tb&quot;</span>,</div><div class="line"> GTK_TARGET_SAME_APP,</div><div class="line"> 0</div><div class="line"> },</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00203">203</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a2ea4e41deacf11e9b9b71e7eac06869e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ea4e41deacf11e9b9b71e7eac06869e">&#9670;&nbsp;</a></span>rcw_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rcw_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00176">176</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a29701ae152ba15f6d8921f395174d2df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29701ae152ba15f6d8921f395174d2df">&#9670;&nbsp;</a></span>remmina_pref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a> remmina_pref</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00073">73</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="af657fd4825d16d8d003a8b42fbd0c715"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af657fd4825d16d8d003a8b42fbd0c715">&#9670;&nbsp;</a></span>remmina_pref_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00072">72</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rcw_8c.html">rcw.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rcw_8c.js b/docs/rcw_8c.js
new file mode 100644
index 000000000..dcadd975b
--- /dev/null
+++ b/docs/rcw_8c.js
@@ -0,0 +1,136 @@
+var rcw_8c =
+[
+ [ "_RemminaConnectionObject", "struct___remmina_connection_object.html", "struct___remmina_connection_object" ],
+ [ "RemminaConnectionObject", "rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517", null ],
+ [ "TOOLBARPLACE_SIGNAL", "rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668", null ],
+ [ "LAST_SIGNAL", "rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce", null ],
+ [ "cb_lasterror_confirmed", "rcw_8c.html#a56e026ede7a3e50374579ad538e33db7", null ],
+ [ "G_DEFINE_TYPE", "rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec", null ],
+ [ "get_current_allowed_scale_mode", "rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2", null ],
+ [ "nb_find_page_by_cnnobj", "rcw_8c.html#a756830638372adda00be33468c8d3ed2", null ],
+ [ "nb_migrate_page_content", "rcw_8c.html#ac21387fbd4b689472e4796467bd50a55", null ],
+ [ "nb_set_current_page", "rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f", null ],
+ [ "open_connection_last_stage", "rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd", null ],
+ [ "rco_call_protocol_feature_activate", "rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64", null ],
+ [ "rco_call_protocol_feature_check", "rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f", null ],
+ [ "rco_call_protocol_feature_radio", "rcw_8c.html#a3a531286fa321e0931475b5afc86ec49", null ],
+ [ "rco_change_scalemode", "rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5", null ],
+ [ "rco_check_resize", "rcw_8c.html#ae1c994940909e60d4f565be0e0478b34", null ],
+ [ "rco_closewin", "rcw_8c.html#aaef82069514845b2987ac0659993cecd", null ],
+ [ "rco_create_scrolled_container", "rcw_8c.html#afcbac7a8924d543a58039037837710ba", null ],
+ [ "rco_create_tab_label", "rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb", null ],
+ [ "rco_create_tab_page", "rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6", null ],
+ [ "rco_destroy_message_panel", "rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7", null ],
+ [ "rco_disconnect_current_page", "rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9", null ],
+ [ "rco_enter_protocol_widget", "rcw_8c.html#a0650f31e99dd15c719328345411deba0", null ],
+ [ "rco_get_desktop_size", "rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527", null ],
+ [ "rco_get_monitor_geometry", "rcw_8c.html#aee06df544a91184cba1fe77c6991065a", null ],
+ [ "rco_leave_protocol_widget", "rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757", null ],
+ [ "rco_on_close_button_clicked", "rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4", null ],
+ [ "rco_on_connect", "rcw_8c.html#a3237ef26caa19b9926b485f94132cea7", null ],
+ [ "rco_on_desktop_resize", "rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964", null ],
+ [ "rco_on_disconnect", "rcw_8c.html#a029feea88b7ef32425595efe7d270947", null ],
+ [ "rco_on_unlock_dynres", "rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede", null ],
+ [ "rco_on_update_align", "rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a", null ],
+ [ "rco_scrolled_fullscreen_mode", "rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790", null ],
+ [ "rco_set_scrolled_policy", "rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844", null ],
+ [ "rco_show_message_panel", "rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4", null ],
+ [ "rco_switch_page_activate", "rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a", null ],
+ [ "rco_update_toolbar", "rcw_8c.html#a319e8c05fa25a57aa34875d48e182726", null ],
+ [ "rco_update_toolbar_autofit_button", "rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa", null ],
+ [ "rco_viewport_fullscreen_mode", "rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef", null ],
+ [ "rcw_after_configure_scrolled", "rcw_8c.html#a29df78f116c127e22a561beb4d8bae51", null ],
+ [ "rcw_append_new_page", "rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc", null ],
+ [ "rcw_class_init", "rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4", null ],
+ [ "rcw_close_all_connections", "rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3", null ],
+ [ "rcw_create_floating_toolbar", "rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e", null ],
+ [ "rcw_create_fullscreen", "rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8", null ],
+ [ "rcw_create_notebook", "rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff", null ],
+ [ "rcw_create_overlay_ftb_overlay", "rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746", null ],
+ [ "rcw_create_scrolled", "rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0", null ],
+ [ "rcw_create_toolbar", "rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86", null ],
+ [ "rcw_delayed_window_present", "rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9", null ],
+ [ "rcw_delete", "rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7", null ],
+ [ "rcw_delete_event", "rcw_8c.html#a07802fc420dc07560fe937d29172573c", null ],
+ [ "rcw_destroy", "rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c", null ],
+ [ "rcw_find", "rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0", null ],
+ [ "rcw_floating_toolbar_hide", "rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18", null ],
+ [ "rcw_floating_toolbar_make_invisible", "rcw_8c.html#a544a61088b93ffc31a79554c70d97dff", null ],
+ [ "rcw_floating_toolbar_on_enter", "rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6", null ],
+ [ "rcw_floating_toolbar_on_scroll", "rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758", null ],
+ [ "rcw_floating_toolbar_show", "rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7", null ],
+ [ "rcw_focus_in", "rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3", null ],
+ [ "rcw_focus_out", "rcw_8c.html#a010af24147287ef89f605e71ef315475", null ],
+ [ "rcw_ftb_drag_begin", "rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a", null ],
+ [ "rcw_ftb_drag_drop", "rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea", null ],
+ [ "rcw_fullscreen_option_popdown", "rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28", null ],
+ [ "rcw_get_cnnobj_at_page", "rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44", null ],
+ [ "rcw_get_visible_cnnobj", "rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47", null ],
+ [ "rcw_grab_focus", "rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3", null ],
+ [ "rcw_hostkey_func", "rcw_8c.html#acb1b2ab629603837e08f8d8de542316d", null ],
+ [ "rcw_init", "rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd", null ],
+ [ "rcw_keyboard_grab", "rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c", null ],
+ [ "rcw_keyboard_grab_retry", "rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5", null ],
+ [ "rcw_kp_ungrab", "rcw_8c.html#a82c93bbb1ab73807b366b86928c37946", null ],
+ [ "rcw_map_event_fullscreen", "rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a", null ],
+ [ "rcw_migrate", "rcw_8c.html#a0d4ebd91bc6568257031111f56689a76", null ],
+ [ "rcw_new", "rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73", null ],
+ [ "rcw_notify_widget_toolbar_placement", "rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0", null ],
+ [ "rcw_on_configure", "rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823", null ],
+ [ "rcw_on_leave_notify_event", "rcw_8c.html#a27f545a9630a481f4df747478cd227fb", null ],
+ [ "rcw_on_notebook_create_window", "rcw_8c.html#a6d710132769d5f21989af6844c04b43f", null ],
+ [ "rcw_on_page_added", "rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9", null ],
+ [ "rcw_on_page_removed", "rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d", null ],
+ [ "rcw_on_switch_page", "rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b", null ],
+ [ "rcw_on_switch_page_finalsel", "rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93", null ],
+ [ "rcw_open_from_file", "rcw_8c.html#a1b7a771392e15e527005305e71cc2546", null ],
+ [ "rcw_open_from_file_full", "rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff", null ],
+ [ "rcw_open_from_filename", "rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5", null ],
+ [ "rcw_place_toolbar", "rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292", null ],
+ [ "rcw_pointer_grab", "rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3", null ],
+ [ "rcw_pointer_ungrab", "rcw_8c.html#a177a2ece80374b29bc26595fff8bed42", null ],
+ [ "rcw_scaler_expand", "rcw_8c.html#ae747a0b62a922df1de61c62092757b19", null ],
+ [ "rcw_scaler_keep_aspect", "rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767", null ],
+ [ "rcw_scaler_option_popdown", "rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0", null ],
+ [ "rcw_set_delete_confirm_mode", "rcw_8c.html#a4204fcd726a60493b290dd5590ec693d", null ],
+ [ "rcw_set_toolbar_visibility", "rcw_8c.html#a23d848e45205a65618c84bb70b882b3f", null ],
+ [ "rcw_set_tooltip", "rcw_8c.html#acfa15d238ac64558487dee3c320c3701", null ],
+ [ "rcw_state_event", "rcw_8c.html#aa9d246740106aae9643ab7edc32923f3", null ],
+ [ "rcw_switch_viewmode", "rcw_8c.html#afec9666876babf3ae115fade7470915e", null ],
+ [ "rcw_tb_drag_begin", "rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b", null ],
+ [ "rcw_tb_drag_drop", "rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2", null ],
+ [ "rcw_tb_drag_failed", "rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758", null ],
+ [ "rcw_toolbar_autofit", "rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c", null ],
+ [ "rcw_toolbar_autofit_restore", "rcw_8c.html#aa1044979d82ce73db51117de1262832f", null ],
+ [ "rcw_toolbar_disconnect", "rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446", null ],
+ [ "rcw_toolbar_duplicate", "rcw_8c.html#ac973ca10137b1f285f45785f93966fd5", null ],
+ [ "rcw_toolbar_dynres", "rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b", null ],
+ [ "rcw_toolbar_fullscreen", "rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3", null ],
+ [ "rcw_toolbar_fullscreen_option", "rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab", null ],
+ [ "rcw_toolbar_grab", "rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6", null ],
+ [ "rcw_toolbar_minimize", "rcw_8c.html#a51bb9efba28252cbf96da6797710c919", null ],
+ [ "rcw_toolbar_pin", "rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2", null ],
+ [ "rcw_toolbar_place_signal", "rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03", null ],
+ [ "rcw_toolbar_preferences", "rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a", null ],
+ [ "rcw_toolbar_preferences_check", "rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9", null ],
+ [ "rcw_toolbar_preferences_popdown", "rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e", null ],
+ [ "rcw_toolbar_preferences_radio", "rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76", null ],
+ [ "rcw_toolbar_scaled_mode", "rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8", null ],
+ [ "rcw_toolbar_scaler_option", "rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1", null ],
+ [ "rcw_toolbar_screenshot", "rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9", null ],
+ [ "rcw_toolbar_switch_page", "rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304", null ],
+ [ "rcw_toolbar_switch_page_popdown", "rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec", null ],
+ [ "rcw_toolbar_tools", "rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1", null ],
+ [ "rcw_toolbar_tools_popdown", "rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5", null ],
+ [ "rcw_update_notebook", "rcw_8c.html#a327f62be43b7f312982f9e22b86a2867", null ],
+ [ "rcw_update_pin", "rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27", null ],
+ [ "rcw_update_tag", "rcw_8c.html#af8d1a8843f974fb8170d76f945a72080", null ],
+ [ "rcw_update_toolbar_opacity", "rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4", null ],
+ [ "remmina_protocol_widget_update_alignment", "rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d", null ],
+ [ "rpw_size_allocated_on_connection", "rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd", null ],
+ [ "dnd_targets_ftb", "rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90", null ],
+ [ "dnd_targets_tb", "rcw_8c.html#a7e71031254421ccb10e0c29699cc9523", null ],
+ [ "rcw_signals", "rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e", null ],
+ [ "remmina_pref", "rcw_8c.html#a29701ae152ba15f6d8921f395174d2df", null ],
+ [ "remmina_pref_file", "rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715", null ]
+]; \ No newline at end of file
diff --git a/docs/rcw_8c_source.html b/docs/rcw_8c_source.html
new file mode 100644
index 000000000..30b16c68a
--- /dev/null
+++ b/docs/rcw_8c_source.html
@@ -0,0 +1,399 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rcw.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rcw_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rcw.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rcw_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-2020 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;</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;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;cairo/cairo-xlib.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;gdk/gdk.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</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="l00048"></a><span class="lineno"> 48</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="l00049"></a><span class="lineno"> 49</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="l00050"></a><span class="lineno"> 50</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="l00051"></a><span class="lineno"> 51</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="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__message__panel_8h.html">remmina_message_panel.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__ext__exec_8h.html">remmina_ext_exec.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__plugin__manager_8h.html">remmina_plugin_manager.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__pref_8h.html">remmina_pref.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__protocol__widget_8h.html">remmina_protocol_widget.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__public_8h.html">remmina_public.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__scrolled__viewport_8h.html">remmina_scrolled_viewport.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__utils_8h.html">remmina_utils.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__widget__pool_8h.html">remmina_widget_pool.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__log_8h.html">remmina_log.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_WAYLAND</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkwayland.h&gt;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</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;<span class="preprocessor">#define DEBUG_KB_GRABBING 0</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</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="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715"> 72</a></span>&#160;gchar *<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df"> 73</a></span>&#160;<a class="code" href="struct___remmina_pref.html">RemminaPref</a> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec"> 75</a></span>&#160;<a class="code" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a>, rcw, GTK_TYPE_WINDOW)</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;<span class="preprocessor">#define MOTION_TIME 100</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* default timeout used to hide the floating toolbar wen switching profile */</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#define TB_HIDE_TIME_TIME 1000</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#define FULL_SCREEN_TARGET_MONITOR_UNDEFINED -1</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">struct </span>_RemminaConnectionWindowPriv {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; GtkNotebook * notebook;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; GtkWidget * floating_toolbar_widget;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; GtkWidget * overlay;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; GtkWidget * revealer;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; GtkWidget * overlay_ftb_overlay;</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; GtkWidget * floating_toolbar_label;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; gdouble floating_toolbar_opacity;</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"> 94</span>&#160; <span class="comment">/* Various delayed and timer event source ids */</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; guint acs_eventsourceid; <span class="comment">// timeout</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; guint spf_eventsourceid; <span class="comment">// idle</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; guint grab_retry_eventsourceid; <span class="comment">// timeout</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; guint ftb_hide_eventsource; <span class="comment">// timeout</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; guint tar_eventsource; <span class="comment">// timeout</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; guint hidetb_eventsource; <span class="comment">// timeout</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; guint dwp_eventsourceid; <span class="comment">// timeout</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; GtkWidget * toolbar;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; GtkWidget * grid;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">/* Toolitems that need to be handled */</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; GtkToolItem * toolitem_autofit;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; GtkToolItem * toolitem_fullscreen;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; GtkToolItem * toolitem_switch_page;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; GtkToolItem * toolitem_dynres;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; GtkToolItem * toolitem_scale;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; GtkToolItem * toolitem_grab;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; GtkToolItem * toolitem_preferences;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; GtkToolItem * toolitem_tools;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; GtkToolItem * toolitem_duplicate;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; GtkToolItem * toolitem_screenshot;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; GtkWidget * fullscreen_option_button;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; GtkWidget * fullscreen_scaler_button;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; GtkWidget * scaler_option_button;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; GtkWidget * pin_button;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gboolean pin_down;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gboolean sticky;</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"> 126</span>&#160; <span class="comment">/* Flag to turn off toolbar signal handling when toolbar is</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> * reconfiguring, usually due to a tab switch */</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; gboolean toolbar_is_reconfiguring;</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; <span class="comment">/* This is the current view mode, i.e. VIEWPORT_FULLSCREEN_MODE,</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> * as saved on the &quot;viwemode&quot; profile preference file */</span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; gint view_mode;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="comment">/* Status variables used when in fullscreen mode. Needed</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> * to restore a fullscreen mode after coming from scrolled */</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gint fss_view_mode;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">/* Status variables used when in scrolled window mode. Needed</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> * to restore a scrolled window mode after coming from fullscreen */</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; gint ss_width, ss_height;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gboolean ss_maximized;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; gboolean kbcaptured;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; gboolean pointer_captured;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gboolean hostkey_activated;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gboolean hostkey_used;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gboolean pointer_entered;</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; <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> on_delete_confirm_mode;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;};</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"><a class="line" href="struct___remmina_connection_object.html"> 152</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a> {</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328"> 153</a></span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> * <a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c"> 154</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * <a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>;</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"><a class="line" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995"> 156</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae"> 157</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>;</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d"> 158</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30"> 160</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>;</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"><a class="line" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250"> 162</a></span>&#160; gboolean <a class="code" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">plugin_can_scale</a>;</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="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d"> 164</a></span>&#160; gboolean <a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a"> 165</a></span>&#160; gboolean <a class="code" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">dynres_unlocked</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2"> 167</a></span>&#160; gulong <a class="code" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">deferred_open_size_allocate_handler</a>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;} <a class="code" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668"> 172</a></span>&#160; <a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">TOOLBARPLACE_SIGNAL</a>,</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"> 173</a></span>&#160; <a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></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="l00176"></a><span class="lineno"><a class="line" href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e"> 176</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e">rcw_signals</a>[<a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] =</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;{ 0 };</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a>(gint width, gint height, gboolean maximize);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(GtkWindow *old, gint view_mode);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw_hostkey_func</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rco_create_tab_page</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rco_create_tab_label</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gint mode);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a>(GtkToolbar *toolbar, GtkGrid *grid, GtkWidget *sibling, <span class="keywordtype">int</span> toolbar_placement);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</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;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw_ftb_drag_begin</a>(GtkWidget *widget, GdkDragContext *context, gpointer user_data);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90"> 194</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> GtkTargetEntry <a class="code" href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90">dnd_targets_ftb</a>[] =</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</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="keywordtype">char</span> *)<span class="stringliteral">&quot;text/x-remmina-ftb&quot;</span>,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; GTK_TARGET_SAME_APP | GTK_TARGET_OTHER_WIDGET,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; 0</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;</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523"> 203</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> GtkTargetEntry <a class="code" href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523">dnd_targets_tb</a>[] =</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;{</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="keywordtype">char</span> *)<span class="stringliteral">&quot;text/x-remmina-tb&quot;</span>,</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; GTK_TARGET_SAME_APP,</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; 0</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"> 210</span>&#160;};</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"><a class="line" href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4"> 212</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4">rcw_class_init</a>(<a class="code" href="struct___remmina_connection_window_class.html">RemminaConnectionWindowClass</a> *klass)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; GtkCssProvider *provider;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; provider = gtk_css_provider_new();</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; <span class="comment">/* It’s important to remove padding, border and shadow from GtkViewport or</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment"> * we will never know its internal area size, because GtkViweport::viewport_get_view_allocation,</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"> * which returns the internal size of the GtkViewport, is private and we cannot access it */</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 14, 0)</span></div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; gtk_css_provider_load_from_data(provider,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="stringliteral">&quot;#remmina-cw-viewport, #remmina-cw-aspectframe {\n&quot;</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="stringliteral">&quot; padding:0;\n&quot;</span></div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="stringliteral">&quot; border:0;\n&quot;</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="stringliteral">&quot; background-color: black;\n&quot;</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="stringliteral">&quot;GtkDrawingArea {\n&quot;</span></div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="stringliteral">&quot;GtkToolbar {\n&quot;</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="stringliteral">&quot; -GtkWidget-window-dragging: 0;\n&quot;</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="stringliteral">&quot;#remmina-connection-window-fullscreen {\n&quot;</span></div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="stringliteral">&quot; border-color: black;\n&quot;</span></div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="stringliteral">&quot;#remmina-small-button {\n&quot;</span></div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="stringliteral">&quot; outline-offset: 0;\n&quot;</span></div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="stringliteral">&quot; outline-width: 0;\n&quot;</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="stringliteral">&quot; padding: 0;\n&quot;</span></div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="stringliteral">&quot; border: 0;\n&quot;</span></div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="stringliteral">&quot;#remmina-pin-button {\n&quot;</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="stringliteral">&quot; outline-offset: 0;\n&quot;</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="stringliteral">&quot; outline-width: 0;\n&quot;</span></div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="stringliteral">&quot; padding: 2px;\n&quot;</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="stringliteral">&quot; border: 0;\n&quot;</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="stringliteral">&quot;#remmina-tab-page {\n&quot;</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="stringliteral">&quot; background-color: black;\n&quot;</span></div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="stringliteral">&quot;#remmina-scrolled-container {\n&quot;</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="stringliteral">&quot;#remmina-scrolled-container.undershoot {\n&quot;</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="stringliteral">&quot; background: none;\n&quot;</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="stringliteral">&quot;#remmina-tab-page {\n&quot;</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="stringliteral">&quot;#ftbbox-upper {\n&quot;</span></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="stringliteral">&quot; background-color: white;\n&quot;</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="stringliteral">&quot; color: black;\n&quot;</span></div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="stringliteral">&quot; border-style: none solid solid solid;\n&quot;</span></div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="stringliteral">&quot; border-width: 1px;\n&quot;</span></div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="stringliteral">&quot; border-radius: 4px;\n&quot;</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="stringliteral">&quot; padding: 0px;\n&quot;</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="stringliteral">&quot;#ftbbox-lower {\n&quot;</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="stringliteral">&quot; background-color: white;\n&quot;</span></div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="stringliteral">&quot; color: black;\n&quot;</span></div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="stringliteral">&quot; border-style: solid solid none solid;\n&quot;</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="stringliteral">&quot; border-width: 1px;\n&quot;</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="stringliteral">&quot; border-radius: 4px;\n&quot;</span></div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="stringliteral">&quot; padding: 0px;\n&quot;</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="stringliteral">&quot;#ftb-handle {\n&quot;</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="stringliteral">&quot;.message_panel {\n&quot;</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="stringliteral">&quot; border: 0px solid;\n&quot;</span></div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="stringliteral">&quot; padding: 20px 20px 20px 20px;\n&quot;</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="stringliteral">&quot;.message_panel entry {\n&quot;</span></div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="stringliteral">&quot; background-image: none;\n&quot;</span></div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="stringliteral">&quot; border-width: 4px;\n&quot;</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="stringliteral">&quot; border-radius: 8px;\n&quot;</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="stringliteral">&quot;.message_panel .title_label {\n&quot;</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="stringliteral">&quot; font-size: 2em; \n&quot;</span></div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; , -1, NULL);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; gtk_css_provider_load_from_data(provider,</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="stringliteral">&quot;#remmina-cw-viewport, #remmina-cw-aspectframe {\n&quot;</span></div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="stringliteral">&quot; padding:0;\n&quot;</span></div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="stringliteral">&quot; border:0;\n&quot;</span></div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="stringliteral">&quot; background-color: black;\n&quot;</span></div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="stringliteral">&quot;#remmina-cw-message-panel {\n&quot;</span></div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="stringliteral">&quot;GtkDrawingArea {\n&quot;</span></div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="stringliteral">&quot;GtkToolbar {\n&quot;</span></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="stringliteral">&quot; -GtkWidget-window-dragging: 0;\n&quot;</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="stringliteral">&quot;#remmina-connection-window-fullscreen {\n&quot;</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="stringliteral">&quot; border-color: black;\n&quot;</span></div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="stringliteral">&quot;#remmina-small-button {\n&quot;</span></div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="stringliteral">&quot; -GtkWidget-focus-padding: 0;\n&quot;</span></div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="stringliteral">&quot; -GtkWidget-focus-line-width: 0;\n&quot;</span></div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="stringliteral">&quot; padding: 0;\n&quot;</span></div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="stringliteral">&quot; border: 0;\n&quot;</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="stringliteral">&quot;#remmina-pin-button {\n&quot;</span></div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="stringliteral">&quot; -GtkWidget-focus-padding: 0;\n&quot;</span></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="stringliteral">&quot; -GtkWidget-focus-line-width: 0;\n&quot;</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="stringliteral">&quot; padding: 2px;\n&quot;</span></div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="stringliteral">&quot; border: 0;\n&quot;</span></div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="stringliteral">&quot;#remmina-scrolled-container {\n&quot;</span></div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="stringliteral">&quot;#remmina-scrolled-container.undershoot {\n&quot;</span></div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="stringliteral">&quot; background: none\n&quot;</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="stringliteral">&quot;#remmina-tab-page {\n&quot;</span></div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="stringliteral">&quot;#ftbbox-upper {\n&quot;</span></div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="stringliteral">&quot; border-style: none solid solid solid;\n&quot;</span></div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="stringliteral">&quot; border-width: 1px;\n&quot;</span></div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="stringliteral">&quot; border-radius: 4px;\n&quot;</span></div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="stringliteral">&quot; padding: 0px;\n&quot;</span></div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="stringliteral">&quot;#ftbbox-lower {\n&quot;</span></div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="stringliteral">&quot; border-style: solid solid none solid;\n&quot;</span></div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="stringliteral">&quot; border-width: 1px;\n&quot;</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="stringliteral">&quot; border-radius: 4px;\n&quot;</span></div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="stringliteral">&quot; padding: 0px;\n&quot;</span></div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="stringliteral">&quot;#ftb-handle {\n&quot;</span></div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; , -1, NULL);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="preprocessor">#endif</span></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; gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; GTK_STYLE_PROVIDER(provider),</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; g_object_unref(provider);</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; <span class="comment">/* Define a signal used to notify all rcws of toolbar move */</span></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; rcw_signals[<a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">TOOLBARPLACE_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;toolbar-place&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_connection_window_class.html">RemminaConnectionWindowClass</a>, toolbar_place), NULL, NULL,</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;}</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"><a class="line" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44"> 357</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *<a class="code" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw_get_cnnobj_at_page</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gint npage)</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; GtkWidget *po;</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; <span class="keywordflow">if</span> (!cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook)</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; po = gtk_notebook_get_nth_page(GTK_NOTEBOOK(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook), npage);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">return</span> g_object_get_data(G_OBJECT(po), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;}</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"><a class="line" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47"> 367</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *<a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;{</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; gint np;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (cnnwin != NULL &amp;&amp; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a> != NULL &amp;&amp; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook != NULL) {</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; np = gtk_notebook_get_current_page(GTK_NOTEBOOK(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook));</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">if</span> (np &lt; 0)</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw_get_cnnobj_at_page</a>(cnnwin, np);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2"> 381</a></span>&#160;<span class="keyword">static</span> <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, gboolean *dynres_avail, gboolean *scale_avail)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; gboolean plugin_has_dynres, plugin_can_scale;</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; scalemode = <a class="code" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; plugin_has_dynres = <a class="code" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; plugin_can_scale = <a class="code" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>);</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="comment">/* Forbid scalemode REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES when not possible */</span></div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">if</span> ((!plugin_has_dynres) &amp;&amp; scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>)</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; scalemode = <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="comment">/* Forbid scalemode REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED when not possible */</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">if</span> (!plugin_can_scale &amp;&amp; scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>)</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; scalemode = <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (scale_avail)</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; *scale_avail = plugin_can_scale;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">if</span> (dynres_avail)</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; *dynres_avail = (plugin_has_dynres &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">dynres_unlocked</a>);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">return</span> scalemode;</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;</div><div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9"> 411</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rco_disconnect_current_page</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;{</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="comment">/* Disconnects the connection which is currently in view in the notebook */</span></div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;}</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"><a class="line" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946"> 419</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;{</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; GdkDeviceManager *manager;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; GdkDevice *keyboard = NULL;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="preprocessor">#endif</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">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; g_source_remove(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid = 0;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; }</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; display = gtk_widget_get_display(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; seat = gdk_display_get_default_seat(display);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="comment">// keyboard = gdk_seat_get_pointer(seat);</span></div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; manager = gdk_display_get_device_manager(display);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; keyboard = gdk_device_manager_get_client_pointer(manager);</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;<span class="preprocessor">#endif</span></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; <span class="keywordflow">if</span> (!cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;kbcaptured &amp;&amp; !cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_captured)</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: --- ungrabbing\n&quot;</span>);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="preprocessor">#endif</span></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;</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="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="comment">/* We can use gtk_seat_grab()/_ungrab() only after GTK 3.24 */</span></div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; gdk_seat_ungrab(seat);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">if</span> (keyboard != NULL) {</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">if</span> (gdk_device_get_source(keyboard) != GDK_SOURCE_KEYBOARD)</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; keyboard = gdk_device_get_associated_device(keyboard);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; G_GNUC_BEGIN_IGNORE_DEPRECATIONS</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; gdk_device_ungrab(keyboard, GDK_CURRENT_TIME);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; G_GNUC_END_IGNORE_DEPRECATIONS</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; }</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;kbcaptured = FALSE;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_captured = FALSE;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;</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;</div><div class="line"><a name="l00470"></a><span class="lineno"><a class="line" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5"> 470</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw_keyboard_grab_retry</a>(gpointer user_data)</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;{</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)user_data;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(cnnwin);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid = 0;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;}</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"><a class="line" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42"> 480</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw_pointer_ungrab</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">if</span> (!cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_captured)</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; display = gtk_widget_get_display(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; seat = gdk_display_get_default_seat(display);</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; gdk_seat_ungrab(seat);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3"> 494</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; GdkGrabStatus ggs;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_captured) {</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: pointer_captured is true, it should not\n&quot;</span>);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keywordflow">return</span>;</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; display = gtk_widget_get_display(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; seat = gdk_display_get_default_seat(display);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; ggs = gdk_seat_grab(seat, gtk_widget_get_window(GTK_WIDGET(cnnwin)),</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; GDK_SEAT_CAPABILITY_ALL_POINTING, TRUE, NULL, NULL, NULL, NULL);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">if</span> (ggs != GDK_GRAB_SUCCESS) {</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: GRAB of POINTER failed. GdkGrabStatus: %d\n&quot;</span>, (<span class="keywordtype">int</span>)ggs);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_captured = TRUE;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; }</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;<span class="preprocessor">#endif</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;}</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c"> 524</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; GdkDeviceManager *manager;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; GdkGrabStatus ggs;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; GdkDevice *keyboard = NULL;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;kbcaptured)</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; display = gtk_widget_get_display(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; seat = gdk_display_get_default_seat(display);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; keyboard = gdk_seat_get_pointer(seat);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; manager = gdk_display_get_device_manager(display);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; keyboard = gdk_device_manager_get_client_pointer(manager);</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">if</span> (keyboard != NULL) {</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">if</span> (gdk_device_get_source(keyboard) != GDK_SOURCE_KEYBOARD)</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; keyboard = gdk_device_get_associated_device(keyboard);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: profile asks for grabbing, let’s try.\n&quot;</span>);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="comment">/* Up to GTK version 3.20 we can grab the keyboard with gdk_device_grab().</span></div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="comment"> * in GTK 3.20 gdk_seat_grab() should be used instead of gdk_device_grab().</span></div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;<span class="comment"> * There is a bug in GTK up to 3.22: When gdk_device_grab() fails</span></div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="comment"> * the widget is hidden:</span></div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;<span class="comment"> * https://gitlab.gnome.org/GNOME/gtk/commit/726ad5a5ae7c4f167e8dd454cd7c250821c400ab</span></div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;<span class="comment"> * The bugfix will be released with GTK 3.24.</span></div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;<span class="comment"> * Also please note that the newer gdk_seat_grab() is still calling gdk_device_grab().</span></div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="comment"> * Warning: gdk_seat_grab() will call XGrabKeyboard() or XIGrabDevice()</span></div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="comment"> * which in turn will generate a core X input event FocusOut and FocusIn</span></div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="comment"> * but not Xinput2 events.</span></div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;<span class="comment"> * In some cases, GTK is unable to neutralize FocusIn and FocusOut core</span></div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="comment"> * events (ie: i3wm+Plasma with GDK_CORE_DEVICE_EVENTS=1 because detail=NotifyNonlinear</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;<span class="comment"> * instead of detail=NotifyAncestor/detail=NotifyInferior)</span></div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="comment"> * Receiving a FocusOut event for Remmina at this time will cause an infinite loop.</span></div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="comment"> * Therefore is important for GTK to use Xinput2 insetead of core X events</span></div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="comment"> * by unsetting GDK_CORE_DEVICE_EVENTS</span></div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 24, 0)</span></div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; ggs = gdk_seat_grab(seat, gtk_widget_get_window(GTK_WIDGET(cnnwin)),</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; GDK_SEAT_CAPABILITY_KEYBOARD, TRUE, NULL, NULL, NULL, NULL);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; G_GNUC_BEGIN_IGNORE_DEPRECATIONS</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; ggs = gdk_device_grab(keyboard, gtk_widget_get_window(GTK_WIDGET(cnnwin)), GDK_OWNERSHIP_WINDOW,</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; TRUE, GDK_KEY_PRESS | GDK_KEY_RELEASE, NULL, GDK_CURRENT_TIME);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; G_GNUC_END_IGNORE_DEPRECATIONS</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">if</span> (ggs != GDK_GRAB_SUCCESS) {</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; printf(<span class="stringliteral">&quot;GRAB of keyboard failed.\n&quot;</span>);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="comment">/* Reschedule grabbing in half a second if not already done */</span></div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid == 0)</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid = g_timeout_add(500, (GSourceFunc)<a class="code" href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw_keyboard_grab_retry</a>, cnnwin);</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; printf(<span class="stringliteral">&quot;Keyboard grabbed\n&quot;</span>);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid != 0) {</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; g_source_remove(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grab_retry_eventsourceid = 0;</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; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;kbcaptured = TRUE;</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; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnwin);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; }</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;}</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"><a class="line" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3"> 605</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw_close_all_connections</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;{</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; GtkNotebook *notebook = GTK_NOTEBOOK(priv-&gt;notebook);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; GtkWidget *w;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; gint i, n;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(notebook)) {</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; n = gtk_notebook_get_n_pages(notebook);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">for</span> (i = n - 1; i &gt;= 0; i--) {</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; w = gtk_notebook_get_nth_page(notebook, i);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; cnnobj = (<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *)g_object_get_data(G_OBJECT(w), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="comment">/* Do close the connection on this tab */</span></div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; }</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; }</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;}</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"><a class="line" href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7"> 624</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; GtkNotebook *notebook = GTK_NOTEBOOK(priv-&gt;notebook);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; gint i, n;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_CONNECTION_WINDOW(cnnwin))</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;on_delete_confirm_mode != <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a>) {</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; n = gtk_notebook_get_n_pages(notebook);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="keywordflow">if</span> (n &gt; 1) {</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(cnnwin), GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION,</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to close %i active connections in the current window?&quot;</span>), n);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; i = gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keywordflow">if</span> (i != GTK_RESPONSE_YES)</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 646</span>&#160; }</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <a class="code" href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw_close_all_connections</a>(cnnwin);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;}</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;</div><div class="line"><a name="l00652"></a><span class="lineno"><a class="line" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c"> 652</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw_delete_event</a>(GtkWidget *widget, GdkEvent *event, gpointer data)</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;{</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <a class="code" href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a>(RCW(widget));</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;}</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"><a class="line" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c"> 659</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw_destroy</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;{</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)widget;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">if</span> (priv-&gt;kbcaptured)</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnwin);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="keywordflow">if</span> (priv-&gt;acs_eventsourceid) {</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; g_source_remove(priv-&gt;acs_eventsourceid);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; priv-&gt;acs_eventsourceid = 0;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; }</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keywordflow">if</span> (priv-&gt;spf_eventsourceid) {</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; g_source_remove(priv-&gt;spf_eventsourceid);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; priv-&gt;spf_eventsourceid = 0;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; }</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">if</span> (priv-&gt;grab_retry_eventsourceid) {</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; g_source_remove(priv-&gt;grab_retry_eventsourceid);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; priv-&gt;grab_retry_eventsourceid = 0;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; }</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">if</span> (priv-&gt;ftb_hide_eventsource) {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; g_source_remove(priv-&gt;ftb_hide_eventsource);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; priv-&gt;ftb_hide_eventsource = 0;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; }</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="keywordflow">if</span> (priv-&gt;tar_eventsource) {</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; g_source_remove(priv-&gt;tar_eventsource);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; priv-&gt;tar_eventsource = 0;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; }</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">if</span> (priv-&gt;hidetb_eventsource) {</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; g_source_remove(priv-&gt;hidetb_eventsource);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; priv-&gt;hidetb_eventsource = 0;</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; <span class="keywordflow">if</span> (priv-&gt;dwp_eventsourceid) {</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; g_source_remove(priv-&gt;dwp_eventsourceid);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; priv-&gt;dwp_eventsourceid = 0;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; }</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="comment">/* There is no need to destroy priv-&gt;floating_toolbar_widget,</span></div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;<span class="comment"> * because it’s our child and will be destroyed automatically */</span></div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a> = NULL;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; g_free(priv);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;}</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno"><a class="line" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0"> 710</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw_notify_widget_toolbar_placement</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;{</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; GType rcwtype;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; rcwtype = <a class="code" href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw_get_type</a>();</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">if</span> (G_TYPE_CHECK_INSTANCE_TYPE(widget, rcwtype)) {</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; g_signal_emit_by_name(G_OBJECT(widget), <span class="stringliteral">&quot;toolbar-place&quot;</span>);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; }</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;}</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"><a class="line" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758"> 722</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw_tb_drag_failed</a>(GtkWidget *widget, GdkDragContext *context,</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; GtkDragResult result, gpointer user_data)</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;{</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;</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; cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)user_data;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar)</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; gtk_widget_show(GTK_WIDGET(priv-&gt;toolbar));</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;}</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;</div><div class="line"><a name="l00739"></a><span class="lineno"><a class="line" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2"> 739</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw_tb_drag_drop</a>(GtkWidget *widget, GdkDragContext *context,</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; gint x, gint y, guint time, gpointer user_data)</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;{</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; GtkAllocation wa;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; gint new_toolbar_placement;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</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; cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)user_data;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; gtk_widget_get_allocation(widget, &amp;wa);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">if</span> (wa.width * y &gt;= wa.height * x) {</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; <span class="keywordflow">if</span> (wa.width * y &gt; wa.height * (wa.width - x))</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; new_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a>;</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; new_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a>;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; <span class="keywordflow">if</span> (wa.width * y &gt; wa.height * (wa.width - x))</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; new_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a>;</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; new_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a>;</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;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; gtk_drag_finish(context, TRUE, TRUE, time);</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; <span class="keywordflow">if</span> (new_toolbar_placement != remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a>) {</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="comment">/* Save new position */</span></div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a> = new_toolbar_placement;</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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; <span class="comment">/* Signal all windows that the toolbar must be moved */</span></div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw_notify_widget_toolbar_placement</a>, NULL);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; }</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar)</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; gtk_widget_show(GTK_WIDGET(priv-&gt;toolbar));</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;}</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;</div><div class="line"><a name="l00781"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b"> 781</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw_tb_drag_begin</a>(GtkWidget *widget, GdkDragContext *context, gpointer user_data)</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;{</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; cairo_t *cr;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; GtkAllocation wa;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordtype">double</span> dashes[] = { 10 };</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; gtk_widget_get_allocation(widget, &amp;wa);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 16, 16);</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; cr = cairo_create(surface);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; cairo_set_source_rgb(cr, 0.6, 0.6, 0.6);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; cairo_set_line_width(cr, 4);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; cairo_set_dash(cr, dashes, 1, 0);</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; cairo_rectangle(cr, 0, 0, 16, 16);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; cairo_stroke(cr);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; cairo_destroy(cr);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; gtk_widget_hide(widget);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; gtk_drag_set_icon_surface(context, surface);</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"> 805</span>&#160;</div><div class="line"><a name="l00806"></a><span class="lineno"><a class="line" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4"> 806</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;{</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; <span class="keywordflow">if</span> (!cnnobj) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; priv-&gt;floating_toolbar_opacity = (1.0 - TOOLBAR_OPACITY_MIN) / ((gdouble)TOOLBAR_OPACITY_LEVEL)</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; * ((gdouble)(TOOLBAR_OPACITY_LEVEL - <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, 0)))</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; + TOOLBAR_OPACITY_MIN;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <span class="keywordflow">if</span> (priv-&gt;floating_toolbar_widget)</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; gtk_widget_set_opacity(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), priv-&gt;floating_toolbar_opacity);</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;}</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"><a class="line" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff"> 822</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw_floating_toolbar_make_invisible</a>(gpointer data)</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;{</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = (<a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *)data;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; gtk_widget_set_opacity(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), 0.0);</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; priv-&gt;ftb_hide_eventsource = 0;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;}</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno"><a class="line" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7"> 831</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gboolean show)</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;{</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">if</span> (priv-&gt;floating_toolbar_widget == NULL)</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">if</span> (show || priv-&gt;pin_down) {</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <span class="comment">/* Make the FTB no longer transparent, in case we have an hidden toolbar */</span></div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(cnnwin);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <span class="comment">/* Remove outstanding hide events, if not yet active */</span></div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">if</span> (priv-&gt;ftb_hide_eventsource) {</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; g_source_remove(priv-&gt;ftb_hide_eventsource);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; priv-&gt;ftb_hide_eventsource = 0;</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">else</span> {</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <span class="comment">/* If we are hiding and the toolbar must be made invisible, schedule</span></div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160;<span class="comment"> * a later toolbar hide */</span></div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a> == <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">FLOATING_TOOLBAR_VISIBILITY_INVISIBLE</a>)</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; <span class="keywordflow">if</span> (priv-&gt;ftb_hide_eventsource == 0)</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; priv-&gt;ftb_hide_eventsource = g_timeout_add(1000, <a class="code" href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw_floating_toolbar_make_invisible</a>, priv);</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; }</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; gtk_revealer_set_reveal_child(GTK_REVEALER(priv-&gt;revealer), show || priv-&gt;pin_down);</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;}</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"><a class="line" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527"> 858</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rco_get_desktop_size</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, gint *width, gint *height)</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160;{</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</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;</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; *width = <a class="code" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a>(gp);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; *height = <a class="code" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a>(gp);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; <span class="keywordflow">if</span> (*width == 0) {</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; <span class="comment">/* Before connecting we do not have real remote width/height,</span></div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160;<span class="comment"> * so we ask profile values */</span></div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; *width = <a class="code" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a>(gp);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; *height = <a class="code" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a>(gp);</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;}</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160;</div><div class="line"><a name="l00874"></a><span class="lineno"><a class="line" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844"> 874</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, GtkScrolledWindow *scrolled_window)</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160;{</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode;</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; scalemode = <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(cnnobj, NULL, NULL);</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; gtk_scrolled_window_set_policy(scrolled_window,</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> ? GTK_POLICY_NEVER : GTK_POLICY_AUTOMATIC,</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> ? GTK_POLICY_NEVER : GTK_POLICY_AUTOMATIC);</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;</div><div class="line"><a name="l00884"></a><span class="lineno"><a class="line" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba"> 884</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rco_create_scrolled_container</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, <span class="keywordtype">int</span> view_mode)</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160;{</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; GtkWidget *scrolled_container;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160;</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <span class="keywordflow">if</span> (view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>) {</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; scrolled_container = <a class="code" href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a>();</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; scrolled_container = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; <a class="code" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a>(cnnobj, GTK_SCROLLED_WINDOW(scrolled_container));</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(scrolled_container), 0);</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; gtk_widget_set_can_focus(scrolled_container, FALSE);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; }</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; gtk_widget_set_name(scrolled_container, <span class="stringliteral">&quot;remmina-scrolled-container&quot;</span>);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; gtk_widget_show(scrolled_container);</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">return</span> scrolled_container;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;}</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160;</div><div class="line"><a name="l00903"></a><span class="lineno"><a class="line" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f"> 903</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw_toolbar_autofit_restore</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;{</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; gint dwidth, dheight;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; GtkAllocation nba, ca, ta;</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; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;tar_eventsource = 0;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span> FALSE;</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> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a> &amp;&amp; GTK_IS_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>)) {</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <a class="code" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rco_get_desktop_size</a>(cnnobj, &amp;dwidth, &amp;dheight);</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; gtk_widget_get_allocation(GTK_WIDGET(priv-&gt;notebook), &amp;nba);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; gtk_widget_get_allocation(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>, &amp;ca);</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; gtk_widget_get_allocation(priv-&gt;toolbar, &amp;ta);</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a> == <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a> ||</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a> == <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a>)</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; gtk_window_resize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), MAX(1, dwidth + ta.width + nba.width - ca.width),</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; MAX(1, dheight + nba.height - ca.height));</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; gtk_window_resize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), MAX(1, dwidth + nba.width - ca.width),</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; MAX(1, dheight + ta.height + nba.height - ca.height));</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; gtk_container_check_resize(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; }</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; <span class="keywordflow">if</span> (GTK_IS_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>))</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; <a class="code" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a>(cnnobj, GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>));</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160;}</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;</div><div class="line"><a name="l00939"></a><span class="lineno"><a class="line" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c"> 939</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160;</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</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; <span class="keywordflow">if</span> (GTK_IS_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>)) {</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; <span class="keywordflow">if</span> ((gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET(cnnwin))) &amp; GDK_WINDOW_STATE_MAXIMIZED) != 0)</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; gtk_window_unmaximize(GTK_WINDOW(cnnwin));</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; <span class="comment">/* It’s tricky to make the toolbars disappear automatically, while keeping scrollable.</span></div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;<span class="comment"> * Please tell me if you know a better way to do this */</span></div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>), GTK_POLICY_NEVER, GTK_POLICY_NEVER);</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; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;tar_eventsource = g_timeout_add(200, (GSourceFunc)<a class="code" href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw_toolbar_autofit_restore</a>, cnnwin);</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; }</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160;}</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160;</div><div class="line"><a name="l00960"></a><span class="lineno"><a class="line" href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a"> 960</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, GdkRectangle *sz)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160;</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; <span class="comment">/* Fill sz with the monitor (or workarea) size and position</span></div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160;<span class="comment"> * of the monitor (or workarea) where cnnobj-&gt;cnnwin is located */</span></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; GdkRectangle monitor_geometry;</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; sz-&gt;x = sz-&gt;y = sz-&gt;width = sz-&gt;height = 0;</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="keywordflow">if</span> (!cnnobj)</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">if</span> (!cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; <span class="keywordflow">if</span> (!gtk_widget_is_visible(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)))</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160;</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; GdkMonitor *monitor;</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; display = gtk_widget_get_display(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; monitor = gdk_display_get_monitor_at_window(display, gtk_widget_get_window(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)));</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; GdkScreen *screen;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; gint monitor;</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; screen = gtk_window_get_screen(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; monitor = gdk_screen_get_monitor_at_window(screen, gtk_widget_get_window(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)));</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160;</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; gdk_monitor_get_workarea(monitor, &amp;monitor_geometry);</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; <span class="comment">/* Under Wayland, GTK 3.22, all values returned by gdk_monitor_get_geometry()</span></div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160;<span class="comment"> * and gdk_monitor_get_workarea() seem to have been divided by the</span></div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;<span class="comment"> * gdk scale factor, so we need to adjust the returned rect</span></div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160;<span class="comment"> * undoing the division */</span></div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_WAYLAND</span></div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; <span class="keywordflow">if</span> (GDK_IS_WAYLAND_DISPLAY(display)) {</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; <span class="keywordtype">int</span> monitor_scale_factor = gdk_monitor_get_scale_factor(monitor);</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; monitor_geometry.width *= monitor_scale_factor;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; monitor_geometry.height *= monitor_scale_factor;</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; }</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;<span class="preprocessor">#elif gdk_screen_get_monitor_workarea</span></div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; gdk_screen_get_monitor_workarea(screen, monitor, &amp;monitor_geometry);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; gdk_screen_get_monitor_geometry(screen, monitor, &amp;monitor_geometry);</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; *sz = monitor_geometry;</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="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34"> 1011</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</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; gboolean scroll_required = FALSE;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; GdkRectangle monitor_geometry;</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; gint rd_width, rd_height;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; gint bordersz;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; gint scalemode;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; scalemode = <a class="code" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</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">/* Get remote destkop size */</span></div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; <a class="code" href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rco_get_desktop_size</a>(cnnobj, &amp;rd_width, &amp;rd_height);</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; <span class="comment">/* Get our monitor size */</span></div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; <a class="code" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a>(cnnobj, &amp;monitor_geometry);</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> (!<a class="code" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)) &amp;&amp;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; (monitor_geometry.width &lt; rd_width || monitor_geometry.height &lt; rd_height) &amp;&amp;</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>)</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; scroll_required = TRUE;</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; <span class="keywordflow">switch</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode) {</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; gtk_window_resize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), monitor_geometry.width, monitor_geometry.height);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>),</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; (scroll_required ? GTK_POLICY_AUTOMATIC : GTK_POLICY_NEVER),</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160; (scroll_required ? GTK_POLICY_AUTOMATIC : GTK_POLICY_NEVER));</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; bordersz = scroll_required ? SCROLL_BORDER_SIZE : 0;</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; gtk_window_resize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), monitor_geometry.width, monitor_geometry.height);</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_SCROLLED_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>))</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; <span class="comment">/* Put a border around Notebook content (RemminaScrolledViewpord), so we can</span></div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;<span class="comment"> * move the mouse over the border to scroll */</span></div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>), bordersz);</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>:</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewmode&quot;</span>, <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a>) == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a>) {</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; <span class="comment">/* ToDo: is this really needed ? When ? */</span></div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; gtk_window_set_default_size(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>),</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; MIN(rd_width, monitor_geometry.width), MIN(rd_height, monitor_geometry.height));</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; <span class="keywordflow">if</span> (rd_width &gt;= monitor_geometry.width || rd_height &gt;= monitor_geometry.height) {</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; gtk_window_maximize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, TRUE);</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; <a class="code" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a>(NULL, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, FALSE);</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; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, FALSE))</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; gtk_window_maximize(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</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; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; }</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;</div><div class="line"><a name="l01075"></a><span class="lineno"><a class="line" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701"> 1075</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GtkWidget *item, <span class="keyword">const</span> gchar *tip, guint key1, guint key2)</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"> 1077</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; gchar *s1;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; gchar *s2;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> &amp;&amp; key1) {</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="keywordflow">if</span> (key2)</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; s1 = g_strdup_printf(<span class="stringliteral">&quot; (%s + %s,%s)&quot;</span>, gdk_keyval_name(remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>),</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; gdk_keyval_name(gdk_keyval_to_upper(key1)), gdk_keyval_name(gdk_keyval_to_upper(key2)));</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (key1 == remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>)</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; s1 = g_strdup_printf(<span class="stringliteral">&quot; (%s)&quot;</span>, gdk_keyval_name(remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>));</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; s1 = g_strdup_printf(<span class="stringliteral">&quot; (%s + %s)&quot;</span>, gdk_keyval_name(remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>),</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; gdk_keyval_name(gdk_keyval_to_upper(key1)));</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; s1 = NULL;</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; s2 = g_strdup_printf(<span class="stringliteral">&quot;%s%s&quot;</span>, tip, s1 ? s1 : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; gtk_widget_set_tooltip_text(item, s2);</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; g_free(s2);</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; g_free(s1);</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;</div><div class="line"><a name="l01099"></a><span class="lineno"><a class="line" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d"> 1099</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode;</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; gboolean scaledexpandedmode;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <span class="keywordtype">int</span> rdwidth, rdheight;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; gfloat aratio;</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; <span class="keywordflow">if</span> (!cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">plugin_can_scale</a>) {</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; <span class="comment">/* If we have a plugin that cannot scale,</span></div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160;<span class="comment"> * (i.e. SFTP plugin), then we expand proto */</span></div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; <span class="comment">/* Plugin can scale */</span></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"> 1115</span>&#160; scalemode = <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(cnnobj, NULL, NULL);</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; scaledexpandedmode = <a class="code" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; <span class="comment">/* Check if we need aspectframe and create/destroy it accordingly */</span></div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; <span class="keywordflow">if</span> (scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> &amp;&amp; !scaledexpandedmode) {</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="comment">/* We need an aspectframe as a parent of proto */</span></div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; rdwidth = <a class="code" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160; rdheight = <a class="code" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; aratio = (gfloat)rdwidth / (gfloat)rdheight;</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; <span class="keywordflow">if</span> (!cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>) {</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; <span class="comment">/* We need a new aspectframe */</span></div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a> = gtk_aspect_frame_new(NULL, 0.5, 0.5, aratio, FALSE);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; gtk_widget_set_name(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>, <span class="stringliteral">&quot;remmina-cw-aspectframe&quot;</span>);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; gtk_frame_set_shadow_type(GTK_FRAME(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>), GTK_SHADOW_NONE);</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; g_object_ref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; gtk_container_remove(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; gtk_container_add(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>);</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; gtk_container_add(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; g_object_unref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; gtk_widget_show(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>);</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; <span class="keywordflow">if</span> (cnnobj != NULL &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> != NULL &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook != NULL)</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; gtk_aspect_frame_set(GTK_ASPECT_FRAME(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>), 0.5, 0.5, aratio, FALSE);</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="keywordflow">else</span> {</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; <span class="comment">/* We do not need an aspectframe as a parent of proto */</span></div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>) {</div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160; <span class="comment">/* We must remove the old aspectframe reparenting proto to viewport */</span></div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160; g_object_ref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>);</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; g_object_ref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; gtk_container_remove(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; gtk_container_remove(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>);</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; g_object_unref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a>);</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a> = NULL;</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; gtk_container_add(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; g_object_unref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <span class="keywordflow">if</span> (cnnobj != NULL &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> != NULL &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook != NULL)</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; }</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; <span class="keywordflow">if</span> (scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> || scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>) {</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <span class="comment">/* We have a plugin that can be scaled, and the scale button</span></div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;<span class="comment"> * has been pressed. Give it the correct WxH maintaining aspect</span></div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;<span class="comment"> * ratio of remote destkop size */</span></div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <span class="comment">/* Plugin can scale, but no scaling is active. Ensure that we have</span></div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;<span class="comment"> * aspectframe with a ratio of 1 */</span></div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_CENTER);</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_CENTER);</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; }</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;}</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"><a class="line" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f"> 1172</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">nb_set_current_page</a>(GtkNotebook *notebook, GtkWidget *page)</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;{</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; gint np, i;</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; np = gtk_notebook_get_n_pages(notebook);</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; np; i++) {</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; <span class="keywordflow">if</span> (gtk_notebook_get_nth_page(notebook, i) == page) {</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; gtk_notebook_set_current_page(notebook, i);</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; <span class="keywordflow">break</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; }</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;}</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"><a class="line" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55"> 1185</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">nb_migrate_page_content</a>(GtkWidget *frompage, GtkWidget *topage)</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;{</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; <span class="comment">/* Migrate a single connection tab from a notebook to another one */</span></div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; GList *lst, *l;</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</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; cnnobj = (<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *)g_object_get_data(G_OBJECT(frompage), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <span class="comment">/* Reparent message panels */</span></div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; lst = gtk_container_get_children(GTK_CONTAINER(frompage));</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; <span class="keywordflow">for</span> (l = lst; l != NULL; l = l-&gt;next) {</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_MESSAGE_PANEL(l-&gt;data)) {</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; g_object_ref(l-&gt;data);</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; gtk_container_remove(GTK_CONTAINER(frompage), GTK_WIDGET(l-&gt;data));</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; gtk_container_add(GTK_CONTAINER(topage), GTK_WIDGET(l-&gt;data));</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; g_object_unref(l-&gt;data);</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; gtk_box_reorder_child(GTK_BOX(topage), GTK_WIDGET(l-&gt;data), 0);</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"> 1204</span>&#160; g_list_free(lst);</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="comment">/* Reparent the viewport (which is inside scrolled_container inside frompage */</span></div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; G_GNUC_BEGIN_IGNORE_DEPRECATIONS</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; gtk_widget_reparent(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>);</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; G_GNUC_END_IGNORE_DEPRECATIONS</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;}</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"><a class="line" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76"> 1212</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *from, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *to)</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;{</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <span class="comment">/* Migrate a complete notebook from a window to another */</span></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"> 1216</span>&#160; gchar *tag;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; gint cp, np, i;</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; GtkNotebook *from_notebook;</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; GtkWidget *frompage, *newpage;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; <span class="comment">/* Migrate TAG */</span></div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; tag = g_strdup((gchar *)g_object_get_data(G_OBJECT(from), <span class="stringliteral">&quot;tag&quot;</span>));</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; g_object_set_data_full(G_OBJECT(to), <span class="stringliteral">&quot;tag&quot;</span>, tag, (GDestroyNotify)g_free);</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; <span class="comment">/* Migrate notebook content */</span></div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160; from_notebook = from-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook;</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; <span class="keywordflow">if</span> (from_notebook &amp;&amp; GTK_IS_NOTEBOOK(from_notebook)) {</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; cp = gtk_notebook_get_current_page(from_notebook);</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160; np = gtk_notebook_get_n_pages(from_notebook);</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; <span class="comment">/* Create pages on dest notebook and migrate</span></div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;<span class="comment"> * page content */</span></div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; np; i++) {</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; frompage = gtk_notebook_get_nth_page(from_notebook, i);</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; cnnobj = g_object_get_data(G_OBJECT(frompage), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a> = <a class="code" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rco_create_scrolled_container</a>(cnnobj, to-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode);</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; newpage = <a class="code" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a>(to, cnnobj);</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; <a class="code" href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">nb_migrate_page_content</a>(frompage, newpage);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; }</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; <span class="comment">/* Remove all the pages from source notebook */</span></div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; <span class="keywordflow">for</span> (i = np - 1; i &gt;= 0; i--)</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; gtk_notebook_remove_page(from_notebook, i);</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; gtk_notebook_set_current_page(to-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, cp);</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; }</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;}</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;</div><div class="line"><a name="l01247"></a><span class="lineno"><a class="line" href="rcw_8c.html#afec9666876babf3ae115fade7470915e"> 1247</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, <span class="keywordtype">int</span> newmode)</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;{</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; GdkWindowState s;</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *newwin;</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; gint old_width, old_height;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; <span class="keywordtype">int</span> old_mode;</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; old_mode = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode;</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; <span class="keywordflow">if</span> (old_mode == newmode)</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; <span class="keywordflow">if</span> (newmode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a> || newmode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>) {</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; <span class="keywordflow">if</span> (old_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>) {</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; <span class="comment">/* We are leaving SCROLLED_WINDOW_MODE, save W,H, and maximized</span></div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160;<span class="comment"> * status before self destruction of cnnwin */</span></div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160; gtk_window_get_size(GTK_WINDOW(cnnwin), &amp;old_width, &amp;old_height);</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; s = gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET(cnnwin)));</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; newwin = <a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(GTK_WINDOW(cnnwin), cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode);</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; <a class="code" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a>(cnnwin, newwin);</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; <span class="keywordflow">if</span> (old_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>) {</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; newwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_maximized = (s &amp; GDK_WINDOW_STATE_MAXIMIZED) ? TRUE : FALSE;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; newwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_width = old_width;</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; newwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_height = old_height;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; }</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; newwin = <a class="code" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a>(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_width, cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_height,</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_maximized);</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160; <a class="code" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a>(cnnwin, newwin);</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; <span class="keywordflow">if</span> (old_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a> || old_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>)</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; <span class="comment">/* We are leaving a FULLSCREEN mode, save some parameters</span></div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160;<span class="comment"> * status before self destruction of cnnwin */</span></div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160; newwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode = old_mode;</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"> 1282</span>&#160; <span class="comment">/* Prevent unreleased hostkey from old window to be released here */</span></div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160; newwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;hostkey_used = TRUE;</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"> 1285</span>&#160;</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"><a class="line" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3"> 1287</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw_toolbar_fullscreen</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;{</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; TRACE_CALL(__func__);</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"> 1291</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</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; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160; <span class="keywordflow">return</span>;</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; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160; <span class="keywordflow">if</span> (gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget)))</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160; <a class="code" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a>(cnnwin, cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode);</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160; <a class="code" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a>(cnnwin, <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>);</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"> 1303</span>&#160;</div><div class="line"><a name="l01304"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef"> 1304</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rco_viewport_fullscreen_mode</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</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"> 1306</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *newwin;</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160; <span class="keywordflow">if</span> (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160; newwin = <a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>);</div><div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160; <a class="code" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, newwin);</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="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790"> 1315</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rco_scrolled_fullscreen_mode</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *newwin;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; <span class="keywordflow">if</span> (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; newwin = <a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>);</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; <a class="code" href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, newwin);</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;}</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"><a class="line" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28"> 1326</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw_fullscreen_option_popdown</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;{</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160; priv-&gt;sticky = FALSE;</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;fullscreen_option_button), FALSE);</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</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"><a class="line" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab"> 1336</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw_toolbar_fullscreen_option</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;{</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; GSList *group;</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; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; <span class="keywordflow">if</span> (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;sticky = TRUE;</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; menu = gtk_menu_new();</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; menuitem = gtk_radio_menu_item_new_with_label(NULL, _(<span class="stringliteral">&quot;Viewport fullscreen mode&quot;</span>));</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem));</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>)</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rco_viewport_fullscreen_mode</a>), cnnobj);</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; menuitem = gtk_radio_menu_item_new_with_label(group, _(<span class="stringliteral">&quot;Scrolled fullscreen&quot;</span>));</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>)</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rco_scrolled_fullscreen_mode</a>), cnnobj);</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw_fullscreen_option_popdown</a>), cnnwin);</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;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(menu), widget,</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160; GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>, cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_fullscreen, 0,</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160; gtk_get_current_event_time());</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160;<span class="preprocessor">#endif</span></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"> 1381</span>&#160;</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"><a class="line" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0"> 1383</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw_scaler_option_popdown</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; priv-&gt;sticky = FALSE;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;scaler_option_button), FALSE);</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</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"> 1393</span>&#160;</div><div class="line"><a name="l01394"></a><span class="lineno"><a class="line" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19"> 1394</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw_scaler_expand</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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"> 1396</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</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"> 1399</span>&#160; <span class="keywordflow">if</span> (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; <span class="keywordflow">if</span> (!cnnobj)</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), TRUE);</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;scaler_expand&quot;</span>, TRUE);</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; <a class="code" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a>(cnnobj);</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;}</div><div class="line"><a name="l01408"></a><span class="lineno"><a class="line" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767"> 1408</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw_scaler_keep_aspect</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160;{</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; <span class="keywordflow">if</span> (!gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160; <span class="keywordflow">if</span> (!cnnobj)</div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160; <span class="keywordflow">return</span>;</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; <a class="code" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), FALSE);</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;scaler_expand&quot;</span>, FALSE);</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; <a class="code" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a>(cnnobj);</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"> 1423</span>&#160;</div><div class="line"><a name="l01424"></a><span class="lineno"><a class="line" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1"> 1424</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw_toolbar_scaler_option</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;{</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160; GSList *group;</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; gboolean scaler_expand;</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; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keywordflow">if</span> (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; scaler_expand = <a class="code" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</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; priv-&gt;sticky = TRUE;</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; menu = gtk_menu_new();</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; menuitem = gtk_radio_menu_item_new_with_label(NULL, _(<span class="stringliteral">&quot;Keep aspect ratio when scaled&quot;</span>));</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem));</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <span class="keywordflow">if</span> (!scaler_expand)</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw_scaler_keep_aspect</a>), cnnwin);</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; menuitem = gtk_radio_menu_item_new_with_label(group, _(<span class="stringliteral">&quot;Fill client window when scaled&quot;</span>));</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160; <span class="keywordflow">if</span> (scaler_expand)</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw_scaler_expand</a>), cnnwin);</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; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw_scaler_option_popdown</a>), cnnwin);</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;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(menu), widget,</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160; GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>, priv-&gt;toolitem_scale, 0,</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160; gtk_get_current_event_time());</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;}</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"><a class="line" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a"> 1475</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rco_switch_page_activate</a>(GtkMenuItem *menuitem, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;{</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160; gint page_num;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160; page_num = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;new-page-num&quot;</span>));</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; gtk_notebook_set_current_page(GTK_NOTEBOOK(priv-&gt;notebook), page_num);</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160;}</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"><a class="line" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec"> 1485</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw_toolbar_switch_page_popdown</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</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; priv-&gt;sticky = FALSE;</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; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_switch_page), FALSE);</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</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;</div><div class="line"><a name="l01496"></a><span class="lineno"><a class="line" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304"> 1496</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw_toolbar_switch_page</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;{</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160;</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</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; GtkWidget *menu;</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; GtkWidget *image;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; gint i, n;</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</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; <span class="keywordflow">if</span> (!gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget)))</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; <span class="keywordflow">return</span>;</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"> 1515</span>&#160; priv-&gt;sticky = TRUE;</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; menu = gtk_menu_new();</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; n = gtk_notebook_get_n_pages(GTK_NOTEBOOK(priv-&gt;notebook));</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; n; i++) {</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw_get_cnnobj_at_page</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, 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; menuitem = gtk_menu_item_new_with_label(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</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; image = gtk_image_new_from_icon_name(<a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>), GTK_ICON_SIZE_MENU);</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; gtk_widget_show(image);</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; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;new-page-num&quot;</span>, GINT_TO_POINTER(i));</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rco_switch_page_activate</a>), cnnobj);</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <span class="keywordflow">if</span> (i == gtk_notebook_get_current_page(GTK_NOTEBOOK(priv-&gt;notebook)))</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160; gtk_widget_set_sensitive(menuitem, FALSE);</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; }</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; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw_toolbar_switch_page_popdown</a>),</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160; cnnwin);</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(menu), widget,</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>, widget, 0, gtk_get_current_event_time());</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l01547"></a><span class="lineno"><a class="line" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa"> 1547</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rco_update_toolbar_autofit_button</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160; GtkToolItem *toolitem;</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> sc;</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; toolitem = priv-&gt;toolitem_autofit;</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; <span class="keywordflow">if</span> (toolitem) {</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160; <span class="keywordflow">if</span> (priv-&gt;view_mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>) {</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), FALSE);</div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; sc = <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(cnnobj, NULL, NULL);</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), sc == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>);</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; }</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;}</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"><a class="line" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5"> 1565</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rco_change_scalemode</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, gboolean bdyn, gboolean bscale)</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;{</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode;</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; <span class="keywordflow">if</span> (bdyn)</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; scalemode = <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>;</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (bscale)</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; scalemode = <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>;</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; scalemode = <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>;</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), scalemode);</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;scale&quot;</span>, scalemode);</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;scaler_option_button), scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>);</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; <a class="code" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rco_update_toolbar_autofit_button</a>(cnnobj);</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; <a class="code" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, 0);</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="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(cnnobj);</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160; <span class="keywordflow">if</span> (GTK_IS_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>))</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; <a class="code" href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a>(cnnobj, GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>));</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160;}</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;</div><div class="line"><a name="l01591"></a><span class="lineno"><a class="line" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b"> 1591</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw_toolbar_dynres</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; gboolean bdyn, bscale;</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160;</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>) {</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; bdyn = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget));</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160; bscale = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_scale));</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; <span class="keywordflow">if</span> (bdyn &amp;&amp; bscale) {</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_scale), FALSE);</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; bscale = FALSE;</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; }</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160;</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; <a class="code" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rco_change_scalemode</a>(cnnobj, bdyn, bscale);</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; }</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;</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;</div><div class="line"><a name="l01615"></a><span class="lineno"><a class="line" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8"> 1615</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw_toolbar_scaled_mode</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; gboolean bdyn, bscale;</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</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; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</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; bdyn = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_dynres));</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160; bscale = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget));</div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160;</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160; <span class="keywordflow">if</span> (bdyn &amp;&amp; bscale) {</div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_dynres), FALSE);</div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160; bdyn = FALSE;</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; <a class="code" href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rco_change_scalemode</a>(cnnobj, bdyn, bscale);</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160;}</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"><a class="line" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e"> 1636</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw_toolbar_preferences_popdown</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160;</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;sticky = FALSE;</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160;</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolitem_preferences), FALSE);</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, 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;</div><div class="line"><a name="l01651"></a><span class="lineno"><a class="line" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5"> 1651</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw_toolbar_tools_popdown</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;{</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160;</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; priv-&gt;sticky = FALSE;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160;</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_tools), FALSE);</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;}</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160;</div><div class="line"><a name="l01665"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49"> 1665</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rco_call_protocol_feature_radio</a>(GtkMenuItem *menuitem, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;{</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160; <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; gpointer value;</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="keywordflow">if</span> (gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem))) {</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160; feature = (<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *)g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>);</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; value = g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-value&quot;</span>);</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, (<span class="keyword">const</span> gchar *)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a>, (<span class="keyword">const</span> gchar *)value);</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), feature);</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; }</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;}</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;</div><div class="line"><a name="l01680"></a><span class="lineno"><a class="line" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f"> 1680</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rco_call_protocol_feature_check</a>(GtkMenuItem *menuitem, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;{</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; gboolean value;</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; feature = (<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *)g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>);</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; value = gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(menuitem));</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, (<span class="keyword">const</span> gchar *)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a>, value);</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), feature);</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;}</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160;</div><div class="line"><a name="l01692"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64"> 1692</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rco_call_protocol_feature_activate</a>(GtkMenuItem *menuitem, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160;{</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160; feature = (<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *)g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>);</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), feature);</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;}</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;</div><div class="line"><a name="l01701"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76"> 1701</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw_toolbar_preferences_radio</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile,</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160; GtkWidget *menu, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature, <span class="keyword">const</span> gchar *domain, gboolean enabled)</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160;{</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160; GSList *group;</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160; gint i;</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160; <span class="keyword">const</span> gchar **list;</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160; <span class="keyword">const</span> gchar *value;</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; group = NULL;</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160; value = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, (<span class="keyword">const</span> gchar *)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a>);</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; list = (<span class="keyword">const</span> gchar **)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>;</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160; for (i = 0; list[i]; i += 2) {</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160; menuitem = gtk_radio_menu_item_new_with_label(group, g_dgettext(domain, list[i + 1]));</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160; group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem));</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</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> (enabled) {</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>, (gpointer)feature);</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-value&quot;</span>, (gpointer)list[i]);</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; g_strcmp0(list[i], value) == 0)</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</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; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160; G_CALLBACK(<a class="code" href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rco_call_protocol_feature_radio</a>), cnnobj);</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160; gtk_widget_set_sensitive(menuitem, FALSE);</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; }</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="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9"> 1735</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw_toolbar_preferences_check</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj,</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160; GtkWidget *menu, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature,</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160; <span class="keyword">const</span> gchar *domain, gboolean enabled)</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;{</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; menuitem = gtk_check_menu_item_new_with_label(g_dgettext(domain, (<span class="keyword">const</span> gchar *)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>));</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</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; <span class="keywordflow">if</span> (enabled) {</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>, (gpointer)feature);</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160;</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem),</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, (<span class="keyword">const</span> gchar *)feature-&gt;opt2, FALSE));</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; G_CALLBACK(<a class="code" href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rco_call_protocol_feature_check</a>), cnnobj);</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; gtk_widget_set_sensitive(menuitem, FALSE);</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160; }</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;}</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;</div><div class="line"><a name="l01759"></a><span class="lineno"><a class="line" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a"> 1759</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw_toolbar_preferences</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;{</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160; gboolean separator;</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160; gchar *domain;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160; gboolean enabled;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160;</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160; priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160;</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160; <span class="keywordflow">if</span> (!gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget)))</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160; priv-&gt;sticky = TRUE;</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160; separator = FALSE;</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160;</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160; domain = <a class="code" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160; menu = gtk_menu_new();</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160; <span class="keywordflow">for</span> (feature = <a class="code" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)); feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>;</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160; feature++) {</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> != <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>)</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160;</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160; <span class="keywordflow">if</span> (separator) {</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160; menuitem = gtk_separator_menu_item_new();</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160; separator = FALSE;</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160; }</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160; enabled = <a class="code" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), feature);</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160; <span class="keywordflow">switch</span> (GPOINTER_TO_INT(feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a>)) {</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_PREF_RADIO:</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160; <a class="code" href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw_toolbar_preferences_radio</a>(cnnobj, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, menu, feature,</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160; domain, enabled);</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160; separator = TRUE;</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_PREF_CHECK:</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160; <a class="code" href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw_toolbar_preferences_check</a>(cnnobj, menu, feature,</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160; domain, enabled);</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160; }</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160; }</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160; g_free(domain);</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160;</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw_toolbar_preferences_popdown</a>), cnnwin);</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(menu), widget,</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160; GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>, widget, 0, gtk_get_current_event_time());</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;}</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160;</div><div class="line"><a name="l01822"></a><span class="lineno"><a class="line" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1"> 1822</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw_toolbar_tools</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;{</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160; GtkWidget *menuitem = NULL;</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160; GtkMenu *submenu_keystrokes;</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160; <span class="keyword">const</span> gchar *domain;</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160; gboolean enabled;</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160; gchar **keystrokes;</div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160; gchar **keystroke_values;</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160; gint i;</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160;</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160; priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160;</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160; <span class="keywordflow">if</span> (!gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget)))</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160; priv-&gt;sticky = TRUE;</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160; domain = <a class="code" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160; menu = gtk_menu_new();</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160; <span class="keywordflow">for</span> (feature = <a class="code" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)); feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>;</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; feature++) {</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> != <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>)</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a>)</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160; menuitem = gtk_menu_item_new_with_label(g_dgettext(domain, (<span class="keyword">const</span> gchar *)feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a>));</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>)</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(menuitem, <span class="stringliteral">&quot;&quot;</span>, GPOINTER_TO_UINT(feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>), 0);</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160;</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; enabled = <a class="code" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), feature);</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160; <span class="keywordflow">if</span> (enabled) {</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;feature-type&quot;</span>, (gpointer)feature);</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160;</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160; G_CALLBACK(<a class="code" href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rco_call_protocol_feature_activate</a>), cnnobj);</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160; gtk_widget_set_sensitive(menuitem, FALSE);</div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160; }</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160; }</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw_toolbar_tools_popdown</a>), cnnwin);</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160;</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160; <span class="comment">/* If the plugin accepts keystrokes include the keystrokes menu */</span></div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>))) {</div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160; <span class="comment">/* Get the registered keystrokes list */</span></div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160; keystrokes = g_strsplit(remmina_pref.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a>, STRING_DELIMITOR, -1);</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160; <span class="keywordflow">if</span> (g_strv_length(keystrokes)) {</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160; <span class="comment">/* Add a keystrokes submenu */</span></div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; menuitem = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Keystrokes&quot;</span>));</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160; submenu_keystrokes = GTK_MENU(gtk_menu_new());</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160; gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), GTK_WIDGET(submenu_keystrokes));</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160; <span class="comment">/* Add each registered keystroke */</span></div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; g_strv_length(keystrokes); i++) {</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160; keystroke_values = g_strsplit(keystrokes[i], STRING_DELIMITOR2, -1);</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160; <span class="keywordflow">if</span> (g_strv_length(keystroke_values) &gt; 1) {</div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160; <span class="comment">/* Add the keystroke if no description was available */</span></div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160; menuitem = gtk_menu_item_new_with_label(</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160; g_strdup(keystroke_values[strlen(keystroke_values[0]) ? 0 : 1]));</div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160; g_object_set_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;keystrokes&quot;</span>, g_strdup(keystroke_values[1]));</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160; g_signal_connect_swapped(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160; G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a>),</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160; REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(submenu_keystrokes), menuitem);</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160; }</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; g_strfreev(keystroke_values);</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160; }</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160; }</div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; g_strfreev(keystrokes);</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160; }</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160; gtk_menu_popup_at_widget(GTK_MENU(menu), widget,</div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160; GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>, widget, 0, gtk_get_current_event_time());</div><div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;}</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;</div><div class="line"><a name="l01912"></a><span class="lineno"><a class="line" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5"> 1912</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw_toolbar_duplicate</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160;{</div><div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160; <span class="comment">//RemminaProtocolWidget *gp;</span></div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160;</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160;</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160; <span class="comment">// We will duplicate the currently displayed RemminaProtocolWidget.</span></div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; <span class="comment">//gp = REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;proto);</span></div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>-&gt;filename);</div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;}</div><div class="line"><a name="l01928"></a><span class="lineno"><a class="line" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9"> 1928</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw_toolbar_screenshot</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160;{</div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160;</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160; GdkPixbuf *screenshot;</div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160; GdkWindow *active_window;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160; cairo_t *cr;</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160; gint width, height;</div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160; GString *pngstr;</div><div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160; gchar *pngname;</div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160; <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> rpsd;</div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160; cairo_surface_t *srcsurface;</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160; cairo_format_t cairo_format;</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160; <span class="keywordtype">int</span> stride;</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160;</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160;</div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160; GDateTime *date = g_date_time_new_now_utc();</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; <span class="comment">// We will take a screenshot of the currently displayed RemminaProtocolWidget.</span></div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160; gp = REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160;</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160; gchar *denyclip = <a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="stringliteral">&quot;deny_screenshot_clipboard&quot;</span>);</div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160; g_debug (<span class="stringliteral">&quot;deny_screenshot_clipboard is set to %s&quot;</span>, denyclip);</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160;</div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160; GtkClipboard *c = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160; <span class="comment">// Ask the plugin if it can give us a screenshot</span></div><div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a>(gp, &amp;rpsd)) {</div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160; <span class="comment">// Good, we have a screenshot from the plugin !</span></div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160;</div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Screenshot from plugin: w=%d h=%d bpp=%d bytespp=%d\n&quot;</span>,</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160; rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">width</a>, rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">height</a>, rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a>, rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">bytesPerPixel</a>);</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; width = rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">width</a>;</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160; height = rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">height</a>;</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160;</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160; <span class="keywordflow">if</span> (rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a> == 32)</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160; cairo_format = CAIRO_FORMAT_ARGB32;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a> == 24)</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160; cairo_format = CAIRO_FORMAT_RGB24;</div><div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160; cairo_format = CAIRO_FORMAT_RGB16_565;</div><div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160;</div><div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160; stride = cairo_format_stride_for_width(cairo_format, width);</div><div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>&#160;</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160; srcsurface = cairo_image_surface_create_for_data(rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a>, cairo_format, width, height, stride);</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160; <span class="comment">// Transfer the PixBuf in the main clipboard selection</span></div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160; <span class="keywordflow">if</span> (denyclip &amp;&amp; (g_strcmp0 (denyclip, <span class="stringliteral">&quot;true&quot;</span>)))</div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160; gtk_clipboard_set_image(c, gdk_pixbuf_get_from_surface(</div><div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160; srcsurface, 0, 0, width, height));</div><div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160; surface = cairo_image_surface_create(CAIRO_FORMAT_RGB24, width, height);</div><div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160; cr = cairo_create(surface);</div><div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>&#160; cairo_set_source_surface(cr, srcsurface, 0, 0);</div><div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>&#160; cairo_set_operator(cr, CAIRO_OPERATOR_SOURCE);</div><div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160; cairo_paint(cr);</div><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160; cairo_surface_destroy(srcsurface);</div><div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>&#160;</div><div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160; free(rpsd.<a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a>);</div><div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160; <span class="comment">// The plugin is not releasing us a screenshot, just try to catch one via GTK</span></div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160; <span class="comment">/* Warn the user if image is distorted */</span></div><div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">plugin_can_scale</a> &amp;&amp;</div><div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160; <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(cnnobj, NULL, NULL) == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>) {</div><div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK,</div><div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160; _(<span class="stringliteral">&quot;Turn off scaling to avoid screenshot distortion.&quot;</span>));</div><div class="line"><a name="l02000"></a><span class="lineno"> 2000</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="l02001"></a><span class="lineno"> 2001</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160; }</div><div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;</div><div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160; <span class="comment">// Get the screenshot.</span></div><div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160; active_window = gtk_widget_get_window(GTK_WIDGET(gp));</div><div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160; <span class="comment">// width = gdk_window_get_width(gtk_widget_get_window(GTK_WIDGET(cnnobj-&gt;cnnwin)));</span></div><div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160; width = gdk_window_get_width(active_window);</div><div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160; <span class="comment">// height = gdk_window_get_height(gtk_widget_get_window(GTK_WIDGET(cnnobj-&gt;cnnwin)));</span></div><div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160; height = gdk_window_get_height(active_window);</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;</div><div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160; screenshot = gdk_pixbuf_get_from_window(active_window, 0, 0, width, height);</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160; <span class="keywordflow">if</span> (screenshot == NULL)</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160; g_print(<span class="stringliteral">&quot;gdk_pixbuf_get_from_window failed\n&quot;</span>);</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160; <span class="comment">// Transfer the PixBuf in the main clipboard selection</span></div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; <span class="keywordflow">if</span> (denyclip &amp;&amp; (g_strcmp0 (denyclip, <span class="stringliteral">&quot;true&quot;</span>)))</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160; gtk_clipboard_set_image(c, screenshot);</div><div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160; <span class="comment">// Prepare the destination Cairo surface.</span></div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160; surface = cairo_image_surface_create(CAIRO_FORMAT_RGB24, width, height);</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160; cr = cairo_create(surface);</div><div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;</div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160; <span class="comment">// Copy the source pixbuf to the surface and paint it.</span></div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160; gdk_cairo_set_source_pixbuf(cr, screenshot, 0, 0);</div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160; cairo_paint(cr);</div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;</div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160; <span class="comment">// Deallocate screenshot pixbuf</span></div><div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160; g_object_unref(screenshot);</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160; }</div><div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;</div><div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160; <span class="comment">//home/antenore/Pictures/remmina_%p_%h_%Y %m %d-%H%M%S.png pngname</span></div><div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160; <span class="comment">//home/antenore/Pictures/remmina_st_ _2018 9 24-151958.240374.png</span></div><div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;</div><div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160; pngstr = g_string_new(g_strdup_printf(<span class="stringliteral">&quot;%s/%s.png&quot;</span>,</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a>,</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a>));</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%p&quot;</span>,</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%h&quot;</span>,</div><div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%Y&quot;</span>,</div><div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_year(date)));</div><div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%m&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>,</div><div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160; g_date_time_get_month(date)));</div><div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%d&quot;</span>,</div><div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_day_of_month(date)));</div><div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%H&quot;</span>,</div><div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_hour(date)));</div><div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%M&quot;</span>,</div><div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_minute(date)));</div><div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%S&quot;</span>,</div><div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%f&quot;</span>, g_date_time_get_seconds(date)));</div><div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160; g_date_time_unref(date);</div><div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160; pngname = g_string_free(pngstr, FALSE);</div><div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160;</div><div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160; cairo_surface_write_to_png(surface, pngname);</div><div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160;</div><div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160; <span class="comment">/* send a desktop notification */</span></div><div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160; <span class="keywordflow">if</span> (g_file_test(pngname, G_FILE_TEST_EXISTS))</div><div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160; <a class="code" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a>(<span class="stringliteral">&quot;remmina-screenshot-is-ready-id&quot;</span>, _(<span class="stringliteral">&quot;Screenshot taken&quot;</span>), pngname);</div><div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;</div><div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160; <span class="comment">//Clean up and return.</span></div><div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160; cairo_destroy(cr);</div><div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160; cairo_surface_destroy(surface);</div><div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160;}</div><div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160;</div><div class="line"><a name="l02066"></a><span class="lineno"><a class="line" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919"> 2066</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw_toolbar_minimize</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160;{</div><div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160;</div><div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160;</div><div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</div><div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160; gtk_window_iconify(GTK_WINDOW(cnnwin));</div><div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;}</div><div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;</div><div class="line"><a name="l02077"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446"> 2077</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw_toolbar_disconnect</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160;{</div><div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160; <a class="code" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rco_disconnect_current_page</a>(cnnobj);</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;}</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;</div><div class="line"><a name="l02087"></a><span class="lineno"><a class="line" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6"> 2087</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw_toolbar_grab</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;{</div><div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160; gboolean capture;</div><div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02092"></a><span class="lineno"> 2092</span>&#160;</div><div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar_is_reconfiguring)</div><div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>&#160;</div><div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>&#160; capture = gtk_toggle_tool_button_get_active(GTK_TOGGLE_TOOL_BUTTON(widget));</div><div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;keyboard_grab&quot;</span>, capture);</div><div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160; <span class="keywordflow">if</span> (capture &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>) {</div><div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: Grabbing for button\n&quot;</span>);</div><div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160; <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_entered) {</div><div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>&#160; <a class="code" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160; }</div><div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160; }</div><div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160;}</div><div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160;</div><div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160;<span class="keyword">static</span> GtkWidget *</div><div class="line"><a name="l02113"></a><span class="lineno"><a class="line" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86"> 2113</a></span>&#160;<a class="code" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gint mode)</div><div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160;{</div><div class="line"><a name="l02115"></a><span class="lineno"> 2115</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>&#160; GtkWidget *toolbar;</div><div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>&#160; GtkToolItem *toolitem;</div><div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>&#160; GtkWidget *arrow;</div><div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>&#160;</div><div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>&#160;</div><div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>&#160; priv-&gt;toolbar_is_reconfiguring = TRUE;</div><div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160;</div><div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160; toolbar = gtk_toolbar_new();</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160; gtk_widget_show(toolbar);</div><div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160; gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);</div><div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>&#160; gtk_toolbar_set_icon_size(GTK_TOOLBAR(toolbar), GTK_ICON_SIZE_SMALL_TOOLBAR);</div><div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160; gtk_toolbar_set_show_arrow(GTK_TOOLBAR(toolbar), FALSE);</div><div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;</div><div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160; <span class="comment">/* Auto-Fit */</span></div><div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160; toolitem = gtk_tool_button_new(NULL, NULL);</div><div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-fit-window-symbolic&quot;</span>);</div><div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Resize the window to fit in remote resolution&quot;</span>),</div><div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a>, 0);</div><div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a>), cnnwin);</div><div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>&#160; priv-&gt;toolitem_autofit = toolitem;</div><div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02141"></a><span class="lineno"> 2141</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>&#160;</div><div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>&#160;</div><div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>&#160; <span class="comment">/* Fullscreen toggle */</span></div><div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-fullscreen-symbolic&quot;</span>);</div><div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Toggle fullscreen mode&quot;</span>),</div><div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a>, 0);</div><div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>&#160; priv-&gt;toolitem_fullscreen = toolitem;</div><div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a>) {</div><div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(toolitem), FALSE);</div><div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(toolitem), mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>);</div><div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw_toolbar_fullscreen</a>), cnnwin);</div><div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160; }</div><div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160; <span class="comment">/* Fullscreen drop-down options */</span></div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160; toolitem = gtk_tool_item_new();</div><div class="line"><a name="l02161"></a><span class="lineno"> 2161</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160; widget = gtk_toggle_button_new();</div><div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(widget), 0);</div><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160; gtk_button_set_relief(GTK_BUTTON(widget), GTK_RELIEF_NONE);</div><div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160; gtk_widget_set_focus_on_click(GTK_WIDGET(widget), FALSE);</div><div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a>)</div><div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160; gtk_widget_set_name(widget, <span class="stringliteral">&quot;remmina-small-button&quot;</span>);</div><div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160;</div><div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02173"></a><span class="lineno"> 2173</span>&#160; gtk_button_set_focus_on_click(GTK_BUTTON(widget), FALSE);</div><div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>&#160; gtk_container_add(GTK_CONTAINER(toolitem), widget);</div><div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>&#160;</div><div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 14, 0)</span></div><div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>&#160; arrow = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-pan-down-symbolic&quot;</span>, GTK_ICON_SIZE_SMALL_TOOLBAR);</div><div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>&#160; arrow = gtk_arrow_new(GTK_ARROW_DOWN, GTK_SHADOW_NONE);</div><div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160; gtk_widget_show(arrow);</div><div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160; gtk_container_add(GTK_CONTAINER(widget), arrow);</div><div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw_toolbar_fullscreen_option</a>), cnnwin);</div><div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>&#160; priv-&gt;fullscreen_option_button = widget;</div><div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160; <span class="keywordflow">if</span> (mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(widget), FALSE);</div><div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160;</div><div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160; <span class="comment">/* Switch tabs */</span></div><div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-switch-page-symbolic&quot;</span>);</div><div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Switch tab pages&quot;</span>), remmina_pref.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a>,</div><div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a>);</div><div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw_toolbar_switch_page</a>), cnnwin);</div><div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160; priv-&gt;toolitem_switch_page = toolitem;</div><div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>&#160;</div><div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160; toolitem = gtk_separator_tool_item_new();</div><div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>&#160;</div><div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>&#160; <span class="comment">/* Dynamic Resolution Update */</span></div><div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-dynres-symbolic&quot;</span>);</div><div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Toggle dynamic resolution update&quot;</span>),</div><div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">shortcutkey_dynres</a>, 0);</div><div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw_toolbar_dynres</a>), cnnwin);</div><div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>&#160; priv-&gt;toolitem_dynres = toolitem;</div><div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>&#160;</div><div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160; <span class="comment">/* Scaler button */</span></div><div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-scale-symbolic&quot;</span>);</div><div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Toggle scaled mode&quot;</span>), remmina_pref.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a>, 0);</div><div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw_toolbar_scaled_mode</a>), cnnwin);</div><div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>&#160; priv-&gt;toolitem_scale = toolitem;</div><div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>&#160;</div><div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>&#160; <span class="comment">/* Scaler aspect ratio dropdown menu */</span></div><div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>&#160; toolitem = gtk_tool_item_new();</div><div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160; widget = gtk_toggle_button_new();</div><div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(widget), 0);</div><div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>&#160; gtk_button_set_relief(GTK_BUTTON(widget), GTK_RELIEF_NONE);</div><div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>&#160; gtk_widget_set_focus_on_click(GTK_WIDGET(widget), FALSE);</div><div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>&#160; gtk_button_set_focus_on_click(GTK_BUTTON(widget), FALSE);</div><div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a>)</div><div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160; gtk_widget_set_name(widget, <span class="stringliteral">&quot;remmina-small-button&quot;</span>);</div><div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>&#160; gtk_container_add(GTK_CONTAINER(toolitem), widget);</div><div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 14, 0)</span></div><div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160; arrow = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-pan-down-symbolic&quot;</span>, GTK_ICON_SIZE_SMALL_TOOLBAR);</div><div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>&#160; arrow = gtk_arrow_new(GTK_ARROW_DOWN, GTK_SHADOW_NONE);</div><div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>&#160; gtk_widget_show(arrow);</div><div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160; gtk_container_add(GTK_CONTAINER(widget), arrow);</div><div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw_toolbar_scaler_option</a>), cnnwin);</div><div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>&#160; priv-&gt;scaler_option_button = widget;</div><div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>&#160;</div><div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160; <span class="comment">/* Grab keyboard button */</span></div><div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-keyboard-symbolic&quot;</span>);</div><div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Grab all keyboard events&quot;</span>),</div><div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a>, 0);</div><div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw_toolbar_grab</a>), cnnwin);</div><div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>&#160; priv-&gt;toolitem_grab = toolitem;</div><div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>&#160;</div><div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-preferences-system-symbolic&quot;</span>);</div><div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>&#160; gtk_tool_item_set_tooltip_text(toolitem, _(<span class="stringliteral">&quot;_Preferences&quot;</span>));</div><div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw_toolbar_preferences</a>), cnnwin);</div><div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160; priv-&gt;toolitem_preferences = toolitem;</div><div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160;</div><div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160; toolitem = gtk_toggle_tool_button_new();</div><div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-system-run-symbolic&quot;</span>);</div><div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160; gtk_tool_button_set_label(GTK_TOOL_BUTTON(toolitem), _(<span class="stringliteral">&quot;_Tools&quot;</span>));</div><div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160; gtk_tool_item_set_tooltip_text(toolitem, _(<span class="stringliteral">&quot;Tools&quot;</span>));</div><div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw_toolbar_tools</a>), cnnwin);</div><div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160; priv-&gt;toolitem_tools = toolitem;</div><div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160;</div><div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>&#160; toolitem = gtk_separator_tool_item_new();</div><div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160;</div><div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160; toolitem = gtk_tool_button_new(NULL, <span class="stringliteral">&quot;Duplicate connection&quot;</span>);</div><div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-duplicate-symbolic&quot;</span>);</div><div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160; gtk_tool_item_set_tooltip_text(toolitem, _(<span class="stringliteral">&quot;Duplicate current connection&quot;</span>));</div><div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw_toolbar_duplicate</a>), cnnwin);</div><div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>&#160; <span class="keywordflow">if</span> (!cnnobj)</div><div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), FALSE);</div><div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>&#160;</div><div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160; priv-&gt;toolitem_duplicate = toolitem;</div><div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>&#160;</div><div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>&#160; toolitem = gtk_tool_button_new(NULL, <span class="stringliteral">&quot;_Screenshot&quot;</span>);</div><div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-camera-photo-symbolic&quot;</span>);</div><div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Screenshot&quot;</span>), remmina_pref.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a>, 0);</div><div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw_toolbar_screenshot</a>), cnnwin);</div><div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160; priv-&gt;toolitem_screenshot = toolitem;</div><div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>&#160;</div><div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>&#160; toolitem = gtk_tool_button_new(NULL, <span class="stringliteral">&quot;_Bottom&quot;</span>);</div><div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-go-bottom-symbolic&quot;</span>);</div><div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Minimize window&quot;</span>), remmina_pref.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a>, 0);</div><div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw_toolbar_minimize</a>), cnnwin);</div><div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a>)</div><div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), FALSE);</div><div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160;</div><div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160; toolitem = gtk_tool_button_new(NULL, <span class="stringliteral">&quot;_Disconnect&quot;</span>);</div><div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160; gtk_tool_button_set_icon_name(GTK_TOOL_BUTTON(toolitem), <span class="stringliteral">&quot;remmina-disconnect-symbolic&quot;</span>);</div><div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160; <a class="code" href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a>(GTK_WIDGET(toolitem), _(<span class="stringliteral">&quot;Disconnect&quot;</span>), remmina_pref.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a>, 0);</div><div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160; gtk_toolbar_insert(GTK_TOOLBAR(toolbar), toolitem, -1);</div><div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160; gtk_widget_show(GTK_WIDGET(toolitem));</div><div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>&#160; g_signal_connect(G_OBJECT(toolitem), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw_toolbar_disconnect</a>), cnnwin);</div><div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>&#160;</div><div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160; priv-&gt;toolbar_is_reconfiguring = FALSE;</div><div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>&#160; <span class="keywordflow">return</span> toolbar;</div><div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>&#160;}</div><div class="line"><a name="l02317"></a><span class="lineno"> 2317</span>&#160;</div><div class="line"><a name="l02318"></a><span class="lineno"><a class="line" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292"> 2318</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a>(GtkToolbar *toolbar, GtkGrid *grid, GtkWidget *sibling, <span class="keywordtype">int</span> toolbar_placement)</div><div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>&#160;{</div><div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>&#160; <span class="comment">/* Place the toolbar inside the grid and set its orientation */</span></div><div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>&#160;</div><div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>&#160; <span class="keywordflow">if</span> (toolbar_placement == <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a> || toolbar_placement == <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a>)</div><div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>&#160; gtk_orientable_set_orientation(GTK_ORIENTABLE(toolbar), GTK_ORIENTATION_VERTICAL);</div><div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02325"></a><span class="lineno"> 2325</span>&#160; gtk_orientable_set_orientation(GTK_ORIENTABLE(toolbar), GTK_ORIENTATION_HORIZONTAL);</div><div class="line"><a name="l02326"></a><span class="lineno"> 2326</span>&#160;</div><div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>&#160;</div><div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>&#160; <span class="keywordflow">switch</span> (toolbar_placement) {</div><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a>:</div><div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(toolbar), TRUE);</div><div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(toolbar), FALSE);</div><div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>&#160; gtk_grid_attach_next_to(GTK_GRID(grid), GTK_WIDGET(toolbar), sibling, GTK_POS_TOP, 1, 1);</div><div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a>:</div><div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(toolbar), TRUE);</div><div class="line"><a name="l02336"></a><span class="lineno"> 2336</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(toolbar), FALSE);</div><div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>&#160; gtk_grid_attach_next_to(GTK_GRID(grid), GTK_WIDGET(toolbar), sibling, GTK_POS_RIGHT, 1, 1);</div><div class="line"><a name="l02338"></a><span class="lineno"> 2338</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02339"></a><span class="lineno"> 2339</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a>:</div><div class="line"><a name="l02340"></a><span class="lineno"> 2340</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(toolbar), TRUE);</div><div class="line"><a name="l02341"></a><span class="lineno"> 2341</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(toolbar), FALSE);</div><div class="line"><a name="l02342"></a><span class="lineno"> 2342</span>&#160; gtk_grid_attach_next_to(GTK_GRID(grid), GTK_WIDGET(toolbar), sibling, GTK_POS_BOTTOM, 1, 1);</div><div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02344"></a><span class="lineno"> 2344</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a>:</div><div class="line"><a name="l02345"></a><span class="lineno"> 2345</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(toolbar), TRUE);</div><div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(toolbar), FALSE);</div><div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160; gtk_grid_attach_next_to(GTK_GRID(grid), GTK_WIDGET(toolbar), sibling, GTK_POS_LEFT, 1, 1);</div><div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160; }</div><div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160;}</div><div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>&#160;</div><div class="line"><a name="l02352"></a><span class="lineno"><a class="line" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726"> 2352</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>&#160;{</div><div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>&#160; GtkToolItem *toolitem;</div><div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>&#160; gboolean bval, dynres_avail, scale_avail;</div><div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>&#160; gboolean test_floating_toolbar;</div><div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode;</div><div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>&#160;</div><div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>&#160; priv-&gt;toolbar_is_reconfiguring = TRUE;</div><div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>&#160;</div><div class="line"><a name="l02363"></a><span class="lineno"> 2363</span>&#160; <a class="code" href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rco_update_toolbar_autofit_button</a>(cnnobj);</div><div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160;</div><div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160;</div><div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>&#160; toolitem = priv-&gt;toolitem_switch_page;</div><div class="line"><a name="l02367"></a><span class="lineno"> 2367</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a>)</div><div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>&#160; bval = FALSE;</div><div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>&#160; bval = (gtk_notebook_get_n_pages(GTK_NOTEBOOK(priv-&gt;notebook)) &gt; 1);</div><div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), bval);</div><div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>&#160;</div><div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>-&gt;filename)</div><div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;toolitem_duplicate), TRUE);</div><div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;toolitem_duplicate), FALSE);</div><div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>&#160;</div><div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>&#160; scalemode = <a class="code" href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a>(cnnobj, &amp;dynres_avail, &amp;scale_avail);</div><div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;toolitem_dynres), dynres_avail &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;toolitem_scale), scale_avail &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>&#160;</div><div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>&#160; <span class="keywordflow">switch</span> (scalemode) {</div><div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>:</div><div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_dynres), FALSE);</div><div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_scale), FALSE);</div><div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;scaler_option_button), FALSE);</div><div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02388"></a><span class="lineno"> 2388</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>:</div><div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_dynres), FALSE);</div><div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_scale), TRUE);</div><div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;scaler_option_button), TRUE &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>:</div><div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_dynres), TRUE);</div><div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_scale), FALSE);</div><div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;scaler_option_button), FALSE);</div><div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160; }</div><div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160;</div><div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160; toolitem = priv-&gt;toolitem_grab;</div><div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160; gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(toolitem),</div><div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;keyboard_grab&quot;</span>, FALSE));</div><div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>&#160;</div><div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>&#160; toolitem = priv-&gt;toolitem_preferences;</div><div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>&#160; bval = <a class="code" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>);</div><div class="line"><a name="l02409"></a><span class="lineno"> 2409</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), bval &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>&#160;</div><div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>&#160; toolitem = priv-&gt;toolitem_tools;</div><div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>&#160; bval = <a class="code" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>);</div><div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(toolitem), bval &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>&#160;</div><div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(priv-&gt;toolitem_screenshot), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a>);</div><div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160;</div><div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160; gtk_window_set_title(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l02419"></a><span class="lineno"> 2419</span>&#160;</div><div class="line"><a name="l02420"></a><span class="lineno"> 2420</span>&#160; test_floating_toolbar = (priv-&gt;floating_toolbar_widget != NULL);</div><div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>&#160; <span class="keywordflow">if</span> (test_floating_toolbar)</div><div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>&#160; gtk_label_set_text(GTK_LABEL(priv-&gt;floating_toolbar_label),</div><div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>&#160;</div><div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>&#160; priv-&gt;toolbar_is_reconfiguring = FALSE;</div><div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>&#160;}</div><div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>&#160;</div><div class="line"><a name="l02428"></a><span class="lineno"><a class="line" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f"> 2428</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw_set_toolbar_visibility</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160;{</div><div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02431"></a><span class="lineno"> 2431</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02432"></a><span class="lineno"> 2432</span>&#160;</div><div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>&#160; <span class="keywordflow">if</span> (priv-&gt;view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>) {</div><div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a>)</div><div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160; gtk_widget_hide(priv-&gt;toolbar);</div><div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160; gtk_widget_show(priv-&gt;toolbar);</div><div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>&#160; }</div><div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>&#160;}</div><div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160;</div><div class="line"><a name="l02441"></a><span class="lineno"><a class="line" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6"> 2441</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw_floating_toolbar_on_enter</a>(GtkWidget *widget, GdkEventCrossing *event,</div><div class="line"><a name="l02442"></a><span class="lineno"> 2442</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02443"></a><span class="lineno"> 2443</span>&#160;{</div><div class="line"><a name="l02444"></a><span class="lineno"> 2444</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02445"></a><span class="lineno"> 2445</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, TRUE);</div><div class="line"><a name="l02446"></a><span class="lineno"> 2446</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02447"></a><span class="lineno"> 2447</span>&#160;}</div><div class="line"><a name="l02448"></a><span class="lineno"> 2448</span>&#160;</div><div class="line"><a name="l02449"></a><span class="lineno"><a class="line" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb"> 2449</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw_on_leave_notify_event</a>(GtkWidget *widget, GdkEventCrossing *event,</div><div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160; gpointer user_data)</div><div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160;{</div><div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02453"></a><span class="lineno"> 2453</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>((<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a>*)widget);</div><div class="line"><a name="l02454"></a><span class="lineno"> 2454</span>&#160; <a class="code" href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw_pointer_ungrab</a>((<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a>*)widget);</div><div class="line"><a name="l02455"></a><span class="lineno"> 2455</span>&#160;</div><div class="line"><a name="l02456"></a><span class="lineno"> 2456</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02457"></a><span class="lineno"> 2457</span>&#160;}</div><div class="line"><a name="l02458"></a><span class="lineno"> 2458</span>&#160;</div><div class="line"><a name="l02459"></a><span class="lineno"> 2459</span>&#160;</div><div class="line"><a name="l02460"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757"> 2460</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rco_leave_protocol_widget</a>(GtkWidget *widget, GdkEventCrossing *event,</div><div class="line"><a name="l02461"></a><span class="lineno"> 2461</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02462"></a><span class="lineno"> 2462</span>&#160;{</div><div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>&#160;</div><div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02466"></a><span class="lineno"> 2466</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: leave detail=&quot;</span>);</div><div class="line"><a name="l02467"></a><span class="lineno"> 2467</span>&#160; <span class="keywordflow">switch</span> (event-&gt;detail) {</div><div class="line"><a name="l02468"></a><span class="lineno"> 2468</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_ANCESTOR: printf(<span class="stringliteral">&quot;GDK_NOTIFY_ANCESTOR&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02469"></a><span class="lineno"> 2469</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_VIRTUAL: printf(<span class="stringliteral">&quot;GDK_NOTIFY_VIRTUAL&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02470"></a><span class="lineno"> 2470</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_NONLINEAR: printf(<span class="stringliteral">&quot;GDK_NOTIFY_NONLINEAR&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02471"></a><span class="lineno"> 2471</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_NONLINEAR_VIRTUAL: printf(<span class="stringliteral">&quot;GDK_NOTIFY_NONLINEAR_VIRTUAL&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02472"></a><span class="lineno"> 2472</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_UNKNOWN: printf(<span class="stringliteral">&quot;GDK_NOTIFY_UNKNOWN&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02473"></a><span class="lineno"> 2473</span>&#160; <span class="keywordflow">case</span> GDK_NOTIFY_INFERIOR: printf(<span class="stringliteral">&quot;GDK_NOTIFY_INFERIOR&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160; <span class="keywordflow">default</span>: printf(<span class="stringliteral">&quot;unknown&quot;</span>);</div><div class="line"><a name="l02475"></a><span class="lineno"> 2475</span>&#160; }</div><div class="line"><a name="l02476"></a><span class="lineno"> 2476</span>&#160; printf(<span class="stringliteral">&quot;\n&quot;</span>);</div><div class="line"><a name="l02477"></a><span class="lineno"> 2477</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02478"></a><span class="lineno"> 2478</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02479"></a><span class="lineno"> 2479</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: leave mode=&quot;</span>);</div><div class="line"><a name="l02480"></a><span class="lineno"> 2480</span>&#160; <span class="keywordflow">switch</span> (event-&gt;mode) {</div><div class="line"><a name="l02481"></a><span class="lineno"> 2481</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_NORMAL: printf(<span class="stringliteral">&quot;GDK_CROSSING_NORMAL&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02482"></a><span class="lineno"> 2482</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_GRAB: printf(<span class="stringliteral">&quot;GDK_CROSSING_GRAB&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02483"></a><span class="lineno"> 2483</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_UNGRAB: printf(<span class="stringliteral">&quot;GDK_CROSSING_UNGRAB&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02484"></a><span class="lineno"> 2484</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_GTK_GRAB: printf(<span class="stringliteral">&quot;GDK_CROSSING_GTK_GRAB&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02485"></a><span class="lineno"> 2485</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_GTK_UNGRAB: printf(<span class="stringliteral">&quot;GDK_CROSSING_GTK_UNGRAB&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02486"></a><span class="lineno"> 2486</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_STATE_CHANGED: printf(<span class="stringliteral">&quot;GDK_CROSSING_STATE_CHANGED&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_TOUCH_BEGIN: printf(<span class="stringliteral">&quot;GDK_CROSSING_TOUCH_BEGIN&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_TOUCH_END: printf(<span class="stringliteral">&quot;GDK_CROSSING_TOUCH_END&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02489"></a><span class="lineno"> 2489</span>&#160; <span class="keywordflow">case</span> GDK_CROSSING_DEVICE_SWITCH: printf(<span class="stringliteral">&quot;GDK_CROSSING_DEVICE_SWITCH&quot;</span>); <span class="keywordflow">break</span>;</div><div class="line"><a name="l02490"></a><span class="lineno"> 2490</span>&#160;</div><div class="line"><a name="l02491"></a><span class="lineno"> 2491</span>&#160; <span class="keywordflow">default</span>: printf(<span class="stringliteral">&quot;unknown&quot;</span>);</div><div class="line"><a name="l02492"></a><span class="lineno"> 2492</span>&#160; }</div><div class="line"><a name="l02493"></a><span class="lineno"> 2493</span>&#160; printf(<span class="stringliteral">&quot;\n&quot;</span>);</div><div class="line"><a name="l02494"></a><span class="lineno"> 2494</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02495"></a><span class="lineno"> 2495</span>&#160;</div><div class="line"><a name="l02496"></a><span class="lineno"> 2496</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_entered = FALSE;</div><div class="line"><a name="l02497"></a><span class="lineno"> 2497</span>&#160;</div><div class="line"><a name="l02498"></a><span class="lineno"> 2498</span>&#160; <span class="comment">/* Ungrab only if the leave is due to normal mouse motion */</span></div><div class="line"><a name="l02499"></a><span class="lineno"> 2499</span>&#160; <span class="keywordflow">if</span> (event-&gt;mode == GDK_CROSSING_NORMAL)</div><div class="line"><a name="l02500"></a><span class="lineno"> 2500</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02501"></a><span class="lineno"> 2501</span>&#160;</div><div class="line"><a name="l02502"></a><span class="lineno"> 2502</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02503"></a><span class="lineno"> 2503</span>&#160;}</div><div class="line"><a name="l02504"></a><span class="lineno"> 2504</span>&#160;</div><div class="line"><a name="l02505"></a><span class="lineno"> 2505</span>&#160;</div><div class="line"><a name="l02506"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0"> 2506</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rco_enter_protocol_widget</a>(GtkWidget *widget, GdkEventCrossing *event,</div><div class="line"><a name="l02507"></a><span class="lineno"> 2507</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>&#160;{</div><div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>&#160; gboolean active;</div><div class="line"><a name="l02511"></a><span class="lineno"> 2511</span>&#160;</div><div class="line"><a name="l02512"></a><span class="lineno"> 2512</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02513"></a><span class="lineno"> 2513</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: %s: enter event received\n&quot;</span>, __func__);</div><div class="line"><a name="l02514"></a><span class="lineno"> 2514</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02515"></a><span class="lineno"> 2515</span>&#160;</div><div class="line"><a name="l02516"></a><span class="lineno"> 2516</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02517"></a><span class="lineno"> 2517</span>&#160; <span class="keywordflow">if</span> (!priv-&gt;sticky &amp;&amp; event-&gt;mode == GDK_CROSSING_NORMAL) {</div><div class="line"><a name="l02518"></a><span class="lineno"> 2518</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, FALSE);</div><div class="line"><a name="l02519"></a><span class="lineno"> 2519</span>&#160; }</div><div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>&#160;</div><div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>&#160; priv-&gt;pointer_entered = TRUE;</div><div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>&#160;</div><div class="line"><a name="l02523"></a><span class="lineno"> 2523</span>&#160; <span class="comment">/* Check if we need pointer grabbing */</span></div><div class="line"><a name="l02524"></a><span class="lineno"> 2524</span>&#160; active = gtk_window_is_active(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l02525"></a><span class="lineno"> 2525</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;keyboard_grab&quot;</span>, FALSE) &amp;&amp; active) {</div><div class="line"><a name="l02526"></a><span class="lineno"> 2526</span>&#160; <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02527"></a><span class="lineno"> 2527</span>&#160; <a class="code" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02528"></a><span class="lineno"> 2528</span>&#160; }</div><div class="line"><a name="l02529"></a><span class="lineno"> 2529</span>&#160;</div><div class="line"><a name="l02530"></a><span class="lineno"> 2530</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160;}</div><div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>&#160;</div><div class="line"><a name="l02533"></a><span class="lineno"><a class="line" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3"> 2533</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw_focus_in</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02534"></a><span class="lineno"> 2534</span>&#160;{</div><div class="line"><a name="l02535"></a><span class="lineno"> 2535</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02536"></a><span class="lineno"> 2536</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02537"></a><span class="lineno"> 2537</span>&#160;</div><div class="line"><a name="l02538"></a><span class="lineno"> 2538</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l02539"></a><span class="lineno"> 2539</span>&#160;</div><div class="line"><a name="l02540"></a><span class="lineno"> 2540</span>&#160; <span class="keywordflow">if</span> (cnnobj &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a> &amp;&amp; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;keyboard_grab&quot;</span>, FALSE)) {</div><div class="line"><a name="l02541"></a><span class="lineno"> 2541</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02542"></a><span class="lineno"> 2542</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: Received focus in and grabbing enabled, requesting kb grab\n&quot;</span>);</div><div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160; <a class="code" href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pointer_entered) {</div><div class="line"><a name="l02546"></a><span class="lineno"> 2546</span>&#160;<span class="preprocessor">#if DEBUG_KB_GRABBING</span></div><div class="line"><a name="l02547"></a><span class="lineno"> 2547</span>&#160; printf(<span class="stringliteral">&quot;DEBUG_KB_GRABBING: requesting also pointer grab, because of pointer_entered\n&quot;</span>);</div><div class="line"><a name="l02548"></a><span class="lineno"> 2548</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02549"></a><span class="lineno"> 2549</span>&#160; <a class="code" href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l02550"></a><span class="lineno"> 2550</span>&#160; }</div><div class="line"><a name="l02551"></a><span class="lineno"> 2551</span>&#160; }</div><div class="line"><a name="l02552"></a><span class="lineno"> 2552</span>&#160;}</div><div class="line"><a name="l02553"></a><span class="lineno"> 2553</span>&#160;</div><div class="line"><a name="l02554"></a><span class="lineno"><a class="line" href="rcw_8c.html#a010af24147287ef89f605e71ef315475"> 2554</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw_focus_out</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>&#160;{</div><div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02558"></a><span class="lineno"> 2558</span>&#160;</div><div class="line"><a name="l02559"></a><span class="lineno"> 2559</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnwin);</div><div class="line"><a name="l02560"></a><span class="lineno"> 2560</span>&#160;</div><div class="line"><a name="l02561"></a><span class="lineno"> 2561</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;hostkey_activated = FALSE;</div><div class="line"><a name="l02562"></a><span class="lineno"> 2562</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l02563"></a><span class="lineno"> 2563</span>&#160;</div><div class="line"><a name="l02564"></a><span class="lineno"> 2564</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_SCROLLED_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>))</div><div class="line"><a name="l02565"></a><span class="lineno"> 2565</span>&#160; <a class="code" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a>(REMMINA_SCROLLED_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>));</div><div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>&#160;</div><div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a> &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>)</div><div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l02569"></a><span class="lineno"> 2569</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>, 0);</div><div class="line"><a name="l02570"></a><span class="lineno"> 2570</span>&#160;}</div><div class="line"><a name="l02571"></a><span class="lineno"> 2571</span>&#160;</div><div class="line"><a name="l02572"></a><span class="lineno"> 2572</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l02573"></a><span class="lineno"><a class="line" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18"> 2573</a></span>&#160;<a class="code" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw_floating_toolbar_hide</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02574"></a><span class="lineno"> 2574</span>&#160;{</div><div class="line"><a name="l02575"></a><span class="lineno"> 2575</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02576"></a><span class="lineno"> 2576</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02577"></a><span class="lineno"> 2577</span>&#160; priv-&gt;hidetb_eventsource = 0;</div><div class="line"><a name="l02578"></a><span class="lineno"> 2578</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, FALSE);</div><div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>&#160;}</div><div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>&#160;</div><div class="line"><a name="l02582"></a><span class="lineno"><a class="line" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758"> 2582</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw_floating_toolbar_on_scroll</a>(GtkWidget *widget, GdkEventScroll *event,</div><div class="line"><a name="l02583"></a><span class="lineno"> 2583</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02584"></a><span class="lineno"> 2584</span>&#160;{</div><div class="line"><a name="l02585"></a><span class="lineno"> 2585</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02586"></a><span class="lineno"> 2586</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02587"></a><span class="lineno"> 2587</span>&#160;</div><div class="line"><a name="l02588"></a><span class="lineno"> 2588</span>&#160; <span class="keywordtype">int</span> opacity;</div><div class="line"><a name="l02589"></a><span class="lineno"> 2589</span>&#160;</div><div class="line"><a name="l02590"></a><span class="lineno"> 2590</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l02591"></a><span class="lineno"> 2591</span>&#160; <span class="keywordflow">if</span> (!cnnobj)</div><div class="line"><a name="l02592"></a><span class="lineno"> 2592</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02593"></a><span class="lineno"> 2593</span>&#160;</div><div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>&#160; opacity = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, 0);</div><div class="line"><a name="l02595"></a><span class="lineno"> 2595</span>&#160; <span class="keywordflow">switch</span> (event-&gt;direction) {</div><div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_UP:</div><div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>&#160; <span class="keywordflow">if</span> (opacity &gt; 0) {</div><div class="line"><a name="l02598"></a><span class="lineno"> 2598</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, opacity - 1);</div><div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>&#160; <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(cnnwin);</div><div class="line"><a name="l02600"></a><span class="lineno"> 2600</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02601"></a><span class="lineno"> 2601</span>&#160; }</div><div class="line"><a name="l02602"></a><span class="lineno"> 2602</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02603"></a><span class="lineno"> 2603</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_DOWN:</div><div class="line"><a name="l02604"></a><span class="lineno"> 2604</span>&#160; <span class="keywordflow">if</span> (opacity &lt; TOOLBAR_OPACITY_LEVEL) {</div><div class="line"><a name="l02605"></a><span class="lineno"> 2605</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, opacity + 1);</div><div class="line"><a name="l02606"></a><span class="lineno"> 2606</span>&#160; <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(cnnwin);</div><div class="line"><a name="l02607"></a><span class="lineno"> 2607</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02608"></a><span class="lineno"> 2608</span>&#160; }</div><div class="line"><a name="l02609"></a><span class="lineno"> 2609</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02610"></a><span class="lineno"> 2610</span>&#160;<span class="preprocessor">#ifdef GDK_SCROLL_SMOOTH</span></div><div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_SMOOTH:</div><div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &lt; 0 &amp;&amp; opacity &gt; 0) {</div><div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, opacity - 1);</div><div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>&#160; <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(cnnwin);</div><div class="line"><a name="l02615"></a><span class="lineno"> 2615</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02616"></a><span class="lineno"> 2616</span>&#160; }</div><div class="line"><a name="l02617"></a><span class="lineno"> 2617</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &gt; 0 &amp;&amp; opacity &lt; TOOLBAR_OPACITY_LEVEL) {</div><div class="line"><a name="l02618"></a><span class="lineno"> 2618</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;toolbar_opacity&quot;</span>, opacity + 1);</div><div class="line"><a name="l02619"></a><span class="lineno"> 2619</span>&#160; <a class="code" href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a>(cnnwin);</div><div class="line"><a name="l02620"></a><span class="lineno"> 2620</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02621"></a><span class="lineno"> 2621</span>&#160; }</div><div class="line"><a name="l02622"></a><span class="lineno"> 2622</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02626"></a><span class="lineno"> 2626</span>&#160; }</div><div class="line"><a name="l02627"></a><span class="lineno"> 2627</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02628"></a><span class="lineno"> 2628</span>&#160;}</div><div class="line"><a name="l02629"></a><span class="lineno"> 2629</span>&#160;</div><div class="line"><a name="l02630"></a><span class="lineno"><a class="line" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51"> 2630</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw_after_configure_scrolled</a>(gpointer user_data)</div><div class="line"><a name="l02631"></a><span class="lineno"> 2631</span>&#160;{</div><div class="line"><a name="l02632"></a><span class="lineno"> 2632</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02633"></a><span class="lineno"> 2633</span>&#160; gint width, height;</div><div class="line"><a name="l02634"></a><span class="lineno"> 2634</span>&#160; GdkWindowState s;</div><div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>&#160; gint ipg, npages;</div><div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02637"></a><span class="lineno"> 2637</span>&#160;</div><div class="line"><a name="l02638"></a><span class="lineno"> 2638</span>&#160; cnnobj = (<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *)user_data;</div><div class="line"><a name="l02639"></a><span class="lineno"> 2639</span>&#160;</div><div class="line"><a name="l02640"></a><span class="lineno"> 2640</span>&#160; <span class="keywordflow">if</span> (!cnnobj || !cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)</div><div class="line"><a name="l02641"></a><span class="lineno"> 2641</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02642"></a><span class="lineno"> 2642</span>&#160;</div><div class="line"><a name="l02643"></a><span class="lineno"> 2643</span>&#160; s = gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)));</div><div class="line"><a name="l02644"></a><span class="lineno"> 2644</span>&#160;</div><div class="line"><a name="l02645"></a><span class="lineno"> 2645</span>&#160;</div><div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>&#160; <span class="comment">/* Changed window_maximize, window_width and window_height for all</span></div><div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>&#160;<span class="comment"> * connections inside the notebook */</span></div><div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>&#160; npages = gtk_notebook_get_n_pages(GTK_NOTEBOOK(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook));</div><div class="line"><a name="l02649"></a><span class="lineno"> 2649</span>&#160; <span class="keywordflow">for</span> (ipg = 0; ipg &lt; npages; ipg++) {</div><div class="line"><a name="l02650"></a><span class="lineno"> 2650</span>&#160; cnnobj = g_object_get_data(</div><div class="line"><a name="l02651"></a><span class="lineno"> 2651</span>&#160; G_OBJECT(gtk_notebook_get_nth_page(GTK_NOTEBOOK(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook), ipg)),</div><div class="line"><a name="l02652"></a><span class="lineno"> 2652</span>&#160; <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l02653"></a><span class="lineno"> 2653</span>&#160; <span class="keywordflow">if</span> (s &amp; GDK_WINDOW_STATE_MAXIMIZED) {</div><div class="line"><a name="l02654"></a><span class="lineno"> 2654</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, TRUE);</div><div class="line"><a name="l02655"></a><span class="lineno"> 2655</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02656"></a><span class="lineno"> 2656</span>&#160; gtk_window_get_size(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>), &amp;width, &amp;height);</div><div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_width&quot;</span>, width);</div><div class="line"><a name="l02658"></a><span class="lineno"> 2658</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_height&quot;</span>, height);</div><div class="line"><a name="l02659"></a><span class="lineno"> 2659</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, FALSE);</div><div class="line"><a name="l02660"></a><span class="lineno"> 2660</span>&#160; }</div><div class="line"><a name="l02661"></a><span class="lineno"> 2661</span>&#160; }</div><div class="line"><a name="l02662"></a><span class="lineno"> 2662</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;acs_eventsourceid = 0;</div><div class="line"><a name="l02663"></a><span class="lineno"> 2663</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02664"></a><span class="lineno"> 2664</span>&#160;}</div><div class="line"><a name="l02665"></a><span class="lineno"> 2665</span>&#160;</div><div class="line"><a name="l02666"></a><span class="lineno"><a class="line" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823"> 2666</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw_on_configure</a>(GtkWidget *widget, GdkEventConfigure *event,</div><div class="line"><a name="l02667"></a><span class="lineno"> 2667</span>&#160; gpointer data)</div><div class="line"><a name="l02668"></a><span class="lineno"> 2668</span>&#160;{</div><div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02670"></a><span class="lineno"> 2670</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l02671"></a><span class="lineno"> 2671</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02672"></a><span class="lineno"> 2672</span>&#160;</div><div class="line"><a name="l02673"></a><span class="lineno"> 2673</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l02674"></a><span class="lineno"> 2674</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02675"></a><span class="lineno"> 2675</span>&#160;</div><div class="line"><a name="l02676"></a><span class="lineno"> 2676</span>&#160; cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)widget;</div><div class="line"><a name="l02677"></a><span class="lineno"> 2677</span>&#160;</div><div class="line"><a name="l02678"></a><span class="lineno"> 2678</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02679"></a><span class="lineno"> 2679</span>&#160;</div><div class="line"><a name="l02680"></a><span class="lineno"> 2680</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;acs_eventsourceid) {</div><div class="line"><a name="l02681"></a><span class="lineno"> 2681</span>&#160; g_source_remove(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;acs_eventsourceid);</div><div class="line"><a name="l02682"></a><span class="lineno"> 2682</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;acs_eventsourceid = 0;</div><div class="line"><a name="l02683"></a><span class="lineno"> 2683</span>&#160; }</div><div class="line"><a name="l02684"></a><span class="lineno"> 2684</span>&#160;</div><div class="line"><a name="l02685"></a><span class="lineno"> 2685</span>&#160; <span class="keywordflow">if</span> (gtk_widget_get_window(GTK_WIDGET(cnnwin))</div><div class="line"><a name="l02686"></a><span class="lineno"> 2686</span>&#160; &amp;&amp; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l02687"></a><span class="lineno"> 2687</span>&#160; <span class="comment">/* Under Gnome shell we receive this configure_event BEFORE a window</span></div><div class="line"><a name="l02688"></a><span class="lineno"> 2688</span>&#160;<span class="comment"> * is really unmaximized, so we must read its new state and dimensions</span></div><div class="line"><a name="l02689"></a><span class="lineno"> 2689</span>&#160;<span class="comment"> * later, not now */</span></div><div class="line"><a name="l02690"></a><span class="lineno"> 2690</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;acs_eventsourceid = g_timeout_add(500, <a class="code" href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw_after_configure_scrolled</a>, cnnobj);</div><div class="line"><a name="l02691"></a><span class="lineno"> 2691</span>&#160;</div><div class="line"><a name="l02692"></a><span class="lineno"> 2692</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l02693"></a><span class="lineno"> 2693</span>&#160; <span class="comment">/* Notify window of change so that scroll border can be hidden or shown if needed */</span></div><div class="line"><a name="l02694"></a><span class="lineno"> 2694</span>&#160; <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(cnnobj);</div><div class="line"><a name="l02695"></a><span class="lineno"> 2695</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02696"></a><span class="lineno"> 2696</span>&#160;}</div><div class="line"><a name="l02697"></a><span class="lineno"> 2697</span>&#160;</div><div class="line"><a name="l02698"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27"> 2698</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw_update_pin</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02699"></a><span class="lineno"> 2699</span>&#160;{</div><div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>&#160; <span class="keywordflow">if</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pin_down)</div><div class="line"><a name="l02702"></a><span class="lineno"> 2702</span>&#160; gtk_button_set_image(GTK_BUTTON(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pin_button),</div><div class="line"><a name="l02703"></a><span class="lineno"> 2703</span>&#160; gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-pin-down-symbolic&quot;</span>, GTK_ICON_SIZE_MENU));</div><div class="line"><a name="l02704"></a><span class="lineno"> 2704</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02705"></a><span class="lineno"> 2705</span>&#160; gtk_button_set_image(GTK_BUTTON(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pin_button),</div><div class="line"><a name="l02706"></a><span class="lineno"> 2706</span>&#160; gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-pin-up-symbolic&quot;</span>, GTK_ICON_SIZE_MENU));</div><div class="line"><a name="l02707"></a><span class="lineno"> 2707</span>&#160;}</div><div class="line"><a name="l02708"></a><span class="lineno"> 2708</span>&#160;</div><div class="line"><a name="l02709"></a><span class="lineno"><a class="line" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2"> 2709</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw_toolbar_pin</a>(GtkWidget *widget, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02710"></a><span class="lineno"> 2710</span>&#160;{</div><div class="line"><a name="l02711"></a><span class="lineno"> 2711</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a> = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pin_down = !cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;pin_down;</div><div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l02714"></a><span class="lineno"> 2714</span>&#160; <a class="code" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw_update_pin</a>(cnnwin);</div><div class="line"><a name="l02715"></a><span class="lineno"> 2715</span>&#160;}</div><div class="line"><a name="l02716"></a><span class="lineno"> 2716</span>&#160;</div><div class="line"><a name="l02717"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e"> 2717</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw_create_floating_toolbar</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gint mode)</div><div class="line"><a name="l02718"></a><span class="lineno"> 2718</span>&#160;{</div><div class="line"><a name="l02719"></a><span class="lineno"> 2719</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02720"></a><span class="lineno"> 2720</span>&#160;</div><div class="line"><a name="l02721"></a><span class="lineno"> 2721</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02722"></a><span class="lineno"> 2722</span>&#160; GtkWidget *ftb_widget;</div><div class="line"><a name="l02723"></a><span class="lineno"> 2723</span>&#160; GtkWidget *vbox;</div><div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l02725"></a><span class="lineno"> 2725</span>&#160; GtkWidget *label;</div><div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>&#160; GtkWidget *pinbutton;</div><div class="line"><a name="l02727"></a><span class="lineno"> 2727</span>&#160; GtkWidget *tb;</div><div class="line"><a name="l02728"></a><span class="lineno"> 2728</span>&#160;</div><div class="line"><a name="l02729"></a><span class="lineno"> 2729</span>&#160;</div><div class="line"><a name="l02730"></a><span class="lineno"> 2730</span>&#160; <span class="comment">/* A widget to be used for GtkOverlay for GTK &gt;= 3.10 */</span></div><div class="line"><a name="l02731"></a><span class="lineno"> 2731</span>&#160; ftb_widget = gtk_event_box_new();</div><div class="line"><a name="l02732"></a><span class="lineno"> 2732</span>&#160;</div><div class="line"><a name="l02733"></a><span class="lineno"> 2733</span>&#160; vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l02734"></a><span class="lineno"> 2734</span>&#160; gtk_widget_show(vbox);</div><div class="line"><a name="l02735"></a><span class="lineno"> 2735</span>&#160;</div><div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>&#160; gtk_container_add(GTK_CONTAINER(ftb_widget), vbox);</div><div class="line"><a name="l02737"></a><span class="lineno"> 2737</span>&#160;</div><div class="line"><a name="l02738"></a><span class="lineno"> 2738</span>&#160; tb = <a class="code" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a>(cnnwin, mode);</div><div class="line"><a name="l02739"></a><span class="lineno"> 2739</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l02740"></a><span class="lineno"> 2740</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l02741"></a><span class="lineno"> 2741</span>&#160;</div><div class="line"><a name="l02742"></a><span class="lineno"> 2742</span>&#160;</div><div class="line"><a name="l02743"></a><span class="lineno"> 2743</span>&#160; <span class="comment">/* The pin button */</span></div><div class="line"><a name="l02744"></a><span class="lineno"> 2744</span>&#160; pinbutton = gtk_button_new();</div><div class="line"><a name="l02745"></a><span class="lineno"> 2745</span>&#160; gtk_widget_show(pinbutton);</div><div class="line"><a name="l02746"></a><span class="lineno"> 2746</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), pinbutton, FALSE, FALSE, 0);</div><div class="line"><a name="l02747"></a><span class="lineno"> 2747</span>&#160; gtk_button_set_relief(GTK_BUTTON(pinbutton), GTK_RELIEF_NONE);</div><div class="line"><a name="l02748"></a><span class="lineno"> 2748</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l02749"></a><span class="lineno"> 2749</span>&#160; gtk_widget_set_focus_on_click(GTK_WIDGET(pinbutton), FALSE);</div><div class="line"><a name="l02750"></a><span class="lineno"> 2750</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02751"></a><span class="lineno"> 2751</span>&#160; gtk_button_set_focus_on_click(GTK_BUTTON(pinbutton), FALSE);</div><div class="line"><a name="l02752"></a><span class="lineno"> 2752</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02753"></a><span class="lineno"> 2753</span>&#160; gtk_widget_set_name(pinbutton, <span class="stringliteral">&quot;remmina-pin-button&quot;</span>);</div><div class="line"><a name="l02754"></a><span class="lineno"> 2754</span>&#160; g_signal_connect(G_OBJECT(pinbutton), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw_toolbar_pin</a>), cnnwin);</div><div class="line"><a name="l02755"></a><span class="lineno"> 2755</span>&#160; priv-&gt;pin_button = pinbutton;</div><div class="line"><a name="l02756"></a><span class="lineno"> 2756</span>&#160; priv-&gt;pin_down = remmina_pref.<a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a>;</div><div class="line"><a name="l02757"></a><span class="lineno"> 2757</span>&#160; <a class="code" href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw_update_pin</a>(cnnwin);</div><div class="line"><a name="l02758"></a><span class="lineno"> 2758</span>&#160;</div><div class="line"><a name="l02759"></a><span class="lineno"> 2759</span>&#160;</div><div class="line"><a name="l02760"></a><span class="lineno"> 2760</span>&#160; label = gtk_label_new(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l02761"></a><span class="lineno"> 2761</span>&#160; gtk_label_set_max_width_chars(GTK_LABEL(label), 50);</div><div class="line"><a name="l02762"></a><span class="lineno"> 2762</span>&#160; gtk_widget_show(label);</div><div class="line"><a name="l02763"></a><span class="lineno"> 2763</span>&#160;</div><div class="line"><a name="l02764"></a><span class="lineno"> 2764</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, 0);</div><div class="line"><a name="l02765"></a><span class="lineno"> 2765</span>&#160;</div><div class="line"><a name="l02766"></a><span class="lineno"> 2766</span>&#160; priv-&gt;floating_toolbar_label = label;</div><div class="line"><a name="l02767"></a><span class="lineno"> 2767</span>&#160;</div><div class="line"><a name="l02768"></a><span class="lineno"> 2768</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> == <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a>) {</div><div class="line"><a name="l02769"></a><span class="lineno"> 2769</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);</div><div class="line"><a name="l02770"></a><span class="lineno"> 2770</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), tb, FALSE, FALSE, 0);</div><div class="line"><a name="l02771"></a><span class="lineno"> 2771</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02772"></a><span class="lineno"> 2772</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), tb, FALSE, FALSE, 0);</div><div class="line"><a name="l02773"></a><span class="lineno"> 2773</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);</div><div class="line"><a name="l02774"></a><span class="lineno"> 2774</span>&#160; }</div><div class="line"><a name="l02775"></a><span class="lineno"> 2775</span>&#160;</div><div class="line"><a name="l02776"></a><span class="lineno"> 2776</span>&#160; priv-&gt;floating_toolbar_widget = ftb_widget;</div><div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>&#160; gtk_widget_show(ftb_widget);</div><div class="line"><a name="l02778"></a><span class="lineno"> 2778</span>&#160;}</div><div class="line"><a name="l02779"></a><span class="lineno"> 2779</span>&#160;</div><div class="line"><a name="l02780"></a><span class="lineno"><a class="line" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03"> 2780</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw_toolbar_place_signal</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, gpointer data)</div><div class="line"><a name="l02781"></a><span class="lineno"> 2781</span>&#160;{</div><div class="line"><a name="l02782"></a><span class="lineno"> 2782</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02783"></a><span class="lineno"> 2783</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l02784"></a><span class="lineno"> 2784</span>&#160;</div><div class="line"><a name="l02785"></a><span class="lineno"> 2785</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l02786"></a><span class="lineno"> 2786</span>&#160; <span class="comment">/* Detach old toolbar widget and reattach in new position in the grid */</span></div><div class="line"><a name="l02787"></a><span class="lineno"> 2787</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolbar &amp;&amp; priv-&gt;grid) {</div><div class="line"><a name="l02788"></a><span class="lineno"> 2788</span>&#160; g_object_ref(priv-&gt;toolbar);</div><div class="line"><a name="l02789"></a><span class="lineno"> 2789</span>&#160; gtk_container_remove(GTK_CONTAINER(priv-&gt;grid), priv-&gt;toolbar);</div><div class="line"><a name="l02790"></a><span class="lineno"> 2790</span>&#160; <a class="code" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a>(GTK_TOOLBAR(priv-&gt;toolbar), GTK_GRID(priv-&gt;grid), GTK_WIDGET(priv-&gt;notebook), remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a>);</div><div class="line"><a name="l02791"></a><span class="lineno"> 2791</span>&#160; g_object_unref(priv-&gt;toolbar);</div><div class="line"><a name="l02792"></a><span class="lineno"> 2792</span>&#160; }</div><div class="line"><a name="l02793"></a><span class="lineno"> 2793</span>&#160;}</div><div class="line"><a name="l02794"></a><span class="lineno"> 2794</span>&#160;</div><div class="line"><a name="l02795"></a><span class="lineno"> 2795</span>&#160;</div><div class="line"><a name="l02796"></a><span class="lineno"><a class="line" href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd"> 2796</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd">rcw_init</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>&#160;{</div><div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l02800"></a><span class="lineno"> 2800</span>&#160;</div><div class="line"><a name="l02801"></a><span class="lineno"> 2801</span>&#160; priv = g_new0(<a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a>, 1);</div><div class="line"><a name="l02802"></a><span class="lineno"> 2802</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a> = priv;</div><div class="line"><a name="l02803"></a><span class="lineno"> 2803</span>&#160;</div><div class="line"><a name="l02804"></a><span class="lineno"> 2804</span>&#160; priv-&gt;view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>;</div><div class="line"><a name="l02805"></a><span class="lineno"> 2805</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="l02806"></a><span class="lineno"> 2806</span>&#160; priv-&gt;view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l02807"></a><span class="lineno"> 2807</span>&#160;</div><div class="line"><a name="l02808"></a><span class="lineno"> 2808</span>&#160; priv-&gt;floating_toolbar_opacity = 1.0;</div><div class="line"><a name="l02809"></a><span class="lineno"> 2809</span>&#160; priv-&gt;kbcaptured = FALSE;</div><div class="line"><a name="l02810"></a><span class="lineno"> 2810</span>&#160; priv-&gt;pointer_captured = FALSE;</div><div class="line"><a name="l02811"></a><span class="lineno"> 2811</span>&#160; priv-&gt;pointer_entered = FALSE;</div><div class="line"><a name="l02812"></a><span class="lineno"> 2812</span>&#160; priv-&gt;fss_view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l02813"></a><span class="lineno"> 2813</span>&#160; priv-&gt;ss_width = 640;</div><div class="line"><a name="l02814"></a><span class="lineno"> 2814</span>&#160; priv-&gt;ss_height = 480;</div><div class="line"><a name="l02815"></a><span class="lineno"> 2815</span>&#160; priv-&gt;ss_maximized = FALSE;</div><div class="line"><a name="l02816"></a><span class="lineno"> 2816</span>&#160;</div><div class="line"><a name="l02817"></a><span class="lineno"> 2817</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l02818"></a><span class="lineno"> 2818</span>&#160;}</div><div class="line"><a name="l02819"></a><span class="lineno"> 2819</span>&#160;</div><div class="line"><a name="l02820"></a><span class="lineno"><a class="line" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3"> 2820</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw_state_event</a>(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="line"><a name="l02821"></a><span class="lineno"> 2821</span>&#160;{</div><div class="line"><a name="l02822"></a><span class="lineno"> 2822</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>&#160;</div><div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l02825"></a><span class="lineno"> 2825</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02826"></a><span class="lineno"> 2826</span>&#160;</div><div class="line"><a name="l02827"></a><span class="lineno"> 2827</span>&#160; <span class="keywordflow">if</span> (event-&gt;changed_mask &amp; GDK_WINDOW_STATE_FOCUSED) {</div><div class="line"><a name="l02828"></a><span class="lineno"> 2828</span>&#160; <span class="keywordflow">if</span> (event-&gt;new_window_state &amp; GDK_WINDOW_STATE_FOCUSED)</div><div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>&#160; <a class="code" href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw_focus_in</a>((<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)widget);</div><div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>&#160; <a class="code" href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw_focus_out</a>((<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)widget);</div><div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>&#160; }</div><div class="line"><a name="l02833"></a><span class="lineno"> 2833</span>&#160;</div><div class="line"><a name="l02834"></a><span class="lineno"> 2834</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02835"></a><span class="lineno"> 2835</span>&#160;}</div><div class="line"><a name="l02836"></a><span class="lineno"> 2836</span>&#160;</div><div class="line"><a name="l02837"></a><span class="lineno"><a class="line" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a"> 2837</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw_map_event_fullscreen</a>(GtkWidget *widget, GdkEvent *event, gpointer data)</div><div class="line"><a name="l02838"></a><span class="lineno"> 2838</span>&#160;{</div><div class="line"><a name="l02839"></a><span class="lineno"> 2839</span>&#160; gint target_monitor;</div><div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>&#160;</div><div class="line"><a name="l02841"></a><span class="lineno"> 2841</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02842"></a><span class="lineno"> 2842</span>&#160;</div><div class="line"><a name="l02843"></a><span class="lineno"> 2843</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l02844"></a><span class="lineno"> 2844</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02845"></a><span class="lineno"> 2845</span>&#160;</div><div class="line"><a name="l02846"></a><span class="lineno"> 2846</span>&#160; target_monitor = GPOINTER_TO_INT(data);</div><div class="line"><a name="l02847"></a><span class="lineno"> 2847</span>&#160;</div><div class="line"><a name="l02848"></a><span class="lineno"> 2848</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 18, 0)</span></div><div class="line"><a name="l02849"></a><span class="lineno"> 2849</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a>) {</div><div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>&#160; <span class="keywordflow">if</span> (target_monitor == FULL_SCREEN_TARGET_MONITOR_UNDEFINED)</div><div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>&#160; gtk_window_fullscreen(GTK_WINDOW(widget));</div><div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02853"></a><span class="lineno"> 2853</span>&#160; gtk_window_fullscreen_on_monitor(GTK_WINDOW(widget), gtk_window_get_screen(GTK_WINDOW(widget)),</div><div class="line"><a name="l02854"></a><span class="lineno"> 2854</span>&#160; target_monitor);</div><div class="line"><a name="l02855"></a><span class="lineno"> 2855</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02856"></a><span class="lineno"> 2856</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Fullscreen managed by WM or by the user, as per settings&quot;</span>);</div><div class="line"><a name="l02857"></a><span class="lineno"> 2857</span>&#160; gtk_window_fullscreen(GTK_WINDOW(widget));</div><div class="line"><a name="l02858"></a><span class="lineno"> 2858</span>&#160; }</div><div class="line"><a name="l02859"></a><span class="lineno"> 2859</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l02860"></a><span class="lineno"> 2860</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Cannot fullscreen on a specific monitor, feature available from GTK 3.18&quot;</span>);</div><div class="line"><a name="l02861"></a><span class="lineno"> 2861</span>&#160; gtk_window_fullscreen(GTK_WINDOW(widget));</div><div class="line"><a name="l02862"></a><span class="lineno"> 2862</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>&#160;</div><div class="line"><a name="l02864"></a><span class="lineno"> 2864</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02865"></a><span class="lineno"> 2865</span>&#160;}</div><div class="line"><a name="l02866"></a><span class="lineno"> 2866</span>&#160;</div><div class="line"><a name="l02867"></a><span class="lineno"> 2867</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *</div><div class="line"><a name="l02868"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73"> 2868</a></span>&#160;<a class="code" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw_new</a>(gboolean fullscreen, <span class="keywordtype">int</span> full_screen_target_monitor)</div><div class="line"><a name="l02869"></a><span class="lineno"> 2869</span>&#160;{</div><div class="line"><a name="l02870"></a><span class="lineno"> 2870</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02871"></a><span class="lineno"> 2871</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l02872"></a><span class="lineno"> 2872</span>&#160;</div><div class="line"><a name="l02873"></a><span class="lineno"> 2873</span>&#160; cnnwin = RCW(g_object_new(REMMINA_TYPE_CONNECTION_WINDOW, NULL));</div><div class="line"><a name="l02874"></a><span class="lineno"> 2874</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;on_delete_confirm_mode = <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">RCW_ONDELETE_CONFIRM_IF_2_OR_MORE</a>;</div><div class="line"><a name="l02875"></a><span class="lineno"> 2875</span>&#160;</div><div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>&#160; <span class="keywordflow">if</span> (fullscreen)</div><div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>&#160; <span class="comment">/* Put the window in fullscreen after it is mapped to have it appear on the same monitor */</span></div><div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;map-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw_map_event_fullscreen</a>), GINT_TO_POINTER(full_screen_target_monitor));</div><div class="line"><a name="l02879"></a><span class="lineno"> 2879</span>&#160;</div><div class="line"><a name="l02880"></a><span class="lineno"> 2880</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(cnnwin), 0);</div><div class="line"><a name="l02881"></a><span class="lineno"> 2881</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;toolbar-place&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw_toolbar_place_signal</a>), NULL);</div><div class="line"><a name="l02882"></a><span class="lineno"> 2882</span>&#160;</div><div class="line"><a name="l02883"></a><span class="lineno"> 2883</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;delete-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw_delete_event</a>), NULL);</div><div class="line"><a name="l02884"></a><span class="lineno"> 2884</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw_destroy</a>), NULL);</div><div class="line"><a name="l02885"></a><span class="lineno"> 2885</span>&#160;</div><div class="line"><a name="l02886"></a><span class="lineno"> 2886</span>&#160; <span class="comment">/* focus-in-event and focus-out-event don’t work when keyboard is grabbed</span></div><div class="line"><a name="l02887"></a><span class="lineno"> 2887</span>&#160;<span class="comment"> * via gdk_device_grab. So we listen for window-state-event to detect focus in and focus out */</span></div><div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;window-state-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw_state_event</a>), NULL);</div><div class="line"><a name="l02889"></a><span class="lineno"> 2889</span>&#160;</div><div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;leave-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw_on_leave_notify_event</a>), NULL);</div><div class="line"><a name="l02891"></a><span class="lineno"> 2891</span>&#160;</div><div class="line"><a name="l02892"></a><span class="lineno"> 2892</span>&#160;</div><div class="line"><a name="l02893"></a><span class="lineno"> 2893</span>&#160; g_signal_connect(G_OBJECT(cnnwin), <span class="stringliteral">&quot;configure_event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw_on_configure</a>), NULL);</div><div class="line"><a name="l02894"></a><span class="lineno"> 2894</span>&#160;</div><div class="line"><a name="l02895"></a><span class="lineno"> 2895</span>&#160; <span class="keywordflow">return</span> cnnwin;</div><div class="line"><a name="l02896"></a><span class="lineno"> 2896</span>&#160;}</div><div class="line"><a name="l02897"></a><span class="lineno"> 2897</span>&#160;</div><div class="line"><a name="l02898"></a><span class="lineno"> 2898</span>&#160;<span class="comment">/* This function will be called for the first connection. A tag is set to the window so that</span></div><div class="line"><a name="l02899"></a><span class="lineno"> 2899</span>&#160;<span class="comment"> * other connections can determine if whether a new tab should be append to the same window</span></div><div class="line"><a name="l02900"></a><span class="lineno"> 2900</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l02901"></a><span class="lineno"><a class="line" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080"> 2901</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw_update_tag</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02902"></a><span class="lineno"> 2902</span>&#160;{</div><div class="line"><a name="l02903"></a><span class="lineno"> 2903</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02904"></a><span class="lineno"> 2904</span>&#160; gchar *tag;</div><div class="line"><a name="l02905"></a><span class="lineno"> 2905</span>&#160;</div><div class="line"><a name="l02906"></a><span class="lineno"> 2906</span>&#160; <span class="keywordflow">switch</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a>) {</div><div class="line"><a name="l02907"></a><span class="lineno"> 2907</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a>:</div><div class="line"><a name="l02908"></a><span class="lineno"> 2908</span>&#160; tag = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;group&quot;</span>));</div><div class="line"><a name="l02909"></a><span class="lineno"> 2909</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02910"></a><span class="lineno"> 2910</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a>:</div><div class="line"><a name="l02911"></a><span class="lineno"> 2911</span>&#160; tag = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;protocol&quot;</span>));</div><div class="line"><a name="l02912"></a><span class="lineno"> 2912</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02913"></a><span class="lineno"> 2913</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l02914"></a><span class="lineno"> 2914</span>&#160; tag = NULL;</div><div class="line"><a name="l02915"></a><span class="lineno"> 2915</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02916"></a><span class="lineno"> 2916</span>&#160; }</div><div class="line"><a name="l02917"></a><span class="lineno"> 2917</span>&#160; g_object_set_data_full(G_OBJECT(cnnwin), <span class="stringliteral">&quot;tag&quot;</span>, tag, (GDestroyNotify)g_free);</div><div class="line"><a name="l02918"></a><span class="lineno"> 2918</span>&#160;}</div><div class="line"><a name="l02919"></a><span class="lineno"> 2919</span>&#160;</div><div class="line"><a name="l02920"></a><span class="lineno"><a class="line" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3"> 2920</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l02921"></a><span class="lineno"> 2921</span>&#160;{</div><div class="line"><a name="l02922"></a><span class="lineno"> 2922</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02923"></a><span class="lineno"> 2923</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l02924"></a><span class="lineno"> 2924</span>&#160;</div><div class="line"><a name="l02925"></a><span class="lineno"> 2925</span>&#160; <span class="keywordflow">if</span> (!(cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin))) <span class="keywordflow">return</span>;</div><div class="line"><a name="l02926"></a><span class="lineno"> 2926</span>&#160;</div><div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>))</div><div class="line"><a name="l02928"></a><span class="lineno"> 2928</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l02929"></a><span class="lineno"> 2929</span>&#160;}</div><div class="line"><a name="l02930"></a><span class="lineno"> 2930</span>&#160;</div><div class="line"><a name="l02931"></a><span class="lineno"><a class="line" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2"> 2931</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a>(GtkNotebook *notebook, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02932"></a><span class="lineno"> 2932</span>&#160;{</div><div class="line"><a name="l02933"></a><span class="lineno"> 2933</span>&#160; gint i, np;</div><div class="line"><a name="l02934"></a><span class="lineno"> 2934</span>&#160; GtkWidget *found_page, *pg;</div><div class="line"><a name="l02935"></a><span class="lineno"> 2935</span>&#160;</div><div class="line"><a name="l02936"></a><span class="lineno"> 2936</span>&#160; <span class="keywordflow">if</span> (cnnobj == NULL || cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> == NULL || cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a> == NULL)</div><div class="line"><a name="l02937"></a><span class="lineno"> 2937</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l02938"></a><span class="lineno"> 2938</span>&#160; found_page = NULL;</div><div class="line"><a name="l02939"></a><span class="lineno"> 2939</span>&#160; np = gtk_notebook_get_n_pages(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook);</div><div class="line"><a name="l02940"></a><span class="lineno"> 2940</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; np; i++) {</div><div class="line"><a name="l02941"></a><span class="lineno"> 2941</span>&#160; pg = gtk_notebook_get_nth_page(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, i);</div><div class="line"><a name="l02942"></a><span class="lineno"> 2942</span>&#160; <span class="keywordflow">if</span> (g_object_get_data(G_OBJECT(pg), <span class="stringliteral">&quot;cnnobj&quot;</span>) == cnnobj) {</div><div class="line"><a name="l02943"></a><span class="lineno"> 2943</span>&#160; found_page = pg;</div><div class="line"><a name="l02944"></a><span class="lineno"> 2944</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l02945"></a><span class="lineno"> 2945</span>&#160; }</div><div class="line"><a name="l02946"></a><span class="lineno"> 2946</span>&#160; }</div><div class="line"><a name="l02947"></a><span class="lineno"> 2947</span>&#160;</div><div class="line"><a name="l02948"></a><span class="lineno"> 2948</span>&#160; <span class="keywordflow">return</span> found_page;</div><div class="line"><a name="l02949"></a><span class="lineno"> 2949</span>&#160;}</div><div class="line"><a name="l02950"></a><span class="lineno"> 2950</span>&#160;</div><div class="line"><a name="l02951"></a><span class="lineno"> 2951</span>&#160;</div><div class="line"><a name="l02952"></a><span class="lineno"><a class="line" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd"> 2952</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l02953"></a><span class="lineno"> 2953</span>&#160;{</div><div class="line"><a name="l02954"></a><span class="lineno"> 2954</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02955"></a><span class="lineno"> 2955</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l02956"></a><span class="lineno"> 2956</span>&#160; GtkWidget *page_to_remove;</div><div class="line"><a name="l02957"></a><span class="lineno"> 2957</span>&#160;</div><div class="line"><a name="l02958"></a><span class="lineno"> 2958</span>&#160; <span class="keywordflow">if</span> (cnnobj &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>) {</div><div class="line"><a name="l02959"></a><span class="lineno"> 2959</span>&#160; page_to_remove = <a class="code" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, cnnobj);</div><div class="line"><a name="l02960"></a><span class="lineno"> 2960</span>&#160; <span class="keywordflow">if</span> (page_to_remove) {</div><div class="line"><a name="l02961"></a><span class="lineno"> 2961</span>&#160; gtk_notebook_remove_page(</div><div class="line"><a name="l02962"></a><span class="lineno"> 2962</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook,</div><div class="line"><a name="l02963"></a><span class="lineno"> 2963</span>&#160; gtk_notebook_page_num(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, page_to_remove));</div><div class="line"><a name="l02964"></a><span class="lineno"> 2964</span>&#160; }</div><div class="line"><a name="l02965"></a><span class="lineno"> 2965</span>&#160; }</div><div class="line"><a name="l02966"></a><span class="lineno"> 2966</span>&#160; <span class="keywordflow">if</span> (cnnobj) {</div><div class="line"><a name="l02967"></a><span class="lineno"> 2967</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a> = NULL;</div><div class="line"><a name="l02968"></a><span class="lineno"> 2968</span>&#160; g_free(cnnobj);</div><div class="line"><a name="l02969"></a><span class="lineno"> 2969</span>&#160; }</div><div class="line"><a name="l02970"></a><span class="lineno"> 2970</span>&#160;</div><div class="line"><a name="l02971"></a><span class="lineno"> 2971</span>&#160; <a class="code" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a>);</div><div class="line"><a name="l02972"></a><span class="lineno"> 2972</span>&#160;}</div><div class="line"><a name="l02973"></a><span class="lineno"> 2973</span>&#160;</div><div class="line"><a name="l02974"></a><span class="lineno"><a class="line" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4"> 2974</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rco_on_close_button_clicked</a>(GtkButton *button, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02975"></a><span class="lineno"> 2975</span>&#160;{</div><div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02977"></a><span class="lineno"> 2977</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)) {</div><div class="line"><a name="l02978"></a><span class="lineno"> 2978</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>))</div><div class="line"><a name="l02979"></a><span class="lineno"> 2979</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l02980"></a><span class="lineno"> 2980</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l02981"></a><span class="lineno"> 2981</span>&#160; <a class="code" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l02982"></a><span class="lineno"> 2982</span>&#160; }</div><div class="line"><a name="l02983"></a><span class="lineno"> 2983</span>&#160;}</div><div class="line"><a name="l02984"></a><span class="lineno"> 2984</span>&#160;</div><div class="line"><a name="l02985"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb"> 2985</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rco_create_tab_label</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l02986"></a><span class="lineno"> 2986</span>&#160;{</div><div class="line"><a name="l02987"></a><span class="lineno"> 2987</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02988"></a><span class="lineno"> 2988</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l02989"></a><span class="lineno"> 2989</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l02990"></a><span class="lineno"> 2990</span>&#160; GtkWidget *button;</div><div class="line"><a name="l02991"></a><span class="lineno"> 2991</span>&#160;</div><div class="line"><a name="l02992"></a><span class="lineno"> 2992</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4);</div><div class="line"><a name="l02993"></a><span class="lineno"> 2993</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l02994"></a><span class="lineno"> 2994</span>&#160;</div><div class="line"><a name="l02995"></a><span class="lineno"> 2995</span>&#160; widget = gtk_image_new_from_icon_name(<a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>), GTK_ICON_SIZE_MENU);</div><div class="line"><a name="l02996"></a><span class="lineno"> 2996</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l02997"></a><span class="lineno"> 2997</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l02998"></a><span class="lineno"> 2998</span>&#160;</div><div class="line"><a name="l02999"></a><span class="lineno"> 2999</span>&#160; widget = gtk_label_new(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l03000"></a><span class="lineno"> 3000</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_CENTER);</div><div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_CENTER);</div><div class="line"><a name="l03002"></a><span class="lineno"> 3002</span>&#160;</div><div class="line"><a name="l03003"></a><span class="lineno"> 3003</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l03004"></a><span class="lineno"> 3004</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</div><div class="line"><a name="l03005"></a><span class="lineno"> 3005</span>&#160;</div><div class="line"><a name="l03006"></a><span class="lineno"> 3006</span>&#160; button = gtk_button_new(); <span class="comment">// The &quot;x&quot; to close the tab</span></div><div class="line"><a name="l03007"></a><span class="lineno"> 3007</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l03008"></a><span class="lineno"> 3008</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l03009"></a><span class="lineno"> 3009</span>&#160; gtk_widget_set_focus_on_click(GTK_WIDGET(widget), FALSE);</div><div class="line"><a name="l03010"></a><span class="lineno"> 3010</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l03011"></a><span class="lineno"> 3011</span>&#160; gtk_button_set_focus_on_click(GTK_BUTTON(button), FALSE);</div><div class="line"><a name="l03012"></a><span class="lineno"> 3012</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l03013"></a><span class="lineno"> 3013</span>&#160; gtk_widget_set_name(button, <span class="stringliteral">&quot;remmina-small-button&quot;</span>);</div><div class="line"><a name="l03014"></a><span class="lineno"> 3014</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l03015"></a><span class="lineno"> 3015</span>&#160;</div><div class="line"><a name="l03016"></a><span class="lineno"> 3016</span>&#160; widget = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;window-close&quot;</span>, GTK_ICON_SIZE_MENU);</div><div class="line"><a name="l03017"></a><span class="lineno"> 3017</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l03018"></a><span class="lineno"> 3018</span>&#160; gtk_container_add(GTK_CONTAINER(button), widget);</div><div class="line"><a name="l03019"></a><span class="lineno"> 3019</span>&#160;</div><div class="line"><a name="l03020"></a><span class="lineno"> 3020</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);</div><div class="line"><a name="l03021"></a><span class="lineno"> 3021</span>&#160;</div><div class="line"><a name="l03022"></a><span class="lineno"> 3022</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rco_on_close_button_clicked</a>), cnnobj);</div><div class="line"><a name="l03023"></a><span class="lineno"> 3023</span>&#160;</div><div class="line"><a name="l03024"></a><span class="lineno"> 3024</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;enter-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rco_enter_protocol_widget</a>), cnnobj);</div><div class="line"><a name="l03025"></a><span class="lineno"> 3025</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;leave-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rco_leave_protocol_widget</a>), cnnobj);</div><div class="line"><a name="l03026"></a><span class="lineno"> 3026</span>&#160;</div><div class="line"><a name="l03027"></a><span class="lineno"> 3027</span>&#160; <span class="keywordflow">return</span> hbox;</div><div class="line"><a name="l03028"></a><span class="lineno"> 3028</span>&#160;}</div><div class="line"><a name="l03029"></a><span class="lineno"> 3029</span>&#160;</div><div class="line"><a name="l03030"></a><span class="lineno"><a class="line" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6"> 3030</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rco_create_tab_page</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l03031"></a><span class="lineno"> 3031</span>&#160;{</div><div class="line"><a name="l03032"></a><span class="lineno"> 3032</span>&#160; GtkWidget *page;</div><div class="line"><a name="l03033"></a><span class="lineno"> 3033</span>&#160;</div><div class="line"><a name="l03034"></a><span class="lineno"> 3034</span>&#160; page = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l03035"></a><span class="lineno"> 3035</span>&#160; gtk_widget_set_name(page, <span class="stringliteral">&quot;remmina-tab-page&quot;</span>);</div><div class="line"><a name="l03036"></a><span class="lineno"> 3036</span>&#160;</div><div class="line"><a name="l03037"></a><span class="lineno"> 3037</span>&#160;</div><div class="line"><a name="l03038"></a><span class="lineno"> 3038</span>&#160; <span class="keywordflow">return</span> page;</div><div class="line"><a name="l03039"></a><span class="lineno"> 3039</span>&#160;}</div><div class="line"><a name="l03040"></a><span class="lineno"> 3040</span>&#160;</div><div class="line"><a name="l03041"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc"> 3041</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l03042"></a><span class="lineno"> 3042</span>&#160;{</div><div class="line"><a name="l03043"></a><span class="lineno"> 3043</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03044"></a><span class="lineno"> 3044</span>&#160; GtkWidget *page, *label;</div><div class="line"><a name="l03045"></a><span class="lineno"> 3045</span>&#160; GtkNotebook *notebook;</div><div class="line"><a name="l03046"></a><span class="lineno"> 3046</span>&#160;</div><div class="line"><a name="l03047"></a><span class="lineno"> 3047</span>&#160; notebook = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook;</div><div class="line"><a name="l03048"></a><span class="lineno"> 3048</span>&#160;</div><div class="line"><a name="l03049"></a><span class="lineno"> 3049</span>&#160; page = <a class="code" href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rco_create_tab_page</a>(cnnobj);</div><div class="line"><a name="l03050"></a><span class="lineno"> 3050</span>&#160; g_object_set_data(G_OBJECT(page), <span class="stringliteral">&quot;cnnobj&quot;</span>, cnnobj);</div><div class="line"><a name="l03051"></a><span class="lineno"> 3051</span>&#160; label = <a class="code" href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rco_create_tab_label</a>(cnnobj);</div><div class="line"><a name="l03052"></a><span class="lineno"> 3052</span>&#160;</div><div class="line"><a name="l03053"></a><span class="lineno"> 3053</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = cnnwin;</div><div class="line"><a name="l03054"></a><span class="lineno"> 3054</span>&#160;</div><div class="line"><a name="l03055"></a><span class="lineno"> 3055</span>&#160; gtk_notebook_append_page(notebook, page, label);</div><div class="line"><a name="l03056"></a><span class="lineno"> 3056</span>&#160; gtk_notebook_set_tab_reorderable(notebook, page, TRUE);</div><div class="line"><a name="l03057"></a><span class="lineno"> 3057</span>&#160; gtk_notebook_set_tab_detachable(notebook, page, TRUE);</div><div class="line"><a name="l03058"></a><span class="lineno"> 3058</span>&#160; <span class="comment">/* This trick prevents the tab label from being focused */</span></div><div class="line"><a name="l03059"></a><span class="lineno"> 3059</span>&#160; gtk_widget_set_can_focus(gtk_widget_get_parent(label), FALSE);</div><div class="line"><a name="l03060"></a><span class="lineno"> 3060</span>&#160;</div><div class="line"><a name="l03061"></a><span class="lineno"> 3061</span>&#160; <span class="keywordflow">if</span> (gtk_widget_get_parent(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>) != NULL)</div><div class="line"><a name="l03062"></a><span class="lineno"> 3062</span>&#160; printf(<span class="stringliteral">&quot;REMMINA WARNING in %s: scrolled_container already has a parent\n&quot;</span>, __func__);</div><div class="line"><a name="l03063"></a><span class="lineno"> 3063</span>&#160; gtk_box_pack_start(GTK_BOX(page), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>, TRUE, TRUE, 0);</div><div class="line"><a name="l03064"></a><span class="lineno"> 3064</span>&#160;</div><div class="line"><a name="l03065"></a><span class="lineno"> 3065</span>&#160; gtk_widget_show(page);</div><div class="line"><a name="l03066"></a><span class="lineno"> 3066</span>&#160;</div><div class="line"><a name="l03067"></a><span class="lineno"> 3067</span>&#160; <span class="keywordflow">return</span> page;</div><div class="line"><a name="l03068"></a><span class="lineno"> 3068</span>&#160;}</div><div class="line"><a name="l03069"></a><span class="lineno"> 3069</span>&#160;</div><div class="line"><a name="l03070"></a><span class="lineno"> 3070</span>&#160;</div><div class="line"><a name="l03071"></a><span class="lineno"><a class="line" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867"> 3071</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw_update_notebook</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03072"></a><span class="lineno"> 3072</span>&#160;{</div><div class="line"><a name="l03073"></a><span class="lineno"> 3073</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03074"></a><span class="lineno"> 3074</span>&#160; GtkNotebook *notebook;</div><div class="line"><a name="l03075"></a><span class="lineno"> 3075</span>&#160; gint n;</div><div class="line"><a name="l03076"></a><span class="lineno"> 3076</span>&#160;</div><div class="line"><a name="l03077"></a><span class="lineno"> 3077</span>&#160; notebook = GTK_NOTEBOOK(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook);</div><div class="line"><a name="l03078"></a><span class="lineno"> 3078</span>&#160;</div><div class="line"><a name="l03079"></a><span class="lineno"> 3079</span>&#160; <span class="keywordflow">switch</span> (cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode) {</div><div class="line"><a name="l03080"></a><span class="lineno"> 3080</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>:</div><div class="line"><a name="l03081"></a><span class="lineno"> 3081</span>&#160; n = gtk_notebook_get_n_pages(notebook);</div><div class="line"><a name="l03082"></a><span class="lineno"> 3082</span>&#160; gtk_notebook_set_show_tabs(notebook, remmina_pref.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a> ? TRUE : n &gt; 1);</div><div class="line"><a name="l03083"></a><span class="lineno"> 3083</span>&#160; gtk_notebook_set_show_border(notebook, remmina_pref.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a> ? TRUE : n &gt; 1);</div><div class="line"><a name="l03084"></a><span class="lineno"> 3084</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03085"></a><span class="lineno"> 3085</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l03086"></a><span class="lineno"> 3086</span>&#160; gtk_notebook_set_show_tabs(notebook, FALSE);</div><div class="line"><a name="l03087"></a><span class="lineno"> 3087</span>&#160; gtk_notebook_set_show_border(notebook, FALSE);</div><div class="line"><a name="l03088"></a><span class="lineno"> 3088</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03089"></a><span class="lineno"> 3089</span>&#160; }</div><div class="line"><a name="l03090"></a><span class="lineno"> 3090</span>&#160;}</div><div class="line"><a name="l03091"></a><span class="lineno"> 3091</span>&#160;</div><div class="line"><a name="l03092"></a><span class="lineno"><a class="line" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93"> 3092</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw_on_switch_page_finalsel</a>(gpointer user_data)</div><div class="line"><a name="l03093"></a><span class="lineno"> 3093</span>&#160;{</div><div class="line"><a name="l03094"></a><span class="lineno"> 3094</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03095"></a><span class="lineno"> 3095</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l03096"></a><span class="lineno"> 3096</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l03097"></a><span class="lineno"> 3097</span>&#160;</div><div class="line"><a name="l03098"></a><span class="lineno"> 3098</span>&#160; <span class="keywordflow">if</span> (!user_data)</div><div class="line"><a name="l03099"></a><span class="lineno"> 3099</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03100"></a><span class="lineno"> 3100</span>&#160;</div><div class="line"><a name="l03101"></a><span class="lineno"> 3101</span>&#160; cnnobj = (<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *)user_data;</div><div class="line"><a name="l03102"></a><span class="lineno"> 3102</span>&#160; <span class="keywordflow">if</span> (!cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)</div><div class="line"><a name="l03103"></a><span class="lineno"> 3103</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03104"></a><span class="lineno"> 3104</span>&#160;</div><div class="line"><a name="l03105"></a><span class="lineno"> 3105</span>&#160; priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l03106"></a><span class="lineno"> 3106</span>&#160;</div><div class="line"><a name="l03107"></a><span class="lineno"> 3107</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)) {</div><div class="line"><a name="l03108"></a><span class="lineno"> 3108</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, TRUE);</div><div class="line"><a name="l03109"></a><span class="lineno"> 3109</span>&#160; <span class="keywordflow">if</span> (!priv-&gt;hidetb_eventsource)</div><div class="line"><a name="l03110"></a><span class="lineno"> 3110</span>&#160; priv-&gt;hidetb_eventsource = g_timeout_add(TB_HIDE_TIME_TIME, (GSourceFunc)</div><div class="line"><a name="l03111"></a><span class="lineno"> 3111</span>&#160; <a class="code" href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw_floating_toolbar_hide</a>, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03112"></a><span class="lineno"> 3112</span>&#160; <a class="code" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a>(cnnobj);</div><div class="line"><a name="l03113"></a><span class="lineno"> 3113</span>&#160; <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03114"></a><span class="lineno"> 3114</span>&#160; <span class="keywordflow">if</span> (priv-&gt;view_mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l03115"></a><span class="lineno"> 3115</span>&#160; <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(cnnobj);</div><div class="line"><a name="l03116"></a><span class="lineno"> 3116</span>&#160; }</div><div class="line"><a name="l03117"></a><span class="lineno"> 3117</span>&#160; priv-&gt;spf_eventsourceid = 0;</div><div class="line"><a name="l03118"></a><span class="lineno"> 3118</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03119"></a><span class="lineno"> 3119</span>&#160;}</div><div class="line"><a name="l03120"></a><span class="lineno"> 3120</span>&#160;</div><div class="line"><a name="l03121"></a><span class="lineno"><a class="line" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b"> 3121</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw_on_switch_page</a>(GtkNotebook *notebook, GtkWidget *newpage, guint page_num,</div><div class="line"><a name="l03122"></a><span class="lineno"> 3122</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03123"></a><span class="lineno"> 3123</span>&#160;{</div><div class="line"><a name="l03124"></a><span class="lineno"> 3124</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03125"></a><span class="lineno"> 3125</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l03126"></a><span class="lineno"> 3126</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj_newpage;</div><div class="line"><a name="l03127"></a><span class="lineno"> 3127</span>&#160;</div><div class="line"><a name="l03128"></a><span class="lineno"> 3128</span>&#160; cnnobj_newpage = g_object_get_data(G_OBJECT(newpage), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l03129"></a><span class="lineno"> 3129</span>&#160; <span class="keywordflow">if</span> (priv-&gt;spf_eventsourceid)</div><div class="line"><a name="l03130"></a><span class="lineno"> 3130</span>&#160; g_source_remove(priv-&gt;spf_eventsourceid);</div><div class="line"><a name="l03131"></a><span class="lineno"> 3131</span>&#160; priv-&gt;spf_eventsourceid = g_idle_add(<a class="code" href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw_on_switch_page_finalsel</a>, cnnobj_newpage);</div><div class="line"><a name="l03132"></a><span class="lineno"> 3132</span>&#160;}</div><div class="line"><a name="l03133"></a><span class="lineno"> 3133</span>&#160;</div><div class="line"><a name="l03134"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9"> 3134</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw_on_page_added</a>(GtkNotebook *notebook, GtkWidget *child, guint page_num,</div><div class="line"><a name="l03135"></a><span class="lineno"> 3135</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03136"></a><span class="lineno"> 3136</span>&#160;{</div><div class="line"><a name="l03137"></a><span class="lineno"> 3137</span>&#160; <span class="keywordflow">if</span> (gtk_notebook_get_n_pages(GTK_NOTEBOOK(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook)) &gt; 0)</div><div class="line"><a name="l03138"></a><span class="lineno"> 3138</span>&#160; <a class="code" href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw_update_notebook</a>(cnnwin);</div><div class="line"><a name="l03139"></a><span class="lineno"> 3139</span>&#160;}</div><div class="line"><a name="l03140"></a><span class="lineno"> 3140</span>&#160;</div><div class="line"><a name="l03141"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d"> 3141</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw_on_page_removed</a>(GtkNotebook *notebook, GtkWidget *child, guint page_num,</div><div class="line"><a name="l03142"></a><span class="lineno"> 3142</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03143"></a><span class="lineno"> 3143</span>&#160;{</div><div class="line"><a name="l03144"></a><span class="lineno"> 3144</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03145"></a><span class="lineno"> 3145</span>&#160;</div><div class="line"><a name="l03146"></a><span class="lineno"> 3146</span>&#160; <span class="keywordflow">if</span> (gtk_notebook_get_n_pages(GTK_NOTEBOOK(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook)) &lt;= 0)</div><div class="line"><a name="l03147"></a><span class="lineno"> 3147</span>&#160; gtk_widget_destroy(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l03148"></a><span class="lineno"> 3148</span>&#160;}</div><div class="line"><a name="l03149"></a><span class="lineno"> 3149</span>&#160;</div><div class="line"><a name="l03150"></a><span class="lineno"> 3150</span>&#160;<span class="keyword">static</span> GtkNotebook *</div><div class="line"><a name="l03151"></a><span class="lineno"><a class="line" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f"> 3151</a></span>&#160;<a class="code" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw_on_notebook_create_window</a>(GtkNotebook *notebook, GtkWidget *page, gint x, gint y, gpointer data)</div><div class="line"><a name="l03152"></a><span class="lineno"> 3152</span>&#160;{</div><div class="line"><a name="l03153"></a><span class="lineno"> 3153</span>&#160; <span class="comment">/* This signal callback is called by GTK when a detachable tab is dropped on the root window</span></div><div class="line"><a name="l03154"></a><span class="lineno"> 3154</span>&#160;<span class="comment"> * or in an existing window */</span></div><div class="line"><a name="l03155"></a><span class="lineno"> 3155</span>&#160;</div><div class="line"><a name="l03156"></a><span class="lineno"> 3156</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03157"></a><span class="lineno"> 3157</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *srccnnwin;</div><div class="line"><a name="l03158"></a><span class="lineno"> 3158</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *dstcnnwin;</div><div class="line"><a name="l03159"></a><span class="lineno"> 3159</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l03160"></a><span class="lineno"> 3160</span>&#160; GdkWindow *window;</div><div class="line"><a name="l03161"></a><span class="lineno"> 3161</span>&#160; gchar *srctag;</div><div class="line"><a name="l03162"></a><span class="lineno"> 3162</span>&#160; gint width, height;</div><div class="line"><a name="l03163"></a><span class="lineno"> 3163</span>&#160;</div><div class="line"><a name="l03164"></a><span class="lineno"> 3164</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l03165"></a><span class="lineno"> 3165</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l03166"></a><span class="lineno"> 3166</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l03167"></a><span class="lineno"> 3167</span>&#160; GdkDeviceManager *manager;</div><div class="line"><a name="l03168"></a><span class="lineno"> 3168</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l03169"></a><span class="lineno"> 3169</span>&#160; GdkDevice *device = NULL;</div><div class="line"><a name="l03170"></a><span class="lineno"> 3170</span>&#160;</div><div class="line"><a name="l03171"></a><span class="lineno"> 3171</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l03172"></a><span class="lineno"> 3172</span>&#160; seat = gdk_display_get_default_seat(gdk_display_get_default());</div><div class="line"><a name="l03173"></a><span class="lineno"> 3173</span>&#160; device = gdk_seat_get_pointer(seat);</div><div class="line"><a name="l03174"></a><span class="lineno"> 3174</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l03175"></a><span class="lineno"> 3175</span>&#160; manager = gdk_display_get_device_manager(gdk_display_get_default());</div><div class="line"><a name="l03176"></a><span class="lineno"> 3176</span>&#160; device = gdk_device_manager_get_client_pointer(manager);</div><div class="line"><a name="l03177"></a><span class="lineno"> 3177</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l03178"></a><span class="lineno"> 3178</span>&#160;</div><div class="line"><a name="l03179"></a><span class="lineno"> 3179</span>&#160; window = gdk_device_get_window_at_position(device, &amp;x, &amp;y);</div><div class="line"><a name="l03180"></a><span class="lineno"> 3180</span>&#160; srccnnwin = RCW(gtk_widget_get_toplevel(GTK_WIDGET(notebook)));</div><div class="line"><a name="l03181"></a><span class="lineno"> 3181</span>&#160; dstcnnwin = RCW(<a class="code" href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a>(REMMINA_TYPE_CONNECTION_WINDOW, window));</div><div class="line"><a name="l03182"></a><span class="lineno"> 3182</span>&#160;</div><div class="line"><a name="l03183"></a><span class="lineno"> 3183</span>&#160; <span class="keywordflow">if</span> (srccnnwin == dstcnnwin)</div><div class="line"><a name="l03184"></a><span class="lineno"> 3184</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l03185"></a><span class="lineno"> 3185</span>&#160;</div><div class="line"><a name="l03186"></a><span class="lineno"> 3186</span>&#160; <span class="keywordflow">if</span> (gtk_notebook_get_n_pages(GTK_NOTEBOOK(srccnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook)) == 1 &amp;&amp; !dstcnnwin)</div><div class="line"><a name="l03187"></a><span class="lineno"> 3187</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l03188"></a><span class="lineno"> 3188</span>&#160;</div><div class="line"><a name="l03189"></a><span class="lineno"> 3189</span>&#160; cnnobj = (<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *)g_object_get_data(G_OBJECT(page), <span class="stringliteral">&quot;cnnobj&quot;</span>);</div><div class="line"><a name="l03190"></a><span class="lineno"> 3190</span>&#160;</div><div class="line"><a name="l03191"></a><span class="lineno"> 3191</span>&#160; <span class="keywordflow">if</span> (!dstcnnwin) {</div><div class="line"><a name="l03192"></a><span class="lineno"> 3192</span>&#160; <span class="comment">/* Drop is directed to a new rcw: create a new scrolled window to accommodate</span></div><div class="line"><a name="l03193"></a><span class="lineno"> 3193</span>&#160;<span class="comment"> * the dropped connectionand move our cnnobj there. Width and</span></div><div class="line"><a name="l03194"></a><span class="lineno"> 3194</span>&#160;<span class="comment"> * height of the new window are cloned from the current window */</span></div><div class="line"><a name="l03195"></a><span class="lineno"> 3195</span>&#160; srctag = (gchar *)g_object_get_data(G_OBJECT(srccnnwin), <span class="stringliteral">&quot;tag&quot;</span>);</div><div class="line"><a name="l03196"></a><span class="lineno"> 3196</span>&#160; gtk_window_get_size(GTK_WINDOW(srccnnwin), &amp;width, &amp;height);</div><div class="line"><a name="l03197"></a><span class="lineno"> 3197</span>&#160; dstcnnwin = <a class="code" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a>(width, height, FALSE); <span class="comment">// New dropped window is never maximized</span></div><div class="line"><a name="l03198"></a><span class="lineno"> 3198</span>&#160; g_object_set_data_full(G_OBJECT(dstcnnwin), <span class="stringliteral">&quot;tag&quot;</span>, g_strdup(srctag), (GDestroyNotify)g_free);</div><div class="line"><a name="l03199"></a><span class="lineno"> 3199</span>&#160; <span class="comment">/* when returning, GTK will move the whole tab to the new notebook.</span></div><div class="line"><a name="l03200"></a><span class="lineno"> 3200</span>&#160;<span class="comment"> * Prepare cnnobj to be hosted in the new cnnwin */</span></div><div class="line"><a name="l03201"></a><span class="lineno"> 3201</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = dstcnnwin;</div><div class="line"><a name="l03202"></a><span class="lineno"> 3202</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03203"></a><span class="lineno"> 3203</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = dstcnnwin;</div><div class="line"><a name="l03204"></a><span class="lineno"> 3204</span>&#160; }</div><div class="line"><a name="l03205"></a><span class="lineno"> 3205</span>&#160;</div><div class="line"><a name="l03206"></a><span class="lineno"> 3206</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l03207"></a><span class="lineno"> 3207</span>&#160; (<a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>)rcw_hostkey_func);</div><div class="line"><a name="l03208"></a><span class="lineno"> 3208</span>&#160;</div><div class="line"><a name="l03209"></a><span class="lineno"> 3209</span>&#160; <span class="keywordflow">return</span> GTK_NOTEBOOK(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook);</div><div class="line"><a name="l03210"></a><span class="lineno"> 3210</span>&#160;}</div><div class="line"><a name="l03211"></a><span class="lineno"> 3211</span>&#160;</div><div class="line"><a name="l03212"></a><span class="lineno"> 3212</span>&#160;<span class="keyword">static</span> GtkNotebook *</div><div class="line"><a name="l03213"></a><span class="lineno"><a class="line" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff"> 3213</a></span>&#160;<a class="code" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw_create_notebook</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03214"></a><span class="lineno"> 3214</span>&#160;{</div><div class="line"><a name="l03215"></a><span class="lineno"> 3215</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03216"></a><span class="lineno"> 3216</span>&#160; GtkNotebook *notebook;</div><div class="line"><a name="l03217"></a><span class="lineno"> 3217</span>&#160;</div><div class="line"><a name="l03218"></a><span class="lineno"> 3218</span>&#160; notebook = GTK_NOTEBOOK(gtk_notebook_new());</div><div class="line"><a name="l03219"></a><span class="lineno"> 3219</span>&#160;</div><div class="line"><a name="l03220"></a><span class="lineno"> 3220</span>&#160; gtk_notebook_set_scrollable(GTK_NOTEBOOK(notebook), TRUE);</div><div class="line"><a name="l03221"></a><span class="lineno"> 3221</span>&#160; gtk_widget_show(GTK_WIDGET(notebook));</div><div class="line"><a name="l03222"></a><span class="lineno"> 3222</span>&#160;</div><div class="line"><a name="l03223"></a><span class="lineno"> 3223</span>&#160; g_signal_connect(G_OBJECT(notebook), <span class="stringliteral">&quot;create-window&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw_on_notebook_create_window</a>), NULL);</div><div class="line"><a name="l03224"></a><span class="lineno"> 3224</span>&#160; g_signal_connect(G_OBJECT(notebook), <span class="stringliteral">&quot;switch-page&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b">rcw_on_switch_page</a>), cnnwin);</div><div class="line"><a name="l03225"></a><span class="lineno"> 3225</span>&#160; g_signal_connect(G_OBJECT(notebook), <span class="stringliteral">&quot;page-added&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw_on_page_added</a>), cnnwin);</div><div class="line"><a name="l03226"></a><span class="lineno"> 3226</span>&#160; g_signal_connect(G_OBJECT(notebook), <span class="stringliteral">&quot;page-removed&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw_on_page_removed</a>), cnnwin);</div><div class="line"><a name="l03227"></a><span class="lineno"> 3227</span>&#160; gtk_widget_set_can_focus(GTK_WIDGET(notebook), FALSE);</div><div class="line"><a name="l03228"></a><span class="lineno"> 3228</span>&#160;</div><div class="line"><a name="l03229"></a><span class="lineno"> 3229</span>&#160; <span class="keywordflow">return</span> notebook;</div><div class="line"><a name="l03230"></a><span class="lineno"> 3230</span>&#160;}</div><div class="line"><a name="l03231"></a><span class="lineno"> 3231</span>&#160;</div><div class="line"><a name="l03232"></a><span class="lineno"> 3232</span>&#160;<span class="comment">/* Create a scrolled toplevel window */</span></div><div class="line"><a name="l03233"></a><span class="lineno"><a class="line" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0"> 3233</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a>(gint width, gint height, gboolean maximize)</div><div class="line"><a name="l03234"></a><span class="lineno"> 3234</span>&#160;{</div><div class="line"><a name="l03235"></a><span class="lineno"> 3235</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03236"></a><span class="lineno"> 3236</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l03237"></a><span class="lineno"> 3237</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l03238"></a><span class="lineno"> 3238</span>&#160; GtkWidget *toolbar;</div><div class="line"><a name="l03239"></a><span class="lineno"> 3239</span>&#160; GtkNotebook *notebook;</div><div class="line"><a name="l03240"></a><span class="lineno"> 3240</span>&#160;</div><div class="line"><a name="l03241"></a><span class="lineno"> 3241</span>&#160; cnnwin = <a class="code" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw_new</a>(FALSE, 0);</div><div class="line"><a name="l03242"></a><span class="lineno"> 3242</span>&#160; gtk_widget_realize(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l03243"></a><span class="lineno"> 3243</span>&#160;</div><div class="line"><a name="l03244"></a><span class="lineno"> 3244</span>&#160; gtk_window_set_default_size(GTK_WINDOW(cnnwin), width, height);</div><div class="line"><a name="l03245"></a><span class="lineno"> 3245</span>&#160;</div><div class="line"><a name="l03246"></a><span class="lineno"> 3246</span>&#160; <span class="comment">/* Create the toolbar */</span></div><div class="line"><a name="l03247"></a><span class="lineno"> 3247</span>&#160; toolbar = <a class="code" href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a>(cnnwin, <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>);</div><div class="line"><a name="l03248"></a><span class="lineno"> 3248</span>&#160;</div><div class="line"><a name="l03249"></a><span class="lineno"> 3249</span>&#160; <span class="comment">/* Create the notebook */</span></div><div class="line"><a name="l03250"></a><span class="lineno"> 3250</span>&#160; notebook = <a class="code" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw_create_notebook</a>(cnnwin);</div><div class="line"><a name="l03251"></a><span class="lineno"> 3251</span>&#160;</div><div class="line"><a name="l03252"></a><span class="lineno"> 3252</span>&#160; <span class="comment">/* Create the grid container for toolbars+notebook and populate it */</span></div><div class="line"><a name="l03253"></a><span class="lineno"> 3253</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l03254"></a><span class="lineno"> 3254</span>&#160;</div><div class="line"><a name="l03255"></a><span class="lineno"> 3255</span>&#160;</div><div class="line"><a name="l03256"></a><span class="lineno"> 3256</span>&#160; gtk_grid_attach(GTK_GRID(grid), GTK_WIDGET(notebook), 0, 0, 1, 1);</div><div class="line"><a name="l03257"></a><span class="lineno"> 3257</span>&#160;</div><div class="line"><a name="l03258"></a><span class="lineno"> 3258</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(notebook), TRUE);</div><div class="line"><a name="l03259"></a><span class="lineno"> 3259</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(notebook), TRUE);</div><div class="line"><a name="l03260"></a><span class="lineno"> 3260</span>&#160;</div><div class="line"><a name="l03261"></a><span class="lineno"> 3261</span>&#160; <a class="code" href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a>(GTK_TOOLBAR(toolbar), GTK_GRID(grid), GTK_WIDGET(notebook), remmina_pref.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a>);</div><div class="line"><a name="l03262"></a><span class="lineno"> 3262</span>&#160;</div><div class="line"><a name="l03263"></a><span class="lineno"> 3263</span>&#160; gtk_container_add(GTK_CONTAINER(cnnwin), grid);</div><div class="line"><a name="l03264"></a><span class="lineno"> 3264</span>&#160;</div><div class="line"><a name="l03265"></a><span class="lineno"> 3265</span>&#160; <span class="comment">/* Add drag capabilities to the toolbar */</span></div><div class="line"><a name="l03266"></a><span class="lineno"> 3266</span>&#160; gtk_drag_source_set(GTK_WIDGET(toolbar), GDK_BUTTON1_MASK,</div><div class="line"><a name="l03267"></a><span class="lineno"> 3267</span>&#160; dnd_targets_tb, <span class="keyword">sizeof</span> dnd_targets_tb / <span class="keyword">sizeof</span> *dnd_targets_tb, GDK_ACTION_MOVE);</div><div class="line"><a name="l03268"></a><span class="lineno"> 3268</span>&#160; g_signal_connect_after(GTK_WIDGET(toolbar), <span class="stringliteral">&quot;drag-begin&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw_tb_drag_begin</a>), NULL);</div><div class="line"><a name="l03269"></a><span class="lineno"> 3269</span>&#160; g_signal_connect(GTK_WIDGET(toolbar), <span class="stringliteral">&quot;drag-failed&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw_tb_drag_failed</a>), cnnwin);</div><div class="line"><a name="l03270"></a><span class="lineno"> 3270</span>&#160;</div><div class="line"><a name="l03271"></a><span class="lineno"> 3271</span>&#160; <span class="comment">/* Add drop capabilities to the drop/dest target for the toolbar (the notebook) */</span></div><div class="line"><a name="l03272"></a><span class="lineno"> 3272</span>&#160; gtk_drag_dest_set(GTK_WIDGET(notebook), GTK_DEST_DEFAULT_MOTION | GTK_DEST_DEFAULT_HIGHLIGHT,</div><div class="line"><a name="l03273"></a><span class="lineno"> 3273</span>&#160; dnd_targets_tb, <span class="keyword">sizeof</span> dnd_targets_tb / <span class="keyword">sizeof</span> *dnd_targets_tb, GDK_ACTION_MOVE);</div><div class="line"><a name="l03274"></a><span class="lineno"> 3274</span>&#160; gtk_drag_dest_set_track_motion(GTK_WIDGET(notebook), TRUE);</div><div class="line"><a name="l03275"></a><span class="lineno"> 3275</span>&#160; g_signal_connect(GTK_WIDGET(notebook), <span class="stringliteral">&quot;drag-drop&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw_tb_drag_drop</a>), cnnwin);</div><div class="line"><a name="l03276"></a><span class="lineno"> 3276</span>&#160;</div><div class="line"><a name="l03277"></a><span class="lineno"> 3277</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>;</div><div class="line"><a name="l03278"></a><span class="lineno"> 3278</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;toolbar = toolbar;</div><div class="line"><a name="l03279"></a><span class="lineno"> 3279</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;grid = grid;</div><div class="line"><a name="l03280"></a><span class="lineno"> 3280</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook = notebook;</div><div class="line"><a name="l03281"></a><span class="lineno"> 3281</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_width = width;</div><div class="line"><a name="l03282"></a><span class="lineno"> 3282</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_height = height;</div><div class="line"><a name="l03283"></a><span class="lineno"> 3283</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;ss_maximized = maximize;</div><div class="line"><a name="l03284"></a><span class="lineno"> 3284</span>&#160;</div><div class="line"><a name="l03285"></a><span class="lineno"> 3285</span>&#160; <span class="comment">/* The notebook and all its child must be realized now, or a reparent will</span></div><div class="line"><a name="l03286"></a><span class="lineno"> 3286</span>&#160;<span class="comment"> * call unrealize() and will destroy a GtkSocket */</span></div><div class="line"><a name="l03287"></a><span class="lineno"> 3287</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l03288"></a><span class="lineno"> 3288</span>&#160; gtk_widget_show(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160; GtkWindowGroup * wingrp = gtk_window_group_new ();</div><div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160; gtk_window_group_add_window (wingrp, GTK_WINDOW(cnnwin));</div><div class="line"><a name="l03291"></a><span class="lineno"> 3291</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(cnnwin), NULL);</div><div class="line"><a name="l03292"></a><span class="lineno"> 3292</span>&#160;</div><div class="line"><a name="l03293"></a><span class="lineno"> 3293</span>&#160; <span class="keywordflow">if</span> (maximize)</div><div class="line"><a name="l03294"></a><span class="lineno"> 3294</span>&#160; gtk_window_maximize(GTK_WINDOW(cnnwin));</div><div class="line"><a name="l03295"></a><span class="lineno"> 3295</span>&#160;</div><div class="line"><a name="l03296"></a><span class="lineno"> 3296</span>&#160;</div><div class="line"><a name="l03297"></a><span class="lineno"> 3297</span>&#160; <a class="code" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw_set_toolbar_visibility</a>(cnnwin);</div><div class="line"><a name="l03298"></a><span class="lineno"> 3298</span>&#160;</div><div class="line"><a name="l03299"></a><span class="lineno"> 3299</span>&#160; <span class="keywordflow">return</span> cnnwin;</div><div class="line"><a name="l03300"></a><span class="lineno"> 3300</span>&#160;}</div><div class="line"><a name="l03301"></a><span class="lineno"> 3301</span>&#160;</div><div class="line"><a name="l03302"></a><span class="lineno"><a class="line" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746"> 3302</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw_create_overlay_ftb_overlay</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03303"></a><span class="lineno"> 3303</span>&#160;{</div><div class="line"><a name="l03304"></a><span class="lineno"> 3304</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03305"></a><span class="lineno"> 3305</span>&#160;</div><div class="line"><a name="l03306"></a><span class="lineno"> 3306</span>&#160; GtkWidget *revealer;</div><div class="line"><a name="l03307"></a><span class="lineno"> 3307</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv;</div><div class="line"><a name="l03308"></a><span class="lineno"> 3308</span>&#160; priv = cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l03309"></a><span class="lineno"> 3309</span>&#160;</div><div class="line"><a name="l03310"></a><span class="lineno"> 3310</span>&#160; <span class="keywordflow">if</span> (priv-&gt;overlay_ftb_overlay != NULL) {</div><div class="line"><a name="l03311"></a><span class="lineno"> 3311</span>&#160; gtk_widget_destroy(priv-&gt;overlay_ftb_overlay);</div><div class="line"><a name="l03312"></a><span class="lineno"> 3312</span>&#160; priv-&gt;overlay_ftb_overlay = NULL;</div><div class="line"><a name="l03313"></a><span class="lineno"> 3313</span>&#160; priv-&gt;revealer = NULL;</div><div class="line"><a name="l03314"></a><span class="lineno"> 3314</span>&#160; }</div><div class="line"><a name="l03315"></a><span class="lineno"> 3315</span>&#160;</div><div class="line"><a name="l03316"></a><span class="lineno"> 3316</span>&#160; <a class="code" href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw_create_floating_toolbar</a>(cnnwin, priv-&gt;fss_view_mode);</div><div class="line"><a name="l03317"></a><span class="lineno"> 3317</span>&#160;</div><div class="line"><a name="l03318"></a><span class="lineno"> 3318</span>&#160; priv-&gt;overlay_ftb_overlay = gtk_event_box_new();</div><div class="line"><a name="l03319"></a><span class="lineno"> 3319</span>&#160;</div><div class="line"><a name="l03320"></a><span class="lineno"> 3320</span>&#160; GtkWidget *vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l03321"></a><span class="lineno"> 3321</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(vbox), 0);</div><div class="line"><a name="l03322"></a><span class="lineno"> 3322</span>&#160;</div><div class="line"><a name="l03323"></a><span class="lineno"> 3323</span>&#160; GtkWidget *handle = gtk_drawing_area_new();</div><div class="line"><a name="l03324"></a><span class="lineno"> 3324</span>&#160; gtk_widget_set_size_request(handle, 4, 4);</div><div class="line"><a name="l03325"></a><span class="lineno"> 3325</span>&#160; gtk_widget_set_name(handle, <span class="stringliteral">&quot;ftb-handle&quot;</span>);</div><div class="line"><a name="l03326"></a><span class="lineno"> 3326</span>&#160;</div><div class="line"><a name="l03327"></a><span class="lineno"> 3327</span>&#160; revealer = gtk_revealer_new();</div><div class="line"><a name="l03328"></a><span class="lineno"> 3328</span>&#160;</div><div class="line"><a name="l03329"></a><span class="lineno"> 3329</span>&#160; gtk_widget_set_halign(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), GTK_ALIGN_CENTER);</div><div class="line"><a name="l03330"></a><span class="lineno"> 3330</span>&#160;</div><div class="line"><a name="l03331"></a><span class="lineno"> 3331</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> == <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a>) {</div><div class="line"><a name="l03332"></a><span class="lineno"> 3332</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), handle, FALSE, FALSE, 0);</div><div class="line"><a name="l03333"></a><span class="lineno"> 3333</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), revealer, FALSE, FALSE, 0);</div><div class="line"><a name="l03334"></a><span class="lineno"> 3334</span>&#160; gtk_revealer_set_transition_type(GTK_REVEALER(revealer), GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP);</div><div class="line"><a name="l03335"></a><span class="lineno"> 3335</span>&#160; gtk_widget_set_valign(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), GTK_ALIGN_END);</div><div class="line"><a name="l03336"></a><span class="lineno"> 3336</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03337"></a><span class="lineno"> 3337</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), revealer, FALSE, FALSE, 0);</div><div class="line"><a name="l03338"></a><span class="lineno"> 3338</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), handle, FALSE, FALSE, 0);</div><div class="line"><a name="l03339"></a><span class="lineno"> 3339</span>&#160; gtk_revealer_set_transition_type(GTK_REVEALER(revealer), GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN);</div><div class="line"><a name="l03340"></a><span class="lineno"> 3340</span>&#160; gtk_widget_set_valign(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), GTK_ALIGN_START);</div><div class="line"><a name="l03341"></a><span class="lineno"> 3341</span>&#160; }</div><div class="line"><a name="l03342"></a><span class="lineno"> 3342</span>&#160;</div><div class="line"><a name="l03343"></a><span class="lineno"> 3343</span>&#160;</div><div class="line"><a name="l03344"></a><span class="lineno"> 3344</span>&#160; gtk_container_add(GTK_CONTAINER(revealer), priv-&gt;floating_toolbar_widget);</div><div class="line"><a name="l03345"></a><span class="lineno"> 3345</span>&#160; gtk_widget_set_halign(GTK_WIDGET(revealer), GTK_ALIGN_CENTER);</div><div class="line"><a name="l03346"></a><span class="lineno"> 3346</span>&#160; gtk_widget_set_valign(GTK_WIDGET(revealer), GTK_ALIGN_START);</div><div class="line"><a name="l03347"></a><span class="lineno"> 3347</span>&#160;</div><div class="line"><a name="l03348"></a><span class="lineno"> 3348</span>&#160; priv-&gt;revealer = revealer;</div><div class="line"><a name="l03349"></a><span class="lineno"> 3349</span>&#160;</div><div class="line"><a name="l03350"></a><span class="lineno"> 3350</span>&#160; GtkWidget *fr;</div><div class="line"><a name="l03351"></a><span class="lineno"> 3351</span>&#160; fr = gtk_frame_new(NULL);</div><div class="line"><a name="l03352"></a><span class="lineno"> 3352</span>&#160; gtk_container_add(GTK_CONTAINER(priv-&gt;overlay_ftb_overlay), fr);</div><div class="line"><a name="l03353"></a><span class="lineno"> 3353</span>&#160; gtk_container_add(GTK_CONTAINER(fr), vbox);</div><div class="line"><a name="l03354"></a><span class="lineno"> 3354</span>&#160;</div><div class="line"><a name="l03355"></a><span class="lineno"> 3355</span>&#160; gtk_widget_show(vbox);</div><div class="line"><a name="l03356"></a><span class="lineno"> 3356</span>&#160; gtk_widget_show(revealer);</div><div class="line"><a name="l03357"></a><span class="lineno"> 3357</span>&#160; gtk_widget_show(handle);</div><div class="line"><a name="l03358"></a><span class="lineno"> 3358</span>&#160; gtk_widget_show(priv-&gt;overlay_ftb_overlay);</div><div class="line"><a name="l03359"></a><span class="lineno"> 3359</span>&#160; gtk_widget_show(fr);</div><div class="line"><a name="l03360"></a><span class="lineno"> 3360</span>&#160;</div><div class="line"><a name="l03361"></a><span class="lineno"> 3361</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> == <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a>)</div><div class="line"><a name="l03362"></a><span class="lineno"> 3362</span>&#160; gtk_widget_set_name(fr, <span class="stringliteral">&quot;ftbbox-lower&quot;</span>);</div><div class="line"><a name="l03363"></a><span class="lineno"> 3363</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03364"></a><span class="lineno"> 3364</span>&#160; gtk_widget_set_name(fr, <span class="stringliteral">&quot;ftbbox-upper&quot;</span>);</div><div class="line"><a name="l03365"></a><span class="lineno"> 3365</span>&#160;</div><div class="line"><a name="l03366"></a><span class="lineno"> 3366</span>&#160; gtk_overlay_add_overlay(GTK_OVERLAY(priv-&gt;overlay), priv-&gt;overlay_ftb_overlay);</div><div class="line"><a name="l03367"></a><span class="lineno"> 3367</span>&#160;</div><div class="line"><a name="l03368"></a><span class="lineno"> 3368</span>&#160; <a class="code" href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a>(cnnwin, TRUE);</div><div class="line"><a name="l03369"></a><span class="lineno"> 3369</span>&#160;</div><div class="line"><a name="l03370"></a><span class="lineno"> 3370</span>&#160; g_signal_connect(G_OBJECT(priv-&gt;overlay_ftb_overlay), <span class="stringliteral">&quot;enter-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw_floating_toolbar_on_enter</a>), cnnwin);</div><div class="line"><a name="l03371"></a><span class="lineno"> 3371</span>&#160; g_signal_connect(G_OBJECT(priv-&gt;overlay_ftb_overlay), <span class="stringliteral">&quot;scroll-event&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw_floating_toolbar_on_scroll</a>), cnnwin);</div><div class="line"><a name="l03372"></a><span class="lineno"> 3372</span>&#160; gtk_widget_add_events(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), GDK_SCROLL_MASK);</div><div class="line"><a name="l03373"></a><span class="lineno"> 3373</span>&#160;</div><div class="line"><a name="l03374"></a><span class="lineno"> 3374</span>&#160; <span class="comment">/* Add drag and drop capabilities to the source */</span></div><div class="line"><a name="l03375"></a><span class="lineno"> 3375</span>&#160; gtk_drag_source_set(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), GDK_BUTTON1_MASK,</div><div class="line"><a name="l03376"></a><span class="lineno"> 3376</span>&#160; dnd_targets_ftb, <span class="keyword">sizeof</span> dnd_targets_ftb / <span class="keyword">sizeof</span> *dnd_targets_ftb, GDK_ACTION_MOVE);</div><div class="line"><a name="l03377"></a><span class="lineno"> 3377</span>&#160; g_signal_connect_after(GTK_WIDGET(priv-&gt;overlay_ftb_overlay), <span class="stringliteral">&quot;drag-begin&quot;</span>, G_CALLBACK(rcw_ftb_drag_begin), cnnwin);</div><div class="line"><a name="l03378"></a><span class="lineno"> 3378</span>&#160;</div><div class="line"><a name="l03379"></a><span class="lineno"> 3379</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a> == <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">FLOATING_TOOLBAR_VISIBILITY_DISABLE</a>) {</div><div class="line"><a name="l03380"></a><span class="lineno"> 3380</span>&#160; <span class="comment">/* toolbar in fullscreenmode disbled, hide everityhg */</span></div><div class="line"><a name="l03381"></a><span class="lineno"> 3381</span>&#160; gtk_widget_hide(fr);</div><div class="line"><a name="l03382"></a><span class="lineno"> 3382</span>&#160; }</div><div class="line"><a name="l03383"></a><span class="lineno"> 3383</span>&#160;}</div><div class="line"><a name="l03384"></a><span class="lineno"> 3384</span>&#160;</div><div class="line"><a name="l03385"></a><span class="lineno"> 3385</span>&#160;</div><div class="line"><a name="l03386"></a><span class="lineno"><a class="line" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea"> 3386</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw_ftb_drag_drop</a>(GtkWidget *widget, GdkDragContext *context,</div><div class="line"><a name="l03387"></a><span class="lineno"> 3387</span>&#160; gint x, gint y, guint time, <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin)</div><div class="line"><a name="l03388"></a><span class="lineno"> 3388</span>&#160;{</div><div class="line"><a name="l03389"></a><span class="lineno"> 3389</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03390"></a><span class="lineno"> 3390</span>&#160; GtkAllocation wa;</div><div class="line"><a name="l03391"></a><span class="lineno"> 3391</span>&#160; gint new_floating_toolbar_placement;</div><div class="line"><a name="l03392"></a><span class="lineno"> 3392</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l03393"></a><span class="lineno"> 3393</span>&#160;</div><div class="line"><a name="l03394"></a><span class="lineno"> 3394</span>&#160; gtk_widget_get_allocation(widget, &amp;wa);</div><div class="line"><a name="l03395"></a><span class="lineno"> 3395</span>&#160;</div><div class="line"><a name="l03396"></a><span class="lineno"> 3396</span>&#160; <span class="keywordflow">if</span> (y &gt;= wa.height / 2)</div><div class="line"><a name="l03397"></a><span class="lineno"> 3397</span>&#160; new_floating_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a>;</div><div class="line"><a name="l03398"></a><span class="lineno"> 3398</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03399"></a><span class="lineno"> 3399</span>&#160; new_floating_toolbar_placement = <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a>;</div><div class="line"><a name="l03400"></a><span class="lineno"> 3400</span>&#160;</div><div class="line"><a name="l03401"></a><span class="lineno"> 3401</span>&#160; gtk_drag_finish(context, TRUE, TRUE, time);</div><div class="line"><a name="l03402"></a><span class="lineno"> 3402</span>&#160;</div><div class="line"><a name="l03403"></a><span class="lineno"> 3403</span>&#160; <span class="keywordflow">if</span> (new_floating_toolbar_placement != remmina_pref.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a>) {</div><div class="line"><a name="l03404"></a><span class="lineno"> 3404</span>&#160; <span class="comment">/* Destroy and recreate the FTB */</span></div><div class="line"><a name="l03405"></a><span class="lineno"> 3405</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> = new_floating_toolbar_placement;</div><div class="line"><a name="l03406"></a><span class="lineno"> 3406</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l03407"></a><span class="lineno"> 3407</span>&#160; <a class="code" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw_create_overlay_ftb_overlay</a>(cnnwin);</div><div class="line"><a name="l03408"></a><span class="lineno"> 3408</span>&#160; cnnobj = <a class="code" href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a>(cnnwin);</div><div class="line"><a name="l03409"></a><span class="lineno"> 3409</span>&#160; <span class="keywordflow">if</span> (cnnobj) <a class="code" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a>(cnnobj);</div><div class="line"><a name="l03410"></a><span class="lineno"> 3410</span>&#160; }</div><div class="line"><a name="l03411"></a><span class="lineno"> 3411</span>&#160;</div><div class="line"><a name="l03412"></a><span class="lineno"> 3412</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03413"></a><span class="lineno"> 3413</span>&#160;}</div><div class="line"><a name="l03414"></a><span class="lineno"> 3414</span>&#160;</div><div class="line"><a name="l03415"></a><span class="lineno"><a class="line" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a"> 3415</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw_ftb_drag_begin</a>(GtkWidget *widget, GdkDragContext *context, gpointer user_data)</div><div class="line"><a name="l03416"></a><span class="lineno"> 3416</span>&#160;{</div><div class="line"><a name="l03417"></a><span class="lineno"> 3417</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03418"></a><span class="lineno"> 3418</span>&#160;</div><div class="line"><a name="l03419"></a><span class="lineno"> 3419</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l03420"></a><span class="lineno"> 3420</span>&#160; cairo_t *cr;</div><div class="line"><a name="l03421"></a><span class="lineno"> 3421</span>&#160; GtkAllocation wa;</div><div class="line"><a name="l03422"></a><span class="lineno"> 3422</span>&#160; <span class="keywordtype">double</span> dashes[] = { 10 };</div><div class="line"><a name="l03423"></a><span class="lineno"> 3423</span>&#160;</div><div class="line"><a name="l03424"></a><span class="lineno"> 3424</span>&#160; gtk_widget_get_allocation(widget, &amp;wa);</div><div class="line"><a name="l03425"></a><span class="lineno"> 3425</span>&#160;</div><div class="line"><a name="l03426"></a><span class="lineno"> 3426</span>&#160; surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, wa.width, wa.height);</div><div class="line"><a name="l03427"></a><span class="lineno"> 3427</span>&#160; cr = cairo_create(surface);</div><div class="line"><a name="l03428"></a><span class="lineno"> 3428</span>&#160; cairo_set_source_rgb(cr, 0.6, 0.6, 0.6);</div><div class="line"><a name="l03429"></a><span class="lineno"> 3429</span>&#160; cairo_set_line_width(cr, 2);</div><div class="line"><a name="l03430"></a><span class="lineno"> 3430</span>&#160; cairo_set_dash(cr, dashes, 1, 0);</div><div class="line"><a name="l03431"></a><span class="lineno"> 3431</span>&#160; cairo_rectangle(cr, 0, 0, wa.width, wa.height);</div><div class="line"><a name="l03432"></a><span class="lineno"> 3432</span>&#160; cairo_stroke(cr);</div><div class="line"><a name="l03433"></a><span class="lineno"> 3433</span>&#160; cairo_destroy(cr);</div><div class="line"><a name="l03434"></a><span class="lineno"> 3434</span>&#160;</div><div class="line"><a name="l03435"></a><span class="lineno"> 3435</span>&#160; gtk_drag_set_icon_surface(context, surface);</div><div class="line"><a name="l03436"></a><span class="lineno"> 3436</span>&#160;}</div><div class="line"><a name="l03437"></a><span class="lineno"> 3437</span>&#160;</div><div class="line"><a name="l03438"></a><span class="lineno"><a class="line" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8"> 3438</a></span>&#160;<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(GtkWindow *old, gint view_mode)</div><div class="line"><a name="l03439"></a><span class="lineno"> 3439</span>&#160;{</div><div class="line"><a name="l03440"></a><span class="lineno"> 3440</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03441"></a><span class="lineno"> 3441</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin;</div><div class="line"><a name="l03442"></a><span class="lineno"> 3442</span>&#160; GtkNotebook *notebook;</div><div class="line"><a name="l03443"></a><span class="lineno"> 3443</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l03444"></a><span class="lineno"> 3444</span>&#160; gint n_monitors;</div><div class="line"><a name="l03445"></a><span class="lineno"> 3445</span>&#160; gint i;</div><div class="line"><a name="l03446"></a><span class="lineno"> 3446</span>&#160; GdkMonitor *old_monitor;</div><div class="line"><a name="l03447"></a><span class="lineno"> 3447</span>&#160; GdkDisplay *old_display;</div><div class="line"><a name="l03448"></a><span class="lineno"> 3448</span>&#160; GdkWindow *old_window;</div><div class="line"><a name="l03449"></a><span class="lineno"> 3449</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l03450"></a><span class="lineno"> 3450</span>&#160; gint full_screen_target_monitor;</div><div class="line"><a name="l03451"></a><span class="lineno"> 3451</span>&#160;</div><div class="line"><a name="l03452"></a><span class="lineno"> 3452</span>&#160; full_screen_target_monitor = FULL_SCREEN_TARGET_MONITOR_UNDEFINED;</div><div class="line"><a name="l03453"></a><span class="lineno"> 3453</span>&#160; <span class="keywordflow">if</span> (old) {</div><div class="line"><a name="l03454"></a><span class="lineno"> 3454</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l03455"></a><span class="lineno"> 3455</span>&#160; old_window = gtk_widget_get_window(GTK_WIDGET(old));</div><div class="line"><a name="l03456"></a><span class="lineno"> 3456</span>&#160; old_display = gdk_window_get_display(old_window);</div><div class="line"><a name="l03457"></a><span class="lineno"> 3457</span>&#160; old_monitor = gdk_display_get_monitor_at_window(old_display, old_window);</div><div class="line"><a name="l03458"></a><span class="lineno"> 3458</span>&#160; n_monitors = gdk_display_get_n_monitors(old_display);</div><div class="line"><a name="l03459"></a><span class="lineno"> 3459</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; n_monitors; ++i) {</div><div class="line"><a name="l03460"></a><span class="lineno"> 3460</span>&#160; <span class="keywordflow">if</span> (gdk_display_get_monitor(old_display, i) == old_monitor) {</div><div class="line"><a name="l03461"></a><span class="lineno"> 3461</span>&#160; full_screen_target_monitor = i;</div><div class="line"><a name="l03462"></a><span class="lineno"> 3462</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03463"></a><span class="lineno"> 3463</span>&#160; }</div><div class="line"><a name="l03464"></a><span class="lineno"> 3464</span>&#160; }</div><div class="line"><a name="l03465"></a><span class="lineno"> 3465</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l03466"></a><span class="lineno"> 3466</span>&#160; full_screen_target_monitor = gdk_screen_get_monitor_at_window(</div><div class="line"><a name="l03467"></a><span class="lineno"> 3467</span>&#160; gdk_screen_get_default(),</div><div class="line"><a name="l03468"></a><span class="lineno"> 3468</span>&#160; gtk_widget_get_window(GTK_WIDGET(old)));</div><div class="line"><a name="l03469"></a><span class="lineno"> 3469</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l03470"></a><span class="lineno"> 3470</span>&#160; }</div><div class="line"><a name="l03471"></a><span class="lineno"> 3471</span>&#160;</div><div class="line"><a name="l03472"></a><span class="lineno"> 3472</span>&#160; cnnwin = <a class="code" href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw_new</a>(TRUE, full_screen_target_monitor);</div><div class="line"><a name="l03473"></a><span class="lineno"> 3473</span>&#160; gtk_widget_set_name(GTK_WIDGET(cnnwin), <span class="stringliteral">&quot;remmina-connection-window-fullscreen&quot;</span>);</div><div class="line"><a name="l03474"></a><span class="lineno"> 3474</span>&#160; gtk_widget_realize(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l03475"></a><span class="lineno"> 3475</span>&#160;</div><div class="line"><a name="l03476"></a><span class="lineno"> 3476</span>&#160; <span class="keywordflow">if</span> (!view_mode)</div><div class="line"><a name="l03477"></a><span class="lineno"> 3477</span>&#160; view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l03478"></a><span class="lineno"> 3478</span>&#160;</div><div class="line"><a name="l03479"></a><span class="lineno"> 3479</span>&#160; notebook = <a class="code" href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw_create_notebook</a>(cnnwin);</div><div class="line"><a name="l03480"></a><span class="lineno"> 3480</span>&#160;</div><div class="line"><a name="l03481"></a><span class="lineno"> 3481</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay = gtk_overlay_new();</div><div class="line"><a name="l03482"></a><span class="lineno"> 3482</span>&#160; gtk_container_add(GTK_CONTAINER(cnnwin), cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay);</div><div class="line"><a name="l03483"></a><span class="lineno"> 3483</span>&#160; gtk_container_add(GTK_CONTAINER(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay), GTK_WIDGET(notebook));</div><div class="line"><a name="l03484"></a><span class="lineno"> 3484</span>&#160; gtk_widget_show(GTK_WIDGET(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay));</div><div class="line"><a name="l03485"></a><span class="lineno"> 3485</span>&#160;</div><div class="line"><a name="l03486"></a><span class="lineno"> 3486</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook = notebook;</div><div class="line"><a name="l03487"></a><span class="lineno"> 3487</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode = view_mode;</div><div class="line"><a name="l03488"></a><span class="lineno"> 3488</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;fss_view_mode = view_mode;</div><div class="line"><a name="l03489"></a><span class="lineno"> 3489</span>&#160;</div><div class="line"><a name="l03490"></a><span class="lineno"> 3490</span>&#160; <span class="comment">/* Create the floating toolbar */</span></div><div class="line"><a name="l03491"></a><span class="lineno"> 3491</span>&#160; <a class="code" href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw_create_overlay_ftb_overlay</a>(cnnwin);</div><div class="line"><a name="l03492"></a><span class="lineno"> 3492</span>&#160; <span class="comment">/* Add drag and drop capabilities to the drop/dest target for floating toolbar */</span></div><div class="line"><a name="l03493"></a><span class="lineno"> 3493</span>&#160; gtk_drag_dest_set(GTK_WIDGET(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay), GTK_DEST_DEFAULT_MOTION | GTK_DEST_DEFAULT_HIGHLIGHT,</div><div class="line"><a name="l03494"></a><span class="lineno"> 3494</span>&#160; dnd_targets_ftb, <span class="keyword">sizeof</span> dnd_targets_ftb / <span class="keyword">sizeof</span> *dnd_targets_ftb, GDK_ACTION_MOVE);</div><div class="line"><a name="l03495"></a><span class="lineno"> 3495</span>&#160; gtk_drag_dest_set_track_motion(GTK_WIDGET(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook), TRUE);</div><div class="line"><a name="l03496"></a><span class="lineno"> 3496</span>&#160; g_signal_connect(GTK_WIDGET(cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;overlay), <span class="stringliteral">&quot;drag-drop&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw_ftb_drag_drop</a>), cnnwin);</div><div class="line"><a name="l03497"></a><span class="lineno"> 3497</span>&#160;</div><div class="line"><a name="l03498"></a><span class="lineno"> 3498</span>&#160; gtk_widget_show(GTK_WIDGET(cnnwin));</div><div class="line"><a name="l03499"></a><span class="lineno"> 3499</span>&#160; GtkWindowGroup * wingrp = gtk_window_group_new ();</div><div class="line"><a name="l03500"></a><span class="lineno"> 3500</span>&#160; gtk_window_group_add_window (wingrp, GTK_WINDOW(cnnwin));</div><div class="line"><a name="l03501"></a><span class="lineno"> 3501</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(cnnwin), NULL);</div><div class="line"><a name="l03502"></a><span class="lineno"> 3502</span>&#160;</div><div class="line"><a name="l03503"></a><span class="lineno"> 3503</span>&#160; <span class="keywordflow">return</span> cnnwin;</div><div class="line"><a name="l03504"></a><span class="lineno"> 3504</span>&#160;}</div><div class="line"><a name="l03505"></a><span class="lineno"> 3505</span>&#160;</div><div class="line"><a name="l03506"></a><span class="lineno"><a class="line" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d"> 3506</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw_hostkey_func</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release)</div><div class="line"><a name="l03507"></a><span class="lineno"> 3507</span>&#160;{</div><div class="line"><a name="l03508"></a><span class="lineno"> 3508</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03509"></a><span class="lineno"> 3509</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l03510"></a><span class="lineno"> 3510</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l03511"></a><span class="lineno"> 3511</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l03512"></a><span class="lineno"> 3512</span>&#160; gint i;</div><div class="line"><a name="l03513"></a><span class="lineno"> 3513</span>&#160;</div><div class="line"><a name="l03514"></a><span class="lineno"> 3514</span>&#160; <span class="keywordflow">if</span> (release) {</div><div class="line"><a name="l03515"></a><span class="lineno"> 3515</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> &amp;&amp; keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>) {</div><div class="line"><a name="l03516"></a><span class="lineno"> 3516</span>&#160; priv-&gt;hostkey_activated = FALSE;</div><div class="line"><a name="l03517"></a><span class="lineno"> 3517</span>&#160; <span class="keywordflow">if</span> (priv-&gt;hostkey_used)</div><div class="line"><a name="l03518"></a><span class="lineno"> 3518</span>&#160; <span class="comment">/* hostkey pressed + something else */</span></div><div class="line"><a name="l03519"></a><span class="lineno"> 3519</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03520"></a><span class="lineno"> 3520</span>&#160; }</div><div class="line"><a name="l03521"></a><span class="lineno"> 3521</span>&#160; <span class="comment">/* If hostkey is released without pressing other keys, we should execute the</span></div><div class="line"><a name="l03522"></a><span class="lineno"> 3522</span>&#160;<span class="comment"> * shortcut key which is the same as hostkey. Be default, this is grab/ungrab</span></div><div class="line"><a name="l03523"></a><span class="lineno"> 3523</span>&#160;<span class="comment"> * keyboard */</span></div><div class="line"><a name="l03524"></a><span class="lineno"> 3524</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (priv-&gt;hostkey_activated) {</div><div class="line"><a name="l03525"></a><span class="lineno"> 3525</span>&#160; <span class="comment">/* Trap all key releases when hostkey is pressed */</span></div><div class="line"><a name="l03526"></a><span class="lineno"> 3526</span>&#160; <span class="comment">/* hostkey pressed + something else */</span></div><div class="line"><a name="l03527"></a><span class="lineno"> 3527</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03528"></a><span class="lineno"> 3528</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03529"></a><span class="lineno"> 3529</span>&#160; <span class="comment">/* Any key pressed, no hostkey */</span></div><div class="line"><a name="l03530"></a><span class="lineno"> 3530</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03531"></a><span class="lineno"> 3531</span>&#160; }</div><div class="line"><a name="l03532"></a><span class="lineno"> 3532</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> &amp;&amp; keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>) {</div><div class="line"><a name="l03534"></a><span class="lineno"> 3534</span>&#160; priv-&gt;hostkey_activated = TRUE;</div><div class="line"><a name="l03535"></a><span class="lineno"> 3535</span>&#160; priv-&gt;hostkey_used = FALSE;</div><div class="line"><a name="l03536"></a><span class="lineno"> 3536</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03537"></a><span class="lineno"> 3537</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!priv-&gt;hostkey_activated) {</div><div class="line"><a name="l03538"></a><span class="lineno"> 3538</span>&#160; <span class="comment">/* Any key pressed, no hostkey */</span></div><div class="line"><a name="l03539"></a><span class="lineno"> 3539</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03540"></a><span class="lineno"> 3540</span>&#160; }</div><div class="line"><a name="l03541"></a><span class="lineno"> 3541</span>&#160;</div><div class="line"><a name="l03542"></a><span class="lineno"> 3542</span>&#160; priv-&gt;hostkey_used = TRUE;</div><div class="line"><a name="l03543"></a><span class="lineno"> 3543</span>&#160; keyval = gdk_keyval_to_lower(keyval);</div><div class="line"><a name="l03544"></a><span class="lineno"> 3544</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Down</div><div class="line"><a name="l03545"></a><span class="lineno"> 3545</span>&#160; || keyval == GDK_KEY_Left || keyval == GDK_KEY_Right) {</div><div class="line"><a name="l03546"></a><span class="lineno"> 3546</span>&#160; GtkAdjustment *adjust;</div><div class="line"><a name="l03547"></a><span class="lineno"> 3547</span>&#160; <span class="keywordtype">int</span> pos;</div><div class="line"><a name="l03548"></a><span class="lineno"> 3548</span>&#160;</div><div class="line"><a name="l03549"></a><span class="lineno"> 3549</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a> &amp;&amp; GTK_IS_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>)) {</div><div class="line"><a name="l03550"></a><span class="lineno"> 3550</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Down)</div><div class="line"><a name="l03551"></a><span class="lineno"> 3551</span>&#160; adjust = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>));</div><div class="line"><a name="l03552"></a><span class="lineno"> 3552</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03553"></a><span class="lineno"> 3553</span>&#160; adjust = gtk_scrolled_window_get_hadjustment(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>));</div><div class="line"><a name="l03554"></a><span class="lineno"> 3554</span>&#160;</div><div class="line"><a name="l03555"></a><span class="lineno"> 3555</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Left)</div><div class="line"><a name="l03556"></a><span class="lineno"> 3556</span>&#160; pos = 0;</div><div class="line"><a name="l03557"></a><span class="lineno"> 3557</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03558"></a><span class="lineno"> 3558</span>&#160; pos = gtk_adjustment_get_upper(adjust);</div><div class="line"><a name="l03559"></a><span class="lineno"> 3559</span>&#160;</div><div class="line"><a name="l03560"></a><span class="lineno"> 3560</span>&#160; gtk_adjustment_set_value(adjust, pos);</div><div class="line"><a name="l03561"></a><span class="lineno"> 3561</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Down)</div><div class="line"><a name="l03562"></a><span class="lineno"> 3562</span>&#160; gtk_scrolled_window_set_vadjustment(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>), adjust);</div><div class="line"><a name="l03563"></a><span class="lineno"> 3563</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03564"></a><span class="lineno"> 3564</span>&#160; gtk_scrolled_window_set_hadjustment(GTK_SCROLLED_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>), adjust);</div><div class="line"><a name="l03565"></a><span class="lineno"> 3565</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (REMMINA_IS_SCROLLED_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>)) {</div><div class="line"><a name="l03566"></a><span class="lineno"> 3566</span>&#160; <a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv;</div><div class="line"><a name="l03567"></a><span class="lineno"> 3567</span>&#160; GtkWidget *child;</div><div class="line"><a name="l03568"></a><span class="lineno"> 3568</span>&#160; GdkWindow *gsvwin;</div><div class="line"><a name="l03569"></a><span class="lineno"> 3569</span>&#160; gint sz;</div><div class="line"><a name="l03570"></a><span class="lineno"> 3570</span>&#160; GtkAdjustment *adj;</div><div class="line"><a name="l03571"></a><span class="lineno"> 3571</span>&#160; gdouble value;</div><div class="line"><a name="l03572"></a><span class="lineno"> 3572</span>&#160;</div><div class="line"><a name="l03573"></a><span class="lineno"> 3573</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_BIN(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>))</div><div class="line"><a name="l03574"></a><span class="lineno"> 3574</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03575"></a><span class="lineno"> 3575</span>&#160;</div><div class="line"><a name="l03576"></a><span class="lineno"> 3576</span>&#160; gsv = REMMINA_SCROLLED_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>);</div><div class="line"><a name="l03577"></a><span class="lineno"> 3577</span>&#160; child = gtk_bin_get_child(GTK_BIN(gsv));</div><div class="line"><a name="l03578"></a><span class="lineno"> 3578</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_VIEWPORT(child))</div><div class="line"><a name="l03579"></a><span class="lineno"> 3579</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03580"></a><span class="lineno"> 3580</span>&#160;</div><div class="line"><a name="l03581"></a><span class="lineno"> 3581</span>&#160; gsvwin = gtk_widget_get_window(GTK_WIDGET(gsv));</div><div class="line"><a name="l03582"></a><span class="lineno"> 3582</span>&#160; <span class="keywordflow">if</span> (!gsv)</div><div class="line"><a name="l03583"></a><span class="lineno"> 3583</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03584"></a><span class="lineno"> 3584</span>&#160;</div><div class="line"><a name="l03585"></a><span class="lineno"> 3585</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Down) {</div><div class="line"><a name="l03586"></a><span class="lineno"> 3586</span>&#160; sz = gdk_window_get_height(gsvwin) + 2; <span class="comment">// Add 2px of black scroll border</span></div><div class="line"><a name="l03587"></a><span class="lineno"> 3587</span>&#160; adj = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE(child));</div><div class="line"><a name="l03588"></a><span class="lineno"> 3588</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03589"></a><span class="lineno"> 3589</span>&#160; sz = gdk_window_get_width(gsvwin) + 2; <span class="comment">// Add 2px of black scroll border</span></div><div class="line"><a name="l03590"></a><span class="lineno"> 3590</span>&#160; adj = gtk_scrollable_get_hadjustment(GTK_SCROLLABLE(child));</div><div class="line"><a name="l03591"></a><span class="lineno"> 3591</span>&#160; }</div><div class="line"><a name="l03592"></a><span class="lineno"> 3592</span>&#160;</div><div class="line"><a name="l03593"></a><span class="lineno"> 3593</span>&#160; <span class="keywordflow">if</span> (keyval == GDK_KEY_Up || keyval == GDK_KEY_Left)</div><div class="line"><a name="l03594"></a><span class="lineno"> 3594</span>&#160; value = 0;</div><div class="line"><a name="l03595"></a><span class="lineno"> 3595</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l03596"></a><span class="lineno"> 3596</span>&#160; value = gtk_adjustment_get_upper(GTK_ADJUSTMENT(adj)) - (gdouble)sz + 2.0;</div><div class="line"><a name="l03597"></a><span class="lineno"> 3597</span>&#160;</div><div class="line"><a name="l03598"></a><span class="lineno"> 3598</span>&#160; gtk_adjustment_set_value(GTK_ADJUSTMENT(adj), value);</div><div class="line"><a name="l03599"></a><span class="lineno"> 3599</span>&#160; }</div><div class="line"><a name="l03600"></a><span class="lineno"> 3600</span>&#160; }</div><div class="line"><a name="l03601"></a><span class="lineno"> 3601</span>&#160;</div><div class="line"><a name="l03602"></a><span class="lineno"> 3602</span>&#160; <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a>) {</div><div class="line"><a name="l03603"></a><span class="lineno"> 3603</span>&#160; <span class="keywordflow">switch</span> (priv-&gt;view_mode) {</div><div class="line"><a name="l03604"></a><span class="lineno"> 3604</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>:</div><div class="line"><a name="l03605"></a><span class="lineno"> 3605</span>&#160; <a class="code" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, priv-&gt;fss_view_mode);</div><div class="line"><a name="l03606"></a><span class="lineno"> 3606</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03607"></a><span class="lineno"> 3607</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l03608"></a><span class="lineno"> 3608</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l03609"></a><span class="lineno"> 3609</span>&#160; <a class="code" href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>);</div><div class="line"><a name="l03610"></a><span class="lineno"> 3610</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03611"></a><span class="lineno"> 3611</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l03612"></a><span class="lineno"> 3612</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03613"></a><span class="lineno"> 3613</span>&#160; }</div><div class="line"><a name="l03614"></a><span class="lineno"> 3614</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a>) {</div><div class="line"><a name="l03615"></a><span class="lineno"> 3615</span>&#160; <span class="keywordflow">if</span> (priv-&gt;toolitem_autofit &amp;&amp; gtk_widget_is_sensitive(GTK_WIDGET(priv-&gt;toolitem_autofit)))</div><div class="line"><a name="l03616"></a><span class="lineno"> 3616</span>&#160; <a class="code" href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a>(GTK_WIDGET(gp), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03617"></a><span class="lineno"> 3617</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a>) {</div><div class="line"><a name="l03618"></a><span class="lineno"> 3618</span>&#160; i = gtk_notebook_get_current_page(GTK_NOTEBOOK(priv-&gt;notebook)) + 1;</div><div class="line"><a name="l03619"></a><span class="lineno"> 3619</span>&#160; <span class="keywordflow">if</span> (i &gt;= gtk_notebook_get_n_pages(GTK_NOTEBOOK(priv-&gt;notebook)))</div><div class="line"><a name="l03620"></a><span class="lineno"> 3620</span>&#160; i = 0;</div><div class="line"><a name="l03621"></a><span class="lineno"> 3621</span>&#160; gtk_notebook_set_current_page(GTK_NOTEBOOK(priv-&gt;notebook), i);</div><div class="line"><a name="l03622"></a><span class="lineno"> 3622</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a>) {</div><div class="line"><a name="l03623"></a><span class="lineno"> 3623</span>&#160; i = gtk_notebook_get_current_page(GTK_NOTEBOOK(priv-&gt;notebook)) - 1;</div><div class="line"><a name="l03624"></a><span class="lineno"> 3624</span>&#160; <span class="keywordflow">if</span> (i &lt; 0)</div><div class="line"><a name="l03625"></a><span class="lineno"> 3625</span>&#160; i = gtk_notebook_get_n_pages(GTK_NOTEBOOK(priv-&gt;notebook)) - 1;</div><div class="line"><a name="l03626"></a><span class="lineno"> 3626</span>&#160; gtk_notebook_set_current_page(GTK_NOTEBOOK(priv-&gt;notebook), i);</div><div class="line"><a name="l03627"></a><span class="lineno"> 3627</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a>) {</div><div class="line"><a name="l03628"></a><span class="lineno"> 3628</span>&#160; <span class="keywordflow">if</span> (gtk_widget_is_sensitive(GTK_WIDGET(priv-&gt;toolitem_scale))) {</div><div class="line"><a name="l03629"></a><span class="lineno"> 3629</span>&#160; gtk_toggle_tool_button_set_active(</div><div class="line"><a name="l03630"></a><span class="lineno"> 3630</span>&#160; GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_scale),</div><div class="line"><a name="l03631"></a><span class="lineno"> 3631</span>&#160; !gtk_toggle_tool_button_get_active(</div><div class="line"><a name="l03632"></a><span class="lineno"> 3632</span>&#160; GTK_TOGGLE_TOOL_BUTTON(</div><div class="line"><a name="l03633"></a><span class="lineno"> 3633</span>&#160; priv-&gt;toolitem_scale)));</div><div class="line"><a name="l03634"></a><span class="lineno"> 3634</span>&#160; }</div><div class="line"><a name="l03635"></a><span class="lineno"> 3635</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a>) {</div><div class="line"><a name="l03636"></a><span class="lineno"> 3636</span>&#160; gtk_toggle_tool_button_set_active(</div><div class="line"><a name="l03637"></a><span class="lineno"> 3637</span>&#160; GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_grab),</div><div class="line"><a name="l03638"></a><span class="lineno"> 3638</span>&#160; !gtk_toggle_tool_button_get_active(</div><div class="line"><a name="l03639"></a><span class="lineno"> 3639</span>&#160; GTK_TOGGLE_TOOL_BUTTON(</div><div class="line"><a name="l03640"></a><span class="lineno"> 3640</span>&#160; priv-&gt;toolitem_grab)));</div><div class="line"><a name="l03641"></a><span class="lineno"> 3641</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a>) {</div><div class="line"><a name="l03642"></a><span class="lineno"> 3642</span>&#160; <a class="code" href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw_toolbar_minimize</a>(GTK_WIDGET(gp),</div><div class="line"><a name="l03643"></a><span class="lineno"> 3643</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03644"></a><span class="lineno"> 3644</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a>) {</div><div class="line"><a name="l03645"></a><span class="lineno"> 3645</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewonly&quot;</span>,</div><div class="line"><a name="l03646"></a><span class="lineno"> 3646</span>&#160; (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewonly&quot;</span>, 0)</div><div class="line"><a name="l03647"></a><span class="lineno"> 3647</span>&#160; == 0) ? 1 : 0);</div><div class="line"><a name="l03648"></a><span class="lineno"> 3648</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a>) {</div><div class="line"><a name="l03649"></a><span class="lineno"> 3649</span>&#160; <a class="code" href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw_toolbar_screenshot</a>(GTK_WIDGET(gp),</div><div class="line"><a name="l03650"></a><span class="lineno"> 3650</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03651"></a><span class="lineno"> 3651</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a>) {</div><div class="line"><a name="l03652"></a><span class="lineno"> 3652</span>&#160; <a class="code" href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rco_disconnect_current_page</a>(cnnobj);</div><div class="line"><a name="l03653"></a><span class="lineno"> 3653</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (keyval == remmina_pref.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a>) {</div><div class="line"><a name="l03654"></a><span class="lineno"> 3654</span>&#160; <span class="keywordflow">if</span> (priv-&gt;view_mode == <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>) {</div><div class="line"><a name="l03655"></a><span class="lineno"> 3655</span>&#160; remmina_pref.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a> =</div><div class="line"><a name="l03656"></a><span class="lineno"> 3656</span>&#160; !remmina_pref.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a>;</div><div class="line"><a name="l03657"></a><span class="lineno"> 3657</span>&#160; <a class="code" href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw_set_toolbar_visibility</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03658"></a><span class="lineno"> 3658</span>&#160; }</div><div class="line"><a name="l03659"></a><span class="lineno"> 3659</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03660"></a><span class="lineno"> 3660</span>&#160; <span class="keywordflow">for</span> (feature =</div><div class="line"><a name="l03661"></a><span class="lineno"> 3661</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a>(</div><div class="line"><a name="l03662"></a><span class="lineno"> 3662</span>&#160; REMMINA_PROTOCOL_WIDGET(</div><div class="line"><a name="l03663"></a><span class="lineno"> 3663</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l03664"></a><span class="lineno"> 3664</span>&#160; feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>;</div><div class="line"><a name="l03665"></a><span class="lineno"> 3665</span>&#160; feature++) {</div><div class="line"><a name="l03666"></a><span class="lineno"> 3666</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a></div><div class="line"><a name="l03667"></a><span class="lineno"> 3667</span>&#160; == <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="line"><a name="l03668"></a><span class="lineno"> 3668</span>&#160; &amp;&amp; GPOINTER_TO_UINT(</div><div class="line"><a name="l03669"></a><span class="lineno"> 3669</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>)</div><div class="line"><a name="l03670"></a><span class="lineno"> 3670</span>&#160; == keyval) {</div><div class="line"><a name="l03671"></a><span class="lineno"> 3671</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(</div><div class="line"><a name="l03672"></a><span class="lineno"> 3672</span>&#160; REMMINA_PROTOCOL_WIDGET(</div><div class="line"><a name="l03673"></a><span class="lineno"> 3673</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l03674"></a><span class="lineno"> 3674</span>&#160; feature);</div><div class="line"><a name="l03675"></a><span class="lineno"> 3675</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03676"></a><span class="lineno"> 3676</span>&#160; }</div><div class="line"><a name="l03677"></a><span class="lineno"> 3677</span>&#160; }</div><div class="line"><a name="l03678"></a><span class="lineno"> 3678</span>&#160; }</div><div class="line"><a name="l03679"></a><span class="lineno"> 3679</span>&#160; <span class="comment">/* If a keypress makes the current cnnobj to move to another window,</span></div><div class="line"><a name="l03680"></a><span class="lineno"> 3680</span>&#160;<span class="comment"> * priv is now invalid. So we can no longer use priv here */</span></div><div class="line"><a name="l03681"></a><span class="lineno"> 3681</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;hostkey_activated = FALSE;</div><div class="line"><a name="l03682"></a><span class="lineno"> 3682</span>&#160;</div><div class="line"><a name="l03683"></a><span class="lineno"> 3683</span>&#160; <span class="comment">/* Trap all key presses when hostkey is pressed */</span></div><div class="line"><a name="l03684"></a><span class="lineno"> 3684</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03685"></a><span class="lineno"> 3685</span>&#160;}</div><div class="line"><a name="l03686"></a><span class="lineno"> 3686</span>&#160;</div><div class="line"><a name="l03687"></a><span class="lineno"><a class="line" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0"> 3687</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw_find</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l03688"></a><span class="lineno"> 3688</span>&#160;{</div><div class="line"><a name="l03689"></a><span class="lineno"> 3689</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03690"></a><span class="lineno"> 3690</span>&#160; <span class="keyword">const</span> gchar *tag;</div><div class="line"><a name="l03691"></a><span class="lineno"> 3691</span>&#160;</div><div class="line"><a name="l03692"></a><span class="lineno"> 3692</span>&#160; <span class="keywordflow">switch</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a>) {</div><div class="line"><a name="l03693"></a><span class="lineno"> 3693</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a>:</div><div class="line"><a name="l03694"></a><span class="lineno"> 3694</span>&#160; tag = <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="l03695"></a><span class="lineno"> 3695</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03696"></a><span class="lineno"> 3696</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a>:</div><div class="line"><a name="l03697"></a><span class="lineno"> 3697</span>&#160; tag = <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="l03698"></a><span class="lineno"> 3698</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03699"></a><span class="lineno"> 3699</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">REMMINA_TAB_ALL</a>:</div><div class="line"><a name="l03700"></a><span class="lineno"> 3700</span>&#160; tag = NULL;</div><div class="line"><a name="l03701"></a><span class="lineno"> 3701</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03702"></a><span class="lineno"> 3702</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">REMMINA_TAB_NONE</a>:</div><div class="line"><a name="l03703"></a><span class="lineno"> 3703</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l03704"></a><span class="lineno"> 3704</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l03705"></a><span class="lineno"> 3705</span>&#160; }</div><div class="line"><a name="l03706"></a><span class="lineno"> 3706</span>&#160; <span class="keywordflow">return</span> RCW(<a class="code" href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a>(REMMINA_TYPE_CONNECTION_WINDOW, tag));</div><div class="line"><a name="l03707"></a><span class="lineno"> 3707</span>&#160;}</div><div class="line"><a name="l03708"></a><span class="lineno"> 3708</span>&#160;</div><div class="line"><a name="l03709"></a><span class="lineno"><a class="line" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9"> 3709</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw_delayed_window_present</a>(gpointer user_data)</div><div class="line"><a name="l03710"></a><span class="lineno"> 3710</span>&#160;{</div><div class="line"><a name="l03711"></a><span class="lineno"> 3711</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *)user_data;</div><div class="line"><a name="l03712"></a><span class="lineno"> 3712</span>&#160;</div><div class="line"><a name="l03713"></a><span class="lineno"> 3713</span>&#160; <span class="keywordflow">if</span> (cnnwin) {</div><div class="line"><a name="l03714"></a><span class="lineno"> 3714</span>&#160; gtk_window_present_with_time(GTK_WINDOW(cnnwin), (guint32)(g_get_monotonic_time() / 1000));</div><div class="line"><a name="l03715"></a><span class="lineno"> 3715</span>&#160; <a class="code" href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a>(cnnwin);</div><div class="line"><a name="l03716"></a><span class="lineno"> 3716</span>&#160; }</div><div class="line"><a name="l03717"></a><span class="lineno"> 3717</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;dwp_eventsourceid = 0;</div><div class="line"><a name="l03718"></a><span class="lineno"> 3718</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l03719"></a><span class="lineno"> 3719</span>&#160;}</div><div class="line"><a name="l03720"></a><span class="lineno"> 3720</span>&#160;</div><div class="line"><a name="l03721"></a><span class="lineno"><a class="line" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7"> 3721</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rco_on_connect</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l03722"></a><span class="lineno"> 3722</span>&#160;{</div><div class="line"><a name="l03723"></a><span class="lineno"> 3723</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03724"></a><span class="lineno"> 3724</span>&#160;</div><div class="line"><a name="l03725"></a><span class="lineno"> 3725</span>&#160; gchar *last_success;</div><div class="line"><a name="l03726"></a><span class="lineno"> 3726</span>&#160;</div><div class="line"><a name="l03727"></a><span class="lineno"> 3727</span>&#160; g_debug(<span class="stringliteral">&quot;Connect signal emitted&quot;</span>);</div><div class="line"><a name="l03728"></a><span class="lineno"> 3728</span>&#160; GDateTime *date = g_date_time_new_now_utc();</div><div class="line"><a name="l03729"></a><span class="lineno"> 3729</span>&#160;</div><div class="line"><a name="l03730"></a><span class="lineno"> 3730</span>&#160; <span class="comment">/* This signal handler is called by a plugin when it’s correctly connected</span></div><div class="line"><a name="l03731"></a><span class="lineno"> 3731</span>&#160;<span class="comment"> * (and authenticated) */</span></div><div class="line"><a name="l03732"></a><span class="lineno"> 3732</span>&#160;</div><div class="line"><a name="l03733"></a><span class="lineno"> 3733</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a> = TRUE;</div><div class="line"><a name="l03734"></a><span class="lineno"> 3734</span>&#160;</div><div class="line"><a name="l03735"></a><span class="lineno"> 3735</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a>(REMMINA_PROTOCOL_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>),</div><div class="line"><a name="l03736"></a><span class="lineno"> 3736</span>&#160; (<a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>)rcw_hostkey_func);</div><div class="line"><a name="l03737"></a><span class="lineno"> 3737</span>&#160;</div><div class="line"><a name="l03741"></a><span class="lineno"> 3741</span>&#160; last_success = g_strdup_printf(<span class="stringliteral">&quot;%d%02d%02d&quot;</span>,</div><div class="line"><a name="l03742"></a><span class="lineno"> 3742</span>&#160; g_date_time_get_year(date),</div><div class="line"><a name="l03743"></a><span class="lineno"> 3743</span>&#160; g_date_time_get_month(date),</div><div class="line"><a name="l03744"></a><span class="lineno"> 3744</span>&#160; g_date_time_get_day_of_month(date));</div><div class="line"><a name="l03745"></a><span class="lineno"> 3745</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>) == NULL)</div><div class="line"><a name="l03746"></a><span class="lineno"> 3746</span>&#160; <a class="code" href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a>(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;protocol&quot;</span>),</div><div class="line"><a name="l03747"></a><span class="lineno"> 3747</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l03748"></a><span class="lineno"> 3748</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a>) {</div><div class="line"><a name="l03749"></a><span class="lineno"> 3749</span>&#160; g_debug(<span class="stringliteral">&quot;Stats are allowed, we save the last successful connection date&quot;</span>);</div><div class="line"><a name="l03750"></a><span class="lineno"> 3750</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;last_success&quot;</span>, last_success);</div><div class="line"><a name="l03751"></a><span class="lineno"> 3751</span>&#160; g_debug(<span class="stringliteral">&quot;Last connection was made on %s.&quot;</span>, last_success);</div><div class="line"><a name="l03752"></a><span class="lineno"> 3752</span>&#160; }</div><div class="line"><a name="l03753"></a><span class="lineno"> 3753</span>&#160;</div><div class="line"><a name="l03754"></a><span class="lineno"> 3754</span>&#160; g_debug(<span class="stringliteral">&quot;Saving credentials&quot;</span>);</div><div class="line"><a name="l03755"></a><span class="lineno"> 3755</span>&#160; <span class="comment">/* Save credentials */</span></div><div class="line"><a name="l03756"></a><span class="lineno"> 3756</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>);</div><div class="line"><a name="l03757"></a><span class="lineno"> 3757</span>&#160;</div><div class="line"><a name="l03758"></a><span class="lineno"> 3758</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;floating_toolbar_widget)</div><div class="line"><a name="l03759"></a><span class="lineno"> 3759</span>&#160; gtk_widget_show(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;floating_toolbar_widget);</div><div class="line"><a name="l03760"></a><span class="lineno"> 3760</span>&#160;</div><div class="line"><a name="l03761"></a><span class="lineno"> 3761</span>&#160; <a class="code" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a>(cnnobj);</div><div class="line"><a name="l03762"></a><span class="lineno"> 3762</span>&#160;</div><div class="line"><a name="l03763"></a><span class="lineno"> 3763</span>&#160; g_debug(<span class="stringliteral">&quot;Trying to present the window&quot;</span>);</div><div class="line"><a name="l03764"></a><span class="lineno"> 3764</span>&#160; <span class="comment">/* Try to present window */</span></div><div class="line"><a name="l03765"></a><span class="lineno"> 3765</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;dwp_eventsourceid = g_timeout_add(200, <a class="code" href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw_delayed_window_present</a>, (gpointer)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03766"></a><span class="lineno"> 3766</span>&#160;}</div><div class="line"><a name="l03767"></a><span class="lineno"> 3767</span>&#160;</div><div class="line"><a name="l03768"></a><span class="lineno"><a class="line" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7"> 3768</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">cb_lasterror_confirmed</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</div><div class="line"><a name="l03769"></a><span class="lineno"> 3769</span>&#160;{</div><div class="line"><a name="l03770"></a><span class="lineno"> 3770</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03771"></a><span class="lineno"> 3771</span>&#160; <a class="code" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cbdata);</div><div class="line"><a name="l03772"></a><span class="lineno"> 3772</span>&#160;}</div><div class="line"><a name="l03773"></a><span class="lineno"> 3773</span>&#160;</div><div class="line"><a name="l03774"></a><span class="lineno"><a class="line" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947"> 3774</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rco_on_disconnect</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gpointer data)</div><div class="line"><a name="l03775"></a><span class="lineno"> 3775</span>&#160;{</div><div class="line"><a name="l03776"></a><span class="lineno"> 3776</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03777"></a><span class="lineno"> 3777</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l03778"></a><span class="lineno"> 3778</span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *priv = cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l03779"></a><span class="lineno"> 3779</span>&#160; GtkWidget *pparent;</div><div class="line"><a name="l03780"></a><span class="lineno"> 3780</span>&#160;</div><div class="line"><a name="l03781"></a><span class="lineno"> 3781</span>&#160; g_debug(<span class="stringliteral">&quot;Disconnect signal received on RemminaProtocolWidget&quot;</span>);</div><div class="line"><a name="l03782"></a><span class="lineno"> 3782</span>&#160; <span class="comment">/* Detach the protocol widget from the notebook now, or we risk that a</span></div><div class="line"><a name="l03783"></a><span class="lineno"> 3783</span>&#160;<span class="comment"> * window delete will destroy cnnobj-&gt;proto before we complete disconnection.</span></div><div class="line"><a name="l03784"></a><span class="lineno"> 3784</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l03785"></a><span class="lineno"> 3785</span>&#160; pparent = gtk_widget_get_parent(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l03786"></a><span class="lineno"> 3786</span>&#160; <span class="keywordflow">if</span> (pparent != NULL) {</div><div class="line"><a name="l03787"></a><span class="lineno"> 3787</span>&#160; g_object_ref(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l03788"></a><span class="lineno"> 3788</span>&#160; gtk_container_remove(GTK_CONTAINER(pparent), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l03789"></a><span class="lineno"> 3789</span>&#160; }</div><div class="line"><a name="l03790"></a><span class="lineno"> 3790</span>&#160;</div><div class="line"><a name="l03791"></a><span class="lineno"> 3791</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a> = FALSE;</div><div class="line"><a name="l03792"></a><span class="lineno"> 3792</span>&#160;</div><div class="line"><a name="l03793"></a><span class="lineno"> 3793</span>&#160; <span class="keywordflow">if</span> (remmina_pref.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a>) {</div><div class="line"><a name="l03794"></a><span class="lineno"> 3794</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>)</div><div class="line"><a name="l03795"></a><span class="lineno"> 3795</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewmode&quot;</span>, cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode);</div><div class="line"><a name="l03796"></a><span class="lineno"> 3796</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>);</div><div class="line"><a name="l03797"></a><span class="lineno"> 3797</span>&#160; }</div><div class="line"><a name="l03798"></a><span class="lineno"> 3798</span>&#160;</div><div class="line"><a name="l03799"></a><span class="lineno"> 3799</span>&#160; <a class="code" href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l03800"></a><span class="lineno"> 3800</span>&#160; gtk_toggle_tool_button_set_active(</div><div class="line"><a name="l03801"></a><span class="lineno"> 3801</span>&#160; GTK_TOGGLE_TOOL_BUTTON(priv-&gt;toolitem_grab),</div><div class="line"><a name="l03802"></a><span class="lineno"> 3802</span>&#160; FALSE);</div><div class="line"><a name="l03803"></a><span class="lineno"> 3803</span>&#160;</div><div class="line"><a name="l03804"></a><span class="lineno"> 3804</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>(gp)) {</div><div class="line"><a name="l03805"></a><span class="lineno"> 3805</span>&#160; <span class="comment">/* We cannot close window immediately, but we must show a message panel */</span></div><div class="line"><a name="l03806"></a><span class="lineno"> 3806</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l03807"></a><span class="lineno"> 3807</span>&#160; <span class="comment">/* Destroy scrolled_container (and viewport) and all its children the plugin created</span></div><div class="line"><a name="l03808"></a><span class="lineno"> 3808</span>&#160;<span class="comment"> * on it, so they will not receive GUI signals */</span></div><div class="line"><a name="l03809"></a><span class="lineno"> 3809</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>) {</div><div class="line"><a name="l03810"></a><span class="lineno"> 3810</span>&#160; gtk_widget_destroy(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>);</div><div class="line"><a name="l03811"></a><span class="lineno"> 3811</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a> = NULL;</div><div class="line"><a name="l03812"></a><span class="lineno"> 3812</span>&#160; }</div><div class="line"><a name="l03813"></a><span class="lineno"> 3813</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a> = NULL;</div><div class="line"><a name="l03814"></a><span class="lineno"> 3814</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l03815"></a><span class="lineno"> 3815</span>&#160; <a class="code" href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a>(mp, <a class="code" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>(gp), <a class="code" href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">cb_lasterror_confirmed</a>, gp);</div><div class="line"><a name="l03816"></a><span class="lineno"> 3816</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l03817"></a><span class="lineno"> 3817</span>&#160; g_debug(<span class="stringliteral">&quot;Could not disconnect&quot;</span>);</div><div class="line"><a name="l03818"></a><span class="lineno"> 3818</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03819"></a><span class="lineno"> 3819</span>&#160; <a class="code" href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a>(gp);</div><div class="line"><a name="l03820"></a><span class="lineno"> 3820</span>&#160; g_debug(<span class="stringliteral">&quot;Disconnected&quot;</span>);</div><div class="line"><a name="l03821"></a><span class="lineno"> 3821</span>&#160; }</div><div class="line"><a name="l03822"></a><span class="lineno"> 3822</span>&#160;}</div><div class="line"><a name="l03823"></a><span class="lineno"> 3823</span>&#160;</div><div class="line"><a name="l03824"></a><span class="lineno"><a class="line" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964"> 3824</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rco_on_desktop_resize</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gpointer data)</div><div class="line"><a name="l03825"></a><span class="lineno"> 3825</span>&#160;{</div><div class="line"><a name="l03826"></a><span class="lineno"> 3826</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03827"></a><span class="lineno"> 3827</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l03828"></a><span class="lineno"> 3828</span>&#160; <span class="keywordflow">if</span> (cnnobj &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> &amp;&amp; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;view_mode != <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>)</div><div class="line"><a name="l03829"></a><span class="lineno"> 3829</span>&#160; <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(cnnobj);</div><div class="line"><a name="l03830"></a><span class="lineno"> 3830</span>&#160;}</div><div class="line"><a name="l03831"></a><span class="lineno"> 3831</span>&#160;</div><div class="line"><a name="l03832"></a><span class="lineno"><a class="line" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a"> 3832</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rco_on_update_align</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gpointer data)</div><div class="line"><a name="l03833"></a><span class="lineno"> 3833</span>&#160;{</div><div class="line"><a name="l03834"></a><span class="lineno"> 3834</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03835"></a><span class="lineno"> 3835</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l03836"></a><span class="lineno"> 3836</span>&#160; <a class="code" href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a>(cnnobj);</div><div class="line"><a name="l03837"></a><span class="lineno"> 3837</span>&#160;}</div><div class="line"><a name="l03838"></a><span class="lineno"> 3838</span>&#160;</div><div class="line"><a name="l03839"></a><span class="lineno"><a class="line" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede"> 3839</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rco_on_unlock_dynres</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gpointer data)</div><div class="line"><a name="l03840"></a><span class="lineno"> 3840</span>&#160;{</div><div class="line"><a name="l03841"></a><span class="lineno"> 3841</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03842"></a><span class="lineno"> 3842</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l03843"></a><span class="lineno"> 3843</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">dynres_unlocked</a> = TRUE;</div><div class="line"><a name="l03844"></a><span class="lineno"> 3844</span>&#160; <a class="code" href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a>(cnnobj);</div><div class="line"><a name="l03845"></a><span class="lineno"> 3845</span>&#160;}</div><div class="line"><a name="l03846"></a><span class="lineno"> 3846</span>&#160;</div><div class="line"><a name="l03847"></a><span class="lineno"><a class="line" href="rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5"> 3847</a></span>&#160;gboolean <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l03848"></a><span class="lineno"> 3848</span>&#160;{</div><div class="line"><a name="l03849"></a><span class="lineno"> 3849</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03850"></a><span class="lineno"> 3850</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l03851"></a><span class="lineno"> 3851</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l03852"></a><span class="lineno"> 3852</span>&#160;</div><div class="line"><a name="l03853"></a><span class="lineno"> 3853</span>&#160; remminafile = <a class="code" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a>(filename);</div><div class="line"><a name="l03854"></a><span class="lineno"> 3854</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l03855"></a><span class="lineno"> 3855</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(remminafile);</div><div class="line"><a name="l03856"></a><span class="lineno"> 3856</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l03857"></a><span class="lineno"> 3857</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03858"></a><span class="lineno"> 3858</span>&#160; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l03859"></a><span class="lineno"> 3859</span>&#160; _(<span class="stringliteral">&quot;The file \&quot;%s\&quot; is corrupted, unreadable, or could not be found.&quot;</span>), filename);</div><div class="line"><a name="l03860"></a><span class="lineno"> 3860</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="l03861"></a><span class="lineno"> 3861</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l03862"></a><span class="lineno"> 3862</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(dialog);</div><div class="line"><a name="l03863"></a><span class="lineno"> 3863</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03864"></a><span class="lineno"> 3864</span>&#160; }</div><div class="line"><a name="l03865"></a><span class="lineno"> 3865</span>&#160;}</div><div class="line"><a name="l03866"></a><span class="lineno"> 3866</span>&#160;</div><div class="line"><a name="l03867"></a><span class="lineno"><a class="line" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd"> 3867</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">open_connection_last_stage</a>(gpointer user_data)</div><div class="line"><a name="l03868"></a><span class="lineno"> 3868</span>&#160;{</div><div class="line"><a name="l03869"></a><span class="lineno"> 3869</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)user_data;</div><div class="line"><a name="l03870"></a><span class="lineno"> 3870</span>&#160;</div><div class="line"><a name="l03871"></a><span class="lineno"> 3871</span>&#160; <span class="comment">/* Now we have an allocated size for our RemminaProtocolWidget. We can proceed with the connection */</span></div><div class="line"><a name="l03872"></a><span class="lineno"> 3872</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a>(gp);</div><div class="line"><a name="l03873"></a><span class="lineno"> 3873</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a>(gp);</div><div class="line"><a name="l03874"></a><span class="lineno"> 3874</span>&#160; <a class="code" href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>);</div><div class="line"><a name="l03875"></a><span class="lineno"> 3875</span>&#160;</div><div class="line"><a name="l03876"></a><span class="lineno"> 3876</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l03877"></a><span class="lineno"> 3877</span>&#160;}</div><div class="line"><a name="l03878"></a><span class="lineno"> 3878</span>&#160;</div><div class="line"><a name="l03879"></a><span class="lineno"><a class="line" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd"> 3879</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rpw_size_allocated_on_connection</a>(GtkWidget *w, GdkRectangle *allocation, gpointer user_data)</div><div class="line"><a name="l03880"></a><span class="lineno"> 3880</span>&#160;{</div><div class="line"><a name="l03881"></a><span class="lineno"> 3881</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)w;</div><div class="line"><a name="l03882"></a><span class="lineno"> 3882</span>&#160;</div><div class="line"><a name="l03883"></a><span class="lineno"> 3883</span>&#160; <span class="comment">/* Disconnect signal handler to avoid to be called again after a normal resize */</span></div><div class="line"><a name="l03884"></a><span class="lineno"> 3884</span>&#160; g_signal_handler_disconnect(w, gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>-&gt;<a class="code" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">deferred_open_size_allocate_handler</a>);</div><div class="line"><a name="l03885"></a><span class="lineno"> 3885</span>&#160;</div><div class="line"><a name="l03886"></a><span class="lineno"> 3886</span>&#160; <span class="comment">/* Allow extra 100ms for size allocation (do we really need it?) */</span></div><div class="line"><a name="l03887"></a><span class="lineno"> 3887</span>&#160; g_timeout_add(100, <a class="code" href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">open_connection_last_stage</a>, gp);</div><div class="line"><a name="l03888"></a><span class="lineno"> 3888</span>&#160;</div><div class="line"><a name="l03889"></a><span class="lineno"> 3889</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l03890"></a><span class="lineno"> 3890</span>&#160;}</div><div class="line"><a name="l03891"></a><span class="lineno"> 3891</span>&#160;</div><div class="line"><a name="l03892"></a><span class="lineno"><a class="line" href="rcw_8h.html#a1b7a771392e15e527005305e71cc2546"> 3892</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l03893"></a><span class="lineno"> 3893</span>&#160;{</div><div class="line"><a name="l03894"></a><span class="lineno"> 3894</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03895"></a><span class="lineno"> 3895</span>&#160; <a class="code" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>(remminafile, NULL, NULL, NULL);</div><div class="line"><a name="l03896"></a><span class="lineno"> 3896</span>&#160;}</div><div class="line"><a name="l03897"></a><span class="lineno"> 3897</span>&#160;</div><div class="line"><a name="l03898"></a><span class="lineno"><a class="line" href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff"> 3898</a></span>&#160;GtkWidget *<a class="code" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="line"><a name="l03899"></a><span class="lineno"> 3899</span>&#160;{</div><div class="line"><a name="l03900"></a><span class="lineno"> 3900</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l03901"></a><span class="lineno"> 3901</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj;</div><div class="line"><a name="l03902"></a><span class="lineno"> 3902</span>&#160;</div><div class="line"><a name="l03903"></a><span class="lineno"> 3903</span>&#160; gint ret;</div><div class="line"><a name="l03904"></a><span class="lineno"> 3904</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l03905"></a><span class="lineno"> 3905</span>&#160; GtkWidget *newpage;</div><div class="line"><a name="l03906"></a><span class="lineno"> 3906</span>&#160; gint width, height;</div><div class="line"><a name="l03907"></a><span class="lineno"> 3907</span>&#160; gboolean maximize;</div><div class="line"><a name="l03908"></a><span class="lineno"> 3908</span>&#160; gint view_mode;</div><div class="line"><a name="l03909"></a><span class="lineno"> 3909</span>&#160; <span class="keyword">const</span> gchar *msg;</div><div class="line"><a name="l03910"></a><span class="lineno"> 3910</span>&#160;</div><div class="line"><a name="l03911"></a><span class="lineno"> 3911</span>&#160; <span class="keywordflow">if</span> (disconnect_cb) {</div><div class="line"><a name="l03912"></a><span class="lineno"> 3912</span>&#160; g_print(<span class="stringliteral">&quot;disconnect_cb is deprecated inside rcw_open_from_file_full() and should be null&quot;</span>);</div><div class="line"><a name="l03913"></a><span class="lineno"> 3913</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l03914"></a><span class="lineno"> 3914</span>&#160; }</div><div class="line"><a name="l03915"></a><span class="lineno"> 3915</span>&#160;</div><div class="line"><a name="l03916"></a><span class="lineno"> 3916</span>&#160;</div><div class="line"><a name="l03917"></a><span class="lineno"> 3917</span>&#160; <span class="comment">/* Create the RemminaConnectionObject */</span></div><div class="line"><a name="l03918"></a><span class="lineno"> 3918</span>&#160; cnnobj = g_new0(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a>, 1);</div><div class="line"><a name="l03919"></a><span class="lineno"> 3919</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a> = remminafile;</div><div class="line"><a name="l03920"></a><span class="lineno"> 3920</span>&#160;</div><div class="line"><a name="l03921"></a><span class="lineno"> 3921</span>&#160; <span class="comment">/* Create the RemminaProtocolWidget */</span></div><div class="line"><a name="l03922"></a><span class="lineno"> 3922</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a> = <a class="code" href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a>();</div><div class="line"><a name="l03923"></a><span class="lineno"> 3923</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>, remminafile, cnnobj);</div><div class="line"><a name="l03924"></a><span class="lineno"> 3924</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)) {</div><div class="line"><a name="l03925"></a><span class="lineno"> 3925</span>&#160; GtkWindow *wparent;</div><div class="line"><a name="l03926"></a><span class="lineno"> 3926</span>&#160; wparent = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l03927"></a><span class="lineno"> 3927</span>&#160; msg = <a class="code" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l03928"></a><span class="lineno"> 3928</span>&#160; dialog = gtk_message_dialog_new(wparent, GTK_DIALOG_DESTROY_WITH_PARENT,</div><div class="line"><a name="l03929"></a><span class="lineno"> 3929</span>&#160; GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, <span class="stringliteral">&quot;%s&quot;</span>, msg);</div><div class="line"><a name="l03930"></a><span class="lineno"> 3930</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l03931"></a><span class="lineno"> 3931</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l03932"></a><span class="lineno"> 3932</span>&#160; <span class="comment">/* We should destroy cnnobj-&gt;proto and cnnobj now… ToDo: fix this leak */</span></div><div class="line"><a name="l03933"></a><span class="lineno"> 3933</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l03934"></a><span class="lineno"> 3934</span>&#160; }</div><div class="line"><a name="l03935"></a><span class="lineno"> 3935</span>&#160;</div><div class="line"><a name="l03936"></a><span class="lineno"> 3936</span>&#160;</div><div class="line"><a name="l03937"></a><span class="lineno"> 3937</span>&#160;</div><div class="line"><a name="l03938"></a><span class="lineno"> 3938</span>&#160; <span class="comment">/* Set a name for the widget, for CSS selector */</span></div><div class="line"><a name="l03939"></a><span class="lineno"> 3939</span>&#160; gtk_widget_set_name(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;remmina-protocol-widget&quot;</span>);</div><div class="line"><a name="l03940"></a><span class="lineno"> 3940</span>&#160;</div><div class="line"><a name="l03941"></a><span class="lineno"> 3941</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l03942"></a><span class="lineno"> 3942</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), GTK_ALIGN_FILL);</div><div class="line"><a name="l03943"></a><span class="lineno"> 3943</span>&#160;</div><div class="line"><a name="l03944"></a><span class="lineno"> 3944</span>&#160; <span class="keywordflow">if</span> (data)</div><div class="line"><a name="l03945"></a><span class="lineno"> 3945</span>&#160; g_object_set_data(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;user-data&quot;</span>, data);</div><div class="line"><a name="l03946"></a><span class="lineno"> 3946</span>&#160;</div><div class="line"><a name="l03947"></a><span class="lineno"> 3947</span>&#160; view_mode = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewmode&quot;</span>, 0);</div><div class="line"><a name="l03948"></a><span class="lineno"> 3948</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a>)</div><div class="line"><a name="l03949"></a><span class="lineno"> 3949</span>&#160; view_mode = <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>;</div><div class="line"><a name="l03950"></a><span class="lineno"> 3950</span>&#160;</div><div class="line"><a name="l03951"></a><span class="lineno"> 3951</span>&#160; <span class="comment">/* Create the viewport to make the RemminaProtocolWidget scrollable */</span></div><div class="line"><a name="l03952"></a><span class="lineno"> 3952</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a> = gtk_viewport_new(NULL, NULL);</div><div class="line"><a name="l03953"></a><span class="lineno"> 3953</span>&#160; gtk_widget_set_name(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>, <span class="stringliteral">&quot;remmina-cw-viewport&quot;</span>);</div><div class="line"><a name="l03954"></a><span class="lineno"> 3954</span>&#160; gtk_widget_show(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>);</div><div class="line"><a name="l03955"></a><span class="lineno"> 3955</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), 0);</div><div class="line"><a name="l03956"></a><span class="lineno"> 3956</span>&#160; gtk_viewport_set_shadow_type(GTK_VIEWPORT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), GTK_SHADOW_NONE);</div><div class="line"><a name="l03957"></a><span class="lineno"> 3957</span>&#160;</div><div class="line"><a name="l03958"></a><span class="lineno"> 3958</span>&#160; <span class="comment">/* Create the scrolled container */</span></div><div class="line"><a name="l03959"></a><span class="lineno"> 3959</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a> = <a class="code" href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rco_create_scrolled_container</a>(cnnobj, view_mode);</div><div class="line"><a name="l03960"></a><span class="lineno"> 3960</span>&#160;</div><div class="line"><a name="l03961"></a><span class="lineno"> 3961</span>&#160; gtk_container_add(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>);</div><div class="line"><a name="l03962"></a><span class="lineno"> 3962</span>&#160;</div><div class="line"><a name="l03963"></a><span class="lineno"> 3963</span>&#160; <span class="comment">/* Determine whether the plugin can scale or not. If the plugin can scale and we do</span></div><div class="line"><a name="l03964"></a><span class="lineno"> 3964</span>&#160;<span class="comment"> * not want to expand, then we add a GtkAspectFrame to maintain aspect ratio during scaling */</span></div><div class="line"><a name="l03965"></a><span class="lineno"> 3965</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">plugin_can_scale</a> = <a class="code" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>,</div><div class="line"><a name="l03966"></a><span class="lineno"> 3966</span>&#160; <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="l03967"></a><span class="lineno"> 3967</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>);</div><div class="line"><a name="l03968"></a><span class="lineno"> 3968</span>&#160;</div><div class="line"><a name="l03969"></a><span class="lineno"> 3969</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a> = NULL;</div><div class="line"><a name="l03970"></a><span class="lineno"> 3970</span>&#160; gtk_container_add(GTK_CONTAINER(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a>), cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l03971"></a><span class="lineno"> 3971</span>&#160;</div><div class="line"><a name="l03972"></a><span class="lineno"> 3972</span>&#160; <span class="comment">/* Determine whether this connection will be put on a new window</span></div><div class="line"><a name="l03973"></a><span class="lineno"> 3973</span>&#160;<span class="comment"> * or in an existing one */</span></div><div class="line"><a name="l03974"></a><span class="lineno"> 3974</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = <a class="code" href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw_find</a>(remminafile);</div><div class="line"><a name="l03975"></a><span class="lineno"> 3975</span>&#160; <span class="keywordflow">if</span> (!cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>) {</div><div class="line"><a name="l03976"></a><span class="lineno"> 3976</span>&#160; <span class="comment">/* Connection goes on a new toplevel window */</span></div><div class="line"><a name="l03977"></a><span class="lineno"> 3977</span>&#160; <span class="keywordflow">switch</span> (view_mode) {</div><div class="line"><a name="l03978"></a><span class="lineno"> 3978</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l03979"></a><span class="lineno"> 3979</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a>:</div><div class="line"><a name="l03980"></a><span class="lineno"> 3980</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = <a class="code" href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a>(NULL, view_mode);</div><div class="line"><a name="l03981"></a><span class="lineno"> 3981</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03982"></a><span class="lineno"> 3982</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a>:</div><div class="line"><a name="l03983"></a><span class="lineno"> 3983</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l03984"></a><span class="lineno"> 3984</span>&#160; width = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_width&quot;</span>, 640);</div><div class="line"><a name="l03985"></a><span class="lineno"> 3985</span>&#160; height = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_height&quot;</span>, 480);</div><div class="line"><a name="l03986"></a><span class="lineno"> 3986</span>&#160; maximize = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;window_maximize&quot;</span>, FALSE) ? TRUE : FALSE;</div><div class="line"><a name="l03987"></a><span class="lineno"> 3987</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a> = <a class="code" href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a>(width, height, maximize);</div><div class="line"><a name="l03988"></a><span class="lineno"> 3988</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l03989"></a><span class="lineno"> 3989</span>&#160; }</div><div class="line"><a name="l03990"></a><span class="lineno"> 3990</span>&#160; <a class="code" href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw_update_tag</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, cnnobj);</div><div class="line"><a name="l03991"></a><span class="lineno"> 3991</span>&#160; <a class="code" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, cnnobj);</div><div class="line"><a name="l03992"></a><span class="lineno"> 3992</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l03993"></a><span class="lineno"> 3993</span>&#160; newpage = <a class="code" href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, cnnobj);</div><div class="line"><a name="l03994"></a><span class="lineno"> 3994</span>&#160; gtk_window_present(GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>));</div><div class="line"><a name="l03995"></a><span class="lineno"> 3995</span>&#160; <a class="code" href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">nb_set_current_page</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, newpage);</div><div class="line"><a name="l03996"></a><span class="lineno"> 3996</span>&#160; }</div><div class="line"><a name="l03997"></a><span class="lineno"> 3997</span>&#160;</div><div class="line"><a name="l03998"></a><span class="lineno"> 3998</span>&#160; <span class="comment">// Do not call remmina_protocol_widget_update_alignment(cnnobj); here or cnnobj-&gt;proto will not fill its parent size</span></div><div class="line"><a name="l03999"></a><span class="lineno"> 3999</span>&#160; <span class="comment">// and remmina_protocol_widget_update_remote_resolution() cannot autodetect available space</span></div><div class="line"><a name="l04000"></a><span class="lineno"> 4000</span>&#160;</div><div class="line"><a name="l04001"></a><span class="lineno"> 4001</span>&#160; gtk_widget_show(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>);</div><div class="line"><a name="l04002"></a><span class="lineno"> 4002</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;connect&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rco_on_connect</a>), cnnobj);</div><div class="line"><a name="l04003"></a><span class="lineno"> 4003</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;disconnect&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rco_on_disconnect</a>), NULL);</div><div class="line"><a name="l04004"></a><span class="lineno"> 4004</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;desktop-resize&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rco_on_desktop_resize</a>), NULL);</div><div class="line"><a name="l04005"></a><span class="lineno"> 4005</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;update-align&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rco_on_update_align</a>), NULL);</div><div class="line"><a name="l04006"></a><span class="lineno"> 4006</span>&#160; g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;unlock-dynres&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rco_on_unlock_dynres</a>), NULL);</div><div class="line"><a name="l04007"></a><span class="lineno"> 4007</span>&#160;</div><div class="line"><a name="l04008"></a><span class="lineno"> 4008</span>&#160; <span class="keywordflow">if</span> (!remmina_pref.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a>)</div><div class="line"><a name="l04009"></a><span class="lineno"> 4009</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a>, <span class="stringliteral">&quot;viewmode&quot;</span>, remmina_pref.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a>);</div><div class="line"><a name="l04010"></a><span class="lineno"> 4010</span>&#160;</div><div class="line"><a name="l04011"></a><span class="lineno"> 4011</span>&#160;</div><div class="line"><a name="l04012"></a><span class="lineno"> 4012</span>&#160; <span class="comment">/* If it is a GtkSocket plugin and X11 is not available, we inform the</span></div><div class="line"><a name="l04013"></a><span class="lineno"> 4013</span>&#160;<span class="comment"> * user and close the connection */</span></div><div class="line"><a name="l04014"></a><span class="lineno"> 4014</span>&#160; ret = <a class="code" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>,</div><div class="line"><a name="l04015"></a><span class="lineno"> 4015</span>&#160; <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="l04016"></a><span class="lineno"> 4016</span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>);</div><div class="line"><a name="l04017"></a><span class="lineno"> 4017</span>&#160; <span class="keywordflow">if</span> (ret &amp;&amp; !<a class="code" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a>()) {</div><div class="line"><a name="l04018"></a><span class="lineno"> 4018</span>&#160; dialog = gtk_message_dialog_new(</div><div class="line"><a name="l04019"></a><span class="lineno"> 4019</span>&#160; GTK_WINDOW(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>),</div><div class="line"><a name="l04020"></a><span class="lineno"> 4020</span>&#160; GTK_DIALOG_MODAL,</div><div class="line"><a name="l04021"></a><span class="lineno"> 4021</span>&#160; GTK_MESSAGE_WARNING,</div><div class="line"><a name="l04022"></a><span class="lineno"> 4022</span>&#160; GTK_BUTTONS_OK,</div><div class="line"><a name="l04023"></a><span class="lineno"> 4023</span>&#160; _(<span class="stringliteral">&quot;Warning: This plugin requires GtkSocket, but it’s not available.&quot;</span>));</div><div class="line"><a name="l04024"></a><span class="lineno"> 4024</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="l04025"></a><span class="lineno"> 4025</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l04026"></a><span class="lineno"> 4026</span>&#160; <span class="keywordflow">return</span> NULL; <span class="comment">/* Should we destroy something before returning? */</span></div><div class="line"><a name="l04027"></a><span class="lineno"> 4027</span>&#160; }</div><div class="line"><a name="l04028"></a><span class="lineno"> 4028</span>&#160;</div><div class="line"><a name="l04029"></a><span class="lineno"> 4029</span>&#160; <span class="keywordflow">if</span> (cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;floating_toolbar_widget)</div><div class="line"><a name="l04030"></a><span class="lineno"> 4030</span>&#160; gtk_widget_show(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;floating_toolbar_widget);</div><div class="line"><a name="l04031"></a><span class="lineno"> 4031</span>&#160;</div><div class="line"><a name="l04032"></a><span class="lineno"> 4032</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>)) {</div><div class="line"><a name="l04033"></a><span class="lineno"> 4033</span>&#160; printf(<span class="stringliteral">&quot;OK, an error occurred in initializing the protocol plugin before connecting. The error is %s.\n&quot;</span></div><div class="line"><a name="l04034"></a><span class="lineno"> 4034</span>&#160; <span class="stringliteral">&quot;ToDo: Put this string as error to show&quot;</span>, <a class="code" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>));</div><div class="line"><a name="l04035"></a><span class="lineno"> 4035</span>&#160; <span class="keywordflow">return</span> cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>;</div><div class="line"><a name="l04036"></a><span class="lineno"> 4036</span>&#160; }</div><div class="line"><a name="l04037"></a><span class="lineno"> 4037</span>&#160;</div><div class="line"><a name="l04038"></a><span class="lineno"> 4038</span>&#160;</div><div class="line"><a name="l04039"></a><span class="lineno"> 4039</span>&#160; <span class="comment">/* GTK window setup is done here, and we are almost ready to call remmina_protocol_widget_open_connection().</span></div><div class="line"><a name="l04040"></a><span class="lineno"> 4040</span>&#160;<span class="comment"> * But size has not yet been allocated by GTK</span></div><div class="line"><a name="l04041"></a><span class="lineno"> 4041</span>&#160;<span class="comment"> * to the widgets. If we are in RES_USE_INITIAL_WINDOW_SIZE resolution mode or scale is REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES,</span></div><div class="line"><a name="l04042"></a><span class="lineno"> 4042</span>&#160;<span class="comment"> * we should wait for a size allocation from GTK for cnnobj-&gt;proto</span></div><div class="line"><a name="l04043"></a><span class="lineno"> 4043</span>&#160;<span class="comment"> * before connecting */</span></div><div class="line"><a name="l04044"></a><span class="lineno"> 4044</span>&#160;</div><div class="line"><a name="l04045"></a><span class="lineno"> 4045</span>&#160; cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">deferred_open_size_allocate_handler</a> = g_signal_connect(G_OBJECT(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>), <span class="stringliteral">&quot;size-allocate&quot;</span>, G_CALLBACK(<a class="code" href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rpw_size_allocated_on_connection</a>), NULL);</div><div class="line"><a name="l04046"></a><span class="lineno"> 4046</span>&#160;</div><div class="line"><a name="l04047"></a><span class="lineno"> 4047</span>&#160; <span class="keywordflow">return</span> cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a>;</div><div class="line"><a name="l04048"></a><span class="lineno"> 4048</span>&#160;}</div><div class="line"><a name="l04049"></a><span class="lineno"> 4049</span>&#160;</div><div class="line"><a name="l04050"></a><span class="lineno"><a class="line" href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d"> 4050</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *cnnwin, <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> mode)</div><div class="line"><a name="l04051"></a><span class="lineno"> 4051</span>&#160;{</div><div class="line"><a name="l04052"></a><span class="lineno"> 4052</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l04053"></a><span class="lineno"> 4053</span>&#160; cnnwin-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;on_delete_confirm_mode = mode;</div><div class="line"><a name="l04054"></a><span class="lineno"> 4054</span>&#160;}</div><div class="line"><a name="l04055"></a><span class="lineno"> 4055</span>&#160;</div><div class="line"><a name="l04060"></a><span class="lineno"><a class="line" href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7"> 4060</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</div><div class="line"><a name="l04061"></a><span class="lineno"> 4061</span>&#160;{</div><div class="line"><a name="l04062"></a><span class="lineno"> 4062</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l04063"></a><span class="lineno"> 4063</span>&#160; GList *childs, *cc;</div><div class="line"><a name="l04064"></a><span class="lineno"> 4064</span>&#160; RemminaMessagePanel *lastPanel;</div><div class="line"><a name="l04065"></a><span class="lineno"> 4065</span>&#160; gboolean was_visible;</div><div class="line"><a name="l04066"></a><span class="lineno"> 4066</span>&#160; GtkWidget *page;</div><div class="line"><a name="l04067"></a><span class="lineno"> 4067</span>&#160;</div><div class="line"><a name="l04068"></a><span class="lineno"> 4068</span>&#160; page = <a class="code" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, cnnobj);</div><div class="line"><a name="l04069"></a><span class="lineno"> 4069</span>&#160; childs = gtk_container_get_children(GTK_CONTAINER(page));</div><div class="line"><a name="l04070"></a><span class="lineno"> 4070</span>&#160; cc = g_list_first(childs);</div><div class="line"><a name="l04071"></a><span class="lineno"> 4071</span>&#160; <span class="keywordflow">while</span> (cc != NULL) {</div><div class="line"><a name="l04072"></a><span class="lineno"> 4072</span>&#160; <span class="keywordflow">if</span> ((RemminaMessagePanel *)cc-&gt;data == mp)</div><div class="line"><a name="l04073"></a><span class="lineno"> 4073</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l04074"></a><span class="lineno"> 4074</span>&#160; cc = g_list_next(cc);</div><div class="line"><a name="l04075"></a><span class="lineno"> 4075</span>&#160; }</div><div class="line"><a name="l04076"></a><span class="lineno"> 4076</span>&#160; g_list_free(childs);</div><div class="line"><a name="l04077"></a><span class="lineno"> 4077</span>&#160;</div><div class="line"><a name="l04078"></a><span class="lineno"> 4078</span>&#160; <span class="keywordflow">if</span> (cc == NULL) {</div><div class="line"><a name="l04079"></a><span class="lineno"> 4079</span>&#160; printf(<span class="stringliteral">&quot;Remmina: Warning, request to destroy a RemminaMessagePanel, which is not on the page\n&quot;</span>);</div><div class="line"><a name="l04080"></a><span class="lineno"> 4080</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l04081"></a><span class="lineno"> 4081</span>&#160; }</div><div class="line"><a name="l04082"></a><span class="lineno"> 4082</span>&#160; was_visible = gtk_widget_is_visible(GTK_WIDGET(mp));</div><div class="line"><a name="l04083"></a><span class="lineno"> 4083</span>&#160; gtk_widget_destroy(GTK_WIDGET(mp));</div><div class="line"><a name="l04084"></a><span class="lineno"> 4084</span>&#160;</div><div class="line"><a name="l04085"></a><span class="lineno"> 4085</span>&#160; <span class="comment">/* And now, show the last remaining message panel, if needed */</span></div><div class="line"><a name="l04086"></a><span class="lineno"> 4086</span>&#160; <span class="keywordflow">if</span> (was_visible) {</div><div class="line"><a name="l04087"></a><span class="lineno"> 4087</span>&#160; childs = gtk_container_get_children(GTK_CONTAINER(page));</div><div class="line"><a name="l04088"></a><span class="lineno"> 4088</span>&#160; cc = g_list_first(childs);</div><div class="line"><a name="l04089"></a><span class="lineno"> 4089</span>&#160; lastPanel = NULL;</div><div class="line"><a name="l04090"></a><span class="lineno"> 4090</span>&#160; <span class="keywordflow">while</span> (cc != NULL) {</div><div class="line"><a name="l04091"></a><span class="lineno"> 4091</span>&#160; <span class="keywordflow">if</span> (G_TYPE_CHECK_INSTANCE_TYPE(cc-&gt;data, REMMINA_TYPE_MESSAGE_PANEL))</div><div class="line"><a name="l04092"></a><span class="lineno"> 4092</span>&#160; lastPanel = (RemminaMessagePanel *)cc-&gt;data;</div><div class="line"><a name="l04093"></a><span class="lineno"> 4093</span>&#160; cc = g_list_next(cc);</div><div class="line"><a name="l04094"></a><span class="lineno"> 4094</span>&#160; }</div><div class="line"><a name="l04095"></a><span class="lineno"> 4095</span>&#160; g_list_free(childs);</div><div class="line"><a name="l04096"></a><span class="lineno"> 4096</span>&#160; <span class="keywordflow">if</span> (lastPanel)</div><div class="line"><a name="l04097"></a><span class="lineno"> 4097</span>&#160; gtk_widget_show(GTK_WIDGET(lastPanel));</div><div class="line"><a name="l04098"></a><span class="lineno"> 4098</span>&#160; }</div><div class="line"><a name="l04099"></a><span class="lineno"> 4099</span>&#160;}</div><div class="line"><a name="l04100"></a><span class="lineno"> 4100</span>&#160;</div><div class="line"><a name="l04107"></a><span class="lineno"><a class="line" href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4"> 4107</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</div><div class="line"><a name="l04108"></a><span class="lineno"> 4108</span>&#160;{</div><div class="line"><a name="l04109"></a><span class="lineno"> 4109</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l04110"></a><span class="lineno"> 4110</span>&#160; GList *childs, *cc;</div><div class="line"><a name="l04111"></a><span class="lineno"> 4111</span>&#160; GtkWidget *page;</div><div class="line"><a name="l04112"></a><span class="lineno"> 4112</span>&#160;</div><div class="line"><a name="l04113"></a><span class="lineno"> 4113</span>&#160; <span class="comment">/* Hides all RemminaMessagePanels childs of cnnobj-&gt;page */</span></div><div class="line"><a name="l04114"></a><span class="lineno"> 4114</span>&#160; page = <a class="code" href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a>(cnnobj-&gt;<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>-&gt;<a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>-&gt;notebook, cnnobj);</div><div class="line"><a name="l04115"></a><span class="lineno"> 4115</span>&#160; childs = gtk_container_get_children(GTK_CONTAINER(page));</div><div class="line"><a name="l04116"></a><span class="lineno"> 4116</span>&#160; cc = g_list_first(childs);</div><div class="line"><a name="l04117"></a><span class="lineno"> 4117</span>&#160; <span class="keywordflow">while</span> (cc != NULL) {</div><div class="line"><a name="l04118"></a><span class="lineno"> 4118</span>&#160; <span class="keywordflow">if</span> (G_TYPE_CHECK_INSTANCE_TYPE(cc-&gt;data, REMMINA_TYPE_MESSAGE_PANEL))</div><div class="line"><a name="l04119"></a><span class="lineno"> 4119</span>&#160; gtk_widget_hide(GTK_WIDGET(cc-&gt;data));</div><div class="line"><a name="l04120"></a><span class="lineno"> 4120</span>&#160; cc = g_list_next(cc);</div><div class="line"><a name="l04121"></a><span class="lineno"> 4121</span>&#160; }</div><div class="line"><a name="l04122"></a><span class="lineno"> 4122</span>&#160; g_list_free(childs);</div><div class="line"><a name="l04123"></a><span class="lineno"> 4123</span>&#160;</div><div class="line"><a name="l04124"></a><span class="lineno"> 4124</span>&#160; <span class="comment">/* Add the new message panel at the top of cnnobj-&gt;page */</span></div><div class="line"><a name="l04125"></a><span class="lineno"> 4125</span>&#160; gtk_box_pack_start(GTK_BOX(page), GTK_WIDGET(mp), FALSE, FALSE, 0);</div><div class="line"><a name="l04126"></a><span class="lineno"> 4126</span>&#160; gtk_box_reorder_child(GTK_BOX(page), GTK_WIDGET(mp), 0);</div><div class="line"><a name="l04127"></a><span class="lineno"> 4127</span>&#160;</div><div class="line"><a name="l04128"></a><span class="lineno"> 4128</span>&#160; <span class="comment">/* Show the message panel */</span></div><div class="line"><a name="l04129"></a><span class="lineno"> 4129</span>&#160; gtk_widget_show_all(GTK_WIDGET(mp));</div><div class="line"><a name="l04130"></a><span class="lineno"> 4130</span>&#160;</div><div class="line"><a name="l04131"></a><span class="lineno"> 4131</span>&#160; <span class="comment">/* Focus the correct field of the RemminaMessagePanel */</span></div><div class="line"><a name="l04132"></a><span class="lineno"> 4132</span>&#160; <a class="code" href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a>(mp);</div><div class="line"><a name="l04133"></a><span class="lineno"> 4133</span>&#160;}</div><div class="ttc" id="rcw_8c_html_a6a61db497c95cf18aea60b2a3a5a31c0"><div class="ttname"><a href="rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0">rcw_find</a></div><div class="ttdeci">static RemminaConnectionWindow * rcw_find(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03687">rcw.c:3687</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a25bcb2ae99449624fed6f770218e3d25"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01153">remmina_protocol_widget.c:1153</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a10b1f3d9b49687c09ec5dd98a0577d7f"><div class="ttname"><a href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref::shortcutkey_fullscreen</a></div><div class="ttdeci">guint shortcutkey_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00152">remmina_pref.h:152</a></div></div>
+<div class="ttc" id="rcw_8c_html_a319e8c05fa25a57aa34875d48e182726"><div class="ttname"><a href="rcw_8c.html#a319e8c05fa25a57aa34875d48e182726">rco_update_toolbar</a></div><div class="ttdeci">static void rco_update_toolbar(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02352">rcw.c:2352</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a508044024b303c286a0e643e44d85a29"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a></div><div class="ttdeci">const gchar * remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01172">remmina_protocol_widget.c:1172</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a09f89d6c0e4e52905aba1dd093e5c7f2"><div class="ttname"><a href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">_RemminaConnectionObject::deferred_open_size_allocate_handler</a></div><div class="ttdeci">gulong deferred_open_size_allocate_handler</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00167">rcw.c:167</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html"><div class="ttname"><a href="struct___remmina_pref.html">_RemminaPref</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00111">remmina_pref.h:111</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac95fed56e8995e3361928ebf87505f21"><div class="ttname"><a href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">_RemminaPref::floating_toolbar_placement</a></div><div class="ttdeci">gint floating_toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00186">remmina_pref.h:186</a></div></div>
+<div class="ttc" id="rcw_8c_html_a29df78f116c127e22a561beb4d8bae51"><div class="ttname"><a href="rcw_8c.html#a29df78f116c127e22a561beb4d8bae51">rcw_after_configure_scrolled</a></div><div class="ttdeci">static gboolean rcw_after_configure_scrolled(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02630">rcw.c:2630</a></div></div>
+<div class="ttc" id="rcw_8c_html_a8a789be4e849f79bf8064bc47ba85ea3"><div class="ttname"><a href="rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3">rcw_focus_in</a></div><div class="ttdeci">static void rcw_focus_in(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02533">rcw.c:2533</a></div></div>
+<div class="ttc" id="rcw_8c_html_a10c64d29db5f199eb4c86b0ae5a5a0bd"><div class="ttname"><a href="rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd">rcw_init</a></div><div class="ttdeci">static void rcw_init(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02796">rcw.c:2796</a></div></div>
+<div class="ttc" id="rcw_8c_html_a604971831f6ef8dd750ad6d29abb73a9"><div class="ttname"><a href="rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9">rcw_toolbar_screenshot</a></div><div class="ttdeci">static void rcw_toolbar_screenshot(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01928">rcw.c:1928</a></div></div>
+<div class="ttc" id="rcw_8c_html_abbc84b2c450f62c288ff827c5d2c5cd2"><div class="ttname"><a href="rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2">get_current_allowed_scale_mode</a></div><div class="ttdeci">static RemminaScaleMode get_current_allowed_scale_mode(RemminaConnectionObject *cnnobj, gboolean *dynres_avail, gboolean *scale_avail)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00381">rcw.c:381</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_adbe15328275677cb38bd8c8a2d5e039d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00592">remmina_protocol_widget.c:592</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_af9b6a2c2665010ab09a6d9943f9850bd"><div class="ttname"><a href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a></div><div class="ttdeci">const RemminaProtocolFeature * remmina_protocol_widget_get_features(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00586">remmina_protocol_widget.c:586</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a887cbbd379d159cd0ac1acea7173d07b"><div class="ttname"><a href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref::shortcutkey_minimize</a></div><div class="ttdeci">guint shortcutkey_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00161">remmina_pref.h:161</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="rcw_8c_html_a51bb9efba28252cbf96da6797710c919"><div class="ttname"><a href="rcw_8c.html#a51bb9efba28252cbf96da6797710c919">rcw_toolbar_minimize</a></div><div class="ttdeci">static void rcw_toolbar_minimize(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02066">rcw.c:2066</a></div></div>
+<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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="rcw_8c_html_af8d1a8843f974fb8170d76f945a72080"><div class="ttname"><a href="rcw_8c.html#af8d1a8843f974fb8170d76f945a72080">rcw_update_tag</a></div><div class="ttdeci">static void rcw_update_tag(RemminaConnectionWindow *cnnwin, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02901">rcw.c:2901</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_a0a6a2069cdbbb920fb09f95bec3e997e"><div class="ttname"><a href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find_by_window(GType type, GdkWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00086">remmina_widget_pool.c:86</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0ca9e87bf2fc3855699f80315d72314b"><div class="ttname"><a href="rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b">rcw_tb_drag_begin</a></div><div class="ttdeci">static void rcw_tb_drag_begin(GtkWidget *widget, GdkDragContext *context, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00781">rcw.c:781</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a4017a800d7803a40d606ffce2578509a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00609">remmina_protocol_widget.c:609</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0fbf6bfa4022b5f7b3286a68b0a3c446"><div class="ttname"><a href="rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446">rcw_toolbar_disconnect</a></div><div class="ttdeci">static void rcw_toolbar_disconnect(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02077">rcw.c:2077</a></div></div>
+<div class="ttc" id="rcw_8c_html_ae09c2a83e973c3041254fb57bd58666f"><div class="ttname"><a href="rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f">rco_call_protocol_feature_check</a></div><div class="ttdeci">static void rco_call_protocol_feature_check(GtkMenuItem *menuitem, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01680">rcw.c:1680</a></div></div>
+<div class="ttc" id="rcw_8c_html_ab4b422fe9972866b74db8b763f8cb42e"><div class="ttname"><a href="rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e">rcw_toolbar_preferences_popdown</a></div><div class="ttdeci">static void rcw_toolbar_preferences_popdown(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01636">rcw.c:1636</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#l00072">rcw.c:72</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#l03121">rcw.c:3121</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#l01361">remmina_main.c:1361</a></div></div>
+<div class="ttc" id="rcw_8c_html_ae0f54fdd4d7526ba4e110d04d7fb2844"><div class="ttname"><a href="rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844">rco_set_scrolled_policy</a></div><div class="ttdeci">void rco_set_scrolled_policy(RemminaConnectionObject *cnnobj, GtkScrolledWindow *scrolled_window)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00874">rcw.c:874</a></div></div>
+<div class="ttc" id="rcw_8c_html_ae0243af9dbe4b388a39ea432c3e580e5"><div class="ttname"><a href="rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5">rcw_toolbar_tools_popdown</a></div><div class="ttdeci">void rcw_toolbar_tools_popdown(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01651">rcw.c:1651</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#l01117">remmina_protocol_widget.c:1117</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#l03506">rcw.c:3506</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#l00174">remmina_scrolled_viewport.c:174</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00120">types.h:120</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab4c6435ef92e34a94270069ce1861907"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01102">remmina_protocol_widget.c:1102</a></div></div>
+<div class="ttc" id="rcw_8c_html_a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00173">rcw.c:173</a></div></div>
+<div class="ttc" id="rcw_8c_html_ab4b9810ed2b9ae62933b969c1d9acf3c"><div class="ttname"><a href="rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c">rcw_toolbar_autofit</a></div><div class="ttdeci">static void rcw_toolbar_autofit(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00939">rcw.c:939</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6ae707cecd1f6660d8e2168d7422b797"><div class="ttname"><a href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref::hostkey</a></div><div class="ttdeci">guint hostkey</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00151">remmina_pref.h:151</a></div></div>
+<div class="ttc" id="rcw_8c_html_a5e70819cad41022a0070c8102dd6dd6f"><div class="ttname"><a href="rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f">nb_set_current_page</a></div><div class="ttdeci">static void nb_set_current_page(GtkNotebook *notebook, GtkWidget *page)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01172">rcw.c:1172</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">RCW_ONDELETE_CONFIRM_IF_2_OR_MORE</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00066">rcw.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a086c9b0fe4bcfe0e5349422d17886d65"><div class="ttname"><a href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref::keystrokes</a></div><div class="ttdeci">gchar * keystrokes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00128">remmina_pref.h:128</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="rcw_8c_html_ad45e51f5a72b7ffe9bca86d336563757"><div class="ttname"><a href="rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757">rco_leave_protocol_widget</a></div><div class="ttdeci">static gboolean rco_leave_protocol_widget(GtkWidget *widget, GdkEventCrossing *event, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02460">rcw.c:2460</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2cc56c093d45511af91c6b05c522c45a"><div class="ttname"><a href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">_RemminaPref::shortcutkey_dynres</a></div><div class="ttdeci">guint shortcutkey_dynres</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00156">remmina_pref.h:156</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a893f0cfe2d694ab700975f4f427ee2f6"><div class="ttname"><a href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a></div><div class="ttdeci">void remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00644">remmina_public.c:644</a></div></div>
+<div class="ttc" id="rcw_8c_html_a029feea88b7ef32425595efe7d270947"><div class="ttname"><a href="rcw_8c.html#a029feea88b7ef32425595efe7d270947">rco_on_disconnect</a></div><div class="ttdeci">void rco_on_disconnect(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03774">rcw.c:3774</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b5f4704fb50b67ff1e3daaf7d7d3209"><div class="ttname"><a href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref::shortcutkey_screenshot</a></div><div class="ttdeci">guint shortcutkey_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00160">remmina_pref.h:160</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a45d70bbebf5163081d67df3dbb73cc1b"><div class="ttname"><a href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref::shortcutkey_prevtab</a></div><div class="ttdeci">guint shortcutkey_prevtab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00154">remmina_pref.h:154</a></div></div>
+<div class="ttc" id="rcw_8c_html_a95c64795004c7778c56068abeb1a6bd0"><div class="ttname"><a href="rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0">rcw_create_scrolled</a></div><div class="ttdeci">static RemminaConnectionWindow * rcw_create_scrolled(gint width, gint height, gboolean maximize)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03233">rcw.c:3233</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aab2f304822ccfd4979854ef1afd81771"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a></div><div class="ttdeci">gboolean remmina_protocol_widget_has_error(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01166">remmina_protocol_widget.c:1166</a></div></div>
+<div class="ttc" id="rcw_8c_html_ac5eda3a29c88ac88d80b5775e39ffcb4"><div class="ttname"><a href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a></div><div class="ttdeci">void rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. </div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04107">rcw.c:4107</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7c15fa81642c52ef382e1dbe34ffb6ac"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01544">remmina_protocol_widget.c:1544</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00070">remmina_pref.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a1f3920f6710917d6944491ae1d7b1250"><div class="ttname"><a href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">_RemminaConnectionObject::plugin_can_scale</a></div><div class="ttdeci">gboolean plugin_can_scale</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00162">rcw.c:162</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad3c2fe67b137c757bd21b79ad5dcc5ff"><div class="ttname"><a href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a></div><div class="ttdeci">GtkWidget * rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03898">rcw.c:3898</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="rcw_8c_html_a4ab5e41b9227097a9eec6f73dcb453ea"><div class="ttname"><a href="rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea">rcw_ftb_drag_drop</a></div><div class="ttdeci">static gboolean rcw_ftb_drag_drop(GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03386">rcw.c:3386</a></div></div>
+<div class="ttc" id="rcw_8c_html_a010af24147287ef89f605e71ef315475"><div class="ttname"><a href="rcw_8c.html#a010af24147287ef89f605e71ef315475">rcw_focus_out</a></div><div class="ttdeci">static void rcw_focus_out(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02554">rcw.c:2554</a></div></div>
+<div class="ttc" id="rcw_8c_html_aba6a0bf71cc04aa6ac20920d4dd219d2"><div class="ttname"><a href="rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2">rcw_toolbar_pin</a></div><div class="ttdeci">static void rcw_toolbar_pin(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02709">rcw.c:2709</a></div></div>
+<div class="ttc" id="rcw_8c_html_aa7de86386944c333dc9f4bf87f819f9c"><div class="ttname"><a href="rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c">rcw_destroy</a></div><div class="ttdeci">static void rcw_destroy(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00659">rcw.c:659</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1647e25501f5ee2852dfd27a10e0d8c8"><div class="ttname"><a href="rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8">rcw_toolbar_scaled_mode</a></div><div class="ttdeci">static void rcw_toolbar_scaled_mode(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01615">rcw.c:1615</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00072">remmina_pref.h:72</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad3c92ea50f889b1252614586d9f7a23e"><div class="ttname"><a href="rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e">rcw_create_floating_toolbar</a></div><div class="ttdeci">static void rcw_create_floating_toolbar(RemminaConnectionWindow *cnnwin, gint mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02717">rcw.c:2717</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00069">remmina_pref.h:69</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="rcw_8c_html_ad13167e478305c3fae8a4cea1d0e2f76"><div class="ttname"><a href="rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76">rcw_toolbar_preferences_radio</a></div><div class="ttdeci">void rcw_toolbar_preferences_radio(RemminaConnectionObject *cnnobj, RemminaFile *remminafile, GtkWidget *menu, const RemminaProtocolFeature *feature, const gchar *domain, gboolean enabled)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01701">rcw.c:1701</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00056">remmina_exec.h:56</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac705ffa194e3c3457e9a0a1bd6c79be8"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a></div><div class="ttdeci">void remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01758">remmina_protocol_widget.c:1758</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0cb504e984baf9ad7ba06b03da6ab746"><div class="ttname"><a href="rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746">rcw_create_overlay_ftb_overlay</a></div><div class="ttdeci">static void rcw_create_overlay_ftb_overlay(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03302">rcw.c:3302</a></div></div>
+<div class="ttc" id="rcw_8c_html_adae469553aa0647d0df5d88b180e7cd7"><div class="ttname"><a href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a></div><div class="ttdeci">gboolean rcw_delete(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00624">rcw.c:624</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="rcw_8c_html_a7abfab8a6281126baaf5f443ff4adda1"><div class="ttname"><a href="rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1">rcw_toolbar_tools</a></div><div class="ttdeci">static void rcw_toolbar_tools(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01822">rcw.c:1822</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1af82a0b7f5fd27477d6f4c55ed0898b"><div class="ttname"><a href="rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b">rcw_toolbar_dynres</a></div><div class="ttdeci">static void rcw_toolbar_dynres(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01591">rcw.c:1591</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab0928bd64388cb1ced2f542d3b35019d"><div class="ttname"><a href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref::default_mode</a></div><div class="ttdeci">gint default_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00134">remmina_pref.h:134</a></div></div>
+<div class="ttc" id="rcw_8c_html_ac973ca10137b1f285f45785f93966fd5"><div class="ttname"><a href="rcw_8c.html#ac973ca10137b1f285f45785f93966fd5">rcw_toolbar_duplicate</a></div><div class="ttdeci">static void rcw_toolbar_duplicate(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01912">rcw.c:1912</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_aacb1f47e5ad88086c1bda1b0a156c34d"><div class="ttname"><a href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a></div><div class="ttdeci">void remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00653">remmina_message_panel.c:653</a></div></div>
+<div class="ttc" id="rcw_8c_html_abd0a6de10dd92a8a84f24b8e66da5767"><div class="ttname"><a href="rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767">rcw_scaler_keep_aspect</a></div><div class="ttdeci">static void rcw_scaler_keep_aspect(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01408">rcw.c:1408</a></div></div>
+<div class="ttc" id="rcw_8c_html_a70d89903e3279a1650dc0684f26ed9c2"><div class="ttname"><a href="rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2">rcw_tb_drag_drop</a></div><div class="ttdeci">static gboolean rcw_tb_drag_drop(GtkWidget *widget, GdkDragContext *context, gint x, gint y, guint time, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00739">rcw.c:739</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a></div></div>
+<div class="ttc" id="rcw_8c_html_ae747a0b62a922df1de61c62092757b19"><div class="ttname"><a href="rcw_8c.html#ae747a0b62a922df1de61c62092757b19">rcw_scaler_expand</a></div><div class="ttdeci">static void rcw_scaler_expand(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01394">rcw.c:1394</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00053">remmina_scrolled_viewport.h:53</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3a531286fa321e0931475b5afc86ec49"><div class="ttname"><a href="rcw_8c.html#a3a531286fa321e0931475b5afc86ec49">rco_call_protocol_feature_radio</a></div><div class="ttdeci">static void rco_call_protocol_feature_radio(GtkMenuItem *menuitem, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01665">rcw.c:1665</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a016a7b65f9db00458f3fc000c7e3a89d"><div class="ttname"><a href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">_RemminaConnectionObject::viewport</a></div><div class="ttdeci">GtkWidget * viewport</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00158">rcw.c:158</a></div></div>
+<div class="ttc" id="rcw_8c_html_afc62938ff8bcaad6b743f50ecf36d292"><div class="ttname"><a href="rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292">rcw_place_toolbar</a></div><div class="ttdeci">static void rcw_place_toolbar(GtkToolbar *toolbar, GtkGrid *grid, GtkWidget *sibling, int toolbar_placement)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02318">rcw.c:2318</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae5c3a7fd35cc51f658dda67052440b47"><div class="ttname"><a href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref::shortcutkey_autofit</a></div><div class="ttdeci">guint shortcutkey_autofit</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__protocol__widget_8c_html_a6a630e96e5b914d60d678ae8eaad4cd9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00615">remmina_protocol_widget.c:615</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3928a83b083a55e3af1ed81da49b25eb"><div class="ttname"><a href="rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb">rco_create_tab_label</a></div><div class="ttdeci">static GtkWidget * rco_create_tab_label(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02985">rcw.c:2985</a></div></div>
+<div class="ttc" id="rcw_8c_html_a96e821dc68caa7f3380a513eb47aead7"><div class="ttname"><a href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a></div><div class="ttdeci">void rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last re...</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04060">rcw.c:4060</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5aaadd752a3275a0a8e0018a3dd669f8"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a></div><div class="ttdeci">void remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00681">remmina_protocol_widget.c:681</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html"><div class="ttname"><a href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00152">rcw.c:152</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3463779f231df73defb8ff86f27ec9ef"><div class="ttname"><a href="rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef">rco_viewport_fullscreen_mode</a></div><div class="ttdeci">static void rco_viewport_fullscreen_mode(GtkWidget *widget, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01304">rcw.c:1304</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ae609b351fff17c235251b0ba7c480da5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01129">remmina_protocol_widget.c:1129</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5ec62969da54155e24edcb1d998f93f7"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01141">remmina_protocol_widget.c:1141</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0e69db7ebd2d2998d34fbf6853ce2f27"><div class="ttname"><a href="rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27">rcw_update_pin</a></div><div class="ttdeci">static void rcw_update_pin(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02698">rcw.c:2698</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad6e2d00646e8268aa0e8bbe31b77db48"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a></div><div class="ttdeci">void remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01147">remmina_protocol_widget.c:1147</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3237ef26caa19b9926b485f94132cea7"><div class="ttname"><a href="rcw_8c.html#a3237ef26caa19b9926b485f94132cea7">rco_on_connect</a></div><div class="ttdeci">void rco_on_connect(RemminaProtocolWidget *gp, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03721">rcw.c:3721</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00071">remmina_pref.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_aea86c673d5c1600844e0d1642c856995"><div class="ttname"><a href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">_RemminaConnectionObject::proto</a></div><div class="ttdeci">GtkWidget * proto</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00156">rcw.c:156</a></div></div>
+<div class="ttc" id="rcw_8c_html_a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668"><div class="ttname"><a href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668">TOOLBARPLACE_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00172">rcw.c:172</a></div></div>
+<div class="ttc" id="rcw_8c_html_a756830638372adda00be33468c8d3ed2"><div class="ttname"><a href="rcw_8c.html#a756830638372adda00be33468c8d3ed2">nb_find_page_by_cnnobj</a></div><div class="ttdeci">static GtkWidget * nb_find_page_by_cnnobj(GtkNotebook *notebook, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02931">rcw.c:2931</a></div></div>
+<div class="ttc" id="rcw_8c_html_a71284e0ce3acb9fce6d4ecf6fea1a3f5"><div class="ttname"><a href="rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5">rcw_keyboard_grab_retry</a></div><div class="ttdeci">static gboolean rcw_keyboard_grab_retry(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00470">rcw.c:470</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ab9e75c6bf39aa93a87d421fc3d742d60"><div class="ttname"><a href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a></div><div class="ttdeci">void remmina_pref_add_recent(const gchar *protocol, const gchar *server)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00842">remmina_pref.c:842</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00056">remmina_pref.h:56</a></div></div>
+<div class="ttc" id="rcw_8c_html_a423aaf9a4d3eed6dac67de5a8cc24a18"><div class="ttname"><a href="rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18">rcw_floating_toolbar_hide</a></div><div class="ttdeci">static gboolean rcw_floating_toolbar_hide(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02573">rcw.c:2573</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</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="rcw_8c_html_a961e539a6f6ccbe73a301869c6960ab6"><div class="ttname"><a href="rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6">rcw_floating_toolbar_on_enter</a></div><div class="ttdeci">static gboolean rcw_floating_toolbar_on_enter(GtkWidget *widget, GdkEventCrossing *event, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02441">rcw.c:2441</a></div></div>
+<div class="ttc" id="rcw_8c_html_a7e71031254421ccb10e0c29699cc9523"><div class="ttname"><a href="rcw_8c.html#a7e71031254421ccb10e0c29699cc9523">dnd_targets_tb</a></div><div class="ttdeci">static const GtkTargetEntry dnd_targets_tb[]</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00203">rcw.c:203</a></div></div>
+<div class="ttc" id="rcw_8c_html_a56e026ede7a3e50374579ad538e33db7"><div class="ttname"><a href="rcw_8c.html#a56e026ede7a3e50374579ad538e33db7">cb_lasterror_confirmed</a></div><div class="ttdeci">static void cb_lasterror_confirmed(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03768">rcw.c:3768</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="rcw_8c_html_a23d848e45205a65618c84bb70b882b3f"><div class="ttname"><a href="rcw_8c.html#a23d848e45205a65618c84bb70b882b3f">rcw_set_toolbar_visibility</a></div><div class="ttdeci">static void rcw_set_toolbar_visibility(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02428">rcw.c:2428</a></div></div>
+<div class="ttc" id="rcw_8c_html_acfe9306fecab6d93b5ab51571b69fc6a"><div class="ttname"><a href="rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a">rco_switch_page_activate</a></div><div class="ttdeci">void rco_switch_page_activate(GtkMenuItem *menuitem, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01475">rcw.c:1475</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0d4ebd91bc6568257031111f56689a76"><div class="ttname"><a href="rcw_8c.html#a0d4ebd91bc6568257031111f56689a76">rcw_migrate</a></div><div class="ttdeci">static void rcw_migrate(RemminaConnectionWindow *from, RemminaConnectionWindow *to)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01212">rcw.c:1212</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00065">remmina_pref.h:65</a></div></div>
+<div class="ttc" id="rcw_8c_html_a8cb8bd7679116f409b29399a5d14c527"><div class="ttname"><a href="rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527">rco_get_desktop_size</a></div><div class="ttdeci">static void rco_get_desktop_size(RemminaConnectionObject *cnnobj, gint *width, gint *height)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00858">rcw.c:858</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a9274a9d62e527ca25683af512505242e"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">_RemminaPluginScreenshotData::height</a></div><div class="ttdeci">int height</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00069">types.h:69</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</a></div></div>
+<div class="ttc" id="rcw_8c_html_affd8155adb04dc7ffbb7f4fff379dc47"><div class="ttname"><a href="rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47">rcw_get_visible_cnnobj</a></div><div class="ttdeci">static RemminaConnectionObject * rcw_get_visible_cnnobj(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00367">rcw.c:367</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a6399c3828908e36ed6202b5599bd206b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a></div><div class="ttdeci">void remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00300">remmina_protocol_widget.c:300</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307f"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a></div><div class="ttdeci">RemminaConnectionWindowOnDeleteConfirmMode</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00065">rcw.h:65</a></div></div>
+<div class="ttc" id="rcw_8c_html_ae1c994940909e60d4f565be0e0478b34"><div class="ttname"><a href="rcw_8c.html#ae1c994940909e60d4f565be0e0478b34">rco_check_resize</a></div><div class="ttdeci">static void rco_check_resize(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01011">rcw.c:1011</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="rcw_8h_html_a4bfcfdfd9d43712dd05d90ed3fd47dec"><div class="ttname"><a href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a></div><div class="ttdeci">struct _RemminaConnectionWindowPriv RemminaConnectionWindowPriv</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00051">rcw.h:51</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="rcw_8c_html_a21e0a6e416667f30c2b1599b8b24faec"><div class="ttname"><a href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaConnectionWindow, rcw, GTK_TYPE_WINDOW)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00075">rcw.c:75</a></div></div>
+<div class="ttc" id="rcw_8c_html_a5f5a9e8173b3ce9831f1771089fe778a"><div class="ttname"><a href="rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a">rcw_map_event_fullscreen</a></div><div class="ttdeci">static gboolean rcw_map_event_fullscreen(GtkWidget *widget, GdkEvent *event, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02837">rcw.c:2837</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_affb2413c00f0681fe08f90523f7e1471"><div class="ttname"><a href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a></div><div class="ttdeci">void remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget)</div><div class="ttdoc">Send to the plugin some keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00474">remmina_protocol_widget.c:474</a></div></div>
+<div class="ttc" id="rcw_8c_html_ab7dc553cbd2005feb77163cf79f48f6d"><div class="ttname"><a href="rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d">remmina_protocol_widget_update_alignment</a></div><div class="ttdeci">static void remmina_protocol_widget_update_alignment(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01099">rcw.c:1099</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_aadfe00c3960eab12d17bdb47495dd1ee"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a></div><div class="ttdeci">GtkWidget * remmina_scrolled_viewport_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00185">remmina_scrolled_viewport.c:185</a></div></div>
+<div class="ttc" id="rcw_8c_html_af99dc9a4135deff0a11c2d56877bad93"><div class="ttname"><a href="rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93">rcw_on_switch_page_finalsel</a></div><div class="ttdeci">static gboolean rcw_on_switch_page_finalsel(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03092">rcw.c:3092</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">FLOATING_TOOLBAR_VISIBILITY_INVISIBLE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00084">remmina_pref.h:84</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html"><div class="ttname"><a href="remmina__utils_8h.html">remmina_utils.h</a></div><div class="ttdoc">General utility functions, non-GTK related. </div></div>
+<div class="ttc" id="rcw_8c_html_a73532ae8f8fa05711035bc3d4c82ac2a"><div class="ttname"><a href="rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a">rcw_ftb_drag_begin</a></div><div class="ttdeci">static void rcw_ftb_drag_begin(GtkWidget *widget, GdkDragContext *context, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03415">rcw.c:3415</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00119">types.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a3df98a686c4e2703455c1a786d3f1f5c"><div class="ttname"><a href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref::screenshot_path</a></div><div class="ttdeci">const gchar * screenshot_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00115">remmina_pref.h:115</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_aa0f78eb9b36ba248c2e368684903ae44"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">_RemminaPluginScreenshotData::bytesPerPixel</a></div><div class="ttdeci">int bytesPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00067">types.h:67</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8h_html"><div class="ttname"><a href="remmina__ext__exec_8h.html">remmina_ext_exec.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__message__panel_8h_html"><div class="ttname"><a href="remmina__message__panel_8h.html">remmina_message_panel.h</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00076">remmina_pref.h:76</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5c2137462d3168e90c812f1ce75a6e62"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a></div><div class="ttdeci">GtkWidget * remmina_protocol_widget_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01781">remmina_protocol_widget.c:1781</a></div></div>
+<div class="ttc" id="rcw_8c_html_a6515e726b5d3e4c0a9aefc3cf20f3d90"><div class="ttname"><a href="rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90">dnd_targets_ftb</a></div><div class="ttdeci">static const GtkTargetEntry dnd_targets_ftb[]</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00194">rcw.c:194</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="rcw_8c_html_ad5ac9d52e0afc18834da73ef2bf18edd"><div class="ttname"><a href="rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd">rpw_size_allocated_on_connection</a></div><div class="ttdeci">static void rpw_size_allocated_on_connection(GtkWidget *w, GdkRectangle *allocation, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03879">rcw.c:3879</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_ab5d115d8f9fc675f2419d38cdd424ce6"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">_RemminaPluginScreenshotData::width</a></div><div class="ttdeci">int width</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00068">types.h:68</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a0242e9fcc63d6d24257f63fc23077133"><div class="ttname"><a href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">_RemminaPref::toolbar_placement</a></div><div class="ttdeci">gint toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00187">remmina_pref.h:187</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#l00057">types.h:57</a></div></div>
+<div class="ttc" id="rcw_8c_html_aa1044979d82ce73db51117de1262832f"><div class="ttname"><a href="rcw_8c.html#aa1044979d82ce73db51117de1262832f">rcw_toolbar_autofit_restore</a></div><div class="ttdeci">gboolean rcw_toolbar_autofit_restore(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00903">rcw.c:903</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a45652d9f81875c51991ddf6942d7b2ae"><div class="ttname"><a href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">_RemminaConnectionObject::aspectframe</a></div><div class="ttdeci">GtkWidget * aspectframe</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00157">rcw.c:157</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_ab3c15094a16418c5951c5382c8a44190"><div class="ttname"><a href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">_RemminaProtocolFeature::opt3</a></div><div class="ttdeci">gpointer opt3</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00061">types.h:61</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a1668951fd7067f2c405e001836855080"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00533">remmina_plugin_manager.c:533</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0aef50fe641f959f5715ab7e01bfd23d"><div class="ttname"><a href="rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d">rcw_on_page_removed</a></div><div class="ttdeci">static void rcw_on_page_removed(GtkNotebook *notebook, GtkWidget *child, guint page_num, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03141">rcw.c:3141</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3f9d79b58064438a513d47b4ff690b73"><div class="ttname"><a href="rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73">rcw_new</a></div><div class="ttdeci">static RemminaConnectionWindow * rcw_new(gboolean fullscreen, int full_screen_target_monitor)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02868">rcw.c:2868</a></div></div>
+<div class="ttc" id="rcw_8c_html_a27f545a9630a481f4df747478cd227fb"><div class="ttname"><a href="rcw_8c.html#a27f545a9630a481f4df747478cd227fb">rcw_on_leave_notify_event</a></div><div class="ttdeci">static gboolean rcw_on_leave_notify_event(GtkWidget *widget, GdkEventCrossing *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02449">rcw.c:2449</a></div></div>
+<div class="ttc" id="rcw_8c_html_a4204fcd726a60493b290dd5590ec693d"><div class="ttname"><a href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a></div><div class="ttdeci">void rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04050">rcw.c:4050</a></div></div>
+<div class="ttc" id="rcw_8c_html_adca4317296daf9b6c51c4258a70faf5a"><div class="ttname"><a href="rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a">rco_on_update_align</a></div><div class="ttdeci">void rco_on_update_align(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03832">rcw.c:3832</a></div></div>
+<div class="ttc" id="rcw_8c_html_a60f9f738cfd988cfc7cc39997538e4e0"><div class="ttname"><a href="rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0">rcw_notify_widget_toolbar_placement</a></div><div class="ttdeci">gboolean rcw_notify_widget_toolbar_placement(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00710">rcw.c:710</a></div></div>
+<div class="ttc" id="rcw_8c_html_a7b60c2cb02c4a893d8d2054f0bb53790"><div class="ttname"><a href="rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790">rco_scrolled_fullscreen_mode</a></div><div class="ttdeci">static void rco_scrolled_fullscreen_mode(GtkWidget *widget, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01315">rcw.c:1315</a></div></div>
+<div class="ttc" id="rcw_8c_html_a2690c97a972e458dea9f5c0566ea50b9"><div class="ttname"><a href="rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9">rco_disconnect_current_page</a></div><div class="ttdeci">static void rco_disconnect_current_page(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00411">rcw.c:411</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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a17bfba7a11836808719d33d5f6edbdc7"><div class="ttname"><a href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref::shortcutkey_disconnect</a></div><div class="ttdeci">guint shortcutkey_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00162">remmina_pref.h:162</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_a424cabdcff647797061e7482049d62a7"><div class="ttname"><a href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a></div><div class="ttdeci">void remmina_exec_command(RemminaCommandType command, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00214">remmina_exec.c:214</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a1ef27b953decb0c707ec9a18da47a38f"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a></div><div class="ttdeci">gboolean remmina_gtksocket_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00151">remmina_plugin_manager.c:151</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a293541cc884cabe4f9b2b3181b3ea9c0"><div class="ttname"><a href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">_RemminaPref::small_toolbutton</a></div><div class="ttdeci">gboolean small_toolbutton</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00174">remmina_pref.h:174</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a363642437f5920c93fe35c07ef3601cc"><div class="ttname"><a href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref::shortcutkey_grab</a></div><div class="ttdeci">guint shortcutkey_grab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00158">remmina_pref.h:158</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab89fba118812616a3e47504cfe4f3390"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a></div><div class="ttdeci">gboolean(* RemminaHostkeyFunc)(RemminaProtocolWidget *gp, guint keyval, gboolean release)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00113">remmina_protocol_widget.h:113</a></div></div>
+<div class="ttc" id="rcw_8c_html_a7d26c5dd2d9e941486a7a9bfe0f81304"><div class="ttname"><a href="rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304">rcw_toolbar_switch_page</a></div><div class="ttdeci">static void rcw_toolbar_switch_page(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01496">rcw.c:1496</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6d77a2663675f01670ed7cc2f14e39c9"><div class="ttname"><a href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref::always_show_tab</a></div><div class="ttdeci">gboolean always_show_tab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00131">remmina_pref.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a71136a01b1cc4d14e0047b32ec4d8a4a"><div class="ttname"><a href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">_RemminaConnectionObject::dynres_unlocked</a></div><div class="ttdeci">gboolean dynres_unlocked</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00165">rcw.c:165</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a62b161b504422d53a766abb3444f8449"><div class="ttname"><a href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">_RemminaPref::toolbar_pin_down</a></div><div class="ttdeci">gboolean toolbar_pin_down</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00185">remmina_pref.h:185</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2859598ef2f87afb5a970a197a503765"><div class="ttname"><a href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref::shortcutkey_scale</a></div><div class="ttdeci">guint shortcutkey_scale</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00157">remmina_pref.h:157</a></div></div>
+<div class="ttc" id="rcw_8c_html_a366b8717c9906fdb1938659dc2ab1b03"><div class="ttname"><a href="rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03">rcw_toolbar_place_signal</a></div><div class="ttdeci">static void rcw_toolbar_place_signal(RemminaConnectionWindow *cnnwin, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02780">rcw.c:2780</a></div></div>
+<div class="ttc" id="rcw_8c_html_a6d710132769d5f21989af6844c04b43f"><div class="ttname"><a href="rcw_8c.html#a6d710132769d5f21989af6844c04b43f">rcw_on_notebook_create_window</a></div><div class="ttdeci">static GtkNotebook * rcw_on_notebook_create_window(GtkNotebook *notebook, GtkWidget *page, gint x, gint y, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03151">rcw.c:3151</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1cc1f656edfbe0d9c5483ac858b76517"><div class="ttname"><a href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a></div><div class="ttdeci">struct _RemminaConnectionObject RemminaConnectionObject</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_aae1dfb6ff52460c80a3adf80d4934f67"><div class="ttname"><a href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">_RemminaProtocolWidget::cnnobj</a></div><div class="ttdeci">RemminaConnectionObject * cnnobj</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00059">remmina_protocol_widget.h:59</a></div></div>
+<div class="ttc" id="rcw_8c_html_ac3e012d5e499aebb8fcbef55f505f2f3"><div class="ttname"><a href="rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3">rcw_pointer_grab</a></div><div class="ttdeci">static void rcw_pointer_grab(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00494">rcw.c:494</a></div></div>
+<div class="ttc" id="rcw_8c_html_a3cc04a8362110361d062a840b8ae5f64"><div class="ttname"><a href="rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64">rco_call_protocol_feature_activate</a></div><div class="ttdeci">static void rco_call_protocol_feature_activate(GtkMenuItem *menuitem, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01692">rcw.c:1692</a></div></div>
+<div class="ttc" id="rcw_8c_html_a2ea4e41deacf11e9b9b71e7eac06869e"><div class="ttname"><a href="rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e">rcw_signals</a></div><div class="ttdeci">static guint rcw_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00176">rcw.c:176</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a14684e3222e6afb1b43d77634a174767"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a></div><div class="ttdeci">void remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01829">remmina_protocol_widget.c:1829</a></div></div>
+<div class="ttc" id="rcw_8c_html_afcbac7a8924d543a58039037837710ba"><div class="ttname"><a href="rcw_8c.html#afcbac7a8924d543a58039037837710ba">rco_create_scrolled_container</a></div><div class="ttdeci">static GtkWidget * rco_create_scrolled_container(RemminaConnectionObject *cnnobj, int view_mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00884">rcw.c:884</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa41324b7175c46bb42b978332db95d22"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a></div><div class="ttdeci">void remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00432">remmina_protocol_widget.c:432</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00077">remmina_pref.h:77</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a92025b5f6512955f9c29608b5451a12c"><div class="ttname"><a href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a></div><div class="ttdeci">void remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00287">remmina_public.c:287</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_acc352444c31929a1ef7aee2a0e37827d"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">_RemminaPluginScreenshotData::bitsPerPixel</a></div><div class="ttdeci">int bitsPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00066">types.h:66</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a57ac13fc4a2653c40e0601183628c0ca"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00555">remmina_protocol_widget.c:555</a></div></div>
+<div class="ttc" id="rcw_8c_html_a82c93bbb1ab73807b366b86928c37946"><div class="ttname"><a href="rcw_8c.html#a82c93bbb1ab73807b366b86928c37946">rcw_kp_ungrab</a></div><div class="ttdeci">static void rcw_kp_ungrab(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00419">rcw.c:419</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a290eb68f0e86de1b7b82e2d98a1494d1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a></div><div class="ttdeci">void remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00212">remmina_protocol_widget.c:212</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">FLOATING_TOOLBAR_VISIBILITY_DISABLE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00085">remmina_pref.h:85</a></div></div>
+<div class="ttc" id="rcw_8c_html_aaef82069514845b2987ac0659993cecd"><div class="ttname"><a href="rcw_8c.html#aaef82069514845b2987ac0659993cecd">rco_closewin</a></div><div class="ttdeci">void rco_closewin(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02952">rcw.c:2952</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">REMMINA_TAB_ALL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00078">remmina_pref.h:78</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1aa257faac7a8b75c12a286ad20ce823"><div class="ttname"><a href="rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823">rcw_on_configure</a></div><div class="ttdeci">static gboolean rcw_on_configure(GtkWidget *widget, GdkEventConfigure *event, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02666">rcw.c:2666</a></div></div>
+<div class="ttc" id="rcw_8c_html_a9ffed90419a36560bf0c4d213a853c28"><div class="ttname"><a href="rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28">rcw_fullscreen_option_popdown</a></div><div class="ttdeci">static void rcw_fullscreen_option_popdown(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01326">rcw.c:1326</a></div></div>
+<div class="ttc" id="rcw_8c_html_a366d1ea1fc39ddc72c384d07d47a25d9"><div class="ttname"><a href="rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9">rcw_toolbar_preferences_check</a></div><div class="ttdeci">void rcw_toolbar_preferences_check(RemminaConnectionObject *cnnobj, GtkWidget *menu, const RemminaProtocolFeature *feature, const gchar *domain, gboolean enabled)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01735">rcw.c:1735</a></div></div>
+<div class="ttc" id="rcw_8c_html_a11bb04a25b6c8a79af3cb34f22e28dd8"><div class="ttname"><a href="rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8">rcw_create_fullscreen</a></div><div class="ttdeci">static RemminaConnectionWindow * rcw_create_fullscreen(GtkWindow *old, gint view_mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03438">rcw.c:3438</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0cc69ded61b733b2d01a489f1c3c72d3"><div class="ttname"><a href="rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3">rcw_toolbar_fullscreen</a></div><div class="ttdeci">static void rcw_toolbar_fullscreen(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01287">rcw.c:1287</a></div></div>
+<div class="ttc" id="rcw_8c_html_a2caca4bce3a8ec22a99ede169746af86"><div class="ttname"><a href="rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86">rcw_create_toolbar</a></div><div class="ttdeci">static GtkWidget * rcw_create_toolbar(RemminaConnectionWindow *cnnwin, gint mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02113">rcw.c:2113</a></div></div>
+<div class="ttc" id="rcw_8c_html_a80f465cb910660ded402fb0e7bb3a7fd"><div class="ttname"><a href="rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd">open_connection_last_stage</a></div><div class="ttdeci">static gboolean open_connection_last_stage(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03867">rcw.c:3867</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a712773f926eb2ec030d6af80cdc33095"><div class="ttname"><a href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref::shortcutkey_nexttab</a></div><div class="ttdeci">guint shortcutkey_nexttab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00155">remmina_pref.h:155</a></div></div>
+<div class="ttc" id="rcw_8c_html_aaad3184fedef1eccd1f92d8ef43cca44"><div class="ttname"><a href="rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44">rcw_get_cnnobj_at_page</a></div><div class="ttdeci">static RemminaConnectionObject * rcw_get_cnnobj_at_page(RemminaConnectionWindow *cnnwin, gint npage)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00357">rcw.c:357</a></div></div>
+<div class="ttc" id="rcw_8c_html_a14a8e53afac8e750b7839d74dc50c758"><div class="ttname"><a href="rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758">rcw_tb_drag_failed</a></div><div class="ttdeci">static gboolean rcw_tb_drag_failed(GtkWidget *widget, GdkDragContext *context, GtkDragResult result, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00722">rcw.c:722</a></div></div>
+<div class="ttc" id="rcw_8c_html_aa9d246740106aae9643ab7edc32923f3"><div class="ttname"><a href="rcw_8c.html#aa9d246740106aae9643ab7edc32923f3">rcw_state_event</a></div><div class="ttdeci">static gboolean rcw_state_event(GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02820">rcw.c:2820</a></div></div>
+<div class="ttc" id="rcw_8c_html_a36b924d7fb7ccb1418912ea4c47620a4"><div class="ttname"><a href="rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4">rcw_class_init</a></div><div class="ttdeci">static void rcw_class_init(RemminaConnectionWindowClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00212">rcw.c:212</a></div></div>
+<div class="ttc" id="rcw_8c_html_aa79b4c65a2a416a94c27363324c1cede"><div class="ttname"><a href="rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede">rco_on_unlock_dynres</a></div><div class="ttdeci">void rco_on_unlock_dynres(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03839">rcw.c:3839</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aecbe4c6a13ec6eda818c9f74c6f63468"><div class="ttname"><a href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref::tab_mode</a></div><div class="ttdeci">gint tab_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00135">remmina_pref.h:135</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1fce938658aee966b1ccffb4a0ab4cff"><div class="ttname"><a href="rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff">rcw_create_notebook</a></div><div class="ttdeci">static GtkNotebook * rcw_create_notebook(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03213">rcw.c:3213</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00118">types.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_html_a05faadfc5f0372cca2f4552b1882813c"><div class="ttname"><a href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">_RemminaConnectionWindow::priv</a></div><div class="ttdeci">RemminaConnectionWindowPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00055">rcw.h:55</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="remmina__protocol__widget_8c_html_a2830f756dfc3d735b57b0c5753c429e3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a></div><div class="ttdeci">gboolean remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01198">remmina_protocol_widget.c:1198</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#l03892">rcw.c:3892</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aa7ac5ec9d95867734619583a2049e952"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">_RemminaProtocolFeature::opt1</a></div><div class="ttdeci">gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00059">types.h:59</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="rcw_8c_html_a4482a8c41ac6707436e8eb847867dc1a"><div class="ttname"><a href="rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a">rcw_toolbar_preferences</a></div><div class="ttdeci">static void rcw_toolbar_preferences(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01759">rcw.c:1759</a></div></div>
+<div class="ttc" id="rcw_8c_html_a10b9b689406b4b3071ace2b7c8562aa7"><div class="ttname"><a href="rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7">rcw_floating_toolbar_show</a></div><div class="ttdeci">static void rcw_floating_toolbar_show(RemminaConnectionWindow *cnnwin, gboolean show)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00831">rcw.c:831</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2e3ebdd3e3450d651445ab54a7113f8b"><div class="ttname"><a href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw_get_type</a></div><div class="ttdeci">GType rcw_get_type(void) G_GNUC_CONST</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="rcw_8c_html_a61b9eae2dd47962c5966d5d32eec9964"><div class="ttname"><a href="rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964">rco_on_desktop_resize</a></div><div class="ttdeci">void rco_on_desktop_resize(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03824">rcw.c:3824</a></div></div>
+<div class="ttc" id="rcw_8c_html_ac21387fbd4b689472e4796467bd50a55"><div class="ttname"><a href="rcw_8c.html#ac21387fbd4b689472e4796467bd50a55">nb_migrate_page_content</a></div><div class="ttdeci">static void nb_migrate_page_content(GtkWidget *frompage, GtkWidget *topage)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01185">rcw.c:1185</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_ac804e6111e538ee2fa425b8b6fd1fb66"><div class="ttname"><a href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a></div><div class="ttdeci">guint remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00193">remmina_utils.c:193</a></div></div>
+<div class="ttc" id="rcw_8c_html_a177a2ece80374b29bc26595fff8bed42"><div class="ttname"><a href="rcw_8c.html#a177a2ece80374b29bc26595fff8bed42">rcw_pointer_ungrab</a></div><div class="ttdeci">static void rcw_pointer_ungrab(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00480">rcw.c:480</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</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="struct___remmina_pref_html_aa3dc5f8676c4747f2fcaf9a68d16d11b"><div class="ttname"><a href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref::shortcutkey_toolbar</a></div><div class="ttdeci">guint shortcutkey_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00163">remmina_pref.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_aef266e6ae11db020512b3dec8f689d30"><div class="ttname"><a href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">_RemminaConnectionObject::scrolled_container</a></div><div class="ttdeci">GtkWidget * scrolled_container</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00160">rcw.c:160</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a605b69a9aa4393024369cc5070488692"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00628">remmina_protocol_widget.c:628</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a431b19fa993d0810e88cc973a307303c"><div class="ttname"><a href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">_RemminaConnectionObject::remmina_file</a></div><div class="ttdeci">RemminaFile * remmina_file</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00154">rcw.c:154</a></div></div>
+<div class="ttc" id="rcw_8c_html_a042a37c7e92f49443ddbdc6dc948b8b5"><div class="ttname"><a href="rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5">rco_change_scalemode</a></div><div class="ttdeci">static void rco_change_scalemode(RemminaConnectionObject *cnnobj, gboolean bdyn, gboolean bscale)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01565">rcw.c:1565</a></div></div>
+<div class="ttc" id="rcw_8c_html_aa6e4f2ac3249f0e5e537b65d0a7163d6"><div class="ttname"><a href="rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6">rcw_toolbar_grab</a></div><div class="ttdeci">static void rcw_toolbar_grab(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02087">rcw.c:2087</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_class_html"><div class="ttname"><a href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00058">rcw.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aab44850c13a7e5e20a02603ae173d53d"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">_RemminaProtocolFeature::opt2</a></div><div class="ttdeci">gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00060">types.h:60</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad8df6a87e19b7751b26820ef4a668de9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01109">remmina_protocol_widget.c:1109</a></div></div>
+<div class="ttc" id="rcw_8c_html_a327f62be43b7f312982f9e22b86a2867"><div class="ttname"><a href="rcw_8c.html#a327f62be43b7f312982f9e22b86a2867">rcw_update_notebook</a></div><div class="ttdeci">static void rcw_update_notebook(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03071">rcw.c:3071</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="rcw_8c_html_a03311f33ff921f943f6edbbc1867d1ec"><div class="ttname"><a href="rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec">rcw_toolbar_switch_page_popdown</a></div><div class="ttdeci">void rcw_toolbar_switch_page_popdown(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01485">rcw.c:1485</a></div></div>
+<div class="ttc" id="rcw_8c_html_a544a61088b93ffc31a79554c70d97dff"><div class="ttname"><a href="rcw_8c.html#a544a61088b93ffc31a79554c70d97dff">rcw_floating_toolbar_make_invisible</a></div><div class="ttdeci">static gboolean rcw_floating_toolbar_make_invisible(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00822">rcw.c:822</a></div></div>
+<div class="ttc" id="rcw_8c_html_aaedf05f5ff4fadcb28346d1cfc4accab"><div class="ttname"><a href="rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab">rcw_toolbar_fullscreen_option</a></div><div class="ttdeci">void rcw_toolbar_fullscreen_option(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01336">rcw.c:1336</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae2267a1de362addcee0c5801612dc5d6"><div class="ttname"><a href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref::screenshot_name</a></div><div class="ttdeci">const gchar * screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00117">remmina_pref.h:117</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00064">remmina_pref.h:64</a></div></div>
+<div class="ttc" id="rcw_8c_html_a2f4b8ba7f51a4bf6e12a585177d55758"><div class="ttname"><a href="rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758">rcw_floating_toolbar_on_scroll</a></div><div class="ttdeci">static gboolean rcw_floating_toolbar_on_scroll(GtkWidget *widget, GdkEventScroll *event, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02582">rcw.c:2582</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9258f6c3c18f14b4abb148aa43e6bc0e"><div class="ttname"><a href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref::hide_connection_toolbar</a></div><div class="ttdeci">gboolean hide_connection_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00132">remmina_pref.h:132</a></div></div>
+<div class="ttc" id="rcw_8c_html_a5929f8c1c1513c0fd75a88cd4721b8a4"><div class="ttname"><a href="rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4">rcw_update_toolbar_opacity</a></div><div class="ttdeci">void rcw_update_toolbar_opacity(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00806">rcw.c:806</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00067">rcw.h:67</a></div></div>
+<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#l03847">rcw.c:3847</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00057">remmina_pref.h:57</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">REMMINA_TAB_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00079">remmina_pref.h:79</a></div></div>
+<div class="ttc" id="rcw_8c_html_a6bd6b600564be75e95870a0375c0a4d3"><div class="ttname"><a href="rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3">rcw_close_all_connections</a></div><div class="ttdeci">static void rcw_close_all_connections(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00605">rcw.c:605</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a871e61a40fb0acd54b10191a3942d328"><div class="ttname"><a href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">_RemminaConnectionObject::cnnwin</a></div><div class="ttdeci">RemminaConnectionWindow * cnnwin</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00153">rcw.c:153</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae01d27ae9f678dc5a4fa32f0b401f434"><div class="ttname"><a href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a></div><div class="ttdeci">void remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00175">remmina_message_panel.c:175</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#l00079">remmina.c:79</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_aaa67e07e2426828d7e7b9b30d2038d31"><div class="ttname"><a href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a></div><div class="ttdeci">void remmina_application_condexit(RemminaCondExitType why)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00117">remmina_exec.c:117</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a0b19dbe685e4465e7f06706270e120fa"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a></div><div class="ttdeci">void remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01159">remmina_protocol_widget.c:1159</a></div></div>
+<div class="ttc" id="rcw_8c_html_a23692809213a6dfe683afe3d0dece3aa"><div class="ttname"><a href="rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa">rco_update_toolbar_autofit_button</a></div><div class="ttdeci">void rco_update_toolbar_autofit_button(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01547">rcw.c:1547</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad5a67ac52028302d5681cceaf9ac46bc"><div class="ttname"><a href="rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc">rcw_append_new_page</a></div><div class="ttdeci">static GtkWidget * rcw_append_new_page(RemminaConnectionWindow *cnnwin, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03041">rcw.c:3041</a></div></div>
+<div class="ttc" id="rcw_8c_html_aee06df544a91184cba1fe77c6991065a"><div class="ttname"><a href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a></div><div class="ttdeci">void rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00960">rcw.c:960</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a480f842fac65440c367bf3c3d87d2601"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp)</div><div class="ttdoc">Check if the plugin accepts keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00466">remmina_protocol_widget.c:466</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_html"><div class="ttname"><a href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00053">rcw.h:53</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_af7b58659604660eb0cb40b0e0f8348ab"><div class="ttname"><a href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a></div><div class="ttdeci">RemminaFile * remmina_file_manager_load_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00327">remmina_file_manager.c:327</a></div></div>
+<div class="ttc" id="rcw_8c_html_a0650f31e99dd15c719328345411deba0"><div class="ttname"><a href="rcw_8c.html#a0650f31e99dd15c719328345411deba0">rco_enter_protocol_widget</a></div><div class="ttdeci">gboolean rco_enter_protocol_widget(GtkWidget *widget, GdkEventCrossing *event, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02506">rcw.c:2506</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="rcw_8c_html_a1c40706e7ac542d396d2db99ba944dc6"><div class="ttname"><a href="rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6">rco_create_tab_page</a></div><div class="ttdeci">static GtkWidget * rco_create_tab_page(RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03030">rcw.c:3030</a></div></div>
+<div class="ttc" id="rcw_8c_html_a07802fc420dc07560fe937d29172573c"><div class="ttname"><a href="rcw_8c.html#a07802fc420dc07560fe937d29172573c">rcw_delete_event</a></div><div class="ttdeci">static gboolean rcw_delete_event(GtkWidget *widget, GdkEvent *event, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00652">rcw.c:652</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#l00697">remmina_file.c:697</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_a53fad3994b2550300cfd4fd8bb2a2b5b"><div class="ttname"><a href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a></div><div class="ttdeci">gint remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00109">remmina_widget_pool.c:109</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_aed1d667ed3085ee229c0dfdcf715084d"><div class="ttname"><a href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">_RemminaConnectionObject::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00164">rcw.c:164</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4eb866c8e08104362aa51f14f5894e51"><div class="ttname"><a href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref::shortcutkey_viewonly</a></div><div class="ttdeci">guint shortcutkey_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00159">remmina_pref.h:159</a></div></div>
+<div class="ttc" id="rcw_8c_html_af4bcd597461ffa30d2975cbc6b071ce4"><div class="ttname"><a href="rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4">rco_on_close_button_clicked</a></div><div class="ttdeci">void rco_on_close_button_clicked(GtkButton *button, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02974">rcw.c:2974</a></div></div>
+<div class="ttc" id="rcw_8c_html_afec9666876babf3ae115fade7470915e"><div class="ttname"><a href="rcw_8c.html#afec9666876babf3ae115fade7470915e">rcw_switch_viewmode</a></div><div class="ttdeci">static void rcw_switch_viewmode(RemminaConnectionWindow *cnnwin, int newmode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01247">rcw.c:1247</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00045">remmina_exec.h:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html"><div class="ttname"><a href="remmina__exec_8h.html">remmina_exec.h</a></div></div>
+<div class="ttc" id="rcw_8c_html_a4cfb767a626e63e3003ddbe0a8fea8a1"><div class="ttname"><a href="rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1">rcw_toolbar_scaler_option</a></div><div class="ttdeci">static void rcw_toolbar_scaler_option(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01424">rcw.c:1424</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a757f692624e3e110eaa5bf0c05ac2a6c"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">_RemminaPluginScreenshotData::buffer</a></div><div class="ttdeci">unsigned char * buffer</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00065">types.h:65</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad4d4fa75260167fe894750ecd01ee4e9"><div class="ttname"><a href="rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9">rcw_on_page_added</a></div><div class="ttdeci">static void rcw_on_page_added(GtkNotebook *notebook, GtkWidget *child, guint page_num, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03134">rcw.c:3134</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4a74d72f34e960155c489e0f91574d2b"><div class="ttname"><a href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref::fullscreen_on_auto</a></div><div class="ttdeci">gboolean fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00130">remmina_pref.h:130</a></div></div>
+<div class="ttc" id="rcw_8c_html_a7189a0f1289a24fc5cc9fdfaf37244f3"><div class="ttname"><a href="rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3">rcw_grab_focus</a></div><div class="ttdeci">void rcw_grab_focus(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l02920">rcw.c:2920</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a7015155d2b1db3e74de4d4d5ef7cca55"><div class="ttname"><a href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a></div><div class="ttdeci">RemminaMessagePanel * remmina_message_panel_new()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00088">remmina_message_panel.c:88</a></div></div>
+<div class="ttc" id="rcw_8c_html_a45ecb24606954e4268f2f3c5d7e2e1e0"><div class="ttname"><a href="rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0">rcw_scaler_option_popdown</a></div><div class="ttdeci">static void rcw_scaler_option_popdown(GtkWidget *widget, RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01383">rcw.c:1383</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aad6660781f636788d5f05b3bac85d676"><div class="ttname"><a href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref::save_view_mode</a></div><div class="ttdeci">gboolean save_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00118">remmina_pref.h:118</a></div></div>
+<div class="ttc" id="rcw_8c_html_acfa15d238ac64558487dee3c320c3701"><div class="ttname"><a href="rcw_8c.html#acfa15d238ac64558487dee3c320c3701">rcw_set_tooltip</a></div><div class="ttdeci">static void rcw_set_tooltip(GtkWidget *item, const gchar *tip, guint key1, guint key2)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l01075">rcw.c:1075</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="struct___remmina_pref_html_a97ad6670df5c399df233f0a74f5c148f"><div class="ttname"><a href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref::fullscreen_toolbar_visibility</a></div><div class="ttdeci">gint fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00136">remmina_pref.h:136</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_ab776b24a3b829a1d5dd7974cb8582c05"><div class="ttname"><a href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find(GType type, const gchar *tag)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00065">remmina_widget_pool.c:65</a></div></div>
+<div class="ttc" id="rcw_8c_html_add97977d493b64a6ea1c54ee7412f2c9"><div class="ttname"><a href="rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9">rcw_delayed_window_present</a></div><div class="ttdeci">gboolean rcw_delayed_window_present(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03709">rcw.c:3709</a></div></div>
+<div class="ttc" id="rcw_8c_html_a362cc1f55ba8365460c2ebfc0528e01c"><div class="ttname"><a href="rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c">rcw_keyboard_grab</a></div><div class="ttdeci">static void rcw_keyboard_grab(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00524">rcw.c:524</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rcw_8c.html">rcw.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rcw_8h.html b/docs/rcw_8h.html
new file mode 100644
index 000000000..38579fbbf
--- /dev/null
+++ b/docs/rcw_8h.html
@@ -0,0 +1,485 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rcw.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rcw_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rcw.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rcw_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a4bfcfdfd9d43712dd05d90ed3fd47dec"><td class="memItemLeft" align="right" valign="top">typedef struct _RemminaConnectionWindowPriv&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a></td></tr>
+<tr class="separator:a4bfcfdfd9d43712dd05d90ed3fd47dec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed2c8083c39e5e137651f1a7db750fe7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a></td></tr>
+<tr class="separator:aed2c8083c39e5e137651f1a7db750fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a188e61c274e65626077c95e5f426c296"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a></td></tr>
+<tr class="separator:a188e61c274e65626077c95e5f426c296"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c54d77416105f6b094796316f5360a2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a4c54d77416105f6b094796316f5360a2">RemminaConnectionObject</a></td></tr>
+<tr class="separator:a4c54d77416105f6b094796316f5360a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a2450dfe27d3ded59370ea879419f307f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> { <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">RCW_ONDELETE_CONFIRM_IF_2_OR_MORE</a> = 0,
+<a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a> = 1
+ }</td></tr>
+<tr class="separator:a2450dfe27d3ded59370ea879419f307f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2e3ebdd3e3450d651445ab54a7113f8b"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:a2e3ebdd3e3450d651445ab54a7113f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa37f2a9c56df0ce1a0dbc32f8989e4b5"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa37f2a9c56df0ce1a0dbc32f8989e4b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b7a771392e15e527005305e71cc2546"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a1b7a771392e15e527005305e71cc2546"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adae469553aa0647d0df5d88b180e7cd7"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin)</td></tr>
+<tr class="separator:adae469553aa0647d0df5d88b180e7cd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4204fcd726a60493b290dd5590ec693d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a> (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *cnnwin, <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> mode)</td></tr>
+<tr class="separator:a4204fcd726a60493b290dd5590ec693d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3c2fe67b137c757bd21b79ad5dcc5ff"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</td></tr>
+<tr class="separator:ad3c2fe67b137c757bd21b79ad5dcc5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96e821dc68caa7f3380a513eb47aead7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="memdesc:a96e821dc68caa7f3380a513eb47aead7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last remaining one. <a href="#a96e821dc68caa7f3380a513eb47aead7">More...</a><br /></td></tr>
+<tr class="separator:a96e821dc68caa7f3380a513eb47aead7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="memdesc:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. <a href="#ac5eda3a29c88ac88d80b5775e39ffcb4">More...</a><br /></td></tr>
+<tr class="separator:ac5eda3a29c88ac88d80b5775e39ffcb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee06df544a91184cba1fe77c6991065a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, GdkRectangle *sz)</td></tr>
+<tr class="separator:aee06df544a91184cba1fe77c6991065a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a4c54d77416105f6b094796316f5360a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c54d77416105f6b094796316f5360a2">&#9670;&nbsp;</a></span>RemminaConnectionObject</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a> <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00063">63</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<a id="aed2c8083c39e5e137651f1a7db750fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed2c8083c39e5e137651f1a7db750fe7">&#9670;&nbsp;</a></span>RemminaConnectionWindow</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a> <a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a188e61c274e65626077c95e5f426c296"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a188e61c274e65626077c95e5f426c296">&#9670;&nbsp;</a></span>RemminaConnectionWindowClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a> <a class="el" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4bfcfdfd9d43712dd05d90ed3fd47dec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4bfcfdfd9d43712dd05d90ed3fd47dec">&#9670;&nbsp;</a></span>RemminaConnectionWindowPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct _RemminaConnectionWindowPriv <a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00051">51</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a2450dfe27d3ded59370ea879419f307f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2450dfe27d3ded59370ea879419f307f">&#9670;&nbsp;</a></span>RemminaConnectionWindowOnDeleteConfirmMode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b"></a>RCW_ONDELETE_CONFIRM_IF_2_OR_MORE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc"></a>RCW_ONDELETE_NOCONFIRM&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00065">65</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a96e821dc68caa7f3380a513eb47aead7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96e821dc68caa7f3380a513eb47aead7">&#9670;&nbsp;</a></span>rco_destroy_message_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_destroy_message_panel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last remaining one. </p>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04060">4060</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aee06df544a91184cba1fe77c6991065a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee06df544a91184cba1fe77c6991065a">&#9670;&nbsp;</a></span>rco_get_monitor_geometry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_get_monitor_geometry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkRectangle *&#160;</td>
+ <td class="paramname"><em>sz</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00960">960</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ac5eda3a29c88ac88d80b5775e39ffcb4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5eda3a29c88ac88d80b5775e39ffcb4">&#9670;&nbsp;</a></span>rco_show_message_panel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rco_show_message_panel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. </p>
+<p>This function adds a RemminaMessagePanel to cnnobj-&gt;page, move it to top, and makes it the only visible one. </p>
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04107">4107</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="adae469553aa0647d0df5d88b180e7cd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adae469553aa0647d0df5d88b180e7cd7">&#9670;&nbsp;</a></span>rcw_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_delete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00624">624</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a2e3ebdd3e3450d651445ab54a7113f8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e3ebdd3e3450d651445ab54a7113f8b">&#9670;&nbsp;</a></span>rcw_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType rcw_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1b7a771392e15e527005305e71cc2546"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b7a771392e15e527005305e71cc2546">&#9670;&nbsp;</a></span>rcw_open_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_open_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03892">3892</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="ad3c2fe67b137c757bd21b79ad5dcc5ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3c2fe67b137c757bd21b79ad5dcc5ff">&#9670;&nbsp;</a></span>rcw_open_from_file_full()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* rcw_open_from_file_full </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GCallback&#160;</td>
+ <td class="paramname"><em>disconnect_cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint *&#160;</td>
+ <td class="paramname"><em>handler</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03898">3898</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aa37f2a9c56df0ce1a0dbc32f8989e4b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa37f2a9c56df0ce1a0dbc32f8989e4b5">&#9670;&nbsp;</a></span>rcw_open_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rcw_open_from_filename </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l03847">3847</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a4204fcd726a60493b290dd5590ec693d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4204fcd726a60493b290dd5590ec693d">&#9670;&nbsp;</a></span>rcw_set_delete_confirm_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rcw_set_delete_confirm_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td>
+ <td class="paramname"><em>cnnwin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a>&#160;</td>
+ <td class="paramname"><em>mode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l04050">4050</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rcw_8h.html">rcw.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rcw_8h.js b/docs/rcw_8h.js
new file mode 100644
index 000000000..edc73e148
--- /dev/null
+++ b/docs/rcw_8h.js
@@ -0,0 +1,22 @@
+var rcw_8h =
+[
+ [ "_RemminaConnectionWindow", "struct___remmina_connection_window.html", "struct___remmina_connection_window" ],
+ [ "_RemminaConnectionWindowClass", "struct___remmina_connection_window_class.html", "struct___remmina_connection_window_class" ],
+ [ "RemminaConnectionObject", "rcw_8h.html#a4c54d77416105f6b094796316f5360a2", null ],
+ [ "RemminaConnectionWindow", "rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7", null ],
+ [ "RemminaConnectionWindowClass", "rcw_8h.html#a188e61c274e65626077c95e5f426c296", null ],
+ [ "RemminaConnectionWindowPriv", "rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec", null ],
+ [ "RemminaConnectionWindowOnDeleteConfirmMode", "rcw_8h.html#a2450dfe27d3ded59370ea879419f307f", [
+ [ "RCW_ONDELETE_CONFIRM_IF_2_OR_MORE", "rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b", null ],
+ [ "RCW_ONDELETE_NOCONFIRM", "rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc", null ]
+ ] ],
+ [ "rco_destroy_message_panel", "rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7", null ],
+ [ "rco_get_monitor_geometry", "rcw_8h.html#aee06df544a91184cba1fe77c6991065a", null ],
+ [ "rco_show_message_panel", "rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4", null ],
+ [ "rcw_delete", "rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7", null ],
+ [ "rcw_get_type", "rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b", null ],
+ [ "rcw_open_from_file", "rcw_8h.html#a1b7a771392e15e527005305e71cc2546", null ],
+ [ "rcw_open_from_file_full", "rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff", null ],
+ [ "rcw_open_from_filename", "rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5", null ],
+ [ "rcw_set_delete_confirm_mode", "rcw_8h.html#a4204fcd726a60493b290dd5590ec693d", null ]
+]; \ No newline at end of file
diff --git a/docs/rcw_8h_source.html b/docs/rcw_8h_source.html
new file mode 100644
index 000000000..04852202c
--- /dev/null
+++ b/docs/rcw_8h_source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rcw.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rcw_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rcw.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rcw_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 - 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__message__panel_8h.html">remmina_message_panel.h</a>&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;G_BEGIN_DECLS</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">#define REMMINA_TYPE_CONNECTION_WINDOW (rcw_get_type())</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define RCW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_CONNECTION_WINDOW, RemminaConnectionWindow))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define RCW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_CONNECTION_WINDOW, RemminaConnectionWindowClass))</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_IS_CONNECTION_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_CONNECTION_WINDOW))</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define REMMINA_IS_CONNECTION_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_CONNECTION_WINDOW))</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define RCW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_CONNECTION_WINDOW, RemminaConnectionWindowClass))</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>_RemminaConnectionWindowPriv <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a> {</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d"> 54</a></span>&#160; GtkWindow <a class="code" href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d">window</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c"> 55</a></span>&#160; <a class="code" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> * <a class="code" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window_class.html"> 58</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a> {</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab"> 59</a></span>&#160; GtkWindowClass <a class="code" href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab">parent_class</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d"> 60</a></span>&#160; void (*toolbar_place)(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *gp);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="rcw_8h.html#a4c54d77416105f6b094796316f5360a2"> 63</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a> <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f"> 65</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b"> 66</a></span>&#160; <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">RCW_ONDELETE_CONFIRM_IF_2_OR_MORE</a> = 0,</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc"> 67</a></span>&#160; <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a> = 1</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;} <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;GType <a class="code" href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;G_GNUC_CONST;</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="comment">/* Open a new connection window for a .remmina file */</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;gboolean <a class="code" href="rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(<span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">/* Open a new connection window for a given RemminaFile struct. The struct will be freed after the call */</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8h.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;gboolean <a class="code" href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a>(<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *<a class="code" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a>, <a class="code" href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a> mode);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;GtkWidget *<a class="code" href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, GdkRectangle *sz);</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;<span class="preprocessor">#define MESSAGE_PANEL_SPINNER 0x00000001</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#define MESSAGE_PANEL_OKBUTTON 0x00000002</span></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;G_END_DECLS</div><div class="ttc" id="rcw_8h_html_a4204fcd726a60493b290dd5590ec693d"><div class="ttname"><a href="rcw_8h.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a></div><div class="ttdeci">void rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04050">rcw.c:4050</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b">RCW_ONDELETE_CONFIRM_IF_2_OR_MORE</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00066">rcw.h:66</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="rcw_8h_html_ad3c2fe67b137c757bd21b79ad5dcc5ff"><div class="ttname"><a href="rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a></div><div class="ttdeci">GtkWidget * rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03898">rcw.c:3898</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html"><div class="ttname"><a href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00152">rcw.c:152</a></div></div>
+<div class="ttc" id="rcw_8h_html_a96e821dc68caa7f3380a513eb47aead7"><div class="ttname"><a href="rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a></div><div class="ttdeci">void rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last re...</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04060">rcw.c:4060</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307f"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307f">RemminaConnectionWindowOnDeleteConfirmMode</a></div><div class="ttdeci">RemminaConnectionWindowOnDeleteConfirmMode</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00065">rcw.h:65</a></div></div>
+<div class="ttc" id="rcw_8h_html_a4bfcfdfd9d43712dd05d90ed3fd47dec"><div class="ttname"><a href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a></div><div class="ttdeci">struct _RemminaConnectionWindowPriv RemminaConnectionWindowPriv</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00051">rcw.h:51</a></div></div>
+<div class="ttc" id="rcw_8h_html_aed2c8083c39e5e137651f1a7db750fe7"><div class="ttname"><a href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a></div><div class="ttdeci">struct _RemminaConnectionWindow RemminaConnectionWindow</div></div>
+<div class="ttc" id="remmina__message__panel_8h_html"><div class="ttname"><a href="remmina__message__panel_8h.html">remmina_message_panel.h</a></div></div>
+<div class="ttc" id="rcw_8h_html_a1b7a771392e15e527005305e71cc2546"><div class="ttname"><a href="rcw_8h.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#l03892">rcw.c:3892</a></div></div>
+<div class="ttc" id="rcw_8h_html_aa37f2a9c56df0ce1a0dbc32f8989e4b5"><div class="ttname"><a href="rcw_8h.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#l03847">rcw.c:3847</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_class_html_a2096ee805de905a622754cf5d31170ab"><div class="ttname"><a href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab">_RemminaConnectionWindowClass::parent_class</a></div><div class="ttdeci">GtkWindowClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00059">rcw.h:59</a></div></div>
+<div class="ttc" id="rcw_8h_html_ac5eda3a29c88ac88d80b5775e39ffcb4"><div class="ttname"><a href="rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a></div><div class="ttdeci">void rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. </div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04107">rcw.c:4107</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_html_a05faadfc5f0372cca2f4552b1882813c"><div class="ttname"><a href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">_RemminaConnectionWindow::priv</a></div><div class="ttdeci">RemminaConnectionWindowPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00055">rcw.h:55</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2e3ebdd3e3450d651445ab54a7113f8b"><div class="ttname"><a href="rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b">rcw_get_type</a></div><div class="ttdeci">GType rcw_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="rcw_8h_html_adae469553aa0647d0df5d88b180e7cd7"><div class="ttname"><a href="rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a></div><div class="ttdeci">gboolean rcw_delete(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00624">rcw.c:624</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_class_html"><div class="ttname"><a href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00058">rcw.h:58</a></div></div>
+<div class="ttc" id="rcw_8h_html_a188e61c274e65626077c95e5f426c296"><div class="ttname"><a href="rcw_8h.html#a188e61c274e65626077c95e5f426c296">RemminaConnectionWindowClass</a></div><div class="ttdeci">struct _RemminaConnectionWindowClass RemminaConnectionWindowClass</div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00067">rcw.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html_a871e61a40fb0acd54b10191a3942d328"><div class="ttname"><a href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">_RemminaConnectionObject::cnnwin</a></div><div class="ttdeci">RemminaConnectionWindow * cnnwin</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00153">rcw.c:153</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_html"><div class="ttname"><a href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00053">rcw.h:53</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="struct___remmina_connection_window_html_a587c1131f16856f8b114d0a51d261d0d"><div class="ttname"><a href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d">_RemminaConnectionWindow::window</a></div><div class="ttdeci">GtkWindow window</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00054">rcw.h:54</a></div></div>
+<div class="ttc" id="rcw_8h_html_aee06df544a91184cba1fe77c6991065a"><div class="ttname"><a href="rcw_8h.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a></div><div class="ttdeci">void rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00960">rcw.c:960</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rcw_8h.html">rcw.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__channels_8c.html b/docs/rdp__channels_8c.html
new file mode 100644
index 000000000..2413b17b6
--- /dev/null
+++ b/docs/rdp__channels_8c.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_channels.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__channels_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_channels.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__channels_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad702816cc7dd625f0518f58fc5405c12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a> (rdpContext *context, ChannelConnectedEventArgs *e)</td></tr>
+<tr class="separator:ad702816cc7dd625f0518f58fc5405c12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5850b939a52886321d6e4c3e5e62f97d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a> (rdpContext *context, ChannelConnectedEventArgs *e)</td></tr>
+<tr class="separator:a5850b939a52886321d6e4c3e5e62f97d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad702816cc7dd625f0518f58fc5405c12"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad702816cc7dd625f0518f58fc5405c12">&#9670;&nbsp;</a></span>remmina_rdp_OnChannelConnectedEventHandler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_OnChannelConnectedEventHandler </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ChannelConnectedEventArgs *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__channels_8c_source.html#l00046">46</a> of file <a class="el" href="rdp__channels_8c_source.html">rdp_channels.c</a>.</p>
+
+</div>
+</div>
+<a id="a5850b939a52886321d6e4c3e5e62f97d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5850b939a52886321d6e4c3e5e62f97d">&#9670;&nbsp;</a></span>remmina_rdp_OnChannelDisconnectedEventHandler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_OnChannelDisconnectedEventHandler </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ChannelConnectedEventArgs *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__channels_8c_source.html#l00085">85</a> of file <a class="el" href="rdp__channels_8c_source.html">rdp_channels.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__channels_8c.html">rdp_channels.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__channels_8c.js b/docs/rdp__channels_8c.js
new file mode 100644
index 000000000..909adfaea
--- /dev/null
+++ b/docs/rdp__channels_8c.js
@@ -0,0 +1,5 @@
+var rdp__channels_8c =
+[
+ [ "remmina_rdp_OnChannelConnectedEventHandler", "rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12", null ],
+ [ "remmina_rdp_OnChannelDisconnectedEventHandler", "rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__channels_8c_source.html b/docs/rdp__channels_8c_source.html
new file mode 100644
index 000000000..7bca39ced
--- /dev/null
+++ b/docs/rdp__channels_8c_source.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_channels.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__channels_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_channels.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__channels_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) 2012-2012 Jean-Louis Dupond</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__channels_8h.html">rdp_channels.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__event_8h.html">rdp_event.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;freerdp/channels/channels.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cliprdr.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;freerdp/gdi/gfx.h&gt;</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="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a"> 46</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a>(rdpContext* context, ChannelConnectedEventArgs* e)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, RDPEI_DVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented: channel %s connected but we can’t use it\n&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">// xfc-&gt;rdpei = (RdpeiClientContext*) e-&gt;pInterface;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, TSMF_DVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented: channel %s connected but we can’t use it\n&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">// xf_tsmf_init(xfc, (TsmfClientContext*) e-&gt;pInterface);</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, RDPGFX_DVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SoftwareGdi) {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rdpgfxchan</a> = TRUE;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; gdi_graphics_pipeline_init(context-&gt;gdi, (RdpgfxClientContext*) e-&gt;pInterface);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented: channel %s connected but libfreerdp is in HardwareGdi mode\n&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, RAIL_SVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented: channel %s connected but we can’t use it\n&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// xf_rail_init(xfc, (RailClientContext*) e-&gt;pInterface);</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, CLIPRDR_SVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a>( rfi, (CliprdrClientContext*)e-&gt;pInterface);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, ENCOMSP_SVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented: channel %s connected but we can’t use it\n&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// xf_encomsp_init(xfc, (EncomspClientContext*) e-&gt;pInterface);</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(e-&gt;name, DISP_DVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// &quot;disp&quot; channel connected, save its context pointer</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a> = (DispClientContext*)e-&gt;pInterface;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// Notify rcw to unlock dynres capability</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e">protocol_plugin_unlock_dynres</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">// Send monitor layout message here to ask for resize of remote desktop now</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>) {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Channel %s has been opened&quot;</span>, e-&gt;name);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</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"><a class="line" href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d"> 85</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a>(rdpContext* context, ChannelConnectedEventArgs* e)</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (strcmp(e-&gt;name, RDPGFX_DVC_CHANNEL_NAME) == 0) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SoftwareGdi)</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; gdi_graphics_pipeline_uninit(context-&gt;gdi, (RdpgfxClientContext*) e-&gt;pInterface);</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"> 94</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Channel %s has been closed&quot;</span>, e-&gt;name);</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;}</div><div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00120">types.h:120</a></div></div>
+<div class="ttc" id="rdp__channels_8c_html_a5850b939a52886321d6e4c3e5e62f97d"><div class="ttname"><a href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a></div><div class="ttdeci">void remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00085">rdp_channels.c:85</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a2c900a8369c1081e3084f5b17efbe47d"><div class="ttname"><a href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a></div><div class="ttdeci">void remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00826">rdp_cliprdr.c:826</a></div></div>
+<div class="ttc" id="structrf__context_html_ab5ffc4d8ba9d3d8a298414dc8e4efd2a"><div class="ttname"><a href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rf_context::rdpgfxchan</a></div><div class="ttdeci">gboolean rdpgfxchan</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00266">rdp_plugin.h:266</a></div></div>
+<div class="ttc" id="structrf__context_html_a05f37c213b04dfb9ae9b38c12bcdf7e3"><div class="ttname"><a href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context::protocol_widget</a></div><div class="ttdeci">RemminaProtocolWidget * protocol_widget</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00247">rdp_plugin.h:247</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa129753441dbfb630cbdb92e447f1d1e"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e">_RemminaPluginService::protocol_plugin_unlock_dynres</a></div><div class="ttdeci">void(* protocol_plugin_unlock_dynres)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00170">plugin.h:170</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ac7c8d626470553c1659312697811dbfe"><div class="ttname"><a href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a></div><div class="ttdeci">void remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00381">rdp_event.c:381</a></div></div>
+<div class="ttc" id="structrf__context_html_a96c4689f6bc062482536038cb3b24e78"><div class="ttname"><a href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context::scale</a></div><div class="ttdeci">RemminaScaleMode scale</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00254">rdp_plugin.h:254</a></div></div>
+<div class="ttc" id="structrf__context_html_a660a5c5ea7256ab6a6486f3e831a9174"><div class="ttname"><a href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context::dispcontext</a></div><div class="ttdeci">DispClientContext * dispcontext</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00259">rdp_plugin.h:259</a></div></div>
+<div class="ttc" id="rdp__channels_8h_html"><div class="ttname"><a href="rdp__channels_8h.html">rdp_channels.h</a></div></div>
+<div class="ttc" id="structrf__context_html_a28d215e4ddb5decc543c3c6578df5e3d"><div class="ttname"><a href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">rf_context::settings</a></div><div class="ttdeci">rdpSettings * settings</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00250">rdp_plugin.h:250</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html"><div class="ttname"><a href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></div></div>
+<div class="ttc" id="rdp__event_8h_html"><div class="ttname"><a href="rdp__event_8h.html">rdp_event.h</a></div></div>
+<div class="ttc" id="rdp__channels_8c_html_ad702816cc7dd625f0518f58fc5405c12"><div class="ttname"><a href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a></div><div class="ttdeci">void remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00046">rdp_channels.c:46</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__channels_8c.html">rdp_channels.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__channels_8h.html b/docs/rdp__channels_8h.html
new file mode 100644
index 000000000..4fd152afc
--- /dev/null
+++ b/docs/rdp__channels_8h.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_channels.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__channels_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_channels.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__channels_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a759a6601ddb16301f0f6c39a6e88425a"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a">remmina_rdp_OnChannelConnectedEventHandler</a> (rdpContext *context, ChannelConnectedEventArgs *e)</td></tr>
+<tr class="separator:a759a6601ddb16301f0f6c39a6e88425a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5850b939a52886321d6e4c3e5e62f97d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a> (rdpContext *context, ChannelConnectedEventArgs *e)</td></tr>
+<tr class="separator:a5850b939a52886321d6e4c3e5e62f97d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a759a6601ddb16301f0f6c39a6e88425a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a759a6601ddb16301f0f6c39a6e88425a">&#9670;&nbsp;</a></span>remmina_rdp_OnChannelConnectedEventHandler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_rdp_OnChannelConnectedEventHandler </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ChannelConnectedEventArgs *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__channels_8c_source.html#l00046">46</a> of file <a class="el" href="rdp__channels_8c_source.html">rdp_channels.c</a>.</p>
+
+</div>
+</div>
+<a id="a5850b939a52886321d6e4c3e5e62f97d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5850b939a52886321d6e4c3e5e62f97d">&#9670;&nbsp;</a></span>remmina_rdp_OnChannelDisconnectedEventHandler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_OnChannelDisconnectedEventHandler </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ChannelConnectedEventArgs *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__channels_8c_source.html#l00085">85</a> of file <a class="el" href="rdp__channels_8c_source.html">rdp_channels.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__channels_8h.html">rdp_channels.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__channels_8h.js b/docs/rdp__channels_8h.js
new file mode 100644
index 000000000..ed7489194
--- /dev/null
+++ b/docs/rdp__channels_8h.js
@@ -0,0 +1,5 @@
+var rdp__channels_8h =
+[
+ [ "remmina_rdp_OnChannelConnectedEventHandler", "rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a", null ],
+ [ "remmina_rdp_OnChannelDisconnectedEventHandler", "rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__channels_8h_source.html b/docs/rdp__channels_8h_source.html
new file mode 100644
index 000000000..48d258f31
--- /dev/null
+++ b/docs/rdp__channels_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_channels.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__channels_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_channels.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__channels_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) 2012-2012 Jean-Louis Dupond</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/channels.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/rdpei.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/tsmf.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/rail.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cliprdr.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/rdpgfx.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/encomsp.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;G_BEGIN_DECLS</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a">remmina_rdp_OnChannelConnectedEventHandler</a>(rdpContext *context, ChannelConnectedEventArgs *e);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a>(rdpContext *context, ChannelConnectedEventArgs *e);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;G_END_DECLS</div><div class="ttc" id="rdp__channels_8h_html_a759a6601ddb16301f0f6c39a6e88425a"><div class="ttname"><a href="rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a">remmina_rdp_OnChannelConnectedEventHandler</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00046">rdp_channels.c:46</a></div></div>
+<div class="ttc" id="rdp__channels_8h_html_a5850b939a52886321d6e4c3e5e62f97d"><div class="ttname"><a href="rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a></div><div class="ttdeci">void remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00085">rdp_channels.c:85</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__channels_8h.html">rdp_channels.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__cliprdr_8c.html b/docs/rdp__cliprdr_8c.html
new file mode 100644
index 000000000..e12c1c773
--- /dev/null
+++ b/docs/rdp__cliprdr_8c.html
@@ -0,0 +1,998 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_cliprdr.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__cliprdr_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_cliprdr.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__cliprdr_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7eb7cd7eeab0e52c33721cc0564964ea"><td class="memItemLeft" align="right" valign="top">UINT32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">remmina_rdp_cliprdr_get_format_from_gdkatom</a> (GdkAtom atom)</td></tr>
+<tr class="separator:a7eb7cd7eeab0e52c33721cc0564964ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5378f6a230a35d2a84e94ee029a10af4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4">remmina_rdp_cliprdr_get_target_types</a> (UINT32 **formats, UINT16 *size, GdkAtom *types, int count)</td></tr>
+<tr class="separator:a5378f6a230a35d2a84e94ee029a10af4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f9d059736e69df00273ec853d15c772"><td class="memItemLeft" align="right" valign="top">static UINT8 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">lf2crlf</a> (UINT8 *data, int *size)</td></tr>
+<tr class="separator:a4f9d059736e69df00273ec853d15c772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55dec77cdcdc16a6d85680943eb2a859"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">crlf2lf</a> (UINT8 *data, size_t *size)</td></tr>
+<tr class="separator:a55dec77cdcdc16a6d85680943eb2a859"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca54116b93ed1fb466951e51a32f6934"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934">remmina_rdp_cliprdr_server_file_contents_request</a> (CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_REQUEST *fileContentsRequest)</td></tr>
+<tr class="separator:aca54116b93ed1fb466951e51a32f6934"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a660e39f442c17f4668addc15ea5f6b9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b">remmina_rdp_cliprdr_server_file_contents_response</a> (CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_RESPONSE *fileContentsResponse)</td></tr>
+<tr class="separator:a660e39f442c17f4668addc15ea5f6b9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8afec91e9f54fc3a0ea8f25d8349bd8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">remmina_rdp_cliprdr_send_client_format_list</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8afec91e9f54fc3a0ea8f25d8349bd8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c95eb50a82dbeac3c43374eaad8e489"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">remmina_rdp_cliprdr_send_client_capabilities</a> (<a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> *clipboard)</td></tr>
+<tr class="separator:a1c95eb50a82dbeac3c43374eaad8e489"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3ee3696d9fdb72f994184eee168b2ca"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">remmina_rdp_cliprdr_monitor_ready</a> (CliprdrClientContext *context, const CLIPRDR_MONITOR_READY *monitorReady)</td></tr>
+<tr class="separator:aa3ee3696d9fdb72f994184eee168b2ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6e572dab05b136136db71d93dbc0945"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">remmina_rdp_cliprdr_server_capabilities</a> (CliprdrClientContext *context, const CLIPRDR_CAPABILITIES *capabilities)</td></tr>
+<tr class="separator:ad6e572dab05b136136db71d93dbc0945"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0399ec83bd5f5ba0a939594971a5a0d4"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">remmina_rdp_cliprdr_server_format_list</a> (CliprdrClientContext *context, const CLIPRDR_FORMAT_LIST *formatList)</td></tr>
+<tr class="separator:a0399ec83bd5f5ba0a939594971a5a0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a791b93cbc96849e21dfd481d3639f8"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">remmina_rdp_cliprdr_server_format_list_response</a> (CliprdrClientContext *context, const CLIPRDR_FORMAT_LIST_RESPONSE *formatListResponse)</td></tr>
+<tr class="separator:a8a791b93cbc96849e21dfd481d3639f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8007d48887352097a80379b413dd054"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">remmina_rdp_cliprdr_server_format_data_request</a> (CliprdrClientContext *context, const CLIPRDR_FORMAT_DATA_REQUEST *formatDataRequest)</td></tr>
+<tr class="separator:ad8007d48887352097a80379b413dd054"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0542c0eaa15930e06e9afac5d0f88c42"><td class="memItemLeft" align="right" valign="top">static UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">remmina_rdp_cliprdr_server_format_data_response</a> (CliprdrClientContext *context, const CLIPRDR_FORMAT_DATA_RESPONSE *formatDataResponse)</td></tr>
+<tr class="separator:a0542c0eaa15930e06e9afac5d0f88c42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48904924b1064d1bb3bfb6116bac6bd3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">remmina_rdp_cliprdr_request_data</a> (GtkClipboard *gtkClipboard, GtkSelectionData *selection_data, guint info, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a48904924b1064d1bb3bfb6116bac6bd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a719b6820f66508f8acb943a1bf1a495d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">remmina_rdp_cliprdr_empty_clipboard</a> (GtkClipboard *gtkClipboard, <a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> *clipboard)</td></tr>
+<tr class="separator:a719b6820f66508f8acb943a1bf1a495d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb7cad54767b8f658b8ea438690ef4f"><td class="memItemLeft" align="right" valign="top">CLIPRDR_FORMAT_LIST *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:accb7cad54767b8f658b8ea438690ef4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d9b4fd8f4efbac086e3a2a274647ce5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">remmina_rdp_cliprdr_mt_get_format_list</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a9d9b4fd8f4efbac086e3a2a274647ce5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1875ac25f73dd93e4b716746e7c6b8d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">remmina_rdp_cliprdr_get_clipboard_data</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a1875ac25f73dd93e4b716746e7c6b8d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3bc1f06354bf50b72d770f6d14ce0b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">remmina_rdp_cliprdr_set_clipboard_content</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ac3bc1f06354bf50b72d770f6d14ce0b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a007ce9136242f75dc148bd4e2ee5fde5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">remmina_rdp_cliprdr_set_clipboard_data</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a007ce9136242f75dc148bd4e2ee5fde5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d911246d8a6efed5a64b7ecd7b059bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7d911246d8a6efed5a64b7ecd7b059bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4fad618198e7746ea1e4ebd01a9b173"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ad4fad618198e7746ea1e4ebd01a9b173"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3300142e3c2f416896948681ecd45f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:ac3300142e3c2f416896948681ecd45f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4da95b96bf2c86b8f4cc63dcafdd1365"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a4da95b96bf2c86b8f4cc63dcafdd1365"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96bb65801a72ddb0b043438da7654130"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a96bb65801a72ddb0b043438da7654130"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c900a8369c1081e3084f5b17efbe47d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi, CliprdrClientContext *cliprdr)</td></tr>
+<tr class="separator:a2c900a8369c1081e3084f5b17efbe47d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a55dec77cdcdc16a6d85680943eb2a859"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55dec77cdcdc16a6d85680943eb2a859">&#9670;&nbsp;</a></span>crlf2lf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void crlf2lf </td>
+ <td>(</td>
+ <td class="paramtype">UINT8 *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00123">123</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a4f9d059736e69df00273ec853d15c772"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f9d059736e69df00273ec853d15c772">&#9670;&nbsp;</a></span>lf2crlf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT8* lf2crlf </td>
+ <td>(</td>
+ <td class="paramtype">UINT8 *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00091">91</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a96bb65801a72ddb0b043438da7654130"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96bb65801a72ddb0b043438da7654130">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_abort_transfer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_abort_transfer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00814">814</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a4da95b96bf2c86b8f4cc63dcafdd1365"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4da95b96bf2c86b8f4cc63dcafdd1365">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00807">807</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3300142e3c2f416896948681ecd45f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3300142e3c2f416896948681ecd45f3">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00802">802</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d911246d8a6efed5a64b7ecd7b059bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d911246d8a6efed5a64b7ecd7b059bf">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_detach_owner()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_detach_owner </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00763">763</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a719b6820f66508f8acb943a1bf1a495d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a719b6820f66508f8acb943a1bf1a495d">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_empty_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_empty_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkClipboard *&#160;</td>
+ <td class="paramname"><em>gtkClipboard</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> *&#160;</td>
+ <td class="paramname"><em>clipboard</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00555">555</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="accb7cad54767b8f658b8ea438690ef4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accb7cad54767b8f658b8ea438690ef4f">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_get_client_format_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CLIPRDR_FORMAT_LIST* remmina_rdp_cliprdr_get_client_format_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00561">561</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a1875ac25f73dd93e4b716746e7c6b8d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1875ac25f73dd93e4b716746e7c6b8d5">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_get_clipboard_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_get_clipboard_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00632">632</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a7eb7cd7eeab0e52c33721cc0564964ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7eb7cd7eeab0e52c33721cc0564964ea">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_get_format_from_gdkatom()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT32 remmina_rdp_cliprdr_get_format_from_gdkatom </td>
+ <td>(</td>
+ <td class="paramtype">GdkAtom&#160;</td>
+ <td class="paramname"><em>atom</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00048">48</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a5378f6a230a35d2a84e94ee029a10af4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5378f6a230a35d2a84e94ee029a10af4">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_get_target_types()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_get_target_types </td>
+ <td>(</td>
+ <td class="paramtype">UINT32 **&#160;</td>
+ <td class="paramname"><em>formats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT16 *&#160;</td>
+ <td class="paramname"><em>size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkAtom *&#160;</td>
+ <td class="paramname"><em>types</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00072">72</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a2c900a8369c1081e3084f5b17efbe47d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c900a8369c1081e3084f5b17efbe47d">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>cliprdr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00826">826</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3ee3696d9fdb72f994184eee168b2ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3ee3696d9fdb72f994184eee168b2ca">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_monitor_ready()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_monitor_ready </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_MONITOR_READY *&#160;</td>
+ <td class="paramname"><em>monitorReady</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00199">199</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d9b4fd8f4efbac086e3a2a274647ce5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d9b4fd8f4efbac086e3a2a274647ce5">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_mt_get_format_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_cliprdr_mt_get_format_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00625">625</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a48904924b1064d1bb3bfb6116bac6bd3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48904924b1064d1bb3bfb6116bac6bd3">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_request_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_request_data </td>
+ <td>(</td>
+ <td class="paramtype">GtkClipboard *&#160;</td>
+ <td class="paramname"><em>gtkClipboard</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkSelectionData *&#160;</td>
+ <td class="paramname"><em>selection_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>info</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00468">468</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a1c95eb50a82dbeac3c43374eaad8e489"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c95eb50a82dbeac3c43374eaad8e489">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_send_client_capabilities()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_cliprdr_send_client_capabilities </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> *&#160;</td>
+ <td class="paramname"><em>clipboard</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00180">180</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a8afec91e9f54fc3a0ea8f25d8349bd8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8afec91e9f54fc3a0ea8f25d8349bd8b">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_send_client_format_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_send_client_format_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00155">155</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6e572dab05b136136db71d93dbc0945"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6e572dab05b136136db71d93dbc0945">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_capabilities()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_server_capabilities </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_CAPABILITIES *&#160;</td>
+ <td class="paramname"><em>capabilities</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00212">212</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="aca54116b93ed1fb466951e51a32f6934"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca54116b93ed1fb466951e51a32f6934">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_file_contents_request()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_cliprdr_server_file_contents_request </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">CLIPRDR_FILE_CONTENTS_REQUEST *&#160;</td>
+ <td class="paramname"><em>fileContentsRequest</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00144">144</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a660e39f442c17f4668addc15ea5f6b9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a660e39f442c17f4668addc15ea5f6b9b">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_file_contents_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_cliprdr_server_file_contents_response </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">CLIPRDR_FILE_CONTENTS_RESPONSE *&#160;</td>
+ <td class="paramname"><em>fileContentsResponse</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00149">149</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ad8007d48887352097a80379b413dd054"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8007d48887352097a80379b413dd054">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_format_data_request()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_server_format_data_request </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_FORMAT_DATA_REQUEST *&#160;</td>
+ <td class="paramname"><em>formatDataRequest</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00322">322</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a0542c0eaa15930e06e9afac5d0f88c42"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0542c0eaa15930e06e9afac5d0f88c42">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_format_data_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_server_format_data_response </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_FORMAT_DATA_RESPONSE *&#160;</td>
+ <td class="paramname"><em>formatDataResponse</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00343">343</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a0399ec83bd5f5ba0a939594971a5a0d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0399ec83bd5f5ba0a939594971a5a0d4">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_format_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_server_format_list </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_FORMAT_LIST *&#160;</td>
+ <td class="paramname"><em>formatList</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00219">219</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a8a791b93cbc96849e21dfd481d3639f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a791b93cbc96849e21dfd481d3639f8">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_server_format_list_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static UINT remmina_rdp_cliprdr_server_format_list_response </td>
+ <td>(</td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const CLIPRDR_FORMAT_LIST_RESPONSE *&#160;</td>
+ <td class="paramname"><em>formatListResponse</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00315">315</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3bc1f06354bf50b72d770f6d14ce0b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3bc1f06354bf50b72d770f6d14ce0b3">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_set_clipboard_content()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_set_clipboard_content </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00726">726</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a007ce9136242f75dc148bd4e2ee5fde5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a007ce9136242f75dc148bd4e2ee5fde5">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_set_clipboard_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_set_clipboard_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00742">742</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4fad618198e7746ea1e4ebd01a9b173"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4fad618198e7746ea1e4ebd01a9b173">&#9670;&nbsp;</a></span>remmina_rdp_event_process_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_process_clipboard </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00779">779</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__cliprdr_8c.html">rdp_cliprdr.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__cliprdr_8c.js b/docs/rdp__cliprdr_8c.js
new file mode 100644
index 000000000..aad79a3c4
--- /dev/null
+++ b/docs/rdp__cliprdr_8c.js
@@ -0,0 +1,30 @@
+var rdp__cliprdr_8c =
+[
+ [ "crlf2lf", "rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859", null ],
+ [ "lf2crlf", "rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772", null ],
+ [ "remmina_rdp_clipboard_abort_transfer", "rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130", null ],
+ [ "remmina_rdp_clipboard_free", "rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365", null ],
+ [ "remmina_rdp_clipboard_init", "rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3", null ],
+ [ "remmina_rdp_cliprdr_detach_owner", "rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf", null ],
+ [ "remmina_rdp_cliprdr_empty_clipboard", "rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d", null ],
+ [ "remmina_rdp_cliprdr_get_client_format_list", "rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f", null ],
+ [ "remmina_rdp_cliprdr_get_clipboard_data", "rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5", null ],
+ [ "remmina_rdp_cliprdr_get_format_from_gdkatom", "rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea", null ],
+ [ "remmina_rdp_cliprdr_get_target_types", "rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4", null ],
+ [ "remmina_rdp_cliprdr_init", "rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d", null ],
+ [ "remmina_rdp_cliprdr_monitor_ready", "rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca", null ],
+ [ "remmina_rdp_cliprdr_mt_get_format_list", "rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5", null ],
+ [ "remmina_rdp_cliprdr_request_data", "rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3", null ],
+ [ "remmina_rdp_cliprdr_send_client_capabilities", "rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489", null ],
+ [ "remmina_rdp_cliprdr_send_client_format_list", "rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b", null ],
+ [ "remmina_rdp_cliprdr_server_capabilities", "rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945", null ],
+ [ "remmina_rdp_cliprdr_server_file_contents_request", "rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934", null ],
+ [ "remmina_rdp_cliprdr_server_file_contents_response", "rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b", null ],
+ [ "remmina_rdp_cliprdr_server_format_data_request", "rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054", null ],
+ [ "remmina_rdp_cliprdr_server_format_data_response", "rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42", null ],
+ [ "remmina_rdp_cliprdr_server_format_list", "rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4", null ],
+ [ "remmina_rdp_cliprdr_server_format_list_response", "rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8", null ],
+ [ "remmina_rdp_cliprdr_set_clipboard_content", "rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3", null ],
+ [ "remmina_rdp_cliprdr_set_clipboard_data", "rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5", null ],
+ [ "remmina_rdp_event_process_clipboard", "rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__cliprdr_8c_source.html b/docs/rdp__cliprdr_8c_source.html
new file mode 100644
index 000000000..85aba9603
--- /dev/null
+++ b/docs/rdp__cliprdr_8c_source.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_cliprdr.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__cliprdr_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_cliprdr.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__cliprdr_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) 2012-2012 Jean-Louis Dupond</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-2020 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;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__event_8h.html">rdp_event.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;freerdp/channels/channels.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cliprdr.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;sys/time.h&gt;</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"> 46</span>&#160;<span class="preprocessor">#define CLIPBOARD_TRANSFER_WAIT_TIME 6</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"><a class="line" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea"> 48</a></span>&#160;UINT32 <a class="code" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">remmina_rdp_cliprdr_get_format_from_gdkatom</a>(GdkAtom atom)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; UINT32 rc;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; gchar *name = gdk_atom_name(atom);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; rc = 0;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;UTF8_STRING&quot;</span>, name) == 0 || g_strcmp0(<span class="stringliteral">&quot;text/plain;charset=utf-8&quot;</span>, name) == 0)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; rc = CF_UNICODETEXT;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;TEXT&quot;</span>, name) == 0 || g_strcmp0(<span class="stringliteral">&quot;text/plain&quot;</span>, name) == 0)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; rc = CF_TEXT;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;text/html&quot;</span>, name) == 0)</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; rc = CB_FORMAT_HTML;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;image/png&quot;</span>, name) == 0)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; rc = CB_FORMAT_PNG;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;image/jpeg&quot;</span>, name) == 0)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; rc = CB_FORMAT_JPEG;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;image/bmp&quot;</span>, name) == 0)</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; rc = CF_DIB;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<span class="stringliteral">&quot;text/uri-list&quot;</span>, name) == 0)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; rc = CB_FORMAT_TEXTURILIST;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; g_free(name);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> rc;</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;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4"> 72</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4">remmina_rdp_cliprdr_get_target_types</a>(UINT32 **formats, UINT16 *size, GdkAtom *types, <span class="keywordtype">int</span> count)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; *size = 1;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; *formats = (UINT32 *)malloc(<span class="keyword">sizeof</span>(UINT32) * (count + 1));</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; *formats[0] = 0;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; count; i++) {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; UINT32 format = <a class="code" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">remmina_rdp_cliprdr_get_format_from_gdkatom</a>(types[i]);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (format != 0) {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; (*formats)[*size] = format;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; (*size)++;</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; }</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; *formats = realloc(*formats, <span class="keyword">sizeof</span>(UINT32) * (*size));</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</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"><a class="line" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772"> 91</a></span>&#160;<span class="keyword">static</span> UINT8 *<a class="code" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">lf2crlf</a>(UINT8 *data, <span class="keywordtype">int</span> *size)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; UINT8 c;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; UINT8 *outbuf;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; UINT8 *out;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; UINT8 *in_end;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; UINT8 *in;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">int</span> out_size;</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; out_size = (*size) * 2 + 1;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; outbuf = (UINT8 *)malloc(out_size);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; out = outbuf;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; in = data;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; in_end = data + (*size);</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="keywordflow">while</span> (in &lt; in_end) {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; c = *in++;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span> (c == <span class="charliteral">&#39;\n&#39;</span>) {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; *out++ = <span class="charliteral">&#39;\r&#39;</span>;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; *out++ = <span class="charliteral">&#39;\n&#39;</span>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; *out++ = c;</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; }</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; *out++ = 0;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; *size = out - outbuf;</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> outbuf;</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="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859"> 123</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">crlf2lf</a>(UINT8 *data, <span class="keywordtype">size_t</span> *size)</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; UINT8 c;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; UINT8 *out;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; UINT8 *in;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; UINT8 *in_end;</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; out = data;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; in = data;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; in_end = data + (*size);</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; <span class="keywordflow">while</span> (in &lt; in_end) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; c = *in++;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (c != <span class="charliteral">&#39;\r&#39;</span>)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; *out++ = c;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</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; *size = out - data;</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;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934"> 144</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934">remmina_rdp_cliprdr_server_file_contents_request</a>(CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_REQUEST *fileContentsRequest)</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;{</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> -1;</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"><a class="line" href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b"> 149</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b">remmina_rdp_cliprdr_server_file_contents_response</a>(CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_RESPONSE *fileContentsResponse)</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;{</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> 1;</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="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b"> 155</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">remmina_rdp_cliprdr_send_client_format_list</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; CLIPRDR_FORMAT_LIST *pFormatList;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</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"> 164</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; clipboard = &amp;(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.clipboard = clipboard;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.type = <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; pFormatList = <a class="code" href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a>(gp, ui);</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; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">clipboard_formatlist</a>.pFormatList = pFormatList;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;}</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489"> 180</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">remmina_rdp_cliprdr_send_client_capabilities</a>(<a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard)</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; CLIPRDR_CAPABILITIES capabilities;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; CLIPRDR_GENERAL_CAPABILITY_SET generalCapabilitySet;</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; capabilities.cCapabilitiesSets = 1;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; capabilities.capabilitySets = (CLIPRDR_CAPABILITY_SET *)&amp;(generalCapabilitySet);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; generalCapabilitySet.capabilitySetType = CB_CAPSTYPE_GENERAL;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; generalCapabilitySet.capabilitySetLength = 12;</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; generalCapabilitySet.version = CB_CAPS_VERSION_2;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; generalCapabilitySet.generalFlags = CB_USE_LONG_FORMAT_NAMES;</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; clipboard-&gt;<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>-&gt;ClientCapabilities(clipboard-&gt;<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>, &amp;capabilities);</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;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca"> 199</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">remmina_rdp_cliprdr_monitor_ready</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_MONITOR_READY *monitorReady)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard = (<a class="code" href="structrf__clipboard.html">rfClipboard</a> *)context-&gt;custom;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">remmina_rdp_cliprdr_send_client_capabilities</a>(clipboard);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; gp = clipboard-&gt;<a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a>-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">remmina_rdp_cliprdr_send_client_format_list</a>(gp);</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; <span class="keywordflow">return</span> CHANNEL_RC_OK;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</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"><a class="line" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945"> 212</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">remmina_rdp_cliprdr_server_capabilities</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_CAPABILITIES *capabilities)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> CHANNEL_RC_OK;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;}</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"><a class="line" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4"> 219</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">remmina_rdp_cliprdr_server_format_list</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_FORMAT_LIST *formatList)</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"> 221</span>&#160; TRACE_CALL(__func__);</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; <span class="comment">/* Called when a user do a &quot;Copy&quot; on the server: we collect all formats</span></div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> * the server send us and then setup the local clipboard with the appropriate</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> * targets to request server data */</span></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; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; CLIPRDR_FORMAT *format;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; CLIPRDR_FORMAT_LIST_RESPONSE formatListResponse;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *serverFormatName;</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; <span class="keywordtype">int</span> has_dib_level = 0;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; clipboard = (<a class="code" href="structrf__clipboard.html">rfClipboard</a> *)context-&gt;custom;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; gp = clipboard-&gt;<a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a>-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; GtkTargetList *list = gtk_target_list_new(NULL, 0);</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; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;format list from the server:&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; formatList-&gt;numFormats; i++) {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; format = &amp;formatList-&gt;formats[i];</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; serverFormatName = format-&gt;formatName;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">if</span> (format-&gt;formatId == CF_UNICODETEXT) {</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_UNICODETEXT&quot;</span>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;UTF8_STRING&quot;</span>, TRUE);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gtk_target_list_add(list, atom, 0, CF_UNICODETEXT);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CF_TEXT) {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_TEXT&quot;</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;TEXT&quot;</span>, TRUE);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gtk_target_list_add(list, atom, 0, CF_TEXT);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CF_DIB) {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_DIB&quot;</span>;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (has_dib_level &lt; 1)</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; has_dib_level = 1;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CF_DIBV5) {</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_DIBV5&quot;</span>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">if</span> (has_dib_level &lt; 5)</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; has_dib_level = 5;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CB_FORMAT_JPEG) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; serverFormatName = <span class="stringliteral">&quot;CB_FORMAT_JPEG&quot;</span>;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;image/jpeg&quot;</span>, TRUE);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gtk_target_list_add(list, atom, 0, CB_FORMAT_JPEG);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CB_FORMAT_PNG) {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; serverFormatName = <span class="stringliteral">&quot;CB_FORMAT_PNG&quot;</span>;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;image/png&quot;</span>, TRUE);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; gtk_target_list_add(list, atom, 0, CB_FORMAT_PNG);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CB_FORMAT_HTML) {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; serverFormatName = <span class="stringliteral">&quot;CB_FORMAT_HTML&quot;</span>;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;text/html&quot;</span>, TRUE);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; gtk_target_list_add(list, atom, 0, CB_FORMAT_HTML);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CB_FORMAT_TEXTURILIST) {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; serverFormatName = <span class="stringliteral">&quot;CB_FORMAT_TEXTURILIST&quot;</span>;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;text/uri-list&quot;</span>, TRUE);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; gtk_target_list_add(list, atom, 0, CB_FORMAT_TEXTURILIST);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CF_LOCALE) {</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_LOCALE&quot;</span>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (format-&gt;formatId == CF_METAFILEPICT) {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; serverFormatName = <span class="stringliteral">&quot;CF_METAFILEPICT&quot;</span>;</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; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;the server has clipboard format %d: %s&quot;</span>, format-&gt;formatId, serverFormatName);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; }</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">/* Keep only one DIB format, if present */</span></div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (has_dib_level) {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; GdkAtom atom = gdk_atom_intern(<span class="stringliteral">&quot;image/bmp&quot;</span>, TRUE);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span> (has_dib_level == 5)</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; gtk_target_list_add(list, atom, 0, CF_DIBV5);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; gtk_target_list_add(list, atom, 0, CF_DIB);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; }</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="comment">/* Now we tell GTK to change the local keyboard calling gtk_clipboard_set_with_owner</span></div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment"> * via REMMINA_RDP_UI_CLIPBOARD_SET_DATA</span></div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment"> * GTK will immediately fire an &quot;owner-change&quot; event, that we should ignore */</span></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; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.clipboard = clipboard;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.type = <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a>;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.targetlist = list;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(gp, ui);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="comment">/* Send FormatListResponse to server */</span></div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; formatListResponse.msgType = CB_FORMAT_LIST_RESPONSE;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; formatListResponse.msgFlags = CB_RESPONSE_OK; <span class="comment">// Can be CB_RESPONSE_FAIL in case of error</span></div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; formatListResponse.dataLen = 0;</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; <span class="keywordflow">return</span> clipboard-&gt;<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>-&gt;ClientFormatListResponse(clipboard-&gt;<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>, &amp;formatListResponse);</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;</div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8"> 315</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">remmina_rdp_cliprdr_server_format_list_response</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_FORMAT_LIST_RESPONSE *formatListResponse)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> CHANNEL_RC_OK;</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;</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="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054"> 322</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">remmina_rdp_cliprdr_server_format_data_request</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_FORMAT_DATA_REQUEST *formatDataRequest)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</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; clipboard = (<a class="code" href="structrf__clipboard.html">rfClipboard</a> *)context-&gt;custom;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; gp = clipboard-&gt;<a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a>-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</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; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.clipboard = clipboard;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.type = <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a>;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> = formatDataRequest-&gt;requestedFormatId;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(gp, ui);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> CHANNEL_RC_OK;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;}</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"><a class="line" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42"> 343</a></span>&#160;<span class="keyword">static</span> UINT <a class="code" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">remmina_rdp_cliprdr_server_format_data_response</a>(CliprdrClientContext *context, <span class="keyword">const</span> CLIPRDR_FORMAT_DATA_RESPONSE *formatDataResponse)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keyword">const</span> UINT8 *data;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordtype">size_t</span> size;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; GdkPixbufLoader *pixbuf;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; gpointer output = NULL;</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"> 355</span>&#160; clipboard = (<a class="code" href="structrf__clipboard.html">rfClipboard</a> *)context-&gt;custom;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; gp = clipboard-&gt;<a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a>-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; rfi = GET_PLUGIN_DATA(gp);</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; data = formatDataResponse-&gt;requestedFormatData;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; size = formatDataResponse-&gt;dataLen;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="comment">// formatDataResponse-&gt;requestedFormatData is allocated</span></div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="comment">// by freerdp and freed after returning from this callback function.</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="comment">// So we must make a copy if we need to preserve it</span></div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">if</span> (size &gt; 0) {</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">switch</span> (rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>) {</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">case</span> CF_UNICODETEXT:</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; size = ConvertFromUnicode(CP_UTF8, 0, (WCHAR *)data, size / 2, (CHAR **)&amp;output, 0, NULL, NULL);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">crlf2lf</a>(output, &amp;size);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; }</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">case</span> CF_TEXT:</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_HTML:</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; output = (gpointer)calloc(1, size + 1);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">if</span> (output) {</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; memcpy(output, data, size);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">crlf2lf</a>(output, &amp;size);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; }</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">case</span> CF_DIBV5:</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">case</span> CF_DIB:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; {</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; wStream *s;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; UINT32 offset;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; GError *perr;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; BITMAPINFOHEADER *pbi;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; BITMAPV5HEADER *pbi5;</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; pbi = (BITMAPINFOHEADER *)data;</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="comment">// offset calculation inspired by http://downloads.poolelan.com/MSDN/MSDNLibrary6/Disk1/Samples/VC/OS/WindowsXP/GetImage/BitmapUtil.cpp</span></div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; offset = 14 + pbi-&gt;biSize;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">if</span> (pbi-&gt;biClrUsed != 0)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; offset += <span class="keyword">sizeof</span>(RGBQUAD) * pbi-&gt;biClrUsed;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">else</span> if (pbi-&gt;biBitCount &lt;= 8)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; offset += <span class="keyword">sizeof</span>(RGBQUAD) * (1 &lt;&lt; pbi-&gt;biBitCount);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (pbi-&gt;biSize == <span class="keyword">sizeof</span>(BITMAPINFOHEADER)) {</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">if</span> (pbi-&gt;biCompression == 3) <span class="comment">// BI_BITFIELDS is 3</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; offset += 12;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (pbi-&gt;biSize &gt;= <span class="keyword">sizeof</span>(BITMAPV5HEADER)) {</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; pbi5 = (BITMAPV5HEADER *)pbi;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">if</span> (pbi5-&gt;bV5ProfileData &lt;= offset)</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; offset += pbi5-&gt;bV5ProfileSize;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; }</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; s = Stream_New(NULL, 14 + size);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; Stream_Write_UINT8(s, <span class="charliteral">&#39;B&#39;</span>);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; Stream_Write_UINT8(s, <span class="charliteral">&#39;M&#39;</span>);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; Stream_Write_UINT32(s, 14 + size);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; Stream_Write_UINT32(s, 0);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; Stream_Write_UINT32(s, offset);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; Stream_Write(s, data, size);</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; data = Stream_Buffer(s);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; size = Stream_Length(s);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; pixbuf = gdk_pixbuf_loader_new();</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; perr = NULL;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">if</span> (!gdk_pixbuf_loader_write(pixbuf, data, size, &amp;perr)) {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; Stream_Free(s, TRUE);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; g_warning(<span class="stringliteral">&quot;[RDP] rdp_cliprdr: gdk_pixbuf_loader_write() returned error %s\n&quot;</span>, perr-&gt;message);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span> (!gdk_pixbuf_loader_close(pixbuf, &amp;perr)) {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; g_warning(<span class="stringliteral">&quot;[RDP] rdp_cliprdr: gdk_pixbuf_loader_close() returned error %s\n&quot;</span>, perr-&gt;message);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; perr = NULL;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; Stream_Free(s, TRUE);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; output = g_object_ref(gdk_pixbuf_loader_get_pixbuf(pixbuf));</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; g_object_unref(pixbuf);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; }</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; <span class="keywordflow">case</span> CB_FORMAT_PNG:</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_JPEG:</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; pixbuf = gdk_pixbuf_loader_new();</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; gdk_pixbuf_loader_write(pixbuf, data, size, NULL);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; output = g_object_ref(gdk_pixbuf_loader_get_pixbuf(pixbuf));</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; gdk_pixbuf_loader_close(pixbuf, NULL);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; g_object_unref(pixbuf);</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; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</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;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; pthread_mutex_lock(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; pthread_cond_signal(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">transfer_clip_cond</a>);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">if</span> (clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> == SCDW_BUSY_WAIT) {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;clibpoard transfer from server completed.&quot;</span>);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a> = output;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="comment">// Clipboard data arrived from server when we are not busywaiting on main loop</span></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="comment">// Unfortunately, we must discard it</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;clibpoard transfer from server completed. Data discarded due to abort or timeout.&quot;</span>);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_NONE;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; }</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; pthread_mutex_unlock(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> CHANNEL_RC_OK;</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;</div><div class="line"><a name="l00468"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3"> 468</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">remmina_rdp_cliprdr_request_data</a>(GtkClipboard *gtkClipboard, GtkSelectionData *selection_data, guint info, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;{</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="comment">/* Called by GTK when someone press &quot;Paste&quot; on the client side.</span></div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="comment"> * We ask to the server the data we need */</span></div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; CLIPRDR_FORMAT_DATA_REQUEST *pFormatDataRequest;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keyword">struct </span>timespec to;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keyword">struct </span>timeval tv;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordtype">int</span> rc;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; time_t tlimit;</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; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;A local application has requested remote clipboard data for local format id %d&quot;</span>, info);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; clipboard = &amp;(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">if</span> (clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> != SCDW_NONE) {</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; g_message(<span class="stringliteral">&quot;[RDP] Cannot paste now, I’m already transferring clipboard data from server. Try again later\n&quot;</span>);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> = info;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="comment">/* Request Clipboard content from the server, the request is async */</span></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; pthread_mutex_lock(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>);</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; pFormatDataRequest = (CLIPRDR_FORMAT_DATA_REQUEST *)malloc(<span class="keyword">sizeof</span>(CLIPRDR_FORMAT_DATA_REQUEST));</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; ZeroMemory(pFormatDataRequest, <span class="keyword">sizeof</span>(CLIPRDR_FORMAT_DATA_REQUEST));</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; pFormatDataRequest-&gt;requestedFormatId = clipboard-&gt;<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_BUSY_WAIT;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Requesting clipboard data with fotmat %d from the server&quot;</span>, clipboard-&gt;<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a>;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">clipboard_formatdatarequest</a>.pFormatDataRequest = pFormatDataRequest;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="comment">/* Busy wait clibpoard data for CLIPBOARD_TRANSFER_WAIT_TIME seconds.</span></div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;<span class="comment"> * In the meanwhile allow GTK event loop to proceed */</span></div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; tlimit = time(NULL) + CLIPBOARD_TRANSFER_WAIT_TIME;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; rc = 100000;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">while</span> (time(NULL) &lt; tlimit &amp;&amp; rc != 0 &amp;&amp; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> == SCDW_BUSY_WAIT) {</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; gettimeofday(&amp;tv, NULL);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; to.tv_sec = tv.tv_sec;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; to.tv_nsec = tv.tv_usec * 1000 + 40000000; <span class="comment">// wait for 40ms</span></div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">if</span> (to.tv_nsec &gt;= 1000000000) {</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; to.tv_nsec -= 1000000000;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; to.tv_sec++;</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; rc = pthread_cond_timedwait(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">transfer_clip_cond</a>, &amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>, &amp;to);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; gtk_main_iteration_do(FALSE);</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;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">if</span> (rc == 0) {</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="comment">/* Data has arrived without timeout */</span></div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">if</span> (clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a> != NULL) {</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keywordflow">if</span> (info == CB_FORMAT_PNG || info == CF_DIB || info == CF_DIBV5 || info == CB_FORMAT_JPEG) {</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; gtk_selection_data_set_pixbuf(selection_data, clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a>);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; g_object_unref(clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a>);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gtk_selection_data_set_text(selection_data, clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a>, -1);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; free(clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a>);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; }</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; }</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_NONE;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keywordflow">if</span> (clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> == SCDW_ABORTING) {</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; g_warning(<span class="stringliteral">&quot;[RDP] Clipboard data wait aborted.&quot;</span>);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">if</span> (rc == ETIMEDOUT)</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; g_warning(<span class="stringliteral">&quot;[RDP] Clipboard data from the server is not available in %d seconds. No data will be available to user.&quot;</span>,</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; CLIPBOARD_TRANSFER_WAIT_TIME);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; g_warning(<span class="stringliteral">&quot;[RDP] internal error: pthread_cond_timedwait() returned %d\n&quot;</span>, rc);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; }</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_NONE;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; }</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; pthread_mutex_unlock(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;}</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d"> 555</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">remmina_rdp_cliprdr_empty_clipboard</a>(GtkClipboard *gtkClipboard, <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard)</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;{</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="comment">/* No need to do anything here */</span></div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;}</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f"> 561</a></span>&#160;CLIPRDR_FORMAT_LIST *<a class="code" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</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; GtkClipboard *gtkClipboard;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; GdkAtom *targets;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; gboolean result = 0;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; gint loccount, srvcount;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; gint formatId, i;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; CLIPRDR_FORMAT *formats;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gchar *name;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keyword">struct </span>retp_t {</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; CLIPRDR_FORMAT_LIST pFormatList;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; CLIPRDR_FORMAT formats[];</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; } *retp;</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; formats = NULL;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; retp = NULL;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gtkClipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">if</span> (gtkClipboard)</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; result = gtk_clipboard_wait_for_targets(gtkClipboard, &amp;targets, &amp;loccount);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Sending to server the following local clipboard content formats&quot;</span>);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">if</span> (result &amp;&amp; loccount &gt; 0) {</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; formats = (CLIPRDR_FORMAT *)malloc(loccount * <span class="keyword">sizeof</span>(CLIPRDR_FORMAT));</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; srvcount = 0;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; loccount; i++) {</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; formatId = <a class="code" href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">remmina_rdp_cliprdr_get_format_from_gdkatom</a>(targets[i]);</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">if</span> (formatId != 0) {</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; name = gdk_atom_name(targets[i]);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot; local clipboard format %s will be sent to remote as %d&quot;</span>, name, formatId);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; g_free(name);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; formats[srvcount].formatId = formatId;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; formats[srvcount].formatName = NULL;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; srvcount++;</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; <span class="keywordflow">if</span> (srvcount &gt; 0) {</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; retp = (<span class="keyword">struct </span>retp_t *)malloc(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> retp_t) + <span class="keyword">sizeof</span>(CLIPRDR_FORMAT) * srvcount);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; retp-&gt;pFormatList.formats = retp-&gt;formats;</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; retp-&gt;pFormatList.numFormats = srvcount;</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; memcpy(retp-&gt;formats, formats, <span class="keyword">sizeof</span>(CLIPRDR_FORMAT) * srvcount);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; retp = (<span class="keyword">struct </span>retp_t *)malloc(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> retp_t));</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; retp-&gt;pFormatList.formats = NULL;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; retp-&gt;pFormatList.numFormats = 0;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; }</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; free(formats);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; retp = (<span class="keyword">struct </span>retp_t *)malloc(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> retp_t) + <span class="keyword">sizeof</span>(CLIPRDR_FORMAT));</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; retp-&gt;pFormatList.formats = NULL;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; retp-&gt;pFormatList.numFormats = 0;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; }</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; <span class="keywordflow">if</span> (result)</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; g_free(targets);</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; retp-&gt;pFormatList.msgFlags = CB_RESPONSE_OK;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">return</span> (CLIPRDR_FORMAT_LIST *)retp;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;}</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div><div class="line"><a name="l00625"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5"> 625</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">remmina_rdp_cliprdr_mt_get_format_list</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui)</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;{</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">retptr</a> = (<span class="keywordtype">void</span> *)<a class="code" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a>(gp);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;}</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5"> 632</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">remmina_rdp_cliprdr_get_clipboard_data</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui)</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;{</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; GtkClipboard *gtkClipboard;</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; UINT8 *inbuf = NULL;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; UINT8 *outbuf = NULL;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; GdkPixbuf *image = NULL;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordtype">int</span> size = 0;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; gtkClipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="keywordflow">if</span> (gtkClipboard) {</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>) {</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordflow">case</span> CF_TEXT:</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">case</span> CF_UNICODETEXT:</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_HTML:</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; inbuf = (UINT8 *)gtk_clipboard_wait_for_text(gtkClipboard);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; }</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_PNG:</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_JPEG:</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">case</span> CF_DIB:</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keywordflow">case</span> CF_DIBV5:</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; image = gtk_clipboard_wait_for_image(gtkClipboard);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; }</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="comment">/* No data received, send nothing */</span></div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordflow">if</span> (inbuf != NULL || image != NULL) {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>) {</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">case</span> CF_TEXT:</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_HTML:</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; {</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; size = strlen((<span class="keywordtype">char</span> *)inbuf);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; outbuf = <a class="code" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">lf2crlf</a>(inbuf, &amp;size);</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; <span class="keywordflow">case</span> CF_UNICODETEXT:</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; {</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; size = strlen((<span class="keywordtype">char</span> *)inbuf);</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; inbuf = <a class="code" href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">lf2crlf</a>(inbuf, &amp;size);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; size = (ConvertToUnicode(CP_UTF8, 0, (CHAR *)inbuf, -1, (WCHAR **)&amp;outbuf, 0)) * <span class="keyword">sizeof</span>(WCHAR);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; g_free(inbuf);</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; }</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_PNG:</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; {</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; gchar *data;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; gsize buffersize;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; gdk_pixbuf_save_to_buffer(image, &amp;data, &amp;buffersize, <span class="stringliteral">&quot;png&quot;</span>, NULL, NULL);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; outbuf = (UINT8 *)malloc(buffersize);</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; memcpy(outbuf, data, buffersize);</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; size = buffersize;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; g_object_unref(image);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; }</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">case</span> CB_FORMAT_JPEG:</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; {</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; gchar *data;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; gsize buffersize;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; gdk_pixbuf_save_to_buffer(image, &amp;data, &amp;buffersize, <span class="stringliteral">&quot;jpeg&quot;</span>, NULL, NULL);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; outbuf = (UINT8 *)malloc(buffersize);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; memcpy(outbuf, data, buffersize);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; size = buffersize;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; g_object_unref(image);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">break</span>;</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="keywordflow">case</span> CF_DIB:</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keywordflow">case</span> CF_DIBV5:</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; gchar *data;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; gsize buffersize;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; gdk_pixbuf_save_to_buffer(image, &amp;data, &amp;buffersize, <span class="stringliteral">&quot;bmp&quot;</span>, NULL, NULL);</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; size = buffersize - 14;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; outbuf = (UINT8 *)malloc(size);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; memcpy(outbuf, data + 14, size);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; g_object_unref(image);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; }</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; }</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; }</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a>;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">clipboard_formatdataresponse</a>.data = outbuf;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">clipboard_formatdataresponse</a>.size = size;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;}</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3"> 726</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">remmina_rdp_cliprdr_set_clipboard_content</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; GtkClipboard *gtkClipboard;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</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; gtkClipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">if</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> == CB_FORMAT_PNG || ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> == CF_DIB || ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> == CF_DIBV5 || ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.<a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a> == CB_FORMAT_JPEG) {</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; gtk_clipboard_set_image(gtkClipboard, ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.data);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; g_object_unref(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.data);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; gtk_clipboard_set_text(gtkClipboard, ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.data, -1);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; free(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.data);</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;}</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div><div class="line"><a name="l00742"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5"> 742</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">remmina_rdp_cliprdr_set_clipboard_data</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui)</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;{</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; GtkClipboard *gtkClipboard;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; GtkTargetEntry *targets;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; gint n_targets;</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; gtkClipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">if</span> (gtkClipboard) {</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; targets = gtk_target_table_new_from_list(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.targetlist, &amp;n_targets);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">if</span> (targets) {</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;setting clipboard with owner to owner %p&quot;</span>, gp);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; gtk_clipboard_set_with_owner(gtkClipboard, targets, n_targets,</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; (GtkClipboardGetFunc)<a class="code" href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">remmina_rdp_cliprdr_request_data</a>,</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; (GtkClipboardClearFunc)<a class="code" href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">remmina_rdp_cliprdr_empty_clipboard</a>, G_OBJECT(gp));</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; gtk_target_table_free(targets, n_targets);</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"> 762</span>&#160;</div><div class="line"><a name="l00763"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf"> 763</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;{</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="comment">/* When closing a rdp connection, we should check if gp is a clipboard owner.</span></div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160;<span class="comment"> * If it’s an owner, detach it from the clipboard */</span></div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; GtkClipboard *gtkClipboard;</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; gtkClipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <span class="keywordflow">if</span> (gtkClipboard &amp;&amp; gtk_clipboard_get_owner(gtkClipboard) == (GObject *)gp)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; gtk_clipboard_clear(gtkClipboard);</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;}</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"><a class="line" href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173"> 779</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui)</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;{</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>.type) {</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a>:</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">remmina_rdp_cliprdr_mt_get_format_list</a>(gp, ui);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a>:</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">remmina_rdp_cliprdr_get_clipboard_data</a>(gp, ui);</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a>:</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">remmina_rdp_cliprdr_set_clipboard_data</a>(gp, ui);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">break</span>;</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"> 796</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT</a>:</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">remmina_rdp_cliprdr_set_clipboard_content</a>(gp, ui);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; }</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;}</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"><a class="line" href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3"> 802</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <span class="comment">// Future: initialize rfi-&gt;clipboard</span></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"><a class="line" href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365"> 807</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="comment">// Future: deinitialize rfi-&gt;clipboard</span></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="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130"> 814</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi)</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; <span class="keywordflow">if</span> (rfi &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> == SCDW_BUSY_WAIT) {</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;requesting clipboard transfer to abort&quot;</span>);</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <span class="comment">/* Allow clipboard transfer from server to terminate */</span></div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_ABORTING;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; usleep(100000);</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; }</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160;}</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;</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;</div><div class="line"><a name="l00826"></a><span class="lineno"><a class="line" href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d"> 826</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi, CliprdrClientContext *cliprdr)</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;{</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> *clipboard;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; clipboard = &amp;(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>);</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a> = rfi;</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; cliprdr-&gt;custom = (<span class="keywordtype">void</span> *)clipboard;</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a> = cliprdr;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; pthread_mutex_init(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>, NULL);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; pthread_cond_init(&amp;clipboard-&gt;<a class="code" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">transfer_clip_cond</a>, NULL);</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; clipboard-&gt;<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_NONE;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; cliprdr-&gt;MonitorReady = <a class="code" href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">remmina_rdp_cliprdr_monitor_ready</a>;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; cliprdr-&gt;ServerCapabilities = <a class="code" href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">remmina_rdp_cliprdr_server_capabilities</a>;</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; cliprdr-&gt;ServerFormatList = <a class="code" href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">remmina_rdp_cliprdr_server_format_list</a>;</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; cliprdr-&gt;ServerFormatListResponse = <a class="code" href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">remmina_rdp_cliprdr_server_format_list_response</a>;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; cliprdr-&gt;ServerFormatDataRequest = <a class="code" href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">remmina_rdp_cliprdr_server_format_data_request</a>;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; cliprdr-&gt;ServerFormatDataResponse = <a class="code" href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">remmina_rdp_cliprdr_server_format_data_response</a>;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160;<span class="comment">// cliprdr-&gt;ServerFileContentsRequest = remmina_rdp_cliprdr_server_file_contents_request;</span></div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160;<span class="comment">// cliprdr-&gt;ServerFileContentsResponse = remmina_rdp_cliprdr_server_file_contents_response;</span></div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160;}</div><div class="ttc" id="rdp__cliprdr_8c_html_ac3bc1f06354bf50b72d770f6d14ce0b3"><div class="ttname"><a href="rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3">remmina_rdp_cliprdr_set_clipboard_content</a></div><div class="ttdeci">void remmina_rdp_cliprdr_set_clipboard_content(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00726">rdp_cliprdr.c:726</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a773214c0bb4f351a609a085f786304aa"><div class="ttname"><a href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">rf_clipboard::context</a></div><div class="ttdeci">CliprdrClientContext * context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00072">rdp_plugin.h:72</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a663e2e70d2f51daa97666142fdde98d0"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">remmina_plugin_rdp_event::clipboard_formatlist</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@44 clipboard_formatlist</div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a20b531c3036273bb4f2de64ac33c9bf3"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">remmina_plugin_rdp_event::clipboard_formatdatarequest</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@46 clipboard_formatdatarequest</div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a6cdd472797d227d7ce79a312c0fa2a24"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">remmina_plugin_rdp_ui_object::retptr</a></div><div class="ttdeci">void * retptr</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00235">rdp_plugin.h:235</a></div></div>
+<div class="ttc" id="structrf__context_html_af40c80ff8296b9bcc3ac437bf0be55f8"><div class="ttname"><a href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context::is_reconnecting</a></div><div class="ttdeci">gboolean is_reconnecting</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00269">rdp_plugin.h:269</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a8a791b93cbc96849e21dfd481d3639f8"><div class="ttname"><a href="rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8">remmina_rdp_cliprdr_server_format_list_response</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_server_format_list_response(CliprdrClientContext *context, const CLIPRDR_FORMAT_LIST_RESPONSE *formatListResponse)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00315">rdp_cliprdr.c:315</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a660e39f442c17f4668addc15ea5f6b9b"><div class="ttname"><a href="rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b">remmina_rdp_cliprdr_server_file_contents_response</a></div><div class="ttdeci">int remmina_rdp_cliprdr_server_file_contents_response(CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_RESPONSE *fileContentsResponse)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00149">rdp_cliprdr.c:149</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a8afec91e9f54fc3a0ea8f25d8349bd8b"><div class="ttname"><a href="rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b">remmina_rdp_cliprdr_send_client_format_list</a></div><div class="ttdeci">void remmina_rdp_cliprdr_send_client_format_list(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00155">rdp_cliprdr.c:155</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html"><div class="ttname"><a href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00117">rdp_plugin.h:117</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ae2405c3546b91c1ae200b14ef0e68026"><div class="ttname"><a href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">rf_clipboard::srv_clip_data_wait</a></div><div class="ttdeci">enum rf_clipboard::@39 srv_clip_data_wait</div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a4f9d059736e69df00273ec853d15c772"><div class="ttname"><a href="rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772">lf2crlf</a></div><div class="ttdeci">static UINT8 * lf2crlf(UINT8 *data, int *size)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00091">rdp_cliprdr.c:91</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00112">rdp_plugin.h:112</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a2c900a8369c1081e3084f5b17efbe47d"><div class="ttname"><a href="rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a></div><div class="ttdeci">void remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00826">rdp_cliprdr.c:826</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a5c6be1637ed9e2ce72ffde2ed5400205"><div class="ttname"><a href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">rf_clipboard::transfer_clip_mutex</a></div><div class="ttdeci">pthread_mutex_t transfer_clip_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00079">rdp_plugin.h:79</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a7d911246d8a6efed5a64b7ecd7b059bf"><div class="ttname"><a href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a></div><div class="ttdeci">void remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00763">rdp_cliprdr.c:763</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00110">rdp_plugin.h:110</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_adaaf3de8342309cc52668f318a473350"><div class="ttname"><a href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a></div><div class="ttdeci">void * remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01279">rdp_event.c:1279</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ad8007d48887352097a80379b413dd054"><div class="ttname"><a href="rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054">remmina_rdp_cliprdr_server_format_data_request</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_server_format_data_request(CliprdrClientContext *context, const CLIPRDR_FORMAT_DATA_REQUEST *formatDataRequest)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00322">rdp_cliprdr.c:322</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ab65c695a6089cb396a239ceb3b39416a"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">remmina_plugin_rdp_ui_object::clipboard</a></div><div class="ttdeci">rfClipboard * clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00221">rdp_plugin.h:221</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a55dec77cdcdc16a6d85680943eb2a859"><div class="ttname"><a href="rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859">crlf2lf</a></div><div class="ttdeci">static void crlf2lf(UINT8 *data, size_t *size)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00123">rdp_cliprdr.c:123</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ac3300142e3c2f416896948681ecd45f3"><div class="ttname"><a href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a></div><div class="ttdeci">void remmina_rdp_clipboard_init(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00802">rdp_cliprdr.c:802</a></div></div>
+<div class="ttc" id="structrf__context_html_a05f37c213b04dfb9ae9b38c12bcdf7e3"><div class="ttname"><a href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context::protocol_widget</a></div><div class="ttdeci">RemminaProtocolWidget * protocol_widget</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00247">rdp_plugin.h:247</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a268b5336ae92d8d2f54c5ee441325d68"><div class="ttname"><a href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rf_clipboard::rfi</a></div><div class="ttdeci">rfContext * rfi</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00071">rdp_plugin.h:71</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a48904924b1064d1bb3bfb6116bac6bd3"><div class="ttname"><a href="rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3">remmina_rdp_cliprdr_request_data</a></div><div class="ttdeci">void remmina_rdp_cliprdr_request_data(GtkClipboard *gtkClipboard, GtkSelectionData *selection_data, guint info, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00468">rdp_cliprdr.c:468</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00111">rdp_plugin.h:111</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ae14721fd73459cc2be441c96f5a96be7"><div class="ttname"><a href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">rf_clipboard::srv_data</a></div><div class="ttdeci">gpointer srv_data</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00082">rdp_plugin.h:82</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ad4fad618198e7746ea1e4ebd01a9b173"><div class="ttname"><a href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a></div><div class="ttdeci">void remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00779">rdp_cliprdr.c:779</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00165">rdp_plugin.h:165</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a84797e0cdf4484432740a8946325f126"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event::type</a></div><div class="ttdeci">RemminaPluginRdpEventType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00118">rdp_plugin.h:118</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a4ce27482e2571a90b222cbc9cb7f30f6"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">remmina_plugin_rdp_event::clipboard_formatdataresponse</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@45 clipboard_formatdataresponse</div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00167">rdp_plugin.h:167</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a007ce9136242f75dc148bd4e2ee5fde5"><div class="ttname"><a href="rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5">remmina_rdp_cliprdr_set_clipboard_data</a></div><div class="ttdeci">void remmina_rdp_cliprdr_set_clipboard_data(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00742">rdp_cliprdr.c:742</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_aa3ee3696d9fdb72f994184eee168b2ca"><div class="ttname"><a href="rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca">remmina_rdp_cliprdr_monitor_ready</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_monitor_ready(CliprdrClientContext *context, const CLIPRDR_MONITOR_READY *monitorReady)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00199">rdp_cliprdr.c:199</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_acf5bf9da1a18e21409c4b10368f8dfd7"><div class="ttname"><a href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">rf_clipboard::transfer_clip_cond</a></div><div class="ttdeci">pthread_cond_t transfer_clip_cond</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00080">rdp_plugin.h:80</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a9d9b4fd8f4efbac086e3a2a274647ce5"><div class="ttname"><a href="rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5">remmina_rdp_cliprdr_mt_get_format_list</a></div><div class="ttdeci">static void remmina_rdp_cliprdr_mt_get_format_list(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00625">rdp_cliprdr.c:625</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00160">rdp_plugin.h:160</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="structrf__context_html_acee2095e72fb2428c498f62e21800026"><div class="ttname"><a href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00279">rdp_plugin.h:279</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ab5fe43c1b1b77c39f118d2581942eb81"><div class="ttname"><a href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a></div><div class="ttdeci">int remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01268">rdp_event.c:1268</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a96bb65801a72ddb0b043438da7654130"><div class="ttname"><a href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a></div><div class="ttdeci">void remmina_rdp_clipboard_abort_transfer(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00814">rdp_cliprdr.c:814</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_aca54116b93ed1fb466951e51a32f6934"><div class="ttname"><a href="rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934">remmina_rdp_cliprdr_server_file_contents_request</a></div><div class="ttdeci">int remmina_rdp_cliprdr_server_file_contents_request(CliprdrClientContext *context, CLIPRDR_FILE_CONTENTS_REQUEST *fileContentsRequest)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00144">rdp_cliprdr.c:144</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a1c95eb50a82dbeac3c43374eaad8e489"><div class="ttname"><a href="rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489">remmina_rdp_cliprdr_send_client_capabilities</a></div><div class="ttdeci">static void remmina_rdp_cliprdr_send_client_capabilities(rfClipboard *clipboard)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00180">rdp_cliprdr.c:180</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00166">rdp_plugin.h:166</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a719b6820f66508f8acb943a1bf1a495d"><div class="ttname"><a href="rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d">remmina_rdp_cliprdr_empty_clipboard</a></div><div class="ttdeci">void remmina_rdp_cliprdr_empty_clipboard(GtkClipboard *gtkClipboard, rfClipboard *clipboard)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00555">rdp_cliprdr.c:555</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00168">rdp_plugin.h:168</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_accb7cad54767b8f658b8ea438690ef4f"><div class="ttname"><a href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a></div><div class="ttdeci">CLIPRDR_FORMAT_LIST * remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00561">rdp_cliprdr.c:561</a></div></div>
+<div class="ttc" id="structrf__context_html_a72d2a3d60347327237692947df93aea7"><div class="ttname"><a href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context::clipboard</a></div><div class="ttdeci">rfClipboard clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00308">rdp_plugin.h:308</a></div></div>
+<div class="ttc" id="structrf__clipboard_html"><div class="ttname"><a href="structrf__clipboard.html">rf_clipboard</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00070">rdp_plugin.h:70</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a4da95b96bf2c86b8f4cc63dcafdd1365"><div class="ttname"><a href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a></div><div class="ttdeci">void remmina_rdp_clipboard_free(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00807">rdp_cliprdr.c:807</a></div></div>
+<div class="ttc" id="structrf__context_html_a3c2ffa55ba97bc70324d61b8cc838e73"><div class="ttname"><a href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00268">rdp_plugin.h:268</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a5378f6a230a35d2a84e94ee029a10af4"><div class="ttname"><a href="rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4">remmina_rdp_cliprdr_get_target_types</a></div><div class="ttdeci">void remmina_rdp_cliprdr_get_target_types(UINT32 **formats, UINT16 *size, GdkAtom *types, int count)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00072">rdp_cliprdr.c:72</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ad6e572dab05b136136db71d93dbc0945"><div class="ttname"><a href="rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945">remmina_rdp_cliprdr_server_capabilities</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_server_capabilities(CliprdrClientContext *context, const CLIPRDR_CAPABILITIES *capabilities)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00212">rdp_cliprdr.c:212</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html"><div class="ttname"><a href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a0399ec83bd5f5ba0a939594971a5a0d4"><div class="ttname"><a href="rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4">remmina_rdp_cliprdr_server_format_list</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_server_format_list(CliprdrClientContext *context, const CLIPRDR_FORMAT_LIST *formatList)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00219">rdp_cliprdr.c:219</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a1875ac25f73dd93e4b716746e7c6b8d5"><div class="ttname"><a href="rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5">remmina_rdp_cliprdr_get_clipboard_data</a></div><div class="ttdeci">void remmina_rdp_cliprdr_get_clipboard_data(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00632">rdp_cliprdr.c:632</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ad22c0f3cd325db2746e9ca42cca0d65b"><div class="ttname"><a href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">rf_clipboard::format</a></div><div class="ttdeci">UINT32 format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00076">rdp_plugin.h:76</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ad446d6471bddba97f8bfcee8c51e4580"><div class="ttname"><a href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a></div><div class="ttdeci">void remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00092">rdp_event.c:92</a></div></div>
+<div class="ttc" id="rdp__event_8h_html"><div class="ttname"><a href="rdp__event_8h.html">rdp_event.h</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a0542c0eaa15930e06e9afac5d0f88c42"><div class="ttname"><a href="rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42">remmina_rdp_cliprdr_server_format_data_response</a></div><div class="ttdeci">static UINT remmina_rdp_cliprdr_server_format_data_response(CliprdrClientContext *context, const CLIPRDR_FORMAT_DATA_RESPONSE *formatDataResponse)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00343">rdp_cliprdr.c:343</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a7eb7cd7eeab0e52c33721cc0564964ea"><div class="ttname"><a href="rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea">remmina_rdp_cliprdr_get_format_from_gdkatom</a></div><div class="ttdeci">UINT32 remmina_rdp_cliprdr_get_format_from_gdkatom(GdkAtom atom)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00048">rdp_cliprdr.c:48</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a46d939889fba73c1360f924efaa09262"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00190">rdp_plugin.h:190</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__cliprdr_8c.html">rdp_cliprdr.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__cliprdr_8h.html b/docs/rdp__cliprdr_8h.html
new file mode 100644
index 000000000..ef28bfd82
--- /dev/null
+++ b/docs/rdp__cliprdr_8h.html
@@ -0,0 +1,314 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_cliprdr.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__cliprdr_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_cliprdr.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__cliprdr_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac3300142e3c2f416896948681ecd45f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:ac3300142e3c2f416896948681ecd45f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4da95b96bf2c86b8f4cc63dcafdd1365"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a4da95b96bf2c86b8f4cc63dcafdd1365"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c900a8369c1081e3084f5b17efbe47d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi, CliprdrClientContext *cliprdr)</td></tr>
+<tr class="separator:a2c900a8369c1081e3084f5b17efbe47d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c70042cad3c959e8a408402c9dcd5ff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff">remmina_rdp_channel_cliprdr_process</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, wMessage *event)</td></tr>
+<tr class="separator:a6c70042cad3c959e8a408402c9dcd5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4fad618198e7746ea1e4ebd01a9b173"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ad4fad618198e7746ea1e4ebd01a9b173"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb7cad54767b8f658b8ea438690ef4f"><td class="memItemLeft" align="right" valign="top">CLIPRDR_FORMAT_LIST *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:accb7cad54767b8f658b8ea438690ef4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d911246d8a6efed5a64b7ecd7b059bf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7d911246d8a6efed5a64b7ecd7b059bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96bb65801a72ddb0b043438da7654130"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a96bb65801a72ddb0b043438da7654130"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a6c70042cad3c959e8a408402c9dcd5ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c70042cad3c959e8a408402c9dcd5ff">&#9670;&nbsp;</a></span>remmina_rdp_channel_cliprdr_process()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_channel_cliprdr_process </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">wMessage *&#160;</td>
+ <td class="paramname"><em>event</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a96bb65801a72ddb0b043438da7654130"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96bb65801a72ddb0b043438da7654130">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_abort_transfer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_abort_transfer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00814">814</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a4da95b96bf2c86b8f4cc63dcafdd1365"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4da95b96bf2c86b8f4cc63dcafdd1365">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00807">807</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3300142e3c2f416896948681ecd45f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3300142e3c2f416896948681ecd45f3">&#9670;&nbsp;</a></span>remmina_rdp_clipboard_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_clipboard_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00802">802</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d911246d8a6efed5a64b7ecd7b059bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d911246d8a6efed5a64b7ecd7b059bf">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_detach_owner()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_detach_owner </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00763">763</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="accb7cad54767b8f658b8ea438690ef4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accb7cad54767b8f658b8ea438690ef4f">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_get_client_format_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CLIPRDR_FORMAT_LIST* remmina_rdp_cliprdr_get_client_format_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00561">561</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="a2c900a8369c1081e3084f5b17efbe47d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c900a8369c1081e3084f5b17efbe47d">&#9670;&nbsp;</a></span>remmina_rdp_cliprdr_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_cliprdr_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">CliprdrClientContext *&#160;</td>
+ <td class="paramname"><em>cliprdr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00826">826</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4fad618198e7746ea1e4ebd01a9b173"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4fad618198e7746ea1e4ebd01a9b173">&#9670;&nbsp;</a></span>remmina_rdp_event_process_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_process_clipboard </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__cliprdr_8c_source.html#l00779">779</a> of file <a class="el" href="rdp__cliprdr_8c_source.html">rdp_cliprdr.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__cliprdr_8h.js b/docs/rdp__cliprdr_8h.js
new file mode 100644
index 000000000..1d1a308ab
--- /dev/null
+++ b/docs/rdp__cliprdr_8h.js
@@ -0,0 +1,11 @@
+var rdp__cliprdr_8h =
+[
+ [ "remmina_rdp_channel_cliprdr_process", "rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff", null ],
+ [ "remmina_rdp_clipboard_abort_transfer", "rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130", null ],
+ [ "remmina_rdp_clipboard_free", "rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365", null ],
+ [ "remmina_rdp_clipboard_init", "rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3", null ],
+ [ "remmina_rdp_cliprdr_detach_owner", "rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf", null ],
+ [ "remmina_rdp_cliprdr_get_client_format_list", "rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f", null ],
+ [ "remmina_rdp_cliprdr_init", "rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d", null ],
+ [ "remmina_rdp_event_process_clipboard", "rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__cliprdr_8h_source.html b/docs/rdp__cliprdr_8h_source.html
new file mode 100644
index 000000000..3c10b7d1c
--- /dev/null
+++ b/docs/rdp__cliprdr_8h_source.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_cliprdr.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__cliprdr_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_cliprdr.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__cliprdr_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) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2012-2012 Jean-Louis Dupond</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</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;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</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="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi, CliprdrClientContext *cliprdr);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff">remmina_rdp_channel_cliprdr_process</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, wMessage *event);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;CLIPRDR_FORMAT_LIST *<a class="code" href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi);</div><div class="ttc" id="rdp__cliprdr_8h_html_accb7cad54767b8f658b8ea438690ef4f"><div class="ttname"><a href="rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a></div><div class="ttdeci">CLIPRDR_FORMAT_LIST * remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00561">rdp_cliprdr.c:561</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_a4da95b96bf2c86b8f4cc63dcafdd1365"><div class="ttname"><a href="rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a></div><div class="ttdeci">void remmina_rdp_clipboard_free(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00807">rdp_cliprdr.c:807</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_ad4fad618198e7746ea1e4ebd01a9b173"><div class="ttname"><a href="rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a></div><div class="ttdeci">void remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00779">rdp_cliprdr.c:779</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_a7d911246d8a6efed5a64b7ecd7b059bf"><div class="ttname"><a href="rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a></div><div class="ttdeci">void remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00763">rdp_cliprdr.c:763</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_a96bb65801a72ddb0b043438da7654130"><div class="ttname"><a href="rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a></div><div class="ttdeci">void remmina_rdp_clipboard_abort_transfer(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00814">rdp_cliprdr.c:814</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_ac3300142e3c2f416896948681ecd45f3"><div class="ttname"><a href="rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a></div><div class="ttdeci">void remmina_rdp_clipboard_init(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00802">rdp_cliprdr.c:802</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_a2c900a8369c1081e3084f5b17efbe47d"><div class="ttname"><a href="rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d">remmina_rdp_cliprdr_init</a></div><div class="ttdeci">void remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00826">rdp_cliprdr.c:826</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html_a6c70042cad3c959e8a408402c9dcd5ff"><div class="ttname"><a href="rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff">remmina_rdp_channel_cliprdr_process</a></div><div class="ttdeci">void remmina_rdp_channel_cliprdr_process(RemminaProtocolWidget *gp, wMessage *event)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__event_8c.html b/docs/rdp__event_8c.html
new file mode 100644
index 000000000..7dd93ca99
--- /dev/null
+++ b/docs/rdp__event_8c.html
@@ -0,0 +1,1712 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_event.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__event_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_event.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__event_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6e3d726d9c6e27d25538c8ae665e8b58"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">remmina_rdp_event_on_focus_in</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6e3d726d9c6e27d25538c8ae665e8b58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad446d6471bddba97f8bfcee8c51e4580"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> *e)</td></tr>
+<tr class="separator:ad446d6471bddba97f8bfcee8c51e4580"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113ce593d4a96413b9330c471ee51554"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">remmina_rdp_event_release_all_keys</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a113ce593d4a96413b9330c471ee51554"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a062f6feb8f4b29ad0ad84717e6646e0c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">remmina_rdp_event_release_key</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> rdp_event)</td></tr>
+<tr class="separator:a062f6feb8f4b29ad0ad84717e6646e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6e9a485532ccf8c22005dd7a7137fd2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> rdp_event)</td></tr>
+<tr class="separator:ab6e9a485532ccf8c22005dd7a7137fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a080ab4a0a8f592bb5484202175beaaa5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">remmina_rdp_event_scale_area</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint *x, gint *y, gint *w, gint *h)</td></tr>
+<tr class="separator:a080ab4a0a8f592bb5484202175beaaa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ff2e46de1ad42c9aa8f792d629e0a89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">remmina_rdp_event_update_regions</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a2ff2e46de1ad42c9aa8f792d629e0a89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a712a9b04decd8b928d71db44b9b14fc9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint x, gint y, gint w, gint h)</td></tr>
+<tr class="separator:a712a9b04decd8b928d71db44b9b14fc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6076424eb759c91ca9c8da59432c66d6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">remmina_rdp_event_update_scale_factor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6076424eb759c91ca9c8da59432c66d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acafb03695febd86fc16d64545d74ef9c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">remmina_rdp_event_on_draw</a> (GtkWidget *widget, cairo_t *context, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acafb03695febd86fc16d64545d74ef9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35376ff50915de1c14285e6326bc943e"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">remmina_rdp_event_delayed_monitor_layout</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a35376ff50915de1c14285e6326bc943e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7c8d626470553c1659312697811dbfe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac7c8d626470553c1659312697811dbfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a722112276948dbc5823a9adec2e225"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">remmina_rdp_event_on_configure</a> (GtkWidget *widget, GdkEventConfigure *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a3a722112276948dbc5823a9adec2e225"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe3b6a9e7d9319bca7021ddd29d39332"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, int ix, int iy, UINT16 *ox, UINT16 *oy)</td></tr>
+<tr class="separator:afe3b6a9e7d9319bca7021ddd29d39332"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20d5fac8955f4f813759ca5c32078b7c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">remmina_rdp_event_reverse_translate_pos_reverse</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, int ix, int iy, int *ox, int *oy)</td></tr>
+<tr class="separator:a20d5fac8955f4f813759ca5c32078b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac27328f2796bd021d174c0f4b172c024"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">remmina_rdp_event_on_motion</a> (GtkWidget *widget, GdkEventMotion *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac27328f2796bd021d174c0f4b172c024"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0caf4ffb4011d001301ea10f2c3f75e6"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">remmina_rdp_event_on_button</a> (GtkWidget *widget, GdkEventButton *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a0caf4ffb4011d001301ea10f2c3f75e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d63c3ac635001e62851ec4bc5fb7469"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">remmina_rdp_event_on_scroll</a> (GtkWidget *widget, GdkEventScroll *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9d63c3ac635001e62851ec4bc5fb7469"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eeb2bd828f9fae2c549f3ef8a1e20c0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">remmina_rdp_event_init_keymap</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi, const gchar *strmap)</td></tr>
+<tr class="separator:a4eeb2bd828f9fae2c549f3ef8a1e20c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8f0d0f1b1b75646523f3b241f124e56"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">remmina_rdp_event_on_key</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad8f0d0f1b1b75646523f3b241f124e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bd3d6559182ac1132927435ba9abc6a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">remmina_rdp_event_on_clipboard</a> (GtkClipboard *gtkClipboard, GdkEvent *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2bd3d6559182ac1132927435ba9abc6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3a991a02d35fb09c85f2e752a5393ca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">remmina_rdp_event_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af3a991a02d35fb09c85f2e752a5393ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40b4fd190055c10d5d2248a6eca5f50f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *obj)</td></tr>
+<tr class="separator:a40b4fd190055c10d5d2248a6eca5f50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65eef99dc99f77be815a5da804ed94fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a65eef99dc99f77be815a5da804ed94fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a789ec99777755da7cae468216a74095a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a789ec99777755da7cae468216a74095a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ce0c66bb4cb6ddaee263ce8563f497"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a64ce0c66bb4cb6ddaee263ce8563f497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe98674433c473136ccd28aab85a7748"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">remmina_rdp_event_connected</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:abe98674433c473136ccd28aab85a7748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7cbdc2f8cf829e2f09ecfa605a92d65"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">remmina_rdp_event_reconnect_progress</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ab7cbdc2f8cf829e2f09ecfa605a92d65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8ef8118379a8bb6a6f99a8bbc0cbcfc"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">remmina_rdp_event_create_cursor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ae8ef8118379a8bb6a6f99a8bbc0cbcfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a740d33b9c229ada638eeeebe2ffca461"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">remmina_rdp_event_free_cursor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a740d33b9c229ada638eeeebe2ffca461"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34c7d3a1bb411e84d3b4e30fcccc9cd8"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">remmina_rdp_event_set_pointer_position</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint x, gint y)</td></tr>
+<tr class="separator:a34c7d3a1bb411e84d3b4e30fcccc9cd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a064c56982a401aff33a8c723eb157016"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">remmina_rdp_event_cursor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a064c56982a401aff33a8c723eb157016"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0e0d42524cb165cd6d26553c104dbde"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">remmina_rdp_ui_event_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ae0e0d42524cb165cd6d26553c104dbde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4da10c12b28edc28403766994d6ef29c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4da10c12b28edc28403766994d6ef29c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd5f1bd57553006fdbc60d62af433e31"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">remmina_rdp_ui_event_destroy_cairo_surface</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:acd5f1bd57553006fdbc60d62af433e31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f5fcd2a5c81d0c8bec609e0428735c5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">remmina_rdp_event_process_event</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a5f5fcd2a5c81d0c8bec609e0428735c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6929ce2effcc3cf2be6d5ec8b19d5466"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">remmina_rdp_event_process_ui_event</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a6929ce2effcc3cf2be6d5ec8b19d5466"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfa1d5d0b0494818fb5e1a549c0acd23"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">remmina_rdp_event_process_ui_queue</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:abfa1d5d0b0494818fb5e1a549c0acd23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b91746b782b7782432bd1d23c6a9945"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:a2b91746b782b7782432bd1d23c6a9945"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae445fd0a84c7c9414a177a69c86cf325"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ae445fd0a84c7c9414a177a69c86cf325"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5fe43c1b1b77c39f118d2581942eb81"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ab5fe43c1b1b77c39f118d2581942eb81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaaf3de8342309cc52668f318a473350"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:adaaf3de8342309cc52668f318a473350"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab6e9a485532ccf8c22005dd7a7137fd2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6e9a485532ccf8c22005dd7a7137fd2">&#9670;&nbsp;</a></span>keypress_list_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void keypress_list_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a>&#160;</td>
+ <td class="paramname"><em>rdp_event</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00159">159</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="abe98674433c473136ccd28aab85a7748"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe98674433c473136ccd28aab85a7748">&#9670;&nbsp;</a></span>remmina_rdp_event_connected()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_connected </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00973">973</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a789ec99777755da7cae468216a74095a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a789ec99777755da7cae468216a74095a">&#9670;&nbsp;</a></span>remmina_rdp_event_create_cairo_surface()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_create_cairo_surface </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00906">906</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ae8ef8118379a8bb6a6f99a8bbc0cbcfc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">&#9670;&nbsp;</a></span>remmina_rdp_event_create_cursor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_event_create_cursor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00998">998</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a064c56982a401aff33a8c723eb157016"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a064c56982a401aff33a8c723eb157016">&#9670;&nbsp;</a></span>remmina_rdp_event_cursor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_cursor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01071">1071</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a35376ff50915de1c14285e6326bc943e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a35376ff50915de1c14285e6326bc943e">&#9670;&nbsp;</a></span>remmina_rdp_event_delayed_monitor_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_delayed_monitor_layout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00331">331</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ad446d6471bddba97f8bfcee8c51e4580"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad446d6471bddba97f8bfcee8c51e4580">&#9670;&nbsp;</a></span>remmina_rdp_event_event_push()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_event_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00092">92</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a740d33b9c229ada638eeeebe2ffca461"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a740d33b9c229ada638eeeebe2ffca461">&#9670;&nbsp;</a></span>remmina_rdp_event_free_cursor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_free_cursor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01027">1027</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a40b4fd190055c10d5d2248a6eca5f50f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40b4fd190055c10d5d2248a6eca5f50f">&#9670;&nbsp;</a></span>remmina_rdp_event_free_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_free_event </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>obj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00833">833</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="af3a991a02d35fb09c85f2e752a5393ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3a991a02d35fb09c85f2e752a5393ca">&#9670;&nbsp;</a></span>remmina_rdp_event_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00742">742</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a4eeb2bd828f9fae2c549f3ef8a1e20c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4eeb2bd828f9fae2c549f3ef8a1e20c0">&#9670;&nbsp;</a></span>remmina_rdp_event_init_keymap()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_init_keymap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>strmap</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00571">571</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a0caf4ffb4011d001301ea10f2c3f75e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0caf4ffb4011d001301ea10f2c3f75e6">&#9670;&nbsp;</a></span>remmina_rdp_event_on_button()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_button </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventButton *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00474">474</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a2bd3d6559182ac1132927435ba9abc6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bd3d6559182ac1132927435ba9abc6a">&#9670;&nbsp;</a></span>remmina_rdp_event_on_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_event_on_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkClipboard *&#160;</td>
+ <td class="paramname"><em>gtkClipboard</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00708">708</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a3a722112276948dbc5823a9adec2e225"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a722112276948dbc5823a9adec2e225">&#9670;&nbsp;</a></span>remmina_rdp_event_on_configure()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_configure </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventConfigure *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00397">397</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="acafb03695febd86fc16d64545d74ef9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acafb03695febd86fc16d64545d74ef9c">&#9670;&nbsp;</a></span>remmina_rdp_event_on_draw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_draw </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">cairo_t *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00283">283</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a6e3d726d9c6e27d25538c8ae665e8b58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e3d726d9c6e27d25538c8ae665e8b58">&#9670;&nbsp;</a></span>remmina_rdp_event_on_focus_in()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_focus_in </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00047">47</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ad8f0d0f1b1b75646523f3b241f124e56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8f0d0f1b1b75646523f3b241f124e56">&#9670;&nbsp;</a></span>remmina_rdp_event_on_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_key </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00606">606</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ac27328f2796bd021d174c0f4b172c024"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac27328f2796bd021d174c0f4b172c024">&#9670;&nbsp;</a></span>remmina_rdp_event_on_motion()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_motion </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventMotion *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00459">459</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d63c3ac635001e62851ec4bc5fb7469"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d63c3ac635001e62851ec4bc5fb7469">&#9670;&nbsp;</a></span>remmina_rdp_event_on_scroll()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_on_scroll </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventScroll *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00530">530</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f5fcd2a5c81d0c8bec609e0428735c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f5fcd2a5c81d0c8bec609e0428735c5">&#9670;&nbsp;</a></span>remmina_rdp_event_process_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_process_event </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01132">1132</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a6929ce2effcc3cf2be6d5ec8b19d5466"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6929ce2effcc3cf2be6d5ec8b19d5466">&#9670;&nbsp;</a></span>remmina_rdp_event_process_ui_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_process_ui_event </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01145">1145</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="abfa1d5d0b0494818fb5e1a549c0acd23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfa1d5d0b0494818fb5e1a549c0acd23">&#9670;&nbsp;</a></span>remmina_rdp_event_process_ui_queue()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_event_process_ui_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01178">1178</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b91746b782b7782432bd1d23c6a9945"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b91746b782b7782432bd1d23c6a9945">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_queue_ui </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01211">1211</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ae445fd0a84c7c9414a177a69c86cf325"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae445fd0a84c7c9414a177a69c86cf325">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_async()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_queue_ui_async </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01262">1262</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ab5fe43c1b1b77c39f118d2581942eb81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5fe43c1b1b77c39f118d2581942eb81">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_sync_retint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_event_queue_ui_sync_retint </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01268">1268</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="adaaf3de8342309cc52668f318a473350"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adaaf3de8342309cc52668f318a473350">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_sync_retptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* remmina_rdp_event_queue_ui_sync_retptr </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01279">1279</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ab7cbdc2f8cf829e2f09ecfa605a92d65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7cbdc2f8cf829e2f09ecfa605a92d65">&#9670;&nbsp;</a></span>remmina_rdp_event_reconnect_progress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_reconnect_progress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00991">991</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a113ce593d4a96413b9330c471ee51554"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a113ce593d4a96413b9330c471ee51554">&#9670;&nbsp;</a></span>remmina_rdp_event_release_all_keys()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_release_all_keys </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00112">112</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a062f6feb8f4b29ad0ad84717e6646e0c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a062f6feb8f4b29ad0ad84717e6646e0c">&#9670;&nbsp;</a></span>remmina_rdp_event_release_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_release_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a>&#160;</td>
+ <td class="paramname"><em>rdp_event</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00133">133</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a20d5fac8955f4f813759ca5c32078b7c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20d5fac8955f4f813759ca5c32078b7c">&#9670;&nbsp;</a></span>remmina_rdp_event_reverse_translate_pos_reverse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_reverse_translate_pos_reverse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>ix</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>iy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>ox</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>oy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00437">437</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a080ab4a0a8f592bb5484202175beaaa5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a080ab4a0a8f592bb5484202175beaaa5">&#9670;&nbsp;</a></span>remmina_rdp_event_scale_area()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_scale_area </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00175">175</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7c8d626470553c1659312697811dbfe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7c8d626470553c1659312697811dbfe">&#9670;&nbsp;</a></span>remmina_rdp_event_send_delayed_monitor_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_send_delayed_monitor_layout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00381">381</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a34c7d3a1bb411e84d3b4e30fcccc9cd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a34c7d3a1bb411e84d3b4e30fcccc9cd8">&#9670;&nbsp;</a></span>remmina_rdp_event_set_pointer_position()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_event_set_pointer_position </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01034">1034</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="afe3b6a9e7d9319bca7021ddd29d39332"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe3b6a9e7d9319bca7021ddd29d39332">&#9670;&nbsp;</a></span>remmina_rdp_event_translate_pos()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_translate_pos </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>ix</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>iy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT16 *&#160;</td>
+ <td class="paramname"><em>ox</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT16 *&#160;</td>
+ <td class="paramname"><em>oy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00415">415</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a4da10c12b28edc28403766994d6ef29c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4da10c12b28edc28403766994d6ef29c">&#9670;&nbsp;</a></span>remmina_rdp_event_unfocus()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_unfocus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01114">1114</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a65eef99dc99f77be815a5da804ed94fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65eef99dc99f77be815a5da804ed94fc">&#9670;&nbsp;</a></span>remmina_rdp_event_uninit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_uninit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00855">855</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a712a9b04decd8b928d71db44b9b14fc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a712a9b04decd8b928d71db44b9b14fc9">&#9670;&nbsp;</a></span>remmina_rdp_event_update_rect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_update_rect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00240">240</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a2ff2e46de1ad42c9aa8f792d629e0a89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ff2e46de1ad42c9aa8f792d629e0a89">&#9670;&nbsp;</a></span>remmina_rdp_event_update_regions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_update_regions </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00220">220</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a64ce0c66bb4cb6ddaee263ce8563f497"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64ce0c66bb4cb6ddaee263ce8563f497">&#9670;&nbsp;</a></span>remmina_rdp_event_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00927">927</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a6076424eb759c91ca9c8da59432c66d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6076424eb759c91ca9c8da59432c66d6">&#9670;&nbsp;</a></span>remmina_rdp_event_update_scale_factor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_event_update_scale_factor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00251">251</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="acd5f1bd57553006fdbc60d62af433e31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd5f1bd57553006fdbc60d62af433e31">&#9670;&nbsp;</a></span>remmina_rdp_ui_event_destroy_cairo_surface()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_ui_event_destroy_cairo_surface </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01124">1124</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ae0e0d42524cb165cd6d26553c104dbde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0e0d42524cb165cd6d26553c104dbde">&#9670;&nbsp;</a></span>remmina_rdp_ui_event_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_ui_event_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01108">1108</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__event_8c.html">rdp_event.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__event_8c.js b/docs/rdp__event_8c.js
new file mode 100644
index 000000000..e0f0be147
--- /dev/null
+++ b/docs/rdp__event_8c.js
@@ -0,0 +1,45 @@
+var rdp__event_8c =
+[
+ [ "keypress_list_add", "rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2", null ],
+ [ "remmina_rdp_event_connected", "rdp__event_8c.html#abe98674433c473136ccd28aab85a7748", null ],
+ [ "remmina_rdp_event_create_cairo_surface", "rdp__event_8c.html#a789ec99777755da7cae468216a74095a", null ],
+ [ "remmina_rdp_event_create_cursor", "rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc", null ],
+ [ "remmina_rdp_event_cursor", "rdp__event_8c.html#a064c56982a401aff33a8c723eb157016", null ],
+ [ "remmina_rdp_event_delayed_monitor_layout", "rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e", null ],
+ [ "remmina_rdp_event_event_push", "rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580", null ],
+ [ "remmina_rdp_event_free_cursor", "rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461", null ],
+ [ "remmina_rdp_event_free_event", "rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f", null ],
+ [ "remmina_rdp_event_init", "rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca", null ],
+ [ "remmina_rdp_event_init_keymap", "rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0", null ],
+ [ "remmina_rdp_event_on_button", "rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6", null ],
+ [ "remmina_rdp_event_on_clipboard", "rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a", null ],
+ [ "remmina_rdp_event_on_configure", "rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225", null ],
+ [ "remmina_rdp_event_on_draw", "rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c", null ],
+ [ "remmina_rdp_event_on_focus_in", "rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58", null ],
+ [ "remmina_rdp_event_on_key", "rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56", null ],
+ [ "remmina_rdp_event_on_motion", "rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024", null ],
+ [ "remmina_rdp_event_on_scroll", "rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469", null ],
+ [ "remmina_rdp_event_process_event", "rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5", null ],
+ [ "remmina_rdp_event_process_ui_event", "rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466", null ],
+ [ "remmina_rdp_event_process_ui_queue", "rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23", null ],
+ [ "remmina_rdp_event_queue_ui", "rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945", null ],
+ [ "remmina_rdp_event_queue_ui_async", "rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325", null ],
+ [ "remmina_rdp_event_queue_ui_sync_retint", "rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81", null ],
+ [ "remmina_rdp_event_queue_ui_sync_retptr", "rdp__event_8c.html#adaaf3de8342309cc52668f318a473350", null ],
+ [ "remmina_rdp_event_reconnect_progress", "rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65", null ],
+ [ "remmina_rdp_event_release_all_keys", "rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554", null ],
+ [ "remmina_rdp_event_release_key", "rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c", null ],
+ [ "remmina_rdp_event_reverse_translate_pos_reverse", "rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c", null ],
+ [ "remmina_rdp_event_scale_area", "rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5", null ],
+ [ "remmina_rdp_event_send_delayed_monitor_layout", "rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe", null ],
+ [ "remmina_rdp_event_set_pointer_position", "rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8", null ],
+ [ "remmina_rdp_event_translate_pos", "rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332", null ],
+ [ "remmina_rdp_event_unfocus", "rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c", null ],
+ [ "remmina_rdp_event_uninit", "rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc", null ],
+ [ "remmina_rdp_event_update_rect", "rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9", null ],
+ [ "remmina_rdp_event_update_regions", "rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89", null ],
+ [ "remmina_rdp_event_update_scale", "rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497", null ],
+ [ "remmina_rdp_event_update_scale_factor", "rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6", null ],
+ [ "remmina_rdp_ui_event_destroy_cairo_surface", "rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31", null ],
+ [ "remmina_rdp_ui_event_update_scale", "rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__event_8c_source.html b/docs/rdp__event_8c_source.html
new file mode 100644
index 000000000..737016145
--- /dev/null
+++ b/docs/rdp__event_8c_source.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_event.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__event_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_event.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__event_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 Jay Sorg</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2011 Marc-Andre Moreau &lt;marcandre.moreau@gmail.com&gt;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</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="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</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="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> * files in the program, then also delete it here.</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;<span class="comment"> */</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__event_8h.html">rdp_event.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="rdp__cliprdr_8h.html">rdp_cliprdr.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="rdp__settings_8h.html">rdp_settings.h</a>&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;cairo/cairo-xlib.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;freerdp/locale/keyboard.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58"> 47</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">remmina_rdp_event_on_focus_in</a>(GtkWidget* widget, GdkEventKey* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; rdpInput* input;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; GdkModifierType state;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; GdkDeviceManager *manager;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; GdkDevice *keyboard = NULL;</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="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; input = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;input;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; UINT32 toggle_keys_state = 0;</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"> 67</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; seat = gdk_display_get_default_seat(gdk_display_get_default());</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; keyboard = gdk_seat_get_pointer(seat);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; manager = gdk_display_get_device_manager(gdk_display_get_default());</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; keyboard = gdk_device_manager_get_client_pointer(manager);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gdk_window_get_device_position(gdk_get_default_root_window(), keyboard, NULL, NULL, &amp;state);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span> (state &amp; GDK_LOCK_MASK) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; toggle_keys_state |= KBD_SYNC_CAPS_LOCK;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (state &amp; GDK_MOD2_MASK) {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; toggle_keys_state |= KBD_SYNC_NUM_LOCK;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (state &amp; GDK_MOD5_MASK) {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; toggle_keys_state |= KBD_SYNC_SCROLL_LOCK;</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; input-&gt;SynchronizeEvent(input, toggle_keys_state);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; input-&gt;KeyboardEvent(input, KBD_FLAGS_RELEASE, 0x0F);</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"> 89</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580"> 92</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <span class="keyword">const</span> <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>* e)</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"> 94</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>* event;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">/* Called by the main GTK thread to send an event to the libfreerdp thread */</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a>) {</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">event</span> = g_memdup(e, <span class="keyword">sizeof</span>(<a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>));</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; g_async_queue_push(rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a>, event);</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="keywordflow">if</span> (write(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[1], <span class="stringliteral">&quot;\0&quot;</span>, 1)) {</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; }</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;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554"> 112</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">remmina_rdp_event_release_all_keys</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;{</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">/* Send all release key events for previously pressed keys */</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>-&gt;len; i++) {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; rdp_event = g_array_index(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>, i);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">if</span> ((rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> == <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a> ||</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> == <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>) &amp;&amp;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up == False) {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = True;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</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; }</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; g_array_set_size(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, 0);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;}</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"><a class="line" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c"> 133</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">remmina_rdp_event_release_key</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gint i;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event_2 = { 0 };</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; rdp_event_2.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> ((rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> == <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a> ||</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> == <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>) &amp;&amp;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up ) {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="comment">/* Unregister the keycode only */</span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>-&gt;len; i++) {</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; rdp_event_2 = g_array_index(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>, i);</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; <span class="keywordflow">if</span> (rdp_event_2.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code == rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code &amp;&amp;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; rdp_event_2.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.unicode_code == rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.unicode_code &amp;&amp;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; rdp_event_2.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended == rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended) {</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; g_array_remove_index_fast(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, i);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">break</span>;</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"> 155</span>&#160; }</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;}</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2"> 159</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event)</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;{</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span> (!rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">return</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; <span class="keywordflow">if</span> (rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">remmina_rdp_event_release_key</a>(gp, rdp_event);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; g_array_append_val(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, rdp_event);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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"><a class="line" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5"> 175</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">remmina_rdp_event_scale_area</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, gint* x, gint* y, gint* w, gint* h)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; gint width, height;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gint sx, sy, sw, sh;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> || !rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; width = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; height = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">if</span> ((width == 0) || (height == 0))</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span> ((rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> == width) &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> == height)) {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="comment">/* Same size, just copy the pixels */</span></div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; *x = MIN(MAX(0, *x), width - 1);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; *y = MIN(MAX(0, *y), height - 1);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; *w = MIN(width - *x, *w);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; *h = MIN(height - *y, *h);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</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; <span class="comment">/* We have to extend the scaled region one scaled pixel, to avoid gaps */</span></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; sx = MIN(MAX(0, (*x) * rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> / width</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; - rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> / width - 2), rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> - 1);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; sy = MIN(MAX(0, (*y) * rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> / height</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; - rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> / height - 2), rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> - 1);</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; sw = MIN(rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> - sx, (*w) * rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> / width</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; + rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> / width + 4);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; sh = MIN(rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> - sy, (*h) * rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> / height</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; + rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> / height + 4);</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; *x = sx;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; *y = sy;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; *w = sw;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; *h = sh;</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"><a class="line" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89"> 220</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">remmina_rdp_event_update_regions</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;{</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; gint x, y, w, h, i;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">for</span>(i = 0; i &lt; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ninvalid; i++) {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; x = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg[i].x;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; y = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg[i].y;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; w = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg[i].w;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; h = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg[i].h;</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">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>)</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">remmina_rdp_event_scale_area</a>(gp, &amp;x, &amp;y, &amp;w, &amp;h);</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"> 235</span>&#160; gtk_widget_queue_draw_area(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, x, y, w, h);</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; g_free(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg);</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;</div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9"> 240</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, gint x, gint y, gint w, gint h)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">remmina_rdp_event_scale_area</a>(gp, &amp;x, &amp;y, &amp;w, &amp;h);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; gtk_widget_queue_draw_area(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, x, y, w, h);</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;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6"> 251</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">remmina_rdp_event_update_scale_factor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;{</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; GtkAllocation a;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; gint rdwidth, rdheight;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; gint gpwidth, gpheight;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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; gtk_widget_get_allocation(GTK_WIDGET(gp), &amp;a);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; gpwidth = a.width;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; gpheight = a.height;</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>) {</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">if</span> ((gpwidth &gt; 1) &amp;&amp; (gpheight &gt; 1)) {</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; rdwidth = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; rdheight = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> = gpwidth;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> = gpheight;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a584505347366c40e6efa710353d4264f">scale_x</a> = (gdouble)rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> / (gdouble)rdwidth;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">scale_y</a> = (gdouble)rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> / (gdouble)rdheight;</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> = 0;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> = 0;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a584505347366c40e6efa710353d4264f">scale_x</a> = 0;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">scale_y</a> = 0;</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;</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;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c"> 283</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">remmina_rdp_event_on_draw</a>(GtkWidget* widget, cairo_t* context, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; guint width, height;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; gchar *msg;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; cairo_text_extents_t extents;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a>)</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>) {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="comment">/* FreeRDP is reconnecting, just show a message to the user */</span></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; width = gtk_widget_get_allocated_width(widget);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; height = gtk_widget_get_allocated_height(widget);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="comment">/* Draw text */</span></div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; msg = g_strdup_printf(_(<span class="stringliteral">&quot;Reconnection attempt %d of %d…&quot;</span>),</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a>, rfi-&gt;<a class="code" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a>);</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; cairo_select_font_face(context, <span class="stringliteral">&quot;Sans&quot;</span>, CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_BOLD);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; cairo_set_font_size(context, 24);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; cairo_set_source_rgb(context, 0.9, 0.9, 0.9);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; cairo_text_extents(context, msg, &amp;extents);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; cairo_move_to(context, (width - (extents.width + extents.x_bearing)) / 2, (height - (extents.height + extents.y_bearing)) / 2);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; cairo_show_text(context, msg);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; g_free(msg);</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="comment">/* Standard drawing: We copy the surface from RDP */</span></div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>)</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>)</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; cairo_scale(context, rfi-&gt;<a class="code" href="structrf__context.html#a584505347366c40e6efa710353d4264f">scale_x</a>, rfi-&gt;<a class="code" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">scale_y</a>);</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"> 322</span>&#160; cairo_set_source_surface(context, rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>, 0, 0);</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; cairo_set_operator(context, CAIRO_OPERATOR_SOURCE); <span class="comment">// Ignore alpha channel from FreeRDP</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; cairo_paint(context);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e"> 331</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">remmina_rdp_event_delayed_monitor_layout</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; GtkAllocation a;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gint desktopOrientation, desktopScaleFactor, deviceScaleFactor;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>)</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a> = 0;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gint gpwidth, gpheight, prevwidth, prevheight;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a> &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a>-&gt;SendMonitorLayout) {</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a>(&amp;desktopOrientation, &amp;desktopScaleFactor, &amp;deviceScaleFactor);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; gtk_widget_get_allocation(GTK_WIDGET(gp), &amp;a);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; gpwidth = a.width;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; gpheight = a.height;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; prevwidth = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; prevheight = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</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; <span class="keywordflow">if</span> ((gpwidth != prevwidth || gpheight != prevheight) &amp;&amp;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; gpwidth &gt;= 200 &amp;&amp; gpwidth &lt; 8192 &amp;&amp;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; gpheight &gt;= 200 &amp;&amp; gpheight &lt; 8192</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rdpgfxchan</a>) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="comment">/* Workaround for FreeRDP issue #5417 */</span></div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">if</span> (gpwidth &lt; AVC_MIN_DESKTOP_WIDTH)</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; gpwidth = AVC_MIN_DESKTOP_WIDTH;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">if</span> (gpheight &lt; AVC_MIN_DESKTOP_HEIGHT)</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gpheight = AVC_MIN_DESKTOP_HEIGHT;</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"> 368</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a>;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a>.width = gpwidth;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a>.height = gpheight;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a>.desktopOrientation = desktopOrientation;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a>.desktopScaleFactor = desktopScaleFactor;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a>.deviceScaleFactor = deviceScaleFactor;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; }</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe"> 381</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a>) {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; g_source_remove(rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a>);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a> = 0;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; }</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>) {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a> = g_timeout_add(500, (GSourceFunc)<a class="code" href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">remmina_rdp_event_delayed_monitor_layout</a>, gp);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</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;}</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"><a class="line" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225"> 397</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">remmina_rdp_event_on_configure</a>(GtkWidget* widget, GdkEventConfigure* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;{</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="comment">/* Called when gp changes its size or position */</span></div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</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; <a class="code" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">remmina_rdp_event_update_scale_factor</a>(gp);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="comment">/* If the scaler is not active, schedule a delayed remote resolution change */</span></div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <a class="code" href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a>(gp);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</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">return</span> FALSE;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;}</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332"> 415</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <span class="keywordtype">int</span> ix, <span class="keywordtype">int</span> iy, UINT16* ox, UINT16* oy)</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"> 417</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="comment"> * Translate a position from local window coordinates (ix,iy) to</span></div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment"> * RDP coordinates and put result on (*ox,*uy)</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="comment"> * */</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">if</span> ((rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>) &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> &gt;= 1) &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> &gt;= 1)) {</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; *ox = (UINT16)(ix * <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp) / rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a>);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; *oy = (UINT16)(iy * <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp) / rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a>);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; *ox = (UINT16)ix;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; *oy = (UINT16)iy;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</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;</div><div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c"> 437</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">remmina_rdp_event_reverse_translate_pos_reverse</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <span class="keywordtype">int</span> ix, <span class="keywordtype">int</span> iy, <span class="keywordtype">int</span>* ox, <span class="keywordtype">int</span>* oy)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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; <span class="comment">/*</span></div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment"> * Translate a position from RDP coordinates (ix,iy) to</span></div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="comment"> * local window coordinates and put result on (*ox,*uy)</span></div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"> * */</span></div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">if</span> ((rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a>) &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a> &gt;= 1) &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a> &gt;= 1)) {</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; *ox = (ix * rfi-&gt;<a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a>) / <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; *oy = (iy * rfi-&gt;<a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a>) / <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; *ox = ix;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; *oy = iy;</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;}</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024"> 459</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">remmina_rdp_event_on_motion</a>(GtkWidget* widget, GdkEventMotion* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.flags = PTR_FLAGS_MOVE;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.extended = FALSE;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a>(gp, event-&gt;x, event-&gt;y, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.x, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.y);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;}</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6"> 474</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">remmina_rdp_event_on_button</a>(GtkWidget* widget, GdkEventButton* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;{</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; gint flag;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; gboolean extended = FALSE;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</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; <span class="comment">/* We bypass 2button-press and 3button-press events */</span></div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">if</span> ((event-&gt;type != GDK_BUTTON_PRESS) &amp;&amp; (event-&gt;type != GDK_BUTTON_RELEASE))</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="keywordflow">return</span> TRUE;</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; flag = 0;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">switch</span> (event-&gt;button) {</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">case</span> 1:</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; flag |= PTR_FLAGS_BUTTON1;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">case</span> 2:</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; flag |= PTR_FLAGS_BUTTON3;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">case</span> 3:</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; flag |= PTR_FLAGS_BUTTON2;</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; <span class="keywordflow">case</span> 8: <span class="comment">/* back */</span></div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">case</span> 97: <span class="comment">/* Xming */</span></div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; extended = TRUE;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; flag |= PTR_XFLAGS_BUTTON1;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">case</span> 9: <span class="comment">/* forward */</span></div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">case</span> 112: <span class="comment">/* Xming */</span></div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; extended = TRUE;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; flag |= PTR_XFLAGS_BUTTON2;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; }</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">if</span> (event-&gt;type == GDK_BUTTON_PRESS) {</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">if</span> (extended)</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; flag |= PTR_XFLAGS_DOWN;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; flag |= PTR_FLAGS_DOWN;</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;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <a class="code" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a>(gp, event-&gt;x, event-&gt;y, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.x, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.y);</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; <span class="keywordflow">if</span> (flag != 0) {</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.flags = flag;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.extended = extended;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</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"> 527</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00530"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469"> 530</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">remmina_rdp_event_on_scroll</a>(GtkWidget* widget, GdkEventScroll* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;{</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gint flag;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; flag = 0;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordflow">switch</span> (event-&gt;direction) {</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_UP:</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; flag = PTR_FLAGS_WHEEL | 0x0078;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_DOWN:</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; flag = PTR_FLAGS_WHEEL | PTR_FLAGS_WHEEL_NEGATIVE | 0x0088;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="preprocessor">#ifdef GDK_SCROLL_SMOOTH</span></div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_SMOOTH:</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &lt; 0)</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; flag = PTR_FLAGS_WHEEL | 0x0078;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &gt; 0)</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; flag = PTR_FLAGS_WHEEL | PTR_FLAGS_WHEEL_NEGATIVE | 0x0088;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keywordflow">if</span> (!flag)</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; }</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; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.flags = flag;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.extended = FALSE;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <a class="code" href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a>(gp, event-&gt;x, event-&gt;y, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.x, &amp;rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.y);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;}</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0"> 571</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">remmina_rdp_event_init_keymap</a>(<a class="code" href="structrf__context.html">rfContext</a>* rfi, <span class="keyword">const</span> gchar* strmap)</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;{</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keywordtype">long</span> <span class="keywordtype">int</span> v1, v2;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *s;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordtype">char</span> *endptr;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <a class="code" href="structremmina__plugin__rdp__keymap__entry.html">RemminaPluginRdpKeymapEntry</a> ke;</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; <span class="keywordflow">if</span> (strmap == NULL || strmap[0] == 0) {</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a> = NULL;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; }</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; s = strmap;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a> = g_array_new(FALSE, TRUE, <span class="keyword">sizeof</span>(<a class="code" href="structremmina__plugin__rdp__keymap__entry.html">RemminaPluginRdpKeymapEntry</a>));</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keywordflow">while</span>(1) {</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; v1 = strtol(s, &amp;endptr, 10);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">if</span> (endptr == s) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; s = endptr;</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (*s != <span class="charliteral">&#39;:&#39;</span>) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; s++;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; v2 = strtol(s, &amp;endptr, 10);</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">if</span> (endptr == s) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; s = endptr;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; ke.<a class="code" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">orig_keycode</a> = v1 &amp; 0x7fffffff;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; ke.<a class="code" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">translated_keycode</a> = v2 &amp; 0x7fffffff;</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; g_array_append_val(rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>, ke);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">if</span> (*s != <span class="charliteral">&#39;,&#39;</span>) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; s++;</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>-&gt;len == 0) {</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; g_array_unref(rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a> = NULL;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; }</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;</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"><a class="line" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56"> 606</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">remmina_rdp_event_on_key</a>(GtkWidget* widget, GdkEventKey* event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;{</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; guint32 unicode_keyval;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; guint16 hardware_keycode;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <a class="code" href="structremmina__plugin__rdp__keymap__entry.html">RemminaPluginRdpKeymapEntry</a>* kep;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; DWORD scancode = 0;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordtype">int</span> ik;</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; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">return</span> FALSE;</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;<span class="preprocessor">#ifdef ENABLE_GTK_INSPECTOR_KEY</span></div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="comment">/* GTK inspector key is propagated up. Disabled by default.</span></div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;<span class="comment"> * enable it by defining ENABLE_GTK_INSPECTOR_KEY */</span></div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">if</span> ( ( event-&gt;state &amp; GDK_CONTROL_MASK ) != 0 &amp;&amp; ( event-&gt;keyval == GDK_KEY_I || event-&gt;keyval == GDK_KEY_D ) ) {</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordflow">return</span> FALSE;</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="preprocessor">#endif</span></div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a>;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = (<span class="keyword">event</span>-&gt;type == GDK_KEY_PRESS ? False : True);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended = False;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">switch</span> (event-&gt;keyval) {</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">case</span> GDK_KEY_Pause:</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;<span class="comment"> * See https://msdn.microsoft.com/en-us/library/cc240584.aspx</span></div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;<span class="comment"> * 2.2.8.1.1.3.1.1.1 Keyboard Event (TS_KEYBOARD_EVENT)</span></div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;<span class="comment"> * for pause key management</span></div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = 0x1D;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = False;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = 0x45;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = False;</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = 0x1D;</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = True;</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = 0x45;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.up = True;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">use_client_keymap</a>) {</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; hardware_keycode = <span class="keyword">event</span>-&gt;hardware_keycode;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>) {</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keywordflow">for</span>(ik = 0; ik &lt; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>-&gt;len; ik++) {</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; kep = &amp;g_array_index(rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>, <a class="code" href="structremmina__plugin__rdp__keymap__entry.html">RemminaPluginRdpKeymapEntry</a>, ik);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keywordflow">if</span> (hardware_keycode == kep-&gt;<a class="code" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">orig_keycode</a>) {</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; hardware_keycode = kep-&gt;<a class="code" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">translated_keycode</a>;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; }</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; }</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; }</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; scancode = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(hardware_keycode);</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordflow">if</span> (scancode) {</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = scancode &amp; 0xFF;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended = scancode &amp; 0x100;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <a class="code" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a>(gp, rdp_event);</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; }</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; unicode_keyval = gdk_keyval_to_unicode(event-&gt;keyval);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="comment">/* Decide when whe should send a keycode or a Unicode character.</span></div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;<span class="comment"> * - All non char keys (Shift, Alt, Super) should be sent as keycode</span></div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160;<span class="comment"> * - Space should be sent as keycode (see issue #1364)</span></div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;<span class="comment"> * - All special keys (F1-F10, numeric pad, Home/End/Arrows/PgUp/PgDn/Insert/Delete) keycode</span></div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;<span class="comment"> * - All key pressed while Ctrl or Alt or Super is down are not decoded by gdk_keyval_to_unicode(), so send it as keycode</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;<span class="comment"> * - All keycodes not translatable to unicode chars, as keycode</span></div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="comment"> * - The rest as Unicode char</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval &gt;= 0xfe00 || <span class="comment">// Arrows, Shift, Alt, Fn, num keypad…</span></div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; event-&gt;hardware_keycode == 0x41 || <span class="comment">// Spacebar</span></div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; unicode_keyval == 0 || <span class="comment">// Impossible to translate</span></div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; (event-&gt;state &amp; (GDK_MOD1_MASK | GDK_CONTROL_MASK | GDK_SUPER_MASK)) != 0 <span class="comment">// A modifier not recognized by gdk_keyval_to_unicode()</span></div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; ) {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; scancode = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(event-&gt;hardware_keycode);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code = scancode &amp; 0xFF;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended = scancode &amp; 0x100;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="keywordflow">if</span> (rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code) {</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <a class="code" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a>(gp, rdp_event);</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; }</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.unicode_code = unicode_keyval;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.extended = False;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <a class="code" href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a>(gp, rdp_event);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; }</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; }</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">break</span>;</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="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;}</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"><a class="line" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a"> 708</a></span>&#160;gboolean <a class="code" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">remmina_rdp_event_on_clipboard</a>(GtkClipboard *gtkClipboard, GdkEvent *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;{</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="comment">/* Signal handler for GTK clipboard owner-change */</span></div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; CLIPRDR_FORMAT_LIST* pFormatList;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="comment">/* Usually &quot;owner-change&quot; is fired when a user pres &quot;COPY&quot; on the client</span></div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;<span class="comment"> * OR when this plugin calls gtk_clipboard_set_with_owner()</span></div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;<span class="comment"> * after receivina a RDP server format list in remmina_rdp_cliprdr_server_format_list()</span></div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;<span class="comment"> * In the latter case, we must ignore owner change */</span></div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;owner-change event received&quot;</span>);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">if</span> (rfi)</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a>(rfi);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <span class="keywordflow">if</span> (gtk_clipboard_get_owner(gtkClipboard) != (GObject*)gp) {</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <span class="comment">/* To do: avoid this when the new owner is another remmina protocol widget of</span></div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="comment"> * the same remmina application */</span></div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot; new owner is different than me: new=%p me=%p. Sending local clipboard format list to server.&quot;</span>,</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; gtk_clipboard_get_owner(gtkClipboard), (GObject*)gp);</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; pFormatList = <a class="code" href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a>(gp);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a>;</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">clipboard_formatlist</a>.pFormatList = pFormatList;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot; ... but I&#39;m the owner!&quot;</span>);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; }</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;}</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div><div class="line"><a name="l00742"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc"> 742</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">remmina_rdp_event_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;{</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; gchar* s;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; gint flags;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; GtkClipboard* clipboard;</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">if</span> (!rfi) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; remminafile = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160;</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a> = gtk_drawing_area_new();</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; gtk_widget_show(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; gtk_container_add(GTK_CONTAINER(gp), rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; gtk_widget_add_events(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_SCROLL_MASK | GDK_FOCUS_CHANGE_MASK);</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; gtk_widget_set_can_focus(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, TRUE);</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"> 762</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>);</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; s = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_use_client_keymap&quot;</span>);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">use_client_keymap</a> = (s &amp;&amp; s[0] == <span class="charliteral">&#39;1&#39;</span> ? TRUE : FALSE);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; g_free(s);</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"> 768</span>&#160; <span class="comment">/* Read special keymap from profile file, if exists */</span></div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <a class="code" href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">remmina_rdp_event_init_keymap</a>(rfi, <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_map_keycode&quot;</span>));</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">use_client_keymap</a> &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>) {</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;RDP profile error: you cannot define both rdp_map_hardware_keycode and have &#39;Use client keuboard mapping&#39; enabled\n&quot;</span>);</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;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;draw&quot;</span>,</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">remmina_rdp_event_on_draw</a>), gp);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;configure-event&quot;</span>,</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">remmina_rdp_event_on_configure</a>), gp);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;motion-notify-event&quot;</span>,</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">remmina_rdp_event_on_motion</a>), gp);</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;button-press-event&quot;</span>,</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">remmina_rdp_event_on_button</a>), gp);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;button-release-event&quot;</span>,</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">remmina_rdp_event_on_button</a>), gp);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;scroll-event&quot;</span>,</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">remmina_rdp_event_on_scroll</a>), gp);</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;key-press-event&quot;</span>,</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">remmina_rdp_event_on_key</a>), gp);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;key-release-event&quot;</span>,</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">remmina_rdp_event_on_key</a>), gp);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; g_signal_connect(G_OBJECT(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), <span class="stringliteral">&quot;focus-in-event&quot;</span>,</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; G_CALLBACK(<a class="code" href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">remmina_rdp_event_on_focus_in</a>), gp);</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE)) {</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; clipboard = gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a> = g_signal_connect(clipboard, <span class="stringliteral">&quot;owner-change&quot;</span>, G_CALLBACK(<a class="code" href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">remmina_rdp_event_on_clipboard</a>), gp);</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;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a> = g_array_new(FALSE, TRUE, <span class="keyword">sizeof</span>(<a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>));</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a> = g_async_queue_new_full(g_free);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a> = g_async_queue_new();</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; pthread_mutex_init(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>, NULL);</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; <span class="keywordflow">if</span> (pipe(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>)) {</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; g_print(<span class="stringliteral">&quot;Error creating pipes.\n&quot;</span>);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0] = -1;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[1] = -1;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a> = NULL;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; flags = fcntl(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0], F_GETFL, 0);</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; fcntl(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0], F_SETFL, flags | O_NONBLOCK);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a> = CreateFileDescriptorEvent(NULL, FALSE, FALSE, rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0], WINPR_FD_READ);</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>) {</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; g_print(<span class="stringliteral">&quot;CreateFileDescriptorEvent() failed\n&quot;</span>);</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; }</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">object_table</a> = g_hash_table_new_full(NULL, NULL, NULL, g_free);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a> = gdk_display_get_default();</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; GdkVisual *visual = gdk_screen_get_system_visual(</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; gdk_display_get_default_screen(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>));</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a> = gdk_visual_get_depth (visual);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a> = gdk_visual_get_best_depth();</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;}</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f"> 833</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* obj)</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160;{</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <span class="keywordflow">switch</span> (obj-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a>) {</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">REMMINA_RDP_UI_RFX</a>:</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; rfx_message_free(rfi-&gt;<a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a>, obj-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7">rfx</a>.message);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">REMMINA_RDP_UI_NOCODEC</a>:</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; free(obj-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34">nocodec</a>.bitmap);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <span class="keywordflow">break</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">default</span>:</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <span class="keywordflow">break</span>;</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"> 851</span>&#160; g_free(obj);</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;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc"> 855</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;{</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <span class="keywordflow">if</span> (!rfi) <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; <span class="comment">/* unregister the clipboard monitor */</span></div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a>) {</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; g_signal_handler_disconnect(G_OBJECT(gtk_widget_get_clipboard(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, GDK_SELECTION_CLIPBOARD)), rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a>);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a> = 0;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; }</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a>) {</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; g_source_remove(rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a>);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a> = 0;</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a>) {</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; g_source_remove(rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a>);</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a> = 0;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; }</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <span class="keywordflow">while</span> ((ui = (<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>*)g_async_queue_try_pop(rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a>)) != NULL) {</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <a class="code" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a>(gp, ui);</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; }</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>) {</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; cairo_surface_destroy(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>);</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> = NULL;</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;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; g_hash_table_destroy(rfi-&gt;<a class="code" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">object_table</a>);</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; g_array_free(rfi-&gt;<a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>, TRUE);</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>) {</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; g_array_free(rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>, TRUE);</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a> = NULL;</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"> 891</span>&#160; g_async_queue_unref(rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a>);</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a> = NULL;</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; g_async_queue_unref(rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a>);</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a> = NULL;</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; pthread_mutex_destroy(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>) {</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; CloseHandle(rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>);</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a> = NULL;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; }</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; close(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0]);</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; close(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[1]);</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;}</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;</div><div class="line"><a name="l00906"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a"> 906</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a>(<a class="code" href="structrf__context.html">rfContext</a>* rfi)</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; <span class="keywordtype">int</span> stride;</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; rdpGdi* gdi;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <span class="keywordflow">if</span> (!rfi)</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; gdi = ((rdpContext *)rfi)-&gt;gdi;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; <span class="keywordflow">if</span> (!gdi)</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> (rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>) {</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; cairo_surface_destroy(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>);</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> = NULL;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; }</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; stride = cairo_format_stride_for_width(rfi-&gt;<a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a>, gdi-&gt;width);</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> = cairo_image_surface_create_for_data((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)gdi-&gt;primary_buffer, rfi-&gt;<a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a>, gdi-&gt;width, gdi-&gt;height, stride);</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160;}</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497"> 927</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160;{</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; gint width, height;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; rdpGdi* gdi;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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; width = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; height = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; gdi = ((rdpContext*)rfi)-&gt;gdi;</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp);</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">/* See if we also must rellocate rfi-&gt;surface with different width and height,</span></div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160;<span class="comment"> * this usually happens after a DesktopResize RDP event*/</span></div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160;</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordflow">if</span> ( rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> &amp;&amp; (cairo_image_surface_get_width(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>) != gdi-&gt;width ||</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; cairo_image_surface_get_height(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>) != gdi-&gt;height) ) {</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="comment">/* Destroys and recreate rfi-&gt;surface with new width and height */</span></div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; cairo_surface_destroy(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>);</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> = NULL;</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; <a class="code" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a>(rfi);</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> == NULL ) {</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; <a class="code" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a>(rfi);</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; }</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; <span class="comment">/* Send gdi-&gt;width and gdi-&gt;height obtained from remote server to gp plugin,</span></div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160;<span class="comment"> * so they will be saved when closing connection */</span></div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; <span class="keywordflow">if</span> (width != gdi-&gt;width)</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, gdi-&gt;width);</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; <span class="keywordflow">if</span> (height != gdi-&gt;height)</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, gdi-&gt;height);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160;</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <a class="code" href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">remmina_rdp_event_update_scale_factor</a>(gp);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> || rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>) {</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; <span class="comment">/* In scaled mode and autores mode, drawing_area will get its dimensions from its parent */</span></div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; gtk_widget_set_size_request(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, -1, -1 );</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; <span class="comment">/* In non scaled mode, the plugins forces dimensions of drawing area */</span></div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; gtk_widget_set_size_request(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, width, height);</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; }</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">protocol_plugin_update_align</a>(gp);</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;</div><div class="line"><a name="l00973"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748"> 973</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">remmina_rdp_event_connected</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160;{</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; rdpGdi* gdi;</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; gdi = ((rdpContext *)rfi)-&gt;gdi;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160;</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; gtk_widget_realize(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>);</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160;</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <a class="code" href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a>(rfi);</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; gtk_widget_queue_draw_area(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, 0, 0, gdi-&gt;width, gdi-&gt;height);</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160;</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; <a class="code" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a>(gp);</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160;</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160;}</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160;</div><div class="line"><a name="l00991"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65"> 991</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">remmina_rdp_event_reconnect_progress</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; gdk_window_invalidate_rect(gtk_widget_get_window(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), NULL, TRUE);</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"><a class="line" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc"> 998</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">remmina_rdp_event_create_cursor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;{</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; GdkPixbuf* pixbuf;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; rdpPointer* pointer = (rdpPointer*)ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; cairo_surface_t* surface;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; UINT8* data = malloc(pointer-&gt;width * pointer-&gt;height * 4);</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; <span class="keywordflow">if</span> (freerdp_image_copy_from_pointer_data(</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; (BYTE*)data, PIXEL_FORMAT_BGRA32,</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; pointer-&gt;width * 4, 0, 0, pointer-&gt;width, pointer-&gt;height,</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; pointer-&gt;xorMaskData, pointer-&gt;lengthXorMask,</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; pointer-&gt;andMaskData, pointer-&gt;lengthAndMask,</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; pointer-&gt;xorBpp, &amp;(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.context-&gt;gdi-&gt;palette)) &lt; 0) {</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; free(data);</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; }</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; surface = cairo_image_surface_create_for_data(data, CAIRO_FORMAT_ARGB32, pointer-&gt;width, pointer-&gt;height, cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, pointer-&gt;width));</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; pixbuf = gdk_pixbuf_get_from_surface(surface, 0, 0, pointer-&gt;width, pointer-&gt;height);</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; cairo_surface_destroy(surface);</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; free(data);</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; ((<a class="code" href="structrf__pointer.html">rfPointer</a>*)ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer)-&gt;cursor = gdk_cursor_new_from_pixbuf(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, pixbuf, pointer-&gt;xPos, pointer-&gt;yPos);</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; g_object_unref(pixbuf);</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;}</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;</div><div class="line"><a name="l01027"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461"> 1027</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">remmina_rdp_event_free_cursor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; g_object_unref(ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer-&gt;cursor);</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer-&gt;cursor = NULL;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;}</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;</div><div class="line"><a name="l01034"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8"> 1034</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">remmina_rdp_event_set_pointer_position</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint x, gint y)</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;{</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; GdkWindow *w, *nw;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; gint nx, ny, wx, wy;</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; GdkDeviceManager *manager;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; GdkDevice *dev;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; <span class="keywordflow">if</span> (rfi == NULL)</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; w = gtk_widget_get_window(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>);</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; seat = gdk_display_get_default_seat(gdk_display_get_default());</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; dev = gdk_seat_get_pointer(seat);</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; manager = gdk_display_get_device_manager(gdk_display_get_default());</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; dev = gdk_device_manager_get_client_pointer(manager);</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; nw = gdk_device_get_window_at_position(dev, NULL, NULL);</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; <span class="keywordflow">if</span> (nw == w) {</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; nx = 0;</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; ny = 0;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; <a class="code" href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">remmina_rdp_event_reverse_translate_pos_reverse</a>(gp, x, y, &amp;nx, &amp;ny);</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; gdk_window_get_root_coords(w, nx, ny, &amp;wx, &amp;wy);</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; gdk_device_warp(dev, gdk_window_get_screen(w), wx, wy);</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;}</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"><a class="line" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016"> 1071</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">remmina_rdp_event_cursor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;{</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</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; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type) {</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a>:</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a> = <a class="code" href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">remmina_rdp_event_create_cursor</a>(gp, ui) ? 1 : 0;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a>:</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <a class="code" href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">remmina_rdp_event_free_cursor</a>(gp, ui);</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; <span class="keywordflow">break</span>;</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">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a>:</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer-&gt;cursor);</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a> = 1;</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a>:</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a> = <a class="code" href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">remmina_rdp_event_set_pointer_position</a>(gp, ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">pos</a>.x, ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">pos</a>.y) ? 1 : 0;</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a>:</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>),</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; gdk_cursor_new_for_display(gdk_display_get_default(),</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; GDK_BLANK_CURSOR));</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a> = 1;</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; <span class="keywordflow">break</span>;</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">case</span> <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a>:</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>), NULL);</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a> = 1;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <span class="keywordflow">break</span>;</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;}</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;</div><div class="line"><a name="l01108"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde"> 1108</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">remmina_rdp_ui_event_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; <a class="code" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a>(gp);</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;}</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"><a class="line" href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c"> 1114</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;{</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; <span class="keywordflow">if</span> (!rfi || !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> || rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>)</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; <a class="code" href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">remmina_rdp_event_release_all_keys</a>(gp);</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;}</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;</div><div class="line"><a name="l01124"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31"> 1124</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">remmina_rdp_ui_event_destroy_cairo_surface</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; cairo_surface_destroy(rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>);</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a> = NULL;</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;</div><div class="line"><a name="l01132"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5"> 1132</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">remmina_rdp_event_process_event</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;{</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">event</a>.type) {</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a>:</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; <a class="code" href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">remmina_rdp_ui_event_update_scale</a>(gp, ui);</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a>:</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; <a class="code" href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">remmina_rdp_ui_event_destroy_cairo_surface</a>(gp, ui);</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; <span class="keywordflow">break</span>;</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"> 1143</span>&#160;}</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"><a class="line" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466"> 1145</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">remmina_rdp_event_process_ui_event</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; <span class="keywordflow">switch</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a>) {</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a>:</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; <a class="code" href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">remmina_rdp_event_update_regions</a>(gp, ui);</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; <span class="keywordflow">break</span>;</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">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a>:</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; <a class="code" href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">remmina_rdp_event_connected</a>(gp, ui);</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a>:</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <a class="code" href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">remmina_rdp_event_reconnect_progress</a>(gp, ui);</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordflow">break</span>;</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"> 1161</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>:</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <a class="code" href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">remmina_rdp_event_cursor</a>(gp, ui);</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>:</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a>(gp, ui);</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a>:</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; <a class="code" href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">remmina_rdp_event_process_event</a>(gp, ui);</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; }</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;}</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;</div><div class="line"><a name="l01178"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23"> 1178</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">remmina_rdp_event_process_ui_queue</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp)</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;{</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</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; pthread_mutex_lock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; ui = (<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>*)g_async_queue_try_pop(rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a>);</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; <span class="keywordflow">if</span> (ui) {</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; pthread_mutex_lock(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>);</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">thread_cancelled</a>) {</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <a class="code" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">remmina_rdp_event_process_ui_event</a>(gp, ui);</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; }</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; <span class="comment">// Should we signal the caller thread to unlock ?</span></div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <span class="keywordflow">if</span> (ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a>) {</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a> = TRUE;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; pthread_cond_signal(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a>);</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; pthread_mutex_unlock(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>);</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; <a class="code" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a>(gp, ui);</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"> 1201</span>&#160;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; pthread_mutex_unlock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a> = 0;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; pthread_mutex_unlock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; <span class="keywordflow">return</span> FALSE;</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;}</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;</div><div class="line"><a name="l01211"></a><span class="lineno"><a class="line" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945"> 1211</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; gboolean ui_sync_save;</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; <span class="keywordtype">int</span> oldcanceltype;</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; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">thread_cancelled</a>) {</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">is_main_thread</a>()) {</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; <a class="code" href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">remmina_rdp_event_process_ui_event</a>(gp, ui);</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; }</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; pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, &amp;oldcanceltype);</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160;</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; pthread_mutex_lock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; ui_sync_save = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a>;</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a> = FALSE;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; <span class="keywordflow">if</span> (ui_sync_save) {</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; pthread_mutex_init(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>, NULL);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; pthread_cond_init(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a>, NULL);</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;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a> = FALSE;</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; g_async_queue_push(rfi-&gt;<a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a>, ui);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a>) {</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a> = IDLE_ADD((GSourceFunc)<a class="code" href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">remmina_rdp_event_process_ui_queue</a>, gp);</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; }</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; <span class="keywordflow">if</span> (ui_sync_save) {</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; <span class="comment">/* Wait for main thread function completion before returning */</span></div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; pthread_mutex_lock(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>);</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; pthread_mutex_unlock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>);</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; <span class="keywordflow">while</span> (!ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a>) {</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; pthread_cond_wait(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a>, &amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>);</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; pthread_cond_destroy(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a>);</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; pthread_mutex_destroy(&amp;ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>);</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; pthread_mutex_unlock(&amp;rfi-&gt;<a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</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; pthread_setcanceltype(oldcanceltype, NULL);</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160;}</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"><a class="line" href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325"> 1262</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;{</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a> = FALSE;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; <a class="code" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a>(gp, ui);</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;</div><div class="line"><a name="l01268"></a><span class="lineno"><a class="line" href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81"> 1268</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <span class="keywordtype">int</span> retval;</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a> = TRUE;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; <a class="code" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a>(gp, ui);</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; retval = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a>;</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160; <a class="code" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a>(gp, ui);</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; <span class="keywordflow">return</span> retval;</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="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350"> 1279</a></span>&#160;<span class="keywordtype">void</span> *<a class="code" href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui)</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; <span class="keywordtype">void</span> *rp;</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a> = TRUE;</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160; <a class="code" href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a>(gp, ui);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; rp = ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">retptr</a>;</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <a class="code" href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a>(gp, ui);</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; <span class="keywordflow">return</span> rp;</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;}</div><div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00174">rdp_plugin.h:174</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a663e2e70d2f51daa97666142fdde98d0"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">remmina_plugin_rdp_event::clipboard_formatlist</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@44 clipboard_formatlist</div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">REMMINA_RDP_UI_NOCODEC</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00159">rdp_plugin.h:159</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00175">rdp_plugin.h:175</a></div></div>
+<div class="ttc" id="structrf__context_html_aa574515edb4966117f539d26e26f0a62"><div class="ttname"><a href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">rf_context::thread_cancelled</a></div><div class="ttdeci">gboolean thread_cancelled</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00256">rdp_plugin.h:256</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a6cdd472797d227d7ce79a312c0fa2a24"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">remmina_plugin_rdp_ui_object::retptr</a></div><div class="ttdeci">void * retptr</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00235">rdp_plugin.h:235</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a740d33b9c229ada638eeeebe2ffca461"><div class="ttname"><a href="rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461">remmina_rdp_event_free_cursor</a></div><div class="ttdeci">static void remmina_rdp_event_free_cursor(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01027">rdp_event.c:1027</a></div></div>
+<div class="ttc" id="structrf__context_html_af40c80ff8296b9bcc3ac437bf0be55f8"><div class="ttname"><a href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context::is_reconnecting</a></div><div class="ttdeci">gboolean is_reconnecting</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00269">rdp_plugin.h:269</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a52ca364a1902d7f4095234923feed724"><div class="ttname"><a href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">rf_clipboard::clipboard_handler</a></div><div class="ttdeci">gulong clipboard_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00077">rdp_plugin.h:77</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a789ec99777755da7cae468216a74095a"><div class="ttname"><a href="rdp__event_8c.html#a789ec99777755da7cae468216a74095a">remmina_rdp_event_create_cairo_surface</a></div><div class="ttdeci">static void remmina_rdp_event_create_cairo_surface(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00906">rdp_event.c:906</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae97f4052c4bbda628682ae071ada27ed"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService::remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode(* remmina_protocol_widget_get_current_scale_mode)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00154">plugin.h:154</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a5f5fcd2a5c81d0c8bec609e0428735c5"><div class="ttname"><a href="rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5">remmina_rdp_event_process_event</a></div><div class="ttdeci">static void remmina_rdp_event_process_event(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01132">rdp_event.c:1132</a></div></div>
+<div class="ttc" id="structrf__context_html_a957e6f6867170470689210d55770342e"><div class="ttname"><a href="structrf__context.html#a957e6f6867170470689210d55770342e">rf_context::delayed_monitor_layout_handler</a></div><div class="ttdeci">guint delayed_monitor_layout_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00284">rdp_plugin.h:284</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a6076424eb759c91ca9c8da59432c66d6"><div class="ttname"><a href="rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6">remmina_rdp_event_update_scale_factor</a></div><div class="ttdeci">static void remmina_rdp_event_update_scale_factor(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00251">rdp_event.c:251</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a64657b5e71205d98805ca66b01bfae3c"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">remmina_plugin_rdp_ui_object::complete</a></div><div class="ttdeci">gboolean complete</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00192">rdp_plugin.h:192</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aa97996f0dc8907f00a5b45730898d9f7"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7">remmina_plugin_rdp_ui_object::rfx</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@52 rfx</div></div>
+<div class="ttc" id="structrf__context_html_a40e89e126e5dd96a3f67e6f945a8867b"><div class="ttname"><a href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context::bpp</a></div><div class="ttdeci">gint bpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00292">rdp_plugin.h:292</a></div></div>
+<div class="ttc" id="structrf__context_html_a539feef609228a91c5e54d5da837bb7a"><div class="ttname"><a href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">rf_context::event_pipe</a></div><div class="ttdeci">gint event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00305">rdp_plugin.h:305</a></div></div>
+<div class="ttc" id="structrf__context_html_a8a310c8fad5daf6b9f4d8f854b04a764"><div class="ttname"><a href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">rf_context::scale_y</a></div><div class="ttdeci">gdouble scale_y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00283">rdp_plugin.h:283</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00120">types.h:120</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html"><div class="ttname"><a href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00117">rdp_plugin.h:117</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="structrf__context_html_a3aead7f4d2c4580fcbd25e15679e19c6"><div class="ttname"><a href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">rf_context::surface</a></div><div class="ttdeci">cairo_surface_t * surface</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00290">rdp_plugin.h:290</a></div></div>
+<div class="ttc" id="structrf__context_html_ab5ffc4d8ba9d3d8a298414dc8e4efd2a"><div class="ttname"><a href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rf_context::rdpgfxchan</a></div><div class="ttdeci">gboolean rdpgfxchan</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00266">rdp_plugin.h:266</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00110">rdp_plugin.h:110</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="structrf__context_html_ae62cc5547984bf11865f93c7d63afdf0"><div class="ttname"><a href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">rf_context::ui_handler</a></div><div class="ttdeci">guint ui_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00301">rdp_plugin.h:301</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a5f05047cf10611ffb7a23a248650cb4c"><div class="ttname"><a href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a></div><div class="ttdeci">void remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00608">rdp_settings.c:608</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00161">rdp_plugin.h:161</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00182">rdp_plugin.h:182</a></div></div>
+<div class="ttc" id="structrf__context_html_a7c4234646c4b584e41e36521b7eab889"><div class="ttname"><a href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">rf_context::display</a></div><div class="ttdeci">GdkDisplay * display</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00288">rdp_plugin.h:288</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_adaaf3de8342309cc52668f318a473350"><div class="ttname"><a href="rdp__event_8c.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a></div><div class="ttdeci">void * remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01279">rdp_event.c:1279</a></div></div>
+<div class="ttc" id="structrf__context_html_ae6190d1c82045bcd08e22ff6e98148a3"><div class="ttname"><a href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">rf_context::ui_queue</a></div><div class="ttdeci">GAsyncQueue * ui_queue</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00299">rdp_plugin.h:299</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a712a9b04decd8b928d71db44b9b14fc9"><div class="ttname"><a href="rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a></div><div class="ttdeci">void remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00240">rdp_event.c:240</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a5375267e5c5285fbaf47ed22566e68c6"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">remmina_plugin_rdp_ui_object::sync_wait_mutex</a></div><div class="ttdeci">pthread_mutex_t sync_wait_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00193">rdp_plugin.h:193</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00157">rdp_plugin.h:157</a></div></div>
+<div class="ttc" id="structrf__context_html_a4c35800dba8da687f7f56e3bb7a23413"><div class="ttname"><a href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">rf_context::reconnect_nattempt</a></div><div class="ttdeci">int reconnect_nattempt</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00276">rdp_plugin.h:276</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_abfa1d5d0b0494818fb5e1a549c0acd23"><div class="ttname"><a href="rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23">remmina_rdp_event_process_ui_queue</a></div><div class="ttdeci">static gboolean remmina_rdp_event_process_ui_queue(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01178">rdp_event.c:1178</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ae8ef8118379a8bb6a6f99a8bbc0cbcfc"><div class="ttname"><a href="rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc">remmina_rdp_event_create_cursor</a></div><div class="ttdeci">static BOOL remmina_rdp_event_create_cursor(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00998">rdp_event.c:998</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a062f6feb8f4b29ad0ad84717e6646e0c"><div class="ttname"><a href="rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c">remmina_rdp_event_release_key</a></div><div class="ttdeci">static void remmina_rdp_event_release_key(RemminaProtocolWidget *gp, RemminaPluginRdpEvent rdp_event)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00133">rdp_event.c:133</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a2b91746b782b7782432bd1d23c6a9945"><div class="ttname"><a href="rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945">remmina_rdp_event_queue_ui</a></div><div class="ttdeci">static void remmina_rdp_event_queue_ui(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01211">rdp_event.c:1211</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00177">rdp_plugin.h:177</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_adf255b7ceaec6a51fc9269cf824a02ce"><div class="ttname"><a href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">_RemminaPluginService::protocol_plugin_get_width</a></div><div class="ttdeci">gint(* protocol_plugin_get_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00150">plugin.h:150</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00173">rdp_plugin.h:173</a></div></div>
+<div class="ttc" id="structrf__context_html_a584505347366c40e6efa710353d4264f"><div class="ttname"><a href="structrf__context.html#a584505347366c40e6efa710353d4264f">rf_context::scale_x</a></div><div class="ttdeci">gdouble scale_x</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00282">rdp_plugin.h:282</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ad8f0d0f1b1b75646523f3b241f124e56"><div class="ttname"><a href="rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56">remmina_rdp_event_on_key</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_key(GtkWidget *widget, GdkEventKey *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00606">rdp_event.c:606</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a40b4fd190055c10d5d2248a6eca5f50f"><div class="ttname"><a href="rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f">remmina_rdp_event_free_event</a></div><div class="ttdeci">void remmina_rdp_event_free_event(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *obj)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00833">rdp_event.c:833</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ac27328f2796bd021d174c0f4b172c024"><div class="ttname"><a href="rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024">remmina_rdp_event_on_motion</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_motion(GtkWidget *widget, GdkEventMotion *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00459">rdp_event.c:459</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a051b55da6e20ad868efecf007c737dc0"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">remmina_plugin_rdp_ui_object::reg</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@50 reg</div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aaadab3f5fde957f5faa7ee6347bb1c6d"><div class="ttname"><a href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">_RemminaPluginService::protocol_plugin_update_align</a></div><div class="ttdeci">void(* protocol_plugin_update_align)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00169">plugin.h:169</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ad4fad618198e7746ea1e4ebd01a9b173"><div class="ttname"><a href="rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173">remmina_rdp_event_process_clipboard</a></div><div class="ttdeci">void remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00779">rdp_cliprdr.c:779</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a86feac33b8074773d97204a71a42151e"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">remmina_plugin_rdp_event::mouse_event</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@43 mouse_event</div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="structrf__context_html_aa0b949ab1e2f06b7d5efeccc924efaee"><div class="ttname"><a href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">rf_context::reconnect_maxattempts</a></div><div class="ttdeci">int reconnect_maxattempts</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00275">rdp_plugin.h:275</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ae0e0d42524cb165cd6d26553c104dbde"><div class="ttname"><a href="rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde">remmina_rdp_ui_event_update_scale</a></div><div class="ttdeci">static void remmina_rdp_ui_event_update_scale(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01108">rdp_event.c:1108</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a6e3d726d9c6e27d25538c8ae665e8b58"><div class="ttname"><a href="rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58">remmina_rdp_event_on_focus_in</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_focus_in(GtkWidget *widget, GdkEventKey *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00047">rdp_event.c:47</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a84797e0cdf4484432740a8946325f126"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event::type</a></div><div class="ttdeci">RemminaPluginRdpEventType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00118">rdp_plugin.h:118</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00109">rdp_plugin.h:109</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00119">types.h:119</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a2ff2e46de1ad42c9aa8f792d629e0a89"><div class="ttname"><a href="rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89">remmina_rdp_event_update_regions</a></div><div class="ttdeci">void remmina_rdp_event_update_regions(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00220">rdp_event.c:220</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a35376ff50915de1c14285e6326bc943e"><div class="ttname"><a href="rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e">remmina_rdp_event_delayed_monitor_layout</a></div><div class="ttdeci">static gboolean remmina_rdp_event_delayed_monitor_layout(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00331">rdp_event.c:331</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00156">rdp_plugin.h:156</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00160">rdp_plugin.h:160</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html_aa63271d75f6dfda81584ddfb7c60b2a1"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">remmina_plugin_rdp_keymap_entry::translated_keycode</a></div><div class="ttdeci">unsigned translated_keycode</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00240">rdp_plugin.h:240</a></div></div>
+<div class="ttc" id="structrf__context_html_acee2095e72fb2428c498f62e21800026"><div class="ttname"><a href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00279">rdp_plugin.h:279</a></div></div>
+<div class="ttc" id="structrf__context_html_aa13bb4f72f3024d81e9051de4bd65ec0"><div class="ttname"><a href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">rf_context::cairo_format</a></div><div class="ttdeci">cairo_format_t cairo_format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00291">rdp_plugin.h:291</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a3a722112276948dbc5823a9adec2e225"><div class="ttname"><a href="rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225">remmina_rdp_event_on_configure</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_configure(GtkWidget *widget, GdkEventConfigure *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00397">rdp_event.c:397</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a32ad1700995dbad58d5003b06692a5f2"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">remmina_plugin_rdp_event::key_event</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@42 key_event</div></div>
+<div class="ttc" id="rdp__event_8c_html_ab5fe43c1b1b77c39f118d2581942eb81"><div class="ttname"><a href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a></div><div class="ttdeci">int remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01268">rdp_event.c:1268</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_af3a991a02d35fb09c85f2e752a5393ca"><div class="ttname"><a href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">remmina_rdp_event_init</a></div><div class="ttdeci">void remmina_rdp_event_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00742">rdp_event.c:742</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a96bb65801a72ddb0b043438da7654130"><div class="ttname"><a href="rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130">remmina_rdp_clipboard_abort_transfer</a></div><div class="ttdeci">void remmina_rdp_clipboard_abort_transfer(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00814">rdp_cliprdr.c:814</a></div></div>
+<div class="ttc" id="structrf__context_html_ac1f3330674d320c9d0ae408c551be6b8"><div class="ttname"><a href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">rf_context::use_client_keymap</a></div><div class="ttdeci">gboolean use_client_keymap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00285">rdp_plugin.h:285</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a9d63c3ac635001e62851ec4bc5fb7469"><div class="ttname"><a href="rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469">remmina_rdp_event_on_scroll</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_scroll(GtkWidget *widget, GdkEventScroll *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00530">rdp_event.c:530</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a860dc4e2fc1479ec1cbdcc53236df9e9"><div class="ttname"><a href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService::pref_get_value</a></div><div class="ttdeci">gchar *(* pref_get_value)(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00207">plugin.h:207</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ab7cbdc2f8cf829e2f09ecfa605a92d65"><div class="ttname"><a href="rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65">remmina_rdp_event_reconnect_progress</a></div><div class="ttdeci">static void remmina_rdp_event_reconnect_progress(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00991">rdp_event.c:991</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="structrf__context_html_a3712f6b20462e62a6bb87038e5f10d9d"><div class="ttname"><a href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">rf_context::keymap</a></div><div class="ttdeci">GArray * keymap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00310">rdp_plugin.h:310</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html_a20d8c7c462c3cb173e3baedbc19a8a88"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">remmina_plugin_rdp_keymap_entry::orig_keycode</a></div><div class="ttdeci">unsigned orig_keycode</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00239">rdp_plugin.h:239</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a080ab4a0a8f592bb5484202175beaaa5"><div class="ttname"><a href="rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5">remmina_rdp_event_scale_area</a></div><div class="ttdeci">static void remmina_rdp_event_scale_area(RemminaProtocolWidget *gp, gint *x, gint *y, gint *w, gint *h)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00175">rdp_event.c:175</a></div></div>
+<div class="ttc" id="structrf__pointer_html"><div class="ttname"><a href="structrf__pointer.html">rf_pointer</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00087">rdp_plugin.h:87</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ae445fd0a84c7c9414a177a69c86cf325"><div class="ttname"><a href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a></div><div class="ttdeci">void remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01262">rdp_event.c:1262</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a0caf4ffb4011d001301ea10f2c3f75e6"><div class="ttname"><a href="rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6">remmina_rdp_event_on_button</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_button(GtkWidget *widget, GdkEventButton *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00474">rdp_event.c:474</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00172">rdp_plugin.h:172</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa159850f20499e5bc1067f533d2fa820"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">_RemminaPluginService::protocol_plugin_get_height</a></div><div class="ttdeci">gint(* protocol_plugin_get_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00152">plugin.h:152</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a2fbd883476dfcda31d040a64ffb06b34"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34">remmina_plugin_rdp_ui_object::nocodec</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@53 nocodec</div></div>
+<div class="ttc" id="rdp__event_8c_html_ac7c8d626470553c1659312697811dbfe"><div class="ttname"><a href="rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a></div><div class="ttdeci">void remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00381">rdp_event.c:381</a></div></div>
+<div class="ttc" id="structrf__context_html_a5d119b1f108fe84c74e6484d48c2a565"><div class="ttname"><a href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">rf_context::event_queue</a></div><div class="ttdeci">GAsyncQueue * event_queue</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00304">rdp_plugin.h:304</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a113ce593d4a96413b9330c471ee51554"><div class="ttname"><a href="rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554">remmina_rdp_event_release_all_keys</a></div><div class="ttdeci">static void remmina_rdp_event_release_all_keys(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00112">rdp_event.c:112</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_accb7cad54767b8f658b8ea438690ef4f"><div class="ttname"><a href="rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f">remmina_rdp_cliprdr_get_client_format_list</a></div><div class="ttdeci">CLIPRDR_FORMAT_LIST * remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00561">rdp_cliprdr.c:561</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aca09eff5589ea5440e4ecff99879a509"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">remmina_plugin_rdp_ui_object::sync_wait_cond</a></div><div class="ttdeci">pthread_cond_t sync_wait_cond</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00194">rdp_plugin.h:194</a></div></div>
+<div class="ttc" id="structrf__context_html_a72d2a3d60347327237692947df93aea7"><div class="ttname"><a href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context::clipboard</a></div><div class="ttdeci">rfClipboard clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00308">rdp_plugin.h:308</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a4eeb2bd828f9fae2c549f3ef8a1e20c0"><div class="ttname"><a href="rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0">remmina_rdp_event_init_keymap</a></div><div class="ttdeci">static void remmina_rdp_event_init_keymap(rfContext *rfi, const gchar *strmap)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00571">rdp_event.c:571</a></div></div>
+<div class="ttc" id="structrf__context_html_a522c742a333cf0603dfa7d06a7376669"><div class="ttname"><a href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">rf_context::event_handle</a></div><div class="ttdeci">HANDLE event_handle</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00306">rdp_plugin.h:306</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_afe3b6a9e7d9319bca7021ddd29d39332"><div class="ttname"><a href="rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332">remmina_rdp_event_translate_pos</a></div><div class="ttdeci">static void remmina_rdp_event_translate_pos(RemminaProtocolWidget *gp, int ix, int iy, UINT16 *ox, UINT16 *oy)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00415">rdp_event.c:415</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_acd5f1bd57553006fdbc60d62af433e31"><div class="ttname"><a href="rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31">remmina_rdp_ui_event_destroy_cairo_surface</a></div><div class="ttdeci">static void remmina_rdp_ui_event_destroy_cairo_surface(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01124">rdp_event.c:1124</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a65eef99dc99f77be815a5da804ed94fc"><div class="ttname"><a href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a></div><div class="ttdeci">void remmina_rdp_event_uninit(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00855">rdp_event.c:855</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00113">rdp_plugin.h:113</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00108">rdp_plugin.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a66cdf13076e9a6b0c8d4e73a2e565c60"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">remmina_plugin_rdp_ui_object::sync</a></div><div class="ttdeci">gboolean sync</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00191">rdp_plugin.h:191</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ad73003335100c585e09497269b767948"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">remmina_plugin_rdp_event::monitor_layout</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@47 monitor_layout</div></div>
+<div class="ttc" id="structrf__context_html_aafce196b029d2578151275acd07ccb82"><div class="ttname"><a href="structrf__context.html#aafce196b029d2578151275acd07ccb82">rf_context::object_table</a></div><div class="ttdeci">GHashTable * object_table</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00297">rdp_plugin.h:297</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a2bd3d6559182ac1132927435ba9abc6a"><div class="ttname"><a href="rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a">remmina_rdp_event_on_clipboard</a></div><div class="ttdeci">gboolean remmina_rdp_event_on_clipboard(GtkClipboard *gtkClipboard, GdkEvent *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00708">rdp_event.c:708</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a20d5fac8955f4f813759ca5c32078b7c"><div class="ttname"><a href="rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c">remmina_rdp_event_reverse_translate_pos_reverse</a></div><div class="ttdeci">static void remmina_rdp_event_reverse_translate_pos_reverse(RemminaProtocolWidget *gp, int ix, int iy, int *ox, int *oy)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00437">rdp_event.c:437</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00155">rdp_plugin.h:155</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a6929ce2effcc3cf2be6d5ec8b19d5466"><div class="ttname"><a href="rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466">remmina_rdp_event_process_ui_event</a></div><div class="ttdeci">static void remmina_rdp_event_process_ui_event(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01145">rdp_event.c:1145</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ab6e9a485532ccf8c22005dd7a7137fd2"><div class="ttname"><a href="rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2">keypress_list_add</a></div><div class="ttdeci">static void keypress_list_add(RemminaProtocolWidget *gp, RemminaPluginRdpEvent rdp_event)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00159">rdp_event.c:159</a></div></div>
+<div class="ttc" id="structrf__context_html_a3c2ffa55ba97bc70324d61b8cc838e73"><div class="ttname"><a href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00268">rdp_plugin.h:268</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a9f6aba25030b6859fbd57bee840feeee"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">remmina_plugin_rdp_ui_object::retval</a></div><div class="ttdeci">int retval</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00233">rdp_plugin.h:233</a></div></div>
+<div class="ttc" id="structrf__context_html_a96c4689f6bc062482536038cb3b24e78"><div class="ttname"><a href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context::scale</a></div><div class="ttdeci">RemminaScaleMode scale</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00254">rdp_plugin.h:254</a></div></div>
+<div class="ttc" id="structrf__context_html_a3a32bbd599b6684a3c41db9281863362"><div class="ttname"><a href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">rf_context::instance</a></div><div class="ttdeci">freerdp * instance</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00251">rdp_plugin.h:251</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html"><div class="ttname"><a href="rdp__settings_8h.html">rdp_settings.h</a></div></div>
+<div class="ttc" id="structrf__context_html_a660a5c5ea7256ab6a6486f3e831a9174"><div class="ttname"><a href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context::dispcontext</a></div><div class="ttdeci">DispClientContext * dispcontext</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00259">rdp_plugin.h:259</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a34c7d3a1bb411e84d3b4e30fcccc9cd8"><div class="ttname"><a href="rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8">remmina_rdp_event_set_pointer_position</a></div><div class="ttdeci">static BOOL remmina_rdp_event_set_pointer_position(RemminaProtocolWidget *gp, gint x, gint y)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01034">rdp_event.c:1034</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_abd7690614b813952f560e56dd333ec0d"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">remmina_plugin_rdp_ui_object::event</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@55 event</div></div>
+<div class="ttc" id="rdp__event_8c_html_abe98674433c473136ccd28aab85a7748"><div class="ttname"><a href="rdp__event_8c.html#abe98674433c473136ccd28aab85a7748">remmina_rdp_event_connected</a></div><div class="ttdeci">static void remmina_rdp_event_connected(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00973">rdp_event.c:973</a></div></div>
+<div class="ttc" id="structrf__context_html_a335c40ccb90ae472525b203c832e7701"><div class="ttname"><a href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">rf_context::pressed_keys</a></div><div class="ttdeci">GArray * pressed_keys</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00303">rdp_plugin.h:303</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a64ce0c66bb4cb6ddaee263ce8563f497"><div class="ttname"><a href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a></div><div class="ttdeci">void remmina_rdp_event_update_scale(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00927">rdp_event.c:927</a></div></div>
+<div class="ttc" id="structrf__context_html_a76ff7add3727e4a8b82f7b4615f09169"><div class="ttname"><a href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">rf_context::scale_height</a></div><div class="ttdeci">gint scale_height</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00281">rdp_plugin.h:281</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00238">rdp_plugin.h:238</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a4da10c12b28edc28403766994d6ef29c"><div class="ttname"><a href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a></div><div class="ttdeci">void remmina_rdp_event_unfocus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01114">rdp_event.c:1114</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aba5a610f4114e7876e23d429b53f256a"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">remmina_plugin_rdp_ui_object::cursor</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@51 cursor</div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html"><div class="ttname"><a href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00107">rdp_plugin.h:107</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ad446d6471bddba97f8bfcee8c51e4580"><div class="ttname"><a href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a></div><div class="ttdeci">void remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00092">rdp_event.c:92</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a389f976845c075e225ce1f2b4dac406e"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">remmina_plugin_rdp_ui_object::pos</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@56 pos</div></div>
+<div class="ttc" id="rdp__event_8h_html"><div class="ttname"><a href="rdp__event_8h.html">rdp_event.h</a></div></div>
+<div class="ttc" id="structrf__context_html_a73a760b5eeaaf7d2a0684b1145d5d706"><div class="ttname"><a href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rf_context::rfx_context</a></div><div class="ttdeci">RFX_CONTEXT * rfx_context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00265">rdp_plugin.h:265</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00176">rdp_plugin.h:176</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a064c56982a401aff33a8c723eb157016"><div class="ttname"><a href="rdp__event_8c.html#a064c56982a401aff33a8c723eb157016">remmina_rdp_event_cursor</a></div><div class="ttdeci">static void remmina_rdp_event_cursor(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01071">rdp_event.c:1071</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">REMMINA_RDP_UI_RFX</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00158">rdp_plugin.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a997a36825f2338b8e06bcd59becef61b"><div class="ttname"><a href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">_RemminaPluginService::is_main_thread</a></div><div class="ttdeci">gboolean(* is_main_thread)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00222">plugin.h:222</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_acafb03695febd86fc16d64545d74ef9c"><div class="ttname"><a href="rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c">remmina_rdp_event_on_draw</a></div><div class="ttdeci">static gboolean remmina_rdp_event_on_draw(GtkWidget *widget, cairo_t *context, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00283">rdp_event.c:283</a></div></div>
+<div class="ttc" id="structrf__context_html_aedf6fcd090e6ba788956565ce312ab70"><div class="ttname"><a href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">rf_context::scale_width</a></div><div class="ttdeci">gint scale_width</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00280">rdp_plugin.h:280</a></div></div>
+<div class="ttc" id="structrf__context_html_a3836f3c9bc575a05d5b35dbdb3186329"><div class="ttname"><a href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">rf_context::ui_queue_mutex</a></div><div class="ttdeci">pthread_mutex_t ui_queue_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00300">rdp_plugin.h:300</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a46d939889fba73c1360f924efaa09262"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00190">rdp_plugin.h:190</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00181">rdp_plugin.h:181</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00154">rdp_plugin.h:154</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__event_8c.html">rdp_event.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__event_8h.html b/docs/rdp__event_8h.html
new file mode 100644
index 000000000..032a5443d
--- /dev/null
+++ b/docs/rdp__event_8h.html
@@ -0,0 +1,366 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_event.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__event_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_event.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__event_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afba21c241e7abe9fe72f6e5aeeaa99cc"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc">remmina_rdp_event_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:afba21c241e7abe9fe72f6e5aeeaa99cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65eef99dc99f77be815a5da804ed94fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a65eef99dc99f77be815a5da804ed94fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64ce0c66bb4cb6ddaee263ce8563f497"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a64ce0c66bb4cb6ddaee263ce8563f497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4da10c12b28edc28403766994d6ef29c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4da10c12b28edc28403766994d6ef29c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7c8d626470553c1659312697811dbfe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac7c8d626470553c1659312697811dbfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a712a9b04decd8b928d71db44b9b14fc9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint x, gint y, gint w, gint h)</td></tr>
+<tr class="separator:a712a9b04decd8b928d71db44b9b14fc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae445fd0a84c7c9414a177a69c86cf325"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ae445fd0a84c7c9414a177a69c86cf325"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5fe43c1b1b77c39f118d2581942eb81"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:ab5fe43c1b1b77c39f118d2581942eb81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaaf3de8342309cc52668f318a473350"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *ui)</td></tr>
+<tr class="separator:adaaf3de8342309cc52668f318a473350"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="afba21c241e7abe9fe72f6e5aeeaa99cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afba21c241e7abe9fe72f6e5aeeaa99cc">&#9670;&nbsp;</a></span>remmina_rdp_event_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_rdp_event_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00742">742</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ae445fd0a84c7c9414a177a69c86cf325"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae445fd0a84c7c9414a177a69c86cf325">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_async()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_queue_ui_async </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01262">1262</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ab5fe43c1b1b77c39f118d2581942eb81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5fe43c1b1b77c39f118d2581942eb81">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_sync_retint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_event_queue_ui_sync_retint </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01268">1268</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="adaaf3de8342309cc52668f318a473350"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adaaf3de8342309cc52668f318a473350">&#9670;&nbsp;</a></span>remmina_rdp_event_queue_ui_sync_retptr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* remmina_rdp_event_queue_ui_sync_retptr </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>ui</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01279">1279</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7c8d626470553c1659312697811dbfe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7c8d626470553c1659312697811dbfe">&#9670;&nbsp;</a></span>remmina_rdp_event_send_delayed_monitor_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_send_delayed_monitor_layout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00381">381</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a4da10c12b28edc28403766994d6ef29c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4da10c12b28edc28403766994d6ef29c">&#9670;&nbsp;</a></span>remmina_rdp_event_unfocus()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_unfocus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l01114">1114</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a65eef99dc99f77be815a5da804ed94fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65eef99dc99f77be815a5da804ed94fc">&#9670;&nbsp;</a></span>remmina_rdp_event_uninit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_uninit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00855">855</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a712a9b04decd8b928d71db44b9b14fc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a712a9b04decd8b928d71db44b9b14fc9">&#9670;&nbsp;</a></span>remmina_rdp_event_update_rect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_update_rect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00240">240</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a64ce0c66bb4cb6ddaee263ce8563f497"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64ce0c66bb4cb6ddaee263ce8563f497">&#9670;&nbsp;</a></span>remmina_rdp_event_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00927">927</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__event_8h.html">rdp_event.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__event_8h.js b/docs/rdp__event_8h.js
new file mode 100644
index 000000000..e4781fc60
--- /dev/null
+++ b/docs/rdp__event_8h.js
@@ -0,0 +1,12 @@
+var rdp__event_8h =
+[
+ [ "remmina_rdp_event_init", "rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc", null ],
+ [ "remmina_rdp_event_queue_ui_async", "rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325", null ],
+ [ "remmina_rdp_event_queue_ui_sync_retint", "rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81", null ],
+ [ "remmina_rdp_event_queue_ui_sync_retptr", "rdp__event_8h.html#adaaf3de8342309cc52668f318a473350", null ],
+ [ "remmina_rdp_event_send_delayed_monitor_layout", "rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe", null ],
+ [ "remmina_rdp_event_unfocus", "rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c", null ],
+ [ "remmina_rdp_event_uninit", "rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc", null ],
+ [ "remmina_rdp_event_update_rect", "rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9", null ],
+ [ "remmina_rdp_event_update_scale", "rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__event_8h_source.html b/docs/rdp__event_8h_source.html
new file mode 100644
index 000000000..0188fc8a7
--- /dev/null
+++ b/docs/rdp__event_8h_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_event.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__event_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_event.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__event_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) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc">remmina_rdp_event_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint x, gint y, gint w, gint h);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;G_END_DECLS</div><div class="ttc" id="rdp__event_8h_html_a712a9b04decd8b928d71db44b9b14fc9"><div class="ttname"><a href="rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9">remmina_rdp_event_update_rect</a></div><div class="ttdeci">void remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00240">rdp_event.c:240</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_a4da10c12b28edc28403766994d6ef29c"><div class="ttname"><a href="rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a></div><div class="ttdeci">void remmina_rdp_event_unfocus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01114">rdp_event.c:1114</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_afba21c241e7abe9fe72f6e5aeeaa99cc"><div class="ttname"><a href="rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc">remmina_rdp_event_init</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_rdp_event_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00742">rdp_event.c:742</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_a64ce0c66bb4cb6ddaee263ce8563f497"><div class="ttname"><a href="rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a></div><div class="ttdeci">void remmina_rdp_event_update_scale(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00927">rdp_event.c:927</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_ab5fe43c1b1b77c39f118d2581942eb81"><div class="ttname"><a href="rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a></div><div class="ttdeci">int remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01268">rdp_event.c:1268</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_a65eef99dc99f77be815a5da804ed94fc"><div class="ttname"><a href="rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a></div><div class="ttdeci">void remmina_rdp_event_uninit(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00855">rdp_event.c:855</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_ae445fd0a84c7c9414a177a69c86cf325"><div class="ttname"><a href="rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a></div><div class="ttdeci">void remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01262">rdp_event.c:1262</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_ac7c8d626470553c1659312697811dbfe"><div class="ttname"><a href="rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe">remmina_rdp_event_send_delayed_monitor_layout</a></div><div class="ttdeci">void remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00381">rdp_event.c:381</a></div></div>
+<div class="ttc" id="rdp__event_8h_html_adaaf3de8342309cc52668f318a473350"><div class="ttname"><a href="rdp__event_8h.html#adaaf3de8342309cc52668f318a473350">remmina_rdp_event_queue_ui_sync_retptr</a></div><div class="ttdeci">void * remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01279">rdp_event.c:1279</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__event_8h.html">rdp_event.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__file_8c.html b/docs/rdp__file_8c.html
new file mode 100644
index 000000000..90fb3c707
--- /dev/null
+++ b/docs/rdp__file_8c.html
@@ -0,0 +1,316 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_file.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__file_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_file.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__file_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8b1b44a7a6367e3bca60a6ba6fd086ce"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a> (const gchar *from_file)</td></tr>
+<tr class="separator:a8b1b44a7a6367e3bca60a6ba6fd086ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f46df2588faa5b2e9fe8590df9d1313"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">remmina_rdp_file_import_field</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a9f46df2588faa5b2e9fe8590df9d1313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03125699e25c5b81dbe148815a10d642"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">remmina_rdp_file_import_channel</a> (GIOChannel *channel)</td></tr>
+<tr class="separator:a03125699e25c5b81dbe148815a10d642"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae001941e15e94a2d6456cc02e5ef75c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a> (const gchar *from_file)</td></tr>
+<tr class="separator:aae001941e15e94a2d6456cc02e5ef75c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d00c37987b9f5b09959944d01142310"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a6d00c37987b9f5b09959944d01142310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8f66ae61f0a025b3f69cd8e08d2c229"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">remmina_rdp_file_export_channel</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, FILE *fp)</td></tr>
+<tr class="separator:af8f66ae61f0a025b3f69cd8e08d2c229"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a263e269a1f8cfb21ba78d4b57ce2c47b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *to_file)</td></tr>
+<tr class="separator:a263e269a1f8cfb21ba78d4b57ce2c47b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a263e269a1f8cfb21ba78d4b57ce2c47b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a263e269a1f8cfb21ba78d4b57ce2c47b">&#9670;&nbsp;</a></span>remmina_rdp_file_export()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_export </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>to_file</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00278">278</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="af8f66ae61f0a025b3f69cd8e08d2c229"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8f66ae61f0a025b3f69cd8e08d2c229">&#9670;&nbsp;</a></span>remmina_rdp_file_export_channel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_export_channel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">FILE *&#160;</td>
+ <td class="paramname"><em>fp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00216">216</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d00c37987b9f5b09959944d01142310"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d00c37987b9f5b09959944d01142310">&#9670;&nbsp;</a></span>remmina_rdp_file_export_test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_export_test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00207">207</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="aae001941e15e94a2d6456cc02e5ef75c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae001941e15e94a2d6456cc02e5ef75c">&#9670;&nbsp;</a></span>remmina_rdp_file_import()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_rdp_file_import </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from_file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00187">187</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a03125699e25c5b81dbe148815a10d642"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03125699e25c5b81dbe148815a10d642">&#9670;&nbsp;</a></span>remmina_rdp_file_import_channel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_rdp_file_import_channel </td>
+ <td>(</td>
+ <td class="paramtype">GIOChannel *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00119">119</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a9f46df2588faa5b2e9fe8590df9d1313"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f46df2588faa5b2e9fe8590df9d1313">&#9670;&nbsp;</a></span>remmina_rdp_file_import_field()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_file_import_field </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00062">62</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a8b1b44a7a6367e3bca60a6ba6fd086ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b1b44a7a6367e3bca60a6ba6fd086ce">&#9670;&nbsp;</a></span>remmina_rdp_file_import_test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_import_test </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from_file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00041">41</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__file_8c.html">rdp_file.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__file_8c.js b/docs/rdp__file_8c.js
new file mode 100644
index 000000000..6543a490c
--- /dev/null
+++ b/docs/rdp__file_8c.js
@@ -0,0 +1,10 @@
+var rdp__file_8c =
+[
+ [ "remmina_rdp_file_export", "rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b", null ],
+ [ "remmina_rdp_file_export_channel", "rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229", null ],
+ [ "remmina_rdp_file_export_test", "rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310", null ],
+ [ "remmina_rdp_file_import", "rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c", null ],
+ [ "remmina_rdp_file_import_channel", "rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642", null ],
+ [ "remmina_rdp_file_import_field", "rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313", null ],
+ [ "remmina_rdp_file_import_test", "rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__file_8c_source.html b/docs/rdp__file_8c_source.html
new file mode 100644
index 000000000..a2c128581
--- /dev/null
+++ b/docs/rdp__file_8c_source.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_file.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__file_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_file.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__file_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-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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__file_8h.html">rdp_file.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b"> 41</a></span>&#160;gboolean <a class="code" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a>(<span class="keyword">const</span> gchar* from_file)</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; gchar* ext;</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"> 46</span>&#160; ext = strrchr(from_file, <span class="charliteral">&#39;.&#39;</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="keywordflow">if</span> (!ext)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; ext++;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(ext, <span class="stringliteral">&quot;RDP&quot;</span>) == 0)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(ext, <span class="stringliteral">&quot;rdp&quot;</span>) == 0)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">return</span> TRUE;</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="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313"> 62</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">remmina_rdp_file_import_field</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile, <span class="keyword">const</span> gchar* key, <span class="keyword">const</span> gchar* value)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;desktopwidth&quot;</span>) == 0) {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;resolution_width&quot;</span>, value);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;desktopheight&quot;</span>) == 0) {</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;resolution_height&quot;</span>, value);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;session bpp&quot;</span>) == 0) {</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, value);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;keyboardhook&quot;</span>) == 0) {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;keyboard_grab&quot;</span>, (atoi(value) == 1));</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;full address&quot;</span>) == 0) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>, value);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;audiomode&quot;</span>) == 0) {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">switch</span> (atoi(value)) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>, <span class="stringliteral">&quot;local&quot;</span>);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">case</span> 1:</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>, <span class="stringliteral">&quot;remote&quot;</span>);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;microphone&quot;</span>) == 0) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;microphone&quot;</span>, (atoi(value) == 1));</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;redirectprinters&quot;</span>) == 0) {</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;shareprinter&quot;</span>, (atoi(value) == 1));</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;redirectsmartcard&quot;</span>) == 0) {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, (atoi(value) == 1));</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;redirectclipboard&quot;</span>) == 0) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, (atoi(value) != 1));</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;alternate shell&quot;</span>) == 0) {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>, value);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;shell working directory&quot;</span>) == 0) {</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;execpath&quot;</span>, value);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;loadbalanceinfo&quot;</span>) == 0) {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;loadbalanceinfo&quot;</span>, value);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;gatewayhostname&quot;</span>) == 0) {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gateway_server&quot;</span>, value);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;gatewayusagemethod&quot;</span>) == 0) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;gateway_usage&quot;</span>, (atoi(value) == TSC_PROXY_MODE_DETECT));</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;gatewayaccesstoken&quot;</span>) == 0) {</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gatewayaccesstoken&quot;</span>, value);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;authentication level&quot;</span>) == 0) {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;authentication level&quot;</span>, atoi(value));</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">/* tsclient fields, import only */</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;client hostname&quot;</span>) == 0) {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;clientname&quot;</span>, value);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;domain&quot;</span>) == 0) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>, value);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;username&quot;</span>) == 0) {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, value);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(key, <span class="stringliteral">&quot;password&quot;</span>) == 0) {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, value);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;}</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642"> 119</a></span>&#160;<span class="keyword">static</span> <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* <a class="code" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">remmina_rdp_file_import_channel</a>(GIOChannel* channel)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;{</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gchar* p;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">const</span> gchar* enc;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gchar* line = NULL;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; GError* error = NULL;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; gsize bytes_read = 0;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; guchar magic[2] = { 0 };</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; <span class="keywordflow">if</span> (g_io_channel_set_encoding(channel, NULL, &amp;error) != G_IO_STATUS_NORMAL) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; g_print(<span class="stringliteral">&quot;g_io_channel_set_encoding: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</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; <span class="comment">/* Try to detect the UTF-16 encoding */</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">if</span> (g_io_channel_read_chars(channel, (gchar*)magic, 2, &amp;bytes_read, &amp;error) != G_IO_STATUS_NORMAL) {</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; g_print(<span class="stringliteral">&quot;g_io_channel_read_chars: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</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; <span class="keywordflow">if</span> (magic[0] == 0xFF &amp;&amp; magic[1] == 0xFE) {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; enc = <span class="stringliteral">&quot;UTF-16LE&quot;</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (magic[0] == 0xFE &amp;&amp; magic[1] == 0xFF) {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; enc = <span class="stringliteral">&quot;UTF-16BE&quot;</span>;</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; enc = <span class="stringliteral">&quot;UTF-8&quot;</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (g_io_channel_seek_position(channel, 0, G_SEEK_SET, &amp;error) != G_IO_STATUS_NORMAL) {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; g_print(<span class="stringliteral">&quot;g_io_channel_seek: failed\n&quot;</span>);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }</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; <span class="keywordflow">if</span> (g_io_channel_set_encoding(channel, enc, &amp;error) != G_IO_STATUS_NORMAL) {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; g_print(<span class="stringliteral">&quot;g_io_channel_set_encoding: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; remminafile = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">file_new</a>();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">while</span> (g_io_channel_read_line(channel, &amp;line, NULL, &amp;bytes_read, &amp;error) == G_IO_STATUS_NORMAL) {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (line == NULL)</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">break</span>;</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"> 164</span>&#160; line[bytes_read] = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; p = strchr(line, <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (p) {</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; *p++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; p = strchr(p, <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (p) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; p++;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">remmina_rdp_file_import_field</a>(remminafile, line, p);</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="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_free(line);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>,</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>, <span class="stringliteral">&quot;RDP&quot;</span>);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> remminafile;</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;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c"> 187</a></span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* <a class="code" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a>(<span class="keyword">const</span> gchar* from_file)</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; GIOChannel* channel;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; GError* error = NULL;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; channel = g_io_channel_new_file(from_file, <span class="stringliteral">&quot;r&quot;</span>, &amp;error);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">if</span> (channel == NULL) {</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; g_print(<span class="stringliteral">&quot;Failed to import %s: %s\n&quot;</span>, from_file, error-&gt;message);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">return</span> NULL;</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; remminafile = <a class="code" href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">remmina_rdp_file_import_channel</a>(channel);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; g_io_channel_shutdown(channel, TRUE, &amp;error);</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">return</span> 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;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310"> 207</a></span>&#160;gboolean <a class="code" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>), <span class="stringliteral">&quot;RDP&quot;</span>) == 0)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;}</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229"> 216</a></span>&#160;gboolean <a class="code" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">remmina_rdp_file_export_channel</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile, FILE* fp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keyword">const</span> gchar* cs;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordtype">int</span> w, h;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; fprintf(fp, <span class="stringliteral">&quot;screen mode id:i:2\r\n&quot;</span>);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; w = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resolution_width&quot;</span>, -1);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; h = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resolution_height&quot;</span>, -1);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">if</span> ( w &gt; 0 &amp;&amp; h &gt; 0 ) {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; fprintf(fp, <span class="stringliteral">&quot;desktopwidth:i:%d\r\n&quot;</span>, w);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; fprintf(fp, <span class="stringliteral">&quot;desktopheight:i:%d\r\n&quot;</span>, h);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</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; fprintf(fp, <span class="stringliteral">&quot;session bpp:i:%i\r\n&quot;</span>, <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 8));</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="comment">//fprintf(fp, &quot;winposstr:s:0,1,123,34,931,661\r\n&quot;);</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; fprintf(fp, <span class="stringliteral">&quot;compression:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; fprintf(fp, <span class="stringliteral">&quot;keyboardhook:i:2\r\n&quot;</span>);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; fprintf(fp, <span class="stringliteral">&quot;displayconnectionbar:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; fprintf(fp, <span class="stringliteral">&quot;disable wallpaper:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; fprintf(fp, <span class="stringliteral">&quot;disable full window drag:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; fprintf(fp, <span class="stringliteral">&quot;allow desktop composition:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; fprintf(fp, <span class="stringliteral">&quot;allow font smoothing:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; fprintf(fp, <span class="stringliteral">&quot;disable menu anims:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; fprintf(fp, <span class="stringliteral">&quot;disable themes:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; fprintf(fp, <span class="stringliteral">&quot;disable cursor setting:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; fprintf(fp, <span class="stringliteral">&quot;bitmapcachepersistenable:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; cs = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; fprintf(fp, <span class="stringliteral">&quot;full address:s:%s\r\n&quot;</span>, cs ? cs : <span class="stringliteral">&quot;&quot;</span> );</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>), <span class="stringliteral">&quot;local&quot;</span>) == 0)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; fprintf(fp, <span class="stringliteral">&quot;audiomode:i:0\r\n&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> (g_strcmp0(<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>), <span class="stringliteral">&quot;remote&quot;</span>) == 0)</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; fprintf(fp, <span class="stringliteral">&quot;audiomode:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; fprintf(fp, <span class="stringliteral">&quot;audiomode:i:2\r\n&quot;</span>);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; fprintf(fp, <span class="stringliteral">&quot;microphone:i:%i\r\n&quot;</span>, <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;microphone&quot;</span>, FALSE) ? 1 : 0);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectprinters:i:%i\r\n&quot;</span>, <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;shareprinter&quot;</span>, FALSE) ? 1 : 0);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectsmartcard:i:%i\r\n&quot;</span>, <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, FALSE) ? 1 : 0);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectcomports:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectsmartcards:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectclipboard:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; fprintf(fp, <span class="stringliteral">&quot;redirectposdevices:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; fprintf(fp, <span class="stringliteral">&quot;autoreconnection enabled:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; fprintf(fp, <span class="stringliteral">&quot;authentication level:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; fprintf(fp, <span class="stringliteral">&quot;prompt for credentials:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; fprintf(fp, <span class="stringliteral">&quot;negotiate security layer:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; fprintf(fp, <span class="stringliteral">&quot;remoteapplicationmode:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; cs = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; fprintf(fp, <span class="stringliteral">&quot;alternate shell:s:%s\r\n&quot;</span>, cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; cs = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;execpath&quot;</span>);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; fprintf(fp, <span class="stringliteral">&quot;shell working directory:s:%s\r\n&quot;</span>, cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; fprintf(fp, <span class="stringliteral">&quot;gatewayhostname:s:\r\n&quot;</span>);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; fprintf(fp, <span class="stringliteral">&quot;gatewayusagemethod:i:4\r\n&quot;</span>);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; fprintf(fp, <span class="stringliteral">&quot;gatewaycredentialssource:i:4\r\n&quot;</span>);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; fprintf(fp, <span class="stringliteral">&quot;gatewayprofileusagemethod:i:0\r\n&quot;</span>);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; fprintf(fp, <span class="stringliteral">&quot;precommand:s:\r\n&quot;</span>);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; fprintf(fp, <span class="stringliteral">&quot;promptcredentialonce:i:1\r\n&quot;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; fprintf(fp, <span class="stringliteral">&quot;drivestoredirect:s:\r\n&quot;</span>);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;}</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b"> 278</a></span>&#160;gboolean <a class="code" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile, <span class="keyword">const</span> gchar* to_file)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; FILE* fp;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; gchar* p;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; gboolean ret;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; p = strrchr(to_file, <span class="charliteral">&#39;.&#39;</span>);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (p &amp;&amp; (g_strcmp0(p + 1, <span class="stringliteral">&quot;rdp&quot;</span>) == 0 || g_strcmp0(p + 1, <span class="stringliteral">&quot;RDP&quot;</span>) == 0)) {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; p = g_strdup(to_file);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; p = g_strdup_printf(<span class="stringliteral">&quot;%s.rdp&quot;</span>, to_file);</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;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; fp = g_fopen(p, <span class="stringliteral">&quot;w+&quot;</span>);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (fp == NULL) {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; g_print(<span class="stringliteral">&quot;Failed to export %s\n&quot;</span>, p);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; g_free(p);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; g_free(p);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; ret = <a class="code" href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">remmina_rdp_file_export_channel</a>(remminafile, fp);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; fclose(fp);</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="keywordflow">return</span> ret;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;}</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="ttc" id="rdp__file_8c_html_af8f66ae61f0a025b3f69cd8e08d2c229"><div class="ttname"><a href="rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229">remmina_rdp_file_export_channel</a></div><div class="ttdeci">gboolean remmina_rdp_file_export_channel(RemminaFile *remminafile, FILE *fp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00216">rdp_file.c:216</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4da50fa364ddf1fcf22def341f61a7cb"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">_RemminaPluginService::file_set_int</a></div><div class="ttdeci">void(* file_set_int)(RemminaFile *remminafile, const gchar *setting, gint value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00202">plugin.h:202</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a03125699e25c5b81dbe148815a10d642"><div class="ttname"><a href="rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642">remmina_rdp_file_import_channel</a></div><div class="ttdeci">static RemminaFile * remmina_rdp_file_import_channel(GIOChannel *channel)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00119">rdp_file.c:119</a></div></div>
+<div class="ttc" id="rdp__file_8h_html"><div class="ttname"><a href="rdp__file_8h.html">rdp_file.h</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a263e269a1f8cfb21ba78d4b57ce2c47b"><div class="ttname"><a href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a></div><div class="ttdeci">gboolean remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00278">rdp_file.c:278</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a6d00c37987b9f5b09959944d01142310"><div class="ttname"><a href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_export_test(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00207">rdp_file.c:207</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_aae001941e15e94a2d6456cc02e5ef75c"><div class="ttname"><a href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a></div><div class="ttdeci">RemminaFile * remmina_rdp_file_import(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00187">rdp_file.c:187</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a9f46df2588faa5b2e9fe8590df9d1313"><div class="ttname"><a href="rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313">remmina_rdp_file_import_field</a></div><div class="ttdeci">static void remmina_rdp_file_import_field(RemminaFile *remminafile, const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00062">rdp_file.c:62</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a8b1b44a7a6367e3bca60a6ba6fd086ce"><div class="ttname"><a href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_import_test(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00041">rdp_file.c:41</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad0c0e810cad311a80cb73746bc299895"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">_RemminaPluginService::file_new</a></div><div class="ttdeci">RemminaFile *(* file_new)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00197">plugin.h:197</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__file_8c.html">rdp_file.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__file_8h.html b/docs/rdp__file_8h.html
new file mode 100644
index 000000000..ef1af53e7
--- /dev/null
+++ b/docs/rdp__file_8h.html
@@ -0,0 +1,208 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_file.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__file_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_file.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__file_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab039802c1223cb138b2785689baf8b1b"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b">remmina_rdp_file_import_test</a> (const gchar *from_file)</td></tr>
+<tr class="separator:ab039802c1223cb138b2785689baf8b1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae001941e15e94a2d6456cc02e5ef75c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a> (const gchar *from_file)</td></tr>
+<tr class="separator:aae001941e15e94a2d6456cc02e5ef75c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d00c37987b9f5b09959944d01142310"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a6d00c37987b9f5b09959944d01142310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a263e269a1f8cfb21ba78d4b57ce2c47b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *to_file)</td></tr>
+<tr class="separator:a263e269a1f8cfb21ba78d4b57ce2c47b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a263e269a1f8cfb21ba78d4b57ce2c47b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a263e269a1f8cfb21ba78d4b57ce2c47b">&#9670;&nbsp;</a></span>remmina_rdp_file_export()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_export </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>to_file</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00278">278</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d00c37987b9f5b09959944d01142310"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d00c37987b9f5b09959944d01142310">&#9670;&nbsp;</a></span>remmina_rdp_file_export_test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_rdp_file_export_test </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00207">207</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="aae001941e15e94a2d6456cc02e5ef75c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae001941e15e94a2d6456cc02e5ef75c">&#9670;&nbsp;</a></span>remmina_rdp_file_import()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_rdp_file_import </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from_file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00187">187</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ab039802c1223cb138b2785689baf8b1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab039802c1223cb138b2785689baf8b1b">&#9670;&nbsp;</a></span>remmina_rdp_file_import_test()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gboolean remmina_rdp_file_import_test </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from_file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__file_8c_source.html#l00041">41</a> of file <a class="el" href="rdp__file_8c_source.html">rdp_file.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__file_8h.html">rdp_file.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__file_8h.js b/docs/rdp__file_8h.js
new file mode 100644
index 000000000..018ab72ba
--- /dev/null
+++ b/docs/rdp__file_8h.js
@@ -0,0 +1,7 @@
+var rdp__file_8h =
+[
+ [ "remmina_rdp_file_export", "rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b", null ],
+ [ "remmina_rdp_file_export_test", "rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310", null ],
+ [ "remmina_rdp_file_import", "rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c", null ],
+ [ "remmina_rdp_file_import_test", "rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__file_8h_source.html b/docs/rdp__file_8h_source.html
new file mode 100644
index 000000000..47794fbf5
--- /dev/null
+++ b/docs/rdp__file_8h_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_file.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__file_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_file.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__file_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) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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;gboolean <a class="code" href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b">remmina_rdp_file_import_test</a>(<span class="keyword">const</span> gchar *from_file);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a>(<span class="keyword">const</span> gchar *from_file);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;gboolean <a class="code" href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;gboolean <a class="code" href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *to_file);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;G_END_DECLS</div><div class="ttc" id="rdp__file_8h_html_aae001941e15e94a2d6456cc02e5ef75c"><div class="ttname"><a href="rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a></div><div class="ttdeci">RemminaFile * remmina_rdp_file_import(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00187">rdp_file.c:187</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="rdp__file_8h_html_ab039802c1223cb138b2785689baf8b1b"><div class="ttname"><a href="rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b">remmina_rdp_file_import_test</a></div><div class="ttdeci">G_BEGIN_DECLS gboolean remmina_rdp_file_import_test(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00041">rdp_file.c:41</a></div></div>
+<div class="ttc" id="rdp__file_8h_html_a263e269a1f8cfb21ba78d4b57ce2c47b"><div class="ttname"><a href="rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a></div><div class="ttdeci">gboolean remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00278">rdp_file.c:278</a></div></div>
+<div class="ttc" id="rdp__file_8h_html_a6d00c37987b9f5b09959944d01142310"><div class="ttname"><a href="rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_export_test(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00207">rdp_file.c:207</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__file_8h.html">rdp_file.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__graphics_8c.html b/docs/rdp__graphics_8c.html
new file mode 100644
index 000000000..e3ce01820
--- /dev/null
+++ b/docs/rdp__graphics_8c.html
@@ -0,0 +1,810 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_graphics.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__graphics_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_graphics.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__graphics_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac987bcf2b68b2a9fdf0c66ce27b25633"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rf_Bitmap_New</a> (rdpContext *context, rdpBitmap *bitmap)</td></tr>
+<tr class="separator:ac987bcf2b68b2a9fdf0c66ce27b25633"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad508926c64816572be8a97eee5cac60d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rf_Bitmap_Free</a> (rdpContext *context, rdpBitmap *bitmap)</td></tr>
+<tr class="separator:ad508926c64816572be8a97eee5cac60d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93a58a3f560a61e7bf76e58bec20194e"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rf_Bitmap_Paint</a> (rdpContext *context, rdpBitmap *bitmap)</td></tr>
+<tr class="separator:a93a58a3f560a61e7bf76e58bec20194e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29763c1856c87650bbfc4b9ecd177718"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rf_Bitmap_Decompress</a> (rdpContext *context, rdpBitmap *bitmap, const BYTE *data, UINT32 width, UINT32 height, UINT32 bpp, UINT32 length, BOOL compressed, UINT32 codec_id)</td></tr>
+<tr class="separator:a29763c1856c87650bbfc4b9ecd177718"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6d895caa2a7569082dacd7ef0a48d28"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rf_Bitmap_SetSurface</a> (rdpContext *context, rdpBitmap *bitmap, BOOL primary)</td></tr>
+<tr class="separator:af6d895caa2a7569082dacd7ef0a48d28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fb6fb540ec75254cb763ae974fb5129"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rf_Pointer_New</a> (rdpContext *context, rdpPointer *pointer)</td></tr>
+<tr class="separator:a9fb6fb540ec75254cb763ae974fb5129"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe709335471a30a29f9c97587d43088f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rf_Pointer_Free</a> (rdpContext *context, rdpPointer *pointer)</td></tr>
+<tr class="separator:afe709335471a30a29f9c97587d43088f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee54ac34465e6b70a5a7bbd799e9b747"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rf_Pointer_Set</a> (rdpContext *context, const rdpPointer *pointer)</td></tr>
+<tr class="separator:aee54ac34465e6b70a5a7bbd799e9b747"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb108afe0c6da4dfa5a485137921437a"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rf_Pointer_SetNull</a> (rdpContext *context)</td></tr>
+<tr class="separator:aeb108afe0c6da4dfa5a485137921437a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2abd9da136bc6f446c836a3d53ab8b6"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rf_Pointer_SetDefault</a> (rdpContext *context)</td></tr>
+<tr class="separator:ac2abd9da136bc6f446c836a3d53ab8b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c2407f4e8db3ae44123066c373b705c"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rf_Pointer_SetPosition</a> (rdpContext *context, UINT32 x, UINT32 y)</td></tr>
+<tr class="separator:a4c2407f4e8db3ae44123066c373b705c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af84263a9a942535283edbc8c541336ce"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rf_Glyph_New</a> (rdpContext *context, const rdpGlyph *glyph)</td></tr>
+<tr class="separator:af84263a9a942535283edbc8c541336ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8dda0e3bc313c165f38efd3954f69af9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rf_Glyph_Free</a> (rdpContext *context, rdpGlyph *glyph)</td></tr>
+<tr class="separator:a8dda0e3bc313c165f38efd3954f69af9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb45441fb6688ed52556c1cb803033e3"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rf_Glyph_Draw</a> (rdpContext *context, const rdpGlyph *glyph, INT32 x, INT32 y, INT32 w, INT32 h, INT32 sx, INT32 sy, BOOL fOpRedundant)</td></tr>
+<tr class="separator:aeb45441fb6688ed52556c1cb803033e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3421f83355f450de66f14e997d770a9e"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rf_Glyph_BeginDraw</a> (rdpContext *context, INT32 x, INT32 y, INT32 width, INT32 height, UINT32 bgcolor, UINT32 fgcolor, BOOL fOpRedundant)</td></tr>
+<tr class="separator:a3421f83355f450de66f14e997d770a9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e9fd3bd2eeb6fe398ce64b72c12ba2c"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rf_Glyph_EndDraw</a> (rdpContext *context, INT32 x, INT32 y, INT32 width, INT32 height, UINT32 bgcolor, UINT32 fgcolor)</td></tr>
+<tr class="separator:a7e9fd3bd2eeb6fe398ce64b72c12ba2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95732c40c35499f3440715b6526279b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a> (rdpGraphics *graphics)</td></tr>
+<tr class="separator:a95732c40c35499f3440715b6526279b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a29763c1856c87650bbfc4b9ecd177718"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29763c1856c87650bbfc4b9ecd177718">&#9670;&nbsp;</a></span>rf_Bitmap_Decompress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Bitmap_Decompress </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpBitmap *&#160;</td>
+ <td class="paramname"><em>bitmap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const BYTE *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>bpp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BOOL&#160;</td>
+ <td class="paramname"><em>compressed</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>codec_id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00134">134</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="ad508926c64816572be8a97eee5cac60d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad508926c64816572be8a97eee5cac60d">&#9670;&nbsp;</a></span>rf_Bitmap_Free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_Bitmap_Free </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpBitmap *&#160;</td>
+ <td class="paramname"><em>bitmap</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00090">90</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="ac987bcf2b68b2a9fdf0c66ce27b25633"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac987bcf2b68b2a9fdf0c66ce27b25633">&#9670;&nbsp;</a></span>rf_Bitmap_New()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Bitmap_New </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpBitmap *&#160;</td>
+ <td class="paramname"><em>bitmap</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00052">52</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a93a58a3f560a61e7bf76e58bec20194e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93a58a3f560a61e7bf76e58bec20194e">&#9670;&nbsp;</a></span>rf_Bitmap_Paint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Bitmap_Paint </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpBitmap *&#160;</td>
+ <td class="paramname"><em>bitmap</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00103">103</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="af6d895caa2a7569082dacd7ef0a48d28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af6d895caa2a7569082dacd7ef0a48d28">&#9670;&nbsp;</a></span>rf_Bitmap_SetSurface()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Bitmap_SetSurface </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpBitmap *&#160;</td>
+ <td class="paramname"><em>bitmap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BOOL&#160;</td>
+ <td class="paramname"><em>primary</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00169">169</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a3421f83355f450de66f14e997d770a9e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3421f83355f450de66f14e997d770a9e">&#9670;&nbsp;</a></span>rf_Glyph_BeginDraw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_Glyph_BeginDraw </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>bgcolor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>fgcolor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BOOL&#160;</td>
+ <td class="paramname"><em>fOpRedundant</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00335">335</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="aeb45441fb6688ed52556c1cb803033e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb45441fb6688ed52556c1cb803033e3">&#9670;&nbsp;</a></span>rf_Glyph_Draw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_Glyph_Draw </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const rdpGlyph *&#160;</td>
+ <td class="paramname"><em>glyph</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>sx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>sy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BOOL&#160;</td>
+ <td class="paramname"><em>fOpRedundant</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00316">316</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a7e9fd3bd2eeb6fe398ce64b72c12ba2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">&#9670;&nbsp;</a></span>rf_Glyph_EndDraw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_Glyph_EndDraw </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">INT32&#160;</td>
+ <td class="paramname"><em>height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>bgcolor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>fgcolor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00363">363</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a8dda0e3bc313c165f38efd3954f69af9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8dda0e3bc313c165f38efd3954f69af9">&#9670;&nbsp;</a></span>rf_Glyph_Free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_Glyph_Free </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpGlyph *&#160;</td>
+ <td class="paramname"><em>glyph</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00305">305</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="af84263a9a942535283edbc8c541336ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af84263a9a942535283edbc8c541336ce">&#9670;&nbsp;</a></span>rf_Glyph_New()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Glyph_New </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const rdpGlyph *&#160;</td>
+ <td class="paramname"><em>glyph</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00276">276</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="afe709335471a30a29f9c97587d43088f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe709335471a30a29f9c97587d43088f">&#9670;&nbsp;</a></span>rf_Pointer_Free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_Pointer_Free </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpPointer *&#160;</td>
+ <td class="paramname"><em>pointer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00202">202</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a9fb6fb540ec75254cb763ae974fb5129"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fb6fb540ec75254cb763ae974fb5129">&#9670;&nbsp;</a></span>rf_Pointer_New()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Pointer_New </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpPointer *&#160;</td>
+ <td class="paramname"><em>pointer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00185">185</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="aee54ac34465e6b70a5a7bbd799e9b747"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee54ac34465e6b70a5a7bbd799e9b747">&#9670;&nbsp;</a></span>rf_Pointer_Set()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Pointer_Set </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const rdpPointer *&#160;</td>
+ <td class="paramname"><em>pointer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00219">219</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="ac2abd9da136bc6f446c836a3d53ab8b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2abd9da136bc6f446c836a3d53ab8b6">&#9670;&nbsp;</a></span>rf_Pointer_SetDefault()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Pointer_SetDefault </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00247">247</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="aeb108afe0c6da4dfa5a485137921437a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb108afe0c6da4dfa5a485137921437a">&#9670;&nbsp;</a></span>rf_Pointer_SetNull()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Pointer_SetNull </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00234">234</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a4c2407f4e8db3ae44123066c373b705c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c2407f4e8db3ae44123066c373b705c">&#9670;&nbsp;</a></span>rf_Pointer_SetPosition()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_Pointer_SetPosition </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>y</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00260">260</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+<a id="a95732c40c35499f3440715b6526279b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95732c40c35499f3440715b6526279b1">&#9670;&nbsp;</a></span>rf_register_graphics()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_register_graphics </td>
+ <td>(</td>
+ <td class="paramtype">rdpGraphics *&#160;</td>
+ <td class="paramname"><em>graphics</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00381">381</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__graphics_8c.html">rdp_graphics.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__graphics_8c.js b/docs/rdp__graphics_8c.js
new file mode 100644
index 000000000..331b70fa5
--- /dev/null
+++ b/docs/rdp__graphics_8c.js
@@ -0,0 +1,20 @@
+var rdp__graphics_8c =
+[
+ [ "rf_Bitmap_Decompress", "rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718", null ],
+ [ "rf_Bitmap_Free", "rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d", null ],
+ [ "rf_Bitmap_New", "rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633", null ],
+ [ "rf_Bitmap_Paint", "rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e", null ],
+ [ "rf_Bitmap_SetSurface", "rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28", null ],
+ [ "rf_Glyph_BeginDraw", "rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e", null ],
+ [ "rf_Glyph_Draw", "rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3", null ],
+ [ "rf_Glyph_EndDraw", "rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c", null ],
+ [ "rf_Glyph_Free", "rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9", null ],
+ [ "rf_Glyph_New", "rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce", null ],
+ [ "rf_Pointer_Free", "rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f", null ],
+ [ "rf_Pointer_New", "rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129", null ],
+ [ "rf_Pointer_Set", "rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747", null ],
+ [ "rf_Pointer_SetDefault", "rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6", null ],
+ [ "rf_Pointer_SetNull", "rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a", null ],
+ [ "rf_Pointer_SetPosition", "rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c", null ],
+ [ "rf_register_graphics", "rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__graphics_8c_source.html b/docs/rdp__graphics_8c_source.html
new file mode 100644
index 000000000..70bb38610
--- /dev/null
+++ b/docs/rdp__graphics_8c_source.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_graphics.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__graphics_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_graphics.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__graphics_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 Jay Sorg</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2011 Marc-Andre Moreau &lt;marcandre.moreau@gmail.com&gt;</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</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="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</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="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> * files in the program, then also delete it here.</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;<span class="comment"> */</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__event_8h.html">rdp_event.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="rdp__graphics_8h.html">rdp_graphics.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;freerdp/codec/color.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;freerdp/codec/bitmap.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;winpr/memory.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">//#define RF_BITMAP</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">//#define RF_GLYPH</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* Bitmap Class */</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633"> 52</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rf_Bitmap_New</a>(rdpContext* context, rdpBitmap* bitmap)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#ifdef RF_BITMAP</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; UINT8* data;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; Pixmap pixmap;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; XImage* image;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; XSetFunction(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, GXcopy);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; pixmap = XCreatePixmap(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;drawable, bitmap-&gt;width, bitmap-&gt;height, rfi-&gt;depth);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">if</span> (bitmap-&gt;data != NULL) {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; data = freerdp_image_convert(bitmap-&gt;data, NULL,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; bitmap-&gt;width, bitmap-&gt;height, rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>, rfi-&gt;<a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a>, rfi-&gt;clrconv);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (bitmap-&gt;ephemeral != TRUE) {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; image = XCreateImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;<a class="code" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">visual</a>, rfi-&gt;depth,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; ZPixmap, 0, (<span class="keywordtype">char</span>*)data, bitmap-&gt;width, bitmap-&gt;height, rfi-&gt;<a class="code" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">scanline_pad</a>, 0);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; XPutImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, pixmap, rfi-&gt;gc, image, 0, 0, 0, 0, bitmap-&gt;width, bitmap-&gt;height);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; XFree(image);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (data != bitmap-&gt;data) &amp;&amp; (data != NULL)</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; free(data);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (data != bitmap-&gt;data) &amp;&amp; (data != NULL)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; free(bitmap-&gt;data);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; bitmap-&gt;data = data;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</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; ((<a class="code" href="structrf__bitmap.html">rfBitmap</a>*)bitmap)-&gt;pixmap = pixmap;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> TRUE;</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"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d"> 90</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rf_Bitmap_Free</a>(rdpContext* context, rdpBitmap* bitmap)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#ifdef RF_BITMAP</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; printf(<span class="stringliteral">&quot;rf_Bitmap_Free\n&quot;</span>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="structrf__bitmap.html">rfBitmap</a>*)bitmap)-&gt;pixmap != 0)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; XFreePixmap(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, ((<a class="code" href="structrf__bitmap.html">rfBitmap</a>*)bitmap)-&gt;pixmap);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e"> 103</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rf_Bitmap_Paint</a>(rdpContext* context, rdpBitmap* bitmap)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#ifdef RF_BITMAP</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; XImage* image;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">int</span> width, height;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; printf(<span class="stringliteral">&quot;rf_Bitmap_Paint\n&quot;</span>);</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; width = bitmap-&gt;right - bitmap-&gt;left + 1;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; height = bitmap-&gt;bottom - bitmap-&gt;top + 1;</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; XSetFunction(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, GXcopy);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; image = XCreateImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;<a class="code" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">visual</a>, rfi-&gt;depth,</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; ZPixmap, 0, (<span class="keywordtype">char</span>*)bitmap-&gt;data, bitmap-&gt;width, bitmap-&gt;height, rfi-&gt;<a class="code" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">scanline_pad</a>, 0);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; XPutImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;primary, rfi-&gt;gc,</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; image, 0, 0, bitmap-&gt;left, bitmap-&gt;top, width, height);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; XFree(image);</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"> 126</span>&#160; <span class="comment">//XCopyArea(rfi-&gt;display, rfi-&gt;primary, rfi-&gt;drawable, rfi-&gt;gc,</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// bitmap-&gt;left, bitmap-&gt;top, width, height, bitmap-&gt;left, bitmap-&gt;top);</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="comment">//gdi_InvalidateRegion(rfi-&gt;hdc, bitmap-&gt;left, bitmap-&gt;top, width, height);</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718"> 134</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rf_Bitmap_Decompress</a>(rdpContext* context, rdpBitmap* bitmap,</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> BYTE* data, UINT32 width, UINT32 height, UINT32 bpp, UINT32 length, BOOL compressed, UINT32 codec_id)</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="preprocessor">#ifdef RF_BITMAP</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; UINT16 size;</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; printf(<span class="stringliteral">&quot;rf_Bitmap_Decompress\n&quot;</span>);</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; size = width * height * (bpp + 7) / 8;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span> (bitmap-&gt;data == NULL)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; bitmap-&gt;data = (UINT8*)xmalloc(size);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; bitmap-&gt;data = (UINT8*)xrealloc(bitmap-&gt;data, size);</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"> 150</span>&#160; <span class="keywordflow">if</span> (compressed) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; BOOL status;</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; status = bitmap_decompress(data, bitmap-&gt;data, width, height, length, bpp, bpp);</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"> 155</span>&#160; <span class="keywordflow">if</span> (status != TRUE) {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; printf(<span class="stringliteral">&quot;Bitmap Decompression Failed\n&quot;</span>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; freerdp_image_flip(data, bitmap-&gt;data, width, height, bpp);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</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; bitmap-&gt;compressed = FALSE;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; bitmap-&gt;length = size;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; bitmap-&gt;bpp = bpp;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28"> 169</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rf_Bitmap_SetSurface</a>(rdpContext* context, rdpBitmap* bitmap, BOOL primary)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;{</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="preprocessor">#ifdef RF_BITMAP</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; <span class="keywordflow">if</span> (primary)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; rfi-&gt;drawing = rfi-&gt;primary;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; rfi-&gt;drawing = ((<a class="code" href="structrf__bitmap.html">rfBitmap</a>*)bitmap)-&gt;pixmap;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> TRUE;</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="comment">/* Pointer Class */</span></div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129"> 185</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rf_Pointer_New</a>(rdpContext* context, rdpPointer* pointer)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span> ((pointer-&gt;andMaskData != 0) &amp;&amp; (pointer-&gt;xorMaskData != 0)) {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.context = context;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer = (<a class="code" href="structrf__pointer.html">rfPointer</a>*)pointer;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui) ? TRUE : FALSE;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> FALSE;</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"><a class="line" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f"> 202</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rf_Pointer_Free</a>(rdpContext* context, rdpPointer* pointer)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; <span class="keywordflow">if</span> (G_IS_OBJECT(((<a class="code" href="structrf__pointer.html">rfPointer</a>*)pointer)-&gt;cursor))</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"> 210</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.context = context;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer = (<a class="code" href="structrf__pointer.html">rfPointer</a>*)pointer;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</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"><a class="line" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747"> 219</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rf_Pointer_Set</a>(rdpContext* context, <span class="keyword">const</span> rdpPointer* pointer)</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"> 221</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.pointer = (<a class="code" href="structrf__pointer.html">rfPointer</a>*)pointer;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</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; <span class="keywordflow">return</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui) ? TRUE : FALSE;</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;}</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"><a class="line" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a"> 234</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rf_Pointer_SetNull</a>(rdpContext* context)</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;{</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a>;</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; <span class="keywordflow">return</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui) ? TRUE : FALSE;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;}</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6"> 247</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rf_Pointer_SetDefault</a>(rdpContext* context)</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;{</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a>;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui) ? TRUE : FALSE;</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"><a class="line" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c"> 260</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rf_Pointer_SetPosition</a>(rdpContext* context, UINT32 x, UINT32 y)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>* ui;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a>.type = <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a>;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">pos</a>.x = x;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">pos</a>.y = y;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui) ? TRUE : FALSE;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;}</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;<span class="comment">/* Glyph Class */</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce"> 276</a></span>&#160;BOOL <a class="code" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rf_Glyph_New</a>(rdpContext* context, <span class="keyword">const</span> rdpGlyph* glyph)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;{</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="preprocessor">#ifdef RF_GLYPH</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordtype">int</span> scanline;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; XImage* image;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="structrf__glyph.html">rfGlyph</a>* <a class="code" href="structrf__glyph.html">rf_glyph</a>;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; rf_glyph = (<a class="code" href="structrf__glyph.html">rfGlyph</a>*)glyph;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; scanline = (glyph-&gt;cx + 7) / 8;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; rf_glyph-&gt;<a class="code" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">pixmap</a> = XCreatePixmap(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;drawing, glyph-&gt;cx, glyph-&gt;cy, 1);</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; image = XCreateImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;<a class="code" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">visual</a>, 1,</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; ZPixmap, 0, (<span class="keywordtype">char</span>*)glyph-&gt;aj, glyph-&gt;cx, glyph-&gt;cy, 8, scanline);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; image-&gt;byte_order = MSBFirst;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; image-&gt;bitmap_bit_order = MSBFirst;</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; XInitImage(image);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; XPutImage(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rf_glyph-&gt;<a class="code" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">pixmap</a>, rfi-&gt;gc_mono, image, 0, 0, 0, 0, glyph-&gt;cx, glyph-&gt;cy);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; XFree(image);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> TRUE;</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"><a class="line" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9"> 305</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rf_Glyph_Free</a>(rdpContext* context, rdpGlyph* glyph)</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;{</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="preprocessor">#ifdef RF_GLYPH</span></div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">if</span> (((<a class="code" href="structrf__glyph.html">rfGlyph</a>*)glyph)-&gt;pixmap != 0)</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; XFreePixmap(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, ((<a class="code" href="structrf__glyph.html">rfGlyph</a>*)glyph)-&gt;pixmap);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;}</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3"> 316</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rf_Glyph_Draw</a>(rdpContext* context, <span class="keyword">const</span> rdpGlyph* glyph, INT32 x,</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; INT32 y, INT32 w, INT32 h, INT32 sx, INT32 sy,</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; BOOL fOpRedundant)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="preprocessor">#ifdef RF_GLYPH</span></div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="structrf__glyph.html">rfGlyph</a>* <a class="code" href="structrf__glyph.html">rf_glyph</a>;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; rf_glyph = (<a class="code" href="structrf__glyph.html">rfGlyph</a>*)glyph;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; XSetStipple(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, rf_glyph-&gt;<a class="code" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">pixmap</a>);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; XSetTSOrigin(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, x, y);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; XFillRectangle(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;drawing, rfi-&gt;gc, x, y, glyph-&gt;cx, glyph-&gt;cy);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; XSetStipple(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, rfi-&gt;bitmap_mono);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;}</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div><div class="line"><a name="l00335"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e"> 335</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rf_Glyph_BeginDraw</a>(rdpContext* context, INT32 x, INT32 y,</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; INT32 width, INT32 height, UINT32 bgcolor,</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; UINT32 fgcolor, BOOL fOpRedundant)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="preprocessor">#ifdef RF_GLYPH</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</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; bgcolor = (rfi-&gt;clrconv-&gt;invert) ?</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; freerdp_color_convert_var_bgr(bgcolor, rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>, 32, rfi-&gt;clrconv) :</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; freerdp_color_convert_var_rgb(bgcolor, rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>, 32, rfi-&gt;clrconv);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; fgcolor = (rfi-&gt;clrconv-&gt;invert) ?</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; freerdp_color_convert_var_bgr(fgcolor, rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>, 32, rfi-&gt;clrconv) :</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; freerdp_color_convert_var_rgb(fgcolor, rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>, 32, rfi-&gt;clrconv);</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; XSetFunction(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, GXcopy);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; XSetFillStyle(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, FillSolid);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; XSetForeground(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, fgcolor);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; XFillRectangle(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;drawing, rfi-&gt;gc, x, y, width, height);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; XSetForeground(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, bgcolor);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; XSetBackground(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, fgcolor);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; XSetFillStyle(rfi-&gt;<a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>, rfi-&gt;gc, FillStippled);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;}</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c"> 363</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rf_Glyph_EndDraw</a>(rdpContext* context, INT32 x, INT32 y,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; INT32 width, INT32 height,</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; UINT32 bgcolor, UINT32 fgcolor)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;<span class="preprocessor">#ifdef RF_GLYPH</span></div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="structrf__context.html">rfContext</a>* rfi = (<a class="code" href="structrf__context.html">rfContext</a>*)context;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;drawing == rfi-&gt;primary) {</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="comment">//XCopyArea(rfi-&gt;display, rfi-&gt;primary, rfi-&gt;drawable, rfi-&gt;gc, x, y, width, height, x, y);</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="comment">//gdi_InvalidateRegion(rfi-&gt;hdc, x, y, width, height);</span></div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;}</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;<span class="comment">/* Graphics Module */</span></div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1"> 381</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a>(rdpGraphics* graphics)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; rdpBitmap* bitmap;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; rdpPointer* pointer;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; rdpGlyph* glyph;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; bitmap = (rdpBitmap*)malloc(<span class="keyword">sizeof</span>(rdpBitmap));</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; ZeroMemory(bitmap, <span class="keyword">sizeof</span>(rdpBitmap));</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; bitmap-&gt;size = <span class="keyword">sizeof</span>(<a class="code" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rfBitmap</a>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; bitmap-&gt;New = <a class="code" href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rf_Bitmap_New</a>;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; bitmap-&gt;Free = <a class="code" href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rf_Bitmap_Free</a>;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; bitmap-&gt;Paint = <a class="code" href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rf_Bitmap_Paint</a>;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; bitmap-&gt;Decompress = <a class="code" href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rf_Bitmap_Decompress</a>;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; bitmap-&gt;SetSurface = <a class="code" href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rf_Bitmap_SetSurface</a>;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; graphics_register_bitmap(graphics, bitmap);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; free(bitmap);</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; pointer = (rdpPointer*)malloc(<span class="keyword">sizeof</span>(rdpPointer));</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; ZeroMemory(pointer, <span class="keyword">sizeof</span>(rdpPointer));</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; pointer-&gt;size = <span class="keyword">sizeof</span>(<a class="code" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a>);</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; pointer-&gt;New = <a class="code" href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rf_Pointer_New</a>;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; pointer-&gt;Free = <a class="code" href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rf_Pointer_Free</a>;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; pointer-&gt;Set = <a class="code" href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rf_Pointer_Set</a>;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; pointer-&gt;SetNull = <a class="code" href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rf_Pointer_SetNull</a>;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; pointer-&gt;SetDefault = <a class="code" href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rf_Pointer_SetDefault</a>;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; pointer-&gt;SetPosition = <a class="code" href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rf_Pointer_SetPosition</a>;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; graphics_register_pointer(graphics, pointer);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; free(pointer);</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"> 417</span>&#160; glyph = (rdpGlyph*)malloc(<span class="keyword">sizeof</span>(rdpGlyph));</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; ZeroMemory(glyph, <span class="keyword">sizeof</span>(rdpGlyph));</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; glyph-&gt;size = <span class="keyword">sizeof</span>(<a class="code" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rfGlyph</a>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; glyph-&gt;New = <a class="code" href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rf_Glyph_New</a>;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; glyph-&gt;Free = <a class="code" href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rf_Glyph_Free</a>;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; glyph-&gt;Draw = <a class="code" href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rf_Glyph_Draw</a>;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; glyph-&gt;BeginDraw = <a class="code" href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rf_Glyph_BeginDraw</a>;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; glyph-&gt;EndDraw = <a class="code" href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rf_Glyph_EndDraw</a>;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; graphics_register_glyph(graphics, glyph);</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; free(glyph);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;}</div><div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00174">rdp_plugin.h:174</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00175">rdp_plugin.h:175</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a8dda0e3bc313c165f38efd3954f69af9"><div class="ttname"><a href="rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9">rf_Glyph_Free</a></div><div class="ttdeci">void rf_Glyph_Free(rdpContext *context, rdpGlyph *glyph)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00305">rdp_graphics.c:305</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_af84263a9a942535283edbc8c541336ce"><div class="ttname"><a href="rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce">rf_Glyph_New</a></div><div class="ttdeci">BOOL rf_Glyph_New(rdpContext *context, const rdpGlyph *glyph)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00276">rdp_graphics.c:276</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_ac987bcf2b68b2a9fdf0c66ce27b25633"><div class="ttname"><a href="rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633">rf_Bitmap_New</a></div><div class="ttdeci">BOOL rf_Bitmap_New(rdpContext *context, rdpBitmap *bitmap)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00052">rdp_graphics.c:52</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a9fb6fb540ec75254cb763ae974fb5129"><div class="ttname"><a href="rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129">rf_Pointer_New</a></div><div class="ttdeci">BOOL rf_Pointer_New(rdpContext *context, rdpPointer *pointer)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00185">rdp_graphics.c:185</a></div></div>
+<div class="ttc" id="structrf__context_html_a40e89e126e5dd96a3f67e6f945a8867b"><div class="ttname"><a href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context::bpp</a></div><div class="ttdeci">gint bpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00292">rdp_plugin.h:292</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a4c2407f4e8db3ae44123066c373b705c"><div class="ttname"><a href="rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c">rf_Pointer_SetPosition</a></div><div class="ttdeci">BOOL rf_Pointer_SetPosition(rdpContext *context, UINT32 x, UINT32 y)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00260">rdp_graphics.c:260</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_afe709335471a30a29f9c97587d43088f"><div class="ttname"><a href="rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f">rf_Pointer_Free</a></div><div class="ttdeci">void rf_Pointer_Free(rdpContext *context, rdpPointer *pointer)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00202">rdp_graphics.c:202</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a8a5bd2872aa895f3a76fa35caf77982a"><div class="ttname"><a href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rfGlyph</a></div><div class="ttdeci">struct rf_glyph rfGlyph</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00104">rdp_plugin.h:104</a></div></div>
+<div class="ttc" id="structrf__context_html_a7c4234646c4b584e41e36521b7eab889"><div class="ttname"><a href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">rf_context::display</a></div><div class="ttdeci">GdkDisplay * display</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00288">rdp_plugin.h:288</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_ae9d29fafd5e843f13a94101b67c41b94"><div class="ttname"><a href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rfBitmap</a></div><div class="ttdeci">struct rf_bitmap rfBitmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00098">rdp_plugin.h:98</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a29763c1856c87650bbfc4b9ecd177718"><div class="ttname"><a href="rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718">rf_Bitmap_Decompress</a></div><div class="ttdeci">BOOL rf_Bitmap_Decompress(rdpContext *context, rdpBitmap *bitmap, const BYTE *data, UINT32 width, UINT32 height, UINT32 bpp, UINT32 length, BOOL compressed, UINT32 codec_id)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00134">rdp_graphics.c:134</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a95732c40c35499f3440715b6526279b1"><div class="ttname"><a href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a></div><div class="ttdeci">void rf_register_graphics(rdpGraphics *graphics)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00381">rdp_graphics.c:381</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a0d6cab75538bffa185b6d2b6f35f15cf"><div class="ttname"><a href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a></div><div class="ttdeci">struct rf_pointer rfPointer</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00091">rdp_plugin.h:91</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00157">rdp_plugin.h:157</a></div></div>
+<div class="ttc" id="structrf__context_html_a05f37c213b04dfb9ae9b38c12bcdf7e3"><div class="ttname"><a href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context::protocol_widget</a></div><div class="ttdeci">RemminaProtocolWidget * protocol_widget</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00247">rdp_plugin.h:247</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_af6d895caa2a7569082dacd7ef0a48d28"><div class="ttname"><a href="rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28">rf_Bitmap_SetSurface</a></div><div class="ttdeci">BOOL rf_Bitmap_SetSurface(rdpContext *context, rdpBitmap *bitmap, BOOL primary)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00169">rdp_graphics.c:169</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_aee54ac34465e6b70a5a7bbd799e9b747"><div class="ttname"><a href="rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747">rf_Pointer_Set</a></div><div class="ttdeci">BOOL rf_Pointer_Set(rdpContext *context, const rdpPointer *pointer)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00219">rdp_graphics.c:219</a></div></div>
+<div class="ttc" id="structrf__context_html_a7343f17d1aa3e70e112a9c20d6c6a999"><div class="ttname"><a href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">rf_context::visual</a></div><div class="ttdeci">GdkVisual * visual</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00289">rdp_plugin.h:289</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00177">rdp_plugin.h:177</a></div></div>
+<div class="ttc" id="structrf__bitmap_html"><div class="ttname"><a href="structrf__bitmap.html">rf_bitmap</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00093">rdp_plugin.h:93</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00173">rdp_plugin.h:173</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a7e9fd3bd2eeb6fe398ce64b72c12ba2c"><div class="ttname"><a href="rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c">rf_Glyph_EndDraw</a></div><div class="ttdeci">static BOOL rf_Glyph_EndDraw(rdpContext *context, INT32 x, INT32 y, INT32 width, INT32 height, UINT32 bgcolor, UINT32 fgcolor)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00363">rdp_graphics.c:363</a></div></div>
+<div class="ttc" id="rdp__graphics_8h_html"><div class="ttname"><a href="rdp__graphics_8h.html">rdp_graphics.h</a></div></div>
+<div class="ttc" id="structrf__glyph_html_a19abe408a1c2a4c0c27ecddafb60cc22"><div class="ttname"><a href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">rf_glyph::pixmap</a></div><div class="ttdeci">Pixmap pixmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00102">rdp_plugin.h:102</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ab5fe43c1b1b77c39f118d2581942eb81"><div class="ttname"><a href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a></div><div class="ttdeci">int remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01268">rdp_event.c:1268</a></div></div>
+<div class="ttc" id="structrf__context_html_a538399f42e4454d5a44effbc59ea9091"><div class="ttname"><a href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">rf_context::scanline_pad</a></div><div class="ttdeci">gint scanline_pad</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00293">rdp_plugin.h:293</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a3421f83355f450de66f14e997d770a9e"><div class="ttname"><a href="rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e">rf_Glyph_BeginDraw</a></div><div class="ttdeci">static BOOL rf_Glyph_BeginDraw(rdpContext *context, INT32 x, INT32 y, INT32 width, INT32 height, UINT32 bgcolor, UINT32 fgcolor, BOOL fOpRedundant)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00335">rdp_graphics.c:335</a></div></div>
+<div class="ttc" id="structrf__pointer_html"><div class="ttname"><a href="structrf__pointer.html">rf_pointer</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00087">rdp_plugin.h:87</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00172">rdp_plugin.h:172</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a93a58a3f560a61e7bf76e58bec20194e"><div class="ttname"><a href="rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e">rf_Bitmap_Paint</a></div><div class="ttdeci">BOOL rf_Bitmap_Paint(rdpContext *context, rdpBitmap *bitmap)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00103">rdp_graphics.c:103</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_aeb108afe0c6da4dfa5a485137921437a"><div class="ttname"><a href="rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a">rf_Pointer_SetNull</a></div><div class="ttdeci">BOOL rf_Pointer_SetNull(rdpContext *context)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00234">rdp_graphics.c:234</a></div></div>
+<div class="ttc" id="structrf__context_html_a9d28c775fe1ee90ad48941d753564a76"><div class="ttname"><a href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">rf_context::srcBpp</a></div><div class="ttdeci">gint srcBpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00287">rdp_plugin.h:287</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_ac2abd9da136bc6f446c836a3d53ab8b6"><div class="ttname"><a href="rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6">rf_Pointer_SetDefault</a></div><div class="ttdeci">BOOL rf_Pointer_SetDefault(rdpContext *context)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00247">rdp_graphics.c:247</a></div></div>
+<div class="ttc" id="structrf__glyph_html"><div class="ttname"><a href="structrf__glyph.html">rf_glyph</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00100">rdp_plugin.h:100</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aba5a610f4114e7876e23d429b53f256a"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">remmina_plugin_rdp_ui_object::cursor</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@51 cursor</div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a389f976845c075e225ce1f2b4dac406e"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">remmina_plugin_rdp_ui_object::pos</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@56 pos</div></div>
+<div class="ttc" id="rdp__event_8h_html"><div class="ttname"><a href="rdp__event_8h.html">rdp_event.h</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_aeb45441fb6688ed52556c1cb803033e3"><div class="ttname"><a href="rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3">rf_Glyph_Draw</a></div><div class="ttdeci">static BOOL rf_Glyph_Draw(rdpContext *context, const rdpGlyph *glyph, INT32 x, INT32 y, INT32 w, INT32 h, INT32 sx, INT32 sy, BOOL fOpRedundant)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00316">rdp_graphics.c:316</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00176">rdp_plugin.h:176</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_ad508926c64816572be8a97eee5cac60d"><div class="ttname"><a href="rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d">rf_Bitmap_Free</a></div><div class="ttdeci">void rf_Bitmap_Free(rdpContext *context, rdpBitmap *bitmap)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00090">rdp_graphics.c:90</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a46d939889fba73c1360f924efaa09262"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00190">rdp_plugin.h:190</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__graphics_8c.html">rdp_graphics.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__graphics_8h.html b/docs/rdp__graphics_8h.html
new file mode 100644
index 000000000..740cc7b73
--- /dev/null
+++ b/docs/rdp__graphics_8h.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_graphics.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__graphics_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_graphics.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__graphics_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a95732c40c35499f3440715b6526279b1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a> (rdpGraphics *graphics)</td></tr>
+<tr class="separator:a95732c40c35499f3440715b6526279b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a95732c40c35499f3440715b6526279b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95732c40c35499f3440715b6526279b1">&#9670;&nbsp;</a></span>rf_register_graphics()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_register_graphics </td>
+ <td>(</td>
+ <td class="paramtype">rdpGraphics *&#160;</td>
+ <td class="paramname"><em>graphics</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__graphics_8c_source.html#l00381">381</a> of file <a class="el" href="rdp__graphics_8c_source.html">rdp_graphics.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__graphics_8h.html">rdp_graphics.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__graphics_8h.js b/docs/rdp__graphics_8h.js
new file mode 100644
index 000000000..4680576af
--- /dev/null
+++ b/docs/rdp__graphics_8h.js
@@ -0,0 +1,4 @@
+var rdp__graphics_8h =
+[
+ [ "rf_register_graphics", "rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__graphics_8h_source.html b/docs/rdp__graphics_8h_source.html
new file mode 100644
index 000000000..015d09992
--- /dev/null
+++ b/docs/rdp__graphics_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_graphics.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__graphics_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_graphics.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__graphics_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) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</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="keywordtype">void</span> <a class="code" href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a>(rdpGraphics *graphics);</div><div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="rdp__graphics_8h_html_a95732c40c35499f3440715b6526279b1"><div class="ttname"><a href="rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a></div><div class="ttdeci">void rf_register_graphics(rdpGraphics *graphics)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00381">rdp_graphics.c:381</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__graphics_8h.html">rdp_graphics.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__plugin_8c.html b/docs/rdp__plugin_8c.html
new file mode 100644
index 000000000..223e62921
--- /dev/null
+++ b/docs/rdp__plugin_8c.html
@@ -0,0 +1,1834 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8b9e88d2925be5eee2025f4c3ede1e29"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rf_process_event_queue</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8b9e88d2925be5eee2025f4c3ede1e29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af95e15a376e56355da6c52e85d8553af"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">remmina_rdp_tunnel_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af95e15a376e56355da6c52e85d8553af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dc42bd40842f63939e962828c19cfc7"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rf_auto_reconnect</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:a6dc42bd40842f63939e962828c19cfc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d4d5d48fa23ed0ae59466f5d3f1dacf"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rf_begin_paint</a> (rdpContext *context)</td></tr>
+<tr class="separator:a2d4d5d48fa23ed0ae59466f5d3f1dacf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5b2b1181588e07e68c083c9539fa84f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rf_end_paint</a> (rdpContext *context)</td></tr>
+<tr class="separator:ab5b2b1181588e07e68c083c9539fa84f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a992a905d014d83a8de736ffbd85fe901"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rf_desktop_resize</a> (rdpContext *context)</td></tr>
+<tr class="separator:a992a905d014d83a8de736ffbd85fe901"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d029a3287dd4abf1e7c602e3c556cde"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rf_play_sound</a> (rdpContext *context, const PLAY_SOUND_UPDATE *play_sound)</td></tr>
+<tr class="separator:a0d029a3287dd4abf1e7c602e3c556cde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b89199f25081137222e72a4be577ea4"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rf_keyboard_set_indicators</a> (rdpContext *context, UINT16 led_flags)</td></tr>
+<tr class="separator:a1b89199f25081137222e72a4be577ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b14775d97715a4ca01f21d81170151b"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rf_keyboard_set_ime_status</a> (rdpContext *context, UINT16 imeId, UINT32 imeState, UINT32 imeConvMode)</td></tr>
+<tr class="separator:a0b14775d97715a4ca01f21d81170151b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0bc4113554537fd1a9e4c8bb9201e789"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">remmina_rdp_pre_connect</a> (freerdp *instance)</td></tr>
+<tr class="separator:a0bc4113554537fd1a9e4c8bb9201e789"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8d1ec82167ad20b7634ed545d4badbc"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">remmina_rdp_post_connect</a> (freerdp *instance)</td></tr>
+<tr class="separator:ac8d1ec82167ad20b7634ed545d4badbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af33e88ae9c13745eb6d36f36418e3676"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">remmina_rdp_authenticate</a> (freerdp *instance, char **username, char **password, char **domain)</td></tr>
+<tr class="separator:af33e88ae9c13745eb6d36f36418e3676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71166233c6c9e4714cbdb0d74ce7c579"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">remmina_rdp_gw_authenticate</a> (freerdp *instance, char **username, char **password, char **domain)</td></tr>
+<tr class="separator:a71166233c6c9e4714cbdb0d74ce7c579"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a646b2d4e7ebd09e205ca70c75616a797"><td class="memItemLeft" align="right" valign="top">static DWORD&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">remmina_rdp_verify_certificate</a> (freerdp *instance, const char *common_name, const char *subject, const char *issuer, const char *fingerprint, BOOL host_mismatch)</td></tr>
+<tr class="separator:a646b2d4e7ebd09e205ca70c75616a797"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a120a18b1b32575381f934580ad5a42c5"><td class="memItemLeft" align="right" valign="top">static DWORD&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">remmina_rdp_verify_changed_certificate</a> (freerdp *instance, const char *common_name, const char *subject, const char *issuer, const char *new_fingerprint, const char *old_subject, const char *old_issuer, const char *old_fingerprint)</td></tr>
+<tr class="separator:a120a18b1b32575381f934580ad5a42c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9e7535ac53b25e8923a3b9fd1622046"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">remmina_rdp_post_disconnect</a> (freerdp *instance)</td></tr>
+<tr class="separator:ab9e7535ac53b25e8923a3b9fd1622046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb2d2f801618ad1e5ff14b4ebf2a9eb9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">remmina_rdp_main_loop</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:adb2d2f801618ad1e5ff14b4ebf2a9eb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa5eb17481ba534c9f334d2a61a68ab2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a> (rdpChannels *channels, rdpSettings *settings, char *name, void *data)</td></tr>
+<tr class="separator:aaa5eb17481ba534c9f334d2a61a68ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3d5598ae09c52f3ad0546c7de641f9f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">remmina_rdp_find_prdriver</a> (char *smap, char *prn)</td></tr>
+<tr class="separator:ac3d5598ae09c52f3ad0546c7de641f9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab05af9675485e3192847e1936d131d31"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">remmina_rdp_set_printers</a> (void *user_data, unsigned flags, cups_dest_t *dest)</td></tr>
+<tr class="memdesc:ab05af9675485e3192847e1936d131d31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Callback function used by cupsEnumDests. <a href="#ab05af9675485e3192847e1936d131d31">More...</a><br /></td></tr>
+<tr class="separator:ab05af9675485e3192847e1936d131d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04920ffa78f21d63806d544fcca9c56e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">remmina_rdp_send_ctrlaltdel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a04920ffa78f21d63806d544fcca9c56e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e0199d082d510648cb27168486f4e0"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">remmina_rdp_main</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a12e0199d082d510648cb27168486f4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af22c947a2ae21ce29170be003585e06b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rfi_uninit</a> (<a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *rfi)</td></tr>
+<tr class="separator:af22c947a2ae21ce29170be003585e06b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6aa88468d17f574532ca959f554a70c5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">complete_cleanup_on_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a6aa88468d17f574532ca959f554a70c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b62e33da1cb6cfa69c44f565ad53c54"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">remmina_rdp_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a3b62e33da1cb6cfa69c44f565ad53c54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dd204e4f7a63fdcdfb6cd3066cbf309"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6dd204e4f7a63fdcdfb6cd3066cbf309"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f88cb338f10185c43bfc7d711dddee5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5f88cb338f10185c43bfc7d711dddee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1beaae641f40fc4fbcafe84846a2eb76"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1beaae641f40fc4fbcafe84846a2eb76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0291f2233b3d82a3f1d521bfc1fabd43"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a0291f2233b3d82a3f1d521bfc1fabd43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b63a366a0db4fddced3f2cffa353b19"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a3b63a366a0db4fddced3f2cffa353b19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addffb9c5555027536804d8ef47b65f3b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td></tr>
+<tr class="separator:addffb9c5555027536804d8ef47b65f3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a910327fd7b1f969868a746aeb5578d30"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td></tr>
+<tr class="separator:a910327fd7b1f969868a746aeb5578d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7031208f6cbf262a2e69fe971f248591"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">buildconfig_strstr</a> (const char *bc, const char *option)</td></tr>
+<tr class="separator:a7031208f6cbf262a2e69fe971f248591"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3c72bfa3579b1e6cf0fb11566a72f66"><td class="memItemLeft" align="right" valign="top">static char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">remmina_rdp_plugin_default_drive_name</a> [] = &quot;RemminaDisk&quot;</td></tr>
+<tr class="separator:af3c72bfa3579b1e6cf0fb11566a72f66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18f77c3f0788ca8df08ebc80c72b553f"><td class="memItemLeft" align="right" valign="top">static BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> = FALSE</td></tr>
+<tr class="separator:a18f77c3f0788ca8df08ebc80c72b553f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a> []</td></tr>
+<tr class="separator:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a> []</td></tr>
+<tr class="separator:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36918dbbfad26310cfe3a3aed5f8f5dc"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">sound_list</a> []</td></tr>
+<tr class="separator:a36918dbbfad26310cfe3a3aed5f8f5dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f9e1bbd16e19411adbd6a423a9b571f"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">security_list</a> []</td></tr>
+<tr class="separator:a2f9e1bbd16e19411adbd6a423a9b571f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3191c66b2dabbb1a3c3c5474c6e9626"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">gwtransp_list</a> []</td></tr>
+<tr class="separator:aa3191c66b2dabbb1a3c3c5474c6e9626"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7565748ab340f2e7c66bcb755e006bd5"><td class="memItemLeft" align="right" valign="top">static gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">clientbuild_list</a> []</td></tr>
+<tr class="separator:a7565748ab340f2e7c66bcb755e006bd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6910d98a00cac88fb257d9bb2d080243"><td class="memItemLeft" align="right" valign="top">static gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">clientbuild_tooltip</a> []</td></tr>
+<tr class="separator:a6910d98a00cac88fb257d9bb2d080243"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b6601868bc70050a57b1025f10225b1"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a> []</td></tr>
+<tr class="separator:a2b6601868bc70050a57b1025f10225b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad47177412ada547f7cd6cbb9dfcf0f3f"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a> []</td></tr>
+<tr class="separator:ad47177412ada547f7cd6cbb9dfcf0f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac66bd1c0ceb224f7a65f5b712148a43e"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a> []</td></tr>
+<tr class="separator:ac66bd1c0ceb224f7a65f5b712148a43e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2986e5b780a080a8a1e2f8d10ece3ac4"><td class="memItemLeft" align="right" valign="top">static char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a> [256]</td></tr>
+<tr class="separator:a2986e5b780a080a8a1e2f8d10ece3ac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cad107c77386b752f338d6c7f2b6a0a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a">remmina_rdp</a></td></tr>
+<tr class="separator:a8cad107c77386b752f338d6c7f2b6a0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d69cf4d703b55b87d1de06493e2a619"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619">remmina_rdpf</a></td></tr>
+<tr class="separator:a4d69cf4d703b55b87d1de06493e2a619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af43b1397163aab939f9e88ed201d52ba"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba">remmina_rdps</a></td></tr>
+<tr class="separator:af43b1397163aab939f9e88ed201d52ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7031208f6cbf262a2e69fe971f248591"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7031208f6cbf262a2e69fe971f248591">&#9670;&nbsp;</a></span>buildconfig_strstr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static char* buildconfig_strstr </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>bc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>option</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02141">2141</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6aa88468d17f574532ca959f554a70c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6aa88468d17f574532ca959f554a70c5">&#9670;&nbsp;</a></span>complete_cleanup_on_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean complete_cleanup_on_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01671">1671</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02161">2161</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af33e88ae9c13745eb6d36f36418e3676"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af33e88ae9c13745eb6d36f36418e3676">&#9670;&nbsp;</a></span>remmina_rdp_authenticate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_authenticate </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00561">561</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3b63a366a0db4fddced3f2cffa353b19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b63a366a0db4fddced3f2cffa353b19">&#9670;&nbsp;</a></span>remmina_rdp_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01844">1844</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1beaae641f40fc4fbcafe84846a2eb76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1beaae641f40fc4fbcafe84846a2eb76">&#9670;&nbsp;</a></span>remmina_rdp_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01803">1803</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3d5598ae09c52f3ad0546c7de641f9f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3d5598ae09c52f3ad0546c7de641f9f">&#9670;&nbsp;</a></span>remmina_rdp_find_prdriver()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_rdp_find_prdriver </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>smap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>prn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00823">823</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a910327fd7b1f969868a746aeb5578d30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a910327fd7b1f969868a746aeb5578d30">&#9670;&nbsp;</a></span>remmina_rdp_get_screenshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_get_screenshot </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *&#160;</td>
+ <td class="paramname"><em>rpsd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000016">Todo:</a></b></dt><dd>we should lock FreeRDP subthread to update rfi-&gt;primary_buffer, rfi-&gt;gdi and w/h, from here to memcpy, but… how ? </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01895">1895</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a71166233c6c9e4714cbdb0d74ce7c579"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71166233c6c9e4714cbdb0d74ce7c579">&#9670;&nbsp;</a></span>remmina_rdp_gw_authenticate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_gw_authenticate </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00620">620</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6dd204e4f7a63fdcdfb6cd3066cbf309"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6dd204e4f7a63fdcdfb6cd3066cbf309">&#9670;&nbsp;</a></span>remmina_rdp_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01727">1727</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="addffb9c5555027536804d8ef47b65f3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#addffb9c5555027536804d8ef47b65f3b">&#9670;&nbsp;</a></span>remmina_rdp_keystroke()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_keystroke </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint&#160;</td>
+ <td class="paramname"><em>keystrokes</em>[], </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gint&#160;</td>
+ <td class="paramname"><em>keylen</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01886">1886</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aaa5eb17481ba534c9f334d2a61a68ab2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa5eb17481ba534c9f334d2a61a68ab2">&#9670;&nbsp;</a></span>remmina_rdp_load_static_channel_addin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_load_static_channel_addin </td>
+ <td>(</td>
+ <td class="paramtype">rdpChannels *&#160;</td>
+ <td class="paramname"><em>channels</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rdpSettings *&#160;</td>
+ <td class="paramname"><em>settings</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00792">792</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a12e0199d082d510648cb27168486f4e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12e0199d082d510648cb27168486f4e0">&#9670;&nbsp;</a></span>remmina_rdp_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_main </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Proxy support Proxy settings are hidden at the moment as an advanced feature</p>
+<p>multitransport enables RDP8 UDP support</p>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00986">986</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adb2d2f801618ad1e5ff14b4ebf2a9eb9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb2d2f801618ad1e5ff14b4ebf2a9eb9">&#9670;&nbsp;</a></span>remmina_rdp_main_loop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_main_loop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00734">734</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3b62e33da1cb6cfa69c44f565ad53c54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b62e33da1cb6cfa69c44f565ad53c54">&#9670;&nbsp;</a></span>remmina_rdp_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_rdp_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01701">1701</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f88cb338f10185c43bfc7d711dddee5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f88cb338f10185c43bfc7d711dddee5">&#9670;&nbsp;</a></span>remmina_rdp_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01760">1760</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac8d1ec82167ad20b7634ed545d4badbc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8d1ec82167ad20b7634ed545d4badbc">&#9670;&nbsp;</a></span>remmina_rdp_post_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_post_connect </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00497">497</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab9e7535ac53b25e8923a3b9fd1622046"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9e7535ac53b25e8923a3b9fd1622046">&#9670;&nbsp;</a></span>remmina_rdp_post_disconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_post_disconnect </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00718">718</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0bc4113554537fd1a9e4c8bb9201e789"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0bc4113554537fd1a9e4c8bb9201e789">&#9670;&nbsp;</a></span>remmina_rdp_pre_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL remmina_rdp_pre_connect </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00464">464</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0291f2233b3d82a3f1d521bfc1fabd43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0291f2233b3d82a3f1d521bfc1fabd43">&#9670;&nbsp;</a></span>remmina_rdp_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01838">1838</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a04920ffa78f21d63806d544fcca9c56e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04920ffa78f21d63806d544fcca9c56e">&#9670;&nbsp;</a></span>remmina_rdp_send_ctrlaltdel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_send_ctrlaltdel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00976">976</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab05af9675485e3192847e1936d131d31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab05af9675485e3192847e1936d131d31">&#9670;&nbsp;</a></span>remmina_rdp_set_printers()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_rdp_set_printers </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">cups_dest_t *&#160;</td>
+ <td class="paramname"><em>dest</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Callback function used by cupsEnumDests. </p>
+<ul>
+<li>For each enumerated local printer tries to set the Printer Name and Driver. <dl class="section return"><dt>Returns</dt><dd>1 if there are other printers to scan or 0 when it's done. </dd></dl>
+</li>
+</ul>
+<dl class="section warning"><dt>Warning</dt><dd>printer-make-and-model is not always the same as on the Windows, therefore it fails finding to right one and it fails to add the printer.</dd></dl>
+<p>We pass NULL and we do not check for errors. The following code is how it is supposed to work.</p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000015">Todo:</a></b></dt><dd>Ask CUPS mailing list for help.</dd></dl>
+<div class="fragment"><div class="line"><span class="keyword">const</span> <span class="keywordtype">char</span> *model = cupsGetOption(<span class="stringliteral">&quot;printer-make-and-model&quot;</span>,</div><div class="line"> dest-&gt;num_options,</div><div class="line"> dest-&gt;options);</div></div><!-- fragment --><p>When remmina_rdp_find_prdriver doesn't return a DriverName it means that we don't want to share that printer</p>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00898">898</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af95e15a376e56355da6c52e85d8553af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af95e15a376e56355da6c52e85d8553af">&#9670;&nbsp;</a></span>remmina_rdp_tunnel_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_rdp_tunnel_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00176">176</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a646b2d4e7ebd09e205ca70c75616a797"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a646b2d4e7ebd09e205ca70c75616a797">&#9670;&nbsp;</a></span>remmina_rdp_verify_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static DWORD remmina_rdp_verify_certificate </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>common_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>fingerprint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">BOOL&#160;</td>
+ <td class="paramname"><em>host_mismatch</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00680">680</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a120a18b1b32575381f934580ad5a42c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a120a18b1b32575381f934580ad5a42c5">&#9670;&nbsp;</a></span>remmina_rdp_verify_changed_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static DWORD remmina_rdp_verify_changed_certificate </td>
+ <td>(</td>
+ <td class="paramtype">freerdp *&#160;</td>
+ <td class="paramname"><em>instance</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>common_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>new_fingerprint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>old_subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>old_issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>old_fingerprint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00698">698</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6dc42bd40842f63939e962828c19cfc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6dc42bd40842f63939e962828c19cfc7">&#9670;&nbsp;</a></span>rf_auto_reconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_auto_reconnect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00233">233</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2d4d5d48fa23ed0ae59466f5d3f1dacf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d4d5d48fa23ed0ae59466f5d3f1dacf">&#9670;&nbsp;</a></span>rf_begin_paint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_begin_paint </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00312">312</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a992a905d014d83a8de736ffbd85fe901"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a992a905d014d83a8de736ffbd85fe901">&#9670;&nbsp;</a></span>rf_desktop_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_desktop_resize </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00371">371</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab5b2b1181588e07e68c083c9539fa84f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5b2b1181588e07e68c083c9539fa84f">&#9670;&nbsp;</a></span>rf_end_paint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_end_paint </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00327">327</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b14775d97715a4ca01f21d81170151b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b14775d97715a4ca01f21d81170151b">&#9670;&nbsp;</a></span>rf_keyboard_set_ime_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_keyboard_set_ime_status </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT16&#160;</td>
+ <td class="paramname"><em>imeId</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>imeState</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT32&#160;</td>
+ <td class="paramname"><em>imeConvMode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00451">451</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1b89199f25081137222e72a4be577ea4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b89199f25081137222e72a4be577ea4">&#9670;&nbsp;</a></span>rf_keyboard_set_indicators()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_keyboard_set_indicators </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">UINT16&#160;</td>
+ <td class="paramname"><em>led_flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00422">422</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0d029a3287dd4abf1e7c602e3c556cde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d029a3287dd4abf1e7c602e3c556cde">&#9670;&nbsp;</a></span>rf_play_sound()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_play_sound </td>
+ <td>(</td>
+ <td class="paramtype">rdpContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const PLAY_SOUND_UPDATE *&#160;</td>
+ <td class="paramname"><em>play_sound</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00406">406</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8b9e88d2925be5eee2025f4c3ede1e29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b9e88d2925be5eee2025f4c3ede1e29">&#9670;&nbsp;</a></span>rf_process_event_queue()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static BOOL rf_process_event_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00094">94</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af22c947a2ae21ce29170be003585e06b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af22c947a2ae21ce29170be003585e06b">&#9670;&nbsp;</a></span>rfi_uninit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rfi_uninit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td>
+ <td class="paramname"><em>rfi</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01636">1636</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a7565748ab340f2e7c66bcb755e006bd5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7565748ab340f2e7c66bcb755e006bd5">&#9670;&nbsp;</a></span>clientbuild_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar clientbuild_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;2600 (Windows XP), 7601 (Windows Vista/7), 9600 (Windows 8 and newer)&quot;</span>)</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01990">1990</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6910d98a00cac88fb257d9bb2d080243"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6910d98a00cac88fb257d9bb2d080243">&#9670;&nbsp;</a></span>clientbuild_tooltip</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar clientbuild_tooltip[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Used i.a. by terminal services in smart card channel to distinguish client capabilities:\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • &lt; 4034: Windows XP base smart card functions\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • 4034-7064: Windows Vista/7: SCardReadCache(), SCardWriteCache(),\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; SCardGetTransmitCount()\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • &gt;= 7065: Windows 8 and newer: SCardGetReaderIcon(), SCardGetDeviceTypeId()&quot;</span>)</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01993">1993</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d6c92b318e43b96efddbcaa9400c1f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d6c92b318e43b96efddbcaa9400c1f1">&#9670;&nbsp;</a></span>colordepth_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer colordepth_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> </div><div class="line"> <span class="stringliteral">&quot;66&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX AVC444 (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;65&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX AVC420 (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;64&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX RFX (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RemoteFX (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;32&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;24&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (24 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (16 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;15&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (15 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colours (8 bpp)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01935">1935</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a18f77c3f0788ca8df08ebc80c72b553f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18f77c3f0788ca8df08ebc80c72b553f">&#9670;&nbsp;</a></span>gfx_h264_available</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL gfx_h264_available = FALSE</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00092">92</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3191c66b2dabbb1a3c3c5474c6e9626"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3191c66b2dabbb1a3c3c5474c6e9626">&#9670;&nbsp;</a></span>gwtransp_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer gwtransp_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;http&quot;</span>, <span class="stringliteral">&quot;HTTP&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;rpc&quot;</span>, <span class="stringliteral">&quot;RPC&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;auto&quot;</span>, <span class="stringliteral">&quot;Auto&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01982">1982</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a64254af45bb17a5a40a3a0383daa3fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64254af45bb17a5a40a3a0383daa3fe7">&#9670;&nbsp;</a></span>quality_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer quality_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01951">1951</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2986e5b780a080a8a1e2f8d10ece3ac4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2986e5b780a080a8a1e2f8d10ece3ac4">&#9670;&nbsp;</a></span>remmina_plugin_rdp_version</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">char remmina_plugin_rdp_version[256]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02089">2089</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00089">89</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8cad107c77386b752f338d6c7f2b6a0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cad107c77386b752f338d6c7f2b6a0a">&#9670;&nbsp;</a></span>remmina_rdp</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_rdp</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;RDP&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - Remote Desktop Protocol&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, </div><div class="line"> <span class="stringliteral">&quot;remmina-rdp-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-rdp-ssh-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a>, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a> </div><div class="line">}</div><div class="ttc" id="rdp__plugin_8c_html_a5f88cb338f10185c43bfc7d711dddee5"><div class="ttname"><a href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a></div><div class="ttdeci">static gboolean remmina_rdp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01760">rdp_plugin.c:1760</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a0291f2233b3d82a3f1d521bfc1fabd43"><div class="ttname"><a href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a></div><div class="ttdeci">static gboolean remmina_rdp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01838">rdp_plugin.c:1838</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ad47177412ada547f7cd6cbb9dfcf0f3f"><div class="ttname"><a href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_rdp_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02030">rdp_plugin.c:2030</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a6dd204e4f7a63fdcdfb6cd3066cbf309"><div class="ttname"><a href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a></div><div class="ttdeci">static void remmina_rdp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01727">rdp_plugin.c:1727</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ac66bd1c0ceb224f7a65f5b712148a43e"><div class="ttname"><a href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_rdp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02078">rdp_plugin.c:2078</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_addffb9c5555027536804d8ef47b65f3b"><div class="ttname"><a href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a></div><div class="ttdeci">static void remmina_rdp_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01886">rdp_plugin.c:1886</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a1beaae641f40fc4fbcafe84846a2eb76"><div class="ttname"><a href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a></div><div class="ttdeci">static gboolean remmina_rdp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01803">rdp_plugin.c:1803</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2986e5b780a080a8a1e2f8d10ece3ac4"><div class="ttname"><a href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a></div><div class="ttdeci">static char remmina_plugin_rdp_version[256]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02089">rdp_plugin.c:2089</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2b6601868bc70050a57b1025f10225b1"><div class="ttname"><a href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_rdp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02009">rdp_plugin.c:2009</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a910327fd7b1f969868a746aeb5578d30"><div class="ttname"><a href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a></div><div class="ttdeci">static gboolean remmina_rdp_get_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01895">rdp_plugin.c:1895</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a3b63a366a0db4fddced3f2cffa353b19"><div class="ttname"><a href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a></div><div class="ttdeci">static void remmina_rdp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01844">rdp_plugin.c:1844</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02092">2092</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad47177412ada547f7cd6cbb9dfcf0f3f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad47177412ada547f7cd6cbb9dfcf0f3f">&#9670;&nbsp;</a></span>remmina_rdp_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_rdp_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02030">2030</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b6601868bc70050a57b1025f10225b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b6601868bc70050a57b1025f10225b1">&#9670;&nbsp;</a></span>remmina_rdp_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_rdp_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;domain&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Domain&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Colour depth&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sharefolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share folder&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01935">rdp_plugin.c:1935</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02009">2009</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac66bd1c0ceb224f7a65f5b712148a43e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac66bd1c0ceb224f7a65f5b712148a43e">&#9670;&nbsp;</a></span>remmina_rdp_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_rdp_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_RDP_FEATURE_TOOL_REFRESH, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Refresh&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, REMMINA_RDP_FEATURE_SCALE, NULL, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a>, REMMINA_RDP_FEATURE_DYNRESUPDATE, NULL, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_RDP_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>, REMMINA_RDP_FEATURE_UNFOCUS, NULL, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00049">types.h:49</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02078">2078</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af3c72bfa3579b1e6cf0fb11566a72f66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3c72bfa3579b1e6cf0fb11566a72f66">&#9670;&nbsp;</a></span>remmina_rdp_plugin_default_drive_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">char remmina_rdp_plugin_default_drive_name[] = &quot;RemminaDisk&quot;</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00090">90</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4d69cf4d703b55b87d1de06493e2a619"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d69cf4d703b55b87d1de06493e2a619">&#9670;&nbsp;</a></span>remmina_rdpf</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a> remmina_rdpf</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a>, </div><div class="line"> <span class="stringliteral">&quot;RDPF&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - RDP File Handler&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, </div><div class="line"> <a class="code" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a>, </div><div class="line"> <a class="code" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a>, </div><div class="line"> <a class="code" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a>, </div><div class="line"> <a class="code" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a>, </div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00047">plugin.h:47</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a263e269a1f8cfb21ba78d4b57ce2c47b"><div class="ttname"><a href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a></div><div class="ttdeci">gboolean remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00278">rdp_file.c:278</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a6d00c37987b9f5b09959944d01142310"><div class="ttname"><a href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_export_test(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00207">rdp_file.c:207</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_aae001941e15e94a2d6456cc02e5ef75c"><div class="ttname"><a href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a></div><div class="ttdeci">RemminaFile * remmina_rdp_file_import(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00187">rdp_file.c:187</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2986e5b780a080a8a1e2f8d10ece3ac4"><div class="ttname"><a href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a></div><div class="ttdeci">static char remmina_plugin_rdp_version[256]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02089">rdp_plugin.c:2089</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a8b1b44a7a6367e3bca60a6ba6fd086ce"><div class="ttname"><a href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_import_test(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00041">rdp_file.c:41</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02115">2115</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af43b1397163aab939f9e88ed201d52ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af43b1397163aab939f9e88ed201d52ba">&#9670;&nbsp;</a></span>remmina_rdps</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a8ffdd703265254b90f9a609795b427cc">RemminaPrefPlugin</a> remmina_rdps</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a>, </div><div class="line"> <span class="stringliteral">&quot;RDPS&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - Preferences&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, </div><div class="line"> <span class="stringliteral">&quot;RDP&quot;</span>, </div><div class="line"> <a class="code" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a> </div><div class="line">}</div><div class="ttc" id="rdp__settings_8c_html_adc5f59377e21db6e1aef8bfc2da24b53"><div class="ttname"><a href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a></div><div class="ttdeci">GtkWidget * remmina_rdp_settings_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00597">rdp_settings.c:597</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00049">plugin.h:49</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2986e5b780a080a8a1e2f8d10ece3ac4"><div class="ttname"><a href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a></div><div class="ttdeci">static char remmina_plugin_rdp_version[256]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02089">rdp_plugin.c:2089</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l02130">2130</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2f9e1bbd16e19411adbd6a423a9b571f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f9e1bbd16e19411adbd6a423a9b571f">&#9670;&nbsp;</a></span>security_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer security_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Negotiate&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;nla&quot;</span>, <span class="stringliteral">&quot;NLA&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;tls&quot;</span>, <span class="stringliteral">&quot;TLS&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;rdp&quot;</span>, <span class="stringliteral">&quot;RDP&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01973">1973</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a36918dbbfad26310cfe3a3aed5f8f5dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36918dbbfad26310cfe3a3aed5f8f5dc">&#9670;&nbsp;</a></span>sound_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer sound_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;off&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Off&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;local&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;local,11025,1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - low quality&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;local,22050,2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - medium quality&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;local,44100,2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - high quality&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;remote&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l01961">1961</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__plugin_8c.html">rdp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__plugin_8c.js b/docs/rdp__plugin_8c.js
new file mode 100644
index 000000000..42eb1d07b
--- /dev/null
+++ b/docs/rdp__plugin_8c.js
@@ -0,0 +1,54 @@
+var rdp__plugin_8c =
+[
+ [ "buildconfig_strstr", "rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591", null ],
+ [ "complete_cleanup_on_main_thread", "rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5", null ],
+ [ "remmina_plugin_entry", "rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_rdp_authenticate", "rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676", null ],
+ [ "remmina_rdp_call_feature", "rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19", null ],
+ [ "remmina_rdp_close_connection", "rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76", null ],
+ [ "remmina_rdp_find_prdriver", "rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f", null ],
+ [ "remmina_rdp_get_screenshot", "rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30", null ],
+ [ "remmina_rdp_gw_authenticate", "rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579", null ],
+ [ "remmina_rdp_init", "rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309", null ],
+ [ "remmina_rdp_keystroke", "rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b", null ],
+ [ "remmina_rdp_load_static_channel_addin", "rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2", null ],
+ [ "remmina_rdp_main", "rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0", null ],
+ [ "remmina_rdp_main_loop", "rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9", null ],
+ [ "remmina_rdp_main_thread", "rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54", null ],
+ [ "remmina_rdp_open_connection", "rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5", null ],
+ [ "remmina_rdp_post_connect", "rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc", null ],
+ [ "remmina_rdp_post_disconnect", "rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046", null ],
+ [ "remmina_rdp_pre_connect", "rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789", null ],
+ [ "remmina_rdp_query_feature", "rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43", null ],
+ [ "remmina_rdp_send_ctrlaltdel", "rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e", null ],
+ [ "remmina_rdp_set_printers", "rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31", null ],
+ [ "remmina_rdp_tunnel_init", "rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af", null ],
+ [ "remmina_rdp_verify_certificate", "rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797", null ],
+ [ "remmina_rdp_verify_changed_certificate", "rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5", null ],
+ [ "rf_auto_reconnect", "rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7", null ],
+ [ "rf_begin_paint", "rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf", null ],
+ [ "rf_desktop_resize", "rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901", null ],
+ [ "rf_end_paint", "rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f", null ],
+ [ "rf_keyboard_set_ime_status", "rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b", null ],
+ [ "rf_keyboard_set_indicators", "rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4", null ],
+ [ "rf_play_sound", "rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde", null ],
+ [ "rf_process_event_queue", "rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29", null ],
+ [ "rfi_uninit", "rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b", null ],
+ [ "clientbuild_list", "rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5", null ],
+ [ "clientbuild_tooltip", "rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243", null ],
+ [ "colordepth_list", "rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1", null ],
+ [ "gfx_h264_available", "rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f", null ],
+ [ "gwtransp_list", "rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626", null ],
+ [ "quality_list", "rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7", null ],
+ [ "remmina_plugin_rdp_version", "rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4", null ],
+ [ "remmina_plugin_service", "rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_rdp", "rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a", null ],
+ [ "remmina_rdp_advanced_settings", "rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f", null ],
+ [ "remmina_rdp_basic_settings", "rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1", null ],
+ [ "remmina_rdp_features", "rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e", null ],
+ [ "remmina_rdp_plugin_default_drive_name", "rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66", null ],
+ [ "remmina_rdpf", "rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619", null ],
+ [ "remmina_rdps", "rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba", null ],
+ [ "security_list", "rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f", null ],
+ [ "sound_list", "rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__plugin_8c_source.html b/docs/rdp__plugin_8c_source.html
new file mode 100644
index 000000000..e79233986
--- /dev/null
+++ b/docs/rdp__plugin_8c_source.html
@@ -0,0 +1,306 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__plugin_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-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-2020 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;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#define _GNU_SOURCE</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="rdp__plugin_8h.html">rdp_plugin.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="rdp__event_8h.html">rdp_event.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="rdp__graphics_8h.html">rdp_graphics.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="rdp__file_8h.html">rdp_file.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="rdp__settings_8h.html">rdp_settings.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="rdp__cliprdr_8h.html">rdp_cliprdr.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="rdp__channels_8h.html">rdp_channels.h</a>&quot;</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 &lt;errno.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &lt;time.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &lt;cairo/cairo-xlib.h&gt;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &lt;freerdp/addin.h&gt;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &lt;freerdp/settings.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &lt;freerdp/constants.h&gt;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cliprdr.h&gt;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/channels.h&gt;</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cmdline.h&gt;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &lt;freerdp/error.h&gt;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#include &lt;freerdp/event.h&gt;</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#include &lt;winpr/memory.h&gt;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#include &lt;ctype.h&gt;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#ifdef HAVE_CUPS</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &lt;cups/cups.h&gt;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#include &lt;X11/Xlib.h&gt;</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#include &lt;X11/XKBlib.h&gt;</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#if defined(__FreeBSD__)</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#include &lt;pthread_np.h&gt;</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#endif</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="preprocessor">#define REMMINA_RDP_FEATURE_TOOL_REFRESH 1</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#define REMMINA_RDP_FEATURE_SCALE 2</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#define REMMINA_RDP_FEATURE_UNFOCUS 3</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#define REMMINA_RDP_FEATURE_TOOL_SENDCTRLALTDEL 4</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#define REMMINA_RDP_FEATURE_DYNRESUPDATE 5</span></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="comment">/* Some string settings of FreeRDP are preallocated buffers of N bytes */</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#define FREERDP_CLIENTHOSTNAME_LEN 32</span></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="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 89</a></span>&#160;<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66"> 90</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">remmina_rdp_plugin_default_drive_name</a>[] = <span class="stringliteral">&quot;RemminaDisk&quot;</span>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f"> 92</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> = FALSE;</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="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29"> 94</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rf_process_event_queue</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; UINT16 flags;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; rdpInput *input;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> *event;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; DISPLAY_CONTROL_MONITOR_LAYOUT *dcml;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; CLIPRDR_FORMAT_DATA_RESPONSE response = { 0 };</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="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a> == NULL)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> True;</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; input = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;input;</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="keywordflow">while</span> ((event = (<a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> *)g_async_queue_try_pop(rfi-&gt;<a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a>)) != NULL) {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">switch</span> (event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a>) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a>:</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; flags = <span class="keyword">event</span>-&gt;key_event.extended ? KBD_FLAGS_EXTENDED : 0;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; flags |= <span class="keyword">event</span>-&gt;key_event.up ? KBD_FLAGS_RELEASE : KBD_FLAGS_DOWN;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; input-&gt;KeyboardEvent(input, flags, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.key_code);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>:</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> * TS_UNICODE_KEYBOARD_EVENT RDP message, see https://msdn.microsoft.com/en-us/library/cc240585.aspx</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; flags = <span class="keyword">event</span>-&gt;key_event.up ? KBD_FLAGS_RELEASE : KBD_FLAGS_DOWN;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; input-&gt;UnicodeKeyboardEvent(input, flags, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a>.unicode_code);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>:</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.extended)</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; input-&gt;ExtendedMouseEvent(input, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.flags,</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.x, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.y);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; input-&gt;MouseEvent(input, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.flags,</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.x, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a>.y);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a>:</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>-&gt;ClientFormatList(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">clipboard_formatlist</a>.pFormatList);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; free(event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">clipboard_formatlist</a>.pFormatList);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a>:</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; response.msgFlags = (<span class="keyword">event</span>-&gt;clipboard_formatdataresponse.data) ? CB_RESPONSE_OK : CB_RESPONSE_FAIL;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; response.dataLen = <span class="keyword">event</span>-&gt;clipboard_formatdataresponse.size;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; response.requestedFormatData = <span class="keyword">event</span>-&gt;clipboard_formatdataresponse.data;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>-&gt;ClientFormatDataResponse(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>, &amp;response);</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;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a>:</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>-&gt;ClientFormatDataRequest(rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>, event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">clipboard_formatdatarequest</a>.pFormatDataRequest);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; free(event-&gt;<a class="code" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">clipboard_formatdatarequest</a>.pFormatDataRequest);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a>:</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; dcml = g_malloc0(<span class="keyword">sizeof</span>(DISPLAY_CONTROL_MONITOR_LAYOUT));</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">if</span> (dcml) {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; dcml-&gt;Flags = DISPLAY_CONTROL_MONITOR_PRIMARY;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; dcml-&gt;Width = <span class="keyword">event</span>-&gt;monitor_layout.width;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; dcml-&gt;Height = <span class="keyword">event</span>-&gt;monitor_layout.height;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; dcml-&gt;Orientation = <span class="keyword">event</span>-&gt;monitor_layout.desktopOrientation;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; dcml-&gt;DesktopScaleFactor = <span class="keyword">event</span>-&gt;monitor_layout.desktopScaleFactor;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; dcml-&gt;DeviceScaleFactor = <span class="keyword">event</span>-&gt;monitor_layout.deviceScaleFactor;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a>-&gt;SendMonitorLayout(rfi-&gt;<a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a>, 1, dcml);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; g_free(dcml);</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="keywordflow">break</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">case</span> <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a>:</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="comment">/* Disconnect requested via GUI (i.e: tab destroy/close) */</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; freerdp_abort_connect(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; g_free(event);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> True;</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="l00176"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af"> 176</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">remmina_rdp_tunnel_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="comment">/* Opens the optional SSH tunnel if needed.</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> * Used also when reopening the same tunnel for a FreeRDP reconnect.</span></div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> * Returns TRUE if all OK, and setups correct rfi-&gt;Settings values</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment"> * with connection and certificate parameters */</span></div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gchar *hostport;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; gchar *s;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; gchar *host;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; gchar *cert_host;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; gint cert_port;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; gint port;</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; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Tunnel init&quot;</span>);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; hostport = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, 3389, FALSE);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">if</span> (hostport == NULL)</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(hostport, 3389, &amp;host, &amp;port);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;protocol_plugin_start_direct_tunnel() returned %s&quot;</span>, hostport);</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; cert_host = host;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; cert_port = port;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">if</span> (!rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>) {</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="comment">/* settings-&gt;CertificateName and settings-&gt;ServerHostname is created</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> * only on 1st connect, not on reconnections */</span></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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname = strdup(host);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">if</span> (cert_port == 3389) {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;CertificateName = strdup(cert_host);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s:%d&quot;</span>, cert_host, cert_port);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;CertificateName = strdup(s);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; g_free(s);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Tunnel has been optionally initialized. Now connecting to %s:%d&quot;</span>, host, port);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">if</span> (cert_host != host) g_free(cert_host);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; g_free(host);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; g_free(hostport);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerPort = port;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</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; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7"> 233</a></span>&#160;BOOL <a class="code" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rf_auto_reconnect</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi)</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"> 235</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; rdpSettings *settings = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;settings;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; time_t treconn;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = TRUE;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a> = settings-&gt;AutoReconnectMaxRetries;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a> = 0;</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; <span class="comment">/* Only auto reconnect on network disconnects. */</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (freerdp_error_info(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>) != 0) {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = FALSE;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</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; <span class="keywordflow">if</span> (!settings-&gt;AutoReconnectionEnabled) {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="comment">/* No auto-reconnect - just quit */</span></div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = FALSE;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; }</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="comment">/* A network disconnect was detected and we should try to reconnect */</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] network disconnection detected, initiating reconnection attempt&quot;</span>,</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</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; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a>;</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <a class="code" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="comment">/* Sleep half a second to allow:</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> * - processing of the UI event we just pushed on the queue</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment"> * - better network conditions</span></div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="comment"> * Remember: We hare on a thread, so the main gui won’t lock */</span></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; usleep(500000);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="comment">/* Perform an auto-reconnect. */</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="comment">/* Quit retrying if max retries has been exceeded */</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a>++ &gt;= rfi-&gt;<a class="code" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a>) {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] maximum number of reconnection attempts exceeded.&quot;</span>,</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">break</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; <span class="comment">/* Attempt the next reconnect */</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] reconnection, attempt #%d of %d&quot;</span>,</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname, rfi-&gt;<a class="code" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a>, rfi-&gt;<a class="code" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a>);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui);</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; treconn = time(NULL);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">/* Reconnect the SSH tunnel, if needed */</span></div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">remmina_rdp_tunnel_init</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>)) {</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] unable to recreate tunnel with remmina_rdp_tunnel_init.&quot;</span>,</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (freerdp_reconnect(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>)) {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="comment">/* Reconnection is successful */</span></div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] reconnected.&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = FALSE;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="comment">/* Wait until 5 secs have elapsed from last reconnect attempt */</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">while</span> (time(NULL) - treconn &lt; 5)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; sleep(1);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = FALSE;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf"> 312</a></span>&#160;BOOL <a class="code" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rf_begin_paint</a>(rdpContext *context)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; rdpGdi *gdi;</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; <span class="keywordflow">if</span> (!context)</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> FALSE;</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; gdi = context-&gt;gdi;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (!gdi || !gdi-&gt;primary || !gdi-&gt;primary-&gt;hdc || !gdi-&gt;primary-&gt;hdc-&gt;hwnd)</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;}</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f"> 327</a></span>&#160;BOOL <a class="code" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rf_end_paint</a>(rdpContext *context)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;{</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; rdpGdi *gdi;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordtype">int</span> i, ninvalid;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="structregion.html">region</a> *reg;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; HGDI_RGN cinvalid;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gdi = context-&gt;gdi;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)context;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">if</span> (gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;invalid-&gt;null)</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">if</span> (gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;ninvalid &lt; 1)</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; ninvalid = gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;ninvalid;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; cinvalid = gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;cinvalid;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; reg = (<a class="code" href="structregion.html">region</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structregion.html">region</a>) * ninvalid);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; ninvalid; i++) {</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; reg[i].<a class="code" href="structregion.html#ad258e7b02e819b46656294de5e4bd8ad">x</a> = cinvalid[i].x;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; reg[i].<a class="code" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">y</a> = cinvalid[i].y;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; reg[i].<a class="code" href="structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6">w</a> = cinvalid[i].w;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; reg[i].<a class="code" href="structregion.html#a585e1a437e6e8f8a80785aec2f2762c8">h</a> = cinvalid[i].h;</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"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a>;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ninvalid = ninvalid;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a>.ureg = reg;</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; <a class="code" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>, ui);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</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; gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;invalid-&gt;null = TRUE;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gdi-&gt;primary-&gt;hdc-&gt;hwnd-&gt;ninvalid = 0;</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"> 368</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901"> 371</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rf_desktop_resize</a>(rdpContext *context)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;{</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)context;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopHeight);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a>;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">event</a>.type = <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a>;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(gp, ui);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="comment">/* Tell libfreerdp to change its internal GDI bitmap width and heigt,</span></div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<span class="comment"> * this will also destroy gdi-&gt;primary_buffer, making our rfi-&gt;surface invalid */</span></div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gdi_resize(((rdpContext *)rfi)-&gt;gdi, rfi-&gt;settings-&gt;DesktopWidth, rfi-&gt;settings-&gt;DesktopHeight);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="comment">/* Call to remmina_rdp_event_update_scale(gp) on the main UI thread,</span></div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="comment"> * this will recreate rfi-&gt;surface from gdi-&gt;primary_buffer */</span></div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a>;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">event</a>.type = <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <a class="code" href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a>(gp, ui);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">protocol_plugin_desktop_resize</a>(gp);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde"> 406</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rf_play_sound</a>(rdpContext *context, <span class="keyword">const</span> PLAY_SOUND_UPDATE *play_sound)</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;{</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; GdkDisplay *disp;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)context;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</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; disp = gtk_widget_get_display(GTK_WIDGET(gp));</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gdk_display_beep(disp);</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;}</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4"> 422</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rf_keyboard_set_indicators</a>(rdpContext *context, UINT16 led_flags)</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;{</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; GdkDisplay *disp;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)context;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; disp = gtk_widget_get_display(GTK_WIDGET(gp));</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">if</span> (GDK_IS_X11_DISPLAY(disp)) {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="comment">/* TODO: We are not on the main thread. Will X.Org complain? */</span></div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; Display *x11_display;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; x11_display = gdk_x11_display_get_xdisplay(disp);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; XkbLockModifiers(x11_display, XkbUseCoreKbd,</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; LockMask | Mod2Mask,</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; ((led_flags &amp; KBD_SYNC_CAPS_LOCK) ? LockMask : 0) |</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; ((led_flags &amp; KBD_SYNC_NUM_LOCK) ? Mod2Mask : 0)</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;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="comment">/* TODO: Add support to KANA_LOCK and SCROLL_LOCK */</span></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"> 446</span>&#160;<span class="preprocessor">#endif</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b"> 451</a></span>&#160;BOOL <a class="code" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rf_keyboard_set_ime_status</a>(rdpContext *context, UINT16 imeId, UINT32 imeState,</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; UINT32 imeConvMode)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">if</span> (!context)</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="comment">/* Unimplemented, we ignore it */</span></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789"> 464</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">remmina_rdp_pre_connect</a>(freerdp *instance)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; ALIGN64 rdpSettings *settings;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; settings = instance-&gt;settings;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; settings-&gt;OsMajorType = OSMAJORTYPE_UNIX;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; settings-&gt;OsMinorType = OSMINORTYPE_UNSPECIFIED;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; settings-&gt;BitmapCacheEnabled = True;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; settings-&gt;OffscreenSupportLevel = True;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; if (settings-&gt;RemoteFxCodec == True) {</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; settings-&gt;FrameAcknowledge = False;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; settings-&gt;LargePointerFlag = True;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; settings-&gt;PerformanceFlags = PERF_FLAG_NONE;</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; rfi-&gt;<a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a> = rfx_context_new(FALSE);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; }</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; PubSub_SubscribeChannelConnected(instance-&gt;context-&gt;pubSub,</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; (pChannelConnectedEventHandler)<a class="code" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a>);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; PubSub_SubscribeChannelDisconnected(instance-&gt;context-&gt;pubSub,</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; (pChannelDisconnectedEventHandler)<a class="code" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a>);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; freerdp_client_load_addins(instance-&gt;context-&gt;channels, instance-&gt;settings);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">return</span> True;</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;</div><div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc"> 497</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">remmina_rdp_post_connect</a>(freerdp *instance)</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;{</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *ui;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; UINT32 freerdp_local_color_format;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">postconnect_error</a> = REMMINA_POSTCONNECT_ERROR_OK;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a> = FALSE; <span class="comment">// We authenticated!</span></div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a> = rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; if (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RemoteFxCodec == FALSE)</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">sw_gdi</a> = TRUE;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a>(instance-&gt;context-&gt;graphics);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a> == 32) {</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; freerdp_local_color_format = PIXEL_FORMAT_BGRA32;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a> = CAIRO_FORMAT_ARGB32;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a> == 24) {</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="comment">/* CAIRO_FORMAT_RGB24 is 32bit aligned, so we map it to libfreerdp’s PIXEL_FORMAT_BGRX32 */</span></div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; freerdp_local_color_format = PIXEL_FORMAT_BGRX32;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a> = CAIRO_FORMAT_RGB24;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; freerdp_local_color_format = PIXEL_FORMAT_RGB16;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a> = CAIRO_FORMAT_RGB16_565;</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;</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">if</span> (!gdi_init(instance, freerdp_local_color_format)) {</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">postconnect_error</a> = REMMINA_POSTCONNECT_ERROR_GDI_INIT;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="keywordflow">if</span> (instance-&gt;context-&gt;codecs-&gt;h264 == NULL &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxH264) {</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gdi_free(instance);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">postconnect_error</a> = REMMINA_POSTCONNECT_ERROR_NO_H264;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; }</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="comment">// pointer_cache_register_callbacks(instance-&gt;update);</span></div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; instance-&gt;update-&gt;BeginPaint = <a class="code" href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rf_begin_paint</a>;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; instance-&gt;update-&gt;EndPaint = <a class="code" href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rf_end_paint</a>;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; instance-&gt;update-&gt;DesktopResize = <a class="code" href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rf_desktop_resize</a>;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; instance-&gt;update-&gt;PlaySound = <a class="code" href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rf_play_sound</a>;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; instance-&gt;update-&gt;SetKeyboardIndicators = <a class="code" href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rf_keyboard_set_indicators</a>;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; instance-&gt;update-&gt;SetKeyboardImeStatus = <a class="code" href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rf_keyboard_set_ime_status</a>;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a>(rfi);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> = True;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; ui = g_new0(<a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>, 1);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; ui-&gt;<a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a> = <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <a class="code" href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a>(gp, ui);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;}</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676"> 561</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">remmina_rdp_authenticate</a>(freerdp *instance, <span class="keywordtype">char</span> **username, <span class="keywordtype">char</span> **password, <span class="keywordtype">char</span> **domain)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gchar *s_username, *s_password, *s_domain;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; gint ret;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; gboolean save;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a> | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a>,</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; _(<span class="stringliteral">&quot;Enter RDP authentication credentials&quot;</span>),</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>),</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>),</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; NULL);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; s_username = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a>(gp);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">if</span> (s_username) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username = strdup(s_username);</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; s_password = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">if</span> (s_password) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password = strdup(s_password);</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; s_domain = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">protocol_plugin_init_get_domain</a>(gp);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordflow">if</span> (s_domain) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain = strdup(s_domain);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, s_username);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>, s_domain);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="comment">// User has requested to save credentials. We put the password</span></div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="comment">// into remminafile-&gt;settings. It will be saved later, on successful connection, by</span></div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="comment">// rcw.c</span></div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, s_password);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</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;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">if</span> (s_username) g_free(s_username);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="keywordflow">if</span> (s_password) g_free(s_password);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="keywordflow">if</span> (s_domain) g_free(s_domain);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; }</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579"> 620</a></span>&#160;<span class="keyword">static</span> BOOL <a class="code" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">remmina_rdp_gw_authenticate</a>(freerdp *instance, <span class="keywordtype">char</span> **username, <span class="keywordtype">char</span> **password, <span class="keywordtype">char</span> **domain)</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160;{</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gchar *s_username, *s_password, *s_domain;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gint ret;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; gboolean save;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_server&quot;</span>))</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">return</span> False;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a> | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a>,</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; _(<span class="stringliteral">&quot;Enter RDP gateway authentication credentials&quot;</span>),</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>),</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_password&quot;</span>),</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>),</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; NULL);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; s_username = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a>(gp);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <span class="keywordflow">if</span> (s_username) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername = strdup(s_username);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; s_password = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="keywordflow">if</span> (s_password) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword = strdup(s_password);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; s_domain = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">protocol_plugin_init_get_domain</a>(gp);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <span class="keywordflow">if</span> (s_domain) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain = strdup(s_domain);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>, s_username);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>, s_domain);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gateway_password&quot;</span>, s_password);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;gateway_password&quot;</span>, NULL);</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;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">if</span> (s_username) g_free(s_username);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">if</span> (s_password) g_free(s_password);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">if</span> (s_domain) g_free(s_domain);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">return</span> True;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">return</span> False;</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">return</span> True;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;}</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797"> 680</a></span>&#160;<span class="keyword">static</span> DWORD <a class="code" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">remmina_rdp_verify_certificate</a>(freerdp *instance, <span class="keyword">const</span> <span class="keywordtype">char</span> *common_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *subject,</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *issuer, <span class="keyword">const</span> <span class="keywordtype">char</span> *fingerprint, BOOL host_mismatch)</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; gint status;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</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; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; status = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c">protocol_plugin_init_certificate</a>(gp, subject, issuer, fingerprint);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">if</span> (status == GTK_RESPONSE_OK)</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">return</span> 0;</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"><a class="line" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5"> 698</a></span>&#160;<span class="keyword">static</span> DWORD <a class="code" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">remmina_rdp_verify_changed_certificate</a>(freerdp *instance,</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *common_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *subject, <span class="keyword">const</span> <span class="keywordtype">char</span> *issuer,</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *new_fingerprint, <span class="keyword">const</span> <span class="keywordtype">char</span> *old_subject, <span class="keyword">const</span> <span class="keywordtype">char</span> *old_issuer, <span class="keyword">const</span> <span class="keywordtype">char</span> *old_fingerprint)</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;{</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; gint status;</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; status = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee">protocol_plugin_changed_certificate</a>(gp, subject, issuer, new_fingerprint, old_fingerprint);</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <span class="keywordflow">if</span> (status == GTK_RESPONSE_OK)</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;}</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;</div><div class="line"><a name="l00718"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046"> 718</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">remmina_rdp_post_disconnect</a>(freerdp *instance)</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;{</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">if</span> (!instance || !instance-&gt;context)</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; PubSub_UnsubscribeChannelConnected(instance-&gt;context-&gt;pubSub,</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; (pChannelConnectedEventHandler)<a class="code" href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a>);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; PubSub_UnsubscribeChannelDisconnected(instance-&gt;context-&gt;pubSub,</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; (pChannelDisconnectedEventHandler)<a class="code" href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a>);</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; <span class="comment">/* The remaining cleanup will be continued on main thread by complete_cleanup_on_main_thread() */</span></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;}</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;</div><div class="line"><a name="l00734"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9"> 734</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">remmina_rdp_main_loop</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;{</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; DWORD nCount;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; DWORD status;</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; HANDLE handles[64];</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; gchar buf[100];</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="keywordflow">while</span> (!freerdp_shall_disconnect(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>)) {</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; nCount = freerdp_get_event_handles(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context, &amp;handles[0], 64);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>)</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; handles[nCount++] = rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>;</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; handles[nCount++] = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context-&gt;abortEvent;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">if</span> (nCount == 0) {</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;freerdp_get_event_handles failed\n&quot;</span>);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">break</span>;</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;</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; status = WaitForMultipleObjects(nCount, handles, FALSE, 100);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <span class="keywordflow">if</span> (status == WAIT_FAILED) {</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;WaitForMultipleObjects failed with %lu\n&quot;</span>, (<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>)status);</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <span class="keywordflow">break</span>;</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"> 762</span>&#160;</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a> &amp;&amp; WaitForSingleObject(rfi-&gt;<a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>, 0) == WAIT_OBJECT_0) {</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rf_process_event_queue</a>(gp)) {</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;Could not process local keyboard/mouse event queue\n&quot;</span>);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">break</span>;</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"> 768</span>&#160; <span class="keywordflow">if</span> (read(rfi-&gt;<a class="code" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a>[0], buf, <span class="keyword">sizeof</span>(buf))) {</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; }</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; <span class="comment">/* Check if a processed event called freerdp_abort_connect() and exit if true */</span></div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keywordflow">if</span> (WaitForSingleObject(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context-&gt;abortEvent, 0) == WAIT_OBJECT_0)</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; <span class="comment">/* Session disconnected by local user action */</span></div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">if</span> (!freerdp_check_event_handles(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context)) {</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rf_auto_reconnect</a>(rfi)) {</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="comment">/* Reset the possible reason/error which made us doing many reconnection reattempts and continue */</span></div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, NULL);</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; }</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <span class="keywordflow">if</span> (freerdp_get_last_error(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context) == FREERDP_ERROR_SUCCESS)</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;Could not check FreeRDP file descriptor\n&quot;</span>);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; }</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; }</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; freerdp_disconnect(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;RDP client disconnected&quot;</span>);</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;}</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2"> 792</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(rdpChannels *channels, rdpSettings *settings, <span class="keywordtype">char</span> *name, <span class="keywordtype">void</span> *data)</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;{</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; PVIRTUALCHANNELENTRY entry = NULL;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; PVIRTUALCHANNELENTRYEX entryEx = NULL;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; entryEx = (PVIRTUALCHANNELENTRYEX)(<span class="keywordtype">void</span>*)freerdp_load_channel_addin_entry(</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC | FREERDP_ADDIN_CHANNEL_ENTRYEX);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <span class="keywordflow">if</span> (!entryEx)</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; entry = freerdp_load_channel_addin_entry(name, NULL, NULL, FREERDP_ADDIN_CHANNEL_STATIC);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <span class="keywordflow">if</span> (entryEx)</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"> 805</span>&#160; <span class="keywordflow">if</span> (freerdp_channels_client_load_ex(channels, settings, entryEx, data) == 0)</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; fprintf(stderr, <span class="stringliteral">&quot;loading channel %s\n&quot;</span>, name);</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; }</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; }</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (entry)</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; <span class="keywordflow">if</span> (freerdp_channels_client_load(channels, settings, entry, data) == 0)</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; {</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; fprintf(stderr, <span class="stringliteral">&quot;loading channel %s\n&quot;</span>, name);</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; }</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;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;}</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160;</div><div class="line"><a name="l00823"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f"> 823</a></span>&#160;gchar *<a class="code" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">remmina_rdp_find_prdriver</a>(<span class="keywordtype">char</span> *smap, <span class="keywordtype">char</span> *prn)</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; <span class="keywordtype">char</span> c, *p, *dr;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordtype">int</span> matching;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <span class="keywordtype">size_t</span> sz;</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="keyword">enum</span> { S_WAITPR,</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; S_INPRINTER,</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; S_WAITCOLON,</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; S_WAITDRIVER,</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; S_INDRIVER,</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; S_WAITSEMICOLON } state = S_WAITPR;</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; matching = 0;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <span class="keywordflow">while</span> ((c = *smap++) != 0) {</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <span class="keywordflow">switch</span> (state) {</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">case</span> S_WAITPR:</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <span class="keywordflow">if</span> (c != <span class="charliteral">&#39;\&quot;&#39;</span>) <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; state = S_INPRINTER;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; p = prn;</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; matching = 1;</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <span class="keywordflow">case</span> S_INPRINTER:</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; <span class="keywordflow">if</span> (matching &amp;&amp; c == *p &amp;&amp; *p != 0) {</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; p++;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (c == <span class="charliteral">&#39;\&quot;&#39;</span>) {</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <span class="keywordflow">if</span> (*p != 0)</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; matching = 0;</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; state = S_WAITCOLON;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; matching = 0;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; }</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; <span class="keywordflow">case</span> S_WAITCOLON:</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; <span class="keywordflow">if</span> (c != <span class="charliteral">&#39;:&#39;</span>)</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; state = S_WAITDRIVER;</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <span class="keywordflow">case</span> S_WAITDRIVER:</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; <span class="keywordflow">if</span> (c != <span class="charliteral">&#39;\&quot;&#39;</span>)</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; state = S_INDRIVER;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; dr = smap;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; <span class="keywordflow">case</span> S_INDRIVER:</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; <span class="keywordflow">if</span> (c == <span class="charliteral">&#39;\&quot;&#39;</span>) {</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; <span class="keywordflow">if</span> (matching)</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; <span class="keywordflow">goto</span> found;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; state = S_WAITSEMICOLON;</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; }</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <span class="keywordflow">case</span> S_WAITSEMICOLON:</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <span class="keywordflow">if</span> (c != <span class="charliteral">&#39;;&#39;</span>)</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; state = S_WAITPR;</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <span class="keywordflow">break</span>;</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"> 881</span>&#160; }</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;found:</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; sz = smap - dr;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; p = (<span class="keywordtype">char</span> *)malloc(sz);</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; memcpy(p, dr, sz);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; p[sz - 1] = 0;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; <span class="keywordflow">return</span> p;</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"> 891</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160;<span class="preprocessor">#ifdef HAVE_CUPS</span></div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160;</div><div class="line"><a name="l00898"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31"> 898</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">remmina_rdp_set_printers</a>(<span class="keywordtype">void</span> *user_data, <span class="keywordtype">unsigned</span> flags, cups_dest_t *dest)</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; <a class="code" href="structrf__context.html">rfContext</a> *rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)user_data;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; rdpChannels *channels;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; channels = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context-&gt;channels;</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *model = NULL;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="keyword">const</span> gchar *s = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;printer_overrides&quot;</span>);</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; RDPDR_PRINTER *printer;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; printer = (RDPDR_PRINTER *)calloc(1, <span class="keyword">sizeof</span>(RDPDR_PRINTER));</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; printer-&gt;Type = RDPDR_DTYP_PRINT;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Printer Type: %d&quot;</span>, printer-&gt;Type);</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RedirectPrinters = TRUE;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(channels, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, <span class="stringliteral">&quot;rdpdr&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Destination: %s&quot;</span>, dest-&gt;name);</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; <span class="keywordflow">if</span> (!(printer-&gt;Name = _strdup(dest-&gt;name))) {</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; free(printer);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; }</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Printer Name: %s&quot;</span>, printer-&gt;Name);</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="keywordflow">if</span> (s) {</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; gchar *d = <a class="code" href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">remmina_rdp_find_prdriver</a>(strdup(s), printer-&gt;Name);</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="keywordflow">if</span> (d) {</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; printer-&gt;DriverName = strdup(d);</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Printer DriverName set to: %s&quot;</span>, printer-&gt;DriverName);</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; g_free(d);</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; free(printer-&gt;Name);</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; free(printer);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; }</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; <span class="comment">/* We set to a default driver*/</span></div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; model = _strdup(<span class="stringliteral">&quot;MS Publisher Imagesetter&quot;</span>);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; printer-&gt;DriverName = _strdup(model);</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;</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Printer Driver: %s&quot;</span>, printer-&gt;DriverName);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; <span class="keywordflow">if</span> (!freerdp_device_collection_add(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (RDPDR_DEVICE *)printer)) {</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; free(printer-&gt;DriverName);</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; free(printer-&gt;Name);</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; free(printer);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; }</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;}</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_CUPS */</span><span class="preprocessor"></span></div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160;</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160;<span class="comment">/* Send Ctrl+Alt+Del keystrokes to the plugin drawing_area widget */</span></div><div class="line"><a name="l00976"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e"> 976</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">remmina_rdp_send_ctrlaltdel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160;{</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; guint keys[] = { GDK_KEY_Control_L, GDK_KEY_Alt_L, GDK_KEY_Delete };</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>,</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; keys, G_N_ELEMENTS(keys), GDK_KEY_PRESS | GDK_KEY_RELEASE);</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;</div><div class="line"><a name="l00986"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0"> 986</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">remmina_rdp_main</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160;{</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; <span class="keyword">const</span> gchar *s;</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; gchar *sm;</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; gchar *value;</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; gint rdpsnd_rate;</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; gint rdpsnd_channel;</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; <span class="keywordtype">char</span> *rdpsnd_params[3];</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; <span class="keywordtype">int</span> rdpsnd_nparams;</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; <span class="keywordtype">char</span> rdpsnd_param1[16];</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; <span class="keywordtype">char</span> rdpsnd_param2[16];</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; <span class="keyword">const</span> gchar *cs;</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; rdpChannels *channels;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; gchar *gateway_host;</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; gint gateway_port;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; gint desktopOrientation, desktopScaleFactor, deviceScaleFactor;</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; channels = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context-&gt;channels;</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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"> 1011</span>&#160;<span class="preprocessor">#if defined(PROXY_TYPE_IGNORE)</span></div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;useproxyenv&quot;</span>, FALSE) ? TRUE : FALSE) {</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Not using system proxy settings&quot;</span>);</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyType = PROXY_TYPE_IGNORE;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; }</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">remmina_rdp_tunnel_init</a>(gp))</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AutoReconnectionEnabled = (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableautoreconnect&quot;</span>, FALSE) ? FALSE : TRUE);</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; <span class="comment">/* Disable RDP auto reconnection when SSH tunnel is enabled */</span></div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE))</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AutoReconnectionEnabled = FALSE;</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 66);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SoftwareGdi = TRUE;</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; <span class="comment">/* Avoid using H.264 modes if they are not available on libfreerdp */</span></div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> &amp;&amp; (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth == 65 || rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth == 66))</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = 64; <span class="comment">// Fallback to GFX RFX</span></div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth == 0) {</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; <span class="comment">/* RFX (Win7)*/</span></div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RemoteFxCodec = TRUE;</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportGraphicsPipeline = FALSE;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = 32;</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth == 64) {</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; <span class="comment">/* /gfx:rfx (Win8) */</span></div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = 32;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportGraphicsPipeline = TRUE;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxH264 = FALSE;</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxAVC444 = FALSE;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth == 65) {</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; <span class="comment">/* /gfx:avc420 (Win8.1) */</span></div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = 32;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportGraphicsPipeline = TRUE;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxH264 = TRUE;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxAVC444 = FALSE;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth &gt;= 66) {</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; <span class="comment">/* /gfx:avc444 (Win10) */</span></div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ColorDepth = 32;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportGraphicsPipeline = TRUE;</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxH264 = TRUE;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxAVC444 = TRUE;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; }</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a>(gp);</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopHeight = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a>(gp);</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; <span class="comment">/* Workaround for FreeRDP issue #5417: in GFX AVC modes we can&#39;t go under</span></div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;<span class="comment"> * AVC_MIN_DESKTOP_WIDTH x AVC_MIN_DESKTOP_HEIGHT */</span></div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportGraphicsPipeline &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GfxH264) {</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth &lt; AVC_MIN_DESKTOP_WIDTH)</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth = AVC_MIN_DESKTOP_WIDTH;</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopHeight &lt; AVC_MIN_DESKTOP_HEIGHT)</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopHeight = AVC_MIN_DESKTOP_HEIGHT;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; }</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; <span class="comment">/* Workaround for FreeRDP issue #5119. This will make our horizontal resolution</span></div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;<span class="comment"> * an even value, but it will add a vertical black 1 pixel line on the</span></div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;<span class="comment"> * right of the desktop */</span></div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; <span class="keywordflow">if</span> ((rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth &amp; 1) != 0)</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth -= 1;</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"> 1077</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopWidth);</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopHeight);</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>))</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>));</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>))</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;domain&quot;</span>));</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; s = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>);</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; <span class="keywordflow">if</span> (s) rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password = strdup(s);</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AutoLogonEnabled = 1;</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; gchar *proxy_type = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy_type&quot;</span>));</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; gchar *proxy_username = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy_username&quot;</span>));</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; gchar *proxy_password = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy_password&quot;</span>));</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; gchar *proxy_hostname = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy_hostname&quot;</span>));</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; gint proxy_port = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;proxy_port&quot;</span>, 80);</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;proxy_type: %s&quot;</span>, proxy_type);</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;proxy_username: %s&quot;</span>, proxy_username);</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;proxy_password: %s&quot;</span>, proxy_password);</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;proxy_hostname: %s&quot;</span>, proxy_hostname);</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;proxy_port: %d&quot;</span>, proxy_port);</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; <span class="keywordflow">if</span> (proxy_type &amp;&amp; proxy_hostname) {</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(proxy_type, <span class="stringliteral">&quot;no_proxy&quot;</span>) == 0)</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyType = PROXY_TYPE_IGNORE;</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(proxy_type, <span class="stringliteral">&quot;http&quot;</span>) == 0)</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyType = PROXY_TYPE_HTTP;</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(proxy_type, <span class="stringliteral">&quot;socks5&quot;</span>) == 0)</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyType = PROXY_TYPE_SOCKS;</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; g_warning(<span class="stringliteral">&quot;Invalid proxy protocol, at the moment only no_proxy, HTTP and SOCKS5 are supported&quot;</span>);</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;ProxyType set to: %d&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyType);</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyHostname = proxy_hostname;</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; <span class="keywordflow">if</span> (proxy_username)</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyUsername = proxy_username;</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; <span class="keywordflow">if</span> (proxy_password)</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyPassword = proxy_password;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; <span class="keywordflow">if</span> (proxy_port)</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ProxyPort = proxy_port;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; }</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; <span class="comment">/* Remote Desktop Gateway server address */</span></div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayEnabled = FALSE;</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; s = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_server&quot;</span>);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; <span class="keywordflow">if</span> (s) {</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gwtransp&quot;</span>);</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;http&quot;</span>) == 0) {</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayRpcTransport = False;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayHttpTransport = True;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;rpc&quot;</span>) == 0) {</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayRpcTransport = True;</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayHttpTransport = False;</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;auto&quot;</span>) == 0) {</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayRpcTransport = True;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayHttpTransport = True;</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(s, 443, &amp;gateway_host, &amp;gateway_port);</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayHostname = gateway_host;</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPort = gateway_port;</div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayEnabled = TRUE;</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials = TRUE;</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; }</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; <span class="comment">/* Remote Desktop Gateway domain */</span></div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>)) {</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_domain&quot;</span>));</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials = FALSE;</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"> 1151</span>&#160; <span class="comment">/* Remote Desktop Gateway username */</span></div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>)) {</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_username&quot;</span>));</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials = FALSE;</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; <span class="comment">/* Remote Desktop Gateway password */</span></div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; s = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gateway_password&quot;</span>);</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <span class="keywordflow">if</span> (s) {</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword = strdup(s);</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials = FALSE;</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; }</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <span class="comment">/* If no different credentials were provided for the Remote Desktop Gateway</span></div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;<span class="comment"> * use the same authentication credentials for the host */</span></div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayEnabled &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials) {</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; g_free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain);</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain = g_strdup(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain);</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; g_free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername);</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername = g_strdup(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username);</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; g_free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword = g_strdup(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password);</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; <span class="comment">/* Remote Desktop Gateway usage */</span></div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayEnabled)</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; freerdp_set_gateway_usage_method(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>,</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;gateway_usage&quot;</span>, FALSE) ? TSC_PROXY_MODE_DETECT : TSC_PROXY_MODE_DIRECT);</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;<span class="preprocessor">#ifdef WITH_FREERDP_MASTER</span></div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;<span class="preprocessor">#pragma message &quot;Using FreeRDP master branch!&quot;</span></div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; <span class="comment">/* TODO: As soon as FreeRDP 2.0.0-rc5 will be available, implement an ifdef with that version */</span></div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; freerdp_settings_set_string(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (<span class="keywordtype">size_t</span>)FreeRDP_GatewayAccessToken,</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gatewayaccesstoken&quot;</span>));</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayAccessToken = g_strdup(</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;gatewayaccesstoken&quot;</span>));</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AuthenticationLevel = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; remminafile, <span class="stringliteral">&quot;authentication level&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AuthenticationLevel);</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <span class="comment">/* Certificate ignore */</span></div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;IgnoreCertificate = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;cert_ignore&quot;</span>, 0);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;OldLicenseBehaviour = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;old-license&quot;</span>, 0);</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AllowUnanouncedOrdersFromServer = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;relax-order-checks&quot;</span>, 0);</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GlyphSupportLevel = (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;glyph-cache&quot;</span>, 0) ? GLYPH_SUPPORT_FULL : GLYPH_SUPPORT_NONE);</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; <span class="comment">/* ClientHostname is internally preallocated to 32 bytes by libfreerdp */</span></div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; <span class="keywordflow">if</span> ((cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientname&quot;</span>)))</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; strncpy(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ClientHostname, cs, FREERDP_CLIENTHOSTNAME_LEN - 1);</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; strncpy(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ClientHostname, g_get_host_name(), FREERDP_CLIENTHOSTNAME_LEN - 1);</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ClientHostname[FREERDP_CLIENTHOSTNAME_LEN - 1] = 0;</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="comment">/* Client Build number is optional, if not specified defaults to 0, allow for comments to appear after number */</span></div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; <span class="keywordflow">if</span> ((cs=remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientbuild&quot;</span>))) {</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; <span class="keywordflow">if</span> (*cs)</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ClientBuild = strtoul(cs, NULL, 0);</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; }</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"> 1213</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;loadbalanceinfo&quot;</span>)) {</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;LoadBalanceInfo = (BYTE *)strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;loadbalanceinfo&quot;</span>));</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;LoadBalanceInfoLength = (UINT32)strlen((<span class="keywordtype">char</span> *)rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;LoadBalanceInfo);</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; }</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>))</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AlternateShell = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>));</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;execpath&quot;</span>))</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ShellWorkingDirectory = strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;execpath&quot;</span>));</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; sm = g_strdup_printf(<span class="stringliteral">&quot;rdp_quality_%i&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;quality&quot;</span>, DEFAULT_QUALITY_0));</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; value = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(sm);</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; g_free(sm);</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"> 1228</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; value[0]) {</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PerformanceFlags = strtoul(value, NULL, 16);</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; <span class="keywordflow">switch</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;quality&quot;</span>, DEFAULT_QUALITY_0)) {</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; <span class="keywordflow">case</span> 9:</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PerformanceFlags = DEFAULT_QUALITY_9;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; <span class="keywordflow">case</span> 2:</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PerformanceFlags = DEFAULT_QUALITY_2;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; <span class="keywordflow">case</span> 1:</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PerformanceFlags = DEFAULT_QUALITY_1;</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PerformanceFlags = DEFAULT_QUALITY_0;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; }</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; }</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; g_free(value);</div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; <span class="comment">/* PerformanceFlags bitmask need also to be splitted into BOOL variables</span></div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;<span class="comment"> * like rfi-&gt;settings-&gt;DisableWallpaper, rfi-&gt;settings-&gt;AllowFontSmoothing…</span></div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;<span class="comment"> * or freerdp_get_param_bool() function will return the wrong value</span></div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; freerdp_performance_flags_split(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;KeyboardLayout = <a class="code" href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a>();</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"> 1260</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;console&quot;</span>, FALSE))</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ConsoleSession = True;</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"> 1263</span>&#160; cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;security&quot;</span>);</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;rdp&quot;</span>) == 0) {</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RdpSecurity = True;</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;TlsSecurity = False;</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;NlaSecurity = False;</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ExtSecurity = False;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;UseRdpSecurityLayer = True;</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;tls&quot;</span>) == 0) {</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RdpSecurity = False;</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;TlsSecurity = True;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;NlaSecurity = False;</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ExtSecurity = False;</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;nla&quot;</span>) == 0) {</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RdpSecurity = False;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;TlsSecurity = False;</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;NlaSecurity = True;</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ExtSecurity = False;</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"> 1282</span>&#160; <span class="comment">/* This is &quot;-nego&quot; switch of xfreerdp */</span></div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;NegotiateSecurityLayer = True;</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"> 1285</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;CompressionEnabled = True;</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disable_fastpath&quot;</span>, FALSE)) {</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;FastPathInput = False;</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;FastPathOutput = False;</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;FastPathInput = True;</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;FastPathOutput = True;</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"> 1294</span>&#160; <span class="comment">/* Orientation and scaling settings */</span></div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160; <a class="code" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a>(&amp;desktopOrientation, &amp;desktopScaleFactor, &amp;deviceScaleFactor);</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"> 1297</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopOrientation = desktopOrientation;</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160; <span class="keywordflow">if</span> (desktopScaleFactor != 0 &amp;&amp; deviceScaleFactor != 0) {</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DesktopScaleFactor = desktopScaleFactor;</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceScaleFactor = deviceScaleFactor;</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"> 1303</span>&#160; <span class="comment">/* Try to enable &quot;Display Control Virtual Channel Extension&quot;, needed to</span></div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;<span class="comment"> * dynamically resize remote desktop. This will automatically open</span></div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160;<span class="comment"> * the &quot;disp&quot; dynamic channel, if available */</span></div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportDisplayControl = TRUE;</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; <span class="comment">/* Sound settings */</span></div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sound&quot;</span>);</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"> 1312</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(cs, <span class="stringliteral">&quot;remote&quot;</span>) == 0) {</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RemoteConsoleAudio = TRUE;</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_str_has_prefix(cs, <span class="stringliteral">&quot;local&quot;</span>)) {</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AudioPlayback = TRUE;</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE; <span class="comment">/* rdpsnd requires rdpdr to be registered */</span></div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; rdpsnd_nparams = 0;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; rdpsnd_params[rdpsnd_nparams++] = <span class="stringliteral">&quot;rdpsnd&quot;</span>;</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; cs = strchr(cs, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; <span class="keywordflow">if</span> (cs) {</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; rdpsnd_rate = atoi(cs + 1);</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160; <span class="keywordflow">if</span> (rdpsnd_rate &gt; 1000 &amp;&amp; rdpsnd_rate &lt; 150000) {</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160; snprintf(rdpsnd_param1, <span class="keyword">sizeof</span>(rdpsnd_param1), <span class="stringliteral">&quot;rate:%d&quot;</span>, rdpsnd_rate);</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160; rdpsnd_params[rdpsnd_nparams++] = rdpsnd_param1;</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160; cs = strchr(cs + 1, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; <span class="keywordflow">if</span> (cs) {</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; rdpsnd_channel = atoi(cs + 1);</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; <span class="keywordflow">if</span> (rdpsnd_channel &gt;= 1 &amp;&amp; rdpsnd_channel &lt;= 2) {</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160; snprintf(rdpsnd_param2, <span class="keyword">sizeof</span>(rdpsnd_param2), <span class="stringliteral">&quot;channel:%d&quot;</span>, rdpsnd_channel);</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160; rdpsnd_params[rdpsnd_nparams++] = rdpsnd_param2;</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; }</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; }</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; freerdp_client_add_static_channel(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, rdpsnd_nparams, (<span class="keywordtype">char</span> **)rdpsnd_params);</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; <span class="comment">/* Disable sound */</span></div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;AudioPlayback = FALSE;</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RemoteConsoleAudio = FALSE;</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;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;microphone&quot;</span>, FALSE) ? TRUE : FALSE) {</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; <span class="keywordtype">char</span> *p[1];</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="keywordtype">int</span> count;</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; count = 1;</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; p[0] = <span class="stringliteral">&quot;audin&quot;</span>;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; freerdp_client_add_dynamic_channel(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, count, p);</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; }</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;preferipv6&quot;</span>, FALSE) ? TRUE : FALSE)</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PreferIPv6OverIPv4 = TRUE;</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RedirectClipboard = (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE) ? FALSE : TRUE);</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sharefolder&quot;</span>);</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160;</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; <span class="keywordflow">if</span> (cs &amp;&amp; cs[0] == <span class="charliteral">&#39;/&#39;</span>) {</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; RDPDR_DRIVE *drive;</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160; gsize sz;</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160;</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; drive = (RDPDR_DRIVE *)calloc(1, <span class="keyword">sizeof</span>(RDPDR_DRIVE));</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(channels, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, <span class="stringliteral">&quot;rdpdr&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; s = strrchr(cs, <span class="charliteral">&#39;/&#39;</span>);</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; <span class="keywordflow">if</span> (s == NULL || s[1] == 0)</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160; s = <a class="code" href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">remmina_rdp_plugin_default_drive_name</a>;</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160; s++;</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160; sm = g_convert_with_fallback(s, -1, <span class="stringliteral">&quot;ascii&quot;</span>, <span class="stringliteral">&quot;utf-8&quot;</span>, <span class="stringliteral">&quot;_&quot;</span>, NULL, &amp;sz, NULL);</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; drive-&gt;Type = RDPDR_DTYP_FILESYSTEM;</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160; drive-&gt;Name = _strdup(sm);</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160; drive-&gt;Path = _strdup(cs);</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; g_free(sm);</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; freerdp_device_collection_add(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (RDPDR_DEVICE *)drive);</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</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;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;shareprinter&quot;</span>, FALSE)) {</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;<span class="preprocessor">#ifdef HAVE_CUPS</span></div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Sharing printers&quot;</span>);</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; <span class="keywordflow">if</span> (cupsEnumDests(CUPS_DEST_FLAGS_NONE, 1000, NULL, 0, 0, <a class="code" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">remmina_rdp_set_printers</a>, rfi))</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;All printers have been shared&quot;</span>);</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"> 1393</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Cannot share printers, are there any available?&quot;</span>);</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"> 1396</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_CUPS */</span><span class="preprocessor"></span></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"> 1399</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, FALSE)) {</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; RDPDR_SMARTCARD *smartcard;</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; smartcard = (RDPDR_SMARTCARD *)calloc(1, <span class="keyword">sizeof</span>(RDPDR_SMARTCARD));</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; smartcard-&gt;Type = RDPDR_DTYP_SMARTCARD;</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(channels, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, <span class="stringliteral">&quot;rdpdr&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; <span class="keyword">const</span> gchar *sn = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;smartcardname&quot;</span>);</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; <span class="keywordflow">if</span> (sn != NULL &amp;&amp; sn[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; smartcard-&gt;Name = _strdup(sn);</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RedirectSmartCards = TRUE;</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; freerdp_device_collection_add(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (RDPDR_DEVICE *)smartcard);</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"> 1417</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;passwordispin&quot;</span>, FALSE))</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160; <span class="comment">/* Option works only combined with Username and Domain, because FreeRDP</span></div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;<span class="comment"> * doesn’t know anything about info on smart card */</span></div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;PasswordIsSmartcardPin = 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; <span class="comment">/* /serial[:&lt;name&gt;[,&lt;path&gt;[,&lt;driver&gt;[,permissive]]]] */</span></div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160; if (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;shareserial&quot;</span>, FALSE)) {</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160; RDPDR_SERIAL *serial;</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160; serial = (RDPDR_SERIAL *)calloc(1, <span class="keyword">sizeof</span>(RDPDR_SERIAL));</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; serial-&gt;Type = RDPDR_DTYP_SERIAL;</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(channels, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, <span class="stringliteral">&quot;rdpdr&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</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; <span class="keyword">const</span> gchar *sn = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;serialname&quot;</span>);</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; <span class="keywordflow">if</span> (sn != NULL &amp;&amp; sn[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; serial-&gt;Name = _strdup(sn);</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; <span class="keyword">const</span> gchar *sd = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;serialdriver&quot;</span>);</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <span class="keywordflow">if</span> (sd != NULL &amp;&amp; sd[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; serial-&gt;Driver = _strdup(sd);</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keyword">const</span> gchar *sp = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;serialpath&quot;</span>);</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <span class="keywordflow">if</span> (sp != NULL &amp;&amp; sp[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; serial-&gt;Path = _strdup(sp);</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;serialpermissive&quot;</span>, FALSE))</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; serial-&gt;Permissive = _strdup(<span class="stringliteral">&quot;permissive&quot;</span>);</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RedirectSerialPorts = TRUE;</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; freerdp_device_collection_add(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (RDPDR_DEVICE *)serial);</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; }</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;shareparallel&quot;</span>, FALSE)) {</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; RDPDR_PARALLEL *parallel;</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; parallel = (RDPDR_PARALLEL *)calloc(1, <span class="keyword">sizeof</span>(RDPDR_PARALLEL));</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; parallel-&gt;Type = RDPDR_DTYP_PARALLEL;</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; <a class="code" href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a>(channels, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, <span class="stringliteral">&quot;rdpdr&quot;</span>, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>);</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; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;RedirectParallelPorts = TRUE;</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; <span class="keyword">const</span> gchar *pn = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;parallelname&quot;</span>);</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160; <span class="keywordflow">if</span> (pn != NULL &amp;&amp; pn[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; parallel-&gt;Name = _strdup(pn);</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160; <span class="keyword">const</span> gchar *dp = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;parallelpath&quot;</span>);</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; <span class="keywordflow">if</span> (dp != NULL &amp;&amp; dp[0] != <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160; parallel-&gt;Path = _strdup(dp);</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; freerdp_device_collection_add(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>, (RDPDR_DEVICE *)parallel);</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;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;multitransport&quot;</span>, FALSE)) {</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;DeviceRedirection = TRUE;</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;SupportMultitransport = TRUE;</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;MultitransportFlags =</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; (TRANSPORT_TYPE_UDP_FECR | TRANSPORT_TYPE_UDP_FECL | TRANSPORT_TYPE_UDP_PREFERRED);</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;MultitransportFlags = 0;</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160; }</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="comment">/* If needed, force interactive authentication by deleting all authentication fields,</span></div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160;<span class="comment"> * forcing libfreerdp to call our callbacks for authentication.</span></div><div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160;<span class="comment"> * This usually happens from a second attempt of connection, never on the 1st one. */</span></div><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a>) {</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username);</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Username = NULL;</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password);</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Password = NULL;</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain);</div><div class="line"><a name="l01494"></a><span class="lineno"> 1494</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;Domain = NULL;</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160;</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain);</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain = NULL;</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername);</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername = NULL;</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword) free(rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword);</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayPassword = NULL;</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUseSameCredentials = FALSE;</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; }</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; gboolean orphaned;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; <span class="keywordflow">if</span> (!freerdp_connect(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>)) {</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; <span class="keywordflow">if</span> (GET_PLUGIN_DATA(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>) == NULL) orphaned = True; <span class="keywordflow">else</span> orphaned = False;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160; <span class="keywordflow">if</span> (!orphaned) {</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160; UINT32 e;</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; e = freerdp_get_last_error(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context);</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; <span class="keywordflow">switch</span> (e) {</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_AUTHENTICATION_FAILED:</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; <span class="keywordflow">case</span> STATUS_LOGON_FAILURE: <span class="comment">// wrong return code from FreeRDP introduced at the end of July 2016? (fixed with b86c0ba)</span></div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_LOGON_FAILURE</span></div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_LOGON_FAILURE:</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; <span class="comment">/* Logon failure, will retry with interactive authentication */</span></div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a> = TRUE;</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; <span class="keywordflow">case</span> STATUS_ACCOUNT_LOCKED_OUT:</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_ACCOUNT_LOCKED_OUT</span></div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_ACCOUNT_LOCKED_OUT:</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nAccount locked out.&quot;</span>),</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; <span class="keywordflow">case</span> STATUS_ACCOUNT_EXPIRED:</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_ACCOUNT_EXPIRED</span></div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_ACCOUNT_EXPIRED:</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nAccount expired.&quot;</span>),</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160; <span class="keywordflow">case</span> STATUS_PASSWORD_EXPIRED:</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_PASSWORD_EXPIRED</span></div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_PASSWORD_EXPIRED:</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nPassword expired.&quot;</span>),</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160; <span class="keywordflow">case</span> STATUS_ACCOUNT_DISABLED:</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_ACCOUNT_DISABLED</span></div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_ACCOUNT_DISABLED:</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nAccount disabled.&quot;</span>),</div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_SERVER_INSUFFICIENT_PRIVILEGES</span></div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160; <span class="comment">/* https://msdn.microsoft.com/en-us/library/ee392247.aspx */</span></div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_SERVER_INSUFFICIENT_PRIVILEGES:</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nInsufficient user privileges.&quot;</span>),</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160; <span class="keywordflow">case</span> STATUS_ACCOUNT_RESTRICTION:</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_ACCOUNT_RESTRICTION</span></div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_ACCOUNT_RESTRICTION:</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nAccount restricted.&quot;</span>),</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> STATUS_PASSWORD_MUST_CHANGE:</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_CONNECT_PASSWORD_MUST_CHANGE</span></div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_PASSWORD_MUST_CHANGE:</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not access the RDP server \&quot;%s\&quot;.\nChange user password before connecting.&quot;</span>),</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160;</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_FAILED:</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Lost connection to the RDP server \&quot;%s\&quot;.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_DNS_NAME_NOT_FOUND:</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not find the address for the RDP server \&quot;%s\&quot;.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_TLS_CONNECT_FAILED:</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160; _(<span class="stringliteral">&quot;Could not connect to the RDP server \&quot;%s\&quot; via TLS. Check that client and server support a common TLS version.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_SECURITY_NEGO_CONNECT_FAILED:</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Unable to establish a connection to the RDP server \&quot;%s\&quot;.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_POST_CONNECT_FAILED</span></div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_POST_CONNECT_FAILED:</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; <span class="comment">/* remmina_rdp_post_connect() returned FALSE to libfreerdp. We saved the error on rfi-&gt;postconnect_error */</span></div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; <span class="keywordflow">switch</span> (rfi-&gt;<a class="code" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">postconnect_error</a>) {</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; <span class="keywordflow">case</span> REMMINA_POSTCONNECT_ERROR_OK:</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; <span class="comment">/* We should never come here */</span></div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Cannot connect to the RDP server \&quot;%s\&quot;.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; <span class="keywordflow">case</span> REMMINA_POSTCONNECT_ERROR_GDI_INIT:</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Could not start libfreerdp-gdi.&quot;</span>));</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; <span class="keywordflow">case</span> REMMINA_POSTCONNECT_ERROR_NO_H264:</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;You requested a H.264 GFX mode for the server \&quot;%s\&quot;, but your libfreerdp does not support H.264. Please use a non-AVC colour depth setting.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; }</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;<span class="preprocessor">#ifdef FREERDP_ERROR_SERVER_DENIED_CONNECTION</span></div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_SERVER_DENIED_CONNECTION:</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;The \&quot;%s\&quot; server refused the connection.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; <span class="keywordflow">case</span> 0x800759DB:</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; <span class="comment">// E_PROXY_NAP_ACCESSDENIED https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-tsgu/84cd92e4-592c-4219-95d8-18021ac654b0</span></div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;The Remote Desktop Gateway \&quot;%s\&quot; denied the user \&quot;%s\\%s\&quot; access due to policy.&quot;</span>),</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayHostname, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayDomain, rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;GatewayUsername);</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; <span class="keywordflow">case</span> FREERDP_ERROR_CONNECT_NO_OR_MISSING_CREDENTIALS:</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</a> = TRUE;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; <span class="keywordflow">break</span>;</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="keywordflow">default</span>:</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; g_printf(<span class="stringliteral">&quot;libfreerdp returned code is %08X\n&quot;</span>, e);</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Cannot connect to the \&quot;%s\&quot; RDP server.&quot;</span>), rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>-&gt;ServerHostname);</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160;</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160; }</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160;</div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; <span class="keywordflow">if</span> (GET_PLUGIN_DATA(rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>) == NULL) orphaned = True; <span class="keywordflow">else</span> orphaned = False;</div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160; <span class="keywordflow">if</span> (!orphaned &amp;&amp; freerdp_get_last_error(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>-&gt;context) == FREERDP_ERROR_SUCCESS &amp;&amp; !rfi-&gt;<a class="code" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</a>)</div><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160; <a class="code" href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">remmina_rdp_main_loop</a>(gp);</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="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b"> 1636</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rfi_uninit</a>(<a class="code" href="structrf__context.html">rfContext</a> *rfi)</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; freerdp *instance;</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; instance = rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>;</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160;</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>) {</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">thread_cancelled</a> = TRUE; <span class="comment">// Avoid all rf_queue function to run</span></div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160; pthread_cancel(rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>);</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>)</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160; pthread_join(rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>, NULL);</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;</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160; <span class="keywordflow">if</span> (instance) {</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a>) {</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; freerdp_abort_connect(instance);</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> = False;</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; }</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; }</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; <span class="keywordflow">if</span> (rfi-&gt;<a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a>) {</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; rfx_context_free(rfi-&gt;<a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a>);</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a> = NULL;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; }</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160; <span class="keywordflow">if</span> (instance) {</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160; RDP_CLIENT_ENTRY_POINTS *pEntryPoints = instance-&gt;pClientEntryPoints;</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160; <span class="keywordflow">if</span> (pEntryPoints)</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160; IFCALL(pEntryPoints-&gt;GlobalUninit);</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160; free(instance-&gt;pClientEntryPoints);</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160; freerdp_context_free(instance); <span class="comment">/* context is rfContext* rfi */</span></div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; freerdp_free(instance); <span class="comment">/* This implicitly frees instance-&gt;context and rfi is no longer valid */</span></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;}</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"><a class="line" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5"> 1671</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">complete_cleanup_on_main_thread</a>(gpointer data)</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;{</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; gboolean orphaned;</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)data;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a>(rfi);</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160; gdi_free(rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>);</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; gp = rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; <span class="keywordflow">if</span> (GET_PLUGIN_DATA(gp) == NULL) orphaned = True; <span class="keywordflow">else</span> orphaned = False;</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160;</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; <a class="code" href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a>(gp);</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; <span class="keywordflow">if</span> (!orphaned) <a class="code" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a>(gp);</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160;</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; <span class="keywordflow">if</span> (!orphaned) g_object_steal_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <a class="code" href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rfi_uninit</a>(rfi);</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160;</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; <span class="comment">/* Notify the RemminaProtocolWidget that we closed our connection, and the GUI interface</span></div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160;<span class="comment"> * can be removed */</span></div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; <span class="keywordflow">if</span> (!orphaned)</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;}</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;</div><div class="line"><a name="l01701"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54"> 1701</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">remmina_rdp_main_thread</a>(gpointer data)</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;{</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp;</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160; CANCEL_ASYNC</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a> = FALSE;</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160; <span class="keywordflow">do</span></div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160; <a class="code" href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">remmina_rdp_main</a>(gp);</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160; <span class="keywordflow">while</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">protocol_plugin_has_error</a>(gp) &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a> == TRUE &amp;&amp; !rfi-&gt;<a class="code" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</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; rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a> = 0;</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="comment">/* cleanup */</span></div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; g_idle_add(<a class="code" href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">complete_cleanup_on_main_thread</a>, (gpointer)rfi);</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160;}</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"><a class="line" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309"> 1727</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160; freerdp *instance;</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi;</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160;</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160; instance = freerdp_new();</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160; instance-&gt;PreConnect = <a class="code" href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">remmina_rdp_pre_connect</a>;</div><div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160; instance-&gt;PostConnect = <a class="code" href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">remmina_rdp_post_connect</a>;</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160; instance-&gt;PostDisconnect = <a class="code" href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">remmina_rdp_post_disconnect</a>;</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160; instance-&gt;Authenticate = <a class="code" href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">remmina_rdp_authenticate</a>;</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; instance-&gt;GatewayAuthenticate = <a class="code" href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">remmina_rdp_gw_authenticate</a>;</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160; instance-&gt;VerifyCertificate = <a class="code" href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">remmina_rdp_verify_certificate</a>;</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160; instance-&gt;VerifyChangedCertificate = <a class="code" href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">remmina_rdp_verify_changed_certificate</a>;</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; instance-&gt;ContextSize = <span class="keyword">sizeof</span>(<a class="code" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a>);</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160; freerdp_context_new(instance);</div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160; rfi = (<a class="code" href="structrf__context.html">rfContext</a> *)instance-&gt;<a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</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; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, rfi, free);</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; rfi-&gt;<a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a> = gp;</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a> = instance;</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a> = instance-&gt;settings;</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a> = False;</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a> = False;</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</a> = FALSE;</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160;</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; freerdp_register_addin_provider(freerdp_channels_load_static_addin_entry, 0);</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160; <a class="code" href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">remmina_rdp_event_init</a>(gp);</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;}</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;</div><div class="line"><a name="l01760"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5"> 1760</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;{</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160; <span class="keyword">const</span> gchar *profile_name, *p;</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160; gchar thname[16], c;</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160; gint nthname;</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp);</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160;</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160;</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160;</div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>, NULL, <a class="code" href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">remmina_rdp_main_thread</a>, gp)) {</div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>,</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160; <span class="stringliteral">&quot;Could not start pthread. Falling back to non-thread mode…&quot;</span>);</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a> = 0;</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160; }</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160;</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160; <span class="comment">/* Generate a thread name to be used with pthread_setname_np() for debugging */</span></div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160; profile_name = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>);</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160; p = profile_name;</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160; strcpy(thname, <span class="stringliteral">&quot;RemmRDP:&quot;</span>);</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160; nthname = strlen(thname);</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160; <span class="keywordflow">while</span>((c = *p) != 0 &amp;&amp; nthname &lt; <span class="keyword">sizeof</span>(thname) - 1 ) {</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160; <span class="keywordflow">if</span> (isalnum(c))</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160; thname[nthname++] = c;</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160; p++;</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; }</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160; thname[nthname] = 0;</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160;<span class="preprocessor">#if defined(__linux__)</span></div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160; pthread_setname_np(rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>, thname);</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;<span class="preprocessor">#elif defined(__FreeBSD__)</span></div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160; pthread_set_name_np(rfi-&gt;<a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>, thname);</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160;</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160;}</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160;</div><div class="line"><a name="l01803"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76"> 1803</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160;{</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160; <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> rdp_event = { 0 };</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">is_main_thread</a>())</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160; g_warning(<span class="stringliteral">&quot;WARNING: %s called on a subthread, which may not work or crash Remmina.&quot;</span>, __func__);</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160;</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160; <span class="keywordflow">if</span> (rfi &amp;&amp; !rfi-&gt;<a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a>) {</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160; <span class="comment">/* libfreerdp is attempting to connect, we cannot interrupt our main thread</span></div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160;<span class="comment"> * in the connect phase.</span></div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;<span class="comment"> * So we remove &quot;plugin-data&quot; from gp, so our rfi remains &quot;orphan&quot;</span></div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160; <a class="code" href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a>(gp);</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160; g_object_steal_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160; }</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160;</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160; <span class="keywordflow">if</span> (rfi &amp;&amp; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> == SCDW_BUSY_WAIT) {</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[RDP] requesting clipboard transfer to abort&quot;</span>);</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160; <span class="comment">/* Allow clipboard transfer from server to terminate */</span></div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>.<a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a> = SCDW_ABORTING;</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160; usleep(100000);</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160; }</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160;</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160; rdp_event.<a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a> = <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a>;</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160; <a class="code" href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(gp, &amp;rdp_event);</div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160;</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160;}</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160;</div><div class="line"><a name="l01838"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43"> 1838</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160;{</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160;}</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;</div><div class="line"><a name="l01844"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19"> 1844</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160;{</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; <span class="keywordflow">case</span> REMMINA_RDP_FEATURE_UNFOCUS:</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160; <a class="code" href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a>(gp);</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160; <span class="keywordflow">case</span> REMMINA_RDP_FEATURE_SCALE:</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160; <span class="keywordflow">if</span> (rfi) {</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160; rfi-&gt;<a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a> = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp);</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160; <a class="code" href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a>(gp);</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; printf(<span class="stringliteral">&quot;Remmina RDP plugin warning: Null value for rfi in %s REMMINA_RDP_FEATURE_SCALE\n&quot;</span>, __func__);</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160; }</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160;</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160; <span class="keywordflow">case</span> REMMINA_RDP_FEATURE_DYNRESUPDATE:</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160;</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160; <span class="keywordflow">case</span> REMMINA_RDP_FEATURE_TOOL_REFRESH:</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; <span class="keywordflow">if</span> (rfi) {</div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160; gtk_widget_queue_draw_area(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>, 0, 0,</div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp),</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp));</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160; printf(<span class="stringliteral">&quot;Remmina RDP plugin warning: Null value for rfi in %s REMMINA_RDP_FEATURE_TOOL_REFRESH\n&quot;</span>, __func__);</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160; }</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160;</div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160; <span class="keywordflow">case</span> REMMINA_RDP_FEATURE_TOOL_SENDCTRLALTDEL:</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160; <a class="code" href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">remmina_rdp_send_ctrlaltdel</a>(gp);</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160;</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160; }</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160;}</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160;</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160;<span class="comment">/* Send a keystroke to the plugin window */</span></div><div class="line"><a name="l01886"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b"> 1886</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> guint keystrokes[], <span class="keyword">const</span> gint keylen)</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160;{</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(rfi-&gt;<a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>,</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160; keystrokes, keylen, GDK_KEY_PRESS | GDK_KEY_RELEASE);</div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160;}</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160;</div><div class="line"><a name="l01895"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30"> 1895</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> *rpsd)</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160;{</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160; <a class="code" href="structrf__context.html">rfContext</a> *rfi = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160; rdpGdi *gdi;</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; <span class="keywordtype">size_t</span> szmem;</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160; UINT32 bytesPerPixel;</div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; UINT32 bitsPerPixel;</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160; <span class="keywordflow">if</span> (!rfi)</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160;</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160; gdi = ((rdpContext *)rfi)-&gt;gdi;</div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160;</div><div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160; bytesPerPixel = GetBytesPerPixel(gdi-&gt;hdc-&gt;format);</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160; bitsPerPixel = GetBitsPerPixel(gdi-&gt;hdc-&gt;format);</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160; szmem = gdi-&gt;width * gdi-&gt;height * bytesPerPixel;</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160;</div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;allocating %zu bytes for a full screenshot&quot;</span>, szmem);</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160; rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a> = malloc(szmem);</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160; <span class="keywordflow">if</span> (!rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a>) {</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;could not set aside %zu bytes for a full screenshot&quot;</span>, szmem);</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160; }</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160; rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">width</a> = gdi-&gt;width;</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">height</a> = gdi-&gt;height;</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160; rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a> = bitsPerPixel;</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">bytesPerPixel</a> = bytesPerPixel;</div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;</div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160; memcpy(rpsd-&gt;<a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a>, gdi-&gt;primary_buffer, szmem);</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160;</div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160; <span class="comment">/* Returning TRUE instruct also the caller to deallocate rpsd-&gt;buffer */</span></div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160;}</div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;<span class="comment">/* Array of key/value pairs for colour depths */</span></div><div class="line"><a name="l01935"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1"> 1935</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>[] =</div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160;{</div><div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160; <span class="comment">/* 1st one is the default in a new install */</span></div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160; <span class="stringliteral">&quot;66&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX AVC444 (32 bpp)&quot;</span>),</div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160; <span class="stringliteral">&quot;65&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX AVC420 (32 bpp)&quot;</span>),</div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160; <span class="stringliteral">&quot;64&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;GFX RFX (32 bpp)&quot;</span>),</div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RemoteFX (32 bpp)&quot;</span>),</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160; <span class="stringliteral">&quot;32&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (32 bpp)&quot;</span>),</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160; <span class="stringliteral">&quot;24&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (24 bpp)&quot;</span>),</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160; <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (16 bpp)&quot;</span>),</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160; <span class="stringliteral">&quot;15&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (15 bpp)&quot;</span>),</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160; <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colours (8 bpp)&quot;</span>),</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; NULL</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;};</div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160;</div><div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160;<span class="comment">/* Array of key/value pairs for quality selection */</span></div><div class="line"><a name="l01951"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7"> 1951</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>[] =</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;{</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160; <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160; NULL</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160;};</div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160;</div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160;<span class="comment">/* Array of key/value pairs for sound options */</span></div><div class="line"><a name="l01961"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc"> 1961</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">sound_list</a>[] =</div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160;{</div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160; <span class="stringliteral">&quot;off&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Off&quot;</span>),</div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160; <span class="stringliteral">&quot;local&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local&quot;</span>),</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160; <span class="stringliteral">&quot;local,11025,1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - low quality&quot;</span>),</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160; <span class="stringliteral">&quot;local,22050,2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - medium quality&quot;</span>),</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; <span class="stringliteral">&quot;local,44100,2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local - high quality&quot;</span>),</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160; <span class="stringliteral">&quot;remote&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote&quot;</span>),</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160; NULL</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160;};</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160;<span class="comment">/* Array of key/value pairs for security */</span></div><div class="line"><a name="l01973"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f"> 1973</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">security_list</a>[] =</div><div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160;{</div><div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Negotiate&quot;</span>),</div><div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160; <span class="stringliteral">&quot;nla&quot;</span>, <span class="stringliteral">&quot;NLA&quot;</span>,</div><div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160; <span class="stringliteral">&quot;tls&quot;</span>, <span class="stringliteral">&quot;TLS&quot;</span>,</div><div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>&#160; <span class="stringliteral">&quot;rdp&quot;</span>, <span class="stringliteral">&quot;RDP&quot;</span>,</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160; NULL</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160;};</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160;</div><div class="line"><a name="l01982"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626"> 1982</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">gwtransp_list</a>[] =</div><div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160;{</div><div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160; <span class="stringliteral">&quot;http&quot;</span>, <span class="stringliteral">&quot;HTTP&quot;</span>,</div><div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160; <span class="stringliteral">&quot;rpc&quot;</span>, <span class="stringliteral">&quot;RPC&quot;</span>,</div><div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>&#160; <span class="stringliteral">&quot;auto&quot;</span>, <span class="stringliteral">&quot;Auto&quot;</span>,</div><div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>&#160; NULL</div><div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160;};</div><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160;</div><div class="line"><a name="l01990"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5"> 1990</a></span>&#160;<span class="keyword">static</span> gchar <a class="code" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">clientbuild_list</a>[] =</div><div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;2600 (Windows XP), 7601 (Windows Vista/7), 9600 (Windows 8 and newer)&quot;</span>);</div><div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160;</div><div class="line"><a name="l01993"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243"> 1993</a></span>&#160;<span class="keyword">static</span> gchar <a class="code" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">clientbuild_tooltip</a>[] =</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Used i.a. by terminal services in smart card channel to distinguish client capabilities:\n&quot;</span></div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160; <span class="stringliteral">&quot; • &lt; 4034: Windows XP base smart card functions\n&quot;</span></div><div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160; <span class="stringliteral">&quot; • 4034-7064: Windows Vista/7: SCardReadCache(), SCardWriteCache(),\n&quot;</span></div><div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160; <span class="stringliteral">&quot; SCardGetTransmitCount()\n&quot;</span></div><div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160; <span class="stringliteral">&quot; • &gt;= 7065: Windows 8 and newer: SCardGetReaderIcon(), SCardGetDeviceTypeId()&quot;</span>);</div><div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160;</div><div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l02009"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1"> 2009</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a>[] =</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;{</div><div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;domain&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Domain&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Colour depth&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sharefolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share folder&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;};</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;</div><div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l02030"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f"> 2030</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a>[] =</div><div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;{</div><div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;sound&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Sound&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">sound_list</a>, NULL },</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;security&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Security&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">security_list</a>, NULL },</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;gwtransp&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Gateway transport type&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">gwtransp_list</a>, NULL },</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;gateway_server&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote Desktop Gateway server&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;gateway_username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote Desktop Gateway username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;gateway_password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote Desktop Gateway password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;gateway_domain&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Remote Desktop Gateway domain&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;clientname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Client name&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>, <span class="stringliteral">&quot;clientbuild&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Client build&quot;</span>), FALSE, <a class="code" href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">clientbuild_list</a>, <a class="code" href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">clientbuild_tooltip</a> },</div><div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;execpath&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup path&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;loadbalanceinfo&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Load balance info&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;printer_overrides&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Override printer drivers&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;\&quot;Samsung_CLX-3300_Series\&quot;:\&quot;Samsung CLX-3300 Series PS\&quot;;\&quot;Canon MF410\&quot;:\&quot;Canon MF410 Series UFR II\&quot;&quot;</span>) },</div><div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;serialname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local serial name&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;COM1, COM2, etc.&quot;</span>) },</div><div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;serialdriver&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local serial driver&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Serial&quot;</span>) },</div><div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;serialpath&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local serial path&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;/dev/ttyS0, /dev/ttyS1, etc.&quot;</span>) },</div><div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;parallelname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local parallel name&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;parallelpath&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Local parallel device&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;smartcardname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Name of smart card&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;preferipv6&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Prefer IPv6 AAAA record over IPv4 A record&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;shareprinter&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share printers&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;shareserial&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share serial ports&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;serialpermissive&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;(SELinux) permissive mode for serial ports&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;shareparallel&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share parallel ports&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share a smart card&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;microphone&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Redirect local microphone&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn off clipboard sync&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;cert_ignore&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Ignore certificate&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;old-license&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use the old license workflow&quot;</span>), TRUE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;It disables CAL and hwId is set to 0&quot;</span>) },</div><div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;console&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Attach to console (2003/2003 R2)&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disable_fastpath&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn off fast-path&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;gateway_usage&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Server detection using Remote Desktop Gateway&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;<span class="preprocessor">#if defined(PROXY_TYPE_IGNORE)</span></div><div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;useproxyenv&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use system proxy settings&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableautoreconnect&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn off automatic reconnection&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;relax-order-checks&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Relax order checks&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;glyph-cache&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Glyph cache&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;multitransport&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Enable multitransport protocol (UDP)&quot;</span>), TRUE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Using the UDP protocol may improve performance&quot;</span>) },</div><div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;};</div><div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;</div><div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l02078"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e"> 2078</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a>[] =</div><div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160;{</div><div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_RDP_FEATURE_TOOL_REFRESH, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Refresh&quot;</span>), NULL, NULL },</div><div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, REMMINA_RDP_FEATURE_SCALE, NULL, NULL, NULL },</div><div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a>, REMMINA_RDP_FEATURE_DYNRESUPDATE, NULL, NULL, NULL },</div><div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_RDP_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>, REMMINA_RDP_FEATURE_UNFOCUS, NULL, NULL, NULL },</div><div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;};</div><div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160;</div><div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;<span class="comment">/* This will be filled with version info string */</span></div><div class="line"><a name="l02089"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4"> 2089</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>[256];</div><div class="line"><a name="l02090"></a><span class="lineno"> 2090</span>&#160;</div><div class="line"><a name="l02091"></a><span class="lineno"> 2091</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l02092"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a"> 2092</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a">remmina_rdp</a> =</div><div class="line"><a name="l02093"></a><span class="lineno"> 2093</span>&#160;{</div><div class="line"><a name="l02094"></a><span class="lineno"> 2094</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l02095"></a><span class="lineno"> 2095</span>&#160; <span class="stringliteral">&quot;RDP&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l02096"></a><span class="lineno"> 2096</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - Remote Desktop Protocol&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l02097"></a><span class="lineno"> 2097</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160; <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, <span class="comment">// Version number</span></div><div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160; <span class="stringliteral">&quot;remmina-rdp-symbolic&quot;</span>, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160; <span class="stringliteral">&quot;remmina-rdp-ssh-symbolic&quot;</span>, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160; <a class="code" href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160; <a class="code" href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160; <a class="code" href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>&#160; <a class="code" href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160; <a class="code" href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160; <a class="code" href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160; <a class="code" href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160; <a class="code" href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160; <a class="code" href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a>, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160; <a class="code" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a> <span class="comment">// Screenshot</span></div><div class="line"><a name="l02112"></a><span class="lineno"> 2112</span>&#160;};</div><div class="line"><a name="l02113"></a><span class="lineno"> 2113</span>&#160;</div><div class="line"><a name="l02114"></a><span class="lineno"> 2114</span>&#160;<span class="comment">/* File plugin definition and features */</span></div><div class="line"><a name="l02115"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619"> 2115</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> <a class="code" href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619">remmina_rdpf</a> =</div><div class="line"><a name="l02116"></a><span class="lineno"> 2116</span>&#160;{</div><div class="line"><a name="l02117"></a><span class="lineno"> 2117</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a>, <span class="comment">// Type</span></div><div class="line"><a name="l02118"></a><span class="lineno"> 2118</span>&#160; <span class="stringliteral">&quot;RDPF&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l02119"></a><span class="lineno"> 2119</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - RDP File Handler&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l02120"></a><span class="lineno"> 2120</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l02121"></a><span class="lineno"> 2121</span>&#160; <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, <span class="comment">// Version number</span></div><div class="line"><a name="l02122"></a><span class="lineno"> 2122</span>&#160; <a class="code" href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a>, <span class="comment">// Test import function</span></div><div class="line"><a name="l02123"></a><span class="lineno"> 2123</span>&#160; <a class="code" href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a>, <span class="comment">// Import function</span></div><div class="line"><a name="l02124"></a><span class="lineno"> 2124</span>&#160; <a class="code" href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a>, <span class="comment">// Test export function</span></div><div class="line"><a name="l02125"></a><span class="lineno"> 2125</span>&#160; <a class="code" href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a>, <span class="comment">// Export function</span></div><div class="line"><a name="l02126"></a><span class="lineno"> 2126</span>&#160; NULL</div><div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160;};</div><div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;</div><div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160;<span class="comment">/* Preferences plugin definition and features */</span></div><div class="line"><a name="l02130"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba"> 2130</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_pref_plugin.html">RemminaPrefPlugin</a> <a class="code" href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba">remmina_rdps</a> =</div><div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;{</div><div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a>, <span class="comment">// Type</span></div><div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160; <span class="stringliteral">&quot;RDPS&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;RDP - Preferences&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160; <a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, <span class="comment">// Version number</span></div><div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>&#160; <span class="stringliteral">&quot;RDP&quot;</span>, <span class="comment">// Label</span></div><div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>&#160; <a class="code" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a> <span class="comment">// Preferences body function</span></div><div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>&#160;};</div><div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;</div><div class="line"><a name="l02141"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591"> 2141</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *<a class="code" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">buildconfig_strstr</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *bc, <span class="keyword">const</span> <span class="keywordtype">char</span> *option)</div><div class="line"><a name="l02142"></a><span class="lineno"> 2142</span>&#160;{</div><div class="line"><a name="l02143"></a><span class="lineno"> 2143</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02144"></a><span class="lineno"> 2144</span>&#160;</div><div class="line"><a name="l02145"></a><span class="lineno"> 2145</span>&#160; <span class="keywordtype">char</span> *p, *n;</div><div class="line"><a name="l02146"></a><span class="lineno"> 2146</span>&#160;</div><div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160; p = strcasestr(bc, option);</div><div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160; <span class="keywordflow">if</span> (p == NULL)</div><div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160;</div><div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>&#160; <span class="keywordflow">if</span> (p &gt; bc &amp;&amp; *(p - 1) &gt; <span class="charliteral">&#39; &#39;</span>)</div><div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160;</div><div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160; n = p + strlen(option);</div><div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160; <span class="keywordflow">if</span> (*n &gt; <span class="charliteral">&#39; &#39;</span>)</div><div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160;</div><div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160; <span class="keywordflow">return</span> p;</div><div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;}</div><div class="line"><a name="l02160"></a><span class="lineno"> 2160</span>&#160;</div><div class="line"><a name="l02161"></a><span class="lineno"><a class="line" href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 2161</a></span>&#160;G_MODULE_EXPORT gboolean <a class="code" href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l02162"></a><span class="lineno"> 2162</span>&#160;{</div><div class="line"><a name="l02163"></a><span class="lineno"> 2163</span>&#160; <span class="keywordtype">int</span> vermaj, vermin, verrev;</div><div class="line"><a name="l02164"></a><span class="lineno"> 2164</span>&#160;</div><div class="line"><a name="l02165"></a><span class="lineno"> 2165</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;</div><div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160; <span class="comment">/* Check that we are linked to the correct version of libfreerdp */</span></div><div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;</div><div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160; freerdp_get_version(&amp;vermaj, &amp;vermin, &amp;verrev);</div><div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160; <span class="keywordflow">if</span> (vermaj &lt; FREERDP_REQUIRED_MAJOR ||</div><div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>&#160; (vermaj == FREERDP_REQUIRED_MAJOR &amp;&amp; (vermin &lt; FREERDP_REQUIRED_MINOR ||</div><div class="line"><a name="l02173"></a><span class="lineno"> 2173</span>&#160; (vermin == FREERDP_REQUIRED_MINOR &amp;&amp; verrev &lt; FREERDP_REQUIRED_REVISION)))) {</div><div class="line"><a name="l02174"></a><span class="lineno"> 2174</span>&#160; g_printf(<span class="stringliteral">&quot;Upgrade your FreeRDP library version from %d.%d.%d to at least libfreerdp %d.%d.%d &quot;</span></div><div class="line"><a name="l02175"></a><span class="lineno"> 2175</span>&#160; <span class="stringliteral">&quot;to run the RDP plugin.\n&quot;</span>,</div><div class="line"><a name="l02176"></a><span class="lineno"> 2176</span>&#160; FREERDP_REQUIRED_MAJOR, FREERDP_REQUIRED_MINOR, FREERDP_REQUIRED_REVISION,</div><div class="line"><a name="l02177"></a><span class="lineno"> 2177</span>&#160; vermaj, vermin, verrev);</div><div class="line"><a name="l02178"></a><span class="lineno"> 2178</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02179"></a><span class="lineno"> 2179</span>&#160; }</div><div class="line"><a name="l02180"></a><span class="lineno"> 2180</span>&#160;</div><div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>&#160;</div><div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_rdp))</div><div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160;</div><div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160; remmina_rdpf.<a class="code" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">export_hints</a> = _(<span class="stringliteral">&quot;Export connection in Windows .rdp file format&quot;</span>);</div><div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160;</div><div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_rdpf))</div><div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>&#160;</div><div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_rdps))</div><div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160;</div><div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">buildconfig_strstr</a>(freerdp_get_build_config(), <span class="stringliteral">&quot;WITH_GFX_H264=ON&quot;</span>)) {</div><div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>&#160; <a class="code" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> = TRUE;</div><div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>&#160; <a class="code" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> = FALSE;</div><div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>&#160; <span class="comment">/* Remove values 65 and 66 from colordepth_list array by shifting it */</span></div><div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>&#160; gpointer *src, *dst;</div><div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>&#160; dst = src = <a class="code" href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>;</div><div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>&#160; <span class="keywordflow">while</span> (*src) {</div><div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>&#160; <span class="keywordflow">if</span> (strcmp(*src, <span class="stringliteral">&quot;66&quot;</span>) != 0 &amp;&amp; strcmp(*src, <span class="stringliteral">&quot;65&quot;</span>) != 0) {</div><div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>&#160; <span class="keywordflow">if</span> (dst != src) {</div><div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>&#160; *dst = *src;</div><div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>&#160; *(dst + 1) = *(src + 1);</div><div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>&#160; }</div><div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160; dst += 2;</div><div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160; }</div><div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160; src += 2;</div><div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>&#160; }</div><div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>&#160; *dst = NULL;</div><div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160; }</div><div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;</div><div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160; snprintf(<a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>, <span class="keyword">sizeof</span>(<a class="code" href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a>),</div><div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>&#160; <span class="stringliteral">&quot;RDP plugin: %s (Git %s), Compiled with libfreerdp: %s (%s), Running with libfreerdp: %s (rev %s), H.264: %s&quot;</span>,</div><div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160; VERSION, REMMINA_GIT_REVISION,</div><div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160; FREERDP_VERSION_FULL, GIT_REVISION,</div><div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160; freerdp_get_version_string(),</div><div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>&#160; freerdp_get_build_revision(),</div><div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>&#160; <a class="code" href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a> ? <span class="stringliteral">&quot;Yes&quot;</span> : <span class="stringliteral">&quot;No&quot;</span></div><div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>&#160; );</div><div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>&#160;</div><div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>&#160; <a class="code" href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">remmina_rdp_settings_init</a>();</div><div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160;</div><div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>&#160;}</div><div class="ttc" id="structrf__clipboard_html_a773214c0bb4f351a609a085f786304aa"><div class="ttname"><a href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">rf_clipboard::context</a></div><div class="ttdeci">CliprdrClientContext * context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00072">rdp_plugin.h:72</a></div></div>
+<div class="ttc" id="structregion_html_a3b8e9f37558f5a790945b9dc1cbcadb6"><div class="ttname"><a href="structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6">region::w</a></div><div class="ttdeci">gint w</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00186">rdp_plugin.h:186</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a663e2e70d2f51daa97666142fdde98d0"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">remmina_plugin_rdp_event::clipboard_formatlist</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@44 clipboard_formatlist</div></div>
+<div class="ttc" id="structrf__context_html_aa574515edb4966117f539d26e26f0a62"><div class="ttname"><a href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">rf_context::thread_cancelled</a></div><div class="ttdeci">gboolean thread_cancelled</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00256">rdp_plugin.h:256</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a20b531c3036273bb4f2de64ac33c9bf3"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">remmina_plugin_rdp_event::clipboard_formatdatarequest</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@46 clipboard_formatdatarequest</div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="structrf__context_html_af40c80ff8296b9bcc3ac437bf0be55f8"><div class="ttname"><a href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context::is_reconnecting</a></div><div class="ttdeci">gboolean is_reconnecting</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00269">rdp_plugin.h:269</a></div></div>
+<div class="ttc" id="structregion_html_a97015e361d0cbedf7dcab10fbea95b10"><div class="ttname"><a href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">region::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00186">rdp_plugin.h:186</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00049">types.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae97f4052c4bbda628682ae071ada27ed"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService::remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode(* remmina_protocol_widget_get_current_scale_mode)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00154">plugin.h:154</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a5f88cb338f10185c43bfc7d711dddee5"><div class="ttname"><a href="rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5">remmina_rdp_open_connection</a></div><div class="ttdeci">static gboolean remmina_rdp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01760">rdp_plugin.c:1760</a></div></div>
+<div class="ttc" id="structrf__context_html_acacad775c2c168f900deaa6c90481319"><div class="ttname"><a href="structrf__context.html#acacad775c2c168f900deaa6c90481319">rf_context::user_cancelled</a></div><div class="ttdeci">gboolean user_cancelled</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00255">rdp_plugin.h:255</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01951">rdp_plugin.c:1951</a></div></div>
+<div class="ttc" id="structrf__context_html_a40e89e126e5dd96a3f67e6f945a8867b"><div class="ttname"><a href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context::bpp</a></div><div class="ttdeci">gint bpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00292">rdp_plugin.h:292</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a04920ffa78f21d63806d544fcca9c56e"><div class="ttname"><a href="rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e">remmina_rdp_send_ctrlaltdel</a></div><div class="ttdeci">static void remmina_rdp_send_ctrlaltdel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00976">rdp_plugin.c:976</a></div></div>
+<div class="ttc" id="structrf__context_html_a9134f0b8a6352cc257e1e91e162efea3"><div class="ttname"><a href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">rf_context::attempt_interactive_authentication</a></div><div class="ttdeci">gboolean attempt_interactive_authentication</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00312">rdp_plugin.h:312</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="structrf__context_html_a539feef609228a91c5e54d5da837bb7a"><div class="ttname"><a href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">rf_context::event_pipe</a></div><div class="ttdeci">gint event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00305">rdp_plugin.h:305</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a8cad107c77386b752f338d6c7f2b6a0a"><div class="ttname"><a href="rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a">remmina_rdp</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_rdp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02092">rdp_plugin.c:2092</a></div></div>
+<div class="ttc" id="rdp__channels_8c_html_a5850b939a52886321d6e4c3e5e62f97d"><div class="ttname"><a href="rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d">remmina_rdp_OnChannelDisconnectedEventHandler</a></div><div class="ttdeci">void remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00085">rdp_channels.c:85</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html"><div class="ttname"><a href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00117">rdp_plugin.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</a></div></div>
+<div class="ttc" id="structrf__context_html_ac62be9cdb6f40912b2a45729a052ad48"><div class="ttname"><a href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">rf_context::postconnect_error</a></div><div class="ttdeci">enum rf_context::@57 postconnect_error</div></div>
+<div class="ttc" id="structrf__clipboard_html_ae2405c3546b91c1ae200b14ef0e68026"><div class="ttname"><a href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">rf_clipboard::srv_clip_data_wait</a></div><div class="ttdeci">enum rf_clipboard::@39 srv_clip_data_wait</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00112">rdp_plugin.h:112</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00047">plugin.h:47</a></div></div>
+<div class="ttc" id="structrf__context_html_aa79909e0ac140a3404151a40bed6a6ec"><div class="ttname"><a href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">rf_context::remmina_plugin_thread</a></div><div class="ttdeci">pthread_t remmina_plugin_thread</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00253">rdp_plugin.h:253</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_ac4f2b0118490cede0577aaee9f2e0b5f"><div class="ttname"><a href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">_RemminaFilePlugin::export_hints</a></div><div class="ttdeci">const gchar * export_hints</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00105">plugin.h:105</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a7d911246d8a6efed5a64b7ecd7b059bf"><div class="ttname"><a href="rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf">remmina_rdp_cliprdr_detach_owner</a></div><div class="ttdeci">void remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00763">rdp_cliprdr.c:763</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00110">rdp_plugin.h:110</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a18f77c3f0788ca8df08ebc80c72b553f"><div class="ttname"><a href="rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f">gfx_h264_available</a></div><div class="ttdeci">static BOOL gfx_h264_available</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00092">rdp_plugin.c:92</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00114">rdp_plugin.h:114</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a5f05047cf10611ffb7a23a248650cb4c"><div class="ttname"><a href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a></div><div class="ttdeci">void remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00608">rdp_settings.c:608</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00161">rdp_plugin.h:161</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a0291f2233b3d82a3f1d521bfc1fabd43"><div class="ttname"><a href="rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43">remmina_rdp_query_feature</a></div><div class="ttdeci">static gboolean remmina_rdp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01838">rdp_plugin.c:1838</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00182">rdp_plugin.h:182</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a120a18b1b32575381f934580ad5a42c5"><div class="ttname"><a href="rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5">remmina_rdp_verify_changed_certificate</a></div><div class="ttdeci">static DWORD remmina_rdp_verify_changed_certificate(freerdp *instance, const char *common_name, const char *subject, const char *issuer, const char *new_fingerprint, const char *old_subject, const char *old_issuer, const char *old_fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00698">rdp_plugin.c:698</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aeaf95501d1d2ce27589cfdf69511009c"><div class="ttname"><a href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c">_RemminaPluginService::protocol_plugin_init_certificate</a></div><div class="ttdeci">gint(* protocol_plugin_init_certificate)(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00173">plugin.h:173</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a992a905d014d83a8de736ffbd85fe901"><div class="ttname"><a href="rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901">rf_desktop_resize</a></div><div class="ttdeci">static BOOL rf_desktop_resize(rdpContext *context)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00371">rdp_plugin.c:371</a></div></div>
+<div class="ttc" id="rdp__graphics_8c_html_a95732c40c35499f3440715b6526279b1"><div class="ttname"><a href="rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1">rf_register_graphics</a></div><div class="ttdeci">void rf_register_graphics(rdpGraphics *graphics)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__graphics_8c_source.html#l00381">rdp_graphics.c:381</a></div></div>
+<div class="ttc" id="structregion_html_a585e1a437e6e8f8a80785aec2f2762c8"><div class="ttname"><a href="structregion.html#a585e1a437e6e8f8a80785aec2f2762c8">region::h</a></div><div class="ttdeci">gint h</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00186">rdp_plugin.h:186</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_acf37368f3376add8547723d13443cccb"><div class="ttname"><a href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">remmina_rdp_settings_init</a></div><div class="ttdeci">void remmina_rdp_settings_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00051">rdp_settings.c:51</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00088">types.h:88</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_af33e88ae9c13745eb6d36f36418e3676"><div class="ttname"><a href="rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676">remmina_rdp_authenticate</a></div><div class="ttdeci">static BOOL remmina_rdp_authenticate(freerdp *instance, char **username, char **password, char **domain)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00561">rdp_plugin.c:561</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a6aa88468d17f574532ca959f554a70c5"><div class="ttname"><a href="rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5">complete_cleanup_on_main_thread</a></div><div class="ttdeci">static gboolean complete_cleanup_on_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01671">rdp_plugin.c:1671</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a12e0199d082d510648cb27168486f4e0"><div class="ttname"><a href="rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0">remmina_rdp_main</a></div><div class="ttdeci">static gboolean remmina_rdp_main(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00986">rdp_plugin.c:986</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_ac3300142e3c2f416896948681ecd45f3"><div class="ttname"><a href="rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3">remmina_rdp_clipboard_init</a></div><div class="ttdeci">void remmina_rdp_clipboard_init(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00802">rdp_cliprdr.c:802</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ad47177412ada547f7cd6cbb9dfcf0f3f"><div class="ttname"><a href="rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f">remmina_rdp_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_rdp_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02030">rdp_plugin.c:2030</a></div></div>
+<div class="ttc" id="structrf__context_html_a05f37c213b04dfb9ae9b38c12bcdf7e3"><div class="ttname"><a href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context::protocol_widget</a></div><div class="ttdeci">RemminaProtocolWidget * protocol_widget</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00247">rdp_plugin.h:247</a></div></div>
+<div class="ttc" id="structrf__context_html_a4c35800dba8da687f7f56e3bb7a23413"><div class="ttname"><a href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">rf_context::reconnect_nattempt</a></div><div class="ttdeci">int reconnect_nattempt</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00276">rdp_plugin.h:276</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_a2d6704aa58ecc18ecc178ea418addd87"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService::protocol_plugin_send_keys_signals</a></div><div class="ttdeci">void(* protocol_plugin_send_keys_signals)(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00193">plugin.h:193</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ab05af9675485e3192847e1936d131d31"><div class="ttname"><a href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">remmina_rdp_set_printers</a></div><div class="ttdeci">int remmina_rdp_set_printers(void *user_data, unsigned flags, cups_dest_t *dest)</div><div class="ttdoc">Callback function used by cupsEnumDests. </div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00898">rdp_plugin.c:898</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_adf255b7ceaec6a51fc9269cf824a02ce"><div class="ttname"><a href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">_RemminaPluginService::protocol_plugin_get_width</a></div><div class="ttdeci">gint(* protocol_plugin_get_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00150">plugin.h:150</a></div></div>
+<div class="ttc" id="rdp__file_8h_html"><div class="ttname"><a href="rdp__file_8h.html">rdp_file.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a6dd204e4f7a63fdcdfb6cd3066cbf309"><div class="ttname"><a href="rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309">remmina_rdp_init</a></div><div class="ttdeci">static void remmina_rdp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01727">rdp_plugin.c:1727</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a263e269a1f8cfb21ba78d4b57ce2c47b"><div class="ttname"><a href="rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b">remmina_rdp_file_export</a></div><div class="ttdeci">gboolean remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00278">rdp_file.c:278</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ab9e7535ac53b25e8923a3b9fd1622046"><div class="ttname"><a href="rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046">remmina_rdp_post_disconnect</a></div><div class="ttdeci">static void remmina_rdp_post_disconnect(freerdp *instance)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00718">rdp_plugin.c:718</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00111">rdp_plugin.h:111</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ac3d5598ae09c52f3ad0546c7de641f9f"><div class="ttname"><a href="rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f">remmina_rdp_find_prdriver</a></div><div class="ttdeci">gchar * remmina_rdp_find_prdriver(char *smap, char *prn)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00823">rdp_plugin.c:823</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a051b55da6e20ad868efecf007c737dc0"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">remmina_plugin_rdp_ui_object::reg</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@50 reg</div></div>
+<div class="ttc" id="rdp__settings_8c_html_adc5f59377e21db6e1aef8bfc2da24b53"><div class="ttname"><a href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a></div><div class="ttdeci">GtkWidget * remmina_rdp_settings_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00597">rdp_settings.c:597</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a9274a9d62e527ca25683af512505242e"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">_RemminaPluginScreenshotData::height</a></div><div class="ttdeci">int height</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00069">types.h:69</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a86feac33b8074773d97204a71a42151e"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">remmina_plugin_rdp_event::mouse_event</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@43 mouse_event</div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="structrf__context_html_aa0b949ab1e2f06b7d5efeccc924efaee"><div class="ttname"><a href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">rf_context::reconnect_maxattempts</a></div><div class="ttdeci">int reconnect_maxattempts</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00275">rdp_plugin.h:275</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af45af14b2b083a7093f36b8cafda1cee"><div class="ttname"><a href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee">_RemminaPluginService::protocol_plugin_changed_certificate</a></div><div class="ttdeci">gint(* protocol_plugin_changed_certificate)(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00174">plugin.h:174</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a6d00c37987b9f5b09959944d01142310"><div class="ttname"><a href="rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310">remmina_rdp_file_export_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_export_test(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00207">rdp_file.c:207</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a6910d98a00cac88fb257d9bb2d080243"><div class="ttname"><a href="rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243">clientbuild_tooltip</a></div><div class="ttdeci">static gchar clientbuild_tooltip[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01993">rdp_plugin.c:1993</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a84797e0cdf4484432740a8946325f126"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event::type</a></div><div class="ttdeci">RemminaPluginRdpEventType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00118">rdp_plugin.h:118</a></div></div>
+<div class="ttc" id="rdp__graphics_8h_html"><div class="ttname"><a href="rdp__graphics_8h.html">rdp_graphics.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af2b857b2de1af3621f543b810f68b17b"><div class="ttname"><a href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService::protocol_plugin_init_get_savepassword</a></div><div class="ttdeci">gboolean(* protocol_plugin_init_get_savepassword)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00178">plugin.h:178</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00109">rdp_plugin.h:109</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_af22c947a2ae21ce29170be003585e06b"><div class="ttname"><a href="rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b">rfi_uninit</a></div><div class="ttdeci">static void rfi_uninit(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01636">rdp_plugin.c:1636</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_aa0f78eb9b36ba248c2e368684903ae44"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">_RemminaPluginScreenshotData::bytesPerPixel</a></div><div class="ttdeci">int bytesPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00067">types.h:67</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_af3c72bfa3579b1e6cf0fb11566a72f66"><div class="ttname"><a href="rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66">remmina_rdp_plugin_default_drive_name</a></div><div class="ttdeci">static char remmina_rdp_plugin_default_drive_name[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00090">rdp_plugin.c:90</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2d4d5d48fa23ed0ae59466f5d3f1dacf"><div class="ttname"><a href="rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf">rf_begin_paint</a></div><div class="ttdeci">BOOL rf_begin_paint(rdpContext *context)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00312">rdp_plugin.c:312</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00049">plugin.h:49</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_aae001941e15e94a2d6456cc02e5ef75c"><div class="ttname"><a href="rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c">remmina_rdp_file_import</a></div><div class="ttdeci">RemminaFile * remmina_rdp_file_import(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00187">rdp_file.c:187</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00156">rdp_plugin.h:156</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_ab5d115d8f9fc675f2419d38cdd424ce6"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">_RemminaPluginScreenshotData::width</a></div><div class="ttdeci">int width</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00068">types.h:68</a></div></div>
+<div class="ttc" id="structrf__context_html_acee2095e72fb2428c498f62e21800026"><div class="ttname"><a href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00279">rdp_plugin.h:279</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a36918dbbfad26310cfe3a3aed5f8f5dc"><div class="ttname"><a href="rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc">sound_list</a></div><div class="ttdeci">static gpointer sound_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01961">rdp_plugin.c:1961</a></div></div>
+<div class="ttc" id="structrf__context_html_aa13bb4f72f3024d81e9051de4bd65ec0"><div class="ttname"><a href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">rf_context::cairo_format</a></div><div class="ttdeci">cairo_format_t cairo_format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00291">rdp_plugin.h:291</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a32ad1700995dbad58d5003b06692a5f2"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">remmina_plugin_rdp_event::key_event</a></div><div class="ttdeci">struct remmina_plugin_rdp_event::@40::@42 key_event</div></div>
+<div class="ttc" id="rdp__event_8c_html_ab5fe43c1b1b77c39f118d2581942eb81"><div class="ttname"><a href="rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81">remmina_rdp_event_queue_ui_sync_retint</a></div><div class="ttdeci">int remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01268">rdp_event.c:1268</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_af3a991a02d35fb09c85f2e752a5393ca"><div class="ttname"><a href="rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca">remmina_rdp_event_init</a></div><div class="ttdeci">void remmina_rdp_event_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00742">rdp_event.c:742</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abfb79da3d96ca4aa219eae9c73b0b53f"><div class="ttname"><a href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">_RemminaPluginService::protocol_plugin_has_error</a></div><div class="ttdeci">gboolean(* protocol_plugin_has_error)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00157">plugin.h:157</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a860dc4e2fc1479ec1cbdcc53236df9e9"><div class="ttname"><a href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService::pref_get_value</a></div><div class="ttdeci">gchar *(* pref_get_value)(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00207">plugin.h:207</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ac66bd1c0ceb224f7a65f5b712148a43e"><div class="ttname"><a href="rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e">remmina_rdp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_rdp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02078">rdp_plugin.c:2078</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a4d69cf4d703b55b87d1de06493e2a619"><div class="ttname"><a href="rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619">remmina_rdpf</a></div><div class="ttdeci">static RemminaFilePlugin remmina_rdpf</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02115">rdp_plugin.c:2115</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02161">rdp_plugin.c:2161</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2f9e1bbd16e19411adbd6a423a9b571f"><div class="ttname"><a href="rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f">security_list</a></div><div class="ttdeci">static gpointer security_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01973">rdp_plugin.c:1973</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a8b9e88d2925be5eee2025f4c3ede1e29"><div class="ttname"><a href="rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29">rf_process_event_queue</a></div><div class="ttdeci">static BOOL rf_process_event_queue(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00094">rdp_plugin.c:94</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ae445fd0a84c7c9414a177a69c86cf325"><div class="ttname"><a href="rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325">remmina_rdp_event_queue_ui_async</a></div><div class="ttdeci">void remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01262">rdp_event.c:1262</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_addffb9c5555027536804d8ef47b65f3b"><div class="ttname"><a href="rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b">remmina_rdp_keystroke</a></div><div class="ttdeci">static void remmina_rdp_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01886">rdp_plugin.c:1886</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01935">rdp_plugin.c:1935</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa159850f20499e5bc1067f533d2fa820"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">_RemminaPluginService::protocol_plugin_get_height</a></div><div class="ttdeci">gint(* protocol_plugin_get_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00152">plugin.h:152</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9b4cfe0a97a34260e58784feef693704"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService::protocol_plugin_init_auth</a></div><div class="ttdeci">gint(* protocol_plugin_init_auth)(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00172">plugin.h:172</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_acc352444c31929a1ef7aee2a0e37827d"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">_RemminaPluginScreenshotData::bitsPerPixel</a></div><div class="ttdeci">int bitsPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00066">types.h:66</a></div></div>
+<div class="ttc" id="structrf__context_html_a5d119b1f108fe84c74e6484d48c2a565"><div class="ttname"><a href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">rf_context::event_queue</a></div><div class="ttdeci">GAsyncQueue * event_queue</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00304">rdp_plugin.h:304</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_adb2d2f801618ad1e5ff14b4ebf2a9eb9"><div class="ttname"><a href="rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9">remmina_rdp_main_loop</a></div><div class="ttdeci">static void remmina_rdp_main_loop(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00734">rdp_plugin.c:734</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a0d029a3287dd4abf1e7c602e3c556cde"><div class="ttname"><a href="rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde">rf_play_sound</a></div><div class="ttdeci">static BOOL rf_play_sound(rdpContext *context, const PLAY_SOUND_UPDATE *play_sound)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00406">rdp_plugin.c:406</a></div></div>
+<div class="ttc" id="structregion_html_ad258e7b02e819b46656294de5e4bd8ad"><div class="ttname"><a href="structregion.html#ad258e7b02e819b46656294de5e4bd8ad">region::x</a></div><div class="ttdeci">gint x</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00186">rdp_plugin.h:186</a></div></div>
+<div class="ttc" id="structrf__context_html_a72d2a3d60347327237692947df93aea7"><div class="ttname"><a href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context::clipboard</a></div><div class="ttdeci">rfClipboard clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00308">rdp_plugin.h:308</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2b75137f9d7739c0d7881ee16e2aabfa"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">_RemminaPluginService::get_profile_remote_height</a></div><div class="ttdeci">gint(* get_profile_remote_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00225">plugin.h:225</a></div></div>
+<div class="ttc" id="structrf__context_html_a522c742a333cf0603dfa7d06a7376669"><div class="ttname"><a href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">rf_context::event_handle</a></div><div class="ttdeci">HANDLE event_handle</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00306">rdp_plugin.h:306</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a65eef99dc99f77be815a5da804ed94fc"><div class="ttname"><a href="rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc">remmina_rdp_event_uninit</a></div><div class="ttdeci">void remmina_rdp_event_uninit(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00855">rdp_event.c:855</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00113">rdp_plugin.h:113</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00108">rdp_plugin.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a734f491f20072acdcbebb41e36bafe2f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">_RemminaPluginService::protocol_plugin_desktop_resize</a></div><div class="ttdeci">void(* protocol_plugin_desktop_resize)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00171">plugin.h:171</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ac8d1ec82167ad20b7634ed545d4badbc"><div class="ttname"><a href="rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc">remmina_rdp_post_connect</a></div><div class="ttdeci">static BOOL remmina_rdp_post_connect(freerdp *instance)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00497">rdp_plugin.c:497</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a0b14775d97715a4ca01f21d81170151b"><div class="ttname"><a href="rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b">rf_keyboard_set_ime_status</a></div><div class="ttdeci">BOOL rf_keyboard_set_ime_status(rdpContext *context, UINT16 imeId, UINT32 imeState, UINT32 imeConvMode)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00451">rdp_plugin.c:451</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html"><div class="ttname"><a href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00118">plugin.h:118</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_af43b1397163aab939f9e88ed201d52ba"><div class="ttname"><a href="rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba">remmina_rdps</a></div><div class="ttdeci">static RemminaPrefPlugin remmina_rdps</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02130">rdp_plugin.c:2130</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00134">types.h:134</a></div></div>
+<div class="ttc" id="structrf__context_html_a9d28c775fe1ee90ad48941d753564a76"><div class="ttname"><a href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">rf_context::srcBpp</a></div><div class="ttdeci">gint srcBpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00287">rdp_plugin.h:287</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac892dd297fae87868752a1f86e07937d"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService::protocol_plugin_init_get_username</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_username)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00175">plugin.h:175</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a1beaae641f40fc4fbcafe84846a2eb76"><div class="ttname"><a href="rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76">remmina_rdp_close_connection</a></div><div class="ttdeci">static gboolean remmina_rdp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01803">rdp_plugin.c:1803</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00155">rdp_plugin.h:155</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8c_html_a4da95b96bf2c86b8f4cc63dcafdd1365"><div class="ttname"><a href="rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365">remmina_rdp_clipboard_free</a></div><div class="ttdeci">void remmina_rdp_clipboard_free(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__cliprdr_8c_source.html#l00807">rdp_cliprdr.c:807</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_afe3c32a421cd5dcc735b99318ff8844a"><div class="ttname"><a href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">_RemminaPluginService::get_profile_remote_width</a></div><div class="ttdeci">gint(* get_profile_remote_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00224">plugin.h:224</a></div></div>
+<div class="ttc" id="structrf__context_html_a3c2ffa55ba97bc70324d61b8cc838e73"><div class="ttname"><a href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00268">rdp_plugin.h:268</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad98eaa3efc0214bc701dc66b5730e174"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService::protocol_plugin_init_get_password</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_password)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00176">plugin.h:176</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</a></div></div>
+<div class="ttc" id="structrf__context_html_a96c4689f6bc062482536038cb3b24e78"><div class="ttname"><a href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context::scale</a></div><div class="ttdeci">RemminaScaleMode scale</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00254">rdp_plugin.h:254</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2986e5b780a080a8a1e2f8d10ece3ac4"><div class="ttname"><a href="rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4">remmina_plugin_rdp_version</a></div><div class="ttdeci">static char remmina_plugin_rdp_version[256]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02089">rdp_plugin.c:2089</a></div></div>
+<div class="ttc" id="structrf__context_html_a3a32bbd599b6684a3c41db9281863362"><div class="ttname"><a href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">rf_context::instance</a></div><div class="ttdeci">freerdp * instance</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00251">rdp_plugin.h:251</a></div></div>
+<div class="ttc" id="rdp__file_8c_html_a8b1b44a7a6367e3bca60a6ba6fd086ce"><div class="ttname"><a href="rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce">remmina_rdp_file_import_test</a></div><div class="ttdeci">gboolean remmina_rdp_file_import_test(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__file_8c_source.html#l00041">rdp_file.c:41</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a1b89199f25081137222e72a4be577ea4"><div class="ttname"><a href="rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4">rf_keyboard_set_indicators</a></div><div class="ttdeci">static BOOL rf_keyboard_set_indicators(rdpContext *context, UINT16 led_flags)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00422">rdp_plugin.c:422</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html"><div class="ttname"><a href="rdp__settings_8h.html">rdp_settings.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a71166233c6c9e4714cbdb0d74ce7c579"><div class="ttname"><a href="rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579">remmina_rdp_gw_authenticate</a></div><div class="ttdeci">static BOOL remmina_rdp_gw_authenticate(freerdp *instance, char **username, char **password, char **domain)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00620">rdp_plugin.c:620</a></div></div>
+<div class="ttc" id="structrf__context_html_a660a5c5ea7256ab6a6486f3e831a9174"><div class="ttname"><a href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context::dispcontext</a></div><div class="ttdeci">DispClientContext * dispcontext</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00259">rdp_plugin.h:259</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_ab5b2b1181588e07e68c083c9539fa84f"><div class="ttname"><a href="rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f">rf_end_paint</a></div><div class="ttdeci">BOOL rf_end_paint(rdpContext *context)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00327">rdp_plugin.c:327</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a7031208f6cbf262a2e69fe971f248591"><div class="ttname"><a href="rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591">buildconfig_strstr</a></div><div class="ttdeci">static char * buildconfig_strstr(const char *bc, const char *option)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02141">rdp_plugin.c:2141</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_abd7690614b813952f560e56dd333ec0d"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">remmina_plugin_rdp_ui_object::event</a></div><div class="ttdeci">struct remmina_plugin_rdp_ui_object::@48::@55 event</div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a7565748ab340f2e7c66bcb755e006bd5"><div class="ttname"><a href="rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5">clientbuild_list</a></div><div class="ttdeci">static gchar clientbuild_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01990">rdp_plugin.c:1990</a></div></div>
+<div class="ttc" id="rdp__channels_8h_html"><div class="ttname"><a href="rdp__channels_8h.html">rdp_channels.h</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a64ce0c66bb4cb6ddaee263ce8563f497"><div class="ttname"><a href="rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497">remmina_rdp_event_update_scale</a></div><div class="ttdeci">void remmina_rdp_event_update_scale(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00927">rdp_event.c:927</a></div></div>
+<div class="ttc" id="structrf__context_html_a28d215e4ddb5decc543c3c6578df5e3d"><div class="ttname"><a href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">rf_context::settings</a></div><div class="ttdeci">rdpSettings * settings</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00250">rdp_plugin.h:250</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a3b62e33da1cb6cfa69c44f565ad53c54"><div class="ttname"><a href="rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54">remmina_rdp_main_thread</a></div><div class="ttdeci">static gpointer remmina_rdp_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01701">rdp_plugin.c:1701</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_a4da10c12b28edc28403766994d6ef29c"><div class="ttname"><a href="rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c">remmina_rdp_event_unfocus</a></div><div class="ttdeci">void remmina_rdp_event_unfocus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l01114">rdp_event.c:1114</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a0bc4113554537fd1a9e4c8bb9201e789"><div class="ttname"><a href="rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789">remmina_rdp_pre_connect</a></div><div class="ttdeci">static BOOL remmina_rdp_pre_connect(freerdp *instance)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00464">rdp_plugin.c:464</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_aaa5eb17481ba534c9f334d2a61a68ab2"><div class="ttname"><a href="rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2">remmina_rdp_load_static_channel_addin</a></div><div class="ttdeci">int remmina_rdp_load_static_channel_addin(rdpChannels *channels, rdpSettings *settings, char *name, void *data)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00792">rdp_plugin.c:792</a></div></div>
+<div class="ttc" id="rdp__cliprdr_8h_html"><div class="ttname"><a href="rdp__cliprdr_8h.html">rdp_cliprdr.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00107">rdp_plugin.h:107</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_af95e15a376e56355da6c52e85d8553af"><div class="ttname"><a href="rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af">remmina_rdp_tunnel_init</a></div><div class="ttdeci">static gboolean remmina_rdp_tunnel_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00176">rdp_plugin.c:176</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a2b6601868bc70050a57b1025f10225b1"><div class="ttname"><a href="rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1">remmina_rdp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_rdp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l02009">rdp_plugin.c:2009</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a910327fd7b1f969868a746aeb5578d30"><div class="ttname"><a href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a></div><div class="ttdeci">static gboolean remmina_rdp_get_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01895">rdp_plugin.c:1895</a></div></div>
+<div class="ttc" id="rdp__event_8c_html_ad446d6471bddba97f8bfcee8c51e4580"><div class="ttname"><a href="rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a></div><div class="ttdeci">void remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00092">rdp_event.c:92</a></div></div>
+<div class="ttc" id="rdp__event_8h_html"><div class="ttname"><a href="rdp__event_8h.html">rdp_event.h</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a6dc42bd40842f63939e962828c19cfc7"><div class="ttname"><a href="rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7">rf_auto_reconnect</a></div><div class="ttdeci">BOOL rf_auto_reconnect(rfContext *rfi)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00233">rdp_plugin.c:233</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a646b2d4e7ebd09e205ca70c75616a797"><div class="ttname"><a href="rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797">remmina_rdp_verify_certificate</a></div><div class="ttdeci">static DWORD remmina_rdp_verify_certificate(freerdp *instance, const char *common_name, const char *subject, const char *issuer, const char *fingerprint, BOOL host_mismatch)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00680">rdp_plugin.c:680</a></div></div>
+<div class="ttc" id="structrf__context_html_a73a760b5eeaaf7d2a0684b1145d5d706"><div class="ttname"><a href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rf_context::rfx_context</a></div><div class="ttdeci">RFX_CONTEXT * rfx_context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00265">rdp_plugin.h:265</a></div></div>
+<div class="ttc" id="rdp__channels_8c_html_ad702816cc7dd625f0518f58fc5405c12"><div class="ttname"><a href="rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12">remmina_rdp_OnChannelConnectedEventHandler</a></div><div class="ttdeci">void remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__channels_8c_source.html#l00046">rdp_channels.c:46</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00089">rdp_plugin.c:89</a></div></div>
+<div class="ttc" id="structregion_html"><div class="ttname"><a href="structregion.html">region</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00185">rdp_plugin.h:185</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a757f692624e3e110eaa5bf0c05ac2a6c"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">_RemminaPluginScreenshotData::buffer</a></div><div class="ttdeci">unsigned char * buffer</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00065">types.h:65</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_aa3191c66b2dabbb1a3c3c5474c6e9626"><div class="ttname"><a href="rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626">gwtransp_list</a></div><div class="ttdeci">static gpointer gwtransp_list[]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01982">rdp_plugin.c:1982</a></div></div>
+<div class="ttc" id="structrf__context_html_a23192b58404d1dc629d5e7db3fb103be"><div class="ttname"><a href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">rf_context::context</a></div><div class="ttdeci">rdpContext context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00244">rdp_plugin.h:244</a></div></div>
+<div class="ttc" id="rdp__plugin_8c_html_a3b63a366a0db4fddced3f2cffa353b19"><div class="ttname"><a href="rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19">remmina_rdp_call_feature</a></div><div class="ttdeci">static void remmina_rdp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l01844">rdp_plugin.c:1844</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aaa37f5061689c3663087a19f598e550b"><div class="ttname"><a href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">_RemminaPluginService::protocol_plugin_init_get_domain</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_domain)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00177">plugin.h:177</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a997a36825f2338b8e06bcd59becef61b"><div class="ttname"><a href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">_RemminaPluginService::is_main_thread</a></div><div class="ttdeci">gboolean(* is_main_thread)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00222">plugin.h:222</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a0e50aeabb34e9e653933d081e74c5c16"><div class="ttname"><a href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a></div><div class="ttdeci">struct rf_context rfContext</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00059">rdp_plugin.h:59</a></div></div>
+<div class="ttc" id="structrf__context_html_a91f20005b39ad9e1073cf25bf6d7c2f2"><div class="ttname"><a href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">rf_context::sw_gdi</a></div><div class="ttdeci">gboolean sw_gdi</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00278">rdp_plugin.h:278</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a46d939889fba73c1360f924efaa09262"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00190">rdp_plugin.h:190</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a4052ab6359b14e8f9a4cf76bed4da90c"><div class="ttname"><a href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a></div><div class="ttdeci">guint remmina_rdp_settings_get_keyboard_layout(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00066">rdp_settings.c:66</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00181">rdp_plugin.h:181</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00154">rdp_plugin.h:154</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__plugin_8c.html">rdp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__plugin_8h.html b/docs/rdp__plugin_8h.html
new file mode 100644
index 000000000..664461a58
--- /dev/null
+++ b/docs/rdp__plugin_8h.html
@@ -0,0 +1,630 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html">rf_clipboard</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__pointer.html">rf_pointer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__bitmap.html">rf_bitmap</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__glyph.html">rf_glyph</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregion.html">region</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html">rf_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a0e50aeabb34e9e653933d081e74c5c16"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrf__context.html">rf_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a></td></tr>
+<tr class="separator:a0e50aeabb34e9e653933d081e74c5c16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa49bc23157cbb28b9afd8d5566a15ea"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrf__clipboard.html">rf_clipboard</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a></td></tr>
+<tr class="separator:aaa49bc23157cbb28b9afd8d5566a15ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d6cab75538bffa185b6d2b6f35f15cf"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrf__pointer.html">rf_pointer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a></td></tr>
+<tr class="separator:a0d6cab75538bffa185b6d2b6f35f15cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9d29fafd5e843f13a94101b67c41b94"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrf__bitmap.html">rf_bitmap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rfBitmap</a></td></tr>
+<tr class="separator:ae9d29fafd5e843f13a94101b67c41b94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a5bd2872aa895f3a76fa35caf77982a"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrf__glyph.html">rf_glyph</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rfGlyph</a></td></tr>
+<tr class="separator:a8a5bd2872aa895f3a76fa35caf77982a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb304fe0971bc867e3e06cdb96ad3336"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a></td></tr>
+<tr class="separator:acb304fe0971bc867e3e06cdb96ad3336"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71f1193d9e0f1ed5e97fa6ac39671267"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">RemminaPluginRdpKeymapEntry</a></td></tr>
+<tr class="separator:a71f1193d9e0f1ed5e97fa6ac39671267"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a152858aa9c471fcd0b35cfa442a1f1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a></td></tr>
+<tr class="separator:a4a152858aa9c471fcd0b35cfa442a1f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:adafbb901615d7fc9d8f31d5dbdae29d7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a> { <br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a>,
+<br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a>,
+<a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a>
+<br />
+ }</td></tr>
+<tr class="separator:adafbb901615d7fc9d8f31d5dbdae29d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e2313a63a9cfd208ab722cc1e0ee072"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a> { <br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a> = 0,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a>,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a>,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>,
+<br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">REMMINA_RDP_UI_RFX</a>,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">REMMINA_RDP_UI_NOCODEC</a>,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>,
+<a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a>
+<br />
+ }</td></tr>
+<tr class="separator:a1e2313a63a9cfd208ab722cc1e0ee072"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a051d1d2ab58b0119d656f5036277b7c6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a> { <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a>,
+<a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a>,
+<a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a>,
+<a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT</a>
+ }</td></tr>
+<tr class="separator:a051d1d2ab58b0119d656f5036277b7c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4861d015f803612c279f463095cb97ed"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a> { <br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a>,
+<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a>,
+<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a>,
+<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a>,
+<br />
+&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a>,
+<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a>
+<br />
+ }</td></tr>
+<tr class="separator:a4861d015f803612c279f463095cb97ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70cc17b1d3603d036f962a0ae8496b35"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a> { <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a>,
+<a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a>
+ }</td></tr>
+<tr class="separator:a70cc17b1d3603d036f962a0ae8496b35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae498dd186f5003596bc2aa64deb87ca7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7">rf_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae498dd186f5003596bc2aa64deb87ca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab113687b2d454d2ef5865de40a9cabbb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb">rf_uninit</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab113687b2d454d2ef5865de40a9cabbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf232991d87607c920a7a72d9aa459dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc">rf_get_fds</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, void **rfds, int *rcount)</td></tr>
+<tr class="separator:abf232991d87607c920a7a72d9aa459dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69548c1c051b84912d45d57d4dc34098"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098">rf_check_fds</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a69548c1c051b84912d45d57d4dc34098"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20775c6e0192fca892cf442e8e264433"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433">rf_object_free</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *obj)</td></tr>
+<tr class="separator:a20775c6e0192fca892cf442e8e264433"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad446d6471bddba97f8bfcee8c51e4580"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> *e)</td></tr>
+<tr class="separator:ad446d6471bddba97f8bfcee8c51e4580"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="acb304fe0971bc867e3e06cdb96ad3336"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb304fe0971bc867e3e06cdb96ad3336">&#9670;&nbsp;</a></span>RemminaPluginRdpEvent</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a> <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00151">151</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a71f1193d9e0f1ed5e97fa6ac39671267"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71f1193d9e0f1ed5e97fa6ac39671267">&#9670;&nbsp;</a></span>RemminaPluginRdpKeymapEntry</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a> <a class="el" href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">RemminaPluginRdpKeymapEntry</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4a152858aa9c471fcd0b35cfa442a1f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a152858aa9c471fcd0b35cfa442a1f1">&#9670;&nbsp;</a></span>RemminaPluginRdpUiObject</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a> <a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00317">317</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae9d29fafd5e843f13a94101b67c41b94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9d29fafd5e843f13a94101b67c41b94">&#9670;&nbsp;</a></span>rfBitmap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrf__bitmap.html">rf_bitmap</a> <a class="el" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94">rfBitmap</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00098">98</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa49bc23157cbb28b9afd8d5566a15ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa49bc23157cbb28b9afd8d5566a15ea">&#9670;&nbsp;</a></span>rfClipboard</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrf__clipboard.html">rf_clipboard</a> <a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00084">84</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0e50aeabb34e9e653933d081e74c5c16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e50aeabb34e9e653933d081e74c5c16">&#9670;&nbsp;</a></span>rfContext</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrf__context.html">rf_context</a> <a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00059">59</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8a5bd2872aa895f3a76fa35caf77982a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a5bd2872aa895f3a76fa35caf77982a">&#9670;&nbsp;</a></span>rfGlyph</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrf__glyph.html">rf_glyph</a> <a class="el" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a">rfGlyph</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00104">104</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0d6cab75538bffa185b6d2b6f35f15cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d6cab75538bffa185b6d2b6f35f15cf">&#9670;&nbsp;</a></span>rfPointer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrf__pointer.html">rf_pointer</a> <a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00091">91</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="adafbb901615d7fc9d8f31d5dbdae29d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adafbb901615d7fc9d8f31d5dbdae29d7">&#9670;&nbsp;</a></span>RemminaPluginRdpEventType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2"></a>REMMINA_RDP_EVENT_TYPE_SCANCODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f"></a>REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b"></a>REMMINA_RDP_EVENT_TYPE_MOUSE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"></a>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6"></a>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b"></a>REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05"></a>REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03"></a>REMMINA_RDP_EVENT_DISCONNECT&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00106">106</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a051d1d2ab58b0119d656f5036277b7c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a051d1d2ab58b0119d656f5036277b7c6">&#9670;&nbsp;</a></span>RemminaPluginRdpUiClipboardType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc"></a>REMMINA_RDP_UI_CLIPBOARD_FORMATLIST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7"></a>REMMINA_RDP_UI_CLIPBOARD_GET_DATA&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad"></a>REMMINA_RDP_UI_CLIPBOARD_SET_DATA&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe"></a>REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00164">164</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a70cc17b1d3603d036f962a0ae8496b35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70cc17b1d3603d036f962a0ae8496b35">&#9670;&nbsp;</a></span>RemminaPluginRdpUiEeventType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4"></a>REMMINA_RDP_UI_EVENT_UPDATE_SCALE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48"></a>REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00180">180</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4861d015f803612c279f463095cb97ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4861d015f803612c279f463095cb97ed">&#9670;&nbsp;</a></span>RemminaPluginRdpUiPointerType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232"></a>REMMINA_RDP_POINTER_NEW&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2"></a>REMMINA_RDP_POINTER_FREE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068"></a>REMMINA_RDP_POINTER_SET&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49"></a>REMMINA_RDP_POINTER_NULL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56"></a>REMMINA_RDP_POINTER_DEFAULT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522"></a>REMMINA_RDP_POINTER_SETPOS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00171">171</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1e2313a63a9cfd208ab722cc1e0ee072"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e2313a63a9cfd208ab722cc1e0ee072">&#9670;&nbsp;</a></span>RemminaPluginRdpUiType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e"></a>REMMINA_RDP_UI_UPDATE_REGIONS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9"></a>REMMINA_RDP_UI_CONNECTED&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7"></a>REMMINA_RDP_UI_RECONNECT_PROGRESS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe"></a>REMMINA_RDP_UI_CURSOR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c"></a>REMMINA_RDP_UI_RFX&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b"></a>REMMINA_RDP_UI_NOCODEC&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f"></a>REMMINA_RDP_UI_CLIPBOARD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000"></a>REMMINA_RDP_UI_EVENT&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00153">153</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad446d6471bddba97f8bfcee8c51e4580"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad446d6471bddba97f8bfcee8c51e4580">&#9670;&nbsp;</a></span>remmina_rdp_event_event_push()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_event_event_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336">RemminaPluginRdpEvent</a> *&#160;</td>
+ <td class="paramname"><em>e</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__event_8c_source.html#l00092">92</a> of file <a class="el" href="rdp__event_8c_source.html">rdp_event.c</a>.</p>
+
+</div>
+</div>
+<a id="a69548c1c051b84912d45d57d4dc34098"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69548c1c051b84912d45d57d4dc34098">&#9670;&nbsp;</a></span>rf_check_fds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL rf_check_fds </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abf232991d87607c920a7a72d9aa459dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf232991d87607c920a7a72d9aa459dc">&#9670;&nbsp;</a></span>rf_get_fds()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_get_fds </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>rfds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>rcount</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae498dd186f5003596bc2aa64deb87ca7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae498dd186f5003596bc2aa64deb87ca7">&#9670;&nbsp;</a></span>rf_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a20775c6e0192fca892cf442e8e264433"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20775c6e0192fca892cf442e8e264433">&#9670;&nbsp;</a></span>rf_object_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_object_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1">RemminaPluginRdpUiObject</a> *&#160;</td>
+ <td class="paramname"><em>obj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab113687b2d454d2ef5865de40a9cabbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab113687b2d454d2ef5865de40a9cabbb">&#9670;&nbsp;</a></span>rf_uninit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rf_uninit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8c_source.html#l00089">89</a> of file <a class="el" href="rdp__plugin_8c_source.html">rdp_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__plugin_8h.html">rdp_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__plugin_8h.js b/docs/rdp__plugin_8h.js
new file mode 100644
index 000000000..dd4a58c45
--- /dev/null
+++ b/docs/rdp__plugin_8h.js
@@ -0,0 +1,65 @@
+var rdp__plugin_8h =
+[
+ [ "rf_clipboard", "structrf__clipboard.html", "structrf__clipboard" ],
+ [ "rf_pointer", "structrf__pointer.html", "structrf__pointer" ],
+ [ "rf_bitmap", "structrf__bitmap.html", "structrf__bitmap" ],
+ [ "rf_glyph", "structrf__glyph.html", "structrf__glyph" ],
+ [ "remmina_plugin_rdp_event", "structremmina__plugin__rdp__event.html", "structremmina__plugin__rdp__event" ],
+ [ "region", "structregion.html", "structregion" ],
+ [ "remmina_plugin_rdp_ui_object", "structremmina__plugin__rdp__ui__object.html", "structremmina__plugin__rdp__ui__object" ],
+ [ "remmina_plugin_rdp_keymap_entry", "structremmina__plugin__rdp__keymap__entry.html", "structremmina__plugin__rdp__keymap__entry" ],
+ [ "rf_context", "structrf__context.html", "structrf__context" ],
+ [ "RemminaPluginRdpEvent", "rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336", null ],
+ [ "RemminaPluginRdpKeymapEntry", "rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267", null ],
+ [ "RemminaPluginRdpUiObject", "rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1", null ],
+ [ "rfBitmap", "rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94", null ],
+ [ "rfClipboard", "rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea", null ],
+ [ "rfContext", "rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16", null ],
+ [ "rfGlyph", "rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a", null ],
+ [ "rfPointer", "rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf", null ],
+ [ "RemminaPluginRdpEventType", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7", [
+ [ "REMMINA_RDP_EVENT_TYPE_SCANCODE", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_MOUSE", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b", null ],
+ [ "REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05", null ],
+ [ "REMMINA_RDP_EVENT_DISCONNECT", "rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03", null ]
+ ] ],
+ [ "RemminaPluginRdpUiClipboardType", "rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6", [
+ [ "REMMINA_RDP_UI_CLIPBOARD_FORMATLIST", "rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc", null ],
+ [ "REMMINA_RDP_UI_CLIPBOARD_GET_DATA", "rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7", null ],
+ [ "REMMINA_RDP_UI_CLIPBOARD_SET_DATA", "rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad", null ],
+ [ "REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT", "rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe", null ]
+ ] ],
+ [ "RemminaPluginRdpUiEeventType", "rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35", [
+ [ "REMMINA_RDP_UI_EVENT_UPDATE_SCALE", "rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4", null ],
+ [ "REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE", "rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48", null ]
+ ] ],
+ [ "RemminaPluginRdpUiPointerType", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed", [
+ [ "REMMINA_RDP_POINTER_NEW", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232", null ],
+ [ "REMMINA_RDP_POINTER_FREE", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2", null ],
+ [ "REMMINA_RDP_POINTER_SET", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068", null ],
+ [ "REMMINA_RDP_POINTER_NULL", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49", null ],
+ [ "REMMINA_RDP_POINTER_DEFAULT", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56", null ],
+ [ "REMMINA_RDP_POINTER_SETPOS", "rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522", null ]
+ ] ],
+ [ "RemminaPluginRdpUiType", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072", [
+ [ "REMMINA_RDP_UI_UPDATE_REGIONS", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e", null ],
+ [ "REMMINA_RDP_UI_CONNECTED", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9", null ],
+ [ "REMMINA_RDP_UI_RECONNECT_PROGRESS", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7", null ],
+ [ "REMMINA_RDP_UI_CURSOR", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe", null ],
+ [ "REMMINA_RDP_UI_RFX", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c", null ],
+ [ "REMMINA_RDP_UI_NOCODEC", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b", null ],
+ [ "REMMINA_RDP_UI_CLIPBOARD", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f", null ],
+ [ "REMMINA_RDP_UI_EVENT", "rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000", null ]
+ ] ],
+ [ "remmina_rdp_event_event_push", "rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580", null ],
+ [ "rf_check_fds", "rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098", null ],
+ [ "rf_get_fds", "rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc", null ],
+ [ "rf_init", "rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7", null ],
+ [ "rf_object_free", "rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433", null ],
+ [ "rf_uninit", "rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb", null ],
+ [ "remmina_plugin_service", "rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__plugin_8h_source.html b/docs/rdp__plugin_8h_source.html
new file mode 100644
index 000000000..42aa99a14
--- /dev/null
+++ b/docs/rdp__plugin_8h_source.html
@@ -0,0 +1,265 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__plugin_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) 2010-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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;freerdp/freerdp.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;freerdp/version.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;freerdp/channels/channels.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;freerdp/codec/color.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;freerdp/codec/rfx.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;freerdp/gdi/gdi.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;freerdp/gdi/dc.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;freerdp/gdi/region.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/cliprdr.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;freerdp/client/disp.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &lt;winpr/clipboard.h&gt;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/* Constants to workaround FreeRDP issue #5417 (min resolution in AVC mode) */</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define AVC_MIN_DESKTOP_WIDTH 642</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define AVC_MIN_DESKTOP_HEIGHT 480</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"><a class="line" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structrf__context.html">rf_context</a> <a class="code" href="structrf__context.html">rfContext</a>;</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">#define GET_PLUGIN_DATA(gp) (rfContext *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;)</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#define DEFAULT_QUALITY_0 0x6f</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#define DEFAULT_QUALITY_1 0x07</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define DEFAULT_QUALITY_2 0x01</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#define DEFAULT_QUALITY_9 0x80</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structrf__clipboard.html"> 70</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structrf__clipboard.html">rf_clipboard</a> {</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68"> 71</a></span>&#160; <a class="code" href="structrf__context.html">rfContext</a> * <a class="code" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa"> 72</a></span>&#160; CliprdrClientContext * <a class="code" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf"> 73</a></span>&#160; wClipboard * <a class="code" href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf">system</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3"> 74</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3">requestedFormatId</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b"> 76</a></span>&#160; UINT32 <a class="code" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724"> 77</a></span>&#160; gulong <a class="code" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205"> 79</a></span>&#160; pthread_mutex_t <a class="code" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7"> 80</a></span>&#160; pthread_cond_t <a class="code" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">transfer_clip_cond</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1"> 81</a></span>&#160; <span class="keyword">enum</span> { <a class="code" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1">SCDW_NONE</a>, <a class="code" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e">SCDW_BUSY_WAIT</a>, <a class="code" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b">SCDW_ABORTING</a> } <a class="code" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7"> 82</a></span>&#160; gpointer <a class="code" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;};</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea"> 84</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structrf__clipboard.html">rf_clipboard</a> <a class="code" href="structrf__clipboard.html">rfClipboard</a>;</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;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structrf__pointer.html"> 87</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structrf__pointer.html">rf_pointer</a> {</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf"> 88</a></span>&#160; rdpPointer <a class="code" href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf">pointer</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0"> 89</a></span>&#160; GdkCursor * <a class="code" href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0">cursor</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"><a class="line" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf"> 91</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structrf__pointer.html">rf_pointer</a> <a class="code" href="structrf__pointer.html">rfPointer</a>;</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"><a class="line" href="structrf__bitmap.html"> 93</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structrf__bitmap.html">rf_bitmap</a> {</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507"> 94</a></span>&#160; rdpBitmap <a class="code" href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507">bitmap</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b"> 95</a></span>&#160; Pixmap <a class="code" href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b">pixmap</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b"> 96</a></span>&#160; cairo_surface_t * <a class="code" href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b">surface</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;};</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94"> 98</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structrf__bitmap.html">rf_bitmap</a> <a class="code" href="structrf__bitmap.html">rfBitmap</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structrf__glyph.html"> 100</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structrf__glyph.html">rf_glyph</a> {</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94"> 101</a></span>&#160; rdpGlyph <a class="code" href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94">glyph</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22"> 102</a></span>&#160; Pixmap <a class="code" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">pixmap</a>;</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"><a class="line" href="rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a"> 104</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structrf__glyph.html">rf_glyph</a> <a class="code" href="structrf__glyph.html">rfGlyph</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7"> 106</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2"> 107</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a>,</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f"> 108</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a>,</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b"> 109</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a>,</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"> 110</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a>,</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6"> 111</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a>,</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b"> 112</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a>,</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05"> 113</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a>,</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03"> 114</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;} <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html"> 117</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a> {</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126"> 118</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a> <a class="code" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a>;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">union </span>{</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094"> 121</a></span>&#160; BOOL <a class="code" href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094">up</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e"> 122</a></span>&#160; BOOL <a class="code" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">extended</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151"> 123</a></span>&#160; UINT8 <a class="code" href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151">key_code</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b"> 124</a></span>&#160; UINT32 <a class="code" href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b">unicode_code</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; } key_event;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c"> 127</a></span>&#160; UINT16 <a class="code" href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c">flags</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105"> 128</a></span>&#160; UINT16 <a class="code" href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105">x</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf"> 129</a></span>&#160; UINT16 <a class="code" href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf">y</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; BOOL extended;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; } mouse_event;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082"> 133</a></span>&#160; CLIPRDR_FORMAT_LIST *<a class="code" href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082">pFormatList</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; } clipboard_formatlist;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624"> 136</a></span>&#160; BYTE * <a class="code" href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624">data</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba"> 137</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba">size</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; } clipboard_formatdataresponse;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c"> 140</a></span>&#160; CLIPRDR_FORMAT_DATA_REQUEST *<a class="code" href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c">pFormatDataRequest</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; } clipboard_formatdatarequest;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b"> 143</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b">width</a>;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649"> 144</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649">height</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0"> 145</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0">desktopOrientation</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985"> 146</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985">desktopScaleFactor</a>;</div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57"> 147</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57">deviceScaleFactor</a>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; } monitor_layout;</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"> 150</span>&#160;};</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336"> 151</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a> <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a>;</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"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072"> 153</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e"> 154</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a> = 0,</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9"> 155</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a>,</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7"> 156</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a>,</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe"> 157</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a>,</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c"> 158</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">REMMINA_RDP_UI_RFX</a>,</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b"> 159</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">REMMINA_RDP_UI_NOCODEC</a>,</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f"> 160</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a>,</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000"> 161</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;} <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a>;</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="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6"> 164</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc"> 165</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a>,</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7"> 166</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a>,</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad"> 167</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a>,</div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe"> 168</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT</a></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;} <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed"> 171</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232"> 172</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a>,</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2"> 173</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a>,</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068"> 174</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a>,</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49"> 175</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a>,</div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56"> 176</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a>,</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522"> 177</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;} <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35"> 180</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4"> 181</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a>,</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48"> 182</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;} <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="structregion.html"> 185</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10"> 186</a></span>&#160; gint x, <a class="code" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">y</a>, w, h;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;} <a class="code" href="structregion.html">region</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html"> 189</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a> {</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262"> 190</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a> <a class="code" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a>;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60"> 191</a></span>&#160; gboolean <a class="code" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a>;</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c"> 192</a></span>&#160; gboolean <a class="code" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6"> 193</a></span>&#160; pthread_mutex_t <a class="code" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a>;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509"> 194</a></span>&#160; pthread_cond_t <a class="code" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a>;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">union </span>{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d"> 197</a></span>&#160; <a class="code" href="structregion.html">region</a> *<a class="code" href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d">ureg</a>;</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb"> 198</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb">ninvalid</a>;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; } reg;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db"> 201</a></span>&#160; rdpContext * <a class="code" href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db">context</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed"> 202</a></span>&#160; <a class="code" href="structrf__pointer.html">rfPointer</a> * <a class="code" href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed">pointer</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589"> 203</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a> <a class="code" href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589">type</a>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; } cursor;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559"> 206</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">left</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070"> 207</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">top</a>;</div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e"> 208</a></span>&#160; RFX_MESSAGE * <a class="code" href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e">message</a>;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; } rfx;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; gint left;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gint top;</div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f"> 213</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f">width</a>;</div><div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849"> 214</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849">height</a>;</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1"> 215</a></span>&#160; UINT8 * <a class="code" href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1">bitmap</a>;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; } nocodec;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725"> 218</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a> <a class="code" href="structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725">type</a>;</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475"> 219</a></span>&#160; GtkTargetList * <a class="code" href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475">targetlist</a>;</div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b"> 220</a></span>&#160; UINT32 <a class="code" href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b">format</a>;</div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a"> 221</a></span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> * <a class="code" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a>;</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181"> 222</a></span>&#160; gpointer <a class="code" href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181">data</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; } clipboard;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b"> 225</a></span>&#160; <a class="code" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a> <a class="code" href="structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b">type</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; } event;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9"> 228</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9">x</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c"> 229</a></span>&#160; gint <a class="code" href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c">y</a>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; } pos;</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="comment">/* We can also return values here, usually integers*/</span></div><div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee"> 233</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="comment">/* Some functions also may return a pointer. */</span></div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24"> 235</a></span>&#160; <span class="keywordtype">void</span> * <a class="code" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">retptr</a>;</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;</div><div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__keymap__entry.html"> 238</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a> {</div><div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88"> 239</a></span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">orig_keycode</a>;</div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1"> 240</a></span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">translated_keycode</a>;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;} <a class="code" href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">RemminaPluginRdpKeymapEntry</a>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="structrf__context.html"> 243</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structrf__context.html">rf_context</a> {</div><div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be"> 244</a></span>&#160; rdpContext <a class="code" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a>;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; DEFINE_RDP_CLIENT_COMMON();</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3"> 247</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="comment">/* main */</span></div><div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d"> 250</a></span>&#160; rdpSettings * <a class="code" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a>;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362"> 251</a></span>&#160; freerdp * <a class="code" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec"> 253</a></span>&#160; pthread_t <a class="code" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a>;</div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78"> 254</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a>;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="structrf__context.html#acacad775c2c168f900deaa6c90481319"> 255</a></span>&#160; gboolean <a class="code" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</a>;</div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62"> 256</a></span>&#160; gboolean <a class="code" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">thread_cancelled</a>;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8"> 258</a></span>&#160; CliprdrClientContext * <a class="code" href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">cliprdr</a>;</div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174"> 259</a></span>&#160; DispClientContext * <a class="code" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a>;</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="structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4"> 261</a></span>&#160; RDP_PLUGIN_DATA rdpdr_data[5];</div><div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="structrf__context.html#a2a708b989f3e12af802ab4266af39363"> 262</a></span>&#160; RDP_PLUGIN_DATA drdynvc_data[5];</div><div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f"> 263</a></span>&#160; gchar rdpsnd_options[20];</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706"> 265</a></span>&#160; RFX_CONTEXT * <a class="code" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a>;</div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a"> 266</a></span>&#160; gboolean <a class="code" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rdpgfxchan</a>;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73"> 268</a></span>&#160; gboolean <a class="code" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a>;</div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8"> 269</a></span>&#160; gboolean <a class="code" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a>;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="comment">/* orphaned: rf_context has still one or more libfreerdp thread active,</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"> * but no longer maintained by an open RemminaProtocolWidget/tab.</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"> * When the orphaned thread terminates, we must cleanup rf_context.</span></div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4"> 274</a></span>&#160; gboolean <a class="code" href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4">orphaned</a>;</div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee"> 275</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a>;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413"> 276</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a>;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2"> 278</a></span>&#160; gboolean <a class="code" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">sw_gdi</a>;</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="structrf__context.html#acee2095e72fb2428c498f62e21800026"> 279</a></span>&#160; GtkWidget * <a class="code" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a>;</div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70"> 280</a></span>&#160; gint <a class="code" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a>;</div><div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169"> 281</a></span>&#160; gint <a class="code" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a>;</div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="structrf__context.html#a584505347366c40e6efa710353d4264f"> 282</a></span>&#160; gdouble <a class="code" href="structrf__context.html#a584505347366c40e6efa710353d4264f">scale_x</a>;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764"> 283</a></span>&#160; gdouble <a class="code" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">scale_y</a>;</div><div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="structrf__context.html#a957e6f6867170470689210d55770342e"> 284</a></span>&#160; guint <a class="code" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a>;</div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8"> 285</a></span>&#160; gboolean <a class="code" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">use_client_keymap</a>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76"> 287</a></span>&#160; gint <a class="code" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a>;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889"> 288</a></span>&#160; GdkDisplay * <a class="code" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a>;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999"> 289</a></span>&#160; GdkVisual * <a class="code" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">visual</a>;</div><div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6"> 290</a></span>&#160; cairo_surface_t * <a class="code" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a>;</div><div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0"> 291</a></span>&#160; cairo_format_t <a class="code" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a>;</div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b"> 292</a></span>&#160; gint <a class="code" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a>;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091"> 293</a></span>&#160; gint <a class="code" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">scanline_pad</a>;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523"> 294</a></span>&#160; gint * <a class="code" href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523">colormap</a>;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960"> 296</a></span>&#160; guint <a class="code" href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960">object_id_seq</a>;</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="structrf__context.html#aafce196b029d2578151275acd07ccb82"> 297</a></span>&#160; GHashTable * <a class="code" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">object_table</a>;</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"><a class="line" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3"> 299</a></span>&#160; GAsyncQueue * <a class="code" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a>;</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329"> 300</a></span>&#160; pthread_mutex_t <a class="code" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a>;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0"> 301</a></span>&#160; guint <a class="code" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a>;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701"> 303</a></span>&#160; GArray * <a class="code" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a>;</div><div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565"> 304</a></span>&#160; GAsyncQueue * <a class="code" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a>;</div><div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a"> 305</a></span>&#160; gint event_pipe[2];</div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669"> 306</a></span>&#160; HANDLE <a class="code" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a>;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="structrf__context.html#a72d2a3d60347327237692947df93aea7"> 308</a></span>&#160; <a class="code" href="structrf__clipboard.html">rfClipboard</a> <a class="code" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a>;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d"> 310</a></span>&#160; GArray * <a class="code" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a>; <span class="comment">/* Array of RemminaPluginRdpKeymapEntry */</span></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"><a class="line" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3"> 312</a></span>&#160; gboolean <a class="code" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</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"><a class="line" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68"> 314</a></span>&#160; <span class="keyword">enum</span> { REMMINA_POSTCONNECT_ERROR_OK = 0, REMMINA_POSTCONNECT_ERROR_GDI_INIT = 1, REMMINA_POSTCONNECT_ERROR_NO_H264 } postconnect_error;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;};</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"><a class="line" href="rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1"> 317</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a> <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a>;</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="keywordtype">void</span> <a class="code" href="rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7">rf_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb">rf_uninit</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc">rf_get_fds</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keywordtype">void</span> **rfds, <span class="keywordtype">int</span> *rcount);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;BOOL <a class="code" href="rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098">rf_check_fds</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433">rf_object_free</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="structremmina__plugin__rdp__ui__object.html">RemminaPluginRdpUiObject</a> *obj);</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;<span class="keywordtype">void</span> <a class="code" href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="structremmina__plugin__rdp__event.html">RemminaPluginRdpEvent</a> *e);</div><div class="ttc" id="rdp__plugin_8h_html_ad446d6471bddba97f8bfcee8c51e4580"><div class="ttname"><a href="rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580">remmina_rdp_event_event_push</a></div><div class="ttdeci">void remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__event_8c_source.html#l00092">rdp_event.c:92</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a773214c0bb4f351a609a085f786304aa"><div class="ttname"><a href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">rf_clipboard::context</a></div><div class="ttdeci">CliprdrClientContext * context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00072">rdp_plugin.h:72</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068">REMMINA_RDP_POINTER_SET</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00174">rdp_plugin.h:174</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b">REMMINA_RDP_UI_NOCODEC</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00159">rdp_plugin.h:159</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49">REMMINA_RDP_POINTER_NULL</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00175">rdp_plugin.h:175</a></div></div>
+<div class="ttc" id="structrf__context_html_aa574515edb4966117f539d26e26f0a62"><div class="ttname"><a href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">rf_context::thread_cancelled</a></div><div class="ttdeci">gboolean thread_cancelled</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00256">rdp_plugin.h:256</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a0ff77bb8ed355ac55a7dc4ab28a02649"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649">remmina_plugin_rdp_event::height</a></div><div class="ttdeci">gint height</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00144">rdp_plugin.h:144</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a6cdd472797d227d7ce79a312c0fa2a24"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">remmina_plugin_rdp_ui_object::retptr</a></div><div class="ttdeci">void * retptr</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00235">rdp_plugin.h:235</a></div></div>
+<div class="ttc" id="structrf__context_html_af40c80ff8296b9bcc3ac437bf0be55f8"><div class="ttname"><a href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">rf_context::is_reconnecting</a></div><div class="ttdeci">gboolean is_reconnecting</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00269">rdp_plugin.h:269</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a52ca364a1902d7f4095234923feed724"><div class="ttname"><a href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">rf_clipboard::clipboard_handler</a></div><div class="ttdeci">gulong clipboard_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00077">rdp_plugin.h:77</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ac598f6590d49658979b1de7bb57ab725"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiClipboardType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00218">rdp_plugin.h:218</a></div></div>
+<div class="ttc" id="structregion_html_a97015e361d0cbedf7dcab10fbea95b10"><div class="ttname"><a href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">region::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00186">rdp_plugin.h:186</a></div></div>
+<div class="ttc" id="structrf__bitmap_html_a6210ab69c4338e23396f6838a255a50b"><div class="ttname"><a href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b">rf_bitmap::pixmap</a></div><div class="ttdeci">Pixmap pixmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00095">rdp_plugin.h:95</a></div></div>
+<div class="ttc" id="structrf__context_html_a957e6f6867170470689210d55770342e"><div class="ttname"><a href="structrf__context.html#a957e6f6867170470689210d55770342e">rf_context::delayed_monitor_layout_handler</a></div><div class="ttdeci">guint delayed_monitor_layout_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00284">rdp_plugin.h:284</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a></div><div class="ttdeci">RemminaPluginRdpUiEeventType</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00180">rdp_plugin.h:180</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a64657b5e71205d98805ca66b01bfae3c"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">remmina_plugin_rdp_ui_object::complete</a></div><div class="ttdeci">gboolean complete</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00192">rdp_plugin.h:192</a></div></div>
+<div class="ttc" id="structrf__context_html_acacad775c2c168f900deaa6c90481319"><div class="ttname"><a href="structrf__context.html#acacad775c2c168f900deaa6c90481319">rf_context::user_cancelled</a></div><div class="ttdeci">gboolean user_cancelled</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00255">rdp_plugin.h:255</a></div></div>
+<div class="ttc" id="structrf__context_html_a40e89e126e5dd96a3f67e6f945a8867b"><div class="ttname"><a href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">rf_context::bpp</a></div><div class="ttdeci">gint bpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00292">rdp_plugin.h:292</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a02c2d40efeac883dcc6294be9782e082"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082">remmina_plugin_rdp_event::pFormatList</a></div><div class="ttdeci">CLIPRDR_FORMAT_LIST * pFormatList</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00133">rdp_plugin.h:133</a></div></div>
+<div class="ttc" id="structrf__context_html_a9134f0b8a6352cc257e1e91e162efea3"><div class="ttname"><a href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">rf_context::attempt_interactive_authentication</a></div><div class="ttdeci">gboolean attempt_interactive_authentication</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00312">rdp_plugin.h:312</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a2f6b6cb00f2511b7849654b026cfd105"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105">remmina_plugin_rdp_event::x</a></div><div class="ttdeci">UINT16 x</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00128">rdp_plugin.h:128</a></div></div>
+<div class="ttc" id="structrf__context_html_a8a310c8fad5daf6b9f4d8f854b04a764"><div class="ttname"><a href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">rf_context::scale_y</a></div><div class="ttdeci">gdouble scale_y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00283">rdp_plugin.h:283</a></div></div>
+<div class="ttc" id="structrf__context_html"><div class="ttname"><a href="structrf__context.html">rf_context</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00243">rdp_plugin.h:243</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a7e6c46b985270ee34b4347023a47612e"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e">remmina_plugin_rdp_ui_object::message</a></div><div class="ttdeci">RFX_MESSAGE * message</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00208">rdp_plugin.h:208</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a52a19044a33b92539c0da3ac415715ed"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed">remmina_plugin_rdp_ui_object::pointer</a></div><div class="ttdeci">rfPointer * pointer</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00202">rdp_plugin.h:202</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ab83d6365bee86707a38dc69cdb2e34db"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db">remmina_plugin_rdp_ui_object::context</a></div><div class="ttdeci">rdpContext * context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00201">rdp_plugin.h:201</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a7a1c9ce96d50f8902f7504bbfd0a057b"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b">remmina_plugin_rdp_event::unicode_code</a></div><div class="ttdeci">UINT32 unicode_code</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00124">rdp_plugin.h:124</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a></div><div class="ttdeci">RemminaPluginRdpUiType</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00153">rdp_plugin.h:153</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html"><div class="ttname"><a href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00117">rdp_plugin.h:117</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ae2405c3546b91c1ae200b14ef0e68026"><div class="ttname"><a href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">rf_clipboard::srv_clip_data_wait</a></div><div class="ttdeci">enum rf_clipboard::@39 srv_clip_data_wait</div></div>
+<div class="ttc" id="structrf__context_html_a3aead7f4d2c4580fcbd25e15679e19c6"><div class="ttname"><a href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">rf_context::surface</a></div><div class="ttdeci">cairo_surface_t * surface</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00290">rdp_plugin.h:290</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00112">rdp_plugin.h:112</a></div></div>
+<div class="ttc" id="structrf__context_html_aa79909e0ac140a3404151a40bed6a6ec"><div class="ttname"><a href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">rf_context::remmina_plugin_thread</a></div><div class="ttdeci">pthread_t remmina_plugin_thread</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00253">rdp_plugin.h:253</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8c_source.html#l00089">rdp_plugin.c:89</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a5c6be1637ed9e2ce72ffde2ed5400205"><div class="ttname"><a href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">rf_clipboard::transfer_clip_mutex</a></div><div class="ttdeci">pthread_mutex_t transfer_clip_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00079">rdp_plugin.h:79</a></div></div>
+<div class="ttc" id="structrf__context_html_ab5ffc4d8ba9d3d8a298414dc8e4efd2a"><div class="ttname"><a href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rf_context::rdpgfxchan</a></div><div class="ttdeci">gboolean rdpgfxchan</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00266">rdp_plugin.h:266</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00110">rdp_plugin.h:110</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00189">rdp_plugin.h:189</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a66caa2e83dfdc4655df71d81502f93e3"><div class="ttname"><a href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3">rf_clipboard::requestedFormatId</a></div><div class="ttdeci">int requestedFormatId</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00074">rdp_plugin.h:74</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ac8972b1def0a956b7c36534da0e56b3b"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b">remmina_plugin_rdp_event::width</a></div><div class="ttdeci">gint width</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00143">rdp_plugin.h:143</a></div></div>
+<div class="ttc" id="structrf__context_html_ae62cc5547984bf11865f93c7d63afdf0"><div class="ttname"><a href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">rf_context::ui_handler</a></div><div class="ttdeci">guint ui_handler</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00301">rdp_plugin.h:301</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03">REMMINA_RDP_EVENT_DISCONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00114">rdp_plugin.h:114</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000">REMMINA_RDP_UI_EVENT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00161">rdp_plugin.h:161</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a20775c6e0192fca892cf442e8e264433"><div class="ttname"><a href="rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433">rf_object_free</a></div><div class="ttdeci">void rf_object_free(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *obj)</div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48">REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00182">rdp_plugin.h:182</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a8303068061e16a6a1878be52b6403070"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">remmina_plugin_rdp_ui_object::top</a></div><div class="ttdeci">gint top</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00207">rdp_plugin.h:207</a></div></div>
+<div class="ttc" id="structrf__context_html_a7c4234646c4b584e41e36521b7eab889"><div class="ttname"><a href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">rf_context::display</a></div><div class="ttdeci">GdkDisplay * display</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00288">rdp_plugin.h:288</a></div></div>
+<div class="ttc" id="structrf__context_html_ae6190d1c82045bcd08e22ff6e98148a3"><div class="ttname"><a href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">rf_context::ui_queue</a></div><div class="ttdeci">GAsyncQueue * ui_queue</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00299">rdp_plugin.h:299</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a></div><div class="ttdeci">RemminaPluginRdpEventType</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00106">rdp_plugin.h:106</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a5375267e5c5285fbaf47ed22566e68c6"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">remmina_plugin_rdp_ui_object::sync_wait_mutex</a></div><div class="ttdeci">pthread_mutex_t sync_wait_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00193">rdp_plugin.h:193</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ab65c695a6089cb396a239ceb3b39416a"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">remmina_plugin_rdp_ui_object::clipboard</a></div><div class="ttdeci">rfClipboard * clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00221">rdp_plugin.h:221</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe">REMMINA_RDP_UI_CURSOR</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00157">rdp_plugin.h:157</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ab834752f9089cbc4a8841fdc037aa094"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094">remmina_plugin_rdp_event::up</a></div><div class="ttdeci">BOOL up</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00121">rdp_plugin.h:121</a></div></div>
+<div class="ttc" id="structrf__context_html_a05f37c213b04dfb9ae9b38c12bcdf7e3"><div class="ttname"><a href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">rf_context::protocol_widget</a></div><div class="ttdeci">RemminaProtocolWidget * protocol_widget</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00247">rdp_plugin.h:247</a></div></div>
+<div class="ttc" id="structrf__context_html_a4c35800dba8da687f7f56e3bb7a23413"><div class="ttname"><a href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">rf_context::reconnect_nattempt</a></div><div class="ttdeci">int reconnect_nattempt</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00276">rdp_plugin.h:276</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_ae498dd186f5003596bc2aa64deb87ca7"><div class="ttname"><a href="rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7">rf_init</a></div><div class="ttdeci">void rf_init(RemminaProtocolWidget *gp)</div></div>
+<div class="ttc" id="structrf__clipboard_html_a268b5336ae92d8d2f54c5ee441325d68"><div class="ttname"><a href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rf_clipboard::rfi</a></div><div class="ttdeci">rfContext * rfi</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00071">rdp_plugin.h:71</a></div></div>
+<div class="ttc" id="structrf__context_html_a7343f17d1aa3e70e112a9c20d6c6a999"><div class="ttname"><a href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">rf_context::visual</a></div><div class="ttdeci">GdkVisual * visual</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00289">rdp_plugin.h:289</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522">REMMINA_RDP_POINTER_SETPOS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00177">rdp_plugin.h:177</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a4957c6f98162b80c23f1915a0e46d0f1"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1">remmina_plugin_rdp_ui_object::bitmap</a></div><div class="ttdeci">UINT8 * bitmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00215">rdp_plugin.h:215</a></div></div>
+<div class="ttc" id="structrf__bitmap_html"><div class="ttname"><a href="structrf__bitmap.html">rf_bitmap</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00093">rdp_plugin.h:93</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2">REMMINA_RDP_POINTER_FREE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00173">rdp_plugin.h:173</a></div></div>
+<div class="ttc" id="structrf__context_html_a584505347366c40e6efa710353d4264f"><div class="ttname"><a href="structrf__context.html#a584505347366c40e6efa710353d4264f">rf_context::scale_x</a></div><div class="ttdeci">gdouble scale_x</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00282">rdp_plugin.h:282</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6">REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00111">rdp_plugin.h:111</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ae14721fd73459cc2be441c96f5a96be7"><div class="ttname"><a href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">rf_clipboard::srv_data</a></div><div class="ttdeci">gpointer srv_data</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00082">rdp_plugin.h:82</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b"><div class="ttname"><a href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b">rf_clipboard::SCDW_ABORTING</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00081">rdp_plugin.h:81</a></div></div>
+<div class="ttc" id="structrf__bitmap_html_a08e94dc9aafd15be33ce3094dd77f507"><div class="ttname"><a href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507">rf_bitmap::bitmap</a></div><div class="ttdeci">rdpBitmap bitmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00094">rdp_plugin.h:94</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a66db9fbb717f51e73ef57698a0193475"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475">remmina_plugin_rdp_ui_object::targetlist</a></div><div class="ttdeci">GtkTargetList * targetlist</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00219">rdp_plugin.h:219</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a69548c1c051b84912d45d57d4dc34098"><div class="ttname"><a href="rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098">rf_check_fds</a></div><div class="ttdeci">BOOL rf_check_fds(RemminaProtocolWidget *gp)</div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc">REMMINA_RDP_UI_CLIPBOARD_FORMATLIST</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00165">rdp_plugin.h:165</a></div></div>
+<div class="ttc" id="structrf__context_html_aa0b949ab1e2f06b7d5efeccc924efaee"><div class="ttname"><a href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">rf_context::reconnect_maxattempts</a></div><div class="ttdeci">int reconnect_maxattempts</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00275">rdp_plugin.h:275</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a84797e0cdf4484432740a8946325f126"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">remmina_plugin_rdp_event::type</a></div><div class="ttdeci">RemminaPluginRdpEventType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00118">rdp_plugin.h:118</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad">REMMINA_RDP_UI_CLIPBOARD_SET_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00167">rdp_plugin.h:167</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a2f43ecee45e4cd2313353fd596a7b589"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiPointerType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00203">rdp_plugin.h:203</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b">REMMINA_RDP_EVENT_TYPE_MOUSE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00109">rdp_plugin.h:109</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_acf5bf9da1a18e21409c4b10368f8dfd7"><div class="ttname"><a href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">rf_clipboard::transfer_clip_cond</a></div><div class="ttdeci">pthread_cond_t transfer_clip_cond</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00080">rdp_plugin.h:80</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ac89629727b6148bc512fdd788cc2a559"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">remmina_plugin_rdp_ui_object::left</a></div><div class="ttdeci">gint left</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00206">rdp_plugin.h:206</a></div></div>
+<div class="ttc" id="structrf__pointer_html_a38bbbd6f1e1505c3c04c120d83998bbf"><div class="ttname"><a href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf">rf_pointer::pointer</a></div><div class="ttdeci">rdpPointer pointer</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00088">rdp_plugin.h:88</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7">REMMINA_RDP_UI_RECONNECT_PROGRESS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00156">rdp_plugin.h:156</a></div></div>
+<div class="ttc" id="structrf__glyph_html_a19abe408a1c2a4c0c27ecddafb60cc22"><div class="ttname"><a href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">rf_glyph::pixmap</a></div><div class="ttdeci">Pixmap pixmap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00102">rdp_plugin.h:102</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f">REMMINA_RDP_UI_CLIPBOARD</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00160">rdp_plugin.h:160</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a30115ccc01062368d9b1189a0f378f57"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57">remmina_plugin_rdp_event::deviceScaleFactor</a></div><div class="ttdeci">gint deviceScaleFactor</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00147">rdp_plugin.h:147</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a7cee906e36975da3aadf6874da5da49c"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c">remmina_plugin_rdp_event::flags</a></div><div class="ttdeci">UINT16 flags</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00127">rdp_plugin.h:127</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html_aa63271d75f6dfda81584ddfb7c60b2a1"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">remmina_plugin_rdp_keymap_entry::translated_keycode</a></div><div class="ttdeci">unsigned translated_keycode</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00240">rdp_plugin.h:240</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a6c91276b122d70b8e723e046f6dbd151"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151">remmina_plugin_rdp_event::key_code</a></div><div class="ttdeci">UINT8 key_code</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00123">rdp_plugin.h:123</a></div></div>
+<div class="ttc" id="structrf__context_html_acee2095e72fb2428c498f62e21800026"><div class="ttname"><a href="structrf__context.html#acee2095e72fb2428c498f62e21800026">rf_context::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00279">rdp_plugin.h:279</a></div></div>
+<div class="ttc" id="structrf__context_html_aa13bb4f72f3024d81e9051de4bd65ec0"><div class="ttname"><a href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">rf_context::cairo_format</a></div><div class="ttdeci">cairo_format_t cairo_format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00291">rdp_plugin.h:291</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_af71a15df51ec1e4aeb4b2cd482f21181"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181">remmina_plugin_rdp_ui_object::data</a></div><div class="ttdeci">gpointer data</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00222">rdp_plugin.h:222</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_a81b19d4696e8a38139182113d5d741ba"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba">remmina_plugin_rdp_event::size</a></div><div class="ttdeci">int size</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00137">rdp_plugin.h:137</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a></div><div class="ttdeci">RemminaPluginRdpUiClipboardType</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00164">rdp_plugin.h:164</a></div></div>
+<div class="ttc" id="structrf__context_html_ac1f3330674d320c9d0ae408c551be6b8"><div class="ttname"><a href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">rf_context::use_client_keymap</a></div><div class="ttdeci">gboolean use_client_keymap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00285">rdp_plugin.h:285</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="structrf__context_html_a3712f6b20462e62a6bb87038e5f10d9d"><div class="ttname"><a href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">rf_context::keymap</a></div><div class="ttdeci">GArray * keymap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00310">rdp_plugin.h:310</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97ed"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a></div><div class="ttdeci">RemminaPluginRdpUiPointerType</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00171">rdp_plugin.h:171</a></div></div>
+<div class="ttc" id="structrf__context_html_a538399f42e4454d5a44effbc59ea9091"><div class="ttname"><a href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">rf_context::scanline_pad</a></div><div class="ttdeci">gint scanline_pad</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00293">rdp_plugin.h:293</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html_a20d8c7c462c3cb173e3baedbc19a8a88"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">remmina_plugin_rdp_keymap_entry::orig_keycode</a></div><div class="ttdeci">unsigned orig_keycode</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00239">rdp_plugin.h:239</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ae1093ce4f4e4e4b632ca4704ecfa698e"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">remmina_plugin_rdp_event::extended</a></div><div class="ttdeci">BOOL extended</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00122">rdp_plugin.h:122</a></div></div>
+<div class="ttc" id="structrf__pointer_html_a6e960686357ad03c023712bdfcef1cf0"><div class="ttname"><a href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0">rf_pointer::cursor</a></div><div class="ttdeci">GdkCursor * cursor</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00089">rdp_plugin.h:89</a></div></div>
+<div class="ttc" id="structrf__pointer_html"><div class="ttname"><a href="structrf__pointer.html">rf_pointer</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00087">rdp_plugin.h:87</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ad7541d40ba2e4463c36ffab12cfe3adf"><div class="ttname"><a href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf">rf_clipboard::system</a></div><div class="ttdeci">wClipboard * system</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00073">rdp_plugin.h:73</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_ab113687b2d454d2ef5865de40a9cabbb"><div class="ttname"><a href="rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb">rf_uninit</a></div><div class="ttdeci">void rf_uninit(RemminaProtocolWidget *gp)</div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a74da66442390d9a11361ff3128f5b43d"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d">remmina_plugin_rdp_ui_object::ureg</a></div><div class="ttdeci">region * ureg</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00197">rdp_plugin.h:197</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a71f1193d9e0f1ed5e97fa6ac39671267"><div class="ttname"><a href="rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267">RemminaPluginRdpKeymapEntry</a></div><div class="ttdeci">struct remmina_plugin_rdp_keymap_entry RemminaPluginRdpKeymapEntry</div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7">REMMINA_RDP_UI_CLIPBOARD_GET_DATA</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00166">rdp_plugin.h:166</a></div></div>
+<div class="ttc" id="structrf__context_html_ad06c1d1a2295fbdf455df0250dfb2523"><div class="ttname"><a href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523">rf_context::colormap</a></div><div class="ttdeci">gint * colormap</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00294">rdp_plugin.h:294</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232">REMMINA_RDP_POINTER_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00172">rdp_plugin.h:172</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_abf232991d87607c920a7a72d9aa459dc"><div class="ttname"><a href="rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc">rf_get_fds</a></div><div class="ttdeci">void rf_get_fds(RemminaProtocolWidget *gp, void **rfds, int *rcount)</div></div>
+<div class="ttc" id="structrf__context_html_adeee1ea1db2e19b99e4deb80b8a6a960"><div class="ttname"><a href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960">rf_context::object_id_seq</a></div><div class="ttdeci">guint object_id_seq</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00296">rdp_plugin.h:296</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe"><div class="ttname"><a href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe">REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00168">rdp_plugin.h:168</a></div></div>
+<div class="ttc" id="structrf__context_html_a5d119b1f108fe84c74e6484d48c2a565"><div class="ttname"><a href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">rf_context::event_queue</a></div><div class="ttdeci">GAsyncQueue * event_queue</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00304">rdp_plugin.h:304</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aca09eff5589ea5440e4ecff99879a509"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">remmina_plugin_rdp_ui_object::sync_wait_cond</a></div><div class="ttdeci">pthread_cond_t sync_wait_cond</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00194">rdp_plugin.h:194</a></div></div>
+<div class="ttc" id="structrf__context_html_a72d2a3d60347327237692947df93aea7"><div class="ttname"><a href="structrf__context.html#a72d2a3d60347327237692947df93aea7">rf_context::clipboard</a></div><div class="ttdeci">rfClipboard clipboard</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00308">rdp_plugin.h:308</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e"><div class="ttname"><a href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e">rf_clipboard::SCDW_BUSY_WAIT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00081">rdp_plugin.h:81</a></div></div>
+<div class="ttc" id="structrf__context_html_a522c742a333cf0603dfa7d06a7376669"><div class="ttname"><a href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">rf_context::event_handle</a></div><div class="ttdeci">HANDLE event_handle</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00306">rdp_plugin.h:306</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05">REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00113">rdp_plugin.h:113</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f">REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00108">rdp_plugin.h:108</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a80204884d38205f633551386e14d2ceb"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb">remmina_plugin_rdp_ui_object::ninvalid</a></div><div class="ttdeci">gint ninvalid</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00198">rdp_plugin.h:198</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a66cdf13076e9a6b0c8d4e73a2e565c60"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">remmina_plugin_rdp_ui_object::sync</a></div><div class="ttdeci">gboolean sync</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00191">rdp_plugin.h:191</a></div></div>
+<div class="ttc" id="structrf__clipboard_html"><div class="ttname"><a href="structrf__clipboard.html">rf_clipboard</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00070">rdp_plugin.h:70</a></div></div>
+<div class="ttc" id="structrf__context_html_aafce196b029d2578151275acd07ccb82"><div class="ttname"><a href="structrf__context.html#aafce196b029d2578151275acd07ccb82">rf_context::object_table</a></div><div class="ttdeci">GHashTable * object_table</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00297">rdp_plugin.h:297</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ad3b01f14f235b582b54aa9a0057d5c1c"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c">remmina_plugin_rdp_event::pFormatDataRequest</a></div><div class="ttdeci">CLIPRDR_FORMAT_DATA_REQUEST * pFormatDataRequest</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00140">rdp_plugin.h:140</a></div></div>
+<div class="ttc" id="structrf__context_html_a9d28c775fe1ee90ad48941d753564a76"><div class="ttname"><a href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">rf_context::srcBpp</a></div><div class="ttdeci">gint srcBpp</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00287">rdp_plugin.h:287</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9">REMMINA_RDP_UI_CONNECTED</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00155">rdp_plugin.h:155</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1"><div class="ttname"><a href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1">rf_clipboard::SCDW_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00081">rdp_plugin.h:81</a></div></div>
+<div class="ttc" id="structrf__glyph_html"><div class="ttname"><a href="structrf__glyph.html">rf_glyph</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00100">rdp_plugin.h:100</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a37ad07cb6de3640c693fd1871615aa4f"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f">remmina_plugin_rdp_ui_object::width</a></div><div class="ttdeci">gint width</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00213">rdp_plugin.h:213</a></div></div>
+<div class="ttc" id="structrf__context_html_a3c2ffa55ba97bc70324d61b8cc838e73"><div class="ttname"><a href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">rf_context::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00268">rdp_plugin.h:268</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a9f6aba25030b6859fbd57bee840feeee"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">remmina_plugin_rdp_ui_object::retval</a></div><div class="ttdeci">int retval</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00233">rdp_plugin.h:233</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_acc5ea94958152ae483d269a28f34b0b0"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0">remmina_plugin_rdp_event::desktopOrientation</a></div><div class="ttdeci">gint desktopOrientation</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00145">rdp_plugin.h:145</a></div></div>
+<div class="ttc" id="structrf__context_html_a96c4689f6bc062482536038cb3b24e78"><div class="ttname"><a href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">rf_context::scale</a></div><div class="ttdeci">RemminaScaleMode scale</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00254">rdp_plugin.h:254</a></div></div>
+<div class="ttc" id="structrf__context_html_a3a32bbd599b6684a3c41db9281863362"><div class="ttname"><a href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">rf_context::instance</a></div><div class="ttdeci">freerdp * instance</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00251">rdp_plugin.h:251</a></div></div>
+<div class="ttc" id="structrf__context_html_a660a5c5ea7256ab6a6486f3e831a9174"><div class="ttname"><a href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">rf_context::dispcontext</a></div><div class="ttdeci">DispClientContext * dispcontext</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00259">rdp_plugin.h:259</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_aaa49d1f558659bbf384142071a94991b"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiEeventType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00225">rdp_plugin.h:225</a></div></div>
+<div class="ttc" id="structrf__context_html_a335c40ccb90ae472525b203c832e7701"><div class="ttname"><a href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">rf_context::pressed_keys</a></div><div class="ttdeci">GArray * pressed_keys</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00303">rdp_plugin.h:303</a></div></div>
+<div class="ttc" id="structrf__context_html_a28d215e4ddb5decc543c3c6578df5e3d"><div class="ttname"><a href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">rf_context::settings</a></div><div class="ttdeci">rdpSettings * settings</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00250">rdp_plugin.h:250</a></div></div>
+<div class="ttc" id="structrf__context_html_a76ff7add3727e4a8b82f7b4615f09169"><div class="ttname"><a href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">rf_context::scale_height</a></div><div class="ttdeci">gint scale_height</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00281">rdp_plugin.h:281</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ab0223592e68f270b22632c83c300cac9"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9">remmina_plugin_rdp_ui_object::x</a></div><div class="ttdeci">gint x</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00228">rdp_plugin.h:228</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__keymap__entry_html"><div class="ttname"><a href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00238">rdp_plugin.h:238</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a7cd6e67a6db5b187bb5e820e840b528c"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c">remmina_plugin_rdp_ui_object::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00229">rdp_plugin.h:229</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_ad8c508c65e9f84c92f2f817eb7be2985"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985">remmina_plugin_rdp_event::desktopScaleFactor</a></div><div class="ttdeci">gint desktopScaleFactor</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00146">rdp_plugin.h:146</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_ac79fcbbcd9a64a242751bdf5bc0ba42b"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b">remmina_plugin_rdp_ui_object::format</a></div><div class="ttdeci">UINT32 format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00220">rdp_plugin.h:220</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2"><div class="ttname"><a href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2">REMMINA_RDP_EVENT_TYPE_SCANCODE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00107">rdp_plugin.h:107</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a486522051c55c84a6f96e681a0a1d849"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849">remmina_plugin_rdp_ui_object::height</a></div><div class="ttdeci">gint height</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00214">rdp_plugin.h:214</a></div></div>
+<div class="ttc" id="structrf__clipboard_html_ad22c0f3cd325db2746e9ca42cca0d65b"><div class="ttname"><a href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">rf_clipboard::format</a></div><div class="ttdeci">UINT32 format</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00076">rdp_plugin.h:76</a></div></div>
+<div class="ttc" id="structrf__context_html_a73a760b5eeaaf7d2a0684b1145d5d706"><div class="ttname"><a href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rf_context::rfx_context</a></div><div class="ttdeci">RFX_CONTEXT * rfx_context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00265">rdp_plugin.h:265</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56"><div class="ttname"><a href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56">REMMINA_RDP_POINTER_DEFAULT</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00176">rdp_plugin.h:176</a></div></div>
+<div class="ttc" id="structrf__context_html_ad4ea260ce64d09deea422b9067ee70b4"><div class="ttname"><a href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4">rf_context::orphaned</a></div><div class="ttdeci">gboolean orphaned</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00274">rdp_plugin.h:274</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c">REMMINA_RDP_UI_RFX</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00158">rdp_plugin.h:158</a></div></div>
+<div class="ttc" id="structregion_html"><div class="ttname"><a href="structregion.html">region</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00185">rdp_plugin.h:185</a></div></div>
+<div class="ttc" id="structrf__glyph_html_ac258216d1331ac44afc01a3329357e94"><div class="ttname"><a href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94">rf_glyph::glyph</a></div><div class="ttdeci">rdpGlyph glyph</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00101">rdp_plugin.h:101</a></div></div>
+<div class="ttc" id="structrf__context_html_a23192b58404d1dc629d5e7db3fb103be"><div class="ttname"><a href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">rf_context::context</a></div><div class="ttdeci">rdpContext context</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00244">rdp_plugin.h:244</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="structrf__context_html_aedf6fcd090e6ba788956565ce312ab70"><div class="ttname"><a href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">rf_context::scale_width</a></div><div class="ttdeci">gint scale_width</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00280">rdp_plugin.h:280</a></div></div>
+<div class="ttc" id="structrf__context_html_a3836f3c9bc575a05d5b35dbdb3186329"><div class="ttname"><a href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">rf_context::ui_queue_mutex</a></div><div class="ttdeci">pthread_mutex_t ui_queue_mutex</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00300">rdp_plugin.h:300</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_af02b51a258600a3c4f6d57e868dc39cf"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf">remmina_plugin_rdp_event::y</a></div><div class="ttdeci">UINT16 y</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00129">rdp_plugin.h:129</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__event_html_af9cd4e060d42600c8a9089b04612a624"><div class="ttname"><a href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624">remmina_plugin_rdp_event::data</a></div><div class="ttdeci">BYTE * data</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00136">rdp_plugin.h:136</a></div></div>
+<div class="ttc" id="structrf__bitmap_html_a52c9e53fa5dd0b9ab9be3622196ca80b"><div class="ttname"><a href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b">rf_bitmap::surface</a></div><div class="ttdeci">cairo_surface_t * surface</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00096">rdp_plugin.h:96</a></div></div>
+<div class="ttc" id="structrf__context_html_a91f20005b39ad9e1073cf25bf6d7c2f2"><div class="ttname"><a href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">rf_context::sw_gdi</a></div><div class="ttdeci">gboolean sw_gdi</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00278">rdp_plugin.h:278</a></div></div>
+<div class="ttc" id="structremmina__plugin__rdp__ui__object_html_a46d939889fba73c1360f924efaa09262"><div class="ttname"><a href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">remmina_plugin_rdp_ui_object::type</a></div><div class="ttdeci">RemminaPluginRdpUiType type</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00190">rdp_plugin.h:190</a></div></div>
+<div class="ttc" id="structrf__context_html_a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8"><div class="ttname"><a href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">rf_context::cliprdr</a></div><div class="ttdeci">CliprdrClientContext * cliprdr</div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00258">rdp_plugin.h:258</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4"><div class="ttname"><a href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4">REMMINA_RDP_UI_EVENT_UPDATE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00181">rdp_plugin.h:181</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html_a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e"><div class="ttname"><a href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e">REMMINA_RDP_UI_UPDATE_REGIONS</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__plugin_8h_source.html#l00154">rdp_plugin.h:154</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__plugin_8h.html">rdp_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__settings_8c.html b/docs/rdp__settings_8c.html
new file mode 100644
index 000000000..46928caa4
--- /dev/null
+++ b/docs/rdp__settings_8c.html
@@ -0,0 +1,718 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_settings.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__settings_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_settings.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__settings_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:afb0bb9a09b27c474802a18b351f1ed4b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a></td></tr>
+<tr class="separator:afb0bb9a09b27c474802a18b351f1ed4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f02af8e46a0a8766481466400a31ea4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">RemminaPluginRdpsetGridClass</a></td></tr>
+<tr class="separator:a5f02af8e46a0a8766481466400a31ea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6ed11971f5d908da70e3104067efe485"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">remmina_rdp_settings_kbd_init</a> (void)</td></tr>
+<tr class="separator:a6ed11971f5d908da70e3104067efe485"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf37368f3376add8547723d13443cccb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">remmina_rdp_settings_init</a> (void)</td></tr>
+<tr class="separator:acf37368f3376add8547723d13443cccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4052ab6359b14e8f9a4cf76bed4da90c"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a> (void)</td></tr>
+<tr class="separator:a4052ab6359b14e8f9a4cf76bed4da90c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab75cf9f565cf282e7fc2d2d80a5150ea"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea">remmina_rdp_settings_grid_get_type</a> (void)</td></tr>
+<tr class="separator:ab75cf9f565cf282e7fc2d2d80a5150ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a407235521d446266678392af62bd05a2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">remmina_rdp_settings_grid_destroy</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a407235521d446266678392af62bd05a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87769608a9bc40e8f05db66198e9153c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">remmina_rdp_settings_grid_load_layout</a> (<a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:a87769608a9bc40e8f05db66198e9153c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab07ddb91bc3e60f3bbc95d2a048f4fa7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">remmina_rdp_settings_grid_load_devicescalefactor_combo</a> (<a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:ab07ddb91bc3e60f3bbc95d2a048f4fa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af89ffbe792a083122e09a276f2295463"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">remmina_rdp_settings_grid_load_desktoporientation_combo</a> (<a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:af89ffbe792a083122e09a276f2295463"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1180d1f04b8a7bc00f58c770ecadc4dc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">remmina_rdp_settings_grid_load_quality</a> (<a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:a1180d1f04b8a7bc00f58c770ecadc4dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab69390b3995c4b4fed872d5bb363d9d5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">remmina_rdp_settings_appscale_on_changed</a> (GtkComboBox *widget, <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:ab69390b3995c4b4fed872d5bb363d9d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06bfe79d2df19ff863a1ed66c53fea35"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">remmina_rdp_settings_quality_on_changed</a> (GtkComboBox *widget, <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:a06bfe79d2df19ff863a1ed66c53fea35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93a69764a9bcb6eb014542009271d222"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a> (GtkToggleButton *togglebutton, <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:a93a69764a9bcb6eb014542009271d222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf62b97c1b4a42513a9204350030ed13"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">remmina_rdp_settings_set_combo_active_item</a> (GtkComboBox *combo, int itemval)</td></tr>
+<tr class="separator:acf62b97c1b4a42513a9204350030ed13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5303ffdbd1873d9d0097b50baef1972d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d">remmina_rdp_settings_grid_init</a> (<a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *grid)</td></tr>
+<tr class="separator:a5303ffdbd1873d9d0097b50baef1972d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc5f59377e21db6e1aef8bfc2da24b53"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a> (void)</td></tr>
+<tr class="separator:adc5f59377e21db6e1aef8bfc2da24b53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f05047cf10611ffb7a23a248650cb4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a> (int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</td></tr>
+<tr class="separator:a5f05047cf10611ffb7a23a248650cb4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a75d6e28b9664511ab5b048727befbf63"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</a> = 0</td></tr>
+<tr class="separator:a75d6e28b9664511ab5b048727befbf63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a526c9f77caff8ae5ba1f00e7c94c7444"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> = 0</td></tr>
+<tr class="separator:a526c9f77caff8ae5ba1f00e7c94c7444"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="afb0bb9a09b27c474802a18b351f1ed4b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afb0bb9a09b27c474802a18b351f1ed4b">&#9670;&nbsp;</a></span>RemminaPluginRdpsetGrid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a> <a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5f02af8e46a0a8766481466400a31ea4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f02af8e46a0a8766481466400a31ea4">&#9670;&nbsp;</a></span>RemminaPluginRdpsetGridClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a> <a class="el" href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">RemminaPluginRdpsetGridClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab69390b3995c4b4fed872d5bb363d9d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab69390b3995c4b4fed872d5bb363d9d5">&#9670;&nbsp;</a></span>remmina_rdp_settings_appscale_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_appscale_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00296">296</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a4052ab6359b14e8f9a4cf76bed4da90c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4052ab6359b14e8f9a4cf76bed4da90c">&#9670;&nbsp;</a></span>remmina_rdp_settings_get_keyboard_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_rdp_settings_get_keyboard_layout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00066">66</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f05047cf10611ffb7a23a248650cb4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f05047cf10611ffb7a23a248650cb4c">&#9670;&nbsp;</a></span>remmina_rdp_settings_get_orientation_scale_prefs()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_settings_get_orientation_scale_prefs </td>
+ <td>(</td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>desktopOrientation</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>desktopScaleFactor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>deviceScaleFactor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00608">608</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a407235521d446266678392af62bd05a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a407235521d446266678392af62bd05a2">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00123">123</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="ab75cf9f565cf282e7fc2d2d80a5150ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab75cf9f565cf282e7fc2d2d80a5150ea">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_rdp_settings_grid_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00114">114</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a5303ffdbd1873d9d0097b50baef1972d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5303ffdbd1873d9d0097b50baef1972d">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00401">401</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="af89ffbe792a083122e09a276f2295463"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af89ffbe792a083122e09a276f2295463">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_load_desktoporientation_combo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_load_desktoporientation_combo </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00243">243</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="ab07ddb91bc3e60f3bbc95d2a048f4fa7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab07ddb91bc3e60f3bbc95d2a048f4fa7">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_load_devicescalefactor_combo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_load_devicescalefactor_combo </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00227">227</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a87769608a9bc40e8f05db66198e9153c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87769608a9bc40e8f05db66198e9153c">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_load_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_load_layout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00191">191</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a1180d1f04b8a7bc00f58c770ecadc4dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1180d1f04b8a7bc00f58c770ecadc4dc">&#9670;&nbsp;</a></span>remmina_rdp_settings_grid_load_quality()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_grid_load_quality </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00260">260</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="acf37368f3376add8547723d13443cccb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf37368f3376add8547723d13443cccb">&#9670;&nbsp;</a></span>remmina_rdp_settings_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_settings_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00051">51</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ed11971f5d908da70e3104067efe485"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed11971f5d908da70e3104067efe485">&#9670;&nbsp;</a></span>remmina_rdp_settings_kbd_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_kbd_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00045">45</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="adc5f59377e21db6e1aef8bfc2da24b53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc5f59377e21db6e1aef8bfc2da24b53">&#9670;&nbsp;</a></span>remmina_rdp_settings_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_rdp_settings_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00597">597</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a06bfe79d2df19ff863a1ed66c53fea35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06bfe79d2df19ff863a1ed66c53fea35">&#9670;&nbsp;</a></span>remmina_rdp_settings_quality_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_quality_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00316">316</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a93a69764a9bcb6eb014542009271d222"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93a69764a9bcb6eb014542009271d222">&#9670;&nbsp;</a></span>remmina_rdp_settings_quality_option_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_quality_option_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a> *&#160;</td>
+ <td class="paramname"><em>grid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00354">354</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="acf62b97c1b4a42513a9204350030ed13"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf62b97c1b4a42513a9204350030ed13">&#9670;&nbsp;</a></span>remmina_rdp_settings_set_combo_active_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_rdp_settings_set_combo_active_item </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>combo</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>itemval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00378">378</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a75d6e28b9664511ab5b048727befbf63"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75d6e28b9664511ab5b048727befbf63">&#9670;&nbsp;</a></span>keyboard_layout</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint keyboard_layout = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00042">42</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a526c9f77caff8ae5ba1f00e7c94c7444"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a526c9f77caff8ae5ba1f00e7c94c7444">&#9670;&nbsp;</a></span>rdp_keyboard_layout</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rdp_keyboard_layout = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00043">43</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__settings_8c.html">rdp_settings.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__settings_8c.js b/docs/rdp__settings_8c.js
new file mode 100644
index 000000000..6292158b7
--- /dev/null
+++ b/docs/rdp__settings_8c.js
@@ -0,0 +1,25 @@
+var rdp__settings_8c =
+[
+ [ "_RemminaPluginRdpsetGrid", "struct___remmina_plugin_rdpset_grid.html", "struct___remmina_plugin_rdpset_grid" ],
+ [ "_RemminaPluginRdpsetGridClass", "struct___remmina_plugin_rdpset_grid_class.html", "struct___remmina_plugin_rdpset_grid_class" ],
+ [ "RemminaPluginRdpsetGrid", "rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b", null ],
+ [ "RemminaPluginRdpsetGridClass", "rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4", null ],
+ [ "remmina_rdp_settings_appscale_on_changed", "rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5", null ],
+ [ "remmina_rdp_settings_get_keyboard_layout", "rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c", null ],
+ [ "remmina_rdp_settings_get_orientation_scale_prefs", "rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c", null ],
+ [ "remmina_rdp_settings_grid_destroy", "rdp__settings_8c.html#a407235521d446266678392af62bd05a2", null ],
+ [ "remmina_rdp_settings_grid_get_type", "rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea", null ],
+ [ "remmina_rdp_settings_grid_init", "rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d", null ],
+ [ "remmina_rdp_settings_grid_load_desktoporientation_combo", "rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463", null ],
+ [ "remmina_rdp_settings_grid_load_devicescalefactor_combo", "rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7", null ],
+ [ "remmina_rdp_settings_grid_load_layout", "rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c", null ],
+ [ "remmina_rdp_settings_grid_load_quality", "rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc", null ],
+ [ "remmina_rdp_settings_init", "rdp__settings_8c.html#acf37368f3376add8547723d13443cccb", null ],
+ [ "remmina_rdp_settings_kbd_init", "rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485", null ],
+ [ "remmina_rdp_settings_new", "rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53", null ],
+ [ "remmina_rdp_settings_quality_on_changed", "rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35", null ],
+ [ "remmina_rdp_settings_quality_option_on_toggled", "rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222", null ],
+ [ "remmina_rdp_settings_set_combo_active_item", "rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13", null ],
+ [ "keyboard_layout", "rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63", null ],
+ [ "rdp_keyboard_layout", "rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__settings_8c_source.html b/docs/rdp__settings_8c_source.html
new file mode 100644
index 000000000..a22e7baa6
--- /dev/null
+++ b/docs/rdp__settings_8c_source.html
@@ -0,0 +1,151 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_settings.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__settings_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_settings.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__settings_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-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-2020 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;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__plugin_8h.html">rdp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="rdp__settings_8h.html">rdp_settings.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;freerdp/locale/keyboard.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63"> 42</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</a> = 0;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444"> 43</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> = 0;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485"> 45</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">remmina_rdp_settings_kbd_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</a> = freerdp_keyboard_init(<a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a>);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87"> 51</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">remmina_rdp_settings_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; gchar* value;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; value = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_keyboard_layout&quot;</span>);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; value[0])</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> = strtoul(value, NULL, 16);</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; g_free(value);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">remmina_rdp_settings_kbd_init</a>();</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;}</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c"> 66</a></span>&#160;guint <a class="code" href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</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;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_PLUGIN_RDPSET_GRID (remmina_rdp_settings_grid_get_type())</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#define REMMINA_RDPSET_GRID(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetGrid))</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#define REMMINA_RDPSET_GRID_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetGridClass))</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#define REMMINA_IS_PLUGIN_RDPSET_GRID(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID))</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#define REMMINA_IS_PLUGIN_RDPSET_GRID_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_PLUGIN_RDPSET_GRID))</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#define REMMINA_RDPSET_GRID_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_PLUGIN_RDPSET_GRID, RemminaPluginRdpsetGridClass))</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html"> 79</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a> {</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3"> 80</a></span>&#160; GtkGrid <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5"> 82</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">keyboard_layout_label</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec"> 83</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f"> 84</a></span>&#160; GtkListStore* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>;</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"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b"> 86</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621"> 87</a></span>&#160; GtkListStore* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319"> 88</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0"> 89</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d"> 90</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf"> 91</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29"> 92</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93"> 93</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6"> 94</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e"> 95</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970"> 96</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">use_client_keymap_check</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">/* FreeRDP /scale-desktop: Scaling of desktop app */</span></div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b"> 99</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">/* FreeRDP /scale-device: Scaling of appstore app */</span></div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860"> 101</a></span>&#160; GtkListStore* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3"> 102</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">/* FreeRDP /orientation: Orientation of display */</span></div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372"> 104</a></span>&#160; GtkListStore* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4"> 105</a></span>&#160; GtkWidget* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">desktop_orientation_combo</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"><a class="line" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af"> 107</a></span>&#160; guint <a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[10];</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;} <a class="code" href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a>;</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"><a class="line" href="struct___remmina_plugin_rdpset_grid_class.html"> 110</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a> {</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9"> 111</a></span>&#160; GtkGridClass <a class="code" href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9">parent_class</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;} <a class="code" href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">RemminaPluginRdpsetGridClass</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea"> 114</a></span>&#160;GType <a class="code" href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea">remmina_rdp_settings_grid_get_type</a>(<span class="keywordtype">void</span>) G_GNUC_CONST;</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;<a class="code" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>, remmina_rdp_settings_grid, GTK_TYPE_GRID)</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> remmina_rdp_settings_grid_class_init(<a class="code" href="struct___remmina_plugin_rdpset_grid_class.html">RemminaPluginRdpsetGridClass</a>* klass)</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; TRACE_CALL(__func__);</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="rdp__settings_8c.html#a407235521d446266678392af62bd05a2"> 123</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">remmina_rdp_settings_grid_destroy</a>(GtkWidget* widget, gpointer data)</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; gchar* s;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; guint new_layout;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; gint val;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; grid = REMMINA_RDPSET_GRID(widget);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>), &amp;iter, 0, &amp;new_layout, -1);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (new_layout != <a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a>) {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> = new_layout;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%X&quot;</span>, new_layout);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_keyboard_layout&quot;</span>, s);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; g_free(s);</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; <a class="code" href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">remmina_rdp_settings_kbd_init</a>();</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_use_client_keymap&quot;</span>,</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">use_client_keymap_check</a>)) ? <span class="stringliteral">&quot;1&quot;</span> : <span class="stringliteral">&quot;0&quot;</span>);</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"> 150</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%X&quot;</span>, grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[0]);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_quality_0&quot;</span>, s);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; g_free(s);</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; s = g_strdup_printf(<span class="stringliteral">&quot;%X&quot;</span>, grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[1]);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_quality_1&quot;</span>, s);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; g_free(s);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%X&quot;</span>, grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[2]);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_quality_2&quot;</span>, s);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; g_free(s);</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; s = g_strdup_printf(<span class="stringliteral">&quot;%X&quot;</span>, grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[9]);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_quality_9&quot;</span>, s);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; g_free(s);</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; <span class="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>), &amp;iter, 0, &amp;val, -1);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; val = 0;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, val);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_deviceScaleFactor&quot;</span>, s);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_free(s);</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; val = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>));</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, val);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_desktopScaleFactor&quot;</span>, s);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_free(s);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">desktop_orientation_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>), &amp;iter, 0, &amp;val, -1);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; val = 0;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, val);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a>(<span class="stringliteral">&quot;rdp_desktopOrientation&quot;</span>, s);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; g_free(s);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;}</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c"> 191</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">remmina_rdp_settings_grid_load_layout</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</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"> 193</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gint i;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; gchar* s;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; RDP_KEYBOARD_LAYOUT* layouts;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>, &amp;iter);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>, &amp;iter, 0, 0, 1, _(<span class="stringliteral">&quot;&lt;Auto detect&gt;&quot;</span>), -1);</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> (<a class="code" href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> == 0)</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a>), 0);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; gtk_label_set_text(GTK_LABEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">keyboard_layout_label</a>), <span class="stringliteral">&quot;-&quot;</span>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; layouts = freerdp_keyboard_get_layouts(RDP_KEYBOARD_LAYOUT_TYPE_STANDARD | RDP_KEYBOARD_LAYOUT_TYPE_VARIANT);</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; <span class="keywordflow">for</span> (i = 0; layouts[i].code; i++) {</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%08X - %s&quot;</span>, layouts[i].code, layouts[i].name);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>, &amp;iter);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>, &amp;iter, 0, layouts[i].code, 1, s, -1);</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="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a> == layouts[i].code)</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a>), i + 1);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</a> == layouts[i].code)</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; gtk_label_set_text(GTK_LABEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">keyboard_layout_label</a>), s);</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; g_free(s);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</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; free(layouts);</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;</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"><a class="line" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7"> 227</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">remmina_rdp_settings_grid_load_devicescalefactor_combo</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;{</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; GtkTreeIter iter;</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; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter, 0, 0, 1, _(<span class="stringliteral">&quot;&lt;Not set&gt;&quot;</span>), -1);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter, 0, 100, 1, <span class="stringliteral">&quot;100%&quot;</span>, -1);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter, 0, 140, 1, <span class="stringliteral">&quot;140%&quot;</span>, -1);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>, &amp;iter, 0, 180, 1, <span class="stringliteral">&quot;180%&quot;</span>, -1);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</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;</div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463"> 243</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">remmina_rdp_settings_grid_load_desktoporientation_combo</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter, 0, 0, 1, <span class="stringliteral">&quot;0°&quot;</span>, -1);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter, 0, 90, 1, <span class="stringliteral">&quot;90°&quot;</span>, -1);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter, 0, 180, 1, <span class="stringliteral">&quot;180°&quot;</span>, -1);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>, &amp;iter, 0, 270, 1, <span class="stringliteral">&quot;270°&quot;</span>, -1);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;}</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"><a class="line" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc"> 260</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">remmina_rdp_settings_grid_load_quality</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; gchar* value;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; GtkTreeIter iter;</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; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter, 0, -1, 1, _(<span class="stringliteral">&quot;&lt;Choose a quality level to edit…&gt;&quot;</span>), -1);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter, 0, 0, 1, _(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>), -1);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter, 0, 1, 1, _(<span class="stringliteral">&quot;Medium&quot;</span>), -1);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter, 0, 2, 1, _(<span class="stringliteral">&quot;Good&quot;</span>), -1);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; gtk_list_store_append(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; gtk_list_store_set(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>, &amp;iter, 0, 9, 1, _(<span class="stringliteral">&quot;Best (slowest)&quot;</span>), -1);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; memset(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>, 0, <span class="keyword">sizeof</span>(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>));</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; value = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_quality_0&quot;</span>);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[0] = (value &amp;&amp; value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_0);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; g_free(value);</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; value = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_quality_1&quot;</span>);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[1] = (value &amp;&amp; value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_1);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; g_free(value);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; value = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_quality_2&quot;</span>);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[2] = (value &amp;&amp; value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_2);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; g_free(value);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; value = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_quality_9&quot;</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[9] = (value &amp;&amp; value[0] ? strtoul(value, NULL, 16) : DEFAULT_QUALITY_9);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; g_free(value);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;}</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5"> 296</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">remmina_rdp_settings_appscale_on_changed</a>(GtkComboBox *widget, <a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a> *<a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; guint i = 0;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>), &amp;iter, 0, &amp;i, -1);</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="keywordflow">if</span> (i == 0) {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), FALSE);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_spin_button_set_range(GTK_SPIN_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), 0, 0);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gtk_spin_button_set_value(GTK_SPIN_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), 0);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), TRUE);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; gtk_spin_button_set_range(GTK_SPIN_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), 100, 500);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="comment">// gtk_spin_button_set_value(GTK_SPIN_BUTTON(grid-&gt;desktop_scale_factor_spin), i);</span></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;}</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35"> 316</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">remmina_rdp_settings_quality_on_changed</a>(GtkComboBox *widget, <a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a> *<a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; guint v;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; guint i = 0;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; gboolean sensitive;</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="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>), &amp;iter, 0, &amp;i, -1);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; sensitive = ( i != -1 );</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">if</span> (sensitive)</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; v = grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[i];</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; v = 0x3f; <span class="comment">/* All checkboxes disabled */</span></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; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a>), (v &amp; 1) == 0);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a>), (v &amp; 2) == 0);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a>), (v &amp; 4) == 0);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a>), (v &amp; 8) == 0);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a>), (v &amp; 0x20) == 0);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a>), (v &amp; 0x40) == 0);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a>), (v &amp; 0x80) != 0);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a>), (v &amp; 0x100) != 0);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</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; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a>), sensitive);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a>), sensitive);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a>), sensitive);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a>), sensitive);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a>), sensitive);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a>), sensitive);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a>), sensitive);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a>), sensitive);</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;}</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"><a class="line" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222"> 354</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>(GtkToggleButton* togglebutton, <a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a>* <a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;{</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; guint v;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; guint i = 0;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; GtkTreeIter iter;</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; <span class="keywordflow">if</span> (gtk_combo_box_get_active_iter(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a>), &amp;iter)) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>), &amp;iter, 0, &amp;i, -1);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">if</span> (i != -1) {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; v = 0;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a>)) ? 0 : 1);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a>)) ? 0 : 2);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a>)) ? 0 : 4);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a>)) ? 0 : 8);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a>)) ? 0 : 0x20);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a>)) ? 0 : 0x40);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a>)) ? 0x80 : 0);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; v |= (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a>)) ? 0x100 : 0);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a>[i] = v;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;}</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13"> 378</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">remmina_rdp_settings_set_combo_active_item</a>(GtkComboBox* combo, <span class="keywordtype">int</span> itemval)</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"> 380</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; GtkTreeModel *m;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; gboolean valid;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; m = gtk_combo_box_get_model(combo);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">if</span> (!m) {</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; valid = gtk_tree_model_get_iter_first(m, &amp;iter);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">while</span> (valid) {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gtk_tree_model_get(m, &amp;iter, 0, &amp;i, -1);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span> (i == itemval) {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; gtk_combo_box_set_active_iter(combo, &amp;iter);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; }</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; valid = gtk_tree_model_iter_next(m, &amp;iter);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</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"><a class="line" href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d"> 401</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d">remmina_rdp_settings_grid_init</a>(<a class="code" href="struct___remmina_plugin_rdpset_grid.html">RemminaPluginRdpsetGrid</a> *<a class="code" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a>)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;{</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; gchar* s;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; GtkWidget* widget;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; GtkCellRenderer* renderer;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordtype">int</span> desktopOrientation, desktopScaleFactor, deviceScaleFactor;</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; <span class="comment">/* Create the grid */</span></div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; g_signal_connect(G_OBJECT(grid), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">remmina_rdp_settings_grid_destroy</a>), NULL);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gtk_grid_set_row_homogeneous(GTK_GRID(grid), FALSE);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; gtk_grid_set_column_homogeneous(GTK_GRID(grid), FALSE);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(grid), 8);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 4);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 4);</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"> 417</span>&#160; <span class="comment">/* Create the content */</span></div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Keyboard layout&quot;</span>));</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 0, 1, 1);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a> = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a>));</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 0, 4, 1);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a> = widget;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; widget = gtk_label_new(<span class="stringliteral">&quot;-&quot;</span>);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 1, 4, 2);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">keyboard_layout_label</a> = widget;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">remmina_rdp_settings_grid_load_layout</a>(grid);</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; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Use client keyboard mapping&quot;</span>));</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 3, 3, 3);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">use_client_keymap_check</a> = widget;</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; s = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_use_client_keymap&quot;</span>);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget),</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; s &amp;&amp; s[0] == <span class="charliteral">&#39;1&#39;</span> ? TRUE : FALSE);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; g_free(s);</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; widget = gtk_label_new(_(<span class="stringliteral">&quot;Quality settings&quot;</span>));</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 6, 1, 4);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a> = gtk_list_store_new(2, G_TYPE_UINT, G_TYPE_STRING);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a>));</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 6, 4, 4);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;changed&quot;</span>,</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">remmina_rdp_settings_quality_on_changed</a>), grid);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a> = widget;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">remmina_rdp_settings_grid_load_quality</a>(grid);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Wallpaper&quot;</span>));</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 10, 2, 5);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a> = widget;</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; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Window drag&quot;</span>));</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 3, 10, 3, 5);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a> = widget;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Menu animation&quot;</span>));</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 13, 2, 6);</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a> = widget;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Theme&quot;</span>));</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 3, 13, 3, 6);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a> = widget;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Cursor shadow&quot;</span>));</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 16, 2, 7);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a> = widget;</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; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Cursor blinking&quot;</span>));</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 3, 16, 3, 7);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a> = widget;</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"> 515</span>&#160; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Font smoothing&quot;</span>));</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 19, 2, 8);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a> = widget;</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; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Composition&quot;</span>));</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 3, 19, 3, 8);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a>), grid);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a> = widget;</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; gtk_combo_box_set_active(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a>), 0);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Remote scale factor&quot;</span>));</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 27, 1, 1);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a> = gtk_list_store_new(2, G_TYPE_INT, G_TYPE_STRING);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a> = gtk_list_store_new(2, G_TYPE_INT, G_TYPE_STRING);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a>(&amp;desktopOrientation, &amp;desktopScaleFactor, &amp;deviceScaleFactor);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">remmina_rdp_settings_grid_load_devicescalefactor_combo</a>(grid);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">remmina_rdp_settings_grid_load_desktoporientation_combo</a>(grid);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Desktop scale factor %&quot;</span>));</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 27, 1, 1);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; widget = gtk_spin_button_new_with_range(0, 10000, 1);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 2, 27, 1, 1);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a> = widget;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Device scale factor %&quot;</span>));</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 28, 1, 1);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a>));</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 2, 28, 1, 1);</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a> = widget;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <a class="code" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">remmina_rdp_settings_set_combo_active_item</a>(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a>), deviceScaleFactor);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gtk_spin_button_set_value(GTK_SPIN_BUTTON(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a>), (gdouble)desktopScaleFactor);</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; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;changed&quot;</span>,</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; G_CALLBACK(<a class="code" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">remmina_rdp_settings_appscale_on_changed</a>), grid);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <a class="code" href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">remmina_rdp_settings_appscale_on_changed</a>(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a>), grid);</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; widget = gtk_label_new(_(<span class="stringliteral">&quot;Desktop orientation&quot;</span>));</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 29, 1, 1);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; widget = gtk_combo_box_new_with_model(GTK_TREE_MODEL(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a>));</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 29, 1, 1);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(widget), renderer, TRUE);</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(widget), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">desktop_orientation_combo</a> = widget;</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; <a class="code" href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">remmina_rdp_settings_set_combo_active_item</a>(GTK_COMBO_BOX(grid-&gt;<a class="code" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">desktop_orientation_combo</a>), desktopOrientation);</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;}</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"><a class="line" href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53"> 597</a></span>&#160;GtkWidget* <a class="code" href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; GtkWidget* widget;</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; widget = GTK_WIDGET(g_object_new(REMMINA_TYPE_PLUGIN_RDPSET_GRID, NULL));</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; gtk_widget_show(widget);</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; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;}</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"><a class="line" href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c"> 608</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a>(<span class="keywordtype">int</span> *desktopOrientation, <span class="keywordtype">int</span> *desktopScaleFactor, <span class="keywordtype">int</span> *deviceScaleFactor)</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;{</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="comment">/* See https://msdn.microsoft.com/en-us/library/cc240510.aspx */</span></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; <span class="keywordtype">int</span> orientation, dpsf, desf;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gchar* s;</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; *desktopOrientation = *desktopScaleFactor = *deviceScaleFactor = 0;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; s = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_desktopOrientation&quot;</span>);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; orientation = s ? atoi(s) : 0;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; g_free(s);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">if</span> (orientation != 90 &amp;&amp; orientation != 180 &amp;&amp; orientation != 270)</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; orientation = 0;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; *desktopOrientation = orientation;</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; s = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_desktopScaleFactor&quot;</span>);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; dpsf = s ? atoi(s) : 0;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; g_free(s);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">if</span> (dpsf &lt; 100 || dpsf &gt; 500)</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; s = <a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a>-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;rdp_deviceScaleFactor&quot;</span>);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; desf = s ? atoi(s) : 0;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; g_free(s);</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">if</span> (desf != 100 &amp;&amp; desf != 140 &amp;&amp; desf != 180)</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; *desktopScaleFactor = dpsf;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; *deviceScaleFactor = desf;</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;}</div><div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a2e5ba950872f1a5db42a7b077cb02860"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">_RemminaPluginRdpsetGrid::device_scale_factor_store</a></div><div class="ttdeci">GtkListStore * device_scale_factor_store</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00101">rdp_settings.c:101</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_aaddc109b8404a5bbca0c8b0810ae922e"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">_RemminaPluginRdpsetGrid::composition_check</a></div><div class="ttdeci">GtkWidget * composition_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00095">rdp_settings.c:95</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a785392cdbf938812c96ce67ec87d55c5"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">_RemminaPluginRdpsetGrid::keyboard_layout_label</a></div><div class="ttdeci">GtkWidget * keyboard_layout_label</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00082">rdp_settings.c:82</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_ab07ddb91bc3e60f3bbc95d2a048f4fa7"><div class="ttname"><a href="rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7">remmina_rdp_settings_grid_load_devicescalefactor_combo</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_load_devicescalefactor_combo(RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00227">rdp_settings.c:227</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a75d6e28b9664511ab5b048727befbf63"><div class="ttname"><a href="rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63">keyboard_layout</a></div><div class="ttdeci">static guint keyboard_layout</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00042">rdp_settings.c:42</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a7278fb4de2fb55e20ca0cc9ccffd5372"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">_RemminaPluginRdpsetGrid::desktop_orientation_store</a></div><div class="ttdeci">GtkListStore * desktop_orientation_store</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00104">rdp_settings.c:104</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_aadd548c398b9094ea862f189d0f088c6"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">_RemminaPluginRdpsetGrid::fontsmoothing_check</a></div><div class="ttdeci">GtkWidget * fontsmoothing_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00094">rdp_settings.c:94</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a526c9f77caff8ae5ba1f00e7c94c7444"><div class="ttname"><a href="rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444">rdp_keyboard_layout</a></div><div class="ttdeci">static guint rdp_keyboard_layout</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00043">rdp_settings.c:43</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a136e2daf6819eb2b3d83d20dab6f6621"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">_RemminaPluginRdpsetGrid::quality_store</a></div><div class="ttdeci">GtkListStore * quality_store</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00087">rdp_settings.c:87</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a5303ffdbd1873d9d0097b50baef1972d"><div class="ttname"><a href="rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d">remmina_rdp_settings_grid_init</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_init(RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00401">rdp_settings.c:401</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_ab75cf9f565cf282e7fc2d2d80a5150ea"><div class="ttname"><a href="rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea">remmina_rdp_settings_grid_get_type</a></div><div class="ttdeci">GType remmina_rdp_settings_grid_get_type(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00114">rdp_settings.c:114</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a515323687d10da1af50cee93ea2c9b93"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">_RemminaPluginRdpsetGrid::cursorblinking_check</a></div><div class="ttdeci">GtkWidget * cursorblinking_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00093">rdp_settings.c:93</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a87769608a9bc40e8f05db66198e9153c"><div class="ttname"><a href="rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c">remmina_rdp_settings_grid_load_layout</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_load_layout(RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00191">rdp_settings.c:191</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_aedf291b1b5cf61eb25731605e42fc319"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">_RemminaPluginRdpsetGrid::wallpaper_check</a></div><div class="ttdeci">GtkWidget * wallpaper_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00088">rdp_settings.c:88</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a5f05047cf10611ffb7a23a248650cb4c"><div class="ttname"><a href="rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a></div><div class="ttdeci">void remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00608">rdp_settings.c:608</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a93a69764a9bcb6eb014542009271d222"><div class="ttname"><a href="rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222">remmina_rdp_settings_quality_option_on_toggled</a></div><div class="ttdeci">static void remmina_rdp_settings_quality_option_on_toggled(GtkToggleButton *togglebutton, RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00354">rdp_settings.c:354</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a5ed6dc93d2f43db961c3c0a3a92f2d4d"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">_RemminaPluginRdpsetGrid::menuanimation_check</a></div><div class="ttdeci">GtkWidget * menuanimation_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00090">rdp_settings.c:90</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_acf37368f3376add8547723d13443cccb"><div class="ttname"><a href="rdp__settings_8c.html#acf37368f3376add8547723d13443cccb">remmina_rdp_settings_init</a></div><div class="ttdeci">void remmina_rdp_settings_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00051">rdp_settings.c:51</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a5f02af8e46a0a8766481466400a31ea4"><div class="ttname"><a href="rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4">RemminaPluginRdpsetGridClass</a></div><div class="ttdeci">struct _RemminaPluginRdpsetGridClass RemminaPluginRdpsetGridClass</div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_ae5744e97f282983eabf61572022702bf"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">_RemminaPluginRdpsetGrid::theme_check</a></div><div class="ttdeci">GtkWidget * theme_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00091">rdp_settings.c:91</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a1180d1f04b8a7bc00f58c770ecadc4dc"><div class="ttname"><a href="rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc">remmina_rdp_settings_grid_load_quality</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_load_quality(RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00260">rdp_settings.c:260</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a7390f86f6f634e4571db112662182a5b"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">_RemminaPluginRdpsetGrid::desktop_scale_factor_spin</a></div><div class="ttdeci">GtkWidget * desktop_scale_factor_spin</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00099">rdp_settings.c:99</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_adc5f59377e21db6e1aef8bfc2da24b53"><div class="ttname"><a href="rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a></div><div class="ttdeci">GtkWidget * remmina_rdp_settings_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00597">rdp_settings.c:597</a></div></div>
+<div class="ttc" id="rdp__plugin_8h_html"><div class="ttname"><a href="rdp__plugin_8h.html">rdp_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a387f974b25c4164811f661128e200c8c"><div class="ttname"><a href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">_RemminaPluginService::pref_set_value</a></div><div class="ttdeci">void(* pref_set_value)(const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00206">plugin.h:206</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_afb0bb9a09b27c474802a18b351f1ed4b"><div class="ttname"><a href="rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b">RemminaPluginRdpsetGrid</a></div><div class="ttdeci">struct _RemminaPluginRdpsetGrid RemminaPluginRdpsetGrid</div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_aff981af8772341c9c7adc7515bec3970"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">_RemminaPluginRdpsetGrid::use_client_keymap_check</a></div><div class="ttdeci">GtkWidget * use_client_keymap_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00096">rdp_settings.c:96</a></div></div>
+<div class="ttc" id="rcw_8c_html_a21e0a6e416667f30c2b1599b8b24faec"><div class="ttname"><a href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaConnectionWindow, rcw, GTK_TYPE_WINDOW)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00075">rcw.c:75</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a220634fcc8fcda079d8443b4898093af"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">_RemminaPluginRdpsetGrid::quality_values</a></div><div class="ttdeci">guint quality_values[10]</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00107">rdp_settings.c:107</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a9a06aa388c5b2a6d50d921b169b3723b"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">_RemminaPluginRdpsetGrid::quality_combo</a></div><div class="ttdeci">GtkWidget * quality_combo</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00086">rdp_settings.c:86</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a6ed11971f5d908da70e3104067efe485"><div class="ttname"><a href="rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485">remmina_rdp_settings_kbd_init</a></div><div class="ttdeci">static void remmina_rdp_settings_kbd_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00045">rdp_settings.c:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a860dc4e2fc1479ec1cbdcc53236df9e9"><div class="ttname"><a href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService::pref_get_value</a></div><div class="ttdeci">gchar *(* pref_get_value)(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00207">plugin.h:207</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_ade8c5db180127c00e8413ec0c110da29"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">_RemminaPluginRdpsetGrid::cursorshadow_check</a></div><div class="ttdeci">GtkWidget * cursorshadow_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00092">rdp_settings.c:92</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a2614c8e9f649cde3e0184228cb227cf4"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">_RemminaPluginRdpsetGrid::desktop_orientation_combo</a></div><div class="ttdeci">GtkWidget * desktop_orientation_combo</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00105">rdp_settings.c:105</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_acf62b97c1b4a42513a9204350030ed13"><div class="ttname"><a href="rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13">remmina_rdp_settings_set_combo_active_item</a></div><div class="ttdeci">static void remmina_rdp_settings_set_combo_active_item(GtkComboBox *combo, int itemval)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00378">rdp_settings.c:378</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_ab69390b3995c4b4fed872d5bb363d9d5"><div class="ttname"><a href="rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5">remmina_rdp_settings_appscale_on_changed</a></div><div class="ttdeci">static void remmina_rdp_settings_appscale_on_changed(GtkComboBox *widget, RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00296">rdp_settings.c:296</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a407235521d446266678392af62bd05a2"><div class="ttname"><a href="rdp__settings_8c.html#a407235521d446266678392af62bd05a2">remmina_rdp_settings_grid_destroy</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_destroy(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00123">rdp_settings.c:123</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html"><div class="ttname"><a href="rdp__settings_8h.html">rdp_settings.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a04a3bee67aa51808a69ded75e643e4c0"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">_RemminaPluginRdpsetGrid::windowdrag_check</a></div><div class="ttdeci">GtkWidget * windowdrag_check</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00089">rdp_settings.c:89</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_adf5582328d395582e4c364d64c3561a3"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">_RemminaPluginRdpsetGrid::grid</a></div><div class="ttdeci">GtkGrid grid</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00080">rdp_settings.c:80</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_ad64fd1c5a1230a98afaff86ece884ff3"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">_RemminaPluginRdpsetGrid::device_scale_factor_combo</a></div><div class="ttdeci">GtkWidget * device_scale_factor_combo</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00102">rdp_settings.c:102</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_a99ba668180c8cf5e5bfc2d899aee73ec"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">_RemminaPluginRdpsetGrid::keyboard_layout_combo</a></div><div class="ttdeci">GtkWidget * keyboard_layout_combo</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00083">rdp_settings.c:83</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_af89ffbe792a083122e09a276f2295463"><div class="ttname"><a href="rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463">remmina_rdp_settings_grid_load_desktoporientation_combo</a></div><div class="ttdeci">static void remmina_rdp_settings_grid_load_desktoporientation_combo(RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00243">rdp_settings.c:243</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_class_html_a3ebf87a7ad92e0d8877f222bb9c4f0c9"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9">_RemminaPluginRdpsetGridClass::parent_class</a></div><div class="ttdeci">GtkGridClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00111">rdp_settings.c:111</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00079">rdp_settings.c:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_class_html"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a></div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00110">rdp_settings.c:110</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a06bfe79d2df19ff863a1ed66c53fea35"><div class="ttname"><a href="rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35">remmina_rdp_settings_quality_on_changed</a></div><div class="ttdeci">static void remmina_rdp_settings_quality_on_changed(GtkComboBox *widget, RemminaPluginRdpsetGrid *grid)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00316">rdp_settings.c:316</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_rdpset_grid_html_aefce226217c7ca11de97f9511ae8150f"><div class="ttname"><a href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">_RemminaPluginRdpsetGrid::keyboard_layout_store</a></div><div class="ttdeci">GtkListStore * keyboard_layout_store</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00084">rdp_settings.c:84</a></div></div>
+<div class="ttc" id="rdp__settings_8c_html_a4052ab6359b14e8f9a4cf76bed4da90c"><div class="ttname"><a href="rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a></div><div class="ttdeci">guint remmina_rdp_settings_get_keyboard_layout(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00066">rdp_settings.c:66</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__settings_8c.html">rdp_settings.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__settings_8h.html b/docs/rdp__settings_8h.html
new file mode 100644
index 000000000..68eb71562
--- /dev/null
+++ b/docs/rdp__settings_8h.html
@@ -0,0 +1,214 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_settings.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__settings_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rdp_settings.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rdp__settings_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a028a6997c2546d0399858e4479b4be87"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87">remmina_rdp_settings_init</a> (void)</td></tr>
+<tr class="separator:a028a6997c2546d0399858e4479b4be87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4052ab6359b14e8f9a4cf76bed4da90c"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a> (void)</td></tr>
+<tr class="separator:a4052ab6359b14e8f9a4cf76bed4da90c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc5f59377e21db6e1aef8bfc2da24b53"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a> (void)</td></tr>
+<tr class="separator:adc5f59377e21db6e1aef8bfc2da24b53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f05047cf10611ffb7a23a248650cb4c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a> (int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</td></tr>
+<tr class="separator:a5f05047cf10611ffb7a23a248650cb4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a4052ab6359b14e8f9a4cf76bed4da90c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4052ab6359b14e8f9a4cf76bed4da90c">&#9670;&nbsp;</a></span>remmina_rdp_settings_get_keyboard_layout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_rdp_settings_get_keyboard_layout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00066">66</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a5f05047cf10611ffb7a23a248650cb4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f05047cf10611ffb7a23a248650cb4c">&#9670;&nbsp;</a></span>remmina_rdp_settings_get_orientation_scale_prefs()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_rdp_settings_get_orientation_scale_prefs </td>
+ <td>(</td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>desktopOrientation</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>desktopScaleFactor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>deviceScaleFactor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00608">608</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a028a6997c2546d0399858e4479b4be87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a028a6997c2546d0399858e4479b4be87">&#9670;&nbsp;</a></span>remmina_rdp_settings_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_rdp_settings_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00051">51</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="adc5f59377e21db6e1aef8bfc2da24b53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc5f59377e21db6e1aef8bfc2da24b53">&#9670;&nbsp;</a></span>remmina_rdp_settings_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_rdp_settings_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00597">597</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__settings_8h.html">rdp_settings.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rdp__settings_8h.js b/docs/rdp__settings_8h.js
new file mode 100644
index 000000000..f35bb68dc
--- /dev/null
+++ b/docs/rdp__settings_8h.js
@@ -0,0 +1,7 @@
+var rdp__settings_8h =
+[
+ [ "remmina_rdp_settings_get_keyboard_layout", "rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c", null ],
+ [ "remmina_rdp_settings_get_orientation_scale_prefs", "rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c", null ],
+ [ "remmina_rdp_settings_init", "rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87", null ],
+ [ "remmina_rdp_settings_new", "rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53", null ]
+]; \ No newline at end of file
diff --git a/docs/rdp__settings_8h_source.html b/docs/rdp__settings_8h_source.html
new file mode 100644
index 000000000..b49ccf5fb
--- /dev/null
+++ b/docs/rdp__settings_8h_source.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rdp_settings.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rdp__settings_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rdp_settings.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rdp__settings_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) 2010-2011 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keywordtype">void</span> <a class="code" href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87">remmina_rdp_settings_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;guint <a class="code" href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;GtkWidget *<a class="code" href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a>(<span class="keywordtype">void</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="keywordtype">void</span> <a class="code" href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a>(<span class="keywordtype">int</span> *desktopOrientation, <span class="keywordtype">int</span> *desktopScaleFactor, <span class="keywordtype">int</span> *deviceScaleFactor);</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"> 46</span>&#160;G_END_DECLS</div><div class="ttc" id="rdp__settings_8h_html_a4052ab6359b14e8f9a4cf76bed4da90c"><div class="ttname"><a href="rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c">remmina_rdp_settings_get_keyboard_layout</a></div><div class="ttdeci">guint remmina_rdp_settings_get_keyboard_layout(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00066">rdp_settings.c:66</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html_a028a6997c2546d0399858e4479b4be87"><div class="ttname"><a href="rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87">remmina_rdp_settings_init</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_rdp_settings_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00051">rdp_settings.c:51</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html_a5f05047cf10611ffb7a23a248650cb4c"><div class="ttname"><a href="rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c">remmina_rdp_settings_get_orientation_scale_prefs</a></div><div class="ttdeci">void remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00608">rdp_settings.c:608</a></div></div>
+<div class="ttc" id="rdp__settings_8h_html_adc5f59377e21db6e1aef8bfc2da24b53"><div class="ttname"><a href="rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53">remmina_rdp_settings_new</a></div><div class="ttdeci">GtkWidget * remmina_rdp_settings_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="rdp__settings_8c_source.html#l00597">rdp_settings.c:597</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_059c6fae417c75ea7479b164feca3607.html">rdp</a></li><li class="navelem"><a class="el" href="rdp__settings_8h.html">rdp_settings.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina_8c.html b/docs/remmina_8c.html
new file mode 100644
index 000000000..c2db66df4
--- /dev/null
+++ b/docs/remmina_8c.html
@@ -0,0 +1,382 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1ecec6e37469e2e927a612747269587c"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c">_gpg_error_to_errno</a> (gcry_error_t e)</td></tr>
+<tr class="separator:a1ecec6e37469e2e927a612747269587c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb286fc5bd52ab5382ab8cb495dc2914"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina_on_command_line</a> (GApplication *app, GApplicationCommandLine *cmdline)</td></tr>
+<tr class="separator:aeb286fc5bd52ab5382ab8cb495dc2914"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26d2c20be18ff44f239b756f1d5be01a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina_on_startup</a> (GApplication *app)</td></tr>
+<tr class="separator:a26d2c20be18ff44f239b756f1d5be01a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e8319f901232eb5fada98335217979c"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina_on_local_cmdline</a> (GApplication *app, GVariantDict *opts, gpointer user_data)</td></tr>
+<tr class="separator:a9e8319f901232eb5fada98335217979c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ddf1224851353fc92bfbff6f499fa97"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main</a> (int argc, char *argv[])</td></tr>
+<tr class="separator:a0ddf1224851353fc92bfbff6f499fa97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a3d760300165528383af409d2964d79d2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a3d760300165528383af409d2964d79d2">GCRY_THREAD_OPTION_PTHREAD_IMPL</a></td></tr>
+<tr class="separator:a3d760300165528383af409d2964d79d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87cf5ad579b1e914ce7ea788cead4104"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">gcrypt_thread_initialized</a> = 0</td></tr>
+<tr class="separator:a87cf5ad579b1e914ce7ea788cead4104"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a9a67c5372ff07b71d0558679ab7ae"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a></td></tr>
+<tr class="separator:ab4a9a67c5372ff07b71d0558679ab7ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3837fb7dd2ca88b6f7acaecc0d062ac5"><td class="memItemLeft" align="right" valign="top">static GOptionEntry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina_options</a> []</td></tr>
+<tr class="separator:a3837fb7dd2ca88b6f7acaecc0d062ac5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a1ecec6e37469e2e927a612747269587c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ecec6e37469e2e927a612747269587c">&#9670;&nbsp;</a></span>_gpg_error_to_errno()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int _gpg_error_to_errno </td>
+ <td>(</td>
+ <td class="paramtype">gcry_error_t&#160;</td>
+ <td class="paramname"><em>e</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00121">121</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="a0ddf1224851353fc92bfbff6f499fa97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ddf1224851353fc92bfbff6f499fa97">&#9670;&nbsp;</a></span>main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int main </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>argc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>argv</em>[]&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00301">301</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="aeb286fc5bd52ab5382ab8cb495dc2914"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb286fc5bd52ab5382ab8cb495dc2914">&#9670;&nbsp;</a></span>remmina_on_command_line()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_on_command_line </td>
+ <td>(</td>
+ <td class="paramtype">GApplication *&#160;</td>
+ <td class="paramname"><em>app</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GApplicationCommandLine *&#160;</td>
+ <td class="paramname"><em>cmdline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000002">Todo:</a></b></dt><dd>This should be a G_OPTION_ARG_FILENAME_ARRAY (^aay) so that we can implement multi profile connection: <a href="https://gitlab.com/Remmina/Remmina/issues/915">https://gitlab.com/Remmina/Remmina/issues/915</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00131">131</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="a9e8319f901232eb5fada98335217979c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e8319f901232eb5fada98335217979c">&#9670;&nbsp;</a></span>remmina_on_local_cmdline()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_on_local_cmdline </td>
+ <td>(</td>
+ <td class="paramtype">GApplication *&#160;</td>
+ <td class="paramname"><em>app</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariantDict *&#160;</td>
+ <td class="paramname"><em>opts</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00262">262</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="a26d2c20be18ff44f239b756f1d5be01a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26d2c20be18ff44f239b756f1d5be01a">&#9670;&nbsp;</a></span>remmina_on_startup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_on_startup </td>
+ <td>(</td>
+ <td class="paramtype">GApplication *&#160;</td>
+ <td class="paramname"><em>app</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00224">224</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3d760300165528383af409d2964d79d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d760300165528383af409d2964d79d2">&#9670;&nbsp;</a></span>GCRY_THREAD_OPTION_PTHREAD_IMPL</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GCRY_THREAD_OPTION_PTHREAD_IMPL</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00069">69</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="a87cf5ad579b1e914ce7ea788cead4104"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87cf5ad579b1e914ce7ea788cead4104">&#9670;&nbsp;</a></span>gcrypt_thread_initialized</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gcrypt_thread_initialized = 0</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00075">75</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4a9a67c5372ff07b71d0558679ab7ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4a9a67c5372ff07b71d0558679ab7ae">&#9670;&nbsp;</a></span>kioskmode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean kioskmode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00079">79</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+<a id="a3837fb7dd2ca88b6f7acaecc0d062ac5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3837fb7dd2ca88b6f7acaecc0d062ac5">&#9670;&nbsp;</a></span>remmina_options</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GOptionEntry remmina_options[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00081">81</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina_8c.html">remmina.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina_8c.js b/docs/remmina_8c.js
new file mode 100644
index 000000000..5ab4baf6e
--- /dev/null
+++ b/docs/remmina_8c.js
@@ -0,0 +1,12 @@
+var remmina_8c =
+[
+ [ "_gpg_error_to_errno", "remmina_8c.html#a1ecec6e37469e2e927a612747269587c", null ],
+ [ "main", "remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97", null ],
+ [ "remmina_on_command_line", "remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914", null ],
+ [ "remmina_on_local_cmdline", "remmina_8c.html#a9e8319f901232eb5fada98335217979c", null ],
+ [ "remmina_on_startup", "remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a", null ],
+ [ "GCRY_THREAD_OPTION_PTHREAD_IMPL", "remmina_8c.html#a3d760300165528383af409d2964d79d2", null ],
+ [ "gcrypt_thread_initialized", "remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104", null ],
+ [ "kioskmode", "remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae", null ],
+ [ "remmina_options", "remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina_8c_source.html b/docs/remmina_8c_source.html
new file mode 100644
index 000000000..8b3f8378e
--- /dev/null
+++ b/docs/remmina_8c_source.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina_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-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-2020 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 &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</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;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;config.h&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__sodium_8h.html">remmina_sodium.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_8h.html">remmina.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__exec_8h.html">remmina_exec.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__file__manager_8h.html">remmina_file_manager.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__icon_8h.html">remmina_icon.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__main_8h.html">remmina_main.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__plugin__manager_8h.html">remmina_plugin_manager.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__pref_8h.html">remmina_pref.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__public_8h.html">remmina_public.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__sftp__plugin_8h.html">remmina_sftp_plugin.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__ssh__plugin_8h.html">remmina_ssh_plugin.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__widget__pool_8h.html">remmina_widget_pool.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__trace__calls_8h.html">remmina/remmina_trace_calls.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="rmnews_8h.html">rmnews.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__stats__sender_8h.html">remmina_stats_sender.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;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#ifdef HAVE_ERRNO_H</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#include &lt;errno.h&gt;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBGCRYPT</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &lt;gcrypt.h&gt;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"># if GCRYPT_VERSION_NUMBER &lt; 0x010600</span></div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="remmina_8c.html#a3d760300165528383af409d2964d79d2"> 69</a></span>&#160;<a class="code" href="remmina_8c.html#a3d760300165528383af409d2964d79d2">GCRY_THREAD_OPTION_PTHREAD_IMPL</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !GCRYPT_VERSION_NUMBER */</span><span class="preprocessor"></span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_LIBGCRYPT */</span><span class="preprocessor"></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="preprocessor">#ifdef HAVE_LIBGCRYPT</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"># if GCRYPT_VERSION_NUMBER &lt; 0x010600</span></div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104"> 75</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">gcrypt_thread_initialized</a> = 0;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !GCRYPT_VERSION_NUMBER */</span><span class="preprocessor"></span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_LIBGCRYPT */</span><span class="preprocessor"></span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1"> 79</a></span>&#160;gboolean <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5"> 81</a></span>&#160;<span class="keyword">static</span> GOptionEntry <a class="code" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina_options</a>[] =</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; { <span class="stringliteral">&quot;about&quot;</span>, <span class="charliteral">&#39;a&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show \&#39;About\&#39;&quot;</span>), NULL },</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; { <span class="stringliteral">&quot;connect&quot;</span>, <span class="charliteral">&#39;c&#39;</span>, 0, G_OPTION_ARG_FILENAME, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Connect to desktop described in file (.remmina or type supported by plugin)&quot;</span>), <span class="stringliteral">&quot;FILE&quot;</span> },</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; { G_OPTION_REMAINING, <span class="charliteral">&#39;\0&#39;</span>, 0, G_OPTION_ARG_FILENAME_ARRAY, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Connect to desktop described in file (.remmina or type supported by plugin)&quot;</span>), <span class="stringliteral">&quot;FILE&quot;</span> },</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; { <span class="stringliteral">&quot;edit&quot;</span>, <span class="charliteral">&#39;e&#39;</span>, 0, G_OPTION_ARG_FILENAME, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Edit desktop connection described in file (.remmina or type supported by plugin)&quot;</span>), <span class="stringliteral">&quot;FILE&quot;</span> },</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; { <span class="stringliteral">&quot;help&quot;</span>, <span class="charliteral">&#39;?&#39;</span>, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_NONE, NULL, NULL, NULL },</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; { <span class="stringliteral">&quot;kiosk&quot;</span>, <span class="charliteral">&#39;k&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Start in kiosk mode&quot;</span>), NULL },</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; { <span class="stringliteral">&quot;new&quot;</span>, <span class="charliteral">&#39;n&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Create new connection profile&quot;</span>), NULL },</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { <span class="stringliteral">&quot;pref&quot;</span>, <span class="charliteral">&#39;p&#39;</span>, 0, G_OPTION_ARG_STRING, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show preferences&quot;</span>), <span class="stringliteral">&quot;PAGENR&quot;</span> },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { <span class="stringliteral">&quot;plugin&quot;</span>, <span class="charliteral">&#39;x&#39;</span>, 0, G_OPTION_ARG_STRING, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Run a plugin&quot;</span>), <span class="stringliteral">&quot;PLUGIN&quot;</span> },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { <span class="stringliteral">&quot;quit&quot;</span>, <span class="charliteral">&#39;q&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quit&quot;</span>), NULL },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { <span class="stringliteral">&quot;server&quot;</span>, <span class="charliteral">&#39;s&#39;</span>, 0, G_OPTION_ARG_STRING, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use default server name (for --new)&quot;</span>), <span class="stringliteral">&quot;SERVER&quot;</span> },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { <span class="stringliteral">&quot;protocol&quot;</span>, <span class="charliteral">&#39;t&#39;</span>, 0, G_OPTION_ARG_STRING, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use default protocol (for --new)&quot;</span>), <span class="stringliteral">&quot;PROTOCOL&quot;</span> },</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { <span class="stringliteral">&quot;icon&quot;</span>, <span class="charliteral">&#39;i&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Start in tray&quot;</span>), NULL },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; { <span class="stringliteral">&quot;version&quot;</span>, <span class="charliteral">&#39;v&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show the application version&quot;</span>), NULL },</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; { <span class="stringliteral">&quot;full-version&quot;</span>, <span class="charliteral">&#39;V&#39;</span>, 0, G_OPTION_ARG_NONE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show version of the application and its plugins&quot;</span>), NULL },</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { <span class="stringliteral">&quot;update-profile&quot;</span>, 0, 0, G_OPTION_ARG_FILENAME, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Modify connection profile (requires --set-option)&quot;</span>), NULL },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// TRANSLATORS: Shown in terminal. Do not use characters that may be not supported on a terminal</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { <span class="stringliteral">&quot;set-option&quot;</span>, 0, 0, G_OPTION_ARG_STRING_ARRAY, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Set one or more profile settings, to be used with --update-profile&quot;</span>), NULL },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { NULL }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;};</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="preprocessor">#ifdef WITH_LIBGCRYPT</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span></div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c"> 121</a></span>&#160;<a class="code" href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c">_gpg_error_to_errno</a>(gcry_error_t e)</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"> 123</span>&#160; <span class="comment">/* be lazy right now */</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span> (e == GPG_ERR_NO_ERROR)</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> EINVAL;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;}</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !WITH_LIBGCRYPT */</span><span class="preprocessor"></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"><a class="line" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914"> 131</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina_on_command_line</a>(GApplication *app, GApplicationCommandLine *cmdline)</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; TRACE_CALL(__func__);</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; gint status = 0;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gboolean executed = FALSE;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GVariantDict *opts;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; gchar *str;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> gchar **remaining_args;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gchar *protocol;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; gchar *server;</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;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a>();</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a>();</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; opts = g_application_command_line_get_options_dict(cmdline);</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"> 150</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;quit&quot;</span>, NULL)) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</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="l00152"></a><span class="lineno"> 152</span>&#160; executed = TRUE;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; status = 1;</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"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;about&quot;</span>, NULL)) {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a>, NULL);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; executed = TRUE;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; }</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;connect&quot;</span>, <span class="stringliteral">&quot;^ay&quot;</span>, &amp;str)) {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>, g_strdup(str));</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; g_free(str);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; executed = TRUE;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, G_OPTION_REMAINING, <span class="stringliteral">&quot;^a&amp;ay&quot;</span>, &amp;remaining_args)) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>, remaining_args[0]);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_free(remaining_args);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; executed = TRUE;</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;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;edit&quot;</span>, <span class="stringliteral">&quot;^ay&quot;</span>, &amp;str)) {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a>, str);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_free(str);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; executed = TRUE;</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">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;kiosk&quot;</span>, NULL)) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae">kioskmode</a> = TRUE;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a>, NULL);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; executed = TRUE;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;new&quot;</span>, NULL)) {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">if</span> (!g_variant_dict_lookup(opts, <span class="stringliteral">&quot;protocol&quot;</span>, <span class="stringliteral">&quot;&amp;s&quot;</span>, &amp;protocol))</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; protocol = NULL;</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"> 193</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;server&quot;</span>, <span class="stringliteral">&quot;&amp;s&quot;</span>, &amp;server))</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; str = g_strdup_printf(<span class="stringliteral">&quot;%s,%s&quot;</span>, protocol, server);</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; str = g_strdup(protocol);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>, str);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_free(str);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; executed = TRUE;</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;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;pref&quot;</span>, <span class="stringliteral">&quot;&amp;s&quot;</span>, &amp;str)) {</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a>, str);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; executed = TRUE;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</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; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;plugin&quot;</span>, <span class="stringliteral">&quot;&amp;s&quot;</span>, &amp;str)) {</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a>, str);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; executed = TRUE;</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;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;icon&quot;</span>, NULL)) {</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">REMMINA_COMMAND_NONE</a>, NULL);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; executed = TRUE;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</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; <span class="keywordflow">if</span> (!executed)</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a>, NULL);</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"> 221</span>&#160; <span class="keywordflow">return</span> status;</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;</div><div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a"> 224</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina_on_startup</a>(GApplication *app)</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;{</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *secret_plugin;</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; <a class="code" href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a>();</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a>();</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a>();</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a>();</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"> 235</span>&#160; g_set_application_name(<span class="stringliteral">&quot;Remmina&quot;</span>);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gtk_window_set_default_icon_name(REMMINA_APP_ID);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="comment">/* Setting the X11 program class (WM_CLASS) is necessary to group</span></div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> * windows with .desktop file which has the same StartupWMClass */</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; gdk_set_program_class(REMMINA_APP_ID);</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; gtk_icon_theme_append_search_path(gtk_icon_theme_get_default(),</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; REMMINA_RUNTIME_DATADIR G_DIR_SEPARATOR_S <span class="stringliteral">&quot;icons&quot;</span>);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; g_application_hold(app);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a>();</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews_schedule</a>();</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="comment">/* Check for secret plugin and service initialization and show console warnings if</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> * something is missing */</span></div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; 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="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">if</span> (!secret_plugin) {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; g_print(<span class="stringliteral">&quot;Warning: Remmina is running without a secret plugin. Passwords will be saved in a less secure way.\n&quot;</span>);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">if</span> (!secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>())</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; g_print(<span class="stringliteral">&quot;Warning: Remmina is running with a secrecy plugin, but it cannot connect to a secrecy service.\n&quot;</span>);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; }</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; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a>, NULL);</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"><a class="line" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c"> 262</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina_on_local_cmdline</a>(GApplication *app, GVariantDict *opts, gpointer user_data)</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;{</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; TRACE_CALL(__func__);</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; <span class="keywordtype">int</span> status = -1;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; gchar *str;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; gchar **settings;</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">/* Here you handle any command line options that you want to be executed</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"> * in the local instance (the non-unique instance) */</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;version&quot;</span>, NULL)) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a>, NULL);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; status = 0;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup_value(opts, <span class="stringliteral">&quot;full-version&quot;</span>, NULL)) {</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">REMMINA_COMMAND_FULL_VERSION</a>, NULL);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; status = 0;</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;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;update-profile&quot;</span>, <span class="stringliteral">&quot;^&amp;ay&quot;</span>, &amp;str)) { <span class="comment">/* ^&amp;ay no need to free */</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span> (g_variant_dict_lookup(opts, <span class="stringliteral">&quot;set-option&quot;</span>, <span class="stringliteral">&quot;^a&amp;s&quot;</span>, &amp;settings)) {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">if</span> (settings != NULL) {</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; status = <a class="code" href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a>(str, settings);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; g_free(settings);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; status = 1;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; }</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; status = 1;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; g_print(<span class="stringliteral">&quot;Error: --update-profile requires --set-option\n&quot;</span>);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; }</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="comment">/* Returning a non negative value here makes the application exit */</span></div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> status;</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;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97"> 301</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> *argv[])</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;{</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; GtkApplication *app;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keyword">const</span> gchar *app_id;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordtype">int</span> status;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; g_unsetenv (<span class="stringliteral">&quot;GDK_CORE_DEVICE_EVENTS&quot;</span>);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="comment">/* Enable wayland backend only after GTK 3.22.27 or the clipboard</span></div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment"> * will not work. See GTK bug 790031 */</span></div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a>(3, 22, 27))</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; gdk_set_allowed_backends(<span class="stringliteral">&quot;wayland,x11,broadway,quartz,mir&quot;</span>);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; gdk_set_allowed_backends(<span class="stringliteral">&quot;x11,broadway,quartz,mir&quot;</span>);</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; <a class="code" href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec_save_main_thread_id</a>();</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; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; textdomain(GETTEXT_PACKAGE);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBGCRYPT</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="preprocessor"># if GCRYPT_VERSION_NUMBER &lt; 0x010600</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gcry_error_t e;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">gcrypt_thread_initialized</a>) {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">if</span> ((e = gcry_control(GCRYCTL_SET_THREAD_CBS, &amp;gcry_threads_pthread)) != GPG_ERR_NO_ERROR)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <a class="code" href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">gcrypt_thread_initialized</a>++;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !GCRYPT_VERSION_NUMBER */</span><span class="preprocessor"></span></div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; gcry_check_version(NULL);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; gcry_control(GCRYCTL_DISABLE_SECMEM, 0);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; gcry_control(GCRYCTL_INITIALIZATION_FINISHED, 0);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !HAVE_LIBGCRYPT */</span><span class="preprocessor"></span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="comment">/* Initialize some Remmina parts needed also on a local instance for correct handle-local-options */</span></div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a>();</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a>();</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a>();</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</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; app_id = g_application_id_is_valid(REMMINA_APP_ID) ? REMMINA_APP_ID : NULL;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; app = gtk_application_new(app_id, G_APPLICATION_HANDLES_COMMAND_LINE | G_APPLICATION_CAN_OVERRIDE_APP_ID);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="preprocessor">#if !GTK_CHECK_VERSION(4, 0, 0) </span><span class="comment">/* This is not needed anymore starting from GTK 4 */</span><span class="preprocessor"></span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; g_set_prgname(app_id);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; g_signal_connect(app, <span class="stringliteral">&quot;startup&quot;</span>, G_CALLBACK(<a class="code" href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina_on_startup</a>), NULL);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; g_signal_connect(app, <span class="stringliteral">&quot;command-line&quot;</span>, G_CALLBACK(<a class="code" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina_on_command_line</a>), NULL);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; g_signal_connect(app, <span class="stringliteral">&quot;handle-local-options&quot;</span>, G_CALLBACK(<a class="code" href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina_on_local_cmdline</a>), NULL);</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; g_application_add_main_option_entries(G_APPLICATION(app), <a class="code" href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina_options</a>);</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; g_application_set_inactivity_timeout(G_APPLICATION(app), 10000);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; status = g_application_run(G_APPLICATION(app), argc, argv);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; g_object_unref(app);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> status;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</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#l00160">remmina_exec.c:160</a></div></div>
+<div class="ttc" id="remmina_8c_html_a3837fb7dd2ca88b6f7acaecc0d062ac5"><div class="ttname"><a href="remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5">remmina_options</a></div><div class="ttdeci">static GOptionEntry remmina_options[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00081">remmina.c:81</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html"><div class="ttname"><a href="remmina__sodium_8h.html">remmina_sodium.h</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_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#l00049">remmina_exec.h:49</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_8c_html_a26d2c20be18ff44f239b756f1d5be01a"><div class="ttname"><a href="remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a">remmina_on_startup</a></div><div class="ttdeci">static void remmina_on_startup(GApplication *app)</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00224">remmina.c:224</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a92c2264598a43702594535cebbf4d8cd"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a></div><div class="ttdeci">void remmina_plugin_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00295">remmina_plugin_manager.c:295</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__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">REMMINA_COMMAND_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00041">remmina_exec.h:41</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a4a595ce198f8adda31fe11348b0f734e"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec_save_main_thread_id</a></div><div class="ttdeci">void remmina_masterthread_exec_save_main_thread_id()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00138">remmina_masterthread_exec.c:138</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a14a447ab8a10b109967d92c8d2db0ff9"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a></div><div class="ttdeci">void remmina_sftp_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00356">remmina_sftp_plugin.c:356</a></div></div>
+<div class="ttc" id="remmina_8c_html_a0ddf1224851353fc92bfbff6f499fa97"><div class="ttname"><a href="remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97">main</a></div><div class="ttdeci">int main(int argc, char *argv[])</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00301">remmina.c:301</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a519a411cb2091da2176258d87bcea6d4"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin::is_service_available</a></div><div class="ttdeci">gboolean(* is_service_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00138">plugin.h:138</a></div></div>
+<div class="ttc" id="remmina_8c_html_a1ecec6e37469e2e927a612747269587c"><div class="ttname"><a href="remmina_8c.html#a1ecec6e37469e2e927a612747269587c">_gpg_error_to_errno</a></div><div class="ttdeci">static int _gpg_error_to_errno(gcry_error_t e)</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00121">remmina.c:121</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="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00046">remmina_exec.h:46</a></div></div>
+<div class="ttc" id="remmina_8c_html_aeb286fc5bd52ab5382ab8cb495dc2914"><div class="ttname"><a href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina_on_command_line</a></div><div class="ttdeci">static gint remmina_on_command_line(GApplication *app, GApplicationCommandLine *cmdline)</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00131">remmina.c:131</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_afa2b1889dced4289b0f7d7edffc82e72"><div class="ttname"><a href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a></div><div class="ttdeci">void remmina_file_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00102">remmina_file_manager.c:102</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a6f594d157e09639e09b1f32a420da96c"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a></div><div class="ttdeci">void remmina_ssh_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01202">remmina_ssh_plugin.c:1202</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00042">remmina_exec.h:42</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__icon_8c_html_afbd7758d1d43c61a014b7ef00f11fa58"><div class="ttname"><a href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a></div><div class="ttdeci">void remmina_icon_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00429">remmina_icon.c:429</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_8c_html_a9e8319f901232eb5fada98335217979c"><div class="ttname"><a href="remmina_8c.html#a9e8319f901232eb5fada98335217979c">remmina_on_local_cmdline</a></div><div class="ttdeci">static gint remmina_on_local_cmdline(GApplication *app, GVariantDict *opts, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00262">remmina.c:262</a></div></div>
+<div class="ttc" id="remmina_8c_html_a87cf5ad579b1e914ce7ea788cead4104"><div class="ttname"><a href="remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104">gcrypt_thread_initialized</a></div><div class="ttdeci">static int gcrypt_thread_initialized</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00075">remmina.c:75</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_a424cabdcff647797061e7482049d62a7"><div class="ttname"><a href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a></div><div class="ttdeci">void remmina_exec_command(RemminaCommandType command, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00214">remmina_exec.c:214</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00047">remmina_exec.h:47</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00044">remmina_exec.h:44</a></div></div>
+<div class="ttc" id="rmnews_8h_html"><div class="ttname"><a href="rmnews_8h.html">rmnews.h</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_aadc178f8f991ba939827d235aae8ad09"><div class="ttname"><a href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a></div><div class="ttdeci">void remmina_widget_pool_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00045">remmina_widget_pool.c:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00052">remmina_exec.h:52</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ad7c29f17323086e08ac56e1636fd41c3"><div class="ttname"><a href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a></div><div class="ttdeci">gboolean remmina_gtk_check_version(guint major, guint minor, guint micro)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00706">remmina_public.c:706</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a8433da15acb3138804b4816189e8fc3a"><div class="ttname"><a href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews_schedule</a></div><div class="ttdeci">void rmnews_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00528">rmnews.c:528</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00050">remmina_exec.h:50</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a03db556341f727fb2fe482cae80351a9"><div class="ttname"><a href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a></div><div class="ttdeci">void remmina_stats_sender_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00323">remmina_stats_sender.c:323</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a400f7319fd3996a13399ef72bcf0a2fd"><div class="ttname"><a href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a></div><div class="ttdeci">void remmina_pref_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00221">remmina_pref.c:221</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html"><div class="ttname"><a href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a></div></div>
+<div class="ttc" id="remmina_8c_html_a3d760300165528383af409d2964d79d2"><div class="ttname"><a href="remmina_8c.html#a3d760300165528383af409d2964d79d2">GCRY_THREAD_OPTION_PTHREAD_IMPL</a></div><div class="ttdeci">GCRY_THREAD_OPTION_PTHREAD_IMPL</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00069">remmina.c:69</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</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__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</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_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#l00079">remmina.c:79</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8h_html"><div class="ttname"><a href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8h_html"><div class="ttname"><a href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00045">remmina_exec.h:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html"><div class="ttname"><a href="remmina__exec_8h.html">remmina_exec.h</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a17d17beeb57808af1c4299e3b4b94e9a"><div class="ttname"><a href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a></div><div class="ttdeci">void remmina_sodium_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00127">remmina_sodium.c:127</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00043">remmina_exec.h:43</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00048">remmina_exec.h:48</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina_8c.html">remmina.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina_8h.html b/docs/remmina_8h.html
new file mode 100644
index 000000000..d315ee4c1
--- /dev/null
+++ b/docs/remmina_8h.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a806213b48f3332bbb4bb771ddde38ab1"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1">kioskmode</a></td></tr>
+<tr class="separator:a806213b48f3332bbb4bb771ddde38ab1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a806213b48f3332bbb4bb771ddde38ab1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a806213b48f3332bbb4bb771ddde38ab1">&#9670;&nbsp;</a></span>kioskmode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gboolean kioskmode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina_8c_source.html#l00079">79</a> of file <a class="el" href="remmina_8c_source.html">remmina.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina_8h.html">remmina.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina_8h.js b/docs/remmina_8h.js
new file mode 100644
index 000000000..598262da5
--- /dev/null
+++ b/docs/remmina_8h.js
@@ -0,0 +1,4 @@
+var remmina_8h =
+[
+ [ "kioskmode", "remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina_8h_source.html b/docs/remmina_8h_source.html
new file mode 100644
index 000000000..3014d55fc
--- /dev/null
+++ b/docs/remmina_8h_source.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina_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) 2014-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">extern</span> gboolean <a class="code" href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1">kioskmode</a>;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina_8h_html_a806213b48f3332bbb4bb771ddde38ab1"><div class="ttname"><a href="remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1">kioskmode</a></div><div class="ttdeci">G_BEGIN_DECLS gboolean kioskmode</div><div class="ttdef"><b>Definition:</b> <a href="remmina_8c_source.html#l00079">remmina.c:79</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina_8h.html">remmina.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__about_8c.html b/docs/remmina__about_8c.html
new file mode 100644
index 000000000..98545696e
--- /dev/null
+++ b/docs/remmina__about_8c.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_about.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__about_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_about.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__about_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3ad768979e0945a162018c6d596c90f4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:a3ad768979e0945a162018c6d596c90f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3ad768979e0945a162018c6d596c90f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ad768979e0945a162018c6d596c90f4">&#9670;&nbsp;</a></span>remmina_about_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_about_open </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__about_8c_source.html#l00045">45</a> of file <a class="el" href="remmina__about_8c_source.html">remmina_about.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__about_8c.html">remmina_about.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__about_8c.js b/docs/remmina__about_8c.js
new file mode 100644
index 000000000..08342a29c
--- /dev/null
+++ b/docs/remmina__about_8c.js
@@ -0,0 +1,4 @@
+var remmina__about_8c =
+[
+ [ "remmina_about_open", "remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__about_8c_source.html b/docs/remmina__about_8c_source.html
new file mode 100644
index 000000000..577d9b89e
--- /dev/null
+++ b/docs/remmina__about_8c_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_about.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__about_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_about.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__about_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-2020 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.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * If you modify file(s) with this exception, you may extend this exception</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * to your version of the file(s), but you are not obligated to do so.</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * If you 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.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * 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 &lt;gtk/gtk.h&gt;</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 &quot;<a class="code" href="remmina__about_8h.html">remmina_about.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__public_8h.html">remmina_public.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</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="comment">/* Show the about dialog from the file ui/remmina_about.glade */</span></div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8"> 45</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(GtkWindow *parent)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; GtkBuilder *builder = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_about.glade&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; GtkDialog *dialog = GTK_DIALOG(gtk_builder_get_object(builder, <span class="stringliteral">&quot;dialog_remmina_about&quot;</span>));</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(dialog), VERSION <span class="stringliteral">&quot; (git &quot;</span> REMMINA_GIT_REVISION <span class="stringliteral">&quot;)&quot;</span>);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// TRANSLATORS: translator-credits should be replaced with a formatted list of translators in your own language</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; gtk_about_dialog_set_translator_credits(GTK_ABOUT_DIALOG(dialog), _(<span class="stringliteral">&quot;translator-credits&quot;</span>));</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (parent) {</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), parent);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; gtk_window_set_destroy_with_parent(GTK_WINDOW(dialog), TRUE);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</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; g_signal_connect(dialog, <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), NULL);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; gtk_window_present(GTK_WINDOW(dialog));</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_object_unref(G_OBJECT(builder));</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div><div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<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__public_8h_html"><div class="ttname"><a href="remmina__public_8h.html">remmina_public.h</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#l00045">remmina_about.c:45</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__about_8c.html">remmina_about.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__about_8h.html b/docs/remmina__about_8h.html
new file mode 100644
index 000000000..c41dd4e57
--- /dev/null
+++ b/docs/remmina__about_8h.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_about.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__about_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_about.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__about_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a290fcc05be17d320f1e5ab8d13f41fb8"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8">remmina_about_open</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:a290fcc05be17d320f1e5ab8d13f41fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a290fcc05be17d320f1e5ab8d13f41fb8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a290fcc05be17d320f1e5ab8d13f41fb8">&#9670;&nbsp;</a></span>remmina_about_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_about_open </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__about_8c_source.html#l00045">45</a> of file <a class="el" href="remmina__about_8c_source.html">remmina_about.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__about_8h.html">remmina_about.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__about_8h.js b/docs/remmina__about_8h.js
new file mode 100644
index 000000000..adaf04831
--- /dev/null
+++ b/docs/remmina__about_8h.js
@@ -0,0 +1,4 @@
+var remmina__about_8h =
+[
+ [ "remmina_about_open", "remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__about_8h_source.html b/docs/remmina__about_8h_source.html
new file mode 100644
index 000000000..86f9828f1
--- /dev/null
+++ b/docs/remmina__about_8h_source.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_about.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__about_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_about.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__about_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8">remmina_about_open</a>(GtkWindow *parent);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__about_8h_html_a290fcc05be17d320f1e5ab8d13f41fb8"><div class="ttname"><a href="remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8">remmina_about_open</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_about_open(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__about_8c_source.html#l00045">remmina_about.c:45</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__about_8h.html">remmina_about.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu_8c.html b/docs/remmina__applet__menu_8c.html
new file mode 100644
index 000000000..efd54481d
--- /dev/null
+++ b/docs/remmina__applet__menu_8c.html
@@ -0,0 +1,578 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_applet_menu.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__applet__menu_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:adf764cbdea00d65edcd07bb9953ad2b7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">LAUNCH_ITEM_SIGNAL</a>,
+<a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">EDIT_ITEM_SIGNAL</a>,
+<a class="el" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>
+ }</td></tr>
+<tr class="separator:adf764cbdea00d65edcd07bb9953ad2b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af54cbc55cb079679067ba20d2b006366"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366">G_DEFINE_TYPE</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a>, remmina_applet_menu, GTK_TYPE_MENU)</td></tr>
+<tr class="separator:af54cbc55cb079679067ba20d2b006366"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab009d32f845179fb9ab0367b4b13089f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu_destroy</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, gpointer data)</td></tr>
+<tr class="separator:ab009d32f845179fb9ab0367b4b13089f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81048877782205b26ce08f95e8ca8fa8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8">remmina_applet_menu_class_init</a> (<a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a> *klass)</td></tr>
+<tr class="separator:a81048877782205b26ce08f95e8ca8fa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a373d0689c9970d3c8f0aba53abe272d5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5">remmina_applet_menu_init</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:a373d0689c9970d3c8f0aba53abe272d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae92f8313a24f778e5ef39fdfb92a73f2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu_on_item_activate</a> (<a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem, <a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:ae92f8313a24f778e5ef39fdfb92a73f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9103d33954ab8afdfe3e3892db7caabb"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a> (GtkWidget *menu, const gchar *group, gint position, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem, GtkWidget **groupmenuitem)</td></tr>
+<tr class="separator:a9103d33954ab8afdfe3e3892db7caabb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00ccc046ebf9862d7030dac635a86dc6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu_increase_group_count</a> (GtkWidget *widget)</td></tr>
+<tr class="separator:a00ccc046ebf9862d7030dac635a86dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb924051b4e37930bed6aed12b653751"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem)</td></tr>
+<tr class="separator:abb924051b4e37930bed6aed12b653751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a261d344be12cd270d8b81a26e1ad9d23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem)</td></tr>
+<tr class="separator:a261d344be12cd270d8b81a26e1ad9d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc65e597bc73ddbda587caa929efe872"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a> (void)</td></tr>
+<tr class="separator:adc65e597bc73ddbda587caa929efe872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2baabd1750dd1a95a0b36e601d99cfe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, gboolean hide_count)</td></tr>
+<tr class="separator:af2baabd1750dd1a95a0b36e601d99cfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8029065504aef0e850d79f3823d18f66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:a8029065504aef0e850d79f3823d18f66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a20b651866ac24047839ee81c714bc596"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td></tr>
+<tr class="separator:a20b651866ac24047839ee81c714bc596"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="adf764cbdea00d65edcd07bb9953ad2b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf764cbdea00d65edcd07bb9953ad2b7">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7"></a>LAUNCH_ITEM_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8"></a>EDIT_ITEM_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce"></a>LAST_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="af54cbc55cb079679067ba20d2b006366"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af54cbc55cb079679067ba20d2b006366">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_applet_menu&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_MENU&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00049">49</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a9103d33954ab8afdfe3e3892db7caabb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9103d33954ab8afdfe3e3892db7caabb">&#9670;&nbsp;</a></span>remmina_applet_menu_add_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_applet_menu_add_group </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>position</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget **&#160;</td>
+ <td class="paramname"><em>groupmenuitem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00094">94</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a261d344be12cd270d8b81a26e1ad9d23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a261d344be12cd270d8b81a26e1ad9d23">&#9670;&nbsp;</a></span>remmina_applet_menu_add_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_add_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00141">141</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a81048877782205b26ce08f95e8ca8fa8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81048877782205b26ce08f95e8ca8fa8">&#9670;&nbsp;</a></span>remmina_applet_menu_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00068">68</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="ab009d32f845179fb9ab0367b4b13089f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab009d32f845179fb9ab0367b4b13089f">&#9670;&nbsp;</a></span>remmina_applet_menu_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a00ccc046ebf9862d7030dac635a86dc6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a00ccc046ebf9862d7030dac635a86dc6">&#9670;&nbsp;</a></span>remmina_applet_menu_increase_group_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_increase_group_count </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a373d0689c9970d3c8f0aba53abe272d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a373d0689c9970d3c8f0aba53abe272d5">&#9670;&nbsp;</a></span>remmina_applet_menu_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00079">79</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="adc65e597bc73ddbda587caa929efe872"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc65e597bc73ddbda587caa929efe872">&#9670;&nbsp;</a></span>remmina_applet_menu_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_applet_menu_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00227">227</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="ae92f8313a24f778e5ef39fdfb92a73f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae92f8313a24f778e5ef39fdfb92a73f2">&#9670;&nbsp;</a></span>remmina_applet_menu_on_item_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_on_item_activate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00087">87</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a8029065504aef0e850d79f3823d18f66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8029065504aef0e850d79f3823d18f66">&#9670;&nbsp;</a></span>remmina_applet_menu_populate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_populate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00243">243</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="abb924051b4e37930bed6aed12b653751"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb924051b4e37930bed6aed12b653751">&#9670;&nbsp;</a></span>remmina_applet_menu_register_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_register_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00135">135</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="af2baabd1750dd1a95a0b36e601d99cfe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2baabd1750dd1a95a0b36e601d99cfe">&#9670;&nbsp;</a></span>remmina_applet_menu_set_hide_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_set_hide_count </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>hide_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00237">237</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a20b651866ac24047839ee81c714bc596"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20b651866ac24047839ee81c714bc596">&#9670;&nbsp;</a></span>remmina_applet_menu_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_applet_menu_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu_8c.html">remmina_applet_menu.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu_8c.js b/docs/remmina__applet__menu_8c.js
new file mode 100644
index 000000000..e39e6c336
--- /dev/null
+++ b/docs/remmina__applet__menu_8c.js
@@ -0,0 +1,19 @@
+var remmina__applet__menu_8c =
+[
+ [ "LAUNCH_ITEM_SIGNAL", "remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7", null ],
+ [ "EDIT_ITEM_SIGNAL", "remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8", null ],
+ [ "LAST_SIGNAL", "remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce", null ],
+ [ "G_DEFINE_TYPE", "remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366", null ],
+ [ "remmina_applet_menu_add_group", "remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb", null ],
+ [ "remmina_applet_menu_add_item", "remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23", null ],
+ [ "remmina_applet_menu_class_init", "remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8", null ],
+ [ "remmina_applet_menu_destroy", "remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f", null ],
+ [ "remmina_applet_menu_increase_group_count", "remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6", null ],
+ [ "remmina_applet_menu_init", "remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5", null ],
+ [ "remmina_applet_menu_new", "remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872", null ],
+ [ "remmina_applet_menu_on_item_activate", "remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2", null ],
+ [ "remmina_applet_menu_populate", "remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66", null ],
+ [ "remmina_applet_menu_register_item", "remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751", null ],
+ [ "remmina_applet_menu_set_hide_count", "remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe", null ],
+ [ "remmina_applet_menu_signals", "remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__applet__menu_8c_source.html b/docs/remmina__applet__menu_8c_source.html
new file mode 100644
index 000000000..ee81f3a6a
--- /dev/null
+++ b/docs/remmina__applet__menu_8c_source.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_applet_menu.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__applet__menu_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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</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="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.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__applet__menu_8h.html">remmina_applet_menu.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__file__manager_8h.html">remmina_file_manager.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366"> 49</a></span>&#160;<a class="code" href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366">G_DEFINE_TYPE</a>( <a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a>, remmina_applet_menu, GTK_TYPE_MENU)</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">struct </span>_RemminaAppletMenuPriv {</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; gboolean hide_count;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;};</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7"> 56</a></span>&#160; <a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">LAUNCH_ITEM_SIGNAL</a>, <a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">EDIT_ITEM_SIGNAL</a>, <a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</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"><a class="line" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596"> 59</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a>[<a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] =</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;{ 0 };</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f"> 62</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu_destroy</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, gpointer data)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; g_free(menu-&gt;<a class="code" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a>);</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"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8"> 68</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8">remmina_applet_menu_class_init</a>(<a class="code" href="struct___remmina_applet_menu_class.html">RemminaAppletMenuClass</a> *klass)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a>[<a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">LAUNCH_ITEM_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;launch-item&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_applet_menu_class.html">RemminaAppletMenuClass</a>, launch_item), NULL, NULL,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, G_TYPE_OBJECT);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a>[<a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">EDIT_ITEM_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;edit-item&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_applet_menu_class.html">RemminaAppletMenuClass</a>, edit_item), NULL, NULL,</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, G_TYPE_OBJECT);</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"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5"> 79</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5">remmina_applet_menu_init</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu)</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; menu-&gt;<a class="code" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a> = g_new0(<a class="code" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a>, 1);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu_destroy</a>), NULL);</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;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2"> 87</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu_on_item_activate</a>(<a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem, <a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu)</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"> 89</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_signal_emit(G_OBJECT(menu), <a class="code" href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a>[<a class="code" href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">LAUNCH_ITEM_SIGNAL</a>], 0, menuitem);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</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="keyword">static</span> GtkWidget*</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb"> 94</a></span>&#160;<a class="code" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a>(GtkWidget *menu, <span class="keyword">const</span> gchar *group, gint position, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem,</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; GtkWidget **groupmenuitem)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; GtkWidget *submenu;</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; widget = gtk_menu_item_new_with_label(group);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; gtk_widget_show(widget);</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; g_object_set_data_full(G_OBJECT(widget), <span class="stringliteral">&quot;group&quot;</span>, g_strdup(group), g_free);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; g_object_set_data(G_OBJECT(widget), <span class="stringliteral">&quot;count&quot;</span>, GINT_TO_POINTER(0));</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (groupmenuitem) {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; *groupmenuitem = widget;</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="keywordflow">if</span> (position &lt; 0) {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), widget);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; gtk_menu_shell_insert(GTK_MENU_SHELL(menu), widget, position);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</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; submenu = gtk_menu_new();</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; gtk_widget_show(submenu);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; gtk_menu_item_set_submenu(GTK_MENU_ITEM(widget), submenu);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">return</span> submenu;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</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"><a class="line" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6"> 122</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu_increase_group_count</a>(GtkWidget *widget)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; gint cnt;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; gchar *s;</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; cnt = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(widget), <span class="stringliteral">&quot;count&quot;</span>)) + 1;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; g_object_set_data(G_OBJECT(widget), <span class="stringliteral">&quot;count&quot;</span>, GINT_TO_POINTER(cnt));</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s (%i)&quot;</span>, (<span class="keyword">const</span> gchar*)g_object_get_data(G_OBJECT(widget), <span class="stringliteral">&quot;group&quot;</span>), cnt);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; gtk_menu_item_set_label(GTK_MENU_ITEM(widget), s);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; g_free(s);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</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"><a class="line" href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751"> 135</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem)</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu_on_item_activate</a>), menu);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</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"><a class="line" href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23"> 141</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; GtkWidget *submenu;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; GtkWidget *groupmenuitem;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; GtkMenuItem *submenuitem;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gchar *s, *p1, *p2, *mstr;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; GList *childs, *child;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; gint position;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; submenu = GTK_WIDGET(menu);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; s = g_strdup(menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; p1 = s;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; p2 = p1 ? strchr(p1, <span class="charliteral">&#39;/&#39;</span>) : NULL;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">if</span> (p2)</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; *p2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">while</span> (p1 &amp;&amp; p1[0]) {</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; groupmenuitem = NULL;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; childs = gtk_container_get_children(GTK_CONTAINER(submenu));</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; position = -1;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">for</span> (child = g_list_first(childs); child; child = g_list_next(child)) {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_MENU_ITEM(child-&gt;data))</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; position++;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; submenuitem = GTK_MENU_ITEM(child-&gt;data);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (gtk_menu_item_get_submenu(submenuitem)) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; mstr = (gchar*)g_object_get_data(G_OBJECT(submenuitem), <span class="stringliteral">&quot;group&quot;</span>);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(p1, mstr) == 0) {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="comment">/* Found existing group menu */</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; submenu = gtk_menu_item_get_submenu(submenuitem);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; groupmenuitem = GTK_WIDGET(submenuitem);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="comment">/* Redo comparison ignoring case and respecting international</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> * collation, to set menu sort order */</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span> (strcoll(p1, mstr) &lt; 0) {</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; submenu = <a class="code" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a>(submenu, p1, position, menuitem,</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; &amp;groupmenuitem);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; submenu = <a class="code" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a>(submenu, p1, position, menuitem, &amp;groupmenuitem);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">break</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;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">if</span> (!child) {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; submenu = <a class="code" href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a>(submenu, p1, -1, menuitem, &amp;groupmenuitem);</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; g_list_free(childs);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">if</span> (groupmenuitem &amp;&amp; !menu-&gt;<a class="code" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a>-&gt;hide_count) {</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu_increase_group_count</a>(groupmenuitem);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; p1 = p2;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; p2 = p1 ? strchr(p1, <span class="charliteral">&#39;/&#39;</span>) : NULL;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (p2)</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; *p2++ = <span class="charliteral">&#39;\0&#39;</span>;</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_free(s);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; childs = gtk_container_get_children(GTK_CONTAINER(submenu));</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; position = -1;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">for</span> (child = g_list_first(childs); child; child = g_list_next(child)) {</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_MENU_ITEM(child-&gt;data))</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; position++;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; submenuitem = GTK_MENU_ITEM(child-&gt;data);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">if</span> (gtk_menu_item_get_submenu(submenuitem))</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_APPLET_MENU_ITEM(submenuitem))</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">if</span> (strcoll(menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>, REMMINA_APPLET_MENU_ITEM(submenuitem)-&gt;name) &lt;= 0) {</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; gtk_menu_shell_insert(GTK_MENU_SHELL(submenu), GTK_WIDGET(menuitem), position);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">if</span> (!child) {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(submenu), GTK_WIDGET(menuitem));</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; g_list_free(childs);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a>(menu, menuitem);</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;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;GtkWidget*</div><div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872"> 227</a></span>&#160;<a class="code" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;{</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu;</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; menu = REMMINA_APPLET_MENU(g_object_new(REMMINA_TYPE_APPLET_MENU, NULL));</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; <span class="keywordflow">return</span> GTK_WIDGET(menu);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;}</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"><a class="line" href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe"> 237</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, gboolean hide_count)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; menu-&gt;<a class="code" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a>-&gt;hide_count = hide_count;</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;</div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66"> 243</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu)</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;{</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; gchar filename[MAX_PATH_LEN];</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; GDir *dir;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gchar *remmina_data_dir;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keyword">const</span> gchar *name;</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; remmina_data_dir = <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>();</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; dir = g_dir_open(remmina_data_dir, 0, NULL);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">if</span> (dir != NULL) {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">/* Iterate all remote desktop profiles */</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (!g_str_has_suffix(name, <span class="stringliteral">&quot;.remmina&quot;</span>))</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; g_snprintf(filename, <span class="keyword">sizeof</span>(filename), <span class="stringliteral">&quot;%s/%s&quot;</span>, remmina_data_dir, name);</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; menuitem = <a class="code" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a>(<a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>, filename);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">if</span> (menuitem != NULL) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a>(menu, REMMINA_APPLET_MENU_ITEM(menuitem));</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; gtk_widget_show(menuitem);</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; g_dir_close(dir);</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; g_free(remmina_data_dir);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;}</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div><div class="ttc" id="remmina__applet__menu_8c_html_a81048877782205b26ce08f95e8ca8fa8"><div class="ttname"><a href="remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8">remmina_applet_menu_class_init</a></div><div class="ttdeci">static void remmina_applet_menu_class_init(RemminaAppletMenuClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00068">remmina_applet_menu.c:68</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a373d0689c9970d3c8f0aba53abe272d5"><div class="ttname"><a href="remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5">remmina_applet_menu_init</a></div><div class="ttdeci">static void remmina_applet_menu_init(RemminaAppletMenu *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00079">remmina_applet_menu.c:79</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html"><div class="ttname"><a href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00051">remmina_applet_menu_item.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="struct___remmina_applet_menu_item_html_a561b4a6b148ac58ce0fafff8e299fc7e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">_RemminaAppletMenuItem::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00057">remmina_applet_menu_item.h:57</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_ae1be1dd5e17b8bf09915bebc36d9a423"><div class="ttname"><a href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a></div><div class="ttdeci">struct _RemminaAppletMenuPriv RemminaAppletMenuPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00053">remmina_applet_menu.h:53</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a9103d33954ab8afdfe3e3892db7caabb"><div class="ttname"><a href="remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb">remmina_applet_menu_add_group</a></div><div class="ttdeci">static GtkWidget * remmina_applet_menu_add_group(GtkWidget *menu, const gchar *group, gint position, RemminaAppletMenuItem *menuitem, GtkWidget **groupmenuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00094">remmina_applet_menu.c:94</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_adc65e597bc73ddbda587caa929efe872"><div class="ttname"><a href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00227">remmina_applet_menu.c:227</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__applet__menu_8c_html_a00ccc046ebf9862d7030dac635a86dc6"><div class="ttname"><a href="remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6">remmina_applet_menu_increase_group_count</a></div><div class="ttdeci">static void remmina_applet_menu_increase_group_count(GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00122">remmina_applet_menu.c:122</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7"><div class="ttname"><a href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7">LAUNCH_ITEM_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00056">remmina_applet_menu.c:56</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_af2baabd1750dd1a95a0b36e601d99cfe"><div class="ttname"><a href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a></div><div class="ttdeci">void remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00237">remmina_applet_menu.c:237</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a20b651866ac24047839ee81c714bc596"><div class="ttname"><a href="remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596">remmina_applet_menu_signals</a></div><div class="ttdeci">static guint remmina_applet_menu_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00059">remmina_applet_menu.c:59</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_class_html"><div class="ttname"><a href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00061">remmina_applet_menu.h:61</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a8029065504aef0e850d79f3823d18f66"><div class="ttname"><a href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a></div><div class="ttdeci">void remmina_applet_menu_populate(RemminaAppletMenu *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00243">remmina_applet_menu.c:243</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_aa65bc30beb59d607ba430d966e7e27f5"><div class="ttname"><a href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a></div><div class="ttdeci">gchar * remmina_file_get_datadir(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00054">remmina_file_manager.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_abfc6c501c400171718ddf4a520154e8c"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00056">remmina_applet_menu_item.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html"><div class="ttname"><a href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00055">remmina_applet_menu.h:55</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00056">remmina_applet_menu.c:56</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html"><div class="ttname"><a href="remmina__applet__menu_8h.html">remmina_applet_menu.h</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a8518d5abbcb0cf2ff0923e41d55e1a96"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00076">remmina_applet_menu_item.c:76</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_af54cbc55cb079679067ba20d2b006366"><div class="ttname"><a href="remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaAppletMenu, remmina_applet_menu, GTK_TYPE_MENU)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00049">remmina_applet_menu.c:49</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html_a021eca99c32a7db802295342c8db006a"><div class="ttname"><a href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">_RemminaAppletMenu::priv</a></div><div class="ttdeci">RemminaAppletMenuPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00058">remmina_applet_menu.h:58</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a261d344be12cd270d8b81a26e1ad9d23"><div class="ttname"><a href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a></div><div class="ttdeci">void remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00141">remmina_applet_menu.c:141</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8"><div class="ttname"><a href="remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8">EDIT_ITEM_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00056">remmina_applet_menu.c:56</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_abb924051b4e37930bed6aed12b653751"><div class="ttname"><a href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a></div><div class="ttdeci">void remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00135">remmina_applet_menu.c:135</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_ae92f8313a24f778e5ef39fdfb92a73f2"><div class="ttname"><a href="remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2">remmina_applet_menu_on_item_activate</a></div><div class="ttdeci">static void remmina_applet_menu_on_item_activate(RemminaAppletMenuItem *menuitem, RemminaAppletMenu *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00087">remmina_applet_menu.c:87</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_ab009d32f845179fb9ab0367b4b13089f"><div class="ttname"><a href="remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f">remmina_applet_menu_destroy</a></div><div class="ttdeci">static void remmina_applet_menu_destroy(RemminaAppletMenu *menu, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00062">remmina_applet_menu.c:62</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html"><div class="ttname"><a href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu_8c.html">remmina_applet_menu.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu_8h.html b/docs/remmina__applet__menu_8h.html
new file mode 100644
index 000000000..f887c3800
--- /dev/null
+++ b/docs/remmina__applet__menu_8h.html
@@ -0,0 +1,364 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_applet_menu.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__applet__menu_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ae1be1dd5e17b8bf09915bebc36d9a423"><td class="memItemLeft" align="right" valign="top">typedef struct _RemminaAppletMenuPriv&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a></td></tr>
+<tr class="separator:ae1be1dd5e17b8bf09915bebc36d9a423"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91fc5da4ee78e3319009a257b728687d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a></td></tr>
+<tr class="separator:a91fc5da4ee78e3319009a257b728687d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abde8fc7fbf0c08e5846a55f194fbc04a"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a></td></tr>
+<tr class="separator:abde8fc7fbf0c08e5846a55f194fbc04a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a9973b9af06049a506269a6b0c1ed7ffb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">RemminaAppletMenuNewConnectionType</a> { <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3">REMMINA_APPLET_MENU_NEW_CONNECTION_NONE</a>,
+<a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2">REMMINA_APPLET_MENU_NEW_CONNECTION_TOP</a>,
+<a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16">REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM</a>
+ }</td></tr>
+<tr class="separator:a9973b9af06049a506269a6b0c1ed7ffb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1b16f50f3393c9053ee5b22eec039197"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197">remmina_applet_menu_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:a1b16f50f3393c9053ee5b22eec039197"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb924051b4e37930bed6aed12b653751"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem)</td></tr>
+<tr class="separator:abb924051b4e37930bed6aed12b653751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a261d344be12cd270d8b81a26e1ad9d23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem)</td></tr>
+<tr class="separator:a261d344be12cd270d8b81a26e1ad9d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc65e597bc73ddbda587caa929efe872"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a> (void)</td></tr>
+<tr class="separator:adc65e597bc73ddbda587caa929efe872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2baabd1750dd1a95a0b36e601d99cfe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, gboolean hide_count)</td></tr>
+<tr class="separator:af2baabd1750dd1a95a0b36e601d99cfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8029065504aef0e850d79f3823d18f66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:a8029065504aef0e850d79f3823d18f66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a91fc5da4ee78e3319009a257b728687d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91fc5da4ee78e3319009a257b728687d">&#9670;&nbsp;</a></span>RemminaAppletMenu</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a> <a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abde8fc7fbf0c08e5846a55f194fbc04a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abde8fc7fbf0c08e5846a55f194fbc04a">&#9670;&nbsp;</a></span>RemminaAppletMenuClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a> <a class="el" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae1be1dd5e17b8bf09915bebc36d9a423"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1be1dd5e17b8bf09915bebc36d9a423">&#9670;&nbsp;</a></span>RemminaAppletMenuPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct _RemminaAppletMenuPriv <a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a9973b9af06049a506269a6b0c1ed7ffb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9973b9af06049a506269a6b0c1ed7ffb">&#9670;&nbsp;</a></span>RemminaAppletMenuNewConnectionType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">RemminaAppletMenuNewConnectionType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3"></a>REMMINA_APPLET_MENU_NEW_CONNECTION_NONE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2"></a>REMMINA_APPLET_MENU_NEW_CONNECTION_TOP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16"></a>REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a261d344be12cd270d8b81a26e1ad9d23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a261d344be12cd270d8b81a26e1ad9d23">&#9670;&nbsp;</a></span>remmina_applet_menu_add_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_add_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00141">141</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a1b16f50f3393c9053ee5b22eec039197"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b16f50f3393c9053ee5b22eec039197">&#9670;&nbsp;</a></span>remmina_applet_menu_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_applet_menu_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="adc65e597bc73ddbda587caa929efe872"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc65e597bc73ddbda587caa929efe872">&#9670;&nbsp;</a></span>remmina_applet_menu_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_applet_menu_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00227">227</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="a8029065504aef0e850d79f3823d18f66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8029065504aef0e850d79f3823d18f66">&#9670;&nbsp;</a></span>remmina_applet_menu_populate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_populate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00243">243</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="abb924051b4e37930bed6aed12b653751"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb924051b4e37930bed6aed12b653751">&#9670;&nbsp;</a></span>remmina_applet_menu_register_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_register_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00135">135</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+<a id="af2baabd1750dd1a95a0b36e601d99cfe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2baabd1750dd1a95a0b36e601d99cfe">&#9670;&nbsp;</a></span>remmina_applet_menu_set_hide_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_applet_menu_set_hide_count </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>hide_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8c_source.html#l00237">237</a> of file <a class="el" href="remmina__applet__menu_8c_source.html">remmina_applet_menu.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu_8h.html">remmina_applet_menu.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu_8h.js b/docs/remmina__applet__menu_8h.js
new file mode 100644
index 000000000..22561fd2d
--- /dev/null
+++ b/docs/remmina__applet__menu_8h.js
@@ -0,0 +1,19 @@
+var remmina__applet__menu_8h =
+[
+ [ "_RemminaAppletMenu", "struct___remmina_applet_menu.html", "struct___remmina_applet_menu" ],
+ [ "_RemminaAppletMenuClass", "struct___remmina_applet_menu_class.html", "struct___remmina_applet_menu_class" ],
+ [ "RemminaAppletMenu", "remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d", null ],
+ [ "RemminaAppletMenuClass", "remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a", null ],
+ [ "RemminaAppletMenuPriv", "remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423", null ],
+ [ "RemminaAppletMenuNewConnectionType", "remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb", [
+ [ "REMMINA_APPLET_MENU_NEW_CONNECTION_NONE", "remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3", null ],
+ [ "REMMINA_APPLET_MENU_NEW_CONNECTION_TOP", "remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2", null ],
+ [ "REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM", "remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16", null ]
+ ] ],
+ [ "remmina_applet_menu_add_item", "remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23", null ],
+ [ "remmina_applet_menu_get_type", "remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197", null ],
+ [ "remmina_applet_menu_new", "remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872", null ],
+ [ "remmina_applet_menu_populate", "remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66", null ],
+ [ "remmina_applet_menu_register_item", "remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751", null ],
+ [ "remmina_applet_menu_set_hide_count", "remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__applet__menu_8h_source.html b/docs/remmina__applet__menu_8h_source.html
new file mode 100644
index 000000000..f02d15c67
--- /dev/null
+++ b/docs/remmina__applet__menu_8h_source.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_applet_menu.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__applet__menu_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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">#define REMMINA_TYPE_APPLET_MENU (remmina_applet_menu_get_type())</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_APPLET_MENU, RemminaAppletMenu))</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_APPLET_MENU, RemminaAppletMenuClass))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_IS_APPLET_MENU(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_APPLET_MENU))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_APPLET_MENU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_APPLET_MENU))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_APPLET_MENU, RemminaAppletMenuClass))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3"> 48</a></span>&#160; <a class="code" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3">REMMINA_APPLET_MENU_NEW_CONNECTION_NONE</a>,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2"> 49</a></span>&#160; <a class="code" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2">REMMINA_APPLET_MENU_NEW_CONNECTION_TOP</a>,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16"> 50</a></span>&#160; <a class="code" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16">REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM</a></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">RemminaAppletMenuNewConnectionType</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>_RemminaAppletMenuPriv <a class="code" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu.html"> 55</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a> {</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f"> 56</a></span>&#160; GtkMenu <a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a"> 58</a></span>&#160; <a class="code" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a> * <a class="code" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a>;</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"><a class="line" href="struct___remmina_applet_menu_class.html"> 61</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a> {</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5"> 62</a></span>&#160; GtkMenuClass <a class="code" href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5">parent_class</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689"> 64</a></span>&#160; void (*launch_item)(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>);</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45"> 65</a></span>&#160; void (*edit_item)(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;GType <a class="code" href="remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197">remmina_applet_menu_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;G_GNUC_CONST;</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="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;GtkWidget *<a class="code" href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>, gboolean hide_count);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *<a class="code" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a>);</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;G_END_DECLS</div><div class="ttc" id="remmina__applet__menu_8h_html_a9973b9af06049a506269a6b0c1ed7ffb"><div class="ttname"><a href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb">RemminaAppletMenuNewConnectionType</a></div><div class="ttdeci">RemminaAppletMenuNewConnectionType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00047">remmina_applet_menu.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html"><div class="ttname"><a href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00051">remmina_applet_menu_item.h:51</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3"><div class="ttname"><a href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3">REMMINA_APPLET_MENU_NEW_CONNECTION_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00048">remmina_applet_menu.h:48</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_ae1be1dd5e17b8bf09915bebc36d9a423"><div class="ttname"><a href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a></div><div class="ttdeci">struct _RemminaAppletMenuPriv RemminaAppletMenuPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00053">remmina_applet_menu.h:53</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_abde8fc7fbf0c08e5846a55f194fbc04a"><div class="ttname"><a href="remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a">RemminaAppletMenuClass</a></div><div class="ttdeci">struct _RemminaAppletMenuClass RemminaAppletMenuClass</div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a1b16f50f3393c9053ee5b22eec039197"><div class="ttname"><a href="remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197">remmina_applet_menu_get_type</a></div><div class="ttdeci">GType remmina_applet_menu_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_adc65e597bc73ddbda587caa929efe872"><div class="ttname"><a href="remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00227">remmina_applet_menu.c:227</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16"><div class="ttname"><a href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16">REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00050">remmina_applet_menu.h:50</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_af2baabd1750dd1a95a0b36e601d99cfe"><div class="ttname"><a href="remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a></div><div class="ttdeci">void remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00237">remmina_applet_menu.c:237</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_class_html"><div class="ttname"><a href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00061">remmina_applet_menu.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_class_html_aef7303aa0b993f21a3d833e69ccad8e5"><div class="ttname"><a href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5">_RemminaAppletMenuClass::parent_class</a></div><div class="ttdeci">GtkMenuClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00062">remmina_applet_menu.h:62</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2"><div class="ttname"><a href="remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2">REMMINA_APPLET_MENU_NEW_CONNECTION_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00049">remmina_applet_menu.h:49</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_abb924051b4e37930bed6aed12b653751"><div class="ttname"><a href="remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a></div><div class="ttdeci">void remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00135">remmina_applet_menu.c:135</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a91fc5da4ee78e3319009a257b728687d"><div class="ttname"><a href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a></div><div class="ttdeci">struct _RemminaAppletMenu RemminaAppletMenu</div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a8029065504aef0e850d79f3823d18f66"><div class="ttname"><a href="remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a></div><div class="ttdeci">void remmina_applet_menu_populate(RemminaAppletMenu *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00243">remmina_applet_menu.c:243</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html"><div class="ttname"><a href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00055">remmina_applet_menu.h:55</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html_a261d344be12cd270d8b81a26e1ad9d23"><div class="ttname"><a href="remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a></div><div class="ttdeci">void remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00141">remmina_applet_menu.c:141</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html_a021eca99c32a7db802295342c8db006a"><div class="ttname"><a href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">_RemminaAppletMenu::priv</a></div><div class="ttdeci">RemminaAppletMenuPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00058">remmina_applet_menu.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html_a182439d81775304ff252c177a30e246f"><div class="ttname"><a href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">_RemminaAppletMenu::menu</a></div><div class="ttdeci">GtkMenu menu</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00056">remmina_applet_menu.h:56</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu_8h.html">remmina_applet_menu.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu__item_8c.html b/docs/remmina__applet__menu__item_8c.html
new file mode 100644
index 000000000..fb0844e2c
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8c.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu_item.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu__item_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_applet_menu_item.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__applet__menu__item_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9eea931ac8414d21b4b2d31b295f1f6f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f">G_DEFINE_TYPE</a> (<a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a>, remmina_applet_menu_item, GTK_TYPE_MENU_ITEM)</td></tr>
+<tr class="separator:a9eea931ac8414d21b4b2d31b295f1f6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39098e541e586dd05b5e42022ccf2701"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701">remmina_applet_menu_item_class_init</a> (<a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a> *klass)</td></tr>
+<tr class="separator:a39098e541e586dd05b5e42022ccf2701"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9535ef8b78ee42650a60a29b04f38d0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0">remmina_applet_menu_item_init</a> (<a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *item)</td></tr>
+<tr class="separator:ac9535ef8b78ee42650a60a29b04f38d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8518d5abbcb0cf2ff0923e41d55e1a96"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a> (<a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> item_type,...)</td></tr>
+<tr class="separator:a8518d5abbcb0cf2ff0923e41d55e1a96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09acb894371400d720c9e4ce20024f08"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a> (gconstpointer a, gconstpointer b, gpointer user_data)</td></tr>
+<tr class="separator:a09acb894371400d720c9e4ce20024f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a9eea931ac8414d21b4b2d31b295f1f6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9eea931ac8414d21b4b2d31b295f1f6f">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_applet_menu_item&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_MENU_ITEM&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00045">45</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+<a id="a39098e541e586dd05b5e42022ccf2701"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a39098e541e586dd05b5e42022ccf2701">&#9670;&nbsp;</a></span>remmina_applet_menu_item_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_item_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+<a id="a09acb894371400d720c9e4ce20024f08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09acb894371400d720c9e4ce20024f08">&#9670;&nbsp;</a></span>remmina_applet_menu_item_compare()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_applet_menu_item_compare </td>
+ <td>(</td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00146">146</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+<a id="ac9535ef8b78ee42650a60a29b04f38d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9535ef8b78ee42650a60a29b04f38d0">&#9670;&nbsp;</a></span>remmina_applet_menu_item_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_applet_menu_item_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>item</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+<a id="a8518d5abbcb0cf2ff0923e41d55e1a96"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8518d5abbcb0cf2ff0923e41d55e1a96">&#9670;&nbsp;</a></span>remmina_applet_menu_item_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_applet_menu_item_new </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a>&#160;</td>
+ <td class="paramname"><em>item_type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu__item_8c.html">remmina_applet_menu_item.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu__item_8c.js b/docs/remmina__applet__menu__item_8c.js
new file mode 100644
index 000000000..0701f49d5
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8c.js
@@ -0,0 +1,8 @@
+var remmina__applet__menu__item_8c =
+[
+ [ "G_DEFINE_TYPE", "remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f", null ],
+ [ "remmina_applet_menu_item_class_init", "remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701", null ],
+ [ "remmina_applet_menu_item_compare", "remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08", null ],
+ [ "remmina_applet_menu_item_init", "remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0", null ],
+ [ "remmina_applet_menu_item_new", "remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__applet__menu__item_8c_source.html b/docs/remmina__applet__menu__item_8c_source.html
new file mode 100644
index 000000000..1a2b223e5
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8c_source.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu_item.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu__item_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_applet_menu_item.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__applet__menu__item_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-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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib/gprintf.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;stdarg.h&gt;</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__applet__menu__item_8h.html">remmina_applet_menu_item.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f"> 45</a></span>&#160;<a class="code" href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f">G_DEFINE_TYPE</a>( <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>, remmina_applet_menu_item, GTK_TYPE_MENU_ITEM)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define IS_EMPTY(s) ((!s) || (s[0] == 0))</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> remmina_applet_menu_item_destroy(<a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>* item, gpointer data)</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; g_free(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; g_free(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; g_free(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; g_free(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a>);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; g_free(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a>);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</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"><a class="line" href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701"> 59</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701">remmina_applet_menu_item_class_init</a>(<a class="code" href="struct___remmina_applet_menu_item_class.html">RemminaAppletMenuItemClass</a>* klass)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0"> 64</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0">remmina_applet_menu_item_init</a>(<a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>* item)</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a> = NULL;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a> = NULL;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a> = NULL;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a> = NULL;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a> = NULL;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">ssh_tunnel_enabled</a> = FALSE;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; g_signal_connect(G_OBJECT(item), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(remmina_applet_menu_item_destroy), NULL);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96"> 76</a></span>&#160;GtkWidget* <a class="code" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a>(<a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> item_type, ...)</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"> 78</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; va_list ap;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>* item;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; GKeyFile* gkeyfile;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; GtkWidget* widget;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; va_start(ap, item_type);</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; item = REMMINA_APPLET_MENU_ITEM(g_object_new(REMMINA_TYPE_APPLET_MENU_ITEM, NULL));</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; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> = item_type;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">switch</span> (item_type) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>:</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a> = g_strdup(va_arg(ap, <span class="keyword">const</span> gchar*));</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"> 94</span>&#160; <span class="comment">/* Load the file */</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">if</span> (!g_key_file_load_from_file(gkeyfile, item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>, G_KEY_FILE_NONE, NULL)) {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; va_end(ap);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;name&quot;</span>, NULL);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;group&quot;</span>, NULL);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;protocol&quot;</span>, NULL);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;server&quot;</span>, NULL);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">ssh_tunnel_enabled</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, NULL);</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; g_key_file_free(gkeyfile);</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="keywordflow">if</span> (item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a> == NULL) {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; g_printf(<span class="stringliteral">&quot;WARNING: missing name= line in file %s. Skipping.\n&quot;</span>, item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; va_end(ap);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a> = g_strdup(va_arg(ap, <span class="keyword">const</span> gchar *));</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a> = g_strdup(_(<span class="stringliteral">&quot;Discovered&quot;</span>));</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a> = g_strdup(<span class="stringliteral">&quot;VNC&quot;</span>);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>:</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a> = g_strdup(_(<span class="stringliteral">&quot;New Connection&quot;</span>));</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</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; va_end(ap);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">/* Create the label */</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; widget = gtk_label_new(item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; gtk_container_add(GTK_CONTAINER(item), widget);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a>) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gtk_widget_set_tooltip_text(GTK_WIDGET(item), item-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</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; <span class="keywordflow">return</span> GTK_WIDGET(item);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08"> 146</a></span>&#160;gint <a class="code" href="remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a>(gconstpointer a, gconstpointer b, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; gint cmp;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>* itema;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a>* itemb;</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; <span class="comment">/* Passed in parameters are pointers to pointers */</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; itema = REMMINA_APPLET_MENU_ITEM(*((<span class="keywordtype">void</span>**)a));</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; itemb = REMMINA_APPLET_MENU_ITEM(*((<span class="keywordtype">void</span>**)b));</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="comment">/* Put ungrouped items to the last */</span></div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (IS_EMPTY(itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>) &amp;&amp; !IS_EMPTY(itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>))</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (!IS_EMPTY(itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>) &amp;&amp; IS_EMPTY(itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>))</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> -1;</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">/* Put discovered items the last group */</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">if</span> (itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> == <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a> &amp;&amp; itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> != <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> != <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a> &amp;&amp; itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> == <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>)</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a> != <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a> &amp;&amp; !IS_EMPTY(itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>)) {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; cmp = g_strcmp0(itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>, itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (cmp != 0)</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">return</span> cmp;</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="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">return</span> g_strcmp0(itema-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>, itemb-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;}</div><div class="ttc" id="struct___remmina_applet_menu_item_html"><div class="ttname"><a href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00051">remmina_applet_menu_item.h:51</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a9eea931ac8414d21b4b2d31b295f1f6f"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaAppletMenuItem, remmina_applet_menu_item, GTK_TYPE_MENU_ITEM)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00045">remmina_applet_menu_item.c:45</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a561b4a6b148ac58ce0fafff8e299fc7e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">_RemminaAppletMenuItem::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00057">remmina_applet_menu_item.h:57</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a0c122a469388d5000ce5af4ec29a561e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">_RemminaAppletMenuItem::protocol</a></div><div class="ttdeci">gchar * protocol</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00058">remmina_applet_menu_item.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a770b749c60737542802925cd6f3524fa"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">_RemminaAppletMenuItem::item_type</a></div><div class="ttdeci">RemminaAppletMenuItemType item_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00054">remmina_applet_menu_item.h:54</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_aac9b89701606ff0f130f36ec0df55674"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">_RemminaAppletMenuItem::filename</a></div><div class="ttdeci">gchar * filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00055">remmina_applet_menu_item.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_ac0c498b70034dfb69bbc4ae3ecb2d9a3"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">_RemminaAppletMenuItem::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00059">remmina_applet_menu_item.h:59</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a></div><div class="ttdeci">RemminaAppletMenuItemType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00047">remmina_applet_menu_item.h:47</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a39098e541e586dd05b5e42022ccf2701"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701">remmina_applet_menu_item_class_init</a></div><div class="ttdeci">static void remmina_applet_menu_item_class_init(RemminaAppletMenuItemClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00059">remmina_applet_menu_item.c:59</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a09acb894371400d720c9e4ce20024f08"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a></div><div class="ttdeci">gint remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00146">remmina_applet_menu_item.c:146</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_abfc6c501c400171718ddf4a520154e8c"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00056">remmina_applet_menu_item.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_class_html"><div class="ttname"><a href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00063">remmina_applet_menu_item.h:63</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a8518d5abbcb0cf2ff0923e41d55e1a96"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00076">remmina_applet_menu_item.c:76</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_ac9535ef8b78ee42650a60a29b04f38d0"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0">remmina_applet_menu_item_init</a></div><div class="ttdeci">static void remmina_applet_menu_item_init(RemminaAppletMenuItem *item)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00064">remmina_applet_menu_item.c:64</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_ae8b3b5815f1b5b665129ab1256cb77e3"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">_RemminaAppletMenuItem::ssh_tunnel_enabled</a></div><div class="ttdeci">gboolean ssh_tunnel_enabled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00060">remmina_applet_menu_item.h:60</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html"><div class="ttname"><a href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu__item_8c.html">remmina_applet_menu_item.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu__item_8h.html b/docs/remmina__applet__menu__item_8h.html
new file mode 100644
index 000000000..abfa9150f
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8h.html
@@ -0,0 +1,276 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu_item.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu__item_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_applet_menu_item.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__applet__menu__item_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:afdc0486f706728acf384fc38913b46f3"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a></td></tr>
+<tr class="separator:afdc0486f706728acf384fc38913b46f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48b162462a893a4a84346c9d8606c0e5"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a></td></tr>
+<tr class="separator:a48b162462a893a4a84346c9d8606c0e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a75e42156d38612a96ae48899316b4727"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> { <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>,
+<a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>,
+<a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>
+ }</td></tr>
+<tr class="separator:a75e42156d38612a96ae48899316b4727"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad77db14bb39fdbf9422f5f4d6be821ef"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef">remmina_applet_menu_item_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:ad77db14bb39fdbf9422f5f4d6be821ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8518d5abbcb0cf2ff0923e41d55e1a96"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a> (<a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> item_type,...)</td></tr>
+<tr class="separator:a8518d5abbcb0cf2ff0923e41d55e1a96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09acb894371400d720c9e4ce20024f08"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a> (gconstpointer a, gconstpointer b, gpointer user_data)</td></tr>
+<tr class="separator:a09acb894371400d720c9e4ce20024f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="afdc0486f706728acf384fc38913b46f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afdc0486f706728acf384fc38913b46f3">&#9670;&nbsp;</a></span>RemminaAppletMenuItem</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a> <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a48b162462a893a4a84346c9d8606c0e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48b162462a893a4a84346c9d8606c0e5">&#9670;&nbsp;</a></span>RemminaAppletMenuItemClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a> <a class="el" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a75e42156d38612a96ae48899316b4727"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75e42156d38612a96ae48899316b4727">&#9670;&nbsp;</a></span>RemminaAppletMenuItemType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572"></a>REMMINA_APPLET_MENU_ITEM_FILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3"></a>REMMINA_APPLET_MENU_ITEM_NEW&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1"></a>REMMINA_APPLET_MENU_ITEM_DISCOVERED&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a09acb894371400d720c9e4ce20024f08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09acb894371400d720c9e4ce20024f08">&#9670;&nbsp;</a></span>remmina_applet_menu_item_compare()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_applet_menu_item_compare </td>
+ <td>(</td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00146">146</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+<a id="ad77db14bb39fdbf9422f5f4d6be821ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad77db14bb39fdbf9422f5f4d6be821ef">&#9670;&nbsp;</a></span>remmina_applet_menu_item_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_applet_menu_item_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8518d5abbcb0cf2ff0923e41d55e1a96"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8518d5abbcb0cf2ff0923e41d55e1a96">&#9670;&nbsp;</a></span>remmina_applet_menu_item_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_applet_menu_item_new </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a>&#160;</td>
+ <td class="paramname"><em>item_type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__applet__menu__item_8c_source.html">remmina_applet_menu_item.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__applet__menu__item_8h.js b/docs/remmina__applet__menu__item_8h.js
new file mode 100644
index 000000000..9bb97df0c
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8h.js
@@ -0,0 +1,15 @@
+var remmina__applet__menu__item_8h =
+[
+ [ "_RemminaAppletMenuItem", "struct___remmina_applet_menu_item.html", "struct___remmina_applet_menu_item" ],
+ [ "_RemminaAppletMenuItemClass", "struct___remmina_applet_menu_item_class.html", "struct___remmina_applet_menu_item_class" ],
+ [ "RemminaAppletMenuItem", "remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3", null ],
+ [ "RemminaAppletMenuItemClass", "remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5", null ],
+ [ "RemminaAppletMenuItemType", "remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727", [
+ [ "REMMINA_APPLET_MENU_ITEM_FILE", "remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572", null ],
+ [ "REMMINA_APPLET_MENU_ITEM_NEW", "remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3", null ],
+ [ "REMMINA_APPLET_MENU_ITEM_DISCOVERED", "remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1", null ]
+ ] ],
+ [ "remmina_applet_menu_item_compare", "remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08", null ],
+ [ "remmina_applet_menu_item_get_type", "remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef", null ],
+ [ "remmina_applet_menu_item_new", "remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__applet__menu__item_8h_source.html b/docs/remmina__applet__menu__item_8h_source.html
new file mode 100644
index 000000000..e1860f37e
--- /dev/null
+++ b/docs/remmina__applet__menu__item_8h_source.html
@@ -0,0 +1,121 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_applet_menu_item.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__applet__menu__item_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_applet_menu_item.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__applet__menu__item_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-2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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">#define REMMINA_TYPE_APPLET_MENU_ITEM (remmina_applet_menu_item_get_type())</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_APPLET_MENU_ITEM, RemminaAppletMenuItem))</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_APPLET_MENU_ITEM, RemminaAppletMenuItemClass))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_IS_APPLET_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_APPLET_MENU_ITEM))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_APPLET_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_APPLET_MENU_ITEM))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_APPLET_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_APPLET_MENU_ITEM, RemminaAppletMenuItemClass))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3"> 48</a></span>&#160; <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>, <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>, <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;} <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a> {</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4"> 52</a></span>&#160; GtkImageMenuItem <a class="code" href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4">image_menu_item</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa"> 54</a></span>&#160; <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> <a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674"> 55</a></span>&#160; gchar * <a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c"> 56</a></span>&#160; gchar * <a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e"> 57</a></span>&#160; gchar * <a class="code" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e"> 58</a></span>&#160; gchar * <a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3"> 59</a></span>&#160; gchar * <a class="code" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3"> 60</a></span>&#160; gboolean <a class="code" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">ssh_tunnel_enabled</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item_class.html"> 63</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a> {</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a"> 64</a></span>&#160; GtkImageMenuItemClass <a class="code" href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a">parent_class</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;} <a class="code" href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a>;</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"> 67</span>&#160;GType <a class="code" href="remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef">remmina_applet_menu_item_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;GtkWidget *<a class="code" href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a>(<a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> <a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a>, ...);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;gint <a class="code" href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a>(gconstpointer a, gconstpointer b, gpointer user_data);</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_applet_menu_item_class_html_ae3bd1b45927af62fe3d06575f46e769a"><div class="ttname"><a href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a">_RemminaAppletMenuItemClass::parent_class</a></div><div class="ttdeci">GtkImageMenuItemClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00064">remmina_applet_menu_item.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html"><div class="ttname"><a href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00051">remmina_applet_menu_item.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a561b4a6b148ac58ce0fafff8e299fc7e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">_RemminaAppletMenuItem::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00057">remmina_applet_menu_item.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a4bc2551d5d8923cfc232fb64d5cd29d4"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4">_RemminaAppletMenuItem::image_menu_item</a></div><div class="ttdeci">GtkImageMenuItem image_menu_item</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00052">remmina_applet_menu_item.h:52</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a48b162462a893a4a84346c9d8606c0e5"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5">RemminaAppletMenuItemClass</a></div><div class="ttdeci">struct _RemminaAppletMenuItemClass RemminaAppletMenuItemClass</div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a09acb894371400d720c9e4ce20024f08"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08">remmina_applet_menu_item_compare</a></div><div class="ttdeci">gint remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00146">remmina_applet_menu_item.c:146</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a0c122a469388d5000ce5af4ec29a561e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">_RemminaAppletMenuItem::protocol</a></div><div class="ttdeci">gchar * protocol</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00058">remmina_applet_menu_item.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a770b749c60737542802925cd6f3524fa"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">_RemminaAppletMenuItem::item_type</a></div><div class="ttdeci">RemminaAppletMenuItemType item_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00054">remmina_applet_menu_item.h:54</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_aac9b89701606ff0f130f36ec0df55674"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">_RemminaAppletMenuItem::filename</a></div><div class="ttdeci">gchar * filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00055">remmina_applet_menu_item.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_ac0c498b70034dfb69bbc4ae3ecb2d9a3"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">_RemminaAppletMenuItem::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00059">remmina_applet_menu_item.h:59</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_ad77db14bb39fdbf9422f5f4d6be821ef"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef">remmina_applet_menu_item_get_type</a></div><div class="ttdeci">GType remmina_applet_menu_item_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a></div><div class="ttdeci">RemminaAppletMenuItemType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00047">remmina_applet_menu_item.h:47</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_afdc0486f706728acf384fc38913b46f3"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a></div><div class="ttdeci">struct _RemminaAppletMenuItem RemminaAppletMenuItem</div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_abfc6c501c400171718ddf4a520154e8c"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00056">remmina_applet_menu_item.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_class_html"><div class="ttname"><a href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00063">remmina_applet_menu_item.h:63</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a8518d5abbcb0cf2ff0923e41d55e1a96"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00076">remmina_applet_menu_item.c:76</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_ae8b3b5815f1b5b665129ab1256cb77e3"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">_RemminaAppletMenuItem::ssh_tunnel_enabled</a></div><div class="ttdeci">gboolean ssh_tunnel_enabled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00060">remmina_applet_menu_item.h:60</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__avahi_8c.html b/docs/remmina__avahi_8c.html
new file mode 100644
index 000000000..7e2d4a4fb
--- /dev/null
+++ b/docs/remmina__avahi_8c.html
@@ -0,0 +1,469 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_avahi.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__avahi_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_avahi.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__avahi_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afc3091cc602d3fa0670405c6c17125de"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi_resolve_callback</a> (AvahiServiceResolver *r, AVAHI_GCC_UNUSED AvahiIfIndex interface, AVAHI_GCC_UNUSED AvahiProtocol protocol, AvahiResolverEvent event, const char *name, const char *type, const char *domain, const char *host_name, const AvahiAddress *address, uint16_t port, AvahiStringList *txt, AvahiLookupResultFlags flags, AVAHI_GCC_UNUSED void *userdata)</td></tr>
+<tr class="separator:afc3091cc602d3fa0670405c6c17125de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1275ffa50fdda727520512496ef6f80d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi_browse_callback</a> (AvahiServiceBrowser *b, AvahiIfIndex interface, AvahiProtocol protocol, AvahiBrowserEvent event, const char *name, const char *type, const char *domain, AVAHI_GCC_UNUSED AvahiLookupResultFlags flags, void *userdata)</td></tr>
+<tr class="separator:a1275ffa50fdda727520512496ef6f80d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06890e127f3d58d93e6ba31051c816d7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi_client_callback</a> (AvahiClient *c, AvahiClientState state, AVAHI_GCC_UNUSED void *userdata)</td></tr>
+<tr class="separator:a06890e127f3d58d93e6ba31051c816d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7c9f88b990e204955c7e02f6fee17c9"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi_iterate</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:ab7c9f88b990e204955c7e02f6fee17c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43319a5eff255c9b41dc8848cea6185f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a> (void)</td></tr>
+<tr class="separator:a43319a5eff255c9b41dc8848cea6185f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ec851b22607dd1171ecdd5cca735b71"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a1ec851b22607dd1171ecdd5cca735b71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74b9962d6ef442e9c0a84293e2eaed30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a74b9962d6ef442e9c0a84293e2eaed30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2710b09d09507f1c91ba8a2bd01b0436"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a2710b09d09507f1c91ba8a2bd01b0436"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a1275ffa50fdda727520512496ef6f80d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1275ffa50fdda727520512496ef6f80d">&#9670;&nbsp;</a></span>remmina_avahi_browse_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_avahi_browse_callback </td>
+ <td>(</td>
+ <td class="paramtype">AvahiServiceBrowser *&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiIfIndex&#160;</td>
+ <td class="paramname"><em>interface</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiProtocol&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiBrowserEvent&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AVAHI_GCC_UNUSED AvahiLookupResultFlags&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00108">108</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a06890e127f3d58d93e6ba31051c816d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06890e127f3d58d93e6ba31051c816d7">&#9670;&nbsp;</a></span>remmina_avahi_client_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_avahi_client_callback </td>
+ <td>(</td>
+ <td class="paramtype">AvahiClient *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiClientState&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AVAHI_GCC_UNUSED void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00163">163</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a2710b09d09507f1c91ba8a2bd01b0436"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2710b09d09507f1c91ba8a2bd01b0436">&#9670;&nbsp;</a></span>remmina_avahi_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00264">264</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="ab7c9f88b990e204955c7e02f6fee17c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7c9f88b990e204955c7e02f6fee17c9">&#9670;&nbsp;</a></span>remmina_avahi_iterate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_avahi_iterate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00175">175</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a43319a5eff255c9b41dc8848cea6185f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43319a5eff255c9b41dc8848cea6185f">&#9670;&nbsp;</a></span>remmina_avahi_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> * remmina_avahi_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00189">189</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="afc3091cc602d3fa0670405c6c17125de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc3091cc602d3fa0670405c6c17125de">&#9670;&nbsp;</a></span>remmina_avahi_resolve_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_avahi_resolve_callback </td>
+ <td>(</td>
+ <td class="paramtype">AvahiServiceResolver *&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AVAHI_GCC_UNUSED AvahiIfIndex&#160;</td>
+ <td class="paramname"><em>interface</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AVAHI_GCC_UNUSED AvahiProtocol&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiResolverEvent&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const AvahiAddress *&#160;</td>
+ <td class="paramname"><em>address</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint16_t&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiStringList *&#160;</td>
+ <td class="paramname"><em>txt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AvahiLookupResultFlags&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">AVAHI_GCC_UNUSED void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a1ec851b22607dd1171ecdd5cca735b71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ec851b22607dd1171ecdd5cca735b71">&#9670;&nbsp;</a></span>remmina_avahi_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Customize the default domain here </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00207">207</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a74b9962d6ef442e9c0a84293e2eaed30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74b9962d6ef442e9c0a84293e2eaed30">&#9670;&nbsp;</a></span>remmina_avahi_stop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_stop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00241">241</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__avahi_8c.html">remmina_avahi.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__avahi_8c.js b/docs/remmina__avahi_8c.js
new file mode 100644
index 000000000..5ff647b26
--- /dev/null
+++ b/docs/remmina__avahi_8c.js
@@ -0,0 +1,12 @@
+var remmina__avahi_8c =
+[
+ [ "_RemminaAvahiPriv", "struct___remmina_avahi_priv.html", "struct___remmina_avahi_priv" ],
+ [ "remmina_avahi_browse_callback", "remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d", null ],
+ [ "remmina_avahi_client_callback", "remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7", null ],
+ [ "remmina_avahi_free", "remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436", null ],
+ [ "remmina_avahi_iterate", "remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9", null ],
+ [ "remmina_avahi_new", "remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f", null ],
+ [ "remmina_avahi_resolve_callback", "remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de", null ],
+ [ "remmina_avahi_start", "remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71", null ],
+ [ "remmina_avahi_stop", "remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__avahi_8c_source.html b/docs/remmina__avahi_8c_source.html
new file mode 100644
index 000000000..1606af4cc
--- /dev/null
+++ b/docs/remmina__avahi_8c_source.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_avahi.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__avahi_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_avahi.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__avahi_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-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-2020 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 &lt;gtk/gtk.h&gt;</span></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 &quot;<a class="code" href="remmina__avahi_8h.html">remmina_avahi.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_CLIENT</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 &lt;avahi-client/client.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;avahi-client/lookup.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;avahi-common/simple-watch.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;avahi-common/malloc.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;avahi-common/error.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html"> 50</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304"> 51</a></span>&#160; AvahiSimplePoll* <a class="code" href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304">simple_poll</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040"> 52</a></span>&#160; AvahiClient* <a class="code" href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040">client</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8"> 53</a></span>&#160; AvahiServiceBrowser* <a class="code" href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8">sb</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0"> 54</a></span>&#160; guint <a class="code" href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0">iterate_handler</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8"> 55</a></span>&#160; gboolean <a class="code" href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8">has_event</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;};</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de"> 59</a></span>&#160;<a class="code" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi_resolve_callback</a>(</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; AvahiServiceResolver* r,</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; AVAHI_GCC_UNUSED AvahiIfIndex interface,</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; AVAHI_GCC_UNUSED AvahiProtocol protocol,</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; AvahiResolverEvent event,</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* name,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* type,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* domain,</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* host_name,</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> AvahiAddress* address,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; uint16_t port,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; AvahiStringList* txt,</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; AvahiLookupResultFlags flags,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; AVAHI_GCC_UNUSED <span class="keywordtype">void</span>* userdata)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; gchar* key;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; gchar* value;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga = (<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>*)userdata;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; assert(r);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event = TRUE;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">switch</span> (event) {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">case</span> AVAHI_RESOLVER_FAILURE:</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-resolver) Failed to resolve service &#39;%s&#39; of type &#39;%s&#39; in domain &#39;%s&#39;: %s\n&quot;</span>,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; name, type, domain, avahi_strerror(avahi_client_errno(avahi_service_resolver_get_client(r))));</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">break</span>;</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"> 89</span>&#160; <span class="keywordflow">case</span> AVAHI_RESOLVER_FOUND:</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; key = g_strdup_printf(<span class="stringliteral">&quot;%s,%s,%s&quot;</span>, name, type, domain);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span> (g_hash_table_lookup(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>, key)) {</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; g_free(key);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">break</span>;</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; value = g_strdup_printf(<span class="stringliteral">&quot;[%s]:%i&quot;</span>, host_name, port);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; g_hash_table_insert(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>, key, value);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">/* key and value will be freed with g_free when the has table is freed */</span></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; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-resolver) Added service &#39;%s&#39;\n&quot;</span>, value);</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; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</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; avahi_service_resolver_free(r);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</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="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d"> 108</a></span>&#160;<a class="code" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi_browse_callback</a>(</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; AvahiServiceBrowser* b,</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; AvahiIfIndex interface,</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; AvahiProtocol protocol,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; AvahiBrowserEvent event,</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* name,</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* type,</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* domain,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; AVAHI_GCC_UNUSED AvahiLookupResultFlags flags,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">void</span>* userdata)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;{</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gchar* key;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga = (<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>*)userdata;</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"> 123</span>&#160; assert(b);</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; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event = TRUE;</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="keywordflow">switch</span> (event) {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">case</span> AVAHI_BROWSER_FAILURE:</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-browser) %s\n&quot;</span>,</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; avahi_strerror(avahi_client_errno(avahi_service_browser_get_client(b))));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span>;</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="keywordflow">case</span> AVAHI_BROWSER_NEW:</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; key = g_strdup_printf(<span class="stringliteral">&quot;%s,%s,%s&quot;</span>, name, type, domain);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (g_hash_table_lookup(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>, key)) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; g_free(key);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_free(key);</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; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-browser) Found service &#39;%s&#39; of type &#39;%s&#39; in domain &#39;%s&#39;\n&quot;</span>, name, type, domain);</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; <span class="keywordflow">if</span> (!(avahi_service_resolver_new(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client, interface, protocol, name, type, domain,</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; AVAHI_PROTO_UNSPEC, 0, <a class="code" href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi_resolve_callback</a>, ga))) {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-browser) Failed to resolve service &#39;%s&#39;: %s\n&quot;</span>,</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; name, avahi_strerror(avahi_client_errno(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client)));</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; <span class="keywordflow">break</span>;</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"> 150</span>&#160; <span class="keywordflow">case</span> AVAHI_BROWSER_REMOVE:</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; g_print(<span class="stringliteral">&quot;(remmina-applet avahi-browser) Removed service &#39;%s&#39; of type &#39;%s&#39; in domain &#39;%s&#39;\n&quot;</span>, name, type, domain);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; key = g_strdup_printf(<span class="stringliteral">&quot;%s,%s,%s&quot;</span>, name, type, domain);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; g_hash_table_remove(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>, key);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; g_free(key);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">break</span>;</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="keywordflow">case</span> AVAHI_BROWSER_ALL_FOR_NOW:</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">case</span> AVAHI_BROWSER_CACHE_EXHAUSTED:</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</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"><a class="line" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7"> 163</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi_client_callback</a>(AvahiClient* c, AvahiClientState state, AVAHI_GCC_UNUSED <span class="keywordtype">void</span> * userdata)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;{</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga = (<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>*)userdata;</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; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event = TRUE;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">if</span> (state == AVAHI_CLIENT_FAILURE) {</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; g_print(<span class="stringliteral">&quot;(remmina-applet avahi) Server connection failure: %s\n&quot;</span>, avahi_strerror(avahi_client_errno(c)));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</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"><a class="line" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9"> 175</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi_iterate</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">/* Call the iteration until no further events */</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event = FALSE;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; avahi_simple_poll_iterate(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll, 0);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (!ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;}</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392"> 189</a></span>&#160;<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* <a class="code" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;{</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; ga = g_new(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>, 1);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a> = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a> = FALSE;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a> = g_new(<a class="code" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a>, 1);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll = NULL;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client = NULL;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb = NULL;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;iterate_handler = 0;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;has_event = FALSE;</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">return</span> ga;</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;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71"> 207</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordtype">int</span> error;</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; <span class="keywordflow">if</span> (ga-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a>)</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a> = TRUE;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll = avahi_simple_poll_new();</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">if</span> (!ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll) {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; g_print(<span class="stringliteral">&quot;Failed to create simple poll object.\n&quot;</span>);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; }</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; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client = avahi_client_new(avahi_simple_poll_get(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll), 0, <a class="code" href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi_client_callback</a>, ga,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; &amp;error);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">if</span> (!ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client) {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; g_print(<span class="stringliteral">&quot;Failed to create client: %s\n&quot;</span>, avahi_strerror(error));</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb = avahi_service_browser_new(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC, <span class="stringliteral">&quot;_rfb._tcp&quot;</span>, NULL, 0,</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi_browse_callback</a>, ga);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">if</span> (!ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb) {</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; g_print(<span class="stringliteral">&quot;Failed to create service browser: %s\n&quot;</span>, avahi_strerror(avahi_client_errno(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client)));</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;iterate_handler = g_timeout_add(5000, (GSourceFunc)<a class="code" href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi_iterate</a>, ga);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;}</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30"> 241</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;{</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; g_hash_table_remove_all(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;iterate_handler) {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; g_source_remove(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;iterate_handler);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;iterate_handler = 0;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb) {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; avahi_service_browser_free(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;sb = NULL;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">if</span> (ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client) {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; avahi_client_free(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;client = NULL;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll) {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; avahi_simple_poll_free(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>-&gt;simple_poll = NULL;</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; ga-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a> = FALSE;</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;</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436"> 264</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">if</span> (ga == NULL)</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">return</span>;</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; <a class="code" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(ga);</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"> 272</span>&#160; g_free(ga-&gt;<a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; g_hash_table_destroy(ga-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; g_free(ga);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;}</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="preprocessor">#else</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;<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* <a class="code" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;}</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;{</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;}</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a>* ga)</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;{</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; TRACE_CALL(__func__);</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="preprocessor">#endif</span></div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="ttc" id="remmina__avahi_8h_html"><div class="ttname"><a href="remmina__avahi_8h.html">remmina_avahi.h</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a06890e127f3d58d93e6ba31051c816d7"><div class="ttname"><a href="remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7">remmina_avahi_client_callback</a></div><div class="ttdeci">static void remmina_avahi_client_callback(AvahiClient *c, AvahiClientState state, AVAHI_GCC_UNUSED void *userdata)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00163">remmina_avahi.c:163</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a43319a5eff255c9b41dc8848cea6185f"><div class="ttname"><a href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a></div><div class="ttdeci">RemminaAvahi * remmina_avahi_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00189">remmina_avahi.c:189</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_aecbc96d4aa70248f15ea9c45e8dec0eb"><div class="ttname"><a href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">_RemminaAvahi::priv</a></div><div class="ttdeci">RemminaAvahiPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00046">remmina_avahi.h:46</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a7aad6aa551cd2dda96e32390f8b089ba"><div class="ttname"><a href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a></div><div class="ttdeci">typedefG_BEGIN_DECLS struct _RemminaAvahiPriv RemminaAvahiPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00040">remmina_avahi.h:40</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html_a50c8ac85caddd549b65e8b5f56d7b7e0"><div class="ttname"><a href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0">_RemminaAvahiPriv::iterate_handler</a></div><div class="ttdeci">guint iterate_handler</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00054">remmina_avahi.c:54</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_afc3091cc602d3fa0670405c6c17125de"><div class="ttname"><a href="remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de">remmina_avahi_resolve_callback</a></div><div class="ttdeci">static void remmina_avahi_resolve_callback(AvahiServiceResolver *r, AVAHI_GCC_UNUSED AvahiIfIndex interface, AVAHI_GCC_UNUSED AvahiProtocol protocol, AvahiResolverEvent event, const char *name, const char *type, const char *domain, const char *host_name, const AvahiAddress *address, uint16_t port, AvahiStringList *txt, AvahiLookupResultFlags flags, AVAHI_GCC_UNUSED void *userdata)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00059">remmina_avahi.c:59</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html_a3522087756f916a09e25faa681e69cf8"><div class="ttname"><a href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8">_RemminaAvahiPriv::has_event</a></div><div class="ttdeci">gboolean has_event</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00055">remmina_avahi.c:55</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_ab7c9f88b990e204955c7e02f6fee17c9"><div class="ttname"><a href="remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9">remmina_avahi_iterate</a></div><div class="ttdeci">static gboolean remmina_avahi_iterate(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00175">remmina_avahi.c:175</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html_aabad1866d4f15fe3eb42b0438becffe8"><div class="ttname"><a href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8">_RemminaAvahiPriv::sb</a></div><div class="ttdeci">AvahiServiceBrowser * sb</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00053">remmina_avahi.c:53</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a74b9962d6ef442e9c0a84293e2eaed30"><div class="ttname"><a href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a></div><div class="ttdeci">void remmina_avahi_stop(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00241">remmina_avahi.c:241</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html"><div class="ttname"><a href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00050">remmina_avahi.c:50</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html_ad98e9c27645d39dd063259aaa7e81040"><div class="ttname"><a href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040">_RemminaAvahiPriv::client</a></div><div class="ttdeci">AvahiClient * client</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00052">remmina_avahi.c:52</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a2710b09d09507f1c91ba8a2bd01b0436"><div class="ttname"><a href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a></div><div class="ttdeci">void remmina_avahi_free(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00264">remmina_avahi.c:264</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_ab73788ec8ee72842428712efb932d58e"><div class="ttname"><a href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">_RemminaAvahi::started</a></div><div class="ttdeci">gboolean started</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00044">remmina_avahi.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_a52430cc6a84651509f25bc746d31e675"><div class="ttname"><a href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">_RemminaAvahi::discovered_services</a></div><div class="ttdeci">GHashTable * discovered_services</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00043">remmina_avahi.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html"><div class="ttname"><a href="struct___remmina_avahi.html">_RemminaAvahi</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00042">remmina_avahi.h:42</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a1ec851b22607dd1171ecdd5cca735b71"><div class="ttname"><a href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a></div><div class="ttdeci">void remmina_avahi_start(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00207">remmina_avahi.c:207</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a1275ffa50fdda727520512496ef6f80d"><div class="ttname"><a href="remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d">remmina_avahi_browse_callback</a></div><div class="ttdeci">static void remmina_avahi_browse_callback(AvahiServiceBrowser *b, AvahiIfIndex interface, AvahiProtocol protocol, AvahiBrowserEvent event, const char *name, const char *type, const char *domain, AVAHI_GCC_UNUSED AvahiLookupResultFlags flags, void *userdata)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00108">remmina_avahi.c:108</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html_a1c851271df1130c5e9506223a8a1d304"><div class="ttname"><a href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304">_RemminaAvahiPriv::simple_poll</a></div><div class="ttdeci">AvahiSimplePoll * simple_poll</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00051">remmina_avahi.c:51</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__avahi_8c.html">remmina_avahi.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__avahi_8h.html b/docs/remmina__avahi_8h.html
new file mode 100644
index 000000000..90cab21f4
--- /dev/null
+++ b/docs/remmina__avahi_8h.html
@@ -0,0 +1,244 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_avahi.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__avahi_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_avahi.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__avahi_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi.html">_RemminaAvahi</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7aad6aa551cd2dda96e32390f8b089ba"><td class="memItemLeft" align="right" valign="top">typedef typedefG_BEGIN_DECLS struct <a class="el" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a></td></tr>
+<tr class="separator:a7aad6aa551cd2dda96e32390f8b089ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e8eaffd2965830d8a665a12eed58663"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_avahi.html">_RemminaAvahi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a></td></tr>
+<tr class="separator:a6e8eaffd2965830d8a665a12eed58663"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad63b4dc3fa2e7fa83bd700ad84608392"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392">remmina_avahi_new</a> (void)</td></tr>
+<tr class="separator:ad63b4dc3fa2e7fa83bd700ad84608392"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ec851b22607dd1171ecdd5cca735b71"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a1ec851b22607dd1171ecdd5cca735b71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74b9962d6ef442e9c0a84293e2eaed30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a74b9962d6ef442e9c0a84293e2eaed30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2710b09d09507f1c91ba8a2bd01b0436"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a> (<a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *ga)</td></tr>
+<tr class="separator:a2710b09d09507f1c91ba8a2bd01b0436"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a6e8eaffd2965830d8a665a12eed58663"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e8eaffd2965830d8a665a12eed58663">&#9670;&nbsp;</a></span>RemminaAvahi</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_avahi.html">_RemminaAvahi</a> <a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7aad6aa551cd2dda96e32390f8b089ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7aad6aa551cd2dda96e32390f8b089ba">&#9670;&nbsp;</a></span>RemminaAvahiPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef typedefG_BEGIN_DECLS struct <a class="el" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a> <a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2710b09d09507f1c91ba8a2bd01b0436"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2710b09d09507f1c91ba8a2bd01b0436">&#9670;&nbsp;</a></span>remmina_avahi_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00264">264</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="ad63b4dc3fa2e7fa83bd700ad84608392"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad63b4dc3fa2e7fa83bd700ad84608392">&#9670;&nbsp;</a></span>remmina_avahi_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a>* remmina_avahi_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00189">189</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a1ec851b22607dd1171ecdd5cca735b71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ec851b22607dd1171ecdd5cca735b71">&#9670;&nbsp;</a></span>remmina_avahi_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>Customize the default domain here </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00207">207</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a74b9962d6ef442e9c0a84293e2eaed30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74b9962d6ef442e9c0a84293e2eaed30">&#9670;&nbsp;</a></span>remmina_avahi_stop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_avahi_stop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td>
+ <td class="paramname"><em>ga</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00241">241</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__avahi_8h.html">remmina_avahi.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__avahi_8h.js b/docs/remmina__avahi_8h.js
new file mode 100644
index 000000000..20dc0a20b
--- /dev/null
+++ b/docs/remmina__avahi_8h.js
@@ -0,0 +1,10 @@
+var remmina__avahi_8h =
+[
+ [ "_RemminaAvahi", "struct___remmina_avahi.html", "struct___remmina_avahi" ],
+ [ "RemminaAvahi", "remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663", null ],
+ [ "RemminaAvahiPriv", "remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba", null ],
+ [ "remmina_avahi_free", "remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436", null ],
+ [ "remmina_avahi_new", "remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392", null ],
+ [ "remmina_avahi_start", "remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71", null ],
+ [ "remmina_avahi_stop", "remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__avahi_8h_source.html b/docs/remmina__avahi_8h_source.html
new file mode 100644
index 000000000..0eeda5d94
--- /dev/null
+++ b/docs/remmina__avahi_8h_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_avahi.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__avahi_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_avahi.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__avahi_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-2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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"><a class="line" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a> <a class="code" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct___remmina_avahi.html"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_avahi.html">_RemminaAvahi</a> {</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675"> 43</a></span>&#160; GHashTable * <a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e"> 44</a></span>&#160; gboolean <a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a>;</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="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb"> 46</a></span>&#160; <a class="code" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a> * <a class="code" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a> *<a class="code" href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392">remmina_avahi_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a> *ga);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a> *ga);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a>(<a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a> *ga);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_avahi_html_aecbc96d4aa70248f15ea9c45e8dec0eb"><div class="ttname"><a href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">_RemminaAvahi::priv</a></div><div class="ttdeci">RemminaAvahiPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00046">remmina_avahi.h:46</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a74b9962d6ef442e9c0a84293e2eaed30"><div class="ttname"><a href="remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a></div><div class="ttdeci">void remmina_avahi_stop(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00241">remmina_avahi.c:241</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a6e8eaffd2965830d8a665a12eed58663"><div class="ttname"><a href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a></div><div class="ttdeci">struct _RemminaAvahi RemminaAvahi</div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a7aad6aa551cd2dda96e32390f8b089ba"><div class="ttname"><a href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a></div><div class="ttdeci">typedefG_BEGIN_DECLS struct _RemminaAvahiPriv RemminaAvahiPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00040">remmina_avahi.h:40</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_ad63b4dc3fa2e7fa83bd700ad84608392"><div class="ttname"><a href="remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392">remmina_avahi_new</a></div><div class="ttdeci">RemminaAvahi * remmina_avahi_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00189">remmina_avahi.c:189</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_priv_html"><div class="ttname"><a href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00050">remmina_avahi.c:50</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_ab73788ec8ee72842428712efb932d58e"><div class="ttname"><a href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">_RemminaAvahi::started</a></div><div class="ttdeci">gboolean started</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00044">remmina_avahi.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_a52430cc6a84651509f25bc746d31e675"><div class="ttname"><a href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">_RemminaAvahi::discovered_services</a></div><div class="ttdeci">GHashTable * discovered_services</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00043">remmina_avahi.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html"><div class="ttname"><a href="struct___remmina_avahi.html">_RemminaAvahi</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00042">remmina_avahi.h:42</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a1ec851b22607dd1171ecdd5cca735b71"><div class="ttname"><a href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a></div><div class="ttdeci">void remmina_avahi_start(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00207">remmina_avahi.c:207</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html_a2710b09d09507f1c91ba8a2bd01b0436"><div class="ttname"><a href="remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a></div><div class="ttdeci">void remmina_avahi_free(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00264">remmina_avahi.c:264</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__avahi_8h.html">remmina_avahi.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__chat__window_8c.html b/docs/remmina__chat__window_8c.html
new file mode 100644
index 000000000..d0ef3e890
--- /dev/null
+++ b/docs/remmina__chat__window_8c.html
@@ -0,0 +1,517 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_chat_window.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__chat__window_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_chat_window.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__chat__window_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:adffc899d6f8e714c8f7482c71195b007"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007">G_DEFINE_TYPE</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a>, remmina_chat_window, GTK_TYPE_WINDOW)</td></tr>
+<tr class="separator:adffc899d6f8e714c8f7482c71195b007"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a214b78e2cd8f655b1227fcd4ae93d457"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457">remmina_chat_window_class_init</a> (<a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a> *klass)</td></tr>
+<tr class="separator:a214b78e2cd8f655b1227fcd4ae93d457"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c57f946c13737687a1cdb9b933509e9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9">remmina_chat_window_init</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:a8c57f946c13737687a1cdb9b933509e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4372d0db2832db8ed190390580f1dd1e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window_clear_send_text</a> (GtkWidget *widget, <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:a4372d0db2832db8ed190390580f1dd1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a4bc3ded8ebf89c8f60d9b565fe2d70"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window_scroll_proc</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:a2a4bc3ded8ebf89c8f60d9b565fe2d70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfffc86df4856aabe2593de07742985f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window_append_text</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window, const gchar *name, const gchar *tagname, const gchar *text)</td></tr>
+<tr class="separator:adfffc86df4856aabe2593de07742985f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62d706863c048c8ddb580786c6abcf50"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window_send</a> (GtkWidget *widget, <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:a62d706863c048c8ddb580786c6abcf50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55ac61e450ce6d37e57fcb5ac3ed507a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window_send_text_on_key</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:a55ac61e450ce6d37e57fcb5ac3ed507a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e4fa655fddf361fed13bbd759bea24f"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a> (GtkWindow *parent, const gchar *chat_with)</td></tr>
+<tr class="separator:a5e4fa655fddf361fed13bbd759bea24f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45724aed5474dd741563ffbf89237022"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window, const gchar *name, const gchar *text)</td></tr>
+<tr class="separator:a45724aed5474dd741563ffbf89237022"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a49cae8631d5db230a97f9f5f3c66ff87"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] = { 0 }</td></tr>
+<tr class="separator:a49cae8631d5db230a97f9f5f3c66ff87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="adffc899d6f8e714c8f7482c71195b007"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adffc899d6f8e714c8f7482c71195b007">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_chat_window&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_WINDOW&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00043">43</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="adfffc86df4856aabe2593de07742985f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfffc86df4856aabe2593de07742985f">&#9670;&nbsp;</a></span>remmina_chat_window_append_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_chat_window_append_text </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>tagname</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00090">90</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a214b78e2cd8f655b1227fcd4ae93d457"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a214b78e2cd8f655b1227fcd4ae93d457">&#9670;&nbsp;</a></span>remmina_chat_window_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_chat_window_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00052">52</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a4372d0db2832db8ed190390580f1dd1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4372d0db2832db8ed190390580f1dd1e">&#9670;&nbsp;</a></span>remmina_chat_window_clear_send_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_chat_window_clear_send_text </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a8c57f946c13737687a1cdb9b933509e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c57f946c13737687a1cdb9b933509e9">&#9670;&nbsp;</a></span>remmina_chat_window_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_chat_window_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e4fa655fddf361fed13bbd759bea24f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e4fa655fddf361fed13bbd759bea24f">&#9670;&nbsp;</a></span>remmina_chat_window_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_chat_window_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>chat_with</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00160">160</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a45724aed5474dd741563ffbf89237022"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45724aed5474dd741563ffbf89237022">&#9670;&nbsp;</a></span>remmina_chat_window_receive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_chat_window_receive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00251">251</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a2a4bc3ded8ebf89c8f60d9b565fe2d70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a4bc3ded8ebf89c8f60d9b565fe2d70">&#9670;&nbsp;</a></span>remmina_chat_window_scroll_proc()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_chat_window_scroll_proc </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a62d706863c048c8ddb580786c6abcf50"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62d706863c048c8ddb580786c6abcf50">&#9670;&nbsp;</a></span>remmina_chat_window_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_chat_window_send </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00126">126</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a55ac61e450ce6d37e57fcb5ac3ed507a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55ac61e450ce6d37e57fcb5ac3ed507a">&#9670;&nbsp;</a></span>remmina_chat_window_send_text_on_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_chat_window_send_text_on_key </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00149">149</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a49cae8631d5db230a97f9f5f3c66ff87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49cae8631d5db230a97f9f5f3c66ff87">&#9670;&nbsp;</a></span>remmina_chat_window_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_chat_window_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] = { 0 }</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00050">50</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__chat__window_8c.html">remmina_chat_window.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__chat__window_8c.js b/docs/remmina__chat__window_8c.js
new file mode 100644
index 000000000..aba04d7f7
--- /dev/null
+++ b/docs/remmina__chat__window_8c.js
@@ -0,0 +1,14 @@
+var remmina__chat__window_8c =
+[
+ [ "G_DEFINE_TYPE", "remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007", null ],
+ [ "remmina_chat_window_append_text", "remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f", null ],
+ [ "remmina_chat_window_class_init", "remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457", null ],
+ [ "remmina_chat_window_clear_send_text", "remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e", null ],
+ [ "remmina_chat_window_init", "remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9", null ],
+ [ "remmina_chat_window_new", "remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f", null ],
+ [ "remmina_chat_window_receive", "remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022", null ],
+ [ "remmina_chat_window_scroll_proc", "remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70", null ],
+ [ "remmina_chat_window_send", "remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50", null ],
+ [ "remmina_chat_window_send_text_on_key", "remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a", null ],
+ [ "remmina_chat_window_signals", "remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__chat__window_8c_source.html b/docs/remmina__chat__window_8c_source.html
new file mode 100644
index 000000000..9bbedbb1c
--- /dev/null
+++ b/docs/remmina__chat__window_8c_source.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_chat_window.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__chat__window_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_chat_window.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__chat__window_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 - 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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__chat__window_8h.html">remmina_chat_window.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007"> 43</a></span>&#160;<a class="code" href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007">G_DEFINE_TYPE</a>( <a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>, remmina_chat_window, GTK_TYPE_WINDOW)</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; SEND_SIGNAL,</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87"> 50</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window_signals</a>[<a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] = { 0 };</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457"> 52</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457">remmina_chat_window_class_init</a>(<a class="code" href="struct___remmina_chat_window_class.html">RemminaChatWindowClass</a>* klass)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window_signals</a>[SEND_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;send&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_chat_window_class.html">RemminaChatWindowClass</a>, send), NULL, NULL,</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);</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;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9"> 60</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9">remmina_chat_window_init</a>(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; window-&gt;<a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a> = NULL;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a> = NULL;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</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__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e"> 67</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window_clear_send_text</a>(GtkWidget* widget, <a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window)</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; GtkTextBuffer* buffer;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a>));</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; gtk_text_buffer_set_text(buffer, <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gtk_widget_grab_focus(window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a>);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</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"><a class="line" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70"> 77</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window_scroll_proc</a>(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; GtkTextBuffer* buffer;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; GtkTextIter iter;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(window-&gt;<a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a>));</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; gtk_text_buffer_get_end_iter(buffer, &amp;iter);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(window-&gt;<a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a>), &amp;iter, 0.0, FALSE, 0.0, 0.0);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f"> 90</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window_append_text</a>(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window, <span class="keyword">const</span> gchar* name, <span class="keyword">const</span> gchar* tagname,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">const</span> gchar* text)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; GtkTextBuffer* buffer;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; GtkTextIter iter;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gchar* ptr;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(window-&gt;<a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a>));</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (name) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; ptr = g_strdup_printf(<span class="stringliteral">&quot;(%s) &quot;</span>, name);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; gtk_text_buffer_get_end_iter(buffer, &amp;iter);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (tagname) {</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; gtk_text_buffer_insert_with_tags_by_name(buffer, &amp;iter, ptr, -1, tagname, NULL);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; gtk_text_buffer_insert(buffer, &amp;iter, ptr, -1);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; }</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; g_free(ptr);</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"> 111</span>&#160; <span class="keywordflow">if</span> (text &amp;&amp; text[0] != 0) {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; gtk_text_buffer_get_end_iter(buffer, &amp;iter);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (text[strlen(text) - 1] == <span class="charliteral">&#39;\n&#39;</span>) {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; gtk_text_buffer_insert(buffer, &amp;iter, text, -1);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; ptr = g_strdup_printf(<span class="stringliteral">&quot;%s\n&quot;</span>, text);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; gtk_text_buffer_insert(buffer, &amp;iter, ptr, -1);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; g_free(ptr);</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; }</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; <span class="comment">/* Use g_idle_add to make the scroll happen after the text has been actually updated */</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; g_idle_add((GSourceFunc)<a class="code" href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window_scroll_proc</a>, window);</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__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50"> 126</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window_send</a>(GtkWidget* widget, <a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; GtkTextBuffer* buffer;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; GtkTextIter start, end;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; gchar* text;</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; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a>));</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gtk_text_buffer_get_bounds(buffer, &amp;start, &amp;end);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; text = gtk_text_buffer_get_text(buffer, &amp;start, &amp;end, FALSE);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (!text || text[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; g_signal_emit_by_name(G_OBJECT(window), <span class="stringliteral">&quot;send&quot;</span>, text);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window_append_text</a>(window, g_get_user_name(), <span class="stringliteral">&quot;sender-foreground&quot;</span>, text);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; g_free(text);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window_clear_send_text</a>(widget, window);</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"><a class="line" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a"> 149</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window_send_text_on_key</a>(GtkWidget* widget, GdkEventKey* event, <a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window)</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;{</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Return) {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window_send</a>(widget, window);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;}</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;GtkWidget*</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f"> 160</a></span>&#160;<a class="code" href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a>(GtkWindow* parent, <span class="keyword">const</span> gchar* chat_with)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gchar buf[100];</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; GtkWidget* grid;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; GtkWidget* scrolledwindow;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; GtkWidget* widget;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; GtkWidget* image;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; GtkTextBuffer* buffer;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; window = REMMINA_CHAT_WINDOW(g_object_new(REMMINA_TYPE_CHAT_WINDOW, NULL));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">if</span> (parent) {</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(window), parent);</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;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">/* Title */</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), _(<span class="stringliteral">&quot;Chat with %s&quot;</span>), chat_with);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gtk_window_set_title(GTK_WINDOW(window), buf);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; gtk_window_set_default_size(GTK_WINDOW(window), 450, 300);</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; <span class="comment">/* Main container */</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 4);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 4);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(grid), 8);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; gtk_container_add(GTK_CONTAINER(window), grid);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">/* Chat history */</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gtk_scrolled_window_set_min_content_height(GTK_SCROLLED_WINDOW(scrolledwindow), 100);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(scrolledwindow), TRUE);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gtk_grid_attach(GTK_GRID(grid), scrolledwindow, 0, 0, 3, 1);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; widget = gtk_text_view_new();</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(widget), GTK_WRAP_WORD_CHAR);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; gtk_text_view_set_editable(GTK_TEXT_VIEW(widget), FALSE);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), widget);</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; buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; gtk_text_buffer_create_tag(buffer, <span class="stringliteral">&quot;sender-foreground&quot;</span>, <span class="stringliteral">&quot;foreground&quot;</span>, <span class="stringliteral">&quot;blue&quot;</span>, NULL);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; gtk_text_buffer_create_tag(buffer, <span class="stringliteral">&quot;receiver-foreground&quot;</span>, <span class="stringliteral">&quot;foreground&quot;</span>, <span class="stringliteral">&quot;red&quot;</span>, NULL);</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; window-&gt;<a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a> = widget;</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"> 210</span>&#160; <span class="comment">/* Chat message to be sent */</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; gtk_scrolled_window_set_min_content_height(GTK_SCROLLED_WINDOW(scrolledwindow), 100);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(scrolledwindow), TRUE);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; gtk_grid_attach(GTK_GRID(grid), scrolledwindow, 0, 1, 3, 1);</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; widget = gtk_text_view_new();</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(widget), GTK_WRAP_WORD_CHAR);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), widget);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;key-press-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window_send_text_on_key</a>), window);</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; window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a> = widget;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="comment">/* Send button */</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-document-send-symbolic&quot;</span>, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gtk_widget_show(image);</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; widget = gtk_button_new_with_mnemonic(_(<span class="stringliteral">&quot;_Send&quot;</span>));</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; gtk_button_set_image(GTK_BUTTON(widget), image);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 2, 2, 1, 1);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window_send</a>), window);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="comment">/* Clear button */</span></div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;edit-clear&quot;</span>, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; gtk_widget_show(image);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; widget = gtk_button_new_with_mnemonic(_(<span class="stringliteral">&quot;_Clear&quot;</span>));</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; gtk_button_set_image(GTK_BUTTON(widget), image);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 2, 1, 1);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window_clear_send_text</a>), window);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; gtk_widget_grab_focus(window-&gt;<a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a>);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(window);</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;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022"> 251</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a>(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a>* window, <span class="keyword">const</span> gchar* name, <span class="keyword">const</span> gchar* text)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;{</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window_append_text</a>(window, name, <span class="stringliteral">&quot;receiver-foreground&quot;</span>, text);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="ttc" id="remmina__chat__window_8h_html"><div class="ttname"><a href="remmina__chat__window_8h.html">remmina_chat_window.h</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_adfffc86df4856aabe2593de07742985f"><div class="ttname"><a href="remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f">remmina_chat_window_append_text</a></div><div class="ttdeci">static void remmina_chat_window_append_text(RemminaChatWindow *window, const gchar *name, const gchar *tagname, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00090">remmina_chat_window.c:90</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html_a36b1b309a457128964ca6ebfc99e155c"><div class="ttname"><a href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">_RemminaChatWindow::send_text</a></div><div class="ttdeci">GtkWidget * send_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00051">remmina_chat_window.h:51</a></div></div>
+<div class="ttc" id="rcw_8c_html_a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00173">rcw.c:173</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a49cae8631d5db230a97f9f5f3c66ff87"><div class="ttname"><a href="remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87">remmina_chat_window_signals</a></div><div class="ttdeci">static guint remmina_chat_window_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00050">remmina_chat_window.c:50</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a62d706863c048c8ddb580786c6abcf50"><div class="ttname"><a href="remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50">remmina_chat_window_send</a></div><div class="ttdeci">static void remmina_chat_window_send(GtkWidget *widget, RemminaChatWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00126">remmina_chat_window.c:126</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_adffc899d6f8e714c8f7482c71195b007"><div class="ttname"><a href="remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaChatWindow, remmina_chat_window, GTK_TYPE_WINDOW)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00043">remmina_chat_window.c:43</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a55ac61e450ce6d37e57fcb5ac3ed507a"><div class="ttname"><a href="remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a">remmina_chat_window_send_text_on_key</a></div><div class="ttdeci">static gboolean remmina_chat_window_send_text_on_key(GtkWidget *widget, GdkEventKey *event, RemminaChatWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00149">remmina_chat_window.c:149</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a214b78e2cd8f655b1227fcd4ae93d457"><div class="ttname"><a href="remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457">remmina_chat_window_class_init</a></div><div class="ttdeci">static void remmina_chat_window_class_init(RemminaChatWindowClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00052">remmina_chat_window.c:52</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a8c57f946c13737687a1cdb9b933509e9"><div class="ttname"><a href="remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9">remmina_chat_window_init</a></div><div class="ttdeci">static void remmina_chat_window_init(RemminaChatWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00060">remmina_chat_window.c:60</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html"><div class="ttname"><a href="struct___remmina_chat_window.html">_RemminaChatWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00047">remmina_chat_window.h:47</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a2a4bc3ded8ebf89c8f60d9b565fe2d70"><div class="ttname"><a href="remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70">remmina_chat_window_scroll_proc</a></div><div class="ttdeci">static gboolean remmina_chat_window_scroll_proc(RemminaChatWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00077">remmina_chat_window.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_class_html"><div class="ttname"><a href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00054">remmina_chat_window.h:54</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a4372d0db2832db8ed190390580f1dd1e"><div class="ttname"><a href="remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e">remmina_chat_window_clear_send_text</a></div><div class="ttdeci">static void remmina_chat_window_clear_send_text(GtkWidget *widget, RemminaChatWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00067">remmina_chat_window.c:67</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a45724aed5474dd741563ffbf89237022"><div class="ttname"><a href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a></div><div class="ttdeci">void remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00251">remmina_chat_window.c:251</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a5e4fa655fddf361fed13bbd759bea24f"><div class="ttname"><a href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a></div><div class="ttdeci">GtkWidget * remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00160">remmina_chat_window.c:160</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html_aac3dfd93816abc268d25268c779719ea"><div class="ttname"><a href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">_RemminaChatWindow::history_text</a></div><div class="ttdeci">GtkWidget * history_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00050">remmina_chat_window.h:50</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__chat__window_8c.html">remmina_chat_window.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__chat__window_8h.html b/docs/remmina__chat__window_8h.html
new file mode 100644
index 000000000..5eb3703d3
--- /dev/null
+++ b/docs/remmina__chat__window_8h.html
@@ -0,0 +1,245 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_chat_window.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__chat__window_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_chat_window.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__chat__window_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window.html">_RemminaChatWindow</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:afac452bad12df11e7d37cfaa07488446"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_chat_window.html">_RemminaChatWindow</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a></td></tr>
+<tr class="separator:afac452bad12df11e7d37cfaa07488446"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad80f333f09507226276104e015267fb4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a></td></tr>
+<tr class="separator:ad80f333f09507226276104e015267fb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5388d221b74aacf623628fe5a2f83782"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782">remmina_chat_window_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:a5388d221b74aacf623628fe5a2f83782"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e4fa655fddf361fed13bbd759bea24f"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a> (GtkWindow *parent, const gchar *chat_with)</td></tr>
+<tr class="separator:a5e4fa655fddf361fed13bbd759bea24f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45724aed5474dd741563ffbf89237022"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a> (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window, const gchar *name, const gchar *text)</td></tr>
+<tr class="separator:a45724aed5474dd741563ffbf89237022"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="afac452bad12df11e7d37cfaa07488446"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afac452bad12df11e7d37cfaa07488446">&#9670;&nbsp;</a></span>RemminaChatWindow</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_chat_window.html">_RemminaChatWindow</a> <a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad80f333f09507226276104e015267fb4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad80f333f09507226276104e015267fb4">&#9670;&nbsp;</a></span>RemminaChatWindowClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a> <a class="el" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a5388d221b74aacf623628fe5a2f83782"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5388d221b74aacf623628fe5a2f83782">&#9670;&nbsp;</a></span>remmina_chat_window_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_chat_window_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5e4fa655fddf361fed13bbd759bea24f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e4fa655fddf361fed13bbd759bea24f">&#9670;&nbsp;</a></span>remmina_chat_window_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_chat_window_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>chat_with</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00160">160</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+<a id="a45724aed5474dd741563ffbf89237022"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45724aed5474dd741563ffbf89237022">&#9670;&nbsp;</a></span>remmina_chat_window_receive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_chat_window_receive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *&#160;</td>
+ <td class="paramname"><em>window</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8c_source.html#l00251">251</a> of file <a class="el" href="remmina__chat__window_8c_source.html">remmina_chat_window.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__chat__window_8h.html">remmina_chat_window.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__chat__window_8h.js b/docs/remmina__chat__window_8h.js
new file mode 100644
index 000000000..cdb0747aa
--- /dev/null
+++ b/docs/remmina__chat__window_8h.js
@@ -0,0 +1,10 @@
+var remmina__chat__window_8h =
+[
+ [ "_RemminaChatWindow", "struct___remmina_chat_window.html", "struct___remmina_chat_window" ],
+ [ "_RemminaChatWindowClass", "struct___remmina_chat_window_class.html", "struct___remmina_chat_window_class" ],
+ [ "RemminaChatWindow", "remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446", null ],
+ [ "RemminaChatWindowClass", "remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4", null ],
+ [ "remmina_chat_window_get_type", "remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782", null ],
+ [ "remmina_chat_window_new", "remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f", null ],
+ [ "remmina_chat_window_receive", "remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__chat__window_8h_source.html b/docs/remmina__chat__window_8h_source.html
new file mode 100644
index 000000000..4dbcf407c
--- /dev/null
+++ b/docs/remmina__chat__window_8h_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_chat_window.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__chat__window_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_chat_window.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__chat__window_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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">#define REMMINA_TYPE_CHAT_WINDOW (remmina_chat_window_get_type())</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_CHAT_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_CHAT_WINDOW, RemminaChatWindow))</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_CHAT_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_CHAT_WINDOW, RemminaChatWindowClass))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_IS_CHAT_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_CHAT_WINDOW))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_CHAT_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_CHAT_WINDOW))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_CHAT_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_CHAT_WINDOW, RemminaChatWindowClass))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_chat_window.html">_RemminaChatWindow</a> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29"> 48</a></span>&#160; GtkWindow <a class="code" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">window</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea"> 50</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c"> 51</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;} <a class="code" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window_class.html"> 54</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a> {</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19"> 55</a></span>&#160; GtkWindowClass <a class="code" href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19">parent_class</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372"> 57</a></span>&#160; void (*send)(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a> *<a class="code" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">window</a>);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;} <a class="code" href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;GType <a class="code" href="remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782">remmina_chat_window_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;GtkWidget *<a class="code" href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a>(GtkWindow *parent, <span class="keyword">const</span> gchar *chat_with);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a>(<a class="code" href="struct___remmina_chat_window.html">RemminaChatWindow</a> *<a class="code" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">window</a>, <span class="keyword">const</span> gchar *name, <span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_chat_window_html_a36b1b309a457128964ca6ebfc99e155c"><div class="ttname"><a href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">_RemminaChatWindow::send_text</a></div><div class="ttdeci">GtkWidget * send_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00051">remmina_chat_window.h:51</a></div></div>
+<div class="ttc" id="remmina__chat__window_8h_html_a5388d221b74aacf623628fe5a2f83782"><div class="ttname"><a href="remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782">remmina_chat_window_get_type</a></div><div class="ttdeci">GType remmina_chat_window_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="remmina__chat__window_8h_html_afac452bad12df11e7d37cfaa07488446"><div class="ttname"><a href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a></div><div class="ttdeci">struct _RemminaChatWindow RemminaChatWindow</div></div>
+<div class="ttc" id="remmina__chat__window_8h_html_a45724aed5474dd741563ffbf89237022"><div class="ttname"><a href="remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a></div><div class="ttdeci">void remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00251">remmina_chat_window.c:251</a></div></div>
+<div class="ttc" id="remmina__chat__window_8h_html_a5e4fa655fddf361fed13bbd759bea24f"><div class="ttname"><a href="remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a></div><div class="ttdeci">GtkWidget * remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00160">remmina_chat_window.c:160</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html"><div class="ttname"><a href="struct___remmina_chat_window.html">_RemminaChatWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00047">remmina_chat_window.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html_a60ccf6b47dcaf89b022eb6c2f71dcd29"><div class="ttname"><a href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">_RemminaChatWindow::window</a></div><div class="ttdeci">GtkWindow window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00048">remmina_chat_window.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_class_html"><div class="ttname"><a href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00054">remmina_chat_window.h:54</a></div></div>
+<div class="ttc" id="remmina__chat__window_8h_html_ad80f333f09507226276104e015267fb4"><div class="ttname"><a href="remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4">RemminaChatWindowClass</a></div><div class="ttdeci">struct _RemminaChatWindowClass RemminaChatWindowClass</div></div>
+<div class="ttc" id="struct___remmina_chat_window_class_html_abdd29d9a92f995c4fc1664a61bd4cb19"><div class="ttname"><a href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19">_RemminaChatWindowClass::parent_class</a></div><div class="ttdeci">GtkWindowClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00055">remmina_chat_window.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_chat_window_html_aac3dfd93816abc268d25268c779719ea"><div class="ttname"><a href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">_RemminaChatWindow::history_text</a></div><div class="ttdeci">GtkWidget * history_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8h_source.html#l00050">remmina_chat_window.h:50</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__chat__window_8h.html">remmina_chat_window.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__crypt_8c.html b/docs/remmina__crypt_8c.html
new file mode 100644
index 000000000..809636753
--- /dev/null
+++ b/docs/remmina__crypt_8c.html
@@ -0,0 +1,184 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_crypt.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__crypt_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_crypt.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__crypt_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae097c169aefdd5d83a57fc1bde511171"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt_init</a> (gcry_cipher_hd_t *phd)</td></tr>
+<tr class="separator:ae097c169aefdd5d83a57fc1bde511171"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa02cf0fed3eb68d6a89815c3ba3bf7b1"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a> (const gchar *str)</td></tr>
+<tr class="separator:aa02cf0fed3eb68d6a89815c3ba3bf7b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fe2fa245d401146adf02a3a8f996ab9"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a> (const gchar *str)</td></tr>
+<tr class="separator:a3fe2fa245d401146adf02a3a8f996ab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3fe2fa245d401146adf02a3a8f996ab9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fe2fa245d401146adf02a3a8f996ab9">&#9670;&nbsp;</a></span>remmina_crypt_decrypt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar * remmina_crypt_decrypt </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__crypt_8c_source.html#l00135">135</a> of file <a class="el" href="remmina__crypt_8c_source.html">remmina_crypt.c</a>.</p>
+
+</div>
+</div>
+<a id="aa02cf0fed3eb68d6a89815c3ba3bf7b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa02cf0fed3eb68d6a89815c3ba3bf7b1">&#9670;&nbsp;</a></span>remmina_crypt_encrypt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar * remmina_crypt_encrypt </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__crypt_8c_source.html#l00094">94</a> of file <a class="el" href="remmina__crypt_8c_source.html">remmina_crypt.c</a>.</p>
+
+</div>
+</div>
+<a id="ae097c169aefdd5d83a57fc1bde511171"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae097c169aefdd5d83a57fc1bde511171">&#9670;&nbsp;</a></span>remmina_crypt_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_crypt_init </td>
+ <td>(</td>
+ <td class="paramtype">gcry_cipher_hd_t *&#160;</td>
+ <td class="paramname"><em>phd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__crypt_8c_source.html#l00048">48</a> of file <a class="el" href="remmina__crypt_8c_source.html">remmina_crypt.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__crypt_8c.html">remmina_crypt.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__crypt_8c.js b/docs/remmina__crypt_8c.js
new file mode 100644
index 000000000..1c64407cb
--- /dev/null
+++ b/docs/remmina__crypt_8c.js
@@ -0,0 +1,6 @@
+var remmina__crypt_8c =
+[
+ [ "remmina_crypt_decrypt", "remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9", null ],
+ [ "remmina_crypt_encrypt", "remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1", null ],
+ [ "remmina_crypt_init", "remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__crypt_8c_source.html b/docs/remmina__crypt_8c_source.html
new file mode 100644
index 000000000..663f889f1
--- /dev/null
+++ b/docs/remmina__crypt_8c_source.html
@@ -0,0 +1,109 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_crypt.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__crypt_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_crypt.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__crypt_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 - 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-2020 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 &lt;glib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBGCRYPT</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gcrypt.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</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__pref_8h.html">remmina_pref.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__crypt_8h.html">remmina_crypt.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__trace__calls_8h.html">remmina/remmina_trace_calls.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"> 46</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBGCRYPT</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"><a class="line" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171"> 48</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt_init</a>(gcry_cipher_hd_t *phd)</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; guchar* secret;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; gcry_error_t err;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; gsize secret_len;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; secret = g_base64_decode(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a>, &amp;secret_len);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">if</span> (secret_len &lt; 32) {</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; g_debug(<span class="stringliteral">&quot;secret corrupted\n&quot;</span>);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; g_free(secret);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; err = gcry_cipher_open(phd, GCRY_CIPHER_3DES, GCRY_CIPHER_MODE_CBC, 0);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (err) {</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; g_debug(<span class="stringliteral">&quot;gcry_cipher_open failure: %s\n&quot;</span>, gcry_strerror(err));</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; g_free(secret);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</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; err = gcry_cipher_setkey((*phd), secret, 24);</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="keywordflow">if</span> (err) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; g_debug(<span class="stringliteral">&quot;gcry_cipher_setkey failure: %s\n&quot;</span>, gcry_strerror(err));</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; g_free(secret);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; gcry_cipher_close((*phd));</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</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; err = gcry_cipher_setiv((*phd), secret + 24, 8);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (err) {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; g_debug(<span class="stringliteral">&quot;gcry_cipher_setiv failure: %s\n&quot;</span>, gcry_strerror(err));</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; g_free(secret);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; gcry_cipher_close((*phd));</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 89</span>&#160; g_free(secret);</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; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9"> 94</a></span>&#160;gchar* <a class="code" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a>(<span class="keyword">const</span> gchar *str)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; guchar* buf;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; gint buf_len;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; gchar* result;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; gcry_error_t err;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; gcry_cipher_hd_t hd;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (!str || str[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt_init</a>(&amp;hd))</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> NULL;</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; buf_len = strlen(str);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* Pack to 64bit block size, and make sure it’s always 0-terminated */</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; buf_len += 8 - buf_len % 8;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; buf = (guchar*)g_malloc(buf_len);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; memset(buf, 0, buf_len);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; memcpy(buf, str, strlen(str));</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; err = gcry_cipher_encrypt(hd, buf, buf_len, NULL, 0);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">if</span> (err) {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; g_debug(<span class="stringliteral">&quot;gcry_cipher_encrypt failure: %s/%s\n&quot;</span>,</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gcry_strsource(err),</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; gcry_strerror(err));</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; g_free(buf);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gcry_cipher_close(hd);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; result = g_base64_encode(buf, buf_len);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; g_free(buf);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; gcry_cipher_close(hd);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</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"><a class="line" href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d"> 135</a></span>&#160;gchar* <a class="code" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a>(<span class="keyword">const</span> gchar *str)</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; guchar* buf;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; gsize buf_len;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gcry_error_t err;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; gcry_cipher_hd_t hd;</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; <span class="keywordflow">if</span> (!str || str[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt_init</a>(&amp;hd))</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> NULL;</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; buf = g_base64_decode(str, &amp;buf_len);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> g_debug (&quot;%s base64 encoded as %p with length %lu&quot;,</span></div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> str,</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> &amp;buf,</span></div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> buf_len);</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; err = gcry_cipher_decrypt(</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; hd, <span class="comment">// gcry_cipher_hd_t</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; buf, <span class="comment">// guchar</span></div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; buf_len, <span class="comment">// gsize</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; NULL, <span class="comment">// NULL and 0 -&gt; in place decrypt</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; 0);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span> (err) {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; g_debug(<span class="stringliteral">&quot;gcry_cipher_decrypt failure: %s/%s\n&quot;</span>,</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; gcry_strsource(err),</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; gcry_strerror(err));</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; g_free(buf);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gcry_cipher_close(hd);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</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; gcry_cipher_close(hd);</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; <span class="comment">/* Just in case */</span></div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; buf[buf_len - 1] = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> (gchar*)buf;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;}</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;<span class="preprocessor">#else</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;gchar* <a class="code" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a>(<span class="keyword">const</span> gchar *str)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;gchar* <a class="code" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a>(<span class="keyword">const</span> gchar *str)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</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#l00135">remmina_crypt.c:135</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a99a34af002da68036758fab3ceb08259"><div class="ttname"><a href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">_RemminaPref::secret</a></div><div class="ttdeci">gchar * secret</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00192">remmina_pref.h:192</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#l00094">remmina_crypt.c:94</a></div></div>
+<div class="ttc" id="remmina__crypt_8c_html_ae097c169aefdd5d83a57fc1bde511171"><div class="ttname"><a href="remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171">remmina_crypt_init</a></div><div class="ttdeci">static gboolean remmina_crypt_init(gcry_cipher_hd_t *phd)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__crypt_8c_source.html#l00048">remmina_crypt.c:48</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__crypt_8h_html"><div class="ttname"><a href="remmina__crypt_8h.html">remmina_crypt.h</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__crypt_8c.html">remmina_crypt.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__crypt_8h.html b/docs/remmina__crypt_8h.html
new file mode 100644
index 000000000..66be52a0c
--- /dev/null
+++ b/docs/remmina__crypt_8h.html
@@ -0,0 +1,154 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_crypt.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__crypt_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_crypt.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__crypt_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a04a19371f266a377499c4b0e7c8f32b9"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9">remmina_crypt_encrypt</a> (const gchar *str)</td></tr>
+<tr class="separator:a04a19371f266a377499c4b0e7c8f32b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e855b5daf93b5b8891afcbe63676f8d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d">remmina_crypt_decrypt</a> (const gchar *str)</td></tr>
+<tr class="separator:a8e855b5daf93b5b8891afcbe63676f8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a8e855b5daf93b5b8891afcbe63676f8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8e855b5daf93b5b8891afcbe63676f8d">&#9670;&nbsp;</a></span>remmina_crypt_decrypt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_crypt_decrypt </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__crypt_8c_source.html#l00135">135</a> of file <a class="el" href="remmina__crypt_8c_source.html">remmina_crypt.c</a>.</p>
+
+</div>
+</div>
+<a id="a04a19371f266a377499c4b0e7c8f32b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04a19371f266a377499c4b0e7c8f32b9">&#9670;&nbsp;</a></span>remmina_crypt_encrypt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gchar* remmina_crypt_encrypt </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__crypt_8c_source.html#l00094">94</a> of file <a class="el" href="remmina__crypt_8c_source.html">remmina_crypt.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__crypt_8h.html">remmina_crypt.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__crypt_8h.js b/docs/remmina__crypt_8h.js
new file mode 100644
index 000000000..99ab889a5
--- /dev/null
+++ b/docs/remmina__crypt_8h.js
@@ -0,0 +1,5 @@
+var remmina__crypt_8h =
+[
+ [ "remmina_crypt_decrypt", "remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d", null ],
+ [ "remmina_crypt_encrypt", "remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__crypt_8h_source.html b/docs/remmina__crypt_8h_source.html
new file mode 100644
index 000000000..73dc6430a
--- /dev/null
+++ b/docs/remmina__crypt_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_crypt.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__crypt_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_crypt.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__crypt_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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;gchar *<a class="code" href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9">remmina_crypt_encrypt</a>(<span class="keyword">const</span> gchar *str);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;gchar *<a class="code" href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d">remmina_crypt_decrypt</a>(<span class="keyword">const</span> gchar *str);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__crypt_8h_html_a04a19371f266a377499c4b0e7c8f32b9"><div class="ttname"><a href="remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9">remmina_crypt_encrypt</a></div><div class="ttdeci">G_BEGIN_DECLS gchar * remmina_crypt_encrypt(const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__crypt_8c_source.html#l00094">remmina_crypt.c:94</a></div></div>
+<div class="ttc" id="remmina__crypt_8h_html_a8e855b5daf93b5b8891afcbe63676f8d"><div class="ttname"><a href="remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d">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#l00135">remmina_crypt.c:135</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__crypt_8h.html">remmina_crypt.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__exec_8c.html b/docs/remmina__exec_8c.html
new file mode 100644
index 000000000..766000b97
--- /dev/null
+++ b/docs/remmina__exec_8c.html
@@ -0,0 +1,391 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_exec.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__exec_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_exec.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__exec_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0ffd51ed283da4640c920e75e89e694a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">cb_closewidget</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a0ffd51ed283da4640c920e75e89e694a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93f5633a6348dc1df1a5723b3054a2a3"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3">remmina_exec_get_build_config</a> (void)</td></tr>
+<tr class="separator:a93f5633a6348dc1df1a5723b3054a2a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a206abe0e916081b29c5faa52330e2271"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a> ()</td></tr>
+<tr class="separator:a206abe0e916081b29c5faa52330e2271"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacc2a2ffd19e56fcb3e4b025d180ab8f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">disable_rcw_delete_confirm_cb</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:aacc2a2ffd19e56fcb3e4b025d180ab8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa67e07e2426828d7e7b9b30d2038d31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a> (<a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a> why)</td></tr>
+<tr class="separator:aaa67e07e2426828d7e7b9b30d2038d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca2d356a03e1aac7b716b408183aa305"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">newline_remove</a> (char *s)</td></tr>
+<tr class="separator:aca2d356a03e1aac7b716b408183aa305"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e202866339a104ffdbfa519cfbcdca9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a> (gchar *profilefilename, gchar **settings)</td></tr>
+<tr class="separator:a4e202866339a104ffdbfa519cfbcdca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3299f9cf136cb759dc052ee799b1f0d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec_autostart_cb</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</td></tr>
+<tr class="separator:ae3299f9cf136cb759dc052ee799b1f0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a424cabdcff647797061e7482049d62a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a> (<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a> command, const gchar *data)</td></tr>
+<tr class="separator:a424cabdcff647797061e7482049d62a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a0ffd51ed283da4640c920e75e89e694a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ffd51ed283da4640c920e75e89e694a">&#9670;&nbsp;</a></span>cb_closewidget()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean cb_closewidget </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="aacc2a2ffd19e56fcb3e4b025d180ab8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacc2a2ffd19e56fcb3e4b025d180ab8f">&#9670;&nbsp;</a></span>disable_rcw_delete_confirm_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean disable_rcw_delete_confirm_cb </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00105">105</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="aca2d356a03e1aac7b716b408183aa305"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca2d356a03e1aac7b716b408183aa305">&#9670;&nbsp;</a></span>newline_remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void newline_remove </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00149">149</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="aaa67e07e2426828d7e7b9b30d2038d31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa67e07e2426828d7e7b9b30d2038d31">&#9670;&nbsp;</a></span>remmina_application_condexit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_application_condexit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a>&#160;</td>
+ <td class="paramname"><em>why</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00117">117</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="ae3299f9cf136cb759dc052ee799b1f0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3299f9cf136cb759dc052ee799b1f0d">&#9670;&nbsp;</a></span>remmina_exec_autostart_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_exec_autostart_cb </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00204">204</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a424cabdcff647797061e7482049d62a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a424cabdcff647797061e7482049d62a7">&#9670;&nbsp;</a></span>remmina_exec_command()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_exec_command </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a>&#160;</td>
+ <td class="paramname"><em>command</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>This should be a G_OPTION_ARG_FILENAME_ARRAY (^aay) so that we can implement multi profile connection: <a href="https://gitlab.com/Remmina/Remmina/issues/915">https://gitlab.com/Remmina/Remmina/issues/915</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00214">214</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a206abe0e916081b29c5faa52330e2271"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a206abe0e916081b29c5faa52330e2271">&#9670;&nbsp;</a></span>remmina_exec_exitremmina()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_exec_exitremmina </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00088">88</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a93f5633a6348dc1df1a5723b3054a2a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93f5633a6348dc1df1a5723b3054a2a3">&#9670;&nbsp;</a></span>remmina_exec_get_build_config()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_exec_get_build_config </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a4e202866339a104ffdbfa519cfbcdca9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e202866339a104ffdbfa519cfbcdca9">&#9670;&nbsp;</a></span>remmina_exec_set_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_exec_set_setting </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>profilefilename</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>settings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00160">160</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__exec_8c.html">remmina_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__exec_8c.js b/docs/remmina__exec_8c.js
new file mode 100644
index 000000000..6b2e3153d
--- /dev/null
+++ b/docs/remmina__exec_8c.js
@@ -0,0 +1,12 @@
+var remmina__exec_8c =
+[
+ [ "cb_closewidget", "remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a", null ],
+ [ "disable_rcw_delete_confirm_cb", "remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f", null ],
+ [ "newline_remove", "remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305", null ],
+ [ "remmina_application_condexit", "remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31", null ],
+ [ "remmina_exec_autostart_cb", "remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d", null ],
+ [ "remmina_exec_command", "remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7", null ],
+ [ "remmina_exec_exitremmina", "remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271", null ],
+ [ "remmina_exec_get_build_config", "remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3", null ],
+ [ "remmina_exec_set_setting", "remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__exec_8c_source.html b/docs/remmina__exec_8c_source.html
new file mode 100644
index 000000000..01e3ad17a
--- /dev/null
+++ b/docs/remmina__exec_8c_source.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_exec.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__exec_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_exec.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<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-2020 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;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</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_8h.html">remmina.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__main_8h.html">remmina_main.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__log_8h.html">remmina_log.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__pref_8h.html">remmina_pref.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__widget__pool_8h.html">remmina_widget_pool.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__unlock_8h.html">remmina_unlock.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__pref__dialog_8h.html">remmina_pref_dialog.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_8h.html">remmina_file.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__manager_8h.html">remmina_file_manager.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__editor_8h.html">remmina_file_editor.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="rcw_8h.html">rcw.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__about_8h.html">remmina_about.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__plugin__manager_8h.html">remmina_plugin_manager.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__exec_8h.html">remmina_exec.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__icon_8h.html">remmina_icon.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__trace__calls_8h.html">remmina/remmina_trace_calls.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__file__manager_8h.html">remmina_file_manager.h</a>&quot;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"># define ISSNAP &quot;- SNAP Build -&quot;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"># define ISSNAP &quot;-&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a"> 66</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="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* The correct way to close a rcw is to send</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</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="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> * all network connections */</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (REMMINA_IS_CONNECTION_WINDOW(widget))</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</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="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</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"><a class="line" href="remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3"> 77</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="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> gchar build_config[] =</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</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="l00081"></a><span class="lineno"> 81</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="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;CFLAGS: &quot;</span> CFLAGS <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;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="l00084"></a><span class="lineno"> 84</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="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> build_config;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</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"><a class="line" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f"> 88</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="l00089"></a><span class="lineno"> 89</span>&#160;{</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">/* Save main window state/position */</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</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; <span class="comment">/* Delete all widgets, main window not included */</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</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="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">/* Remove systray menu */</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</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; <span class="comment">/* Exit from Remmina */</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; g_application_quit(g_application_get_default());</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;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f"> 105</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="l00106"></a><span class="lineno"> 106</span>&#160;{</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a> *rcw;</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; <span class="keywordflow">if</span> (REMMINA_IS_CONNECTION_WINDOW(widget)) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; rcw = (<a class="code" href="struct___remmina_connection_window.html">RemminaConnectionWindow</a>*)widget;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</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="l00113"></a><span class="lineno"> 113</span>&#160; }</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31"> 117</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="l00118"></a><span class="lineno"> 118</span>&#160;{</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">/* Exit remmina only if there are no interesting windows left:</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> * no main window, no systray menu, no connection window.</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> * This function is usually called after a disconnection */</span></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; <span class="keywordflow">switch</span> (why) {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</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="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// A connection has disconnected, should we exit remmina ?</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</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="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</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="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">/* If we are in Kiosk mode, we just exit */</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</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="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="comment">// Main window has been deleted</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</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="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</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="l00140"></a><span class="lineno"> 140</span>&#160; <span class="comment">// Quit command has been sent from main window or appindicator/systray menu</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="comment">// quit means QUIT.</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</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="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; }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;}</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"><a class="line" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305"> 149</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="l00150"></a><span class="lineno"> 150</span>&#160;{</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordtype">char</span> c;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</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="l00153"></a><span class="lineno"> 153</span>&#160; s++;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; *s = 0;</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;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</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="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> * return a status code for exit()</span></div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9"> 160</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="l00161"></a><span class="lineno"> 161</span>&#160;{</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gchar **tk, *value;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordtype">char</span> *line = NULL;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordtype">size_t</span> len = 0;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; ssize_t read;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; gboolean abort = FALSE;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</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="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (!remminafile) {</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_print(<span class="stringliteral">&quot;Unable to open profile file %s\n&quot;</span>, profilefilename);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> 2;</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;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">for</span>(i = 0; settings[i] != NULL &amp;&amp; !abort; i++) {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">if</span> (strlen(settings[i]) &gt; 0) {</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; tk = g_strsplit(settings[i], <span class="stringliteral">&quot;=&quot;</span>, 2);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (tk[1] == NULL) {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; read = getline(&amp;line, &amp;len, stdin);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (read &gt; 0) {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">newline_remove</a>(line);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; value = line;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</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="l00187"></a><span class="lineno"> 187</span>&#160; abort = TRUE;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; value = tk[1];</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</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="l00192"></a><span class="lineno"> 192</span>&#160; g_strfreev(tk);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</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;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">if</span> (line) free(line);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</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="l00199"></a><span class="lineno"> 199</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> 0;</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;}</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"><a class="line" href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d"> 204</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="l00205"></a><span class="lineno"> 205</span>&#160;{</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; TRACE_CALL(__func__);</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; <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="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Profile %s is set to autostart&quot;</span>, remminafile-&gt;filename);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(remminafile-&gt;filename);</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;</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"><a class="line" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7"> 214</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="l00215"></a><span class="lineno"> 215</span>&#160;{</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; gchar* s1;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; gchar* s2;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; GtkWidget* widget;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; GtkWindow* mainwindow;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; GtkDialog* prefdialog;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="struct___remmina_entry_plugin.html">RemminaEntryPlugin</a>* plugin;</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; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">switch</span> (command) {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</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="l00228"></a><span class="lineno"> 228</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="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</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="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gtk_window_present(mainwindow);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; gtk_window_deiconify(GTK_WINDOW(mainwindow));</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; widget = <a class="code" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a>();</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; gtk_widget_show(widget);</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">break</span>;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</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="l00242"></a><span class="lineno"> 242</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="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; prefdialog = <a class="code" href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog_get_dialog</a>();</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (prefdialog) {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; gtk_window_present(GTK_WINDOW(prefdialog));</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; gtk_window_deiconify(GTK_WINDOW(prefdialog));</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="comment">/* Create a new preference dialog */</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; widget = GTK_WIDGET(<a class="code" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a>(atoi(data), NULL));</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</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="l00256"></a><span class="lineno"> 256</span>&#160; s1 = (data ? strchr(data, <span class="charliteral">&#39;,&#39;</span>) : NULL);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (s1) {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; s1 = g_strdup(data);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; s2 = strchr(s1, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; *s2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</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="l00262"></a><span class="lineno"> 262</span>&#160; g_free(s1);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</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="l00265"></a><span class="lineno"> 265</span>&#160; }</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>:</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5">rcw_open_from_filename</a>(data);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</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="l00278"></a><span class="lineno"> 278</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="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">if</span> (widget)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">break</span>;</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">case</span> <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a>:</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(NULL);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</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="l00288"></a><span class="lineno"> 288</span>&#160; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <a class="code" href="remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4">remmina_about_open</a>(NULL);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</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="l00293"></a><span class="lineno"> 293</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="l00294"></a><span class="lineno"> 294</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="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">break</span>;</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; <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="l00300"></a><span class="lineno"> 300</span>&#160; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">if</span> (mainwindow) {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="comment">/* Show th widget with the list of plugins and versions */</span></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(mainwindow);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</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="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a>();</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</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="l00309"></a><span class="lineno"> 309</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="l00310"></a><span class="lineno"> 310</span>&#160; }</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; <span class="keywordflow">break</span>;</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;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</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="l00316"></a><span class="lineno"> 316</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="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">if</span> (plugin) {</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e">entry_func</a>();</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; widget = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; _(<span class="stringliteral">&quot;Plugin %s is not registered.&quot;</span>), data);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</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="l00323"></a><span class="lineno"> 323</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(widget);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</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="l00329"></a><span class="lineno"> 329</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="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>();</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">break</span>;</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">default</span>:</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">break</span>;</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;}</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</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#l00160">remmina_exec.c:160</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#l00055">remmina_exec.h:55</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#l01361">remmina_main.c:1361</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html_af8e4f49e821e5ca062d08726d976785e"><div class="ttname"><a href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e">_RemminaEntryPlugin::entry_func</a></div><div class="ttdeci">void(* entry_func)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00091">plugin.h:91</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#l00049">remmina_exec.h:49</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="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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</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__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00056">remmina_exec.h:56</a></div></div>
+<div class="ttc" id="rcw_8c_html_adae469553aa0647d0df5d88b180e7cd7"><div class="ttname"><a href="rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7">rcw_delete</a></div><div class="ttdeci">gboolean rcw_delete(RemminaConnectionWindow *cnnwin)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00624">rcw.c:624</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<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__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#l00376">remmina_icon.c:376</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#l01570">remmina_file_editor.c:1570</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#l01292">remmina_main.c:1292</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 exapnded group before to close Remmina. ...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00172">remmina_main.c:172</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#l00077">remmina_exec.c:77</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_entry_plugin_html"><div class="ttname"><a href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00084">plugin.h:84</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00046">remmina_exec.h:46</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</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#l00058">remmina_exec.h:58</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#l00437">remmina_plugin_manager.c:437</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00042">remmina_exec.h:42</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__exec_8c_html_ae3299f9cf136cb759dc052ee799b1f0d"><div class="ttname"><a href="remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d">remmina_exec_autostart_cb</a></div><div class="ttdeci">static void remmina_exec_autostart_cb(RemminaFile *remminafile, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00204">remmina_exec.c:204</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a25b1d13f76ddf6a51836d780eda5fab1"><div class="ttname"><a href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a></div><div class="ttdeci">void remmina_icon_destroy(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00074">remmina_icon.c:74</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="remmina__widget__pool_8c_html_a9cbb5b8d01a6d44ba7b46434467c02f8"><div class="ttname"><a href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a></div><div class="ttdeci">gint remmina_widget_pool_count()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00140">remmina_widget_pool.c:140</a></div></div>
+<div class="ttc" id="rcw_8c_html_a4204fcd726a60493b290dd5590ec693d"><div class="ttname"><a href="rcw_8c.html#a4204fcd726a60493b290dd5590ec693d">rcw_set_delete_confirm_mode</a></div><div class="ttdeci">void rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04050">rcw.c:4050</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_a424cabdcff647797061e7482049d62a7"><div class="ttname"><a href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a></div><div class="ttdeci">void remmina_exec_command(RemminaCommandType command, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00214">remmina_exec.c:214</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00047">remmina_exec.h:47</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00044">remmina_exec.h:44</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="remmina__exec_8c_html_a206abe0e916081b29c5faa52330e2271"><div class="ttname"><a href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a></div><div class="ttdeci">void remmina_exec_exitremmina()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00088">remmina_exec.c:88</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00052">remmina_exec.h:52</a></div></div>
+<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#l01603">remmina_file_editor.c:1603</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="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00050">remmina_exec.h:50</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#l00524">remmina_file.c:524</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#l00045">remmina_about.c:45</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#l00057">remmina_exec.h:57</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#l00359">remmina_plugin_manager.c:359</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__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</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__pref__dialog_8c_html_af87f153e3fc696f76da732d8e431be5a"><div class="ttname"><a href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog_get_dialog</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_get_dialog()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00726">remmina_pref_dialog.c:726</a></div></div>
+<div class="ttc" id="rcw_8h_html_a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc"><div class="ttname"><a href="rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc">RCW_ONDELETE_NOCONFIRM</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00067">rcw.h:67</a></div></div>
+<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#l03847">rcw.c:3847</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_a0ffd51ed283da4640c920e75e89e694a"><div class="ttname"><a href="remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a">cb_closewidget</a></div><div class="ttdeci">static gboolean cb_closewidget(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00066">remmina_exec.c:66</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#l00079">remmina.c:79</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_aaa67e07e2426828d7e7b9b30d2038d31"><div class="ttname"><a href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a></div><div class="ttdeci">void remmina_application_condexit(RemminaCondExitType why)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00117">remmina_exec.c:117</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_aacc2a2ffd19e56fcb3e4b025d180ab8f"><div class="ttname"><a href="remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f">disable_rcw_delete_confirm_cb</a></div><div class="ttdeci">static gboolean disable_rcw_delete_confirm_cb(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00105">remmina_exec.c:105</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a16091735af5c6ee31fb794a5fb860342"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00613">remmina_pref_dialog.c:613</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="struct___remmina_connection_window_html"><div class="ttname"><a href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8h_source.html#l00053">rcw.h:53</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_af7b58659604660eb0cb40b0e0f8348ab"><div class="ttname"><a href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a></div><div class="ttdeci">RemminaFile * remmina_file_manager_load_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00327">remmina_file_manager.c:327</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_aca2d356a03e1aac7b716b408183aa305"><div class="ttname"><a href="remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305">newline_remove</a></div><div class="ttdeci">static void newline_remove(char *s)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00149">remmina_exec.c:149</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#l00111">remmina_unlock.c:111</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_afe0881986b2a64bfb5460981dadcf28d"><div class="ttname"><a href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a></div><div class="ttdeci">void remmina_plugin_manager_show_stdout()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00419">remmina_plugin_manager.c:419</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0c"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a></div><div class="ttdeci">RemminaCommandType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00040">remmina_exec.h:40</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_a53fad3994b2550300cfd4fd8bb2a2b5b"><div class="ttname"><a href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a></div><div class="ttdeci">gint remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00109">remmina_widget_pool.c:109</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00045">remmina_exec.h:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html"><div class="ttname"><a href="remmina__exec_8h.html">remmina_exec.h</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_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#l00151">remmina_file_manager.c:151</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00043">remmina_exec.h:43</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="plugin_8h_html_aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00046">plugin.h:46</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00048">remmina_exec.h:48</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__exec_8c.html">remmina_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__exec_8h.html b/docs/remmina__exec_8h.html
new file mode 100644
index 000000000..66b68fddb
--- /dev/null
+++ b/docs/remmina__exec_8h.html
@@ -0,0 +1,298 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_exec.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__exec_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_exec.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__exec_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a23616cb0334a45c2b477be6efd45ee0c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a> { <br />
+&#160;&#160;<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">REMMINA_COMMAND_NONE</a> = 0,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a> = 1,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a> = 2,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a> = 3,
+<br />
+&#160;&#160;<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a> = 4,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a> = 5,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a> = 6,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a> = 7,
+<br />
+&#160;&#160;<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">REMMINA_COMMAND_FULL_VERSION</a> = 8,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a> = 9,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</a> = 10,
+<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a> = 11
+<br />
+ }</td></tr>
+<tr class="separator:a23616cb0334a45c2b477be6efd45ee0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9dfd6986f18cb3d846a4933ac792fd5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a> { <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a> = 0,
+<a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a> = 1,
+<a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a> = 2
+ }</td></tr>
+<tr class="separator:ae9dfd6986f18cb3d846a4933ac792fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a424cabdcff647797061e7482049d62a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a> (<a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a> command, const gchar *data)</td></tr>
+<tr class="separator:a424cabdcff647797061e7482049d62a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbaf105af1039e44ba503a8d7174535f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f">remmina_exec_exitremmina</a> (void)</td></tr>
+<tr class="separator:adbaf105af1039e44ba503a8d7174535f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa67e07e2426828d7e7b9b30d2038d31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a> (<a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a> why)</td></tr>
+<tr class="separator:aaa67e07e2426828d7e7b9b30d2038d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e202866339a104ffdbfa519cfbcdca9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a> (gchar *profilefilename, gchar **settings)</td></tr>
+<tr class="separator:a4e202866339a104ffdbfa519cfbcdca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a23616cb0334a45c2b477be6efd45ee0c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23616cb0334a45c2b477be6efd45ee0c">&#9670;&nbsp;</a></span>RemminaCommandType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224"></a>REMMINA_COMMAND_NONE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"></a>REMMINA_COMMAND_MAIN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"></a>REMMINA_COMMAND_PREF&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"></a>REMMINA_COMMAND_NEW&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"></a>REMMINA_COMMAND_CONNECT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"></a>REMMINA_COMMAND_EDIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"></a>REMMINA_COMMAND_ABOUT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06"></a>REMMINA_COMMAND_VERSION&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885"></a>REMMINA_COMMAND_FULL_VERSION&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad"></a>REMMINA_COMMAND_PLUGIN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a"></a>REMMINA_COMMAND_EXIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8"></a>REMMINA_COMMAND_AUTOSTART&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__exec_8h_source.html">remmina_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ae9dfd6986f18cb3d846a4933ac792fd5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9dfd6986f18cb3d846a4933ac792fd5">&#9670;&nbsp;</a></span>RemminaCondExitType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51"></a>REMMINA_CONDEXIT_ONDISCONNECT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284"></a>REMMINA_CONDEXIT_ONQUIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40"></a>REMMINA_CONDEXIT_ONMAINWINDELETE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__exec_8h_source.html">remmina_exec.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aaa67e07e2426828d7e7b9b30d2038d31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa67e07e2426828d7e7b9b30d2038d31">&#9670;&nbsp;</a></span>remmina_application_condexit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_application_condexit </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a>&#160;</td>
+ <td class="paramname"><em>why</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00117">117</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a424cabdcff647797061e7482049d62a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a424cabdcff647797061e7482049d62a7">&#9670;&nbsp;</a></span>remmina_exec_command()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_exec_command </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a>&#160;</td>
+ <td class="paramname"><em>command</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>This should be a G_OPTION_ARG_FILENAME_ARRAY (^aay) so that we can implement multi profile connection: <a href="https://gitlab.com/Remmina/Remmina/issues/915">https://gitlab.com/Remmina/Remmina/issues/915</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00214">214</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="adbaf105af1039e44ba503a8d7174535f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adbaf105af1039e44ba503a8d7174535f">&#9670;&nbsp;</a></span>remmina_exec_exitremmina()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_exec_exitremmina </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00088">88</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a4e202866339a104ffdbfa519cfbcdca9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e202866339a104ffdbfa519cfbcdca9">&#9670;&nbsp;</a></span>remmina_exec_set_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_exec_set_setting </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>profilefilename</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>settings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__exec_8c_source.html#l00160">160</a> of file <a class="el" href="remmina__exec_8c_source.html">remmina_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__exec_8h.html">remmina_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__exec_8h.js b/docs/remmina__exec_8h.js
new file mode 100644
index 000000000..4bac292e3
--- /dev/null
+++ b/docs/remmina__exec_8h.js
@@ -0,0 +1,26 @@
+var remmina__exec_8h =
+[
+ [ "RemminaCommandType", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c", [
+ [ "REMMINA_COMMAND_NONE", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224", null ],
+ [ "REMMINA_COMMAND_MAIN", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5", null ],
+ [ "REMMINA_COMMAND_PREF", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704", null ],
+ [ "REMMINA_COMMAND_NEW", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7", null ],
+ [ "REMMINA_COMMAND_CONNECT", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d", null ],
+ [ "REMMINA_COMMAND_EDIT", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65", null ],
+ [ "REMMINA_COMMAND_ABOUT", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b", null ],
+ [ "REMMINA_COMMAND_VERSION", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06", null ],
+ [ "REMMINA_COMMAND_FULL_VERSION", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885", null ],
+ [ "REMMINA_COMMAND_PLUGIN", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad", null ],
+ [ "REMMINA_COMMAND_EXIT", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a", null ],
+ [ "REMMINA_COMMAND_AUTOSTART", "remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8", null ]
+ ] ],
+ [ "RemminaCondExitType", "remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5", [
+ [ "REMMINA_CONDEXIT_ONDISCONNECT", "remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51", null ],
+ [ "REMMINA_CONDEXIT_ONQUIT", "remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284", null ],
+ [ "REMMINA_CONDEXIT_ONMAINWINDELETE", "remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40", null ]
+ ] ],
+ [ "remmina_application_condexit", "remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31", null ],
+ [ "remmina_exec_command", "remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7", null ],
+ [ "remmina_exec_exitremmina", "remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f", null ],
+ [ "remmina_exec_set_setting", "remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__exec_8h_source.html b/docs/remmina__exec_8h_source.html
new file mode 100644
index 000000000..fc397e865
--- /dev/null
+++ b/docs/remmina__exec_8h_source.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_exec.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__exec_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_exec.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__exec_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224"> 41</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">REMMINA_COMMAND_NONE</a> = 0,</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"> 42</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a> = 1,</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"> 43</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a> = 2,</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"> 44</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a> = 3,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"> 45</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a> = 4,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"> 46</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a> = 5,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"> 47</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a> = 6,</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06"> 48</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a> = 7,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885"> 49</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885">REMMINA_COMMAND_FULL_VERSION</a> = 8,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad"> 50</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a> = 9,</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a"> 51</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</a> = 10,</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8"> 52</a></span>&#160; <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a> = 11</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5"> 55</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51"> 56</a></span>&#160; <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a> = 0,</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284"> 57</a></span>&#160; <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284">REMMINA_CONDEXIT_ONQUIT</a> = 1,</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40"> 58</a></span>&#160; <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40">REMMINA_CONDEXIT_ONMAINWINDELETE</a> = 2</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a>;</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="keywordtype">void</span> <a class="code" href="remmina__exec_8h.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="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f">remmina_exec_exitremmina</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a>(<a class="code" href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5">RemminaCondExitType</a> why);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">int</span> <a class="code" href="remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9">remmina_exec_set_setting</a>(gchar *profilefilename, gchar **settings);</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"> 67</span>&#160;G_END_DECLS</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#l00055">remmina_exec.h:55</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#l00049">remmina_exec.h:49</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51"><div class="ttname"><a href="remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51">REMMINA_CONDEXIT_ONDISCONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00056">remmina_exec.h:56</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224">REMMINA_COMMAND_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00041">remmina_exec.h:41</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00046">remmina_exec.h:46</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#l00058">remmina_exec.h:58</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_aaa67e07e2426828d7e7b9b30d2038d31"><div class="ttname"><a href="remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a></div><div class="ttdeci">void remmina_application_condexit(RemminaCondExitType why)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00117">remmina_exec.c:117</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_adbaf105af1039e44ba503a8d7174535f"><div class="ttname"><a href="remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f">remmina_exec_exitremmina</a></div><div class="ttdeci">void remmina_exec_exitremmina(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00088">remmina_exec.c:88</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00042">remmina_exec.h:42</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00047">remmina_exec.h:47</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00044">remmina_exec.h:44</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a4e202866339a104ffdbfa519cfbcdca9"><div class="ttname"><a href="remmina__exec_8h.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#l00160">remmina_exec.c:160</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8">REMMINA_COMMAND_AUTOSTART</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00052">remmina_exec.h:52</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad">REMMINA_COMMAND_PLUGIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00050">remmina_exec.h:50</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#l00057">remmina_exec.h:57</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a">REMMINA_COMMAND_EXIT</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__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0c"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c">RemminaCommandType</a></div><div class="ttdeci">RemminaCommandType</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00040">remmina_exec.h:40</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00045">remmina_exec.h:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a424cabdcff647797061e7482049d62a7"><div class="ttname"><a href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a></div><div class="ttdeci">void remmina_exec_command(RemminaCommandType command, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00214">remmina_exec.c:214</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00043">remmina_exec.h:43</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06">REMMINA_COMMAND_VERSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00048">remmina_exec.h:48</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__exec_8h.html">remmina_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ext__exec_8c.html b/docs/remmina__ext__exec_8c.html
new file mode 100644
index 000000000..4db8e4bd7
--- /dev/null
+++ b/docs/remmina__ext__exec_8c.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ext_exec.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ext__exec_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ext_exec.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ext__exec_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa063217311c67408819a2c1b86ff92dd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">wait_for_child</a> (GPid pid, gint script_retval, gpointer data)</td></tr>
+<tr class="separator:aa063217311c67408819a2c1b86ff92dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c81795162a70d06294fdf935ea210d7"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const char *remmina_ext_exec_type)</td></tr>
+<tr class="separator:a7c81795162a70d06294fdf935ea210d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7c81795162a70d06294fdf935ea210d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c81795162a70d06294fdf935ea210d7">&#9670;&nbsp;</a></span>remmina_ext_exec_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_ext_exec_new </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>remmina_ext_exec_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__ext__exec_8c_source.html">remmina_ext_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="aa063217311c67408819a2c1b86ff92dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa063217311c67408819a2c1b86ff92dd">&#9670;&nbsp;</a></span>wait_for_child()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void wait_for_child </td>
+ <td>(</td>
+ <td class="paramtype">GPid&#160;</td>
+ <td class="paramname"><em>pid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>script_retval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__ext__exec_8c_source.html">remmina_ext_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ext__exec_8c.html">remmina_ext_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ext__exec_8c.js b/docs/remmina__ext__exec_8c.js
new file mode 100644
index 000000000..e3a79dca8
--- /dev/null
+++ b/docs/remmina__ext__exec_8c.js
@@ -0,0 +1,5 @@
+var remmina__ext__exec_8c =
+[
+ [ "remmina_ext_exec_new", "remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7", null ],
+ [ "wait_for_child", "remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ext__exec_8c_source.html b/docs/remmina__ext__exec_8c_source.html
new file mode 100644
index 000000000..101d994d2
--- /dev/null
+++ b/docs/remmina__ext__exec_8c_source.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ext_exec.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ext__exec_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ext_exec.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ext__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) 2009-2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib.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 &lt;sys/wait.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</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__utils_8h.html">remmina_utils.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__file_8h.html">remmina_file.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__ext__exec_8h.html">remmina_ext_exec.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__public_8h.html">remmina_public.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define SPAWN_TIMEOUT 10</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define GET_OBJECT(object_name) gtk_builder_get_object(builder, object_name)</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd"> 53</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">wait_for_child</a>(GPid pid, gint script_retval, gpointer data)</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="struct_p_con___spinner.html">PCon_Spinner</a> *pcspinner = (<a class="code" href="struct_p_con___spinner.html">PCon_Spinner</a>*)data;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gtk_spinner_stop(GTK_SPINNER(pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">spinner</a>));</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; gtk_widget_destroy(GTK_WIDGET(pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">dialog</a>));</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; g_spawn_close_pid(pid);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">/* TODO At the moment background processes will fail to start before the</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> * remmina connection.</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> * Adding a delay here could be a (not good) solution, or we should</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> * monitor each child opened, but it could be quit tricky and messy */</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;}</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7"> 66</a></span>&#160;GtkDialog* <a class="code" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile, <span class="keyword">const</span> <span class="keywordtype">char</span> *remmina_ext_exec_type)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; GtkBuilder *builder;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="struct_p_con___spinner.html">PCon_Spinner</a> *pcspinner;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">char</span> **argv;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; gchar *cmd = NULL;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gchar pre[11];</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; gchar post[12];</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; GPid child_pid;</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"> 78</span>&#160; strcpy(pre, <span class="stringliteral">&quot;precommand&quot;</span>);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; strcpy(post, <span class="stringliteral">&quot;postcommand&quot;</span>);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (remmina_ext_exec_type != NULL &amp;&amp; (</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; strcmp(remmina_ext_exec_type, pre) |</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; strcmp(remmina_ext_exec_type, post) )) {</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; cmd = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, remmina_ext_exec_type));</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; g_debug(<span class="stringliteral">&quot;[%s] %s&quot;</span>, remmina_ext_exec_type, cmd);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 89</span>&#160; cmd = <a class="code" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a>(remminafile, cmd);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_debug(<span class="stringliteral">&quot;[%s] updated to: %s&quot;</span>, remmina_ext_exec_type, cmd);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span> (*cmd != 0) {</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; pcspinner = g_new(<a class="code" href="struct_p_con___spinner.html">PCon_Spinner</a>, 1);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; builder = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_spinner.glade&quot;</span>);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">dialog</a> = GTK_DIALOG(gtk_builder_get_object(builder, <span class="stringliteral">&quot;DialogSpinner&quot;</span>));</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">label_pleasewait</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_pleasewait&quot;</span>));</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">spinner</a> = GTK_WIDGET(GET_OBJECT(<span class="stringliteral">&quot;spinner&quot;</span>));</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">button_cancel</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_cancel&quot;</span>));</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; gtk_builder_connect_signals(builder, NULL);</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; <span class="comment">/* Exec a predefined command */</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; g_shell_parse_argv(cmd, NULL, &amp;argv, &amp;error);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; g_warning(<span class="stringliteral">&quot;%s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; g_error_free(error);</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;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* Consider using G_SPAWN_SEARCH_PATH_FROM_ENVP (from glib 2.38)*/</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; g_spawn_async( NULL, <span class="comment">// cwd</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; argv, <span class="comment">// argv</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; NULL, <span class="comment">// envp</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; G_SPAWN_SEARCH_PATH |</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; G_SPAWN_SEARCH_PATH_FROM_ENVP |</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; G_SPAWN_DO_NOT_REAP_CHILD, <span class="comment">// flags</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; NULL, <span class="comment">// child_setup</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; NULL, <span class="comment">// child_setup user data</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; &amp;child_pid, <span class="comment">// pid location</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; &amp;error); <span class="comment">// error</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (!error) {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gtk_spinner_start(GTK_SPINNER(pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">spinner</a>));</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; g_child_watch_add(child_pid, <a class="code" href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">wait_for_child</a>, (gpointer)pcspinner);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gtk_dialog_run(pcspinner-&gt;dialog);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; g_warning(<span class="stringliteral">&quot;Command %s exited with error: %s\n&quot;</span>, cmd, error-&gt;message);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; g_error_free(error);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; g_strfreev(argv);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span> (pcspinner-&gt;<a class="code" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">dialog</a>);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</div><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#l00449">remmina_file.c:449</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</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#l00494">remmina_file.c:494</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8c_html_a7c81795162a70d06294fdf935ea210d7"><div class="ttname"><a href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a></div><div class="ttdeci">GtkDialog * remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8c_source.html#l00066">remmina_ext_exec.c:66</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html"><div class="ttname"><a href="remmina__utils_8h.html">remmina_utils.h</a></div><div class="ttdoc">General utility functions, non-GTK related. </div></div>
+<div class="ttc" id="remmina__ext__exec_8c_html_aa063217311c67408819a2c1b86ff92dd"><div class="ttname"><a href="remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd">wait_for_child</a></div><div class="ttdeci">static void wait_for_child(GPid pid, gint script_retval, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8c_source.html#l00053">remmina_ext_exec.c:53</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8h_html"><div class="ttname"><a href="remmina__ext__exec_8h.html">remmina_ext_exec.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="struct_p_con___spinner_html_aa0004e88608c893e343a9a2b3e50f646"><div class="ttname"><a href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">PCon_Spinner::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00041">remmina_ext_exec.h:41</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_ab7322b598d596a57d8424d90762c588e"><div class="ttname"><a href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">PCon_Spinner::button_cancel</a></div><div class="ttdeci">GtkButton * button_cancel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00043">remmina_ext_exec.h:43</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html"><div class="ttname"><a href="struct_p_con___spinner.html">PCon_Spinner</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00040">remmina_ext_exec.h:40</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_a895fd84ca4c0a4410b90b9690b5af046"><div class="ttname"><a href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">PCon_Spinner::spinner</a></div><div class="ttdeci">GtkWidget * spinner</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00044">remmina_ext_exec.h:44</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_ae7f4061ced82dace307fb70c08348281"><div class="ttname"><a href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">PCon_Spinner::label_pleasewait</a></div><div class="ttdeci">GtkLabel * label_pleasewait</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00042">remmina_ext_exec.h:42</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ext__exec_8c.html">remmina_ext_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ext__exec_8h.html b/docs/remmina__ext__exec_8h.html
new file mode 100644
index 000000000..3362babe4
--- /dev/null
+++ b/docs/remmina__ext__exec_8h.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ext_exec.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ext__exec_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ext_exec.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ext__exec_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_con___spinner.html">PCon_Spinner</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7c81795162a70d06294fdf935ea210d7"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const char *remmina_ext_exec_type)</td></tr>
+<tr class="separator:a7c81795162a70d06294fdf935ea210d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7c81795162a70d06294fdf935ea210d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c81795162a70d06294fdf935ea210d7">&#9670;&nbsp;</a></span>remmina_ext_exec_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_ext_exec_new </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>remmina_ext_exec_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__ext__exec_8c_source.html">remmina_ext_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ext__exec_8h.html">remmina_ext_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ext__exec_8h.js b/docs/remmina__ext__exec_8h.js
new file mode 100644
index 000000000..ae7fa6b5f
--- /dev/null
+++ b/docs/remmina__ext__exec_8h.js
@@ -0,0 +1,5 @@
+var remmina__ext__exec_8h =
+[
+ [ "PCon_Spinner", "struct_p_con___spinner.html", "struct_p_con___spinner" ],
+ [ "remmina_ext_exec_new", "remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ext__exec_8h_source.html b/docs/remmina__ext__exec_8h_source.html
new file mode 100644
index 000000000..78fb7cc95
--- /dev/null
+++ b/docs/remmina__ext__exec_8h_source.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ext_exec.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ext__exec_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ext_exec.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ext__exec_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-2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2014-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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"><a class="line" href="struct_p_con___spinner.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646"> 41</a></span>&#160; GtkDialog * <a class="code" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">dialog</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281"> 42</a></span>&#160; GtkLabel * <a class="code" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">label_pleasewait</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e"> 43</a></span>&#160; GtkButton * <a class="code" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">button_cancel</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046"> 44</a></span>&#160; GtkWidget * <a class="code" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">spinner</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;} <a class="code" href="struct_p_con___spinner.html">PCon_Spinner</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;GtkDialog *<a class="code" href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> <span class="keywordtype">char</span> *remmina_ext_exec_type);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;G_END_DECLS</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8h_html_a7c81795162a70d06294fdf935ea210d7"><div class="ttname"><a href="remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a></div><div class="ttdeci">GtkDialog * remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8c_source.html#l00066">remmina_ext_exec.c:66</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_aa0004e88608c893e343a9a2b3e50f646"><div class="ttname"><a href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">PCon_Spinner::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00041">remmina_ext_exec.h:41</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_ab7322b598d596a57d8424d90762c588e"><div class="ttname"><a href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">PCon_Spinner::button_cancel</a></div><div class="ttdeci">GtkButton * button_cancel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00043">remmina_ext_exec.h:43</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html"><div class="ttname"><a href="struct_p_con___spinner.html">PCon_Spinner</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00040">remmina_ext_exec.h:40</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_a895fd84ca4c0a4410b90b9690b5af046"><div class="ttname"><a href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">PCon_Spinner::spinner</a></div><div class="ttdeci">GtkWidget * spinner</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00044">remmina_ext_exec.h:44</a></div></div>
+<div class="ttc" id="struct_p_con___spinner_html_ae7f4061ced82dace307fb70c08348281"><div class="ttname"><a href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">PCon_Spinner::label_pleasewait</a></div><div class="ttdeci">GtkLabel * label_pleasewait</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8h_source.html#l00042">remmina_ext_exec.h:42</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ext__exec_8h.html">remmina_ext_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__external__tools_8c.html b/docs/remmina__external__tools_8c.html
new file mode 100644
index 000000000..a4a227a19
--- /dev/null
+++ b/docs/remmina__external__tools_8c.html
@@ -0,0 +1,228 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_external_tools.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__external__tools_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_external_tools.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__external__tools_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae32c6ba6b03dffd2ccbf70ea7ab60c60"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools_launcher</a> (const gchar *filename, const gchar *scriptname, const gchar *shortname)</td></tr>
+<tr class="separator:ae32c6ba6b03dffd2ccbf70ea7ab60c60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb0a4182f2137fe0089737b2522add71"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">view_popup_menu_onDoSomething</a> (GtkWidget *menuitem, gpointer userdata)</td></tr>
+<tr class="separator:aeb0a4182f2137fe0089737b2522add71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe70273f7d1cbab092c6f6017695c56d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a> (<a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a> *<a class="el" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>, gchar *remminafilename)</td></tr>
+<tr class="separator:abe70273f7d1cbab092c6f6017695c56d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abe70273f7d1cbab092c6f6017695c56d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe70273f7d1cbab092c6f6017695c56d">&#9670;&nbsp;</a></span>remmina_external_tools_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_external_tools_from_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a> *&#160;</td>
+ <td class="paramname"><em>remminamain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>remminafilename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__external__tools_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__external__tools_8c_source.html">remmina_external_tools.c</a>.</p>
+
+</div>
+</div>
+<a id="ae32c6ba6b03dffd2ccbf70ea7ab60c60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae32c6ba6b03dffd2ccbf70ea7ab60c60">&#9670;&nbsp;</a></span>remmina_external_tools_launcher()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_external_tools_launcher </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>scriptname</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>shortname</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__external__tools_8c_source.html#l00101">101</a> of file <a class="el" href="remmina__external__tools_8c_source.html">remmina_external_tools.c</a>.</p>
+
+</div>
+</div>
+<a id="aeb0a4182f2137fe0089737b2522add71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb0a4182f2137fe0089737b2522add71">&#9670;&nbsp;</a></span>view_popup_menu_onDoSomething()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void view_popup_menu_onDoSomething </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__external__tools_8c_source.html#l00046">46</a> of file <a class="el" href="remmina__external__tools_8c_source.html">remmina_external_tools.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__external__tools_8c.html">remmina_external_tools.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__external__tools_8c.js b/docs/remmina__external__tools_8c.js
new file mode 100644
index 000000000..44c165328
--- /dev/null
+++ b/docs/remmina__external__tools_8c.js
@@ -0,0 +1,6 @@
+var remmina__external__tools_8c =
+[
+ [ "remmina_external_tools_from_filename", "remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d", null ],
+ [ "remmina_external_tools_launcher", "remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60", null ],
+ [ "view_popup_menu_onDoSomething", "remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__external__tools_8c_source.html b/docs/remmina__external__tools_8c_source.html
new file mode 100644
index 000000000..a4e90b3b4
--- /dev/null
+++ b/docs/remmina__external__tools_8c_source.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_external_tools.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__external__tools_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_external_tools.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__external__tools_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) 2011 Marc-Andre Moreau</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8h.html">remmina/types.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</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="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools_launcher</a>(<span class="keyword">const</span> gchar* filename, <span class="keyword">const</span> gchar* scriptname, <span class="keyword">const</span> gchar* shortname);</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__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71"> 46</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">view_popup_menu_onDoSomething</a>(GtkWidget *menuitem, gpointer userdata)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; gchar *remminafilename = g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;remminafilename&quot;</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; gchar *scriptfilename = g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;scriptfilename&quot;</span>);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; gchar *scriptshortname = g_object_get_data(G_OBJECT(menuitem), <span class="stringliteral">&quot;scriptshortname&quot;</span>);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools_launcher</a>(remminafilename, scriptfilename, scriptshortname);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85"> 56</a></span>&#160;gboolean <a class="code" href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a>(<a class="code" href="struct___remmina_main.html">RemminaMain</a> *<a class="code" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>, gchar* remminafilename)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;{</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; GtkWidget *menu, *menuitem;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; gchar dirname[MAX_PATH_LEN];</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; gchar filename[MAX_PATH_LEN];</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; GDir* dir;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">const</span> gchar* name;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; strcpy(dirname, REMMINA_RUNTIME_EXTERNAL_TOOLS_DIR);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; dir = g_dir_open(dirname, 0, NULL);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (dir == NULL)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> FALSE;</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; menu = gtk_menu_new();</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="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span> (!g_str_has_prefix(name, <span class="stringliteral">&quot;remmina_&quot;</span>))</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; g_snprintf(filename, MAX_PATH_LEN, <span class="stringliteral">&quot;%s/%s&quot;</span>, dirname, name);</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"> 78</span>&#160; menuitem = gtk_menu_item_new_with_label(name + 8);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; g_object_set_data_full(G_OBJECT(menuitem), <span class="stringliteral">&quot;remminafilename&quot;</span>, g_strdup(remminafilename), g_free);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; g_object_set_data_full(G_OBJECT(menuitem), <span class="stringliteral">&quot;scriptfilename&quot;</span>, g_strdup(filename), g_free);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; g_object_set_data_full(G_OBJECT(menuitem), <span class="stringliteral">&quot;scriptshortname&quot;</span>, g_strdup(name), g_free);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; g_signal_connect(menuitem, <span class="stringliteral">&quot;activate&quot;</span>, (GCallback)<a class="code" href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">view_popup_menu_onDoSomething</a>, NULL);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</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; g_dir_close(dir);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; gtk_widget_show_all(menu);</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"> 89</span>&#160; <span class="comment">/* Note: event can be NULL here when called from view_onPopupMenu;</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> * gdk_event_get_time() accepts a NULL argument</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(menu), NULL);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0, 0);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;}</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"><a class="line" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60"> 101</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools_launcher</a>(<span class="keyword">const</span> gchar* filename, <span class="keyword">const</span> gchar* scriptname, <span class="keyword">const</span> gchar* shortname)</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *env_format = <span class="stringliteral">&quot;%s=%s&quot;</span>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">char</span> *env;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">size_t</span> envstrlen;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; gchar launcher[MAX_PATH_LEN];</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; g_snprintf(launcher, MAX_PATH_LEN, <span class="stringliteral">&quot;%s/launcher.sh&quot;</span>, REMMINA_RUNTIME_EXTERNAL_TOOLS_DIR);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (!remminafile)</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keyword">const</span> gchar *key, *value;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; g_hash_table_iter_init(&amp;iter, remminafile-&gt;settings);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, (gpointer*)&amp;key, (gpointer*)&amp;value)) {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; envstrlen = strlen(key) + strlen(value) + strlen(env_format) + 1;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; env = (<span class="keywordtype">char</span>*)malloc(envstrlen);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (env == NULL) {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</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; <span class="keywordtype">int</span> retval = snprintf(env, envstrlen, env_format, key, value);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (retval &gt; 0 &amp;&amp; (<span class="keywordtype">size_t</span>)retval &lt;= envstrlen) {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (putenv(env) != 0) {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="comment">/* If putenv fails, we must free the unused space */</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; free(env);</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; }</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="comment">/* Adds the window title for the terminal window */</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *term_title_key = <span class="stringliteral">&quot;remmina_term_title&quot;</span>;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *term_title_val_prefix = <span class="stringliteral">&quot;Remmina external tool&quot;</span>;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; envstrlen = strlen(term_title_key) + strlen(term_title_val_prefix) + strlen(shortname) + 7;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; env = (<span class="keywordtype">char</span>*)malloc(envstrlen);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (env != NULL) {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (snprintf(env, envstrlen, <span class="stringliteral">&quot;%s=%s: %s&quot;</span>, term_title_key, term_title_val_prefix, shortname) ) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (putenv(env) != 0) {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="comment">/* If putenv fails, we must free the unused space */</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; free(env);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> cmdlen = strlen(launcher) + strlen(scriptname) + 2;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; gchar *cmd = (gchar*)malloc(cmdlen);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; g_snprintf(cmd, cmdlen, <span class="stringliteral">&quot;%s %s&quot;</span>, launcher, scriptname);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; system(cmd);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; free(cmd);</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; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</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"> 155</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</a></div></div>
+<div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div>
+<div class="ttc" id="remmina__external__tools_8c_html_ae32c6ba6b03dffd2ccbf70ea7ab60c60"><div class="ttname"><a href="remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60">remmina_external_tools_launcher</a></div><div class="ttdeci">static gboolean remmina_external_tools_launcher(const gchar *filename, const gchar *scriptname, const gchar *shortname)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__external__tools_8c_source.html#l00101">remmina_external_tools.c:101</a></div></div>
+<div class="ttc" id="remmina__external__tools_8c_html_abe70273f7d1cbab092c6f6017695c56d"><div class="ttname"><a href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a></div><div class="ttdeci">gboolean remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__external__tools_8c_source.html#l00056">remmina_external_tools.c:56</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#l00041">types.h:41</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#l00045">remmina_main.h:45</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.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_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#l00065">remmina_main.c:65</a></div></div>
+<div class="ttc" id="remmina__external__tools_8c_html_aeb0a4182f2137fe0089737b2522add71"><div class="ttname"><a href="remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71">view_popup_menu_onDoSomething</a></div><div class="ttdeci">static void view_popup_menu_onDoSomething(GtkWidget *menuitem, gpointer userdata)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__external__tools_8c_source.html#l00046">remmina_external_tools.c:46</a></div></div>
+<div class="ttc" id="remmina__external__tools_8h_html"><div class="ttname"><a href="remmina__external__tools_8h.html">remmina_external_tools.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__external__tools_8c.html">remmina_external_tools.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__external__tools_8h.html b/docs/remmina__external__tools_8h.html
new file mode 100644
index 000000000..a4836c407
--- /dev/null
+++ b/docs/remmina__external__tools_8h.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_external_tools.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__external__tools_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_external_tools.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__external__tools_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a32c8a5f638e3a38753d43fbeb3094e85"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85">remmina_external_tools_from_filename</a> (<a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a> *<a class="el" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>, gchar *remminafilename)</td></tr>
+<tr class="separator:a32c8a5f638e3a38753d43fbeb3094e85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a32c8a5f638e3a38753d43fbeb3094e85"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32c8a5f638e3a38753d43fbeb3094e85">&#9670;&nbsp;</a></span>remmina_external_tools_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gboolean remmina_external_tools_from_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a> *&#160;</td>
+ <td class="paramname"><em>remminamain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>remminafilename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__external__tools_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__external__tools_8c_source.html">remmina_external_tools.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__external__tools_8h.html">remmina_external_tools.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__external__tools_8h.js b/docs/remmina__external__tools_8h.js
new file mode 100644
index 000000000..961ea6f7d
--- /dev/null
+++ b/docs/remmina__external__tools_8h.js
@@ -0,0 +1,4 @@
+var remmina__external__tools_8h =
+[
+ [ "remmina_external_tools_from_filename", "remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__external__tools_8h_source.html b/docs/remmina__external__tools_8h_source.html
new file mode 100644
index 000000000..621906ef3
--- /dev/null
+++ b/docs/remmina__external__tools_8h_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_external_tools.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__external__tools_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_external_tools.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__external__tools_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;G_BEGIN_DECLS</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="comment">/* Open a new connection window for a .remmina file */</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;gboolean <a class="code" href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85">remmina_external_tools_from_filename</a>(<a class="code" href="struct___remmina_main.html">RemminaMain</a> *<a class="code" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a>, gchar *remminafilename);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;G_END_DECLS</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#l00045">remmina_main.h:45</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="remmina__external__tools_8h_html_a32c8a5f638e3a38753d43fbeb3094e85"><div class="ttname"><a href="remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85">remmina_external_tools_from_filename</a></div><div class="ttdeci">G_BEGIN_DECLS gboolean remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__external__tools_8c_source.html#l00056">remmina_external_tools.c:56</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#l00065">remmina_main.c:65</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__external__tools_8h.html">remmina_external_tools.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file_8c.html b/docs/remmina__file_8c.html
new file mode 100644
index 000000000..0dc17c934
--- /dev/null
+++ b/docs/remmina__file_8c.html
@@ -0,0 +1,962 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:adab087b7139756f029020a87a5438cfa"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a> (void)</td></tr>
+<tr class="separator:adab087b7139756f029020a87a5438cfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e421ba636d34e21bba5ece463e98892"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a> (void)</td></tr>
+<tr class="separator:a5e421ba636d34e21bba5ece463e98892"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac952f8ddb715314f11cef1ccc513fb7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:ac952f8ddb715314f11cef1ccc513fb7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab03b042504c09c1ad880ac126a703114"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *filename)</td></tr>
+<tr class="separator:ab03b042504c09c1ad880ac126a703114"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1e4f3a0f64cd98e301044b6c38a1f1d"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:ad1e4f3a0f64cd98e301044b6c38a1f1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1685edf35a793a396ce039d7eec5343"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a> (const gchar *filename)</td></tr>
+<tr class="separator:ac1685edf35a793a396ce039d7eec5343"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1399e5b83aa040b6613cf98be45b4c99"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99">find_protocol_setting</a> (const gchar *name, <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *protocol_plugin)</td></tr>
+<tr class="separator:a1399e5b83aa040b6613cf98be45b4c99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42231fba69c82eb51a4e210c2de76960"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gboolean protocol_is_ssh, gboolean ssh_enabled, gchar *suffix)</td></tr>
+<tr class="separator:a42231fba69c82eb51a4e210c2de76960"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3feeafd4956b364975aef178ef99b7a6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">upgrade_sshkeys_202001</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a3feeafd4956b364975aef178ef99b7a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1cc2d7f827f7d64c7fd3edf10e9383e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a> (const gchar *filename)</td></tr>
+<tr class="separator:ac1cc2d7f827f7d64c7fd3edf10e9383e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85ca1ca2d0bf9ef29e490c6f4527a954"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, const gchar *value)</td></tr>
+<tr class="separator:a85ca1ca2d0bf9ef29e490c6f4527a954"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74951c1067a1a5e1341f5e1c1206dec6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gchar *value)</td></tr>
+<tr class="separator:a74951c1067a1a5e1341f5e1c1206dec6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8eb1b213d9d08c6ad13683ce05f4355e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:a8eb1b213d9d08c6ad13683ce05f4355e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad514c2523ff0c919ddf535e3dbad9f3a"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:ad514c2523ff0c919ddf535e3dbad9f3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd8b12f3d84b4e201b9f465d5b8e0d03"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:afd8b12f3d84b4e201b9f465d5b8e0d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af153b0d289ac93f6ecdaa15d5f3b9b8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint value)</td></tr>
+<tr class="separator:af153b0d289ac93f6ecdaa15d5f3b9b8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4884356c195dcfb4ceacf641a1e74e66"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint default_value)</td></tr>
+<tr class="separator:a4884356c195dcfb4ceacf641a1e74e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89ec355adbf6e03ad16d7faf810af46f"><td class="memItemLeft" align="right" valign="top">static GKeyFile *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file_get_keyfile</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a89ec355adbf6e03ad16d7faf810af46f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c893a5deec9bc446bd89cc9973416c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a8c893a5deec9bc446bd89cc9973416c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3be28ff7f5a9b44dc47f92b883a85ac5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a3be28ff7f5a9b44dc47f92b883a85ac5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fb992fced83e0f1c4e4e3c8d2206be5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a3fb992fced83e0f1c4e4e3c8d2206be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2feb8e9e32f3ff4e2fac836e67a77331"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a2feb8e9e32f3ff4e2fac836e67a77331"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52a0986eaf54c9e606ce9cdf8bb57e60"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *new_protocol)</td></tr>
+<tr class="separator:a52a0986eaf54c9e606ce9cdf8bb57e60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55f66f2bb81bf427d6837e1adb7fe1d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a> (const gchar *filename)</td></tr>
+<tr class="separator:a55f66f2bb81bf427d6837e1adb7fe1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a503e53fe49430a5ed310c342c946c014"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a503e53fe49430a5ed310c342c946c014"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96abbfdc183d1e82fdffd6445d611ffe"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="memdesc:a96abbfdc183d1e82fdffd6445d611ffe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the string date of the last time a file has been modified. <a href="#a96abbfdc183d1e82fdffd6445d611ffe">More...</a><br /></td></tr>
+<tr class="separator:a96abbfdc183d1e82fdffd6445d611ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="memdesc:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the atime and mtime of a given filename. <a href="#a3d19095f74e9b7c92d74f11bd5a39a8c">More...</a><br /></td></tr>
+<tr class="separator:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a3793ec19ecbc8c8afc4d1dd8969f880d"><td class="memItemLeft" align="right" valign="top">static struct timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a> [2]</td></tr>
+<tr class="separator:a3793ec19ecbc8c8afc4d1dd8969f880d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a1399e5b83aa040b6613cf98be45b4c99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1399e5b83aa040b6613cf98be45b4c99">&#9670;&nbsp;</a></span>find_protocol_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>* find_protocol_setting </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *&#160;</td>
+ <td class="paramname"><em>protocol_plugin</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00209">209</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1685edf35a793a396ce039d7eec5343"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1685edf35a793a396ce039d7eec5343">&#9670;&nbsp;</a></span>remmina_file_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_copy </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00191">191</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a55f66f2bb81bf427d6837e1adb7fe1d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55f66f2bb81bf427d6837e1adb7fe1d4">&#9670;&nbsp;</a></span>remmina_file_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_delete </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00723">723</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fb992fced83e0f1c4e4e3c8d2206be5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fb992fced83e0f1c4e4e3c8d2206be5">&#9670;&nbsp;</a></span>remmina_file_dup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_dup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00679">679</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a52a0986eaf54c9e606ce9cdf8bb57e60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52a0986eaf54c9e606ce9cdf8bb57e60">&#9670;&nbsp;</a></span>remmina_file_dup_temp_protocol()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_dup_temp_protocol </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_protocol</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00711">711</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="afd8b12f3d84b4e201b9f465d5b8e0d03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd8b12f3d84b4e201b9f465d5b8e0d03">&#9670;&nbsp;</a></span>remmina_file_format_properties()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_format_properties </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00494">494</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">&#9670;&nbsp;</a></span>remmina_file_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00548">548</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ac952f8ddb715314f11cef1ccc513fb7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac952f8ddb715314f11cef1ccc513fb7e">&#9670;&nbsp;</a></span>remmina_file_generate_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_generate_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>functions we can use g_strstrip( string ) Removes leading and trailing whitespace from a string g_strdelimit (str, invalid_chars, '-')) Convert each invalid_chars in a hyphen g_ascii_strdown(string) all lowercase To be safe we should remove control characters as well (but I'm lazy) <a href="https://rosettacode.org/wiki/Strip_control_codes_and_extended_characters_from_a_string#C">https://rosettacode.org/wiki/Strip_control_codes_and_extended_characters_from_a_string#C</a> g_utf8_strncpy (gchar *dest, const gchar *src, gsize n); copies a given number of characters instead of a given number of bytes. The src string must be valid UTF-8 encoded text. g_utf8_validate (const gchar *str, gssize max_len, const gchar **end); Validates UTF-8 encoded text.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00108">108</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a96abbfdc183d1e82fdffd6445d611ffe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96abbfdc183d1e82fdffd6445d611ffe">&#9670;&nbsp;</a></span>remmina_file_get_datetime()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_datetime </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the string date of the last time a file has been modified. </p>
+<p>This is used to return the modification date of a file and it’s used to return the modification date and time of a givwn remmina file. If it fails it will return "26/01/1976 23:30:00", that is just a date to don't return an empty string (challenge: what was happened that day at that time?). </p><dl class="section return"><dt>Returns</dt><dd>A date string in the form "%d/%m/%Y %H:%M:%S". </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00789">789</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ad1e4f3a0f64cd98e301044b6c38a1f1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1e4f3a0f64cd98e301044b6c38a1f1d">&#9670;&nbsp;</a></span>remmina_file_get_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00184">184</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a2feb8e9e32f3ff4e2fac836e67a77331"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2feb8e9e32f3ff4e2fac836e67a77331">&#9670;&nbsp;</a></span>remmina_file_get_icon_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_icon_name </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00697">697</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a4884356c195dcfb4ceacf641a1e74e66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4884356c195dcfb4ceacf641a1e74e66">&#9670;&nbsp;</a></span>remmina_file_get_int()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_file_get_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00524">524</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a89ec355adbf6e03ad16d7faf810af46f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a89ec355adbf6e03ad16d7faf810af46f">&#9670;&nbsp;</a></span>remmina_file_get_keyfile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GKeyFile* remmina_file_get_keyfile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00534">534</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ad514c2523ff0c919ddf535e3dbad9f3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad514c2523ff0c919ddf535e3dbad9f3a">&#9670;&nbsp;</a></span>remmina_file_get_secret()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_secret </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00484">484</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a8eb1b213d9d08c6ad13683ce05f4355e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8eb1b213d9d08c6ad13683ce05f4355e">&#9670;&nbsp;</a></span>remmina_file_get_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00449">449</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1cc2d7f827f7d64c7fd3edf10e9383e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1cc2d7f827f7d64c7fd3edf10e9383e">&#9670;&nbsp;</a></span>remmina_file_load()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_load </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00327">327</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e421ba636d34e21bba5ece463e98892"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e421ba636d34e21bba5ece463e98892">&#9670;&nbsp;</a></span>remmina_file_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00090">90</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="adab087b7139756f029020a87a5438cfa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adab087b7139756f029020a87a5438cfa">&#9670;&nbsp;</a></span>remmina_file_new_empty()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_new_empty </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a8c893a5deec9bc446bd89cc9973416c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c893a5deec9bc446bd89cc9973416c7">&#9670;&nbsp;</a></span>remmina_file_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_save </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00561">561</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ab03b042504c09c1ad880ac126a703114"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab03b042504c09c1ad880ac126a703114">&#9670;&nbsp;</a></span>remmina_file_set_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00176">176</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="af153b0d289ac93f6ecdaa15d5f3b9b8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af153b0d289ac93f6ecdaa15d5f3b9b8c">&#9670;&nbsp;</a></span>remmina_file_set_int()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00518">518</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a85ca1ca2d0bf9ef29e490c6f4527a954"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85ca1ca2d0bf9ef29e490c6f4527a954">&#9670;&nbsp;</a></span>remmina_file_set_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00423">423</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a74951c1067a1a5e1341f5e1c1206dec6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74951c1067a1a5e1341f5e1c1206dec6">&#9670;&nbsp;</a></span>remmina_file_set_string_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_string_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3be28ff7f5a9b44dc47f92b883a85ac5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3be28ff7f5a9b44dc47f92b883a85ac5">&#9670;&nbsp;</a></span>remmina_file_store_secret_plugin_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_store_secret_plugin_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00660">660</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d19095f74e9b7c92d74f11bd5a39a8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d19095f74e9b7c92d74f11bd5a39a8c">&#9670;&nbsp;</a></span>remmina_file_touch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_touch </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Update the atime and mtime of a given filename. </p>
+<p>Function used to update the atime and mtime of a given remmina file, partially taken from suckless sbase </p><dl class="section see"><dt>See also</dt><dd><a href="https://git.suckless.org/sbase/tree/touch.c">https://git.suckless.org/sbase/tree/touch.c</a> </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00839">839</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a503e53fe49430a5ed310c342c946c014"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a503e53fe49430a5ed310c342c946c014">&#9670;&nbsp;</a></span>remmina_file_unsave_passwords()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_unsave_passwords </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00736">736</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3feeafd4956b364975aef178ef99b7a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3feeafd4956b364975aef178ef99b7a6">&#9670;&nbsp;</a></span>upgrade_sshkeys_202001()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void upgrade_sshkeys_202001 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00265">265</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a42231fba69c82eb51a4e210c2de76960"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42231fba69c82eb51a4e210c2de76960">&#9670;&nbsp;</a></span>upgrade_sshkeys_202001_mig_common_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void upgrade_sshkeys_202001_mig_common_setting </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>protocol_is_ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>ssh_enabled</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>suffix</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00239">239</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3793ec19ecbc8c8afc4d1dd8969f880d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3793ec19ecbc8c8afc4d1dd8969f880d">&#9670;&nbsp;</a></span>times</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct timespec times[2]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00071">71</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file_8c.html">remmina_file.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file_8c.js b/docs/remmina__file_8c.js
new file mode 100644
index 000000000..7e9c05adc
--- /dev/null
+++ b/docs/remmina__file_8c.js
@@ -0,0 +1,32 @@
+var remmina__file_8c =
+[
+ [ "find_protocol_setting", "remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99", null ],
+ [ "remmina_file_copy", "remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343", null ],
+ [ "remmina_file_delete", "remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4", null ],
+ [ "remmina_file_dup", "remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5", null ],
+ [ "remmina_file_dup_temp_protocol", "remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60", null ],
+ [ "remmina_file_format_properties", "remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03", null ],
+ [ "remmina_file_free", "remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7", null ],
+ [ "remmina_file_generate_filename", "remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e", null ],
+ [ "remmina_file_get_datetime", "remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe", null ],
+ [ "remmina_file_get_filename", "remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d", null ],
+ [ "remmina_file_get_icon_name", "remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331", null ],
+ [ "remmina_file_get_int", "remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66", null ],
+ [ "remmina_file_get_keyfile", "remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f", null ],
+ [ "remmina_file_get_secret", "remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a", null ],
+ [ "remmina_file_get_string", "remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e", null ],
+ [ "remmina_file_load", "remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e", null ],
+ [ "remmina_file_new", "remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892", null ],
+ [ "remmina_file_new_empty", "remmina__file_8c.html#adab087b7139756f029020a87a5438cfa", null ],
+ [ "remmina_file_save", "remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7", null ],
+ [ "remmina_file_set_filename", "remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114", null ],
+ [ "remmina_file_set_int", "remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c", null ],
+ [ "remmina_file_set_string", "remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954", null ],
+ [ "remmina_file_set_string_ref", "remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6", null ],
+ [ "remmina_file_store_secret_plugin_password", "remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5", null ],
+ [ "remmina_file_touch", "remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c", null ],
+ [ "remmina_file_unsave_passwords", "remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014", null ],
+ [ "upgrade_sshkeys_202001", "remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6", null ],
+ [ "upgrade_sshkeys_202001_mig_common_setting", "remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960", null ],
+ [ "times", "remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file_8c_source.html b/docs/remmina__file_8c_source.html
new file mode 100644
index 000000000..b418a5749
--- /dev/null
+++ b/docs/remmina__file_8c_source.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file_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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;sys/stat.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;errno.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;locale.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;langinfo.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;time.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;utime.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</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="l00056"></a><span class="lineno"> 56</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="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;<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="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__pref_8h.html">remmina_pref.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__main_8h.html">remmina_main.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__utils_8h.html">remmina_utils.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#define MIN_WINDOW_WIDTH 10</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#define MIN_WINDOW_HEIGHT 10</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"> 69</span>&#160;<span class="preprocessor">#define KEYFILE_GROUP_REMMINA &quot;remmina&quot;</span></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"><a class="line" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d"> 71</a></span>&#160;<span class="keyword">static</span> <span class="keyword">struct </span>timespec <a class="code" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a>[2];</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">static</span> <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa"> 74</a></span>&#160;<a class="code" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; remminafile = g_new0(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>, 1);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; remminafile-&gt;settings = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* spsettings contains settings that are loaded from the secure_plugin.</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * it’s used by remmina_file_store_secret_plugin_password() to know</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * where to change */</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; remminafile-&gt;spsettings = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; remminafile-&gt;prevent_saving = FALSE;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> remminafile;</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"> 89</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892"> 90</a></span>&#160;<a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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; <span class="comment">/* Try to load from the preference file for default settings first */</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; g_free(remminafile-&gt;filename);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; remminafile-&gt;filename = NULL;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a>();</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;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> remminafile;</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;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e"> 108</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; GDir *dir;</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; <span class="comment">/* File name restrictions:</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> * - Do not start with space</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> * - Do not end with space or dot</span></div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> * - No more than 255 chars</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> * - Do not contain \0</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> * - Avoid % and $</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> * - Avoid underscores and spaces for interoperabiility with everything else</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> * - Better all lowercase</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gchar *invalid_chars = <span class="stringliteral">&quot;\\%|/$?&lt;&gt;:*. \&quot;&quot;</span>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; GString *filenamestr;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gchar *filename;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">const</span> gchar *s;</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;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; g_free(remminafile-&gt;filename);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; filenamestr = g_string_new(g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</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#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a>));</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>)) == NULL) s = <span class="stringliteral">&quot;name&quot;</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span> (g_strstr_len(filenamestr-&gt;str, -1, <span class="stringliteral">&quot;%N&quot;</span>) != NULL)</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(filenamestr, <span class="stringliteral">&quot;%N&quot;</span>, s);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>)) == NULL) s = <span class="stringliteral">&quot;group&quot;</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span> (g_strstr_len(filenamestr-&gt;str, -1, <span class="stringliteral">&quot;%G&quot;</span>) != NULL)</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(filenamestr, <span class="stringliteral">&quot;%G&quot;</span>, s);</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"> 155</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>)) == NULL) s = <span class="stringliteral">&quot;proto&quot;</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span> (g_strstr_len(filenamestr-&gt;str, -1, <span class="stringliteral">&quot;%P&quot;</span>) != NULL)</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(filenamestr, <span class="stringliteral">&quot;%P&quot;</span>, s);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>)) == NULL) s = <span class="stringliteral">&quot;host&quot;</span>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (g_strstr_len(filenamestr-&gt;str, -1, <span class="stringliteral">&quot;%h&quot;</span>) != NULL)</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(filenamestr, <span class="stringliteral">&quot;%h&quot;</span>, s);</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; s = NULL;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; filename = g_strdelimit(g_ascii_strdown(g_strstrip(g_string_free(filenamestr, FALSE)), -1),</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; invalid_chars, <span class="charliteral">&#39;-&#39;</span>);</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; dir = g_dir_open(<a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(), 0, NULL);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (dir != NULL)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; remminafile-&gt;filename = g_strdup_printf(<span class="stringliteral">&quot;%s/%s.remmina&quot;</span>, <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(), filename);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; remminafile-&gt;filename = NULL;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_dir_close(dir);</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="l00176"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114"> 176</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *filename)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_free(remminafile-&gt;filename);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; remminafile-&gt;filename = g_strdup(filename);</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="keyword">const</span> gchar *</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d"> 184</a></span>&#160;<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> remminafile-&gt;filename;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343"> 191</a></span>&#160;<a class="code" href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a>(<span class="keyword">const</span> gchar *filename)</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"> 193</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</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,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="stringliteral">&quot;name&quot;</span>,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_strdup_printf(</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="stringliteral">&quot;COPY %s&quot;</span>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <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="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (remminafile)</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</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> remminafile;</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"><a class="line" href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99"> 209</a></span>&#160;<span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *<a class="code" href="remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99">find_protocol_setting</a>(<span class="keyword">const</span> gchar *name, <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *protocol_plugin)</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;{</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *setting_iter;</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> (protocol_plugin == NULL)</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">basic_settings</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">if</span> (strcmp(name, <a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter)) == 0)</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> setting_iter;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; setting_iter++;</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"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">if</span> (strcmp(name, <a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter)) == 0)</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">return</span> setting_iter;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; setting_iter++;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</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"> 235</span>&#160; <span class="keywordflow">return</span> NULL;</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;</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"><a class="line" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960"> 239</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gboolean protocol_is_ssh, gboolean ssh_enabled, gchar *suffix)</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;{</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gchar *src_key;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; gchar *dst_key;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keyword">const</span> gchar *val;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; src_key = g_strdup_printf(<span class="stringliteral">&quot;ssh_%s&quot;</span>, suffix);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; dst_key = g_strdup_printf(<span class="stringliteral">&quot;ssh_tunnel_%s&quot;</span>, suffix);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; val = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, src_key);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (!val) {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; g_free(dst_key);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; g_free(src_key);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">if</span> (ssh_enabled &amp;&amp; val &amp;&amp; val[0] != 0)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, dst_key, val);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span> (!protocol_is_ssh)</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, src_key, NULL);</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; g_free(dst_key);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; g_free(src_key);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;}</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6"> 265</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">upgrade_sshkeys_202001</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</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; gboolean protocol_is_ssh;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; gboolean ssh_enabled;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keyword">const</span> gchar *val;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_enabled&quot;</span>)) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="comment">/* Upgrade ssh params from remmina pre 1.4 */</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; ssh_enabled = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_enabled&quot;</span>, 0);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; val = <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="l00279"></a><span class="lineno"> 279</span>&#160; protocol_is_ssh = (strcmp(val, <span class="stringliteral">&quot;SSH&quot;</span>) == 0);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;stricthostkeycheck&quot;</span>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;kex_algorithms&quot;</span>);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;hostkeytypes&quot;</span>);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;ciphers&quot;</span>);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;proxycommand&quot;</span>);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;passphrase&quot;</span>);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;auth&quot;</span>);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a>(remminafile, protocol_is_ssh, ssh_enabled, <span class="stringliteral">&quot;privatekey&quot;</span>);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; val = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_loopback&quot;</span>);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (val) {</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_loopback&quot;</span>, val);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_loopback&quot;</span>, NULL);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; }</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; val = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_username&quot;</span>);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (val) {</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;ssh_tunnel_username&quot;</span>, val);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">if</span> (protocol_is_ssh)</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, val);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_username&quot;</span>, NULL);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</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; val = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_password&quot;</span>);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">if</span> (val) {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>, val);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">if</span> (protocol_is_ssh)</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;password&quot;</span>, val);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_password&quot;</span>, NULL);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</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; val = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_server&quot;</span>);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">if</span> (val) {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>, val);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;ssh_server&quot;</span>, NULL);</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; <span class="comment">/* Real key removal will be done by remmina_file_save() */</span></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; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, ssh_enabled);</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"> 322</span>&#160; }</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;}</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e"> 327</a></span>&#160;<a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;{</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; gchar *proto;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; gchar **keys;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; gchar *key;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; gchar *resolution_str;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; gint i;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gchar *s, *sec;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *protocol_plugin;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *secret_plugin;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; gboolean secret_service_available;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordtype">int</span> w, h;</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; gkeyfile = g_key_file_new();</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; <span class="keywordflow">if</span> (g_file_test(filename, G_FILE_TEST_IS_REGULAR | G_FILE_TEST_EXISTS)) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">if</span> (!g_key_file_load_from_file(gkeyfile, filename, G_KEY_FILE_NONE, NULL)) {</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Unable to load remmina profile file %s: g_key_file_load_from_file() returned NULL.\n&quot;</span>, filename);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;name&quot;</span>, NULL)) {</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"> 355</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a>();</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; protocol_plugin = NULL;</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; <span class="comment">/* Identify the protocol plugin and get pointers to its RemminaProtocolSetting structs */</span></div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; proto = g_key_file_get_string(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;protocol&quot;</span>, NULL);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">if</span> (proto) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; protocol_plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>, proto);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; g_free(proto);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; 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="l00367"></a><span class="lineno"> 367</span>&#160; secret_service_available = secret_plugin &amp;&amp; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>();</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; remminafile-&gt;filename = g_strdup(filename);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; keys = g_key_file_get_keys(gkeyfile, KEYFILE_GROUP_REMMINA, NULL, NULL);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (keys) {</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">for</span> (i = 0; keys[i]; i++) {</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; key = keys[i];</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">if</span> (protocol_plugin &amp;&amp; <a class="code" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(protocol_plugin, key)) {</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; s = g_key_file_get_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, NULL);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(s, <span class="stringliteral">&quot;.&quot;</span>) == 0) {</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">if</span> (secret_service_available) {</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; sec = secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629">get_password</a>(remminafile, key);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, key, sec);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="comment">/* Annotate in spsettings that this value comes from secret_plugin */</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; g_hash_table_insert(remminafile-&gt;spsettings, g_strdup(key), NULL);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; g_free(sec);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, key, s);</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">else</span> {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, key, <a class="code" href="remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9">remmina_crypt_decrypt</a>(s));</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; }</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; g_free(s);</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; <span class="comment">/* If we find &quot;resolution&quot;, then we split it in two */</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span> (strcmp(key, <span class="stringliteral">&quot;resolution&quot;</span>) == 0) {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; resolution_str = g_key_file_get_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, NULL);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a>(resolution_str, &amp;w, &amp;h)) {</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, <span class="stringliteral">&quot;resolution_width&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, w));</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, <span class="stringliteral">&quot;resolution_height&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, h));</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, <span class="stringliteral">&quot;resolution_width&quot;</span>, NULL);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, <span class="stringliteral">&quot;resolution_height&quot;</span>, NULL);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; g_free(resolution_str);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, key,</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; g_key_file_get_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, NULL));</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"> 407</span>&#160; }</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;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">upgrade_sshkeys_202001</a>(remminafile);</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; }</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Unable to load remmina profile file %s: cannot find key name= in section remmina.\n&quot;</span>, filename);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; remminafile = NULL;</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"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> remminafile;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954"> 423</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, <span class="keyword">const</span> gchar *value)</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;{</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(remminafile, setting, g_strdup(value));</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;}</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6"> 429</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gchar *value)</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;{</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keyword">const</span> gchar *message;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">if</span> (value) {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="comment">/* We refuse to accept to set the &quot;resolution&quot; field */</span></div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (strcmp(setting, <span class="stringliteral">&quot;resolution&quot;</span>) == 0) {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; message = <span class="stringliteral">&quot;WARNING: the \&quot;resolution\&quot; setting in .pref files is deprecated, but some code in remmina or in a plugin is trying to set it.\n&quot;</span>;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; fputs(message, stdout);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <a class="code" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(message);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span>;</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; g_hash_table_insert(remminafile-&gt;settings, g_strdup(setting), value);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; g_hash_table_insert(remminafile-&gt;settings, g_strdup(setting), g_strdup(<span class="stringliteral">&quot;&quot;</span>));</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"> 446</span>&#160;}</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;<span class="keyword">const</span> gchar *</div><div class="line"><a name="l00449"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e"> 449</a></span>&#160;<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; gchar *value;</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keyword">const</span> gchar *message;</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"> 455</span>&#160; <span class="comment">/* Returned value is a pointer to the string stored on the hash table,</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> * please do not free it or the hash table will contain invalid pointer */</span></div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread</span></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<span class="comment"> * (plugins needs it to have user credentials)*/</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keyword">const</span> gchar *retval;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_FILE_GET_STRING;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.remminafile = remminafile;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.setting = setting;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; retval = d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.retval;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; g_free(d);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keywordflow">return</span> retval;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; }</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">if</span> (strcmp(setting, <span class="stringliteral">&quot;resolution&quot;</span>) == 0) {</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; message = <span class="stringliteral">&quot;WARNING: the \&quot;resolution\&quot; setting in .pref files is deprecated, but some code in remmina or in a plugin is trying to read it.\n&quot;</span>;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; fputs(message, stdout);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <a class="code" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a>(message);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; value = (gchar *)g_hash_table_lookup(remminafile-&gt;settings, setting);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">return</span> value &amp;&amp; value[0] ? value : NULL;</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"> 483</span>&#160;gchar *</div><div class="line"><a name="l00484"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a"> 484</a></span>&#160;<a class="code" href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting)</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;{</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="comment">/* This function is in the RemminaPluginService table, we cannot remove it</span></div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="comment"> * without breaking plugin API */</span></div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; g_warning(<span class="stringliteral">&quot;remmina_file_get_secret(remminafile,\&quot;%s\&quot;) is deprecated and must not be called. Use remmina_file_get_string() and do not deallocate returned memory.\n&quot;</span>, setting);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">return</span> g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, setting));</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;</div><div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03"> 494</a></span>&#160;gchar *<a class="code" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting)</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; gchar *res = NULL;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; GString *fmt_str;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; GDateTime *now;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; gchar *date_str = NULL;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; fmt_str = g_string_new(setting);</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%h&quot;</span>, <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="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%t&quot;</span>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>));</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%u&quot;</span>, <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="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%U&quot;</span>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span>));</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%p&quot;</span>, <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="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%g&quot;</span>, <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="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; now = g_date_time_new_now_local ();</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; date_str = g_date_time_format(now, <span class="stringliteral">&quot;YYYY-MM-DDTHH-MM-SSZ&quot;</span>);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(fmt_str, <span class="stringliteral">&quot;%d&quot;</span>, date_str);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; g_free(date_str);</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; res = g_string_free(fmt_str, FALSE);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="keywordflow">return</span> res;</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;</div><div class="line"><a name="l00518"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c"> 518</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint value)</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;{</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; g_hash_table_insert(remminafile-&gt;settings, g_strdup(setting), g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, value));</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;}</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66"> 524</a></span>&#160;gint <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint default_value)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; gchar *value;</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; value = g_hash_table_lookup(remminafile-&gt;settings, setting);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">return</span> value == NULL ? default_value : (value[0] == <span class="charliteral">&#39;t&#39;</span> ? TRUE : atoi(value));</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;}</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="keyword">static</span> GKeyFile *</div><div class="line"><a name="l00534"></a><span class="lineno"><a class="line" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f"> 534</a></span>&#160;<a class="code" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file_get_keyfile</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;{</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordflow">if</span> (remminafile-&gt;filename == NULL)</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">if</span> (!g_key_file_load_from_file(gkeyfile, remminafile-&gt;filename, G_KEY_FILE_NONE, NULL)) {</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="comment">/* it will fail if it’s a new file, but shouldn’t matter. */</span></div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; }</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">return</span> gkeyfile;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;}</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"> 548</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;{</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; g_free(remminafile-&gt;filename);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; g_hash_table_destroy(remminafile-&gt;settings);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; g_hash_table_destroy(remminafile-&gt;spsettings);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; g_free(remminafile);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;}</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7"> 561</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *secret_plugin;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; gboolean secret_service_available;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *protocol_plugin;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keyword">const</span> gchar *key, *value;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; gchar *s, *proto, *content;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; gint nopasswdsave;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gsize length = 0;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; GError *err = NULL;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">if</span> (remminafile-&gt;prevent_saving)</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">return</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; <span class="keywordflow">if</span> ((gkeyfile = <a class="code" href="remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f">remmina_file_get_keyfile</a>(remminafile)) == NULL)</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="keywordflow">return</span>;</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; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Saving profile&quot;</span>);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="comment">/* get disablepasswordstoring */</span></div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; nopasswdsave = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, 0);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="comment">/* Identify the protocol plugin and get pointers to its RemminaProtocolSetting structs */</span></div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; proto = (gchar *)g_hash_table_lookup(remminafile-&gt;settings, <span class="stringliteral">&quot;protocol&quot;</span>);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">if</span> (proto) {</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; protocol_plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>, proto);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; g_warning(<span class="stringliteral">&quot;Saving settings for unknown protocol, because remminafile has non proto key\n&quot;</span>);</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; protocol_plugin = NULL;</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; 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="l00594"></a><span class="lineno"> 594</span>&#160; secret_service_available = secret_plugin &amp;&amp; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>();</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; g_hash_table_iter_init(&amp;iter, remminafile-&gt;settings);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, (gpointer *)&amp;key, (gpointer *)&amp;value)) {</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(protocol_plugin, key)) {</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">if</span> (remminafile-&gt;filename &amp;&amp; g_strcmp0(remminafile-&gt;filename, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>)) {</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="keywordflow">if</span> (secret_service_available &amp;&amp; nopasswdsave == 0) {</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;We have a secret and disablepasswordstoring=0&quot;</span>);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; value[0]) {</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(value, <span class="stringliteral">&quot;.&quot;</span>) != 0)</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">store_password</a>(remminafile, key, value);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, <span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">delete_password</a>(remminafile, key);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; }</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;We have a password and disablepasswordstoring=0&quot;</span>);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; value[0] &amp;&amp; nopasswdsave == 0) {</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; s = <a class="code" href="remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1">remmina_crypt_encrypt</a>(value);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, s);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; g_free(s);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; }</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; <span class="keywordflow">if</span> (secret_service_available &amp;&amp; nopasswdsave == 1) {</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keywordflow">if</span> (value &amp;&amp; value[0]) {</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(value, <span class="stringliteral">&quot;.&quot;</span>) != 0) {</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Deleting the secret in the keyring as disablepasswordstoring=1&quot;</span>);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">delete_password</a>(remminafile, key);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, <span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; }</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; }</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; }</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; g_key_file_set_string(gkeyfile, KEYFILE_GROUP_REMMINA, key, value);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; }</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; }</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="comment">/* Avoid storing redundant and deprecated &quot;resolution&quot; field */</span></div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; g_key_file_remove_key(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;resolution&quot;</span>, NULL);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="comment">/* Delete old pre-1.4 ssh keys */</span></div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; g_key_file_remove_key(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;ssh_enabled&quot;</span>, NULL);</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; g_key_file_remove_key(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;save_ssh_server&quot;</span>, NULL);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; g_key_file_remove_key(gkeyfile, KEYFILE_GROUP_REMMINA, <span class="stringliteral">&quot;save_ssh_username&quot;</span>, NULL);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="comment">/* Store gkeyfile to disk (password are already sent to keyring) */</span></div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</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"> 646</span>&#160; <span class="keywordflow">if</span> (g_file_set_contents(remminafile-&gt;filename, content, length, &amp;err)) {</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Profile saved&quot;</span>);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; g_warning(<span class="stringliteral">&quot;Remmina connection profile cannot be saved, with error %d (%s)&quot;</span>, err-&gt;code, err-&gt;message);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; }</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">if</span> (err != NULL)</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; g_error_free (err);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; g_free(content);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <a class="code" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a>(remminafile);</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;</div><div class="line"><a name="l00660"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5"> 660</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *value)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="comment">/* Only change the password in the keyring. This function</span></div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;<span class="comment"> * is a shortcut which avoids updating of date/time of .pref file</span></div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;<span class="comment"> * when possible, and is used by the mpchanger */</span></div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *plugin;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">if</span> (g_hash_table_lookup_extended(remminafile-&gt;spsettings, g_strdup(key), NULL, NULL)) {</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a>();</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">store_password</a>(remminafile, key, value);</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, key, value);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</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;}</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00679"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5"> 679</a></span>&#160;<a class="code" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;{</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *dupfile;</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="keyword">const</span> gchar *key, *value;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; dupfile = <a class="code" href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a>();</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; dupfile-&gt;filename = g_strdup(remminafile-&gt;filename);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; g_hash_table_iter_init(&amp;iter, remminafile-&gt;settings);</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, (gpointer *)&amp;key, (gpointer *)&amp;value))</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(dupfile, key, value);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">return</span> dupfile;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;}</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;<span class="keyword">const</span> gchar *</div><div class="line"><a name="l00697"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331"> 697</a></span>&#160;<a class="code" href="remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *plugin;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>,</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <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="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordflow">if</span> (!plugin)</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="keywordflow">return</span> g_strconcat (REMMINA_APP_ID, <span class="stringliteral">&quot;-symbolic&quot;</span>, NULL);</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE) ? plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">icon_name_ssh</a> : plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">icon_name</a>;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;}</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *</div><div class="line"><a name="l00711"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60"> 711</a></span>&#160;<a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *new_protocol)</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;{</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *tmp;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; tmp = <a class="code" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(remminafile);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; g_free(tmp-&gt;filename);</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; tmp-&gt;filename = NULL;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(tmp, <span class="stringliteral">&quot;protocol&quot;</span>, new_protocol);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">return</span> tmp;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;}</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div><div class="line"><a name="l00723"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4"> 723</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;{</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <a class="code" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a>(remminafile);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; }</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; g_unlink(filename);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;}</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014"> 736</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;{</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="comment">/* Delete all saved secrets for this profile */</span></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; TRACE_CALL(__func__);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *setting_iter;</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *protocol_plugin;</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; gchar *proto;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; protocol_plugin = NULL;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</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; proto = (gchar *)g_hash_table_lookup(remminafile-&gt;settings, <span class="stringliteral">&quot;protocol&quot;</span>);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="keywordflow">if</span> (proto) {</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; protocol_plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>, proto);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">if</span> (protocol_plugin) {</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">basic_settings</a>;</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; g_debug(<span class="stringliteral">&quot;setting name: %s&quot;</span>, setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a>);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="keywordflow">if</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a> == NULL) {</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; g_error(<span class="stringliteral">&quot;Internal error: a setting name in protocol plugin %s is null. Please fix RemminaProtocolSetting struct content.&quot;</span>, proto);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(protocol_plugin, setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a>))</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter), NULL);</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"> 762</span>&#160; setting_iter++;</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; }</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a>;</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(protocol_plugin, setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a>))</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter), NULL);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; setting_iter++;</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; }</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; }</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; }</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;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;gchar *</div><div class="line"><a name="l00789"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe"> 789</a></span>&#160;<a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;{</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; TRACE_CALL(__func__);</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; GFile *file;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; GFileInfo *info;</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"> 796</span>&#160; <span class="keyword">struct </span>timeval tv;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="keyword">struct </span>tm *ptm;</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; <span class="keywordtype">char</span> time_string[256];</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; guint64 mtime;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; gchar *modtime_string;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160;</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; file = g_file_new_for_path(remminafile-&gt;filename);</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"> 805</span>&#160; info = g_file_query_info(file,</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; G_FILE_ATTRIBUTE_TIME_MODIFIED,</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; G_FILE_QUERY_INFO_NONE,</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; NULL,</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; NULL);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; g_object_unref(file);</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; <span class="keywordflow">if</span> (info == NULL) {</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; g_print(<span class="stringliteral">&quot;couldn’t get time info\n&quot;</span>);</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;26/01/1976 23:30:00&quot;</span>;</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; }</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; mtime = g_file_info_get_attribute_uint64(info, G_FILE_ATTRIBUTE_TIME_MODIFIED);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; tv.tv_sec = mtime;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; ptm = localtime(&amp;tv.tv_sec);</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; strftime(time_string, <span class="keyword">sizeof</span>(time_string), <span class="stringliteral">&quot;%F - %T&quot;</span>, ptm);</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; modtime_string = g_locale_to_utf8(time_string, -1, NULL, NULL, NULL);</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; g_object_unref(info);</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">return</span> modtime_string;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;}</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00839"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c"> 839</a></span>&#160;<a class="code" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;{</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <span class="keywordtype">int</span> fd;</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keyword">struct </span>stat st;</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <span class="keywordtype">int</span> r;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; <span class="keywordflow">if</span> ((r = stat(remminafile-&gt;filename, &amp;st)) &lt; 0) {</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">if</span> (errno != ENOENT)</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;stat %s:&quot;</span>, remminafile-&gt;filename);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!r) {</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <a class="code" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a>[0] = st.st_atim;</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; <a class="code" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a>[1] = st.st_mtim;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <span class="keywordflow">if</span> (utimensat(AT_FDCWD, remminafile-&gt;filename, <a class="code" href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a>, 0) &lt; 0)</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;utimensat %s:&quot;</span>, remminafile-&gt;filename);</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; }</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; <span class="keywordflow">if</span> ((fd = open(remminafile-&gt;filename, O_CREAT | O_EXCL, 0644)) &lt; 0)</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;open %s:&quot;</span>, remminafile-&gt;filename);</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; close(fd);</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <a class="code" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(remminafile);</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160;}</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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_af60b8edfa50563ae4c7593efc3deed55"><div class="ttname"><a href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a></div><div class="ttdeci">const gchar * remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00374">remmina_plugin_manager.c:374</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_aef243c58b9e8c778232d5acb32c7729b"><div class="ttname"><a href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a></div><div class="ttdeci">gboolean remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00552">remmina_plugin_manager.c:552</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3fb992fced83e0f1c4e4e3c8d2206be5"><div class="ttname"><a href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a></div><div class="ttdeci">RemminaFile * remmina_file_dup(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00679">remmina_file.c:679</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#l00072">rcw.c:72</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a88f1cb3b53958da5786e5eebf31f95b2"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">remmina_masterthread_exec_data::file_get_string</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@15 file_get_string</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__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</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#l00135">remmina_crypt.c:135</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3793ec19ecbc8c8afc4d1dd8969f880d"><div class="ttname"><a href="remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d">times</a></div><div class="ttdeci">static struct timespec times[2]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00071">remmina_file.c:71</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a52a0986eaf54c9e606ce9cdf8bb57e60"><div class="ttname"><a href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a></div><div class="ttdeci">RemminaFile * remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00711">remmina_file.c:711</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad514c2523ff0c919ddf535e3dbad9f3a"><div class="ttname"><a href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a></div><div class="ttdeci">gchar * remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00484">remmina_file.c:484</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<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 file has been modified. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00789">remmina_file.c:789</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3feeafd4956b364975aef178ef99b7a6"><div class="ttname"><a href="remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6">upgrade_sshkeys_202001</a></div><div class="ttdeci">static void upgrade_sshkeys_202001(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00265">remmina_file.c:265</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a519a411cb2091da2176258d87bcea6d4"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin::is_service_available</a></div><div class="ttdeci">gboolean(* is_service_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00138">plugin.h:138</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a5c61bfd8ead834bcab75c643514171ef"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">_RemminaSecretPlugin::delete_password</a></div><div class="ttdeci">void(* delete_password)(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00141">plugin.h:141</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ac952f8ddb715314f11cef1ccc513fb7e"><div class="ttname"><a href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a></div><div class="ttdeci">void remmina_file_generate_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00108">remmina_file.c:108</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</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="remmina__public_8c_html_aaf3fdb980c24cd06965b85ebcdd79173"><div class="ttname"><a href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a></div><div class="ttdeci">int remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00691">remmina_public.c:691</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#l00129">plugin.h:129</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#l00494">remmina_file.c:494</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#l00209">remmina_file.c:209</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</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#l01373">remmina_main.c:1373</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#l00069">plugin.h:69</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html"><div class="ttname"><a href="remmina__utils_8h.html">remmina_utils.h</a></div><div class="ttdoc">General utility functions, non-GTK related. </div></div>
+<div class="ttc" id="remmina__file_8c_html_ab03b042504c09c1ad880ac126a703114"><div class="ttname"><a href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a></div><div class="ttdeci">void remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00176">remmina_file.c:176</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__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</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="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#l00094">remmina_crypt.c:94</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_aaa4bb101e0da125111dedf732a34b629"><div class="ttname"><a href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629">_RemminaSecretPlugin::get_password</a></div><div class="ttdeci">gchar *(* get_password)(RemminaFile *remminafile, const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00140">plugin.h:140</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#l01380">remmina_main.c:1380</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#l00518">remmina_file.c:518</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#l00534">remmina_file.c:534</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#l00723">remmina_file.c:723</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aae09a7e2c978cc36e85d0f295518978d"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">_RemminaProtocolPlugin::basic_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * basic_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00070">plugin.h:70</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_aa65bc30beb59d607ba430d966e7e27f5"><div class="ttname"><a href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a></div><div class="ttdeci">gchar * remmina_file_get_datadir(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00054">remmina_file_manager.c:54</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3d19095f74e9b7c92d74f11bd5a39a8c"><div class="ttname"><a href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a></div><div class="ttdeci">void remmina_file_touch(RemminaFile *remminafile)</div><div class="ttdoc">Update the atime and mtime of a given filename. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00839">remmina_file.c:839</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a6274d44b592a54162ff583135e55ffc9"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting::type</a></div><div class="ttdeci">RemminaProtocolSettingType type</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00095">types.h:95</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</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#l00090">remmina_file.c:90</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa1544a98f03088dc260ed98f2deac94f"><div class="ttname"><a href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref::remmina_file_name</a></div><div class="ttdeci">const gchar * remmina_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00114">remmina_pref.h:114</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_ac804e6111e538ee2fa425b8b6fd1fb66"><div class="ttname"><a href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a></div><div class="ttdeci">guint remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00193">remmina_utils.c:193</a></div></div>
+<div class="ttc" id="remmina__crypt_8h_html"><div class="ttname"><a href="remmina__crypt_8h.html">remmina_crypt.h</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3be28ff7f5a9b44dc47f92b883a85ac5"><div class="ttname"><a href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a></div><div class="ttdeci">void remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00660">remmina_file.c:660</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#l00359">remmina_plugin_manager.c:359</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a5a925730ef351cc44ddeebad6415c2e6"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">_RemminaSecretPlugin::store_password</a></div><div class="ttdeci">void(* store_password)(RemminaFile *remminafile, const gchar *key, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00139">plugin.h:139</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="struct___remmina_protocol_plugin_html_aceb00d9dff794500ccb04a1373eb32db"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin::advanced_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * advanced_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00071">plugin.h:71</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ac1685edf35a793a396ce039d7eec5343"><div class="ttname"><a href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a></div><div class="ttdeci">RemminaFile * remmina_file_copy(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00191">remmina_file.c:191</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a42231fba69c82eb51a4e210c2de76960"><div class="ttname"><a href="remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960">upgrade_sshkeys_202001_mig_common_setting</a></div><div class="ttdeci">static void upgrade_sshkeys_202001_mig_common_setting(RemminaFile *remminafile, gboolean protocol_is_ssh, gboolean ssh_enabled, gchar *suffix)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00239">remmina_file.c:239</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a9552c70a10eea2b8263dbc7d05e2fb10"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">_RemminaProtocolPlugin::icon_name</a></div><div class="ttdeci">const gchar * icon_name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00068">plugin.h:68</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a503e53fe49430a5ed310c342c946c014"><div class="ttname"><a href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a></div><div class="ttdeci">void remmina_file_unsave_passwords(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00736">remmina_file.c:736</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#l00697">remmina_file.c:697</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_adab087b7139756f029020a87a5438cfa"><div class="ttname"><a href="remmina__file_8c.html#adab087b7139756f029020a87a5438cfa">remmina_file_new_empty</a></div><div class="ttdeci">static RemminaFile * remmina_file_new_empty(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00074">remmina_file.c:74</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a74951c1067a1a5e1341f5e1c1206dec6"><div class="ttname"><a href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a></div><div class="ttdeci">void remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00429">remmina_file.c:429</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ac4cd339607204c5f478727e2a0c04857"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">_RemminaProtocolSetting::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00096">types.h:96</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file_8c.html">remmina_file.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file_8h.html b/docs/remmina__file_8h.html
new file mode 100644
index 000000000..853718979
--- /dev/null
+++ b/docs/remmina__file_8h.html
@@ -0,0 +1,831 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file.html">_RemminaFile</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a99fb83031ce9923c84392b4e92f956b5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>,
+<a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a>,
+<a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a>,
+<a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a>
+<br />
+ }</td></tr>
+<tr class="separator:a99fb83031ce9923c84392b4e92f956b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5e421ba636d34e21bba5ece463e98892"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a> (void)</td></tr>
+<tr class="separator:a5e421ba636d34e21bba5ece463e98892"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1685edf35a793a396ce039d7eec5343"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a> (const gchar *filename)</td></tr>
+<tr class="separator:ac1685edf35a793a396ce039d7eec5343"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac952f8ddb715314f11cef1ccc513fb7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:ac952f8ddb715314f11cef1ccc513fb7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab03b042504c09c1ad880ac126a703114"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *filename)</td></tr>
+<tr class="separator:ab03b042504c09c1ad880ac126a703114"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1e4f3a0f64cd98e301044b6c38a1f1d"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:ad1e4f3a0f64cd98e301044b6c38a1f1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1cc2d7f827f7d64c7fd3edf10e9383e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a> (const gchar *filename)</td></tr>
+<tr class="separator:ac1cc2d7f827f7d64c7fd3edf10e9383e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85ca1ca2d0bf9ef29e490c6f4527a954"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, const gchar *value)</td></tr>
+<tr class="separator:a85ca1ca2d0bf9ef29e490c6f4527a954"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74951c1067a1a5e1341f5e1c1206dec6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gchar *value)</td></tr>
+<tr class="separator:a74951c1067a1a5e1341f5e1c1206dec6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8eb1b213d9d08c6ad13683ce05f4355e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:a8eb1b213d9d08c6ad13683ce05f4355e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad514c2523ff0c919ddf535e3dbad9f3a"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:ad514c2523ff0c919ddf535e3dbad9f3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd8b12f3d84b4e201b9f465d5b8e0d03"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:afd8b12f3d84b4e201b9f465d5b8e0d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af153b0d289ac93f6ecdaa15d5f3b9b8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint value)</td></tr>
+<tr class="separator:af153b0d289ac93f6ecdaa15d5f3b9b8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4884356c195dcfb4ceacf641a1e74e66"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint default_value)</td></tr>
+<tr class="separator:a4884356c195dcfb4ceacf641a1e74e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3be28ff7f5a9b44dc47f92b883a85ac5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a3be28ff7f5a9b44dc47f92b883a85ac5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1943b63633f87fd2db0a710341c4827b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b">remmina_file_remove_key</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:a1943b63633f87fd2db0a710341c4827b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c893a5deec9bc446bd89cc9973416c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a8c893a5deec9bc446bd89cc9973416c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fb992fced83e0f1c4e4e3c8d2206be5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a3fb992fced83e0f1c4e4e3c8d2206be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2feb8e9e32f3ff4e2fac836e67a77331"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a2feb8e9e32f3ff4e2fac836e67a77331"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52a0986eaf54c9e606ce9cdf8bb57e60"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *new_protocol)</td></tr>
+<tr class="separator:a52a0986eaf54c9e606ce9cdf8bb57e60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55f66f2bb81bf427d6837e1adb7fe1d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a> (const gchar *filename)</td></tr>
+<tr class="separator:a55f66f2bb81bf427d6837e1adb7fe1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a503e53fe49430a5ed310c342c946c014"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a503e53fe49430a5ed310c342c946c014"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96abbfdc183d1e82fdffd6445d611ffe"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="memdesc:a96abbfdc183d1e82fdffd6445d611ffe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the string date of the last time a file has been modified. <a href="#a96abbfdc183d1e82fdffd6445d611ffe">More...</a><br /></td></tr>
+<tr class="separator:a96abbfdc183d1e82fdffd6445d611ffe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="memdesc:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the atime and mtime of a given filename. <a href="#a3d19095f74e9b7c92d74f11bd5a39a8c">More...</a><br /></td></tr>
+<tr class="separator:a3d19095f74e9b7c92d74f11bd5a39a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a99fb83031ce9923c84392b4e92f956b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99fb83031ce9923c84392b4e92f956b5">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe"></a>SSH_AUTH_PASSWORD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930"></a>SSH_AUTH_PUBLICKEY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e"></a>SSH_AUTH_AGENT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e"></a>SSH_AUTH_AUTO_PUBLICKEY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a"></a>SSH_AUTH_GSSAPI&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ac1685edf35a793a396ce039d7eec5343"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1685edf35a793a396ce039d7eec5343">&#9670;&nbsp;</a></span>remmina_file_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_copy </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00191">191</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a55f66f2bb81bf427d6837e1adb7fe1d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55f66f2bb81bf427d6837e1adb7fe1d4">&#9670;&nbsp;</a></span>remmina_file_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_delete </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00723">723</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fb992fced83e0f1c4e4e3c8d2206be5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fb992fced83e0f1c4e4e3c8d2206be5">&#9670;&nbsp;</a></span>remmina_file_dup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_dup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00679">679</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a52a0986eaf54c9e606ce9cdf8bb57e60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52a0986eaf54c9e606ce9cdf8bb57e60">&#9670;&nbsp;</a></span>remmina_file_dup_temp_protocol()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_dup_temp_protocol </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_protocol</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00711">711</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="afd8b12f3d84b4e201b9f465d5b8e0d03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd8b12f3d84b4e201b9f465d5b8e0d03">&#9670;&nbsp;</a></span>remmina_file_format_properties()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_format_properties </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00494">494</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">&#9670;&nbsp;</a></span>remmina_file_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00548">548</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ac952f8ddb715314f11cef1ccc513fb7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac952f8ddb715314f11cef1ccc513fb7e">&#9670;&nbsp;</a></span>remmina_file_generate_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_generate_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>functions we can use g_strstrip( string ) Removes leading and trailing whitespace from a string g_strdelimit (str, invalid_chars, '-')) Convert each invalid_chars in a hyphen g_ascii_strdown(string) all lowercase To be safe we should remove control characters as well (but I'm lazy) <a href="https://rosettacode.org/wiki/Strip_control_codes_and_extended_characters_from_a_string#C">https://rosettacode.org/wiki/Strip_control_codes_and_extended_characters_from_a_string#C</a> g_utf8_strncpy (gchar *dest, const gchar *src, gsize n); copies a given number of characters instead of a given number of bytes. The src string must be valid UTF-8 encoded text. g_utf8_validate (const gchar *str, gssize max_len, const gchar **end); Validates UTF-8 encoded text.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00108">108</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a96abbfdc183d1e82fdffd6445d611ffe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96abbfdc183d1e82fdffd6445d611ffe">&#9670;&nbsp;</a></span>remmina_file_get_datetime()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_datetime </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the string date of the last time a file has been modified. </p>
+<p>This is used to return the modification date of a file and it’s used to return the modification date and time of a givwn remmina file. If it fails it will return "26/01/1976 23:30:00", that is just a date to don't return an empty string (challenge: what was happened that day at that time?). </p><dl class="section return"><dt>Returns</dt><dd>A date string in the form "%d/%m/%Y %H:%M:%S". </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00789">789</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ad1e4f3a0f64cd98e301044b6c38a1f1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1e4f3a0f64cd98e301044b6c38a1f1d">&#9670;&nbsp;</a></span>remmina_file_get_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00184">184</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a2feb8e9e32f3ff4e2fac836e67a77331"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2feb8e9e32f3ff4e2fac836e67a77331">&#9670;&nbsp;</a></span>remmina_file_get_icon_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_icon_name </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00697">697</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a4884356c195dcfb4ceacf641a1e74e66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4884356c195dcfb4ceacf641a1e74e66">&#9670;&nbsp;</a></span>remmina_file_get_int()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_file_get_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00524">524</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ad514c2523ff0c919ddf535e3dbad9f3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad514c2523ff0c919ddf535e3dbad9f3a">&#9670;&nbsp;</a></span>remmina_file_get_secret()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_secret </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00484">484</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a8eb1b213d9d08c6ad13683ce05f4355e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8eb1b213d9d08c6ad13683ce05f4355e">&#9670;&nbsp;</a></span>remmina_file_get_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_file_get_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00449">449</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1cc2d7f827f7d64c7fd3edf10e9383e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1cc2d7f827f7d64c7fd3edf10e9383e">&#9670;&nbsp;</a></span>remmina_file_load()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_load </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00327">327</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e421ba636d34e21bba5ece463e98892"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e421ba636d34e21bba5ece463e98892">&#9670;&nbsp;</a></span>remmina_file_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00090">90</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a1943b63633f87fd2db0a710341c4827b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1943b63633f87fd2db0a710341c4827b">&#9670;&nbsp;</a></span>remmina_file_remove_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_file_remove_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8c893a5deec9bc446bd89cc9973416c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c893a5deec9bc446bd89cc9973416c7">&#9670;&nbsp;</a></span>remmina_file_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_save </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00561">561</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="ab03b042504c09c1ad880ac126a703114"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab03b042504c09c1ad880ac126a703114">&#9670;&nbsp;</a></span>remmina_file_set_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_filename </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00176">176</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="af153b0d289ac93f6ecdaa15d5f3b9b8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af153b0d289ac93f6ecdaa15d5f3b9b8c">&#9670;&nbsp;</a></span>remmina_file_set_int()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00518">518</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a85ca1ca2d0bf9ef29e490c6f4527a954"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85ca1ca2d0bf9ef29e490c6f4527a954">&#9670;&nbsp;</a></span>remmina_file_set_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00423">423</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a74951c1067a1a5e1341f5e1c1206dec6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74951c1067a1a5e1341f5e1c1206dec6">&#9670;&nbsp;</a></span>remmina_file_set_string_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_set_string_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3be28ff7f5a9b44dc47f92b883a85ac5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3be28ff7f5a9b44dc47f92b883a85ac5">&#9670;&nbsp;</a></span>remmina_file_store_secret_plugin_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_store_secret_plugin_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00660">660</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d19095f74e9b7c92d74f11bd5a39a8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d19095f74e9b7c92d74f11bd5a39a8c">&#9670;&nbsp;</a></span>remmina_file_touch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_touch </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Update the atime and mtime of a given filename. </p>
+<p>Function used to update the atime and mtime of a given remmina file, partially taken from suckless sbase </p><dl class="section see"><dt>See also</dt><dd><a href="https://git.suckless.org/sbase/tree/touch.c">https://git.suckless.org/sbase/tree/touch.c</a> </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00839">839</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+<a id="a503e53fe49430a5ed310c342c946c014"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a503e53fe49430a5ed310c342c946c014">&#9670;&nbsp;</a></span>remmina_file_unsave_passwords()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_unsave_passwords </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8c_source.html#l00736">736</a> of file <a class="el" href="remmina__file_8c_source.html">remmina_file.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file_8h.html">remmina_file.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file_8h.js b/docs/remmina__file_8h.js
new file mode 100644
index 000000000..b99cd7c02
--- /dev/null
+++ b/docs/remmina__file_8h.js
@@ -0,0 +1,33 @@
+var remmina__file_8h =
+[
+ [ "_RemminaFile", "struct___remmina_file.html", "struct___remmina_file" ],
+ [ "SSH_AUTH_PASSWORD", "remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe", null ],
+ [ "SSH_AUTH_PUBLICKEY", "remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930", null ],
+ [ "SSH_AUTH_AGENT", "remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e", null ],
+ [ "SSH_AUTH_AUTO_PUBLICKEY", "remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e", null ],
+ [ "SSH_AUTH_GSSAPI", "remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a", null ],
+ [ "remmina_file_copy", "remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343", null ],
+ [ "remmina_file_delete", "remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4", null ],
+ [ "remmina_file_dup", "remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5", null ],
+ [ "remmina_file_dup_temp_protocol", "remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60", null ],
+ [ "remmina_file_format_properties", "remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03", null ],
+ [ "remmina_file_free", "remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7", null ],
+ [ "remmina_file_generate_filename", "remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e", null ],
+ [ "remmina_file_get_datetime", "remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe", null ],
+ [ "remmina_file_get_filename", "remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d", null ],
+ [ "remmina_file_get_icon_name", "remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331", null ],
+ [ "remmina_file_get_int", "remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66", null ],
+ [ "remmina_file_get_secret", "remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a", null ],
+ [ "remmina_file_get_string", "remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e", null ],
+ [ "remmina_file_load", "remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e", null ],
+ [ "remmina_file_new", "remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892", null ],
+ [ "remmina_file_remove_key", "remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b", null ],
+ [ "remmina_file_save", "remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7", null ],
+ [ "remmina_file_set_filename", "remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114", null ],
+ [ "remmina_file_set_int", "remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c", null ],
+ [ "remmina_file_set_string", "remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954", null ],
+ [ "remmina_file_set_string_ref", "remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6", null ],
+ [ "remmina_file_store_secret_plugin_password", "remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5", null ],
+ [ "remmina_file_touch", "remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c", null ],
+ [ "remmina_file_unsave_passwords", "remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file_8h_source.html b/docs/remmina__file_8h_source.html
new file mode 100644
index 000000000..ce7d6921a
--- /dev/null
+++ b/docs/remmina__file_8h_source.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file_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-2020 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;<a class="code" href="types_8h.html">remmina/types.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_file.html"> 43</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_file.html">_RemminaFile</a> {</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07"> 44</a></span>&#160; gchar * <a class="code" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd"> 45</a></span>&#160; GHashTable * <a class="code" href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd">settings</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5"> 46</a></span>&#160; GHashTable * <a class="code" href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5">spsettings</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488"> 47</a></span>&#160; gboolean <a class="code" href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488">prevent_saving</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930"> 51</a></span>&#160; <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>, <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a>, <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a>, <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>, <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;};</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define TOOLBAR_OPACITY_LEVEL 8</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define TOOLBAR_OPACITY_MIN 0.2</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* Create a empty .remmina file */</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a>(<span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a>);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a>);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Load a new .remmina file and return the allocated RemminaFile object */</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(<span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a>);</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* Settings get/set functions */</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, <span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gchar *value);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;gchar *<a class="code" href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;gchar *<a class="code" href="remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint value);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;gint <a class="code" href="remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting, gint default_value);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;gboolean <a class="code" href="remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b">remmina_file_remove_key</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *setting);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* Create or overwrite the .remmina file */</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">/* Free the RemminaFile object */</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* Duplicate a RemminaFile object */</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* Get the protocol icon name */</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331">remmina_file_get_icon_name</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Duplicate a temporary RemminaFile and change the protocol */</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <span class="keyword">const</span> gchar *new_protocol);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Delete a .remmina file */</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(<span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a>);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Delete a &quot;password&quot; field and save into .remmina file */</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Function used to update the atime and mtime of a given remmina file, partially</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> * taken from suckless sbase */</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;gchar *<a class="code" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment">/* Function used to update the atime and mtime of a given remmina file */</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_file_html_a60428714b1064110accd7752aed1f8a5"><div class="ttname"><a href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5">_RemminaFile::spsettings</a></div><div class="ttdeci">GHashTable * spsettings</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00046">remmina_file.h:46</a></div></div>
+<div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a74951c1067a1a5e1341f5e1c1206dec6"><div class="ttname"><a href="remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a></div><div class="ttdeci">void remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00429">remmina_file.c:429</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a55f66f2bb81bf427d6837e1adb7fe1d4"><div class="ttname"><a href="remmina__file_8h.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#l00723">remmina_file.c:723</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a3d19095f74e9b7c92d74f11bd5a39a8c"><div class="ttname"><a href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a></div><div class="ttdeci">void remmina_file_touch(RemminaFile *remminafile)</div><div class="ttdoc">Update the atime and mtime of a given filename. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00839">remmina_file.c:839</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a5e421ba636d34e21bba5ece463e98892"><div class="ttname"><a href="remmina__file_8h.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#l00090">remmina_file.c:90</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a1943b63633f87fd2db0a710341c4827b"><div class="ttname"><a href="remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b">remmina_file_remove_key</a></div><div class="ttdeci">gboolean remmina_file_remove_key(RemminaFile *remminafile, const gchar *setting)</div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ac1685edf35a793a396ce039d7eec5343"><div class="ttname"><a href="remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a></div><div class="ttdeci">RemminaFile * remmina_file_copy(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00191">remmina_file.c:191</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a52a0986eaf54c9e606ce9cdf8bb57e60"><div class="ttname"><a href="remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a></div><div class="ttdeci">RemminaFile * remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00711">remmina_file.c:711</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a96abbfdc183d1e82fdffd6445d611ffe"><div class="ttname"><a href="remmina__file_8h.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 file has been modified. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00789">remmina_file.c:789</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a3be28ff7f5a9b44dc47f92b883a85ac5"><div class="ttname"><a href="remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a></div><div class="ttdeci">void remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00660">remmina_file.c:660</a></div></div>
+<div class="ttc" id="struct___remmina_file_html_af70ba06ac6baad2b128d4818a4aa6488"><div class="ttname"><a href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488">_RemminaFile::prevent_saving</a></div><div class="ttdeci">gboolean prevent_saving</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00047">remmina_file.h:47</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ab03b042504c09c1ad880ac126a703114"><div class="ttname"><a href="remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a></div><div class="ttdeci">void remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00176">remmina_file.c:176</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a3fb992fced83e0f1c4e4e3c8d2206be5"><div class="ttname"><a href="remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a></div><div class="ttdeci">RemminaFile * remmina_file_dup(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00679">remmina_file.c:679</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a4884356c195dcfb4ceacf641a1e74e66"><div class="ttname"><a href="remmina__file_8h.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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ac952f8ddb715314f11cef1ccc513fb7e"><div class="ttname"><a href="remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a></div><div class="ttdeci">void remmina_file_generate_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00108">remmina_file.c:108</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_af153b0d289ac93f6ecdaa15d5f3b9b8c"><div class="ttname"><a href="remmina__file_8h.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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_afd8b12f3d84b4e201b9f465d5b8e0d03"><div class="ttname"><a href="remmina__file_8h.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#l00494">remmina_file.c:494</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a8c893a5deec9bc446bd89cc9973416c7"><div class="ttname"><a href="remmina__file_8h.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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a8eb1b213d9d08c6ad13683ce05f4355e"><div class="ttname"><a href="remmina__file_8h.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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a503e53fe49430a5ed310c342c946c014"><div class="ttname"><a href="remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a></div><div class="ttdeci">void remmina_file_unsave_passwords(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00736">remmina_file.c:736</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a2feb8e9e32f3ff4e2fac836e67a77331"><div class="ttname"><a href="remmina__file_8h.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#l00697">remmina_file.c:697</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ac1cc2d7f827f7d64c7fd3edf10e9383e"><div class="ttname"><a href="remmina__file_8h.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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="struct___remmina_file_html_a5edb4595f0c83cae611b557bfba02a07"><div class="ttname"><a href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">_RemminaFile::filename</a></div><div class="ttdeci">gchar * filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00044">remmina_file.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_file_html"><div class="ttname"><a href="struct___remmina_file.html">_RemminaFile</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00043">remmina_file.h:43</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ad514c2523ff0c919ddf535e3dbad9f3a"><div class="ttname"><a href="remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a></div><div class="ttdeci">gchar * remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00484">remmina_file.c:484</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<div class="ttc" id="struct___remmina_file_html_aa090f1969b90157a3df6067e8e13ffcd"><div class="ttname"><a href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd">_RemminaFile::settings</a></div><div class="ttdeci">GHashTable * settings</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00045">remmina_file.h:45</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file_8h.html">remmina_file.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__editor_8c.html b/docs/remmina__file__editor_8c.html
new file mode 100644
index 000000000..a1bc3c7ac
--- /dev/null
+++ b/docs/remmina__file__editor_8c.html
@@ -0,0 +1,1917 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_editor.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__editor_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file_editor.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file__editor_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abb7466f51c11427405a54c94767a52de"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de">G_DEFINE_TYPE</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a>, remmina_file_editor, GTK_TYPE_DIALOG)</td></tr>
+<tr class="separator:abb7466f51c11427405a54c94767a52de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f1406c817183d78a801668a10d73e0b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b">remmina_file_editor_class_init</a> (<a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a> *klass)</td></tr>
+<tr class="separator:a7f1406c817183d78a801668a10d73e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3acf0470349d706d15fa751e982fd05"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor_browse_avahi</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:aa3acf0470349d706d15fa751e982fd05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a880e8e6aee571b91eeb7f5d2f60e210b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor_on_realize</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a880e8e6aee571b91eeb7f5d2f60e210b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6eb0bcee764064d6a7dd84c015d9ed4f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor_destroy</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a6eb0bcee764064d6a7dd84c015d9ed4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a112a0fd5bf7d5693b9cb717c850637cb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a> (GtkToggleButton *togglebutton, GtkWidget *widget)</td></tr>
+<tr class="separator:a112a0fd5bf7d5693b9cb717c850637cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3df3718727200d865f9f977435db30ea"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor_create_notebook_container</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a3df3718727200d865f9f977435db30ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecbc005c39cdf4fab4779090f11a3556"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, const gchar *stock_id, const gchar *label, gint rows, gint cols)</td></tr>
+<tr class="separator:aecbc005c39cdf4fab4779090f11a3556"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ea3f796c3a46aeb01b2f13f4a3d40a9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled</a> (GtkToggleButton *togglebutton, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a5ea3f796c3a46aeb01b2f13f4a3d40a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0cf3a5b5f5f83e14f9d73c4f2460dca"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled</a> (GtkToggleButton *togglebutton, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:ad0cf3a5b5f5f83e14f9d73c4f2460dca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a7f3ce69255bf413ef8fa841af3d019"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor_ssh_tunnel_enabled_check_on_toggled</a> (GtkToggleButton *togglebutton, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> ssh_setting)</td></tr>
+<tr class="separator:a8a7f3ce69255bf413ef8fa841af3d019"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab39d33637d0059aa67c896b90bc316f1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor_create_ssh_privatekey</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint column)</td></tr>
+<tr class="separator:ab39d33637d0059aa67c896b90bc316f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7edb004da0ecc48277c1b656f2649ae"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor_create_server</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *setting, GtkWidget *grid, gint row)</td></tr>
+<tr class="separator:af7edb004da0ecc48277c1b656f2649ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03bb3c4cc7a4be4eeee29dc287e33a23"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor_create_password</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value)</td></tr>
+<tr class="separator:a03bb3c4cc7a4be4eeee29dc287e33a23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51a45d872a9e7a0b06d25aef592a6e3a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor_update_resolution</a> (GtkWidget *widget, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a51a45d872a9e7a0b06d25aef592a6e3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51b9fe336d9068ffc488ef55adc9eac4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor_browse_resolution</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a51b9fe336d9068ffc488ef55adc9eac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afad358c6e3a5918416c6eb036157d8e5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor_create_resolution</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *setting, GtkWidget *grid, gint row)</td></tr>
+<tr class="separator:afad358c6e3a5918416c6eb036157d8e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15ee56057b40b31f40520048470f404b"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value)</td></tr>
+<tr class="separator:a15ee56057b40b31f40520048470f404b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad80ab042ac78231e88473aab8cfab877"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor_create_select</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gpointer *list, const gchar *value)</td></tr>
+<tr class="separator:ad80ab042ac78231e88473aab8cfab877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbc933a1aea81d64db71de8ad5ae1355"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor_create_combo</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *list, const gchar *value)</td></tr>
+<tr class="separator:afbc933a1aea81d64db71de8ad5ae1355"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0688fb26bba7dbc0708949bd9993fcb9"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor_create_check</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint top, const gchar *label, gboolean value)</td></tr>
+<tr class="separator:a0688fb26bba7dbc0708949bd9993fcb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afadc998c0d7ea8d1bf2883e336e18f89"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor_create_chooser</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value, gint type)</td></tr>
+<tr class="separator:afadc998c0d7ea8d1bf2883e336e18f89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a727f967cf81d4af3f953046b0c4cf08d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, GtkWidget *grid, const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *settings)</td></tr>
+<tr class="separator:a727f967cf81d4af3f953046b0c4cf08d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6e562792eb63ec43ed7f9a4b6687c23"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor_create_ssh_tunnel_tab</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe, <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> ssh_setting)</td></tr>
+<tr class="separator:ab6e562792eb63ec43ed7f9a4b6687c23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6415f73260076747c4f933af7f9f4b38"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor_create_all_settings</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a6415f73260076747c4f933af7f9f4b38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a333de350f1b07add2d0fd06320c80d16"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor_protocol_combo_on_changed</a> (GtkComboBox *combo, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a333de350f1b07add2d0fd06320c80d16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99984deb4b5a3b873b26c0c9cf8268b7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor_save_ssh_tunnel_tab</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a99984deb4b5a3b873b26c0c9cf8268b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a88820e6278cc50eb59a6333c7f40dd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor_update_settings</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a1a88820e6278cc50eb59a6333c7f40dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5583c8b2ff4cfa003d7bdc69cff0067"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:ab5583c8b2ff4cfa003d7bdc69cff0067"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcc5ee6fcd22686b716fbe595cb210a6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor_on_default</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:afcc5ee6fcd22686b716fbe595cb210a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2a5cf9cdcf640986e245eb04be9c4ad"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor_on_save</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:ac2a5cf9cdcf640986e245eb04be9c4ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73b8581fd1fd77532b748d91a2951f25"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor_on_connect</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a73b8581fd1fd77532b748d91a2951f25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57224f3f69f04f398de563b71be6b18e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor_on_save_connect</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a57224f3f69f04f398de563b71be6b18e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa55ab55c6806aef6765eb01577365f3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor_on_cancel</a> (GtkWidget *button, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:aaa55ab55c6806aef6765eb01577365f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9afd8d41c66f547320930eb331f3124d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d">remmina_file_editor_init</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a9afd8d41c66f547320930eb331f3124d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc37e2e9dbe8f0c8bcf1a76d0c54ea1b"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor_iterate_protocol</a> (gchar *protocol, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, gpointer data)</td></tr>
+<tr class="separator:afc37e2e9dbe8f0c8bcf1a76d0c54ea1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add382dd8f40444b928e78b293a86a257"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:add382dd8f40444b928e78b293a86a257"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a287b79ac0e199393f391655ab5cbb55b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor_entry_on_changed</a> (GtkEditable *editable, <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a287b79ac0e199393f391655ab5cbb55b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3866832d550ceac91d608900df4c8056"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a3866832d550ceac91d608900df4c8056"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08327d6951c345808628dbb5784aba06"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a08327d6951c345808628dbb5784aba06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4e8657ca722e4cce3f3c42c0cfec51e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a> (void)</td></tr>
+<tr class="separator:aa4e8657ca722e4cce3f3c42c0cfec51e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab563344276cbcdf0fcea05b0b64c7aeb"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a> (const gchar *server, const gchar *protocol)</td></tr>
+<tr class="separator:ab563344276cbcdf0fcea05b0b64c7aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5c50852f8569f075eec5d5db30c2ebf"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa5c50852f8569f075eec5d5db30c2ebf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9345cfe3fb32d326b652e96ee55eaea"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa9345cfe3fb32d326b652e96ee55eaea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abb7466f51c11427405a54c94767a52de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb7466f51c11427405a54c94767a52de">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_file_editor&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_DIALOG&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3acf0470349d706d15fa751e982fd05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3acf0470349d706d15fa751e982fd05">&#9670;&nbsp;</a></span>remmina_file_editor_browse_avahi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_browse_avahi </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00153">153</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a51b9fe336d9068ffc488ef55adc9eac4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51b9fe336d9068ffc488ef55adc9eac4">&#9670;&nbsp;</a></span>remmina_file_editor_browse_resolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_browse_resolution </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00490">490</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a112a0fd5bf7d5693b9cb717c850637cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a112a0fd5bf7d5693b9cb717c850637cb">&#9670;&nbsp;</a></span>remmina_file_editor_button_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_button_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00212">212</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="add382dd8f40444b928e78b293a86a257"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add382dd8f40444b928e78b293a86a257">&#9670;&nbsp;</a></span>remmina_file_editor_check_profile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_editor_check_profile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01384">1384</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a7f1406c817183d78a801668a10d73e0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f1406c817183d78a801668a10d73e0b">&#9670;&nbsp;</a></span>remmina_file_editor_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00146">146</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a6415f73260076747c4f933af7f9f4b38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6415f73260076747c4f933af7f9f4b38">&#9670;&nbsp;</a></span>remmina_file_editor_create_all_settings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_all_settings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01009">1009</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a0688fb26bba7dbc0708949bd9993fcb9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0688fb26bba7dbc0708949bd9993fcb9">&#9670;&nbsp;</a></span>remmina_file_editor_create_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>top</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00653">653</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="afadc998c0d7ea8d1bf2883e336e18f89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afadc998c0d7ea8d1bf2883e336e18f89">&#9670;&nbsp;</a></span>remmina_file_editor_create_chooser()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_chooser </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00670">670</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="afbc933a1aea81d64db71de8ad5ae1355"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afbc933a1aea81d64db71de8ad5ae1355">&#9670;&nbsp;</a></span>remmina_file_editor_create_combo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_combo </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00633">633</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a3df3718727200d865f9f977435db30ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3df3718727200d865f9f977435db30ea">&#9670;&nbsp;</a></span>remmina_file_editor_create_notebook_container()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_notebook_container </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00218">218</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aecbc005c39cdf4fab4779090f11a3556"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecbc005c39cdf4fab4779090f11a3556">&#9670;&nbsp;</a></span>remmina_file_editor_create_notebook_tab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_notebook_tab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>stock_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>rows</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>cols</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00240">240</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a03bb3c4cc7a4be4eeee29dc287e33a23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03bb3c4cc7a4be4eeee29dc287e33a23">&#9670;&nbsp;</a></span>remmina_file_editor_create_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00447">447</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="afad358c6e3a5918416c6eb036157d8e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afad358c6e3a5918416c6eb036157d8e5">&#9670;&nbsp;</a></span>remmina_file_editor_create_resolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_resolution </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00506">506</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ad80ab042ac78231e88473aab8cfab877"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad80ab042ac78231e88473aab8cfab877">&#9670;&nbsp;</a></span>remmina_file_editor_create_select()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_select </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gpointer *&#160;</td>
+ <td class="paramname"><em>list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00614">614</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="af7edb004da0ecc48277c1b656f2649ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7edb004da0ecc48277c1b656f2649ae">&#9670;&nbsp;</a></span>remmina_file_editor_create_server()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_server </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td>
+ <td class="paramname"><em>setting</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00397">397</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a727f967cf81d4af3f953046b0c4cf08d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a727f967cf81d4af3f953046b0c4cf08d">&#9670;&nbsp;</a></span>remmina_file_editor_create_settings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_settings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td>
+ <td class="paramname"><em>settings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00705">705</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ab39d33637d0059aa67c896b90bc316f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab39d33637d0059aa67c896b90bc316f1">&#9670;&nbsp;</a></span>remmina_file_editor_create_ssh_privatekey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_ssh_privatekey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>column</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00352">352</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ab6e562792eb63ec43ed7f9a4b6687c23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6e562792eb63ec43ed7f9a4b6687c23">&#9670;&nbsp;</a></span>remmina_file_editor_create_ssh_tunnel_tab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_create_ssh_tunnel_tab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a>&#160;</td>
+ <td class="paramname"><em>ssh_setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00823">823</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a15ee56057b40b31f40520048470f404b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15ee56057b40b31f40520048470f404b">&#9670;&nbsp;</a></span>remmina_file_editor_create_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_file_editor_create_text </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>label</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00585">585</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a6eb0bcee764064d6a7dd84c015d9ed4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6eb0bcee764064d6a7dd84c015d9ed4f">&#9670;&nbsp;</a></span>remmina_file_editor_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00204">204</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a287b79ac0e199393f391655ab5cbb55b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a287b79ac0e199393f391655ab5cbb55b">&#9670;&nbsp;</a></span>remmina_file_editor_entry_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_entry_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkEditable *&#160;</td>
+ <td class="paramname"><em>editable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01394">1394</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a3866832d550ceac91d608900df4c8056"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3866832d550ceac91d608900df4c8056">&#9670;&nbsp;</a></span>remmina_file_editor_file_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_editor_file_save </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01411">1411</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a9afd8d41c66f547320930eb331f3124d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9afd8d41c66f547320930eb331f3124d">&#9670;&nbsp;</a></span>remmina_file_editor_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01319">1319</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="afc37e2e9dbe8f0c8bcf1a76d0c54ea1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">&#9670;&nbsp;</a></span>remmina_file_editor_iterate_protocol()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_file_editor_iterate_protocol </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01362">1362</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa4e8657ca722e4cce3f3c42c0cfec51e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa4e8657ca722e4cce3f3c42c0cfec51e">&#9670;&nbsp;</a></span>remmina_file_editor_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01564">1564</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa5c50852f8569f075eec5d5db30c2ebf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5c50852f8569f075eec5d5db30c2ebf">&#9670;&nbsp;</a></span>remmina_file_editor_new_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_copy </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01584">1584</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a08327d6951c345808628dbb5784aba06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08327d6951c345808628dbb5784aba06">&#9670;&nbsp;</a></span>remmina_file_editor_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01426">1426</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9345cfe3fb32d326b652e96ee55eaea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9345cfe3fb32d326b652e96ee55eaea">&#9670;&nbsp;</a></span>remmina_file_editor_new_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_from_filename </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01603">1603</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ab563344276cbcdf0fcea05b0b64c7aeb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab563344276cbcdf0fcea05b0b64c7aeb">&#9670;&nbsp;</a></span>remmina_file_editor_new_full()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_full </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01570">1570</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aaa55ab55c6806aef6765eb01577365f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa55ab55c6806aef6765eb01577365f3">&#9670;&nbsp;</a></span>remmina_file_editor_on_cancel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_cancel </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01313">1313</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a73b8581fd1fd77532b748d91a2951f25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73b8581fd1fd77532b748d91a2951f25">&#9670;&nbsp;</a></span>remmina_file_editor_on_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_connect </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01277">1277</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="afcc5ee6fcd22686b716fbe595cb210a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcc5ee6fcd22686b716fbe595cb210a6">&#9670;&nbsp;</a></span>remmina_file_editor_on_default()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_default </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01232">1232</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a880e8e6aee571b91eeb7f5d2f60e210b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a880e8e6aee571b91eeb7f5d2f60e210b">&#9670;&nbsp;</a></span>remmina_file_editor_on_realize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_realize </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00187">187</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ac2a5cf9cdcf640986e245eb04be9c4ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2a5cf9cdcf640986e245eb04be9c4ad">&#9670;&nbsp;</a></span>remmina_file_editor_on_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_save </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01264">1264</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a57224f3f69f04f398de563b71be6b18e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57224f3f69f04f398de563b71be6b18e">&#9670;&nbsp;</a></span>remmina_file_editor_on_save_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_on_save_connect </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>: Call remmina_file_editor_on_save </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01293">1293</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a333de350f1b07add2d0fd06320c80d16"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a333de350f1b07add2d0fd06320c80d16">&#9670;&nbsp;</a></span>remmina_file_editor_protocol_combo_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_protocol_combo_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>combo</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01043">1043</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a99984deb4b5a3b873b26c0c9cf8268b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99984deb4b5a3b873b26c0c9cf8268b7">&#9670;&nbsp;</a></span>remmina_file_editor_save_ssh_tunnel_tab()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_save_ssh_tunnel_tab </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01088">1088</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ad0cf3a5b5f5f83e14f9d73c4f2460dca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0cf3a5b5f5f83e14f9d73c4f2460dca">&#9670;&nbsp;</a></span>remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00286">286</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a8a7f3ce69255bf413ef8fa841af3d019"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a7f3ce69255bf413ef8fa841af3d019">&#9670;&nbsp;</a></span>remmina_file_editor_ssh_tunnel_enabled_check_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_ssh_tunnel_enabled_check_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a>&#160;</td>
+ <td class="paramname"><em>ssh_setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00301">301</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ea3f796c3a46aeb01b2f13f4a3d40a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ea3f796c3a46aeb01b2f13f4a3d40a9">&#9670;&nbsp;</a></span>remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00276">276</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ab5583c8b2ff4cfa003d7bdc69cff0067"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5583c8b2ff4cfa003d7bdc69cff0067">&#9670;&nbsp;</a></span>remmina_file_editor_update()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_update </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01178">1178</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a51a45d872a9e7a0b06d25aef592a6e3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51a45d872a9e7a0b06d25aef592a6e3a">&#9670;&nbsp;</a></span>remmina_file_editor_update_resolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_update_resolution </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l00477">477</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a1a88820e6278cc50eb59a6333c7f40dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a88820e6278cc50eb59a6333c7f40dd">&#9670;&nbsp;</a></span>remmina_file_editor_update_settings()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_editor_update_settings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01150">1150</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__editor_8c.html">remmina_file_editor.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__editor_8c.js b/docs/remmina__file__editor_8c.js
new file mode 100644
index 000000000..a6a754a8d
--- /dev/null
+++ b/docs/remmina__file__editor_8c.js
@@ -0,0 +1,47 @@
+var remmina__file__editor_8c =
+[
+ [ "G_DEFINE_TYPE", "remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de", null ],
+ [ "remmina_file_editor_browse_avahi", "remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05", null ],
+ [ "remmina_file_editor_browse_resolution", "remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4", null ],
+ [ "remmina_file_editor_button_on_toggled", "remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb", null ],
+ [ "remmina_file_editor_check_profile", "remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257", null ],
+ [ "remmina_file_editor_class_init", "remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b", null ],
+ [ "remmina_file_editor_create_all_settings", "remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38", null ],
+ [ "remmina_file_editor_create_check", "remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9", null ],
+ [ "remmina_file_editor_create_chooser", "remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89", null ],
+ [ "remmina_file_editor_create_combo", "remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355", null ],
+ [ "remmina_file_editor_create_notebook_container", "remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea", null ],
+ [ "remmina_file_editor_create_notebook_tab", "remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556", null ],
+ [ "remmina_file_editor_create_password", "remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23", null ],
+ [ "remmina_file_editor_create_resolution", "remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5", null ],
+ [ "remmina_file_editor_create_select", "remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877", null ],
+ [ "remmina_file_editor_create_server", "remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae", null ],
+ [ "remmina_file_editor_create_settings", "remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d", null ],
+ [ "remmina_file_editor_create_ssh_privatekey", "remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1", null ],
+ [ "remmina_file_editor_create_ssh_tunnel_tab", "remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23", null ],
+ [ "remmina_file_editor_create_text", "remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b", null ],
+ [ "remmina_file_editor_destroy", "remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f", null ],
+ [ "remmina_file_editor_entry_on_changed", "remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b", null ],
+ [ "remmina_file_editor_file_save", "remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056", null ],
+ [ "remmina_file_editor_init", "remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d", null ],
+ [ "remmina_file_editor_iterate_protocol", "remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b", null ],
+ [ "remmina_file_editor_new", "remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e", null ],
+ [ "remmina_file_editor_new_copy", "remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf", null ],
+ [ "remmina_file_editor_new_from_file", "remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06", null ],
+ [ "remmina_file_editor_new_from_filename", "remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea", null ],
+ [ "remmina_file_editor_new_full", "remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb", null ],
+ [ "remmina_file_editor_on_cancel", "remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3", null ],
+ [ "remmina_file_editor_on_connect", "remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25", null ],
+ [ "remmina_file_editor_on_default", "remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6", null ],
+ [ "remmina_file_editor_on_realize", "remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b", null ],
+ [ "remmina_file_editor_on_save", "remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad", null ],
+ [ "remmina_file_editor_on_save_connect", "remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e", null ],
+ [ "remmina_file_editor_protocol_combo_on_changed", "remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16", null ],
+ [ "remmina_file_editor_save_ssh_tunnel_tab", "remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7", null ],
+ [ "remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled", "remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca", null ],
+ [ "remmina_file_editor_ssh_tunnel_enabled_check_on_toggled", "remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019", null ],
+ [ "remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled", "remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9", null ],
+ [ "remmina_file_editor_update", "remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067", null ],
+ [ "remmina_file_editor_update_resolution", "remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a", null ],
+ [ "remmina_file_editor_update_settings", "remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file__editor_8c_source.html b/docs/remmina__file__editor_8c_source.html
new file mode 100644
index 000000000..0ad956ce8
--- /dev/null
+++ b/docs/remmina__file__editor_8c_source.html
@@ -0,0 +1,243 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_editor.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__editor_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file_editor.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file__editor_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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_UI</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;avahi-ui/avahi-ui.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 &quot;<a class="code" href="remmina__public_8h.html">remmina_public.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__pref_8h.html">remmina_pref.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="rcw_8h.html">rcw.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__string__list_8h.html">remmina_string_list.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__pref__dialog_8h.html">remmina_pref_dialog.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_8h.html">remmina_file.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__manager_8h.html">remmina_file_manager.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__ssh_8h.html">remmina_ssh.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__widget__pool_8h.html">remmina_widget_pool.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__icon_8h.html">remmina_icon.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__file__editor_8h.html">remmina_file_editor.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de"> 58</a></span>&#160;<a class="code" href="remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a>, remmina_file_editor, GTK_TYPE_DIALOG)</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *charset_list = <span class="stringliteral">&quot;ASCII,BIG5,&quot;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="stringliteral">&quot;CP437,CP720,CP737,CP775,CP850,CP852,CP855,&quot;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="stringliteral">&quot;CP857,CP858,CP862,CP866,CP874,CP1125,CP1250,&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="stringliteral">&quot;CP1251,CP1252,CP1253,CP1254,CP1255,CP1256,&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;CP1257,CP1258,&quot;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;EUC-JP,EUC-KR,GBK,&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="stringliteral">&quot;ISO-8859-1,ISO-8859-2,ISO-8859-3,ISO-8859-4,&quot;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="stringliteral">&quot;ISO-8859-5,ISO-8859-6,ISO-8859-7,ISO-8859-8,&quot;</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="stringliteral">&quot;ISO-8859-9,ISO-8859-10,ISO-8859-11,ISO-8859-12,&quot;</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="stringliteral">&quot;ISO-8859-13,ISO-8859-14,ISO-8859-15,ISO-8859-16,&quot;</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="stringliteral">&quot;KOI8-R,SJIS,UTF-8&quot;</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *server_tips = <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;&lt;tt&gt;&lt;big&gt;&quot;</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="stringliteral">&quot;Supported formats\n&quot;</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="stringliteral">&quot;• server\n&quot;</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="stringliteral">&quot;• server:port\n&quot;</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="stringliteral">&quot;• [server]:port&quot;</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="stringliteral">&quot;&lt;/big&gt;&lt;/tt&gt;&quot;</span>);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *cmd_tips = <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;&lt;tt&gt;&lt;big&gt;&quot;</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;• command in PATH args %h\n&quot;</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;• /path/to/foo -options %h %u\n&quot;</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;• %h is substituted with the server name\n&quot;</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;• %t is substituted with the SSH server name\n&quot;</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="stringliteral">&quot;• %u is substituted with the username\n&quot;</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;• %U is substituted with the SSH username\n&quot;</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;• %p is substituted with Remmina profile name\n&quot;</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="stringliteral">&quot;• %g is substituted with Remmina profile group name\n&quot;</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="stringliteral">&quot;• %d is substituted with local datetime in iso8601 format\n&quot;</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="stringliteral">&quot;Do not run in background if you want the command to be executed before connecting.\n&quot;</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="stringliteral">&quot;&lt;/big&gt;&lt;/tt&gt;&quot;</span>);</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"> 94</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *server_tips2 = <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;&lt;tt&gt;&lt;big&gt;&quot;</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="stringliteral">&quot;Supported formats\n&quot;</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="stringliteral">&quot;• :port\n&quot;</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="stringliteral">&quot;• server\n&quot;</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="stringliteral">&quot;• server:port\n&quot;</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="stringliteral">&quot;• [server]:port\n&quot;</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="stringliteral">&quot;• username@server:port (SSH protocol only)&quot;</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="stringliteral">&quot;&lt;/big&gt;&lt;/tt&gt;&quot;</span>);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">struct </span>_RemminaFileEditorPriv {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * remmina_file;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> * plugin;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> gchar * avahi_service_type;</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; GtkWidget * name_entry;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; GtkWidget * group_combo;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; GtkWidget * protocol_combo;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; GtkWidget * precommand_entry;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; GtkWidget * postcommand_entry;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; GtkWidget * save_button;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; GtkWidget * config_box;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; GtkWidget * config_scrollable;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; GtkWidget * config_viewport;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; GtkWidget * config_container;</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; GtkWidget * server_combo;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; GtkWidget * resolution_iws_radio;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; GtkWidget * resolution_auto_radio;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; GtkWidget * resolution_custom_radio;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; GtkWidget * resolution_custom_combo;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; GtkWidget * keymap_combo;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; GtkWidget * ssh_tunnel_enabled_check;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; GtkWidget * ssh_tunnel_loopback_check;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; GtkWidget * ssh_tunnel_server_default_radio;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; GtkWidget * ssh_tunnel_server_custom_radio;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; GtkWidget * ssh_tunnel_server_entry;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; GtkWidget * ssh_tunnel_auth_agent_radio;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; GtkWidget * ssh_tunnel_auth_password_radio;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; GtkWidget * ssh_tunnel_auth_password;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GtkWidget * ssh_tunnel_passphrase;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; GtkWidget * ssh_tunnel_auth_publickey_radio;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; GtkWidget * ssh_tunnel_auth_auto_publickey_radio;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; GtkWidget * ssh_tunnel_username_entry;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; GtkWidget * ssh_tunnel_privatekey_chooser;</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; GHashTable * setting_widgets;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;};</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b"> 146</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b">remmina_file_editor_class_init</a>(<a class="code" href="struct___remmina_file_editor_class.html">RemminaFileEditorClass</a> *klass)</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; TRACE_CALL(__func__);</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_UI</span></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"><a class="line" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05"> 153</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor_browse_avahi</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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"> 155</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; gchar *host;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; dialog = aui_service_dialog_new(_(<span class="stringliteral">&quot;Choose a Remote Desktop Server&quot;</span>),</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; GTK_WINDOW(gfe),</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; _(<span class="stringliteral">&quot;_Cancel&quot;</span>), GTK_RESPONSE_CANCEL,</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; _(<span class="stringliteral">&quot;_OK&quot;</span>), GTK_RESPONSE_ACCEPT,</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; NULL);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(gfe));</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; aui_service_dialog_set_resolve_service(AUI_SERVICE_DIALOG(dialog), TRUE);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; aui_service_dialog_set_resolve_host_name(AUI_SERVICE_DIALOG(dialog), TRUE);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; aui_service_dialog_set_browse_service_types(AUI_SERVICE_DIALOG(dialog),</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;avahi_service_type, NULL);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; host = g_strdup_printf(<span class="stringliteral">&quot;[%s]:%i&quot;</span>,</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; aui_service_dialog_get_host_name(AUI_SERVICE_DIALOG(dialog)),</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; aui_service_dialog_get_port(AUI_SERVICE_DIALOG(dialog)));</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; host = NULL;</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; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (host) {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;server_combo))), host);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; g_free(host);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;}</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b"> 187</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor_on_realize</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; GtkWidget *defaultwidget;</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"> 193</span>&#160; gfe = REMMINA_FILE_EDITOR(widget);</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; defaultwidget = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;server_combo;</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> (defaultwidget) {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (GTK_IS_EDITABLE(defaultwidget))</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_editable_select_region(GTK_EDITABLE(defaultwidget), 0, -1);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_widget_grab_focus(defaultwidget);</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;}</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"><a class="line" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f"> 204</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor_destroy</a>(GtkWidget *widget, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(REMMINA_FILE_EDITOR(widget)-&gt;priv-&gt;remmina_file);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; g_hash_table_destroy(REMMINA_FILE_EDITOR(widget)-&gt;priv-&gt;setting_widgets);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; g_free(REMMINA_FILE_EDITOR(widget)-&gt;priv);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb"> 212</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a>(GtkToggleButton *togglebutton, GtkWidget *widget)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; gtk_widget_set_sensitive(widget, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(togglebutton)));</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea"> 218</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor_create_notebook_container</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; <span class="comment">/* Create the notebook */</span></div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_container = gtk_notebook_new();</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_viewport = gtk_viewport_new(NULL, NULL);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable), 2);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable),</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gtk_widget_show(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable);</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; gtk_container_add(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_viewport), gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_container);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_viewport), 2);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; gtk_widget_show(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_viewport);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gtk_container_add(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable), gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_viewport);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_container), 2);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; gtk_widget_show(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_container);</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; gtk_container_add(GTK_CONTAINER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_box), gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_scrollable);</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;</div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556"> 240</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe,</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">const</span> gchar *stock_id, <span class="keyword">const</span> gchar *label, gint rows, gint cols)</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;{</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; GtkWidget *tablabel;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; GtkWidget *tabbody;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; tablabel = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; gtk_widget_show(tablabel);</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; widget = gtk_image_new_from_icon_name(stock_id, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gtk_box_pack_start(GTK_BOX(tablabel), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; widget = gtk_label_new(label);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; gtk_box_pack_start(GTK_BOX(tablabel), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gtk_widget_show(widget);</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; tabbody = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; gtk_widget_show(tabbody);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gtk_notebook_append_page(GTK_NOTEBOOK(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;config_container), tabbody, tablabel);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 8);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 8);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(grid), 15);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; gtk_box_pack_start(GTK_BOX(tabbody), grid, FALSE, FALSE, 0);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">return</span> grid;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;}</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;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9"> 276</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled</a>(GtkToggleButton *togglebutton, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;{</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_entry),</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_enabled_check)) &amp;&amp;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_custom_radio == NULL ||</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_custom_radio)))</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; );</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca"> 286</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled</a>(GtkToggleButton *togglebutton, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; gboolean b;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keyword">const</span> gchar *s;</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; b = ((!gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_enabled_check ||</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_enabled_check))) &amp;&amp;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_publickey_radio)));</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_privatekey_chooser), b);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (b &amp;&amp; (s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_privatekey&quot;</span>)))</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_privatekey_chooser), s);</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;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019"> 301</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor_ssh_tunnel_enabled_check_on_toggled</a>(GtkToggleButton *togglebutton,</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> ssh_setting)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; gboolean enabled = TRUE;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gchar *p;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keyword">const</span> gchar *cp;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_enabled_check) {</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; enabled = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_enabled_check));</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_loopback_check)</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_loopback_check), enabled);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_default_radio)</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_default_radio), enabled);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_custom_radio)</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_server_custom_radio), enabled);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled</a>(NULL, gfe);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; p = <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;protocol_combo));</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="comment">//if (!(g_strcmp0(p, &quot;SFTP&quot;) == 0 || g_strcmp0(p, &quot;SSH&quot;) == 0)) {</span></div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_username_entry), enabled);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_agent_radio), enabled);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_password_radio), enabled);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_password), enabled);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_publickey_radio), enabled);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_auto_publickey_radio), enabled);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="comment">//}</span></div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; g_free(p);</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; <a class="code" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled</a>(NULL, gfe);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_username_entry)</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (enabled &amp;&amp; gtk_entry_get_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_username_entry)) [0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; cp = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span>);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; gtk_entry_set_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_username_entry), cp ? cp : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</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; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_password) {</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (enabled &amp;&amp; gtk_entry_get_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_password)) [0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; cp = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; gtk_entry_set_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_auth_password), cp ? cp : <span class="stringliteral">&quot;&quot;</span>);</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; }</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">if</span> (gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_passphrase) {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">if</span> (enabled &amp;&amp; gtk_entry_get_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_passphrase)) [0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; cp = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_passphrase&quot;</span>);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gtk_entry_set_text(GTK_ENTRY(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;ssh_tunnel_passphrase), cp ? cp : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; }</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; }</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"><a class="line" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1"> 352</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor_create_ssh_privatekey</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint column)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; gchar *s;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keyword">const</span> gchar *ssh_privatekey;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</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; widget = gtk_radio_button_new_with_label_from_widget(</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; GTK_RADIO_BUTTON(priv-&gt;ssh_tunnel_auth_agent_radio), _(<span class="stringliteral">&quot;SSH identity file&quot;</span>));</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled</a>), gfe);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; priv-&gt;ssh_tunnel_auth_publickey_radio = widget;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 22, 1, 1);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; dialog = gtk_file_chooser_dialog_new(_(<span class="stringliteral">&quot;SSH identity file&quot;</span>), GTK_WINDOW(gfe), GTK_FILE_CHOOSER_ACTION_OPEN,</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; _(<span class="stringliteral">&quot;_Cancel&quot;</span>), GTK_RESPONSE_CANCEL,</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; _(<span class="stringliteral">&quot;_Open&quot;</span>), GTK_RESPONSE_ACCEPT,</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; NULL);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; widget = gtk_file_chooser_button_new_with_dialog(dialog);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s/.ssh&quot;</span>, g_getenv(<span class="stringliteral">&quot;SNAP_USER_COMMON&quot;</span>));</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s/.ssh&quot;</span>, g_get_home_dir());</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">if</span> (g_file_test(s, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(widget), s);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; g_free(s);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, column + 1, row + 22, 1, 1);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; priv-&gt;ssh_tunnel_privatekey_chooser = widget;</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; ssh_privatekey = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_privatekey&quot;</span>);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">if</span> (ssh_privatekey &amp;&amp;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; g_file_test(ssh_privatekey, G_FILE_TEST_IS_REGULAR | G_FILE_TEST_EXISTS))</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(priv-&gt;ssh_tunnel_privatekey_chooser),</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; ssh_privatekey);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_privatekey&quot;</span>, NULL);</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="preprocessor">#endif</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"><a class="line" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae"> 397</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor_create_server</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *setting, GtkWidget *grid,</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; gint row)</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;{</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *plugin = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;plugin;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_UI</span></div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; gchar *s;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Server&quot;</span>));</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, row + 1);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; s = <a class="code" href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a>(plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; widget = <a class="code" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a>(s, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;server&quot;</span>), TRUE);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; gtk_widget_set_tooltip_markup(widget, _(server_tips));</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; gtk_entry_set_activates_default(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(widget))), TRUE);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;server_combo = widget;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; g_free(s);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_UI</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">if</span> (setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a>) {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;avahi_service_type = (<span class="keyword">const</span> gchar *)setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a>;</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; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; widget = gtk_button_new_with_label(<span class="stringliteral">&quot;…&quot;</span>);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; s = g_strdup_printf(_(<span class="stringliteral">&quot;Browse the network to find a %s server&quot;</span>), plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gtk_widget_set_tooltip_text(widget, s);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; g_free(s);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor_browse_avahi</a>), gfe);</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; gtk_grid_attach(GTK_GRID(grid), hbox, 1, row, 1, 1);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;<span class="preprocessor">#endif</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; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 1, 1);</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"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23"> 447</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor_create_password</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; gint row, gint col, <span class="keyword">const</span> gchar *label, <span class="keyword">const</span> gchar *value)</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;{</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; GtkWidget *widget;</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; widget = gtk_label_new(label);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 12, 0)</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; gtk_widget_set_margin_end(widget, 40);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gtk_widget_set_margin_right(widget, 40);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 1, 1);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 100);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; gtk_entry_set_visibility(GTK_ENTRY(widget), FALSE);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; gtk_entry_set_activates_default(GTK_ENTRY(widget), TRUE);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">if</span> (value)</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), value);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a"> 477</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor_update_resolution</a>(GtkWidget *widget, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;{</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; gchar *res_str;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; res_str = g_strdup_printf(<span class="stringliteral">&quot;%dx%d&quot;</span>,</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;resolution_width&quot;</span>, 0),</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;resolution_height&quot;</span>, 0)</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; <a class="code" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_combo, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>,</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; res_str, NULL);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; g_free(res_str);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;}</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4"> 490</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor_browse_resolution</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;{</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; GtkDialog *dialog = <a class="code" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a>(FALSE, NULL);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a>(<a class="code" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a>);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>, TRUE);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a>(_(<span class="stringliteral">&quot;Resolutions&quot;</span>), _(<span class="stringliteral">&quot;Configure the available resolutions&quot;</span>));</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(gfe));</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>);</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a> = <a class="code" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a>();</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor_update_resolution</a>), gfe);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;}</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5"> 506</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor_create_resolution</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *setting,</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; GtkWidget *grid, gint row)</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;{</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordtype">int</span> resolution_w, resolution_h;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; gchar *res_str;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a> res_mode;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; res_mode = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;resolution_mode&quot;</span>, <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a>);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; resolution_w = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;resolution_width&quot;</span>, -1);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; resolution_h = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;resolution_height&quot;</span>, -1);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="comment">/* If resolution_mode is non-existent (-1), then we try to calculate it</span></div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;<span class="comment"> * as we did before having resolution_mode */</span></div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a>) {</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">if</span> (resolution_w &lt;= 0 || resolution_h &lt;= 0)</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a>;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a>;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; }</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a>)</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; res_str = g_strdup_printf(<span class="stringliteral">&quot;%dx%d&quot;</span>, resolution_w, resolution_h);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; res_str = NULL;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Resolution&quot;</span>));</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; widget = gtk_radio_button_new_with_label(NULL, _(<span class="stringliteral">&quot;Use initial window size&quot;</span>));</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_iws_radio = widget;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; widget = gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_iws_radio), _(<span class="stringliteral">&quot;Use client resolution&quot;</span>));</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_auto_radio = widget;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; gtk_grid_attach(GTK_GRID(grid), hbox, 1, row, 1, 1);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gtk_grid_attach(GTK_GRID(grid), hbox, 1, row + 1, 1, 1);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; widget = gtk_radio_button_new_with_label_from_widget(GTK_RADIO_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_iws_radio), _(<span class="stringliteral">&quot;Custom&quot;</span>));</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_radio = widget;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; widget = <a class="code" href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>, res_str, NULL);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_combo = widget;</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; widget = gtk_button_new_with_label(<span class="stringliteral">&quot;…&quot;</span>);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor_browse_resolution</a>), gfe);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; g_signal_connect(G_OBJECT(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_radio), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a>), gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_combo);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a>)</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_radio), TRUE);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a>)</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_auto_radio), TRUE);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_iws_radio), TRUE);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gtk_widget_set_sensitive(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_combo, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;resolution_custom_radio)));</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; g_free(res_str);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b"> 585</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; gint row, gint col, <span class="keyword">const</span> gchar *label, <span class="keyword">const</span> gchar *value)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; GtkWidget *widget;</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; widget = gtk_label_new(label);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 12, 0)</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; gtk_widget_set_margin_end(widget, 40);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; gtk_widget_set_margin_right(widget, 40);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</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; widget = gtk_entry_new();</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 1, 1);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 300);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">if</span> (value)</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), value);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877"> 614</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor_create_select</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gint row, gint col, <span class="keyword">const</span> gchar *label, <span class="keyword">const</span> gpointer *list, <span class="keyword">const</span> gchar *value)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; GtkWidget *widget;</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; widget = gtk_label_new(label);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</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; widget = <a class="code" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a>(list, value, FALSE, gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;plugin-&gt;domain);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 1, 1);</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160;}</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div><div class="line"><a name="l00633"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355"> 633</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor_create_combo</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; gint row, gint col, <span class="keyword">const</span> gchar *label, <span class="keyword">const</span> gchar *list, <span class="keyword">const</span> gchar *value)</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;{</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; widget = gtk_label_new(label);</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</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; widget = <a class="code" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a>(list, value, FALSE);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 1, 1);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;}</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9"> 653</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor_create_check</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; gint row, gint top, <span class="keyword">const</span> gchar *label, gboolean value)</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;{</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; widget = gtk_check_button_new_with_label(label);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 1);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, top, row, 1, 1);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">if</span> (value)</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), TRUE);</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">return</span> widget;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;}</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;<span class="keyword">static</span> GtkWidget *</div><div class="line"><a name="l00670"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89"> 670</a></span>&#160;<a class="code" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor_create_chooser</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid, gint row, gint col, <span class="keyword">const</span> gchar *label,</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keyword">const</span> gchar *value, gint type)</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;{</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; GtkWidget *check;</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; widget = gtk_label_new(label);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; gtk_grid_attach(GTK_GRID(grid), hbox, 1, row, 1, 1);</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; check = gtk_check_button_new();</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; gtk_widget_show(check);</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(check), (value &amp;&amp; value[0] == <span class="charliteral">&#39;/&#39;</span>));</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), check, FALSE, FALSE, 0);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; widget = gtk_file_chooser_button_new(label, type);</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keywordflow">if</span> (value)</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(widget), value);</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 0);</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; g_signal_connect(G_OBJECT(check), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a>), widget);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a>(GTK_TOGGLE_BUTTON(check), widget);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">return</span> widget;</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"><a class="line" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d"> 705</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, GtkWidget *grid,</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *settings)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; gint grid_row = 0;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; gint grid_column = 0;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; gchar **strarr;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; gchar *setting_name;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordflow">while</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; setting_name = (gchar *)(<a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(settings));</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">switch</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a>) {</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>:</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <a class="code" href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor_create_server</a>(gfe, settings, grid, grid_row);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>:</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor_create_password</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name));</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; grid_row++;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>:</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <a class="code" href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor_create_resolution</a>(gfe, settings, grid, grid_row);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; grid_row += 1;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>:</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; strarr = <a class="code" href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a>();</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; priv-&gt;keymap_combo = <a class="code" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor_create_select</a>(gfe, grid,</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; grid_row + 1, 0,</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; _(<span class="stringliteral">&quot;Keyboard mapping&quot;</span>), (<span class="keyword">const</span> gpointer *)strarr,</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;keymap&quot;</span>));</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; g_strfreev(strarr);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; grid_row++;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>:</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name));</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; grid_row++;</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>:</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor_create_select</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; (<span class="keyword">const</span> gpointer *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a>,</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name));</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>:</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor_create_combo</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a>,</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name));</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>:</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor_create_check</a>(gfe, grid, grid_row, grid_column,</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, setting_name, FALSE));</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>:</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor_create_chooser</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name),</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; GTK_FILE_CHOOSER_ACTION_OPEN);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">break</span>;</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"> 796</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>:</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor_create_chooser</a>(gfe, grid, grid_row, 0,</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; g_dgettext(priv-&gt;plugin-&gt;domain, settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>),</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, setting_name),</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, setting_name, widget);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>)</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; gtk_widget_set_tooltip_text(widget, (<span class="keyword">const</span> gchar *)settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160;</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; <span class="keywordflow">break</span>;</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="comment">/* If the setting wants compactness, move to the next column */</span></div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="keywordflow">if</span> (settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">compact</a>)</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; grid_column++;</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; <span class="comment">/* Add a new settings row and move to the first column</span></div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;<span class="comment"> * if the setting doesn’t want the compactness</span></div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;<span class="comment"> * or we already have two columns */</span></div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="keywordflow">if</span> (!settings-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">compact</a> || grid_column &gt; 1) {</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; grid_row++;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; grid_column = 0;</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; settings++;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; }</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;}</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160;</div><div class="line"><a name="l00823"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23"> 823</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor_create_ssh_tunnel_tab</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe, <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> ssh_setting)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <span class="keyword">const</span> gchar *cs;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; gchar *s;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; gchar *p;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; gint row = 0;</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160;</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <span class="keywordflow">if</span> (ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <span class="comment">/* The SSH tab (implementation) */</span></div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; grid = <a class="code" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a>(gfe, NULL,</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; _(<span class="stringliteral">&quot;SSH Tunnel&quot;</span>), 9, 3);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; widget = gtk_toggle_button_new_with_label(_(<span class="stringliteral">&quot;Enable SSH tunnel&quot;</span>));</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 0, 1, 1);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor_ssh_tunnel_enabled_check_on_toggled</a>), gfe);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; priv-&gt;ssh_tunnel_enabled_check = widget;</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; widget = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Tunnel via loopback address&quot;</span>));</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 0, 2, 1);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; priv-&gt;ssh_tunnel_loopback_check = widget;</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"> 851</span>&#160; row++;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <span class="comment">/* SSH Server group */</span></div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">switch</span> (ssh_setting) {</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>:</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; s = g_strdup_printf(_(<span class="stringliteral">&quot;Same server at port %i&quot;</span>), DEFAULT_SSH_PORT);</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; widget = gtk_radio_button_new_with_label(NULL, s);</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; g_free(s);</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 3, 1);</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; priv-&gt;ssh_tunnel_server_default_radio = widget;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; row++;</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 = gtk_radio_button_new_with_label_from_widget(</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; GTK_RADIO_BUTTON(priv-&gt;ssh_tunnel_server_default_radio), _(<span class="stringliteral">&quot;Custom&quot;</span>));</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 1);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;toggled&quot;</span>,</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled</a>), gfe);</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; priv-&gt;ssh_tunnel_server_custom_radio = widget;</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"> 870</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 100);</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; gtk_widget_set_tooltip_markup(widget, _(server_tips2));</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row, 2, 1);</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; priv-&gt;ssh_tunnel_server_entry = widget;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; row++;</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; <span class="keywordflow">break</span>;</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">case</span> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>:</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; priv-&gt;ssh_tunnel_server_default_radio = NULL;</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; priv-&gt;ssh_tunnel_server_custom_radio = NULL;</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160;</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; priv-&gt;ssh_tunnel_server_entry = <a class="code" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a>(gfe, grid, 1, 0,</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; _(<span class="stringliteral">&quot;Server&quot;</span>), NULL);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; gtk_widget_set_tooltip_markup(priv-&gt;ssh_tunnel_server_entry, _(server_tips));</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; row++;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">REMMINA_PROTOCOL_SSH_SETTING_SSH</a>:</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <span class="keywordflow">case</span> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a>:</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; priv-&gt;ssh_tunnel_server_default_radio = NULL;</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; priv-&gt;ssh_tunnel_server_custom_radio = NULL;</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; priv-&gt;ssh_tunnel_server_entry = NULL;</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">break</span>;</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160;</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; }</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; p = <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;protocol_combo));</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; <span class="keywordflow">if</span> (ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a>) {</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a>(gfe, grid, row + 8, 1,</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; _(<span class="stringliteral">&quot;Startup path&quot;</span>), NULL);</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; cs = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;execpath&quot;</span>);</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; g_hash_table_insert(priv-&gt;setting_widgets, <span class="stringliteral">&quot;execpath&quot;</span>, widget);</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; row++;</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; <span class="comment">/* SSH Authentication frame */</span></div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; <span class="comment">//if (!(g_strcmp0(p, &quot;SFTP&quot;) == 0 || g_strcmp0(p, &quot;SSH&quot;) == 0)) {</span></div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <a class="code" href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a>(GTK_GRID(grid), _(<span class="stringliteral">&quot;SSH Authentication&quot;</span>), row + 8, 6, 1);</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; row++;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <span class="keywordflow">if</span> (ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a> ||</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>) {</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; priv-&gt;ssh_tunnel_username_entry =</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a>(gfe, grid, row + 10, 0,</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; _(<span class="stringliteral">&quot;Username&quot;</span>), NULL);</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; row++;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; }</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; widget = gtk_radio_button_new_with_label(NULL, _(<span class="stringliteral">&quot;SSH agent (automatic)&quot;</span>));</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 19, 1, 1);</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; priv-&gt;ssh_tunnel_auth_agent_radio = widget;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; row++;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160;</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; widget = gtk_radio_button_new_with_label_from_widget(</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; GTK_RADIO_BUTTON(priv-&gt;ssh_tunnel_auth_agent_radio), _(<span class="stringliteral">&quot;Password&quot;</span>));</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 21, 1, 1);</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; priv-&gt;ssh_tunnel_auth_password_radio = widget;</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row + 21, 2, 1);</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 300);</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; gtk_entry_set_visibility(GTK_ENTRY(widget), FALSE);</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; priv-&gt;ssh_tunnel_auth_password = widget;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; row++;</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; widget = gtk_radio_button_new_with_label_from_widget(</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; GTK_RADIO_BUTTON(priv-&gt;ssh_tunnel_auth_agent_radio), _(<span class="stringliteral">&quot;Public key (automatic)&quot;</span>));</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 22, 1, 1);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; priv-&gt;ssh_tunnel_auth_auto_publickey_radio = widget;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; row++;</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; <a class="code" href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor_create_ssh_privatekey</a>(gfe, grid, row + 1, 0);</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="comment">//}</span></div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; row++;</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160;</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Password to unlock private key&quot;</span>));</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 23, 1, 1);</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, row + 23, 2, 1);</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 300);</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; gtk_entry_set_visibility(GTK_ENTRY(widget), FALSE);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; gtk_widget_set_hexpand(widget, TRUE);</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; priv-&gt;ssh_tunnel_passphrase = widget;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; row++;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160;</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <span class="comment">/* Set the values */</span></div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; cs = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>);</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keywordflow">if</span> (ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>) {</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_enabled_check),</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE));</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_loopback_check),</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_loopback&quot;</span>, FALSE));</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; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(cs ?</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; priv-&gt;ssh_tunnel_server_custom_radio : priv-&gt;ssh_tunnel_server_default_radio), TRUE);</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; gtk_entry_set_text(GTK_ENTRY(priv-&gt;ssh_tunnel_server_entry),</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ssh_setting == <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>) {</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_enabled_check),</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE));</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_loopback_check),</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_loopback&quot;</span>, FALSE));</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; gtk_entry_set_text(GTK_ENTRY(priv-&gt;ssh_tunnel_server_entry),</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</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;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; <span class="comment">//if (!(g_strcmp0(p, &quot;SFTP&quot;) == 0 || g_strcmp0(p, &quot;SSH&quot;) == 0)) {</span></div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; gint ssh_tunnel_auth_status = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_auth&quot;</span>, 0);</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; g_debug (<span class="stringliteral">&quot;[Editor - tunnel] ssh_tunnel_auth_status is: %d&quot;</span>, ssh_tunnel_auth_status);</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <span class="keywordflow">switch</span> (ssh_tunnel_auth_status) {</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a>:</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; g_debug(<span class="stringliteral">&quot;[Editor - tunnel] Auth set from file to SSH_AUTH_PUBLICKEY&quot;</span>);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_publickey_radio), TRUE);</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>:</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; g_debug(<span class="stringliteral">&quot;[Editor - tunnel] Auth set from file to SSH_AUTH_AUTO_PUBLICKEY&quot;</span>);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_auto_publickey_radio), TRUE);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a>:</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; g_debug(<span class="stringliteral">&quot;[Editor - tunnel] Auth set from file to SSH_AUTH_AGENT&quot;</span>);</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_agent_radio), TRUE);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; g_debug(<span class="stringliteral">&quot;[Editor - tunnel] Auth set from file to SSH_AUTH_PASSWORD&quot;</span>);</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_password_radio), TRUE);</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; }</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor_ssh_tunnel_enabled_check_on_toggled</a>(NULL, gfe, ssh_setting);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; <span class="comment">//}</span></div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; gtk_widget_show_all(grid);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; g_free(p);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;}</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;</div><div class="line"><a name="l01009"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38"> 1009</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor_create_all_settings</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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"> 1011</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> autostart_settings[] =</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; {</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-autostart&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Autostart this profile&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</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;</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor_create_notebook_container</a>(gfe);</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">/* The Basic tab */</span></div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; <span class="keywordflow">if</span> (priv-&gt;plugin-&gt;basic_settings) {</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; grid = <a class="code" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a>(gfe, NULL, _(<span class="stringliteral">&quot;Basic&quot;</span>), 20, 2);</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a>(gfe, grid, priv-&gt;plugin-&gt;basic_settings);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; }</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="comment">/* The Advanced tab */</span></div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; <span class="keywordflow">if</span> (priv-&gt;plugin-&gt;advanced_settings) {</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; grid = <a class="code" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a>(gfe, NULL, _(<span class="stringliteral">&quot;Advanced&quot;</span>), 20, 2);</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a>(gfe, grid, priv-&gt;plugin-&gt;advanced_settings);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; }</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; <span class="comment">/* Autostart tab */</span></div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; grid = <a class="code" href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a>(gfe, NULL, _(<span class="stringliteral">&quot;Autostart&quot;</span>), 20, 2);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a>(gfe, grid, autostart_settings);</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; <span class="comment">/* The SSH tab */</span></div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; <a class="code" href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor_create_ssh_tunnel_tab</a>(gfe, priv-&gt;plugin-&gt;ssh_setting);</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16"> 1043</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor_protocol_combo_on_changed</a>(GtkComboBox *combo, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; gchar *protocol;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; <span class="keywordflow">if</span> (priv-&gt;config_container) {</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; gtk_widget_destroy(priv-&gt;config_container);</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; priv-&gt;config_container = NULL;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; gtk_widget_destroy(priv-&gt;config_viewport);</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; priv-&gt;config_viewport = NULL;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; gtk_widget_destroy(priv-&gt;config_scrollable);</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; priv-&gt;config_scrollable = NULL;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; }</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; priv-&gt;server_combo = NULL;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; priv-&gt;resolution_iws_radio = NULL;</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; priv-&gt;resolution_auto_radio = NULL;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; priv-&gt;resolution_custom_radio = NULL;</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; priv-&gt;resolution_custom_combo = NULL;</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; priv-&gt;keymap_combo = NULL;</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; priv-&gt;ssh_tunnel_enabled_check = NULL;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; priv-&gt;ssh_tunnel_loopback_check = NULL;</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160; priv-&gt;ssh_tunnel_server_default_radio = NULL;</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160; priv-&gt;ssh_tunnel_server_custom_radio = NULL;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; priv-&gt;ssh_tunnel_server_entry = NULL;</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; priv-&gt;ssh_tunnel_username_entry = NULL;</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; priv-&gt;ssh_tunnel_auth_agent_radio = NULL;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; priv-&gt;ssh_tunnel_auth_password_radio = NULL;</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; priv-&gt;ssh_tunnel_auth_publickey_radio = NULL;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; priv-&gt;ssh_tunnel_auth_auto_publickey_radio = NULL;</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; priv-&gt;ssh_tunnel_privatekey_chooser = NULL;</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"> 1077</span>&#160; g_hash_table_remove_all(priv-&gt;setting_widgets);</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; protocol = <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(combo);</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; <span class="keywordflow">if</span> (protocol) {</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; priv-&gt;plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>,</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; protocol);</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; g_free(protocol);</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor_create_all_settings</a>(gfe);</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"> 1086</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7"> 1088</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor_save_ssh_tunnel_tab</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; gboolean ssh_tunnel_enabled;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; <span class="keywordtype">int</span> ssh_tunnel_auth;</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; ssh_tunnel_enabled = (priv-&gt;ssh_tunnel_enabled_check ?</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_enabled_check)) : FALSE);</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file,</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_loopback&quot;</span>,</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; (priv-&gt;ssh_tunnel_loopback_check ?</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_loopback_check)) :</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; FALSE));</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, ssh_tunnel_enabled);</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span>,</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; (ssh_tunnel_enabled ? gtk_entry_get_text(GTK_ENTRY(priv-&gt;ssh_tunnel_username_entry)) : NULL));</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>,</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; (ssh_tunnel_enabled &amp;&amp; priv-&gt;ssh_tunnel_server_entry</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; &amp;&amp; (priv-&gt;ssh_tunnel_server_custom_radio == NULL</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; || gtk_toggle_button_get_active(</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_server_custom_radio))) ?</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; gtk_entry_get_text(GTK_ENTRY(priv-&gt;ssh_tunnel_server_entry)) : NULL));</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; ssh_tunnel_auth = (priv-&gt;ssh_tunnel_auth_publickey_radio</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; &amp;&amp; gtk_toggle_button_get_active(</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_publickey_radio)) ?</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a> :</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; priv-&gt;ssh_tunnel_auth_auto_publickey_radio</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; &amp;&amp; gtk_toggle_button_get_active(</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_auto_publickey_radio)) ?</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160; <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a> :</div><div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160; priv-&gt;ssh_tunnel_auth_agent_radio</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; &amp;&amp; gtk_toggle_button_get_active(</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; GTK_TOGGLE_BUTTON(priv-&gt;ssh_tunnel_auth_agent_radio)) ?</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a> : <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>);</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_auth&quot;</span>,</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; ssh_tunnel_auth</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; );</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_privatekey&quot;</span>,</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; (priv-&gt;ssh_tunnel_privatekey_chooser ?</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv-&gt;ssh_tunnel_privatekey_chooser)) : NULL));</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>,</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; (ssh_tunnel_enabled &amp;&amp; (ssh_tunnel_auth == <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>)) ? gtk_entry_get_text(GTK_ENTRY(priv-&gt;ssh_tunnel_auth_password)) : NULL);</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"> 1143</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; <span class="stringliteral">&quot;ssh_tunnel_passphrase&quot;</span>,</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; (ssh_tunnel_enabled &amp;&amp; (ssh_tunnel_auth == <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a> || ssh_tunnel_auth == <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>)) ?</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; gtk_entry_get_text(GTK_ENTRY(priv-&gt;ssh_tunnel_passphrase)) : NULL);</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd"> 1150</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor_update_settings</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;{</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; gpointer key, value;</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; g_hash_table_iter_init(&amp;iter, priv-&gt;setting_widgets);</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, &amp;key, &amp;value)) {</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordflow">if</span> (GTK_IS_ENTRY(value)) {</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, (gchar *)key, gtk_entry_get_text(GTK_ENTRY(value)));</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (GTK_IS_COMBO_BOX(value)) {</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(priv-&gt;remmina_file, (gchar *)key,</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(value)));</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (GTK_IS_FILE_CHOOSER(value)) {</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; priv-&gt;remmina_file,</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; (gchar *)key,</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; gtk_widget_get_sensitive(GTK_WIDGET(value)) ?</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(value)) :</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; NULL);</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (GTK_IS_TOGGLE_BUTTON(value)) {</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file, (gchar *)key,</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(value)));</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; }</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; }</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;}</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;</div><div class="line"><a name="l01178"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067"> 1178</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;{</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; <span class="keywordtype">int</span> res_w, res_h;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; gchar *custom_resolution;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a> res_mode;</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; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;name&quot;</span>, gtk_entry_get_text(GTK_ENTRY(priv-&gt;name_entry)));</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; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;group&quot;</span>,</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; (priv-&gt;group_combo ? <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;group_combo)) : NULL));</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;protocol&quot;</span>,</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;protocol_combo)));</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;precommand&quot;</span>, gtk_entry_get_text(GTK_ENTRY(priv-&gt;precommand_entry)));</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;postcommand&quot;</span>, gtk_entry_get_text(GTK_ENTRY(priv-&gt;postcommand_entry)));</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;server&quot;</span>,</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; (priv-&gt;server_combo ? <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;server_combo)) : NULL));</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"> 1201</span>&#160; <span class="keywordflow">if</span> (priv-&gt;resolution_auto_radio) {</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; <span class="keywordflow">if</span> (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv-&gt;resolution_auto_radio))) {</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; <span class="comment">/* Resolution is set to auto (which means: Use client fullscreen resolution, aka use client resolution) */</span></div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; res_w = res_h = 0;</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a>;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv-&gt;resolution_iws_radio))) {</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; <span class="comment">/* Resolution is set to initial window size */</span></div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; res_w = res_h = 0;</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a>;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160; <span class="comment">/* Resolution is set to a value from the list */</span></div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160; custom_resolution = <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;resolution_custom_combo));</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a>(custom_resolution, &amp;res_w, &amp;res_h))</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a>;</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a>;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; g_free(custom_resolution);</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; }</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;resolution_mode&quot;</span>, res_mode);</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;resolution_width&quot;</span>, res_w);</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;resolution_height&quot;</span>, res_h);</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; }</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; <span class="keywordflow">if</span> (priv-&gt;keymap_combo)</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; <a class="code" href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a>(priv-&gt;remmina_file, <span class="stringliteral">&quot;keymap&quot;</span>,</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; <a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GTK_COMBO_BOX(priv-&gt;keymap_combo)));</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"> 1228</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor_save_ssh_tunnel_tab</a>(gfe);</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor_update_settings</a>(gfe);</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6"> 1232</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor_on_default</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;{</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *gf;</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; GtkWidget *dialog;</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; <a class="code" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a>(gfe);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; gf = <a class="code" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file);</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; <a class="code" href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a>(gf, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>);</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; <span class="comment">/* Clear properties that should never be default */</span></div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;name&quot;</span>, NULL);</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;server&quot;</span>, NULL);</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;password&quot;</span>, NULL);</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;precommand&quot;</span>, NULL);</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;postcommand&quot;</span>, NULL);</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#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>, NULL);</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>, NULL);</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;ssh_tunnel_passphrase&quot;</span>, NULL);</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(gf);</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(gf);</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160;</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(gfe), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; _(<span class="stringliteral">&quot;Default settings saved.&quot;</span>));</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160; gtk_widget_destroy(dialog);</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"> 1263</span>&#160;</div><div class="line"><a name="l01264"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad"> 1264</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor_on_save</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;{</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a>(gfe);</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a>(gfe);</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file);</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160;</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; gtk_widget_destroy(GTK_WIDGET(gfe));</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;</div><div class="line"><a name="l01277"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25"> 1277</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor_on_connect</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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"> 1279</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *gf;</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"> 1282</span>&#160; <a class="code" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a>(gfe);</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; gf = <a class="code" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; <span class="comment">/* Put server into name for &quot;Quick Connect&quot; */</span></div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(gf) == NULL)</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;name&quot;</span>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gf, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; gtk_widget_destroy(GTK_WIDGET(gfe));</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; gf-&gt;prevent_saving = TRUE;</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(gf);</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;}</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"><a class="line" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e"> 1293</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor_on_save_connect</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;{</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *gf;</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; <a class="code" href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a>(gfe);</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a>(gfe);</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; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file);</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</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; gf = <a class="code" href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file);</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160; <span class="comment">/* Put server into name for Quick Connect */</span></div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(gf) == NULL)</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(gf, <span class="stringliteral">&quot;name&quot;</span>, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gf, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; gtk_widget_destroy(GTK_WIDGET(gfe));</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(gf);</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"> 1312</span>&#160;</div><div class="line"><a name="l01313"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3"> 1313</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor_on_cancel</a>(GtkWidget *button, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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"> 1315</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; gtk_widget_destroy(GTK_WIDGET(gfe));</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160;}</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;</div><div class="line"><a name="l01319"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d"> 1319</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d">remmina_file_editor_init</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv;</div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160;</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160; priv = g_new0(<a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a>, 1);</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160; gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a> = priv;</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; <span class="comment">/* Create the editor dialog */</span></div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; gtk_window_set_title(GTK_WINDOW(gfe), _(<span class="stringliteral">&quot;Remote Desktop Preference&quot;</span>));</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160; widget = gtk_dialog_add_button(GTK_DIALOG(gfe), (_(<span class="stringliteral">&quot;_Cancel&quot;</span>)), GTK_RESPONSE_CANCEL);</div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor_on_cancel</a>), gfe);</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; <span class="comment">/* Default button */</span></div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; widget = gtk_dialog_add_button(GTK_DIALOG(gfe), (_(<span class="stringliteral">&quot;Save as Default&quot;</span>)), GTK_RESPONSE_OK);</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; gtk_widget_set_tooltip_text(GTK_WIDGET(widget), _(<span class="stringliteral">&quot;Use the current settings as the default for all new connection profiles&quot;</span>));</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor_on_default</a>), gfe);</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160;</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; widget = gtk_dialog_add_button(GTK_DIALOG(gfe), (_(<span class="stringliteral">&quot;_Save&quot;</span>)), GTK_RESPONSE_APPLY);</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor_on_save</a>), gfe);</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; gtk_widget_set_sensitive(widget, FALSE);</div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; priv-&gt;save_button = widget;</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; widget = gtk_dialog_add_button(GTK_DIALOG(gfe), (_(<span class="stringliteral">&quot;Connect&quot;</span>)), GTK_RESPONSE_ACCEPT);</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25">remmina_file_editor_on_connect</a>), gfe);</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; widget = gtk_dialog_add_button(GTK_DIALOG(gfe), (_(<span class="stringliteral">&quot;_Save and Connect&quot;</span>)), GTK_RESPONSE_OK);</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; gtk_widget_set_can_default(widget, TRUE);</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor_on_save_connect</a>), gfe);</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; gtk_dialog_set_default_response(GTK_DIALOG(gfe), GTK_RESPONSE_OK);</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; gtk_window_set_default_size(GTK_WINDOW(gfe), 800, 600);</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; g_signal_connect(G_OBJECT(gfe), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor_destroy</a>), NULL);</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; g_signal_connect(G_OBJECT(gfe), <span class="stringliteral">&quot;realize&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor_on_realize</a>), NULL);</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160;</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; priv-&gt;setting_widgets = g_hash_table_new(g_str_hash, g_str_equal);</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; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GTK_WIDGET(gfe));</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;</div><div class="line"><a name="l01362"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b"> 1362</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor_iterate_protocol</a>(gchar *protocol, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe = REMMINA_FILE_EDITOR(data);</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; GtkListStore *store;</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; gboolean first;</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160;</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; store = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;protocol_combo)));</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; first = !gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &amp;iter);</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>&#160; gtk_list_store_set(store, &amp;iter, 0, protocol, 1, g_dgettext(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">domain</a>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>), 2,</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160; ((<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)plugin)-&gt;icon_name, -1);</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">if</span> (first || g_strcmp0(protocol, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;remmina_file, <span class="stringliteral">&quot;protocol&quot;</span>)) == 0)</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160; gtk_combo_box_set_active_iter(GTK_COMBO_BOX(gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>-&gt;protocol_combo), &amp;iter);</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"> 1381</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l01384"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257"> 1384</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv;</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; priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; gtk_widget_set_sensitive(priv-&gt;group_combo, TRUE);</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; gtk_widget_set_sensitive(priv-&gt;save_button, TRUE);</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"> 1393</span>&#160;</div><div class="line"><a name="l01394"></a><span class="lineno"><a class="line" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b"> 1394</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor_entry_on_changed</a>(GtkEditable *editable, <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</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"> 1396</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv;</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"> 1399</span>&#160; priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(priv-&gt;remmina_file) == NULL) {</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(priv-&gt;remmina_file);</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; <span class="comment">/* TODO: Probably to be removed */</span></div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; <a class="code" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a>(gfe);</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(priv-&gt;remmina_file));</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(priv-&gt;remmina_file);</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; <a class="code" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a>(gfe);</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;}</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160;</div><div class="line"><a name="l01411"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056"> 1411</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe)</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;{</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv;</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; priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(priv-&gt;remmina_file) == NULL) {</div><div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(priv-&gt;remmina_file);</div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(priv-&gt;remmina_file));</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(priv-&gt;remmina_file);</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"> 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"> 1425</span>&#160;</div><div class="line"><a name="l01426"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06"> 1426</a></span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160; <a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe;</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *priv;</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; gchar *groups;</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; gchar *s;</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; <span class="keyword">const</span> gchar *cs;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; gfe = REMMINA_FILE_EDITOR(g_object_new(REMMINA_TYPE_FILE_EDITOR, NULL));</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; priv = gfe-&gt;<a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; priv-&gt;remmina_file = remminafile;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile) == NULL)</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; gtk_dialog_set_response_sensitive(GTK_DIALOG(gfe), GTK_RESPONSE_APPLY, FALSE);</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; <span class="comment">/* Create the &quot;Profile&quot; group on the top (for name and protocol) */</span></div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 4);</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 8);</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160; gtk_grid_set_column_homogeneous(GTK_GRID(grid), TRUE);</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(grid), 8);</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(gfe))), grid, FALSE, FALSE, 2);</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <span class="comment">//remmina_public_create_group(GTK_GRID(grid), _(&quot;Profile&quot;), 0, 4, 3);</span></div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160; <span class="comment">/* Profile: Name */</span></div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Name&quot;</span>));</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 3, 2, 1);</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 10);</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 3, 3, 1);</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 100);</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; priv-&gt;name_entry = widget;</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">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile) == NULL) {</div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), _(<span class="stringliteral">&quot;Quick Connect&quot;</span>));</div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 16, 0)</span></div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160; gtk_entry_grab_focus_without_selecting(GTK_ENTRY(widget));</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor_entry_on_changed</a>), gfe);</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; cs = <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="l01477"></a><span class="lineno"> 1477</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; }</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; <span class="comment">/* Profile: Group */</span></div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Group&quot;</span>));</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 6, 2, 1);</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; groups = <a class="code" href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a>();</div><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160; priv-&gt;group_combo = <a class="code" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a>(groups, <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;group&quot;</span>), FALSE);</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160; g_free(groups);</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160; gtk_widget_show(priv-&gt;group_combo);</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; gtk_grid_attach(GTK_GRID(grid), priv-&gt;group_combo, 1, 6, 3, 1);</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; gtk_widget_set_sensitive(priv-&gt;group_combo, FALSE);</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; s = g_strdup_printf(_(<span class="stringliteral">&quot;Use &#39;%s&#39; as subgroup delimiter&quot;</span>), <span class="stringliteral">&quot;/&quot;</span>);</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160; gtk_widget_set_tooltip_text(priv-&gt;group_combo, s);</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160; g_free(s);</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160;</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; <span class="comment">/* Profile: Protocol */</span></div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Protocol&quot;</span>));</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 9, 2, 1);</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; widget = <a class="code" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a>(TRUE);</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 9, 3, 1);</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; priv-&gt;protocol_combo = widget;</div><div class="line"><a name="l01509"></a><span class="lineno"> 1509</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#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <a class="code" href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor_iterate_protocol</a>, gfe);</div><div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor_protocol_combo_on_changed</a>), gfe);</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; <span class="comment">/* Prior connection command */</span></div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Pre-command&quot;</span>));</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 12, 3, 1);</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 10);</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; widget = gtk_entry_new();</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 12, 3, 1);</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 200);</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; priv-&gt;precommand_entry = widget;</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; cs = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;precommand&quot;</span>);</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160; gtk_entry_set_placeholder_text(GTK_ENTRY(widget), _(<span class="stringliteral">&quot;command %h %u %t %U %p %g --option&quot;</span>));</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; gtk_widget_set_tooltip_markup(widget, _(cmd_tips));</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; <span class="comment">/* POST connection command */</span></div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Post-command&quot;</span>));</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160; gtk_widget_set_valign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; gtk_widget_set_halign(widget, GTK_ALIGN_START);</div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, 15, 3, 1);</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 10);</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; widget = gtk_entry_new();</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 1, 15, 3, 1);</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(widget), 200);</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160; priv-&gt;postcommand_entry = widget;</div><div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160; cs = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;postcommand&quot;</span>);</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160; gtk_entry_set_text(GTK_ENTRY(widget), cs ? cs : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160; gtk_entry_set_placeholder_text(GTK_ENTRY(widget), _(<span class="stringliteral">&quot;/path/to/command -opt1 arg %h %u %t -opt2 %U %p %g&quot;</span>));</div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160; gtk_widget_set_tooltip_markup(widget, _(cmd_tips));</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; <span class="comment">/* Create the &quot;Preference&quot; frame */</span></div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; widget = gtk_event_box_new();</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(gfe))), widget, TRUE, TRUE, 2);</div><div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160; priv-&gt;config_box = widget;</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; priv-&gt;config_container = NULL;</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; priv-&gt;config_scrollable = NULL;</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; <a class="code" href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor_protocol_combo_on_changed</a>(GTK_COMBO_BOX(priv-&gt;protocol_combo), gfe);</div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160;</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; <a class="code" href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a>(gfe);</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(gfe);</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;</div><div class="line"><a name="l01564"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e"> 1564</a></span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a>(NULL, NULL);</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;}</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;</div><div class="line"><a name="l01570"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb"> 1570</a></span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a>(<span class="keyword">const</span> gchar *server, <span class="keyword">const</span> gchar *protocol)</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;{</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160;</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>();</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; <span class="keywordflow">if</span> (server)</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</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="l01578"></a><span class="lineno"> 1578</span>&#160; <span class="keywordflow">if</span> (protocol)</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</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="l01580"></a><span class="lineno"> 1580</span>&#160;</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a>(remminafile);</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;</div><div class="line"><a name="l01584"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf"> 1584</a></span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;{</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160;</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a>(filename);</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a>(remminafile);</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160; _(<span class="stringliteral">&quot;Could not find the file \&quot;%s\&quot;.&quot;</span>), filename);</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; }</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160;}</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;</div><div class="line"><a name="l01603"></a><span class="lineno"><a class="line" href="remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea"> 1603</a></span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;{</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160;</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; remminafile = <a class="code" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a>(filename);</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a>(remminafile);</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; _(<span class="stringliteral">&quot;Could not find the file \&quot;%s\&quot;.&quot;</span>), filename);</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; <span class="keywordflow">return</span> NULL;</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;}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_af9c70a727bfeb32730b98ce5cf7a3739"><div class="ttname"><a href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a></div><div class="ttdeci">void remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00245">remmina_public.c:245</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_af60b8edfa50563ae4c7593efc3deed55"><div class="ttname"><a href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a></div><div class="ttdeci">const gchar * remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00374">remmina_plugin_manager.c:374</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a11147c41297537effe55f18a63ce9f7e"><div class="ttname"><a href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a></div><div class="ttdeci">GtkDialog * remmina_string_list_new(gboolean two_columns, const gchar *fields_separator)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00281">remmina_string_list.c:281</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a745bbef1d48a7462f8db997821742395"><div class="ttname"><a href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a></div><div class="ttdeci">gchar ** remmina_pref_keymap_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00951">remmina_pref.c:951</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_afad358c6e3a5918416c6eb036157d8e5"><div class="ttname"><a href="remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5">remmina_file_editor_create_resolution</a></div><div class="ttdeci">static void remmina_file_editor_create_resolution(RemminaFileEditor *gfe, const RemminaProtocolSetting *setting, GtkWidget *grid, gint row)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00506">remmina_file_editor.c:506</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3fb992fced83e0f1c4e4e3c8d2206be5"><div class="ttname"><a href="remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5">remmina_file_dup</a></div><div class="ttdeci">RemminaFile * remmina_file_dup(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00679">remmina_file.c:679</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a9ec86f1e9caea5ebc867a90230d6b51a"><div class="ttname"><a href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00062">remmina_public.c:62</a></div></div>
+<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#l01277">remmina_file_editor.c:1277</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#l00089">types.h:89</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#l00072">rcw.c:72</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#l00091">types.h:91</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#l00248">remmina_string_list.c:248</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>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</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__file__editor_8c_html_a8a7f3ce69255bf413ef8fa841af3d019"><div class="ttname"><a href="remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019">remmina_file_editor_ssh_tunnel_enabled_check_on_toggled</a></div><div class="ttdeci">static void remmina_file_editor_ssh_tunnel_enabled_check_on_toggled(GtkToggleButton *togglebutton, RemminaFileEditor *gfe, RemminaProtocolSSHSetting ssh_setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00301">remmina_file_editor.c:301</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a333de350f1b07add2d0fd06320c80d16"><div class="ttname"><a href="remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16">remmina_file_editor_protocol_combo_on_changed</a></div><div class="ttdeci">static void remmina_file_editor_protocol_combo_on_changed(GtkComboBox *combo, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01043">remmina_file_editor.c:1043</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a13f13a6a4280268656f258cb5aeff031"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00388">remmina_plugin_manager.c:388</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a0688fb26bba7dbc0708949bd9993fcb9"><div class="ttname"><a href="remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9">remmina_file_editor_create_check</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_check(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint top, const gchar *label, gboolean value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00653">remmina_file_editor.c:653</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</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="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a6eb0bcee764064d6a7dd84c015d9ed4f"><div class="ttname"><a href="remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f">remmina_file_editor_destroy</a></div><div class="ttdeci">static void remmina_file_editor_destroy(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00204">remmina_file_editor.c:204</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_af1679d83834c8409f23e00c555d677fb"><div class="ttname"><a href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a></div><div class="ttdeci">gchar * remmina_public_combo_get_active_text(GtkComboBox *combo)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00266">remmina_public.c:266</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a098786d3aa6991aeba43a61e29d534d0"><div class="ttname"><a href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a></div><div class="ttdeci">gboolean remmina_public_resolution_validation_func(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00603">remmina_public.c:603</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a024d3e6d752dd29828b31c60c8c7c201"><div class="ttname"><a href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">_RemminaPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00057">plugin.h:57</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a0208d5dc8197423da67e5967aafb7a05"><div class="ttname"><a href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a></div><div class="ttdeci">gchar * remmina_pref_get_recent(const gchar *protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00883">remmina_pref.c:883</a></div></div>
+<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__file__editor_8c_html_af7edb004da0ecc48277c1b656f2649ae"><div class="ttname"><a href="remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae">remmina_file_editor_create_server</a></div><div class="ttdeci">static void remmina_file_editor_create_server(RemminaFileEditor *gfe, const RemminaProtocolSetting *setting, GtkWidget *grid, gint row)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00397">remmina_file_editor.c:397</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_af80ed314f91d653237249d839c7fc3b2"><div class="ttname"><a href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a></div><div class="ttdeci">void remmina_icon_populate_menu(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00264">remmina_icon.c:264</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00088">types.h:88</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</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#l01570">remmina_file_editor.c:1570</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ac4d859a06af12d7ce5b20cc8ff815167"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">_RemminaProtocolSetting::opt2</a></div><div class="ttdeci">const gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00100">types.h:100</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a9afd8d41c66f547320930eb331f3124d"><div class="ttname"><a href="remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d">remmina_file_editor_init</a></div><div class="ttdeci">static void remmina_file_editor_init(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01319">remmina_file_editor.c:1319</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_afadc998c0d7ea8d1bf2883e336e18f89"><div class="ttname"><a href="remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89">remmina_file_editor_create_chooser</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_chooser(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value, gint type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00670">remmina_file_editor.c:670</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59eebf1d365ef192de8e14da2c381f37"><div class="ttname"><a href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref::resolutions</a></div><div class="ttdeci">gchar * resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00127">remmina_pref.h:127</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ac952f8ddb715314f11cef1ccc513fb7e"><div class="ttname"><a href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a></div><div class="ttdeci">void remmina_file_generate_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00108">remmina_file.c:108</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a4ac66b7ebefb9bd8167737eb1af83cde"><div class="ttname"><a href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00056">plugin.h:56</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ab39d33637d0059aa67c896b90bc316f1"><div class="ttname"><a href="remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1">remmina_file_editor_create_ssh_privatekey</a></div><div class="ttdeci">static void remmina_file_editor_create_ssh_privatekey(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint column)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00352">remmina_file_editor.c:352</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aaf3fdb980c24cd06965b85ebcdd79173"><div class="ttname"><a href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a></div><div class="ttdeci">int remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00691">remmina_public.c:691</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ab434990a6fe70b7e8a4a8b11129527a6"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">_RemminaProtocolSetting::compact</a></div><div class="ttdeci">gboolean compact</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00098">types.h:98</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78a"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a></div><div class="ttdeci">RemminaProtocolWidgetResolutionMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00123">types.h:123</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a616258d3226ec1f1ecee6ce18aba535b"><div class="ttname"><a href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00205">remmina_public.c:205</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ab5583c8b2ff4cfa003d7bdc69cff0067"><div class="ttname"><a href="remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067">remmina_file_editor_update</a></div><div class="ttdeci">static void remmina_file_editor_update(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01178">remmina_file_editor.c:1178</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00126">types.h:126</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ab03b042504c09c1ad880ac126a703114"><div class="ttname"><a href="remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114">remmina_file_set_filename</a></div><div class="ttdeci">void remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00176">remmina_file.c:176</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">REMMINA_PROTOCOL_SSH_SETTING_SSH</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00106">types.h:106</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__file__editor_8c_html_add382dd8f40444b928e78b293a86a257"><div class="ttname"><a href="remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a></div><div class="ttdeci">void remmina_file_editor_check_profile(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01384">remmina_file_editor.c:1384</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3796b536244067e9a85923b1cefa6cde"><div class="ttname"><a href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00111">remmina_public.c:111</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_af533231bb1281d09d98a14d3d218fba0"><div class="ttname"><a href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">_RemminaProtocolSetting::opt1</a></div><div class="ttdeci">const gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00099">types.h:99</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_abbeeb0b88810f1f479ffb1fadfbf6530"><div class="ttname"><a href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a></div><div class="ttdeci">struct _RemminaFileEditorPriv RemminaFileEditorPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00048">remmina_file_editor.h:48</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_aecbc005c39cdf4fab4779090f11a3556"><div class="ttname"><a href="remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556">remmina_file_editor_create_notebook_tab</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_notebook_tab(RemminaFileEditor *gfe, const gchar *stock_id, const gchar *label, gint rows, gint cols)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00240">remmina_file_editor.c:240</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ab4a593956dfe89aba3242a5c264a681f"><div class="ttname"><a href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo(gboolean use_icon)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00175">remmina_public.c:175</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00127">types.h:127</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a></div><div class="ttdeci">RemminaProtocolSSHSetting</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00103">types.h:103</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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</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#l00723">remmina_file.c:723</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a287b79ac0e199393f391655ab5cbb55b"><div class="ttname"><a href="remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b">remmina_file_editor_entry_on_changed</a></div><div class="ttdeci">static void remmina_file_editor_entry_on_changed(GtkEditable *editable, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01394">remmina_file_editor.c:1394</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a6415f73260076747c4f933af7f9f4b38"><div class="ttname"><a href="remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38">remmina_file_editor_create_all_settings</a></div><div class="ttdeci">static void remmina_file_editor_create_all_settings(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01009">remmina_file_editor.c:1009</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a3df3718727200d865f9f977435db30ea"><div class="ttname"><a href="remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea">remmina_file_editor_create_notebook_container</a></div><div class="ttdeci">static void remmina_file_editor_create_notebook_container(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00218">remmina_file_editor.c:218</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="remmina__file__editor_8c_html_a08327d6951c345808628dbb5784aba06"><div class="ttname"><a href="remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new_from_file(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01426">remmina_file_editor.c:1426</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00108">types.h:108</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_ab1bacc097f59c20b477d954bb863a5e0"><div class="ttname"><a href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a></div><div class="ttdeci">void remmina_string_list_set_text(const gchar *text, const gboolean clear_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00172">remmina_string_list.c:172</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<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#l01603">remmina_file_editor.c:1603</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00125">types.h:125</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ab6e562792eb63ec43ed7f9a4b6687c23"><div class="ttname"><a href="remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23">remmina_file_editor_create_ssh_tunnel_tab</a></div><div class="ttdeci">static void remmina_file_editor_create_ssh_tunnel_tab(RemminaFileEditor *gfe, RemminaProtocolSSHSetting ssh_setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00823">remmina_file_editor.c:823</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_class_html"><div class="ttname"><a href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00056">remmina_file_editor.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a6274d44b592a54162ff583135e55ffc9"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting::type</a></div><div class="ttdeci">RemminaProtocolSettingType type</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00095">types.h:95</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html"><div class="ttname"><a href="remmina__string__list_8h.html">remmina_string_list.h</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</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#l00090">remmina_file.c:90</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_aa9ca6ccf40b954051a0daa5c1efeef87"><div class="ttname"><a href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a></div><div class="ttdeci">void remmina_string_list_set_titles(gchar *title1, gchar *title2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00255">remmina_string_list.c:255</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a727f967cf81d4af3f953046b0c4cf08d"><div class="ttname"><a href="remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d">remmina_file_editor_create_settings</a></div><div class="ttdeci">static void remmina_file_editor_create_settings(RemminaFileEditor *gfe, GtkWidget *grid, const RemminaProtocolSetting *settings)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00705">remmina_file_editor.c:705</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a57224f3f69f04f398de563b71be6b18e"><div class="ttname"><a href="remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e">remmina_file_editor_on_save_connect</a></div><div class="ttdeci">static void remmina_file_editor_on_save_connect(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01293">remmina_file_editor.c:1293</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#l03892">rcw.c:3892</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a3866832d550ceac91d608900df4c8056"><div class="ttname"><a href="remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a></div><div class="ttdeci">void remmina_file_editor_file_save(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01411">remmina_file_editor.c:1411</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_html"><div class="ttname"><a href="struct___remmina_file_editor.html">_RemminaFileEditor</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00050">remmina_file_editor.h:50</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#l00524">remmina_file.c:524</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#l01564">remmina_file_editor.c:1564</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a880e8e6aee571b91eeb7f5d2f60e210b"><div class="ttname"><a href="remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b">remmina_file_editor_on_realize</a></div><div class="ttdeci">static void remmina_file_editor_on_realize(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00187">remmina_file_editor.c:187</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a112a0fd5bf7d5693b9cb717c850637cb"><div class="ttname"><a href="remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb">remmina_file_editor_button_on_toggled</a></div><div class="ttdeci">static void remmina_file_editor_button_on_toggled(GtkToggleButton *togglebutton, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00212">remmina_file_editor.c:212</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ad80ab042ac78231e88473aab8cfab877"><div class="ttname"><a href="remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877">remmina_file_editor_create_select</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_select(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gpointer *list, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00614">remmina_file_editor.c:614</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_aaa55ab55c6806aef6765eb01577365f3"><div class="ttname"><a href="remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3">remmina_file_editor_on_cancel</a></div><div class="ttdeci">static void remmina_file_editor_on_cancel(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01313">remmina_file_editor.c:1313</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#l00359">remmina_plugin_manager.c:359</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__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00084">types.h:84</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ac2a5cf9cdcf640986e245eb04be9c4ad"><div class="ttname"><a href="remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad">remmina_file_editor_on_save</a></div><div class="ttdeci">static void remmina_file_editor_on_save(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01264">remmina_file_editor.c:1264</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_afcc5ee6fcd22686b716fbe595cb210a6"><div class="ttname"><a href="remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6">remmina_file_editor_on_default</a></div><div class="ttdeci">static void remmina_file_editor_on_default(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01232">remmina_file_editor.c:1232</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_afbc933a1aea81d64db71de8ad5ae1355"><div class="ttname"><a href="remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355">remmina_file_editor_create_combo</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_combo(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *list, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00633">remmina_file_editor.c:633</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a6e04143450eeb71e3d0b2c14983860a4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00063">plugin.h:63</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_a536edeef371d907ab3936f4d65c3003d"><div class="ttname"><a href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a></div><div class="ttdeci">gchar * remmina_file_manager_get_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00183">remmina_file_manager.c:183</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a15ee56057b40b31f40520048470f404b"><div class="ttname"><a href="remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b">remmina_file_editor_create_text</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_text(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00585">remmina_file_editor.c:585</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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a51b9fe336d9068ffc488ef55adc9eac4"><div class="ttname"><a href="remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4">remmina_file_editor_browse_resolution</a></div><div class="ttdeci">static void remmina_file_editor_browse_resolution(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00490">remmina_file_editor.c:490</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a5ea3f796c3a46aeb01b2f13f4a3d40a9"><div class="ttname"><a href="remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9">remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled</a></div><div class="ttdeci">static void remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled(GtkToggleButton *togglebutton, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00276">remmina_file_editor.c:276</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ac1685edf35a793a396ce039d7eec5343"><div class="ttname"><a href="remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343">remmina_file_copy</a></div><div class="ttdeci">RemminaFile * remmina_file_copy(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00191">remmina_file.c:191</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00107">types.h:107</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_af7b58659604660eb0cb40b0e0f8348ab"><div class="ttname"><a href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a></div><div class="ttdeci">RemminaFile * remmina_file_manager_load_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00327">remmina_file_manager.c:327</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_afc37e2e9dbe8f0c8bcf1a76d0c54ea1b"><div class="ttname"><a href="remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b">remmina_file_editor_iterate_protocol</a></div><div class="ttdeci">static gboolean remmina_file_editor_iterate_protocol(gchar *protocol, RemminaPlugin *plugin, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01362">remmina_file_editor.c:1362</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</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#l01584">remmina_file_editor.c:1584</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_html_a8517b06116569fad2bb71b99c2f75f6a"><div class="ttname"><a href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">_RemminaFileEditor::priv</a></div><div class="ttdeci">RemminaFileEditorPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00053">remmina_file_editor.h:53</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_aa3acf0470349d706d15fa751e982fd05"><div class="ttname"><a href="remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05">remmina_file_editor_browse_avahi</a></div><div class="ttdeci">static void remmina_file_editor_browse_avahi(GtkWidget *button, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00153">remmina_file_editor.c:153</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a1a88820e6278cc50eb59a6333c7f40dd"><div class="ttname"><a href="remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd">remmina_file_editor_update_settings</a></div><div class="ttdeci">static void remmina_file_editor_update_settings(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01150">remmina_file_editor.c:1150</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00124">types.h:124</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_ad0cf3a5b5f5f83e14f9d73c4f2460dca"><div class="ttname"><a href="remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca">remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled</a></div><div class="ttdeci">static void remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled(GtkToggleButton *togglebutton, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00286">remmina_file_editor.c:286</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a03bb3c4cc7a4be4eeee29dc287e33a23"><div class="ttname"><a href="remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23">remmina_file_editor_create_password</a></div><div class="ttdeci">static GtkWidget * remmina_file_editor_create_password(RemminaFileEditor *gfe, GtkWidget *grid, gint row, gint col, const gchar *label, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00447">remmina_file_editor.c:447</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aa5eacff7c9dab7457dd65525d01047f8"><div class="ttname"><a href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a></div><div class="ttdeci">void remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00130">remmina_public.c:130</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a51a45d872a9e7a0b06d25aef592a6e3a"><div class="ttname"><a href="remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a">remmina_file_editor_update_resolution</a></div><div class="ttdeci">static void remmina_file_editor_update_resolution(GtkWidget *widget, RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00477">remmina_file_editor.c:477</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a7f1406c817183d78a801668a10d73e0b"><div class="ttname"><a href="remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b">remmina_file_editor_class_init</a></div><div class="ttdeci">static void remmina_file_editor_class_init(RemminaFileEditorClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l00146">remmina_file_editor.c:146</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a7a5b063deb126422c461203c074a3dc4"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">_RemminaProtocolSetting::label</a></div><div class="ttdeci">const gchar * label</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00097">types.h:97</a></div></div>
+<div class="ttc" id="remmina__file__editor_8c_html_a99984deb4b5a3b873b26c0c9cf8268b7"><div class="ttname"><a href="remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7">remmina_file_editor_save_ssh_tunnel_tab</a></div><div class="ttdeci">static void remmina_file_editor_save_ssh_tunnel_tab(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01088">remmina_file_editor.c:1088</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</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__file_8c_html_a74951c1067a1a5e1341f5e1c1206dec6"><div class="ttname"><a href="remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6">remmina_file_set_string_ref</a></div><div class="ttdeci">void remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00429">remmina_file.c:429</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a74058eac0af28c05a55d041103457aec"><div class="ttname"><a href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a></div><div class="ttdeci">gchar * remmina_string_list_get_text(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00206">remmina_string_list.c:206</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__editor_8c.html">remmina_file_editor.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__editor_8h.html b/docs/remmina__file__editor_8h.html
new file mode 100644
index 000000000..4c0f531d7
--- /dev/null
+++ b/docs/remmina__file__editor_8h.html
@@ -0,0 +1,357 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_editor.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__editor_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file_editor.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file__editor_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_editor.html">_RemminaFileEditor</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:abbeeb0b88810f1f479ffb1fadfbf6530"><td class="memItemLeft" align="right" valign="top">typedef struct _RemminaFileEditorPriv&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a></td></tr>
+<tr class="separator:abbeeb0b88810f1f479ffb1fadfbf6530"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16a58b48a99ec5a073a5fc6f5b0d9498"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_file_editor.html">_RemminaFileEditor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a></td></tr>
+<tr class="separator:a16a58b48a99ec5a073a5fc6f5b0d9498"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2662b100a2d321db52fc1280c899208"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a></td></tr>
+<tr class="separator:ad2662b100a2d321db52fc1280c899208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac5b20a46b2d95b1e5e4e09006e0ee04f"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f">remmina_file_editor_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:ac5b20a46b2d95b1e5e4e09006e0ee04f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08327d6951c345808628dbb5784aba06"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a08327d6951c345808628dbb5784aba06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4e8657ca722e4cce3f3c42c0cfec51e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a> (void)</td></tr>
+<tr class="separator:aa4e8657ca722e4cce3f3c42c0cfec51e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab563344276cbcdf0fcea05b0b64c7aeb"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a> (const gchar *server, const gchar *protocol)</td></tr>
+<tr class="separator:ab563344276cbcdf0fcea05b0b64c7aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5c50852f8569f075eec5d5db30c2ebf"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa5c50852f8569f075eec5d5db30c2ebf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9345cfe3fb32d326b652e96ee55eaea"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa9345cfe3fb32d326b652e96ee55eaea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add382dd8f40444b928e78b293a86a257"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:add382dd8f40444b928e78b293a86a257"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3866832d550ceac91d608900df4c8056"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a> (<a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *gfe)</td></tr>
+<tr class="separator:a3866832d550ceac91d608900df4c8056"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a16a58b48a99ec5a073a5fc6f5b0d9498"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16a58b48a99ec5a073a5fc6f5b0d9498">&#9670;&nbsp;</a></span>RemminaFileEditor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_file_editor.html">_RemminaFileEditor</a> <a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad2662b100a2d321db52fc1280c899208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2662b100a2d321db52fc1280c899208">&#9670;&nbsp;</a></span>RemminaFileEditorClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a> <a class="el" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abbeeb0b88810f1f479ffb1fadfbf6530"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbeeb0b88810f1f479ffb1fadfbf6530">&#9670;&nbsp;</a></span>RemminaFileEditorPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct _RemminaFileEditorPriv <a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="add382dd8f40444b928e78b293a86a257"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add382dd8f40444b928e78b293a86a257">&#9670;&nbsp;</a></span>remmina_file_editor_check_profile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_editor_check_profile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01384">1384</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a3866832d550ceac91d608900df4c8056"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3866832d550ceac91d608900df4c8056">&#9670;&nbsp;</a></span>remmina_file_editor_file_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_editor_file_save </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a> *&#160;</td>
+ <td class="paramname"><em>gfe</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01411">1411</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ac5b20a46b2d95b1e5e4e09006e0ee04f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5b20a46b2d95b1e5e4e09006e0ee04f">&#9670;&nbsp;</a></span>remmina_file_editor_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_file_editor_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aa4e8657ca722e4cce3f3c42c0cfec51e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa4e8657ca722e4cce3f3c42c0cfec51e">&#9670;&nbsp;</a></span>remmina_file_editor_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01564">1564</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa5c50852f8569f075eec5d5db30c2ebf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5c50852f8569f075eec5d5db30c2ebf">&#9670;&nbsp;</a></span>remmina_file_editor_new_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_copy </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01584">1584</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="a08327d6951c345808628dbb5784aba06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08327d6951c345808628dbb5784aba06">&#9670;&nbsp;</a></span>remmina_file_editor_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01426">1426</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9345cfe3fb32d326b652e96ee55eaea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9345cfe3fb32d326b652e96ee55eaea">&#9670;&nbsp;</a></span>remmina_file_editor_new_from_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_from_filename </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01603">1603</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+<a id="ab563344276cbcdf0fcea05b0b64c7aeb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab563344276cbcdf0fcea05b0b64c7aeb">&#9670;&nbsp;</a></span>remmina_file_editor_new_full()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_file_editor_new_full </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8c_source.html#l01570">1570</a> of file <a class="el" href="remmina__file__editor_8c_source.html">remmina_file_editor.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__editor_8h.html">remmina_file_editor.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__editor_8h.js b/docs/remmina__file__editor_8h.js
new file mode 100644
index 000000000..c8bf7e92d
--- /dev/null
+++ b/docs/remmina__file__editor_8h.js
@@ -0,0 +1,16 @@
+var remmina__file__editor_8h =
+[
+ [ "_RemminaFileEditor", "struct___remmina_file_editor.html", "struct___remmina_file_editor" ],
+ [ "_RemminaFileEditorClass", "struct___remmina_file_editor_class.html", "struct___remmina_file_editor_class" ],
+ [ "RemminaFileEditor", "remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498", null ],
+ [ "RemminaFileEditorClass", "remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208", null ],
+ [ "RemminaFileEditorPriv", "remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530", null ],
+ [ "remmina_file_editor_check_profile", "remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257", null ],
+ [ "remmina_file_editor_file_save", "remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056", null ],
+ [ "remmina_file_editor_get_type", "remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f", null ],
+ [ "remmina_file_editor_new", "remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e", null ],
+ [ "remmina_file_editor_new_copy", "remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf", null ],
+ [ "remmina_file_editor_new_from_file", "remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06", null ],
+ [ "remmina_file_editor_new_from_filename", "remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea", null ],
+ [ "remmina_file_editor_new_full", "remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file__editor_8h_source.html b/docs/remmina__file__editor_8h_source.html
new file mode 100644
index 000000000..b3469d01e
--- /dev/null
+++ b/docs/remmina__file__editor_8h_source.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_editor.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__editor_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file_editor.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file__editor_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_FILE_EDITOR (remmina_file_editor_get_type())</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_FILE_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_FILE_EDITOR, RemminaFileEditor))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_FILE_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_FILE_EDITOR, RemminaFileEditorClass))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_FILE_EDITOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_FILE_EDITOR))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_IS_FILE_EDITOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_FILE_EDITOR))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_FILE_EDITOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_FILE_EDITOR, RemminaFileEditorClass))</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"><a class="line" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>_RemminaFileEditorPriv <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_file_editor.html"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_file_editor.html">_RemminaFileEditor</a> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872"> 51</a></span>&#160; GtkDialog <a class="code" href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872">dialog</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a"> 53</a></span>&#160; <a class="code" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> * <a class="code" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_file_editor_class.html"> 56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a> {</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f"> 57</a></span>&#160; GtkDialogClass <a class="code" href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f">parent_class</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;} <a class="code" href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;GType <a class="code" href="remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f">remmina_file_editor_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Base constructor */</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Create new file */</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb">remmina_file_editor_new_full</a>(<span class="keyword">const</span> gchar *server, <span class="keyword">const</span> gchar *protocol);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf">remmina_file_editor_new_copy</a>(<span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Open existing file */</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;GtkWidget *<a class="code" href="remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea">remmina_file_editor_new_from_filename</a>(<span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a>(<a class="code" href="struct___remmina_file_editor.html">RemminaFileEditor</a> *gfe);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;G_END_DECLS</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_a16a58b48a99ec5a073a5fc6f5b0d9498"><div class="ttname"><a href="remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498">RemminaFileEditor</a></div><div class="ttdeci">struct _RemminaFileEditor RemminaFileEditor</div></div>
+<div class="ttc" id="struct___remmina_file_editor_html_ad33dd514275a054042ab1ac258092872"><div class="ttname"><a href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872">_RemminaFileEditor::dialog</a></div><div class="ttdeci">GtkDialog dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00051">remmina_file_editor.h:51</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_add382dd8f40444b928e78b293a86a257"><div class="ttname"><a href="remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257">remmina_file_editor_check_profile</a></div><div class="ttdeci">void remmina_file_editor_check_profile(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01384">remmina_file_editor.c:1384</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_class_html_a3c652db10d3aab6c698273c846fc743f"><div class="ttname"><a href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f">_RemminaFileEditorClass::parent_class</a></div><div class="ttdeci">GtkDialogClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00057">remmina_file_editor.h:57</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_abbeeb0b88810f1f479ffb1fadfbf6530"><div class="ttname"><a href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a></div><div class="ttdeci">struct _RemminaFileEditorPriv RemminaFileEditorPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00048">remmina_file_editor.h:48</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_a3866832d550ceac91d608900df4c8056"><div class="ttname"><a href="remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056">remmina_file_editor_file_save</a></div><div class="ttdeci">void remmina_file_editor_file_save(RemminaFileEditor *gfe)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01411">remmina_file_editor.c:1411</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_aa5c50852f8569f075eec5d5db30c2ebf"><div class="ttname"><a href="remmina__file__editor_8h.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#l01584">remmina_file_editor.c:1584</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_ad2662b100a2d321db52fc1280c899208"><div class="ttname"><a href="remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208">RemminaFileEditorClass</a></div><div class="ttdeci">struct _RemminaFileEditorClass RemminaFileEditorClass</div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_aa4e8657ca722e4cce3f3c42c0cfec51e"><div class="ttname"><a href="remmina__file__editor_8h.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#l01564">remmina_file_editor.c:1564</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_class_html"><div class="ttname"><a href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00056">remmina_file_editor.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_html"><div class="ttname"><a href="struct___remmina_file_editor.html">_RemminaFileEditor</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00050">remmina_file_editor.h:50</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_ac5b20a46b2d95b1e5e4e09006e0ee04f"><div class="ttname"><a href="remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f">remmina_file_editor_get_type</a></div><div class="ttdeci">GType remmina_file_editor_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_a08327d6951c345808628dbb5784aba06"><div class="ttname"><a href="remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06">remmina_file_editor_new_from_file</a></div><div class="ttdeci">GtkWidget * remmina_file_editor_new_from_file(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8c_source.html#l01426">remmina_file_editor.c:1426</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_aa9345cfe3fb32d326b652e96ee55eaea"><div class="ttname"><a href="remmina__file__editor_8h.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#l01603">remmina_file_editor.c:1603</a></div></div>
+<div class="ttc" id="remmina__file__editor_8h_html_ab563344276cbcdf0fcea05b0b64c7aeb"><div class="ttname"><a href="remmina__file__editor_8h.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#l01570">remmina_file_editor.c:1570</a></div></div>
+<div class="ttc" id="struct___remmina_file_editor_html_a8517b06116569fad2bb71b99c2f75f6a"><div class="ttname"><a href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">_RemminaFileEditor::priv</a></div><div class="ttdeci">RemminaFileEditorPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__editor_8h_source.html#l00053">remmina_file_editor.h:53</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__editor_8h.html">remmina_file_editor.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__manager_8c.html b/docs/remmina__file__manager_8c.html
new file mode 100644
index 000000000..08948141b
--- /dev/null
+++ b/docs/remmina__file__manager_8c.html
@@ -0,0 +1,412 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_manager.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__manager_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file_manager.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file__manager_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa65bc30beb59d607ba430d966e7e27f5"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a> (void)</td></tr>
+<tr class="separator:aa65bc30beb59d607ba430d966e7e27f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d6280ce5d9e70ceb43dd24639d843d3"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a> (const char *src_path, const char *dst_path)</td></tr>
+<tr class="separator:a4d6280ce5d9e70ceb43dd24639d843d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa2b1889dced4289b0f7d7edffc82e72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a> (void)</td></tr>
+<tr class="separator:afa2b1889dced4289b0f7d7edffc82e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55a717aafc046713380bd2c55f29165a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a> (GFunc func, gpointer user_data)</td></tr>
+<tr class="separator:a55a717aafc046713380bd2c55f29165a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a536edeef371d907ab3936f4d65c3003d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a> (void)</td></tr>
+<tr class="separator:a536edeef371d907ab3936f4d65c3003d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b100405380ddccce98669a8b46ecc66"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager_add_group</a> (GNode *node, const gchar *group)</td></tr>
+<tr class="separator:a3b100405380ddccce98669a8b46ecc66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6593a3f297f420f012405fa582819857"><td class="memItemLeft" align="right" valign="top">GNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a> (void)</td></tr>
+<tr class="separator:a6593a3f297f420f012405fa582819857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06196f19abc15526514a5aa59a568798"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a> (GNode *node)</td></tr>
+<tr class="separator:a06196f19abc15526514a5aa59a568798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7b58659604660eb0cb40b0e0f8348ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a> (const gchar *filename)</td></tr>
+<tr class="separator:af7b58659604660eb0cb40b0e0f8348ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:af83917dac9f2646670733215ba7a3482"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a></td></tr>
+<tr class="separator:af83917dac9f2646670733215ba7a3482"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace1098aad45256ac0b0155cb042472e9"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a></td></tr>
+<tr class="separator:ace1098aad45256ac0b0155cb042472e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa65bc30beb59d607ba430d966e7e27f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa65bc30beb59d607ba430d966e7e27f5">&#9670;&nbsp;</a></span>remmina_file_get_datadir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_datadir </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a3b100405380ddccce98669a8b46ecc66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b100405380ddccce98669a8b46ecc66">&#9670;&nbsp;</a></span>remmina_file_manager_add_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_file_manager_add_group </td>
+ <td>(</td>
+ <td class="paramtype">GNode *&#160;</td>
+ <td class="paramname"><em>node</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00222">222</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a4d6280ce5d9e70ceb43dd24639d843d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d6280ce5d9e70ceb43dd24639d843d3">&#9670;&nbsp;</a></span>remmina_file_manager_do_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_file_manager_do_copy </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>dst_path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>remmina_pref_file_do_copy and remmina_file_manager_do_copy to remmina_files_copy </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00090">90</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a06196f19abc15526514a5aa59a568798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06196f19abc15526514a5aa59a568798">&#9670;&nbsp;</a></span>remmina_file_manager_free_group_tree()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_manager_free_group_tree </td>
+ <td>(</td>
+ <td class="paramtype">GNode *&#160;</td>
+ <td class="paramname"><em>node</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00307">307</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a6593a3f297f420f012405fa582819857"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6593a3f297f420f012405fa582819857">&#9670;&nbsp;</a></span>remmina_file_manager_get_group_tree()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GNode* remmina_file_manager_get_group_tree </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00276">276</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a536edeef371d907ab3936f4d65c3003d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a536edeef371d907ab3936f4d65c3003d">&#9670;&nbsp;</a></span>remmina_file_manager_get_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_manager_get_groups </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00183">183</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afa2b1889dced4289b0f7d7edffc82e72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa2b1889dced4289b0f7d7edffc82e72">&#9670;&nbsp;</a></span>remmina_file_manager_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_manager_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00102">102</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a55a717aafc046713380bd2c55f29165a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55a717aafc046713380bd2c55f29165a">&#9670;&nbsp;</a></span>remmina_file_manager_iterate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_file_manager_iterate </td>
+ <td>(</td>
+ <td class="paramtype">GFunc&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="af7b58659604660eb0cb40b0e0f8348ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7b58659604660eb0cb40b0e0f8348ab">&#9670;&nbsp;</a></span>remmina_file_manager_load_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_manager_load_file </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00327">327</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ace1098aad45256ac0b0155cb042472e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace1098aad45256ac0b0155cb042472e9">&#9670;&nbsp;</a></span>cachedir</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* cachedir</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00050">50</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="af83917dac9f2646670733215ba7a3482"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af83917dac9f2646670733215ba7a3482">&#9670;&nbsp;</a></span>remminadir</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remminadir</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00049">49</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__manager_8c.html">remmina_file_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__manager_8c.js b/docs/remmina__file__manager_8c.js
new file mode 100644
index 000000000..14d3a761d
--- /dev/null
+++ b/docs/remmina__file__manager_8c.js
@@ -0,0 +1,14 @@
+var remmina__file__manager_8c =
+[
+ [ "remmina_file_get_datadir", "remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5", null ],
+ [ "remmina_file_manager_add_group", "remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66", null ],
+ [ "remmina_file_manager_do_copy", "remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3", null ],
+ [ "remmina_file_manager_free_group_tree", "remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798", null ],
+ [ "remmina_file_manager_get_group_tree", "remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857", null ],
+ [ "remmina_file_manager_get_groups", "remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d", null ],
+ [ "remmina_file_manager_init", "remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72", null ],
+ [ "remmina_file_manager_iterate", "remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a", null ],
+ [ "remmina_file_manager_load_file", "remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab", null ],
+ [ "cachedir", "remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9", null ],
+ [ "remminadir", "remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file__manager_8c_source.html b/docs/remmina__file__manager_8c_source.html
new file mode 100644
index 000000000..f27a4f089
--- /dev/null
+++ b/docs/remmina__file__manager_8c_source.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_manager.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__manager_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file_manager.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file__manager_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-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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</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="l00043"></a><span class="lineno"> 43</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="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;<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="l00046"></a><span class="lineno"> 46</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="l00047"></a><span class="lineno"> 47</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="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482"> 49</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9"> 50</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* return first found data dir as per XDG specs.</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> * The returned string must be freed by the caller with g_free */</span></div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5"> 54</a></span>&#160;gchar *<a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;{</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> gchar *dir = <span class="stringliteral">&quot;.remmina&quot;</span>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* From preferences, datadir_path */</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = <a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="stringliteral">&quot;datadir_path&quot;</span>);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> != NULL &amp;&amp; strlen(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>) &gt; 0)</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* Legacy ~/.remmina */</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_home_dir(), dir, NULL);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* ~/.local/share/remmina */</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_data_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">/* /usr/local/share/remmina */</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">const</span> gchar *<span class="keyword">const</span> *dirs = g_get_system_data_dirs();</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">/* The last case we use the home ~/.local/share/remmina */</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_data_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>;</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="l00090"></a><span class="lineno"><a class="line" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3"> 90</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *src_path, <span class="keyword">const</span> <span class="keywordtype">char</span> *dst_path)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;{</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; GFile *src = g_file_new_for_path(src_path), *dst = g_file_new_for_path(dst_path);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">/* We don’t overwrite the target if it exists */</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> gboolean ok = g_file_copy(src, dst, G_FILE_COPY_NONE, NULL, NULL, NULL, NULL);</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; g_object_unref(dst);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; g_object_unref(src);</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="keywordflow">return</span> ok;</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"><a class="line" href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72"> 102</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; GDir *dir;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">const</span> gchar *legacy = <span class="stringliteral">&quot;.remmina&quot;</span>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">const</span> gchar *filename;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">int</span> i;</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; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_data_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">/* Create the XDG_USER_DATA directory */</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; g_mkdir_with_parents(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, 0750);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">/* Create the XDG_CACHE_HOME directory */</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_cache_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; g_mkdir_with_parents(<a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a>, 0750);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a>), <a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a> = NULL;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">/* Empty legacy ~/.remmina */</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_home_dir(), legacy, NULL);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; dir = g_dir_open(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, 0, NULL);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">while</span> ((filename = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a>(</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; g_build_path(<span class="stringliteral">&quot;/&quot;</span>, <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, filename, NULL),</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_data_dir(),</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="stringliteral">&quot;remmina&quot;</span>, filename, NULL));</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; }</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; <span class="comment">/* XDG_DATA_DIRS, i.e. /usr/local/share/remmina */</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">const</span> gchar *<span class="keyword">const</span> *dirs = g_get_system_data_dirs();</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (g_file_test(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; dir = g_dir_open(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, 0, NULL);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">while</span> ((filename = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a>(</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_build_path(<span class="stringliteral">&quot;/&quot;</span>, <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>, filename, NULL),</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_data_dir(),</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="stringliteral">&quot;remmina&quot;</span>, filename, NULL));</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; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="comment">/* At last we make sure we use XDG_USER_DATA */</span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> != NULL)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; g_free(<a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a>), <a class="code" href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a> = NULL;</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a"> 151</a></span>&#160;gint <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>(GFunc func, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gchar filename[MAX_PATH_LEN];</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; GDir *dir;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> gchar *name;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; gint items_count = 0;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gchar *remmina_data_dir;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; remmina_data_dir = <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>();</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; dir = g_dir_open(remmina_data_dir, 0, NULL);</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"> 164</span>&#160; <span class="keywordflow">if</span> (dir) {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (!g_str_has_suffix(name, <span class="stringliteral">&quot;.remmina&quot;</span>))</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; g_snprintf(filename, MAX_PATH_LEN, <span class="stringliteral">&quot;%s/%s&quot;</span>,</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; remmina_data_dir, name);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; (*func)(remminafile, user_data);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; items_count++;</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; }</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_dir_close(dir);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_free(remmina_data_dir);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> items_count;</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"><a class="line" href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d"> 183</a></span>&#160;gchar *<a class="code" href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;{</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; gchar filename[MAX_PATH_LEN];</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; GDir *dir;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">const</span> gchar *name;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">const</span> gchar *group;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gchar *groups;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gchar *remmina_data_dir;</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; remmina_data_dir = <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; array = <a class="code" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>();</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; dir = g_dir_open(remmina_data_dir, 0, NULL);</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; <span class="keywordflow">if</span> (dir == NULL)</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (!g_str_has_suffix(name, <span class="stringliteral">&quot;.remmina&quot;</span>))</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_snprintf(filename, MAX_PATH_LEN, <span class="stringliteral">&quot;%s/%s&quot;</span>, remmina_data_dir, name);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</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="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">if</span> (group &amp;&amp; <a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(array, group) &lt; 0)</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(array, group);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</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; g_dir_close(dir);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a>(array);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; groups = <a class="code" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(array);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(array);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; g_free(remmina_data_dir);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">return</span> groups;</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"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66"> 222</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager_add_group</a>(GNode *node, <span class="keyword">const</span> gchar *group)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gint cmp;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; gchar *p1;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; gchar *p2;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; GNode *child;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; gboolean found;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *data;</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">if</span> (node == NULL)</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span>;</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"> 235</span>&#160; <span class="keywordflow">if</span> (group == NULL || group[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; p1 = g_strdup(group);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; p2 = strchr(p1, <span class="charliteral">&#39;/&#39;</span>);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span> (p2)</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; *p2++ = <span class="charliteral">&#39;\0&#39;</span>;</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; found = FALSE;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</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="l00247"></a><span class="lineno"> 247</span>&#160; cmp = g_strcmp0(((<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *)child-&gt;data)-&gt;name, p1);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (cmp == 0) {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; found = TRUE;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">if</span> (cmp &gt; 0)</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span> (!found) {</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; data = g_new0(<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a>, 1);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; data-&gt;name = p1;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">if</span> (node-&gt;data)</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; data-&gt;group = g_strdup_printf(<span class="stringliteral">&quot;%s/%s&quot;</span>, ((<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *)node-&gt;data)-&gt;group, p1);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; data-&gt;group = g_strdup(p1);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">if</span> (child)</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; child = g_node_insert_data_before(node, child, data);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; child = g_node_append_data(node, data);</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; <a class="code" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager_add_group</a>(child, p2);</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"> 272</span>&#160; <span class="keywordflow">if</span> (found)</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; g_free(p1);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;}</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"><a class="line" href="remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857"> 276</a></span>&#160;GNode *<a class="code" href="remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;{</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; gchar filename[MAX_PATH_LEN];</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; GDir *dir;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keyword">const</span> gchar *name;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keyword">const</span> gchar *group;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; GNode *root;</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; root = g_node_new(NULL);</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; dir = g_dir_open(<a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(), 0, NULL);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (dir == NULL)</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> root;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span> (!g_str_has_suffix(name, <span class="stringliteral">&quot;.remmina&quot;</span>))</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; g_snprintf(filename, MAX_PATH_LEN, <span class="stringliteral">&quot;%s/%s&quot;</span>, <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(), name);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</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="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager_add_group</a>(root, group);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; g_dir_close(dir);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">return</span> root;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;}</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798"> 307</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a>(GNode *node)</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;{</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *data;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; GNode *child;</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; <span class="keywordflow">if</span> (!node)</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; data = (<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *)node-&gt;data;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; if (data) {</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; g_free(data-&gt;name);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; g_free(data-&gt;group);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; g_free(data);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; node-&gt;data = NULL;</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"> 322</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="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a>(child);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; g_node_unlink(node);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;}</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab"> 327</a></span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a>(<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;{</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = NULL;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; gchar *p;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">if</span> ((p = strrchr(filename, <span class="charliteral">&#39;.&#39;</span>)) != NULL &amp;&amp; g_strcmp0(p + 1, <span class="stringliteral">&quot;remmina&quot;</span>) == 0) {</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(filename);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; plugin = <a class="code" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a>(filename);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">if</span> (plugin)</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; remminafile = plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">import_func</a>(filename);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">return</span> remminafile;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a62228cb0bc959307e3268cff98e1f7bb"><div class="ttname"><a href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></div><div class="ttdeci">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8h_source.html#l00041">remmina_string_array.h:41</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_af83917dac9f2646670733215ba7a3482"><div class="ttname"><a href="remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482">remminadir</a></div><div class="ttdeci">static gchar * remminadir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00049">remmina_file_manager.c:49</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="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_a06196f19abc15526514a5aa59a568798"><div class="ttname"><a href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a></div><div class="ttdeci">void remmina_file_manager_free_group_tree(GNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00307">remmina_file_manager.c:307</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#l00491">remmina_plugin_manager.c:491</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="remmina__file__manager_8c_html_a4d6280ce5d9e70ceb43dd24639d843d3"><div class="ttname"><a href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a></div><div class="ttdeci">static gboolean remmina_file_manager_do_copy(const char *src_path, const char *dst_path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00090">remmina_file_manager.c:90</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_afa2b1889dced4289b0f7d7edffc82e72"><div class="ttname"><a href="remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a></div><div class="ttdeci">void remmina_file_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00102">remmina_file_manager.c:102</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__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__string__array_8c_html_a3eab4bae72ff130ad10ec8fc7364ce70"><div class="ttname"><a href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a></div><div class="ttdeci">void remmina_string_array_sort(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00148">remmina_string_array.c:148</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_a3b100405380ddccce98669a8b46ecc66"><div class="ttname"><a href="remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66">remmina_file_manager_add_group</a></div><div class="ttdeci">static void remmina_file_manager_add_group(GNode *node, const gchar *group)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00222">remmina_file_manager.c:222</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a8ab78913d299df665a408a8a5ec51bbe"><div class="ttname"><a href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a></div><div class="ttdeci">void remmina_string_array_free(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00170">remmina_string_array.c:170</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_aa65bc30beb59d607ba430d966e7e27f5"><div class="ttname"><a href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a></div><div class="ttdeci">gchar * remmina_file_get_datadir(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00054">remmina_file_manager.c:54</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_aff90e964c6541b1af02adf7ea39e6e02"><div class="ttname"><a href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00044">remmina_string_array.c:44</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_ace1098aad45256ac0b0155cb042472e9"><div class="ttname"><a href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a></div><div class="ttdeci">static gchar * cachedir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00050">remmina_file_manager.c:50</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__file__manager_8c_html_a536edeef371d907ab3936f4d65c3003d"><div class="ttname"><a href="remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a></div><div class="ttdeci">gchar * remmina_file_manager_get_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00183">remmina_file_manager.c:183</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_af7b58659604660eb0cb40b0e0f8348ab"><div class="ttname"><a href="remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a></div><div class="ttdeci">RemminaFile * remmina_file_manager_load_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00327">remmina_file_manager.c:327</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_af1bc6a2734ca8060af2943bf0dfca8d7"><div class="ttname"><a href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">_RemminaFilePlugin::import_func</a></div><div class="ttdeci">RemminaFile *(* import_func)(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00102">plugin.h:102</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__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#l00276">remmina_file_manager.c:276</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#l00151">remmina_file_manager.c:151</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__manager_8c.html">remmina_file_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__manager_8h.html b/docs/remmina__file__manager_8h.html
new file mode 100644
index 000000000..af63ba1a3
--- /dev/null
+++ b/docs/remmina__file__manager_8h.html
@@ -0,0 +1,301 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_manager.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__manager_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_file_manager.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__file__manager_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_group_data.html">_RemminaGroupData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a0155f52ba9a28e2aa0ea5d831f5d2c90"><td class="memItemLeft" align="right" valign="top">typedef G_BEGIN_DECLS struct <a class="el" href="struct___remmina_group_data.html">_RemminaGroupData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a></td></tr>
+<tr class="separator:a0155f52ba9a28e2aa0ea5d831f5d2c90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa65bc30beb59d607ba430d966e7e27f5"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a> (void)</td></tr>
+<tr class="separator:aa65bc30beb59d607ba430d966e7e27f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa2b1889dced4289b0f7d7edffc82e72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a> (void)</td></tr>
+<tr class="separator:afa2b1889dced4289b0f7d7edffc82e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55a717aafc046713380bd2c55f29165a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a> (GFunc func, gpointer user_data)</td></tr>
+<tr class="separator:a55a717aafc046713380bd2c55f29165a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a536edeef371d907ab3936f4d65c3003d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a> (void)</td></tr>
+<tr class="separator:a536edeef371d907ab3936f4d65c3003d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6593a3f297f420f012405fa582819857"><td class="memItemLeft" align="right" valign="top">GNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a> (void)</td></tr>
+<tr class="separator:a6593a3f297f420f012405fa582819857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06196f19abc15526514a5aa59a568798"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a> (GNode *node)</td></tr>
+<tr class="separator:a06196f19abc15526514a5aa59a568798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7b58659604660eb0cb40b0e0f8348ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a> (const gchar *filename)</td></tr>
+<tr class="separator:af7b58659604660eb0cb40b0e0f8348ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a0155f52ba9a28e2aa0ea5d831f5d2c90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0155f52ba9a28e2aa0ea5d831f5d2c90">&#9670;&nbsp;</a></span>RemminaGroupData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef G_BEGIN_DECLS struct <a class="el" href="struct___remmina_group_data.html">_RemminaGroupData</a> <a class="el" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa65bc30beb59d607ba430d966e7e27f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa65bc30beb59d607ba430d966e7e27f5">&#9670;&nbsp;</a></span>remmina_file_get_datadir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_get_datadir </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a06196f19abc15526514a5aa59a568798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06196f19abc15526514a5aa59a568798">&#9670;&nbsp;</a></span>remmina_file_manager_free_group_tree()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_manager_free_group_tree </td>
+ <td>(</td>
+ <td class="paramtype">GNode *&#160;</td>
+ <td class="paramname"><em>node</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00307">307</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a6593a3f297f420f012405fa582819857"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6593a3f297f420f012405fa582819857">&#9670;&nbsp;</a></span>remmina_file_manager_get_group_tree()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GNode* remmina_file_manager_get_group_tree </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00276">276</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a536edeef371d907ab3936f4d65c3003d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a536edeef371d907ab3936f4d65c3003d">&#9670;&nbsp;</a></span>remmina_file_manager_get_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_file_manager_get_groups </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00183">183</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afa2b1889dced4289b0f7d7edffc82e72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa2b1889dced4289b0f7d7edffc82e72">&#9670;&nbsp;</a></span>remmina_file_manager_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_file_manager_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00102">102</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a55a717aafc046713380bd2c55f29165a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a55a717aafc046713380bd2c55f29165a">&#9670;&nbsp;</a></span>remmina_file_manager_iterate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_file_manager_iterate </td>
+ <td>(</td>
+ <td class="paramtype">GFunc&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="af7b58659604660eb0cb40b0e0f8348ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7b58659604660eb0cb40b0e0f8348ab">&#9670;&nbsp;</a></span>remmina_file_manager_load_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_file_manager_load_file </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8c_source.html#l00327">327</a> of file <a class="el" href="remmina__file__manager_8c_source.html">remmina_file_manager.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__manager_8h.html">remmina_file_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__file__manager_8h.js b/docs/remmina__file__manager_8h.js
new file mode 100644
index 000000000..eb6bc7ce9
--- /dev/null
+++ b/docs/remmina__file__manager_8h.js
@@ -0,0 +1,12 @@
+var remmina__file__manager_8h =
+[
+ [ "_RemminaGroupData", "struct___remmina_group_data.html", "struct___remmina_group_data" ],
+ [ "RemminaGroupData", "remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90", null ],
+ [ "remmina_file_get_datadir", "remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5", null ],
+ [ "remmina_file_manager_free_group_tree", "remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798", null ],
+ [ "remmina_file_manager_get_group_tree", "remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857", null ],
+ [ "remmina_file_manager_get_groups", "remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d", null ],
+ [ "remmina_file_manager_init", "remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72", null ],
+ [ "remmina_file_manager_iterate", "remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a", null ],
+ [ "remmina_file_manager_load_file", "remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__file__manager_8h_source.html b/docs/remmina__file__manager_8h_source.html
new file mode 100644
index 000000000..80573107f
--- /dev/null
+++ b/docs/remmina__file__manager_8h_source.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_file_manager.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__file__manager_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_file_manager.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__file__manager_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-2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;<a class="code" href="remmina__file_8h.html">remmina_file.h</a>&quot;</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;G_BEGIN_DECLS</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct___remmina_group_data.html"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_group_data.html">_RemminaGroupData</a> {</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd"> 43</a></span>&#160; gchar * <a class="code" href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd">name</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09"> 44</a></span>&#160; gchar * <a class="code" href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09">group</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660"> 45</a></span>&#160; gchar * <a class="code" href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660">datetime</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;} <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</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"> 48</span>&#160;<span class="comment">/* Initialize */</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;gchar *<a class="code" href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">/* Iterate all .remmina connections in the home directory */</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;gint <a class="code" href="remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>(GFunc func, gpointer user_data);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Get a list of groups */</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;gchar *<a class="code" href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;GNode *<a class="code" href="remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857">remmina_file_manager_get_group_tree</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a>(GNode *node);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">/* Load or import a file */</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a>(<span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;G_END_DECLS</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="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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_group_data_html_ae75855c3c4f9d899200cc2c4aa994660"><div class="ttname"><a href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660">_RemminaGroupData::datetime</a></div><div class="ttdeci">gchar * datetime</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8h_source.html#l00045">remmina_file_manager.h:45</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_afa2b1889dced4289b0f7d7edffc82e72"><div class="ttname"><a href="remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72">remmina_file_manager_init</a></div><div class="ttdeci">void remmina_file_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00102">remmina_file_manager.c:102</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_a06196f19abc15526514a5aa59a568798"><div class="ttname"><a href="remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a></div><div class="ttdeci">void remmina_file_manager_free_group_tree(GNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00307">remmina_file_manager.c:307</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_af7b58659604660eb0cb40b0e0f8348ab"><div class="ttname"><a href="remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab">remmina_file_manager_load_file</a></div><div class="ttdeci">RemminaFile * remmina_file_manager_load_file(const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00327">remmina_file_manager.c:327</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_aa65bc30beb59d607ba430d966e7e27f5"><div class="ttname"><a href="remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a></div><div class="ttdeci">gchar * remmina_file_get_datadir(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00054">remmina_file_manager.c:54</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_a55a717aafc046713380bd2c55f29165a"><div class="ttname"><a href="remmina__file__manager_8h.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#l00151">remmina_file_manager.c:151</a></div></div>
+<div class="ttc" id="struct___remmina_group_data_html"><div class="ttname"><a href="struct___remmina_group_data.html">_RemminaGroupData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8h_source.html#l00042">remmina_file_manager.h:42</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_a536edeef371d907ab3936f4d65c3003d"><div class="ttname"><a href="remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d">remmina_file_manager_get_groups</a></div><div class="ttdeci">gchar * remmina_file_manager_get_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00183">remmina_file_manager.c:183</a></div></div>
+<div class="ttc" id="struct___remmina_group_data_html_a99391f3397e53db88f8e2d543d862bcd"><div class="ttname"><a href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd">_RemminaGroupData::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8h_source.html#l00043">remmina_file_manager.h:43</a></div></div>
+<div class="ttc" id="remmina__file__manager_8h_html_a6593a3f297f420f012405fa582819857"><div class="ttname"><a href="remmina__file__manager_8h.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#l00276">remmina_file_manager.c:276</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="struct___remmina_group_data_html_a0044a7fb68569135efeb5769229d7f09"><div class="ttname"><a href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09">_RemminaGroupData::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8h_source.html#l00044">remmina_file_manager.h:44</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__file__manager_8h.html">remmina_file_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__filezilla__sftp_8sh.html b/docs/remmina__filezilla__sftp_8sh.html
new file mode 100644
index 000000000..93ce07005
--- /dev/null
+++ b/docs/remmina__filezilla__sftp_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_filezilla_sftp.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__filezilla__sftp_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_filezilla_sftp.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__filezilla__sftp_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__filezilla__sftp_8sh.html">remmina_filezilla_sftp.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__filezilla__sftp_8sh_source.html b/docs/remmina__filezilla__sftp_8sh_source.html
new file mode 100644
index 000000000..cafddbb29
--- /dev/null
+++ b/docs/remmina__filezilla__sftp_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_filezilla_sftp.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__filezilla__sftp_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_filezilla_sftp.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__filezilla__sftp_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;. $(dirname $0)/functions.sh</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;settitle</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;filezilla sftp://$username:&quot;$password&quot;@$server </div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__filezilla__sftp_8sh.html">remmina_filezilla_sftp.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__filezilla__sftp__pki_8sh.html b/docs/remmina__filezilla__sftp__pki_8sh.html
new file mode 100644
index 000000000..5f2be15ac
--- /dev/null
+++ b/docs/remmina__filezilla__sftp__pki_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_filezilla_sftp_pki.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__filezilla__sftp__pki_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_filezilla_sftp_pki.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__filezilla__sftp__pki_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__filezilla__sftp__pki_8sh.html">remmina_filezilla_sftp_pki.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__filezilla__sftp__pki_8sh_source.html b/docs/remmina__filezilla__sftp__pki_8sh_source.html
new file mode 100644
index 000000000..379103976
--- /dev/null
+++ b/docs/remmina__filezilla__sftp__pki_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_filezilla_sftp_pki.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__filezilla__sftp__pki_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_filezilla_sftp_pki.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__filezilla__sftp__pki_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;. $(dirname $0)/functions.sh</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;settitle</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;filezilla sftp://$ssh_username@$server </div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__filezilla__sftp__pki_8sh.html">remmina_filezilla_sftp_pki.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ftp__client_8c.html b/docs/remmina__ftp__client_8c.html
new file mode 100644
index 000000000..fe3c44179
--- /dev/null
+++ b/docs/remmina__ftp__client_8c.html
@@ -0,0 +1,2132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ftp_client.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ftp__client_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ftp_client.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ftp__client_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa7761ce5db26b435ced129f5e4fb3d30"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a></td></tr>
+<tr class="separator:aa7761ce5db26b435ced129f5e4fb3d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f2b57c1b126925a5ff6c6ae037e9e6c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a></td></tr>
+<tr class="separator:a6f2b57c1b126925a5ff6c6ae037e9e6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:abc6126af1d45847bc59afa0aa3216b04"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">OPEN_DIR_SIGNAL</a>,
+<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a>,
+<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">CANCEL_TASK_SIGNAL</a>,
+<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">DELETE_FILE_SIGNAL</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>
+<br />
+ }</td></tr>
+<tr class="separator:abc6126af1d45847bc59afa0aa3216b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a79fcc8693c4264aadb53d36149fae18b"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b">remmina_cell_renderer_pixbuf_get_type</a> (void)</td></tr>
+<tr class="separator:a79fcc8693c4264aadb53d36149fae18b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67ff5ecb780875110ea8df8c9cdb4447"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_cell_renderer_pixbuf_activate</a> (GtkCellRenderer *renderer, GdkEvent *event, GtkWidget *widget, const gchar *path, const GdkRectangle *background_area, const GdkRectangle *cell_area, GtkCellRendererState flags)</td></tr>
+<tr class="separator:a67ff5ecb780875110ea8df8c9cdb4447"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab879acb7e463e1b62284ee6a24e3a185"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185">remmina_cell_renderer_pixbuf_class_init</a> (<a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a> *klass)</td></tr>
+<tr class="separator:ab879acb7e463e1b62284ee6a24e3a185"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49d1fee26f8c7fb210b46d83f92b08e2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2">remmina_cell_renderer_pixbuf_init</a> (<a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a> *renderer)</td></tr>
+<tr class="separator:a49d1fee26f8c7fb210b46d83f92b08e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b4e260fb27466bfd66cb55e5b135715"><td class="memItemLeft" align="right" valign="top">static GtkCellRenderer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_cell_renderer_pixbuf_new</a> (void)</td></tr>
+<tr class="separator:a4b4e260fb27466bfd66cb55e5b135715"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90b05dce320d3ff7b6561b9f0ea8e291"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">G_DEFINE_TYPE</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a>, remmina_ftp_client, GTK_TYPE_GRID)</td></tr>
+<tr class="separator:a90b05dce320d3ff7b6561b9f0ea8e291"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afad9715ec8784756b34f31c1db71d9cf"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf">remmina_ftp_client_class_init</a> (<a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a> *klass)</td></tr>
+<tr class="separator:afad9715ec8784756b34f31c1db71d9cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27a70ad185d142086368c637b32e60ba"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client_destroy</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gpointer data)</td></tr>
+<tr class="separator:a27a70ad185d142086368c637b32e60ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27d2465531f2031f521280cbb11d3e89"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client_cell_data_filetype_pixbuf</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:a27d2465531f2031f521280cbb11d3e89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d8902cb0a498a91f904183369f04696"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client_cell_data_progress_pixbuf</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:a6d8902cb0a498a91f904183369f04696"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01323d02fb338efc6df59b6396b004cb"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a> (gfloat size)</td></tr>
+<tr class="separator:a01323d02fb338efc6df59b6396b004cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa421a961d286439948f40e787adb5939"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client_cell_data_size</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:aa421a961d286439948f40e787adb5939"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5464ddd2c0af8c518cd2fe647696e7a4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client_cell_data_permission</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:a5464ddd2c0af8c518cd2fe647696e7a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea63052ec0540ea9a7053da61dd04b8b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client_cell_data_size_progress</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:aea63052ec0540ea9a7053da61dd04b8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a437dba2fc4f44f119501e9b53c688dd1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client_cell_data_progress</a> (GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:a437dba2fc4f44f119501e9b53c688dd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebd9739e88aa215c1dc3d4138219d286"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, const gchar *dir)</td></tr>
+<tr class="separator:aebd9739e88aa215c1dc3d4138219d286"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a2dc5070f06ae0fcd25fbfe1587ab5c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client_dir_on_activate</a> (GtkWidget *widget, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a3a2dc5070f06ae0fcd25fbfe1587ab5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67034d0df1a745cf8befb2a95d8045a4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client_dir_on_changed</a> (GtkWidget *widget, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a67034d0df1a745cf8befb2a95d8045a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb5e2ad5fd93f065bdc5c307df813c36"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client_set_file_action_sensitive</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gboolean sensitive)</td></tr>
+<tr class="separator:adb5e2ad5fd93f065bdc5c307df813c36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6da87ca47ccd1cbee44a2d00b856c7fc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client_file_selection_on_changed</a> (GtkTreeSelection *selection, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a6da87ca47ccd1cbee44a2d00b856c7fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a651eef678fd9d6d1e3bc0712f4517854"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client_get_download_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a651eef678fd9d6d1e3bc0712f4517854"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e945748f44486be2a906ab42c6f805"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client_download</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, GtkTreeIter *piter, const gchar *localdir)</td></tr>
+<tr class="separator:ae4e945748f44486be2a906ab42c6f805"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f8c03ede4800e429e5f4a6894d77510"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client_task_list_on_query_tooltip</a> (GtkWidget *widget, gint x, gint y, gboolean keyboard_tip, GtkTooltip *tooltip, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a0f8c03ede4800e429e5f4a6894d77510"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63a298ab2eaf40a27403d45bbd031372"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client_action_parent</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a63a298ab2eaf40a27403d45bbd031372"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a132ed69d1311855ddf203c1be2913e43"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client_action_home</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a132ed69d1311855ddf203c1be2913e43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a630692ba90aee542f5504fbd845805ee"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client_action_refresh</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a630692ba90aee542f5504fbd845805ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3872b49a2c0bea73d51d0500c5cee488"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client_action_download</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a3872b49a2c0bea73d51d0500c5cee488"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a433db0f6129e0bc4ec2fdc8f7588f6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client_action_delete</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a5a433db0f6129e0bc4ec2fdc8f7588f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bdee1727836cb01a794c4164da50406"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client_upload_folder_on_toggled</a> (GtkToggleButton *togglebutton, GtkWidget *widget)</td></tr>
+<tr class="separator:a8bdee1727836cb01a794c4164da50406"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afca2c32cbd85de1f9f59141805f565dd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client_action_upload</a> (GObject *object, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:afca2c32cbd85de1f9f59141805f565dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaedc425109ff59a35610144513181ac"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client_popup_menu</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, GdkEventButton *event)</td></tr>
+<tr class="separator:adaedc425109ff59a35610144513181ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ca0769a65bac59f16c790eb76330c8"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client_file_list_on_button_press</a> (GtkWidget *widget, GdkEventButton *event, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a51ca0769a65bac59f16c790eb76330c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13529f504158679b5c2fef7f1c25b969"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client_task_list_cell_on_activate</a> (GtkCellRenderer *renderer, gchar *path, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a13529f504158679b5c2fef7f1c25b969"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a122b99fdc7197921f6e388cd9bf34e0b"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client_create_toolbar</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a122b99fdc7197921f6e388cd9bf34e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb002077547492e9d56c68281a1607d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gboolean show_hidden)</td></tr>
+<tr class="separator:adb002077547492e9d56c68281a1607d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d9c5e03f84f108f4023fa7ecf1ec73a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client_filter_visible_func</a> (GtkTreeModel *model, GtkTreeIter *iter, <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a1d9c5e03f84f108f4023fa7ecf1ec73a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5614fa3b465b83d0a5fa2245a97f45f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gboolean status)</td></tr>
+<tr class="separator:ae5614fa3b465b83d0a5fa2245a97f45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20d0575c04eb24553aeba7d0316e7a2e"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a20d0575c04eb24553aeba7d0316e7a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7eb7af10400725e0dd3da8ec6bda4a10"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10">remmina_ftp_client_init</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a7eb7af10400725e0dd3da8ec6bda4a10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2ad2f78b3dfcd6c9a68834346d0f6d"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a> (void)</td></tr>
+<tr class="separator:abb2ad2f78b3dfcd6c9a68834346d0f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28b9006fa53e21e48df9237d68a847f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a28b9006fa53e21e48df9237d68a847f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aaef09531b1694c183a5ba530fcc2fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a2aaef09531b1694c183a5ba530fcc2fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af749de0df07992d5b1f30cc32c3556cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:af749de0df07992d5b1f30cc32c3556cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e39a69f60d38b46bc603df0ae368aed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client,...)</td></tr>
+<tr class="separator:a2e39a69f60d38b46bc603df0ae368aed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ef77e687209d258ec576c31614ea60f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, const gchar *dir)</td></tr>
+<tr class="separator:a1ef77e687209d258ec576c31614ea60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a709bf3bb81fba206dac478d08d42aadc"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a709bf3bb81fba206dac478d08d42aadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33e4993b60c36eae89a6a0a943d28141"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a33e4993b60c36eae89a6a0a943d28141"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad96358f40ab056c91f796ddda886a1dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:ad96358f40ab056c91f796ddda886a1dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a659de1105971e3fda3d44d089277d6a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a> (<a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:a659de1105971e3fda3d44d089277d6a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a5a0c3d9452b7b75c3ae49ac7a9851e0a"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a">remmina_ftp_client_taskid</a> = 1</td></tr>
+<tr class="separator:a5a0c3d9452b7b75c3ae49ac7a9851e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb68d802d3c35dff5cee970d3c33bd5"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5">remmina_ftp_client_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td></tr>
+<tr class="separator:a3cb68d802d3c35dff5cee970d3c33bd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="aa7761ce5db26b435ced129f5e4fb3d30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7761ce5db26b435ced129f5e4fb3d30">&#9670;&nbsp;</a></span>RemminaCellRendererPixbuf</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a> <a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a6f2b57c1b126925a5ff6c6ae037e9e6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f2b57c1b126925a5ff6c6ae037e9e6c">&#9670;&nbsp;</a></span>RemminaCellRendererPixbufClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a> <a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="abc6126af1d45847bc59afa0aa3216b04"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc6126af1d45847bc59afa0aa3216b04">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64"></a>OPEN_DIR_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0"></a>NEW_TASK_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03"></a>CANCEL_TASK_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114"></a>DELETE_FILE_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce"></a>LAST_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00158">158</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a90b05dce320d3ff7b6561b9f0ea8e291"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a90b05dce320d3ff7b6561b9f0ea8e291">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_ftp_client&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_GRID&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00120">120</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a67ff5ecb780875110ea8df8c9cdb4447"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67ff5ecb780875110ea8df8c9cdb4447">&#9670;&nbsp;</a></span>remmina_cell_renderer_pixbuf_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_cell_renderer_pixbuf_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GdkRectangle *&#160;</td>
+ <td class="paramname"><em>background_area</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GdkRectangle *&#160;</td>
+ <td class="paramname"><em>cell_area</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRendererState&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00082">82</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ab879acb7e463e1b62284ee6a24e3a185"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab879acb7e463e1b62284ee6a24e3a185">&#9670;&nbsp;</a></span>remmina_cell_renderer_pixbuf_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_cell_renderer_pixbuf_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00091">91</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a79fcc8693c4264aadb53d36149fae18b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79fcc8693c4264aadb53d36149fae18b">&#9670;&nbsp;</a></span>remmina_cell_renderer_pixbuf_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_cell_renderer_pixbuf_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a49d1fee26f8c7fb210b46d83f92b08e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49d1fee26f8c7fb210b46d83f92b08e2">&#9670;&nbsp;</a></span>remmina_cell_renderer_pixbuf_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_cell_renderer_pixbuf_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a> *&#160;</td>
+ <td class="paramname"><em>renderer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00103">103</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a4b4e260fb27466bfd66cb55e5b135715"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b4e260fb27466bfd66cb55e5b135715">&#9670;&nbsp;</a></span>remmina_cell_renderer_pixbuf_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkCellRenderer* remmina_cell_renderer_pixbuf_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00110">110</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a5a433db0f6129e0bc4ec2fdc8f7588f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a433db0f6129e0bc4ec2fdc8f7588f6">&#9670;&nbsp;</a></span>remmina_ftp_client_action_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_delete </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00506">506</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a3872b49a2c0bea73d51d0500c5cee488"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3872b49a2c0bea73d51d0500c5cee488">&#9670;&nbsp;</a></span>remmina_ftp_client_action_download()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_download </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00474">474</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a132ed69d1311855ddf203c1be2913e43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a132ed69d1311855ddf203c1be2913e43">&#9670;&nbsp;</a></span>remmina_ftp_client_action_home()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_home </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00462">462</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a63a298ab2eaf40a27403d45bbd031372"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63a298ab2eaf40a27403d45bbd031372">&#9670;&nbsp;</a></span>remmina_ftp_client_action_parent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_parent </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00456">456</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a630692ba90aee542f5504fbd845805ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a630692ba90aee542f5504fbd845805ee">&#9670;&nbsp;</a></span>remmina_ftp_client_action_refresh()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_refresh </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00468">468</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="afca2c32cbd85de1f9f59141805f565dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afca2c32cbd85de1f9f59141805f565dd">&#9670;&nbsp;</a></span>remmina_ftp_client_action_upload()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_action_upload </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00570">570</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a2e39a69f60d38b46bc603df0ae368aed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e39a69f60d38b46bc603df0ae368aed">&#9670;&nbsp;</a></span>remmina_ftp_client_add_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_add_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01086">1086</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a27d2465531f2031f521280cbb11d3e89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27d2465531f2031f521280cbb11d3e89">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_filetype_pixbuf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_filetype_pixbuf </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00191">191</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a5464ddd2c0af8c518cd2fe647696e7a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5464ddd2c0af8c518cd2fe647696e7a4">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_permission()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_permission </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00259">259</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a437dba2fc4f44f119501e9b53c688dd1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a437dba2fc4f44f119501e9b53c688dd1">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_progress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_progress </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00309">309</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d8902cb0a498a91f904183369f04696"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d8902cb0a498a91f904183369f04696">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_progress_pixbuf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_progress_pixbuf </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00210">210</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="aa421a961d286439948f40e787adb5939"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa421a961d286439948f40e787adb5939">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_size </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00244">244</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="aea63052ec0540ea9a7053da61dd04b8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea63052ec0540ea9a7053da61dd04b8b">&#9670;&nbsp;</a></span>remmina_ftp_client_cell_data_size_progress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_cell_data_size_progress </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>col</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00283">283</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="afad9715ec8784756b34f31c1db71d9cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afad9715ec8784756b34f31c1db71d9cf">&#9670;&nbsp;</a></span>remmina_ftp_client_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00165">165</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="af749de0df07992d5b1f30cc32c3556cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af749de0df07992d5b1f30cc32c3556cc">&#9670;&nbsp;</a></span>remmina_ftp_client_clear_file_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_clear_file_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01077">1077</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a122b99fdc7197921f6e388cd9bf34e0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a122b99fdc7197921f6e388cd9bf34e0b">&#9670;&nbsp;</a></span>remmina_ftp_client_create_toolbar()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_ftp_client_create_toolbar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00736">736</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a27a70ad185d142086368c637b32e60ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27a70ad185d142086368c637b32e60ba">&#9670;&nbsp;</a></span>remmina_ftp_client_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00182">182</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a3a2dc5070f06ae0fcd25fbfe1587ab5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a2dc5070f06ae0fcd25fbfe1587ab5c">&#9670;&nbsp;</a></span>remmina_ftp_client_dir_on_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_dir_on_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00341">341</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a67034d0df1a745cf8befb2a95d8045a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67034d0df1a745cf8befb2a95d8045a4">&#9670;&nbsp;</a></span>remmina_ftp_client_dir_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_dir_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00347">347</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4e945748f44486be2a906ab42c6f805"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4e945748f44486be2a906ab42c6f805">&#9670;&nbsp;</a></span>remmina_ftp_client_download()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_download </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>piter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>localdir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00403">403</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a51ca0769a65bac59f16c790eb76330c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51ca0769a65bac59f16c790eb76330c8">&#9670;&nbsp;</a></span>remmina_ftp_client_file_list_on_button_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_ftp_client_file_list_on_button_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventButton *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00674">674</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a6da87ca47ccd1cbee44a2d00b856c7fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6da87ca47ccd1cbee44a2d00b856c7fc">&#9670;&nbsp;</a></span>remmina_ftp_client_file_selection_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_file_selection_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeSelection *&#160;</td>
+ <td class="paramname"><em>selection</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00370">370</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a1d9c5e03f84f108f4023fa7ecf1ec73a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d9c5e03f84f108f4023fa7ecf1ec73a">&#9670;&nbsp;</a></span>remmina_ftp_client_filter_visible_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_ftp_client_filter_visible_func </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00809">809</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a709bf3bb81fba206dac478d08d42aadc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a709bf3bb81fba206dac478d08d42aadc">&#9670;&nbsp;</a></span>remmina_ftp_client_get_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ftp_client_get_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01144">1144</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a651eef678fd9d6d1e3bc0712f4517854"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a651eef678fd9d6d1e3bc0712f4517854">&#9670;&nbsp;</a></span>remmina_ftp_client_get_download_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* remmina_ftp_client_get_download_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00381">381</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a20d0575c04eb24553aeba7d0316e7a2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20d0575c04eb24553aeba7d0316e7a2e">&#9670;&nbsp;</a></span>remmina_ftp_client_get_overwrite_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ftp_client_get_overwrite_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00834">834</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a33e4993b60c36eae89a6a0a943d28141"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e4993b60c36eae89a6a0a943d28141">&#9670;&nbsp;</a></span>remmina_ftp_client_get_waiting_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>* remmina_ftp_client_get_waiting_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01153">1153</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a7eb7af10400725e0dd3da8ec6bda4a10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7eb7af10400725e0dd3da8ec6bda4a10">&#9670;&nbsp;</a></span>remmina_ftp_client_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00840">840</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a2aaef09531b1694c183a5ba530fcc2fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2aaef09531b1694c183a5ba530fcc2fa">&#9670;&nbsp;</a></span>remmina_ftp_client_load_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_load_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01061">1061</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="abb2ad2f78b3dfcd6c9a68834346d0f6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb2ad2f78b3dfcd6c9a68834346d0f6d">&#9670;&nbsp;</a></span>remmina_ftp_client_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_ftp_client_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01042">1042</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="aebd9739e88aa215c1dc3d4138219d286"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebd9739e88aa215c1dc3d4138219d286">&#9670;&nbsp;</a></span>remmina_ftp_client_open_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_open_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00333">333</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="adaedc425109ff59a35610144513181ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adaedc425109ff59a35610144513181ac">&#9670;&nbsp;</a></span>remmina_ftp_client_popup_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_popup_menu </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventButton *&#160;</td>
+ <td class="paramname"><em>event</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00639">639</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a28b9006fa53e21e48df9237d68a847f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28b9006fa53e21e48df9237d68a847f3">&#9670;&nbsp;</a></span>remmina_ftp_client_save_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_save_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01052">1052</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a1ef77e687209d258ec576c31614ea60f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ef77e687209d258ec576c31614ea60f">&#9670;&nbsp;</a></span>remmina_ftp_client_set_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01113">1113</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="adb5e2ad5fd93f065bdc5c307df813c36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb5e2ad5fd93f065bdc5c307df813c36">&#9670;&nbsp;</a></span>remmina_ftp_client_set_file_action_sensitive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_set_file_action_sensitive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>sensitive</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00360">360</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5614fa3b465b83d0a5fa2245a97f45f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5614fa3b465b83d0a5fa2245a97f45f">&#9670;&nbsp;</a></span>remmina_ftp_client_set_overwrite_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_overwrite_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00827">827</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="adb002077547492e9d56c68281a1607d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb002077547492e9d56c68281a1607d6">&#9670;&nbsp;</a></span>remmina_ftp_client_set_show_hidden()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_show_hidden </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>show_hidden</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00802">802</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a01323d02fb338efc6df59b6396b004cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01323d02fb338efc6df59b6396b004cb">&#9670;&nbsp;</a></span>remmina_ftp_client_size_to_str()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* remmina_ftp_client_size_to_str </td>
+ <td>(</td>
+ <td class="paramtype">gfloat&#160;</td>
+ <td class="paramname"><em>size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00237">237</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a13529f504158679b5c2fef7f1c25b969"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13529f504158679b5c2fef7f1c25b969">&#9670;&nbsp;</a></span>remmina_ftp_client_task_list_cell_on_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_task_list_cell_on_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkCellRenderer *&#160;</td>
+ <td class="paramname"><em>renderer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00714">714</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a0f8c03ede4800e429e5f4a6894d77510"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f8c03ede4800e429e5f4a6894d77510">&#9670;&nbsp;</a></span>remmina_ftp_client_task_list_on_query_tooltip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_ftp_client_task_list_on_query_tooltip </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>keyboard_tip</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTooltip *&#160;</td>
+ <td class="paramname"><em>tooltip</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ad96358f40ab056c91f796ddda886a1dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad96358f40ab056c91f796ddda886a1dd">&#9670;&nbsp;</a></span>remmina_ftp_client_update_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_update_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01197">1197</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a8bdee1727836cb01a794c4164da50406"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bdee1727836cb01a794c4164da50406">&#9670;&nbsp;</a></span>remmina_ftp_client_upload_folder_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ftp_client_upload_folder_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkToggleButton *&#160;</td>
+ <td class="paramname"><em>togglebutton</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00561">561</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a659de1105971e3fda3d44d089277d6a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a659de1105971e3fda3d44d089277d6a7">&#9670;&nbsp;</a></span>remmina_ftp_task_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_task_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01228">1228</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3cb68d802d3c35dff5cee970d3c33bd5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cb68d802d3c35dff5cee970d3c33bd5">&#9670;&nbsp;</a></span>remmina_ftp_client_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_ftp_client_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00162">162</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a5a0c3d9452b7b75c3ae49ac7a9851e0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a0c3d9452b7b75c3ae49ac7a9851e0a">&#9670;&nbsp;</a></span>remmina_ftp_client_taskid</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_ftp_client_taskid = 1</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00156">156</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ftp__client_8c.html">remmina_ftp_client.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ftp__client_8c.js b/docs/remmina__ftp__client_8c.js
new file mode 100644
index 000000000..2a8a36444
--- /dev/null
+++ b/docs/remmina__ftp__client_8c.js
@@ -0,0 +1,63 @@
+var remmina__ftp__client_8c =
+[
+ [ "_RemminaCellRendererPixbuf", "struct___remmina_cell_renderer_pixbuf.html", "struct___remmina_cell_renderer_pixbuf" ],
+ [ "_RemminaCellRendererPixbufClass", "struct___remmina_cell_renderer_pixbuf_class.html", "struct___remmina_cell_renderer_pixbuf_class" ],
+ [ "RemminaCellRendererPixbuf", "remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30", null ],
+ [ "RemminaCellRendererPixbufClass", "remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c", null ],
+ [ "OPEN_DIR_SIGNAL", "remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64", null ],
+ [ "NEW_TASK_SIGNAL", "remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0", null ],
+ [ "CANCEL_TASK_SIGNAL", "remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03", null ],
+ [ "DELETE_FILE_SIGNAL", "remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114", null ],
+ [ "LAST_SIGNAL", "remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce", null ],
+ [ "G_DEFINE_TYPE", "remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291", null ],
+ [ "remmina_cell_renderer_pixbuf_activate", "remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447", null ],
+ [ "remmina_cell_renderer_pixbuf_class_init", "remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185", null ],
+ [ "remmina_cell_renderer_pixbuf_get_type", "remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b", null ],
+ [ "remmina_cell_renderer_pixbuf_init", "remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2", null ],
+ [ "remmina_cell_renderer_pixbuf_new", "remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715", null ],
+ [ "remmina_ftp_client_action_delete", "remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6", null ],
+ [ "remmina_ftp_client_action_download", "remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488", null ],
+ [ "remmina_ftp_client_action_home", "remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43", null ],
+ [ "remmina_ftp_client_action_parent", "remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372", null ],
+ [ "remmina_ftp_client_action_refresh", "remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee", null ],
+ [ "remmina_ftp_client_action_upload", "remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd", null ],
+ [ "remmina_ftp_client_add_file", "remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed", null ],
+ [ "remmina_ftp_client_cell_data_filetype_pixbuf", "remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89", null ],
+ [ "remmina_ftp_client_cell_data_permission", "remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4", null ],
+ [ "remmina_ftp_client_cell_data_progress", "remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1", null ],
+ [ "remmina_ftp_client_cell_data_progress_pixbuf", "remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696", null ],
+ [ "remmina_ftp_client_cell_data_size", "remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939", null ],
+ [ "remmina_ftp_client_cell_data_size_progress", "remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b", null ],
+ [ "remmina_ftp_client_class_init", "remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf", null ],
+ [ "remmina_ftp_client_clear_file_list", "remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc", null ],
+ [ "remmina_ftp_client_create_toolbar", "remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b", null ],
+ [ "remmina_ftp_client_destroy", "remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba", null ],
+ [ "remmina_ftp_client_dir_on_activate", "remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c", null ],
+ [ "remmina_ftp_client_dir_on_changed", "remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4", null ],
+ [ "remmina_ftp_client_download", "remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805", null ],
+ [ "remmina_ftp_client_file_list_on_button_press", "remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8", null ],
+ [ "remmina_ftp_client_file_selection_on_changed", "remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc", null ],
+ [ "remmina_ftp_client_filter_visible_func", "remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a", null ],
+ [ "remmina_ftp_client_get_dir", "remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc", null ],
+ [ "remmina_ftp_client_get_download_dir", "remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854", null ],
+ [ "remmina_ftp_client_get_overwrite_status", "remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e", null ],
+ [ "remmina_ftp_client_get_waiting_task", "remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141", null ],
+ [ "remmina_ftp_client_init", "remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10", null ],
+ [ "remmina_ftp_client_load_state", "remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa", null ],
+ [ "remmina_ftp_client_new", "remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d", null ],
+ [ "remmina_ftp_client_open_dir", "remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286", null ],
+ [ "remmina_ftp_client_popup_menu", "remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac", null ],
+ [ "remmina_ftp_client_save_state", "remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3", null ],
+ [ "remmina_ftp_client_set_dir", "remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f", null ],
+ [ "remmina_ftp_client_set_file_action_sensitive", "remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36", null ],
+ [ "remmina_ftp_client_set_overwrite_status", "remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f", null ],
+ [ "remmina_ftp_client_set_show_hidden", "remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6", null ],
+ [ "remmina_ftp_client_size_to_str", "remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb", null ],
+ [ "remmina_ftp_client_task_list_cell_on_activate", "remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969", null ],
+ [ "remmina_ftp_client_task_list_on_query_tooltip", "remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510", null ],
+ [ "remmina_ftp_client_update_task", "remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd", null ],
+ [ "remmina_ftp_client_upload_folder_on_toggled", "remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406", null ],
+ [ "remmina_ftp_task_free", "remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7", null ],
+ [ "remmina_ftp_client_signals", "remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5", null ],
+ [ "remmina_ftp_client_taskid", "remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ftp__client_8c_source.html b/docs/remmina__ftp__client_8c_source.html
new file mode 100644
index 000000000..03be6e2c0
--- /dev/null
+++ b/docs/remmina__ftp__client_8c_source.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ftp_client.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ftp__client_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ftp_client.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ftp__client_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-2020 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">#define _FILE_OFFSET_BITS 64</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gdk/gdk.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;config.h&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__public_8h.html">remmina_public.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__pref_8h.html">remmina_pref.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__marshals_8h.html">remmina_marshals.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__file_8h.html">remmina_file.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__ftp__client_8h.html">remmina_ftp_client.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* -------------------- RemminaCellRendererPixbuf ----------------------- */</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* A tiny cell renderer that extends the default pixbuf cell render to accept activation */</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_CELL_RENDERER_PIXBUF \</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> (remmina_cell_renderer_pixbuf_get_type())</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define REMMINA_CELL_RENDERER_PIXBUF(obj) \</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_CELL_RENDERER_PIXBUF, RemminaCellRendererPixbuf))</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#define REMMINA_CELL_RENDERER_PIXBUF_CLASS(klass) \</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_CELL_RENDERER_PIXBUF, RemminaCellRendererPixbufClass))</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#define REMMINA_IS_CELL_RENDERER_PIXBUF(obj) \</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_CELL_RENDERER_PIXBUF))</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_cell_renderer_pixbuf.html"> 64</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a> {</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045"> 65</a></span>&#160; GtkCellRendererPixbuf <a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_cell_renderer_pixbuf_class.html"> 68</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a> {</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279"> 69</a></span>&#160; GtkCellRendererPixbufClass <a class="code" href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279">parent_class</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"><a class="line" href="struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1"> 71</a></span>&#160; void (*activate)(<a class="code" href="struct___remmina_cell_renderer_pixbuf.html">RemminaCellRendererPixbuf</a> * <a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;} <a class="code" href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b"> 74</a></span>&#160;GType <a class="code" href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b">remmina_cell_renderer_pixbuf_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;G_GNUC_CONST;</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;<a class="code" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_cell_renderer_pixbuf.html">RemminaCellRendererPixbuf</a>, remmina_cell_renderer_pixbuf, GTK_TYPE_CELL_RENDERER_PIXBUF)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keyword">static</span> guint remmina_cell_renderer_pixbuf_signals[1] =</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{ 0 };</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447"> 82</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_cell_renderer_pixbuf_activate</a>(GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GdkEvent *event, GtkWidget *widget,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">const</span> gchar *path, <span class="keyword">const</span> GdkRectangle *background_area, <span class="keyword">const</span> GdkRectangle *cell_area,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; GtkCellRendererState flags)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; g_signal_emit(G_OBJECT(renderer), remmina_cell_renderer_pixbuf_signals[0], 0, path);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185"> 91</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185">remmina_cell_renderer_pixbuf_class_init</a>(<a class="code" href="struct___remmina_cell_renderer_pixbuf_class.html">RemminaCellRendererPixbufClass</a> *klass)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; GtkCellRendererClass *renderer_class = GTK_CELL_RENDERER_CLASS(klass);</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; renderer_class-&gt;activate = <a class="code" href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_cell_renderer_pixbuf_activate</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; remmina_cell_renderer_pixbuf_signals[0] = g_signal_new(<span class="stringliteral">&quot;activate&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_cell_renderer_pixbuf_class.html">RemminaCellRendererPixbufClass</a>, activate), NULL,</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; NULL, g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);</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;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2"> 103</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2">remmina_cell_renderer_pixbuf_init</a>(<a class="code" href="struct___remmina_cell_renderer_pixbuf.html">RemminaCellRendererPixbuf</a> *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; g_object_set(G_OBJECT(renderer), <span class="stringliteral">&quot;mode&quot;</span>, GTK_CELL_RENDERER_MODE_ACTIVATABLE, NULL);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</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="keyword">static</span> GtkCellRenderer*</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715"> 110</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_cell_renderer_pixbuf_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;{</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>;</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; renderer = GTK_CELL_RENDERER(g_object_new(REMMINA_TYPE_CELL_RENDERER_PIXBUF, NULL));</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> <a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;}</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">/* --------------------- RemminaFTPClient ----------------------------*/</span></div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291"> 120</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">G_DEFINE_TYPE</a>( <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a>, remmina_ftp_client, GTK_TYPE_GRID)</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;<span class="preprocessor">#define BUSY_CURSOR \</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor"> if (GDK_IS_WINDOW(gtk_widget_get_window(GTK_WIDGET(client)))) \</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor"> gdk_window_set_cursor(gtk_widget_get_window(GTK_WIDGET(client)), gdk_cursor_new_for_display(gdk_display_get_default(), GDK_WATCH)); \</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor"> gdk_display_flush(gdk_display_get_default()); \</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">#define NORMAL_CURSOR \</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor"> if (GDK_IS_WINDOW(gtk_widget_get_window(GTK_WIDGET(client)))) \</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="preprocessor"> gdk_window_set_cursor(gtk_widget_get_window(GTK_WIDGET(client)), NULL); \</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="preprocessor"> }</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;<span class="keyword">struct </span>_RemminaFTPClientPriv {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; GtkWidget *directory_combo;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GtkWidget *vpaned;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; GtkTreeModel *file_list_model;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; GtkTreeModel *file_list_filter;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; GtkTreeModel *file_list_sort;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; GtkWidget *file_list_view;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; gboolean file_list_show_hidden;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; GtkTreeModel *task_list_model;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; GtkWidget *task_list_view;</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; gchar *current_directory;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; gchar *working_directory;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; GtkWidget *file_action_widgets[10];</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; gboolean sensitive;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; gboolean overwrite_all;</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"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a"> 156</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a">remmina_ftp_client_taskid</a> = 1;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64"> 159</a></span>&#160; <a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">OPEN_DIR_SIGNAL</a>, <a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a>, <a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">CANCEL_TASK_SIGNAL</a>, <a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">DELETE_FILE_SIGNAL</a>, <a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;};</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"><a class="line" href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5"> 162</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5">remmina_ftp_client_signals</a>[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] =</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;{ 0 };</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf"> 165</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf">remmina_ftp_client_class_init</a>(<a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a> *klass)</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;{</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">OPEN_DIR_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;open-dir&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a>, open_dir), NULL, NULL,</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; g_cclosure_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;new-task&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a>, new_task), NULL, NULL,</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">CANCEL_TASK_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;cancel-task&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a>, cancel_task), NULL, NULL,</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshal_BOOLEAN__INT</a>, G_TYPE_BOOLEAN, 1, G_TYPE_INT);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">DELETE_FILE_SIGNAL</a>] = g_signal_new(<span class="stringliteral">&quot;delete-file&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a>, delete_file), NULL, NULL,</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshal_BOOLEAN__INT_STRING</a>, G_TYPE_BOOLEAN, 2, G_TYPE_INT, G_TYPE_STRING);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba"> 182</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client_destroy</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gpointer data)</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;{</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; g_free(priv-&gt;current_directory);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; g_free(priv-&gt;working_directory);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_free(priv);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;}</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89"> 191</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client_cell_data_filetype_pixbuf</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; GtkTreeIter *iter, gpointer user_data)</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;{</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; gint type;</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="comment">/* Same as REMMINA_FTP_TASK_COLUMN_TYPE */</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, &amp;type, -1);</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; <span class="keywordflow">switch</span> (type) {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>:</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;folder&quot;</span>, NULL);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;text-x-generic&quot;</span>, NULL);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">break</span>;</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__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696"> 210</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client_cell_data_progress_pixbuf</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; GtkTreeIter *iter, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; gint tasktype, status;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>, &amp;tasktype, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, &amp;status,</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; -1);</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; <span class="keywordflow">switch</span> (status) {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>:</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;P_ause&quot;</span>, NULL);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a>:</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; (tasktype == <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a> ? <span class="stringliteral">&quot;go-up&quot;</span> : <span class="stringliteral">&quot;go-down&quot;</span>), NULL);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>:</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;_Yes&quot;</span>, NULL);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a>:</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;_No&quot;</span>, NULL);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">break</span>;</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"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keyword">static</span> gchar*</div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb"> 237</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a>(gfloat size)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">return</span> g_format_size_full((guint64)size, G_FORMAT_SIZE_IEC_UNITS);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939"> 244</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client_cell_data_size</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; GtkTreeIter *iter, gpointer user_data)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;{</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; gfloat size;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gchar *str;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>, &amp;size, -1);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; str = <a class="code" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a>(size);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;text&quot;</span>, str, NULL);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;xalign&quot;</span>, 1.0, NULL);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; g_free(str);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4"> 259</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client_cell_data_permission</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; GtkTreeIter *iter, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; gint permission;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; gchar buf[11];</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; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>, &amp;permission, -1);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; buf[0] = ((permission &amp; 040000) ? <span class="charliteral">&#39;d&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; buf[1] = ((permission &amp; 0400) ? <span class="charliteral">&#39;r&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; buf[2] = ((permission &amp; 0200) ? <span class="charliteral">&#39;w&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; buf[3] = ((permission &amp; 0100) ? <span class="charliteral">&#39;x&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; buf[4] = ((permission &amp; 040) ? <span class="charliteral">&#39;r&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; buf[5] = ((permission &amp; 020) ? <span class="charliteral">&#39;w&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; buf[6] = ((permission &amp; 010) ? <span class="charliteral">&#39;x&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; buf[7] = ((permission &amp; 04) ? <span class="charliteral">&#39;r&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; buf[8] = ((permission &amp; 02) ? <span class="charliteral">&#39;w&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; buf[9] = ((permission &amp; 01) ? <span class="charliteral">&#39;x&#39;</span> : <span class="charliteral">&#39;-&#39;</span>);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; buf[10] = <span class="charliteral">&#39;\0&#39;</span>;</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; g_object_set(renderer, <span class="stringliteral">&quot;text&quot;</span>, buf, NULL);</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;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b"> 283</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client_cell_data_size_progress</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; GtkTreeIter *iter, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; gint status;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; gfloat size, donesize;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; gchar *strsize, *strdonesize, *str;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, &amp;status, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, &amp;size,</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>, &amp;donesize, -1);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">if</span> (status == <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>) {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; str = <a class="code" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a>(size);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; strsize = <a class="code" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a>(size);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; strdonesize = <a class="code" href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a>(donesize);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; str = g_strdup_printf(<span class="stringliteral">&quot;%s / %s&quot;</span>, strdonesize, strsize);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; g_free(strsize);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; g_free(strdonesize);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</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; g_object_set(renderer, <span class="stringliteral">&quot;text&quot;</span>, str, NULL);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; g_object_set(renderer, <span class="stringliteral">&quot;xalign&quot;</span>, 1.0, NULL);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; g_free(str);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;}</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1"> 309</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client_cell_data_progress</a>(GtkTreeViewColumn *col, GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, GtkTreeModel *model,</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; GtkTreeIter *iter, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; gint status;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; gfloat size, donesize;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; gint progress;</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; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, &amp;status, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, &amp;size,</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>, &amp;donesize, -1);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">if</span> (status == <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>) {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; progress = 100;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">if</span> (size &lt;= 1) {</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; progress = 0;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; progress = (gint)(donesize / size * 100);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (progress &gt; 99)</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; progress = 99;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</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; g_object_set(renderer, <span class="stringliteral">&quot;value&quot;</span>, progress, NULL);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286"> 333</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <span class="keyword">const</span> gchar *dir)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;{</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; BUSY_CURSOR</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; g_signal_emit(G_OBJECT(client), remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">OPEN_DIR_SIGNAL</a>], 0, dir);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; NORMAL_CURSOR</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;}</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c"> 341</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client_dir_on_activate</a>(GtkWidget *widget, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, gtk_entry_get_text(GTK_ENTRY(widget)));</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;}</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4"> 347</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client_dir_on_changed</a>(GtkWidget *widget, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;{</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; GtkWidget *entry = gtk_bin_get_child(GTK_BIN(widget));</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">if</span> (!gtk_widget_is_focus(entry)) {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; gtk_widget_grab_focus(entry);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="comment">/* If the text was changed but the entry is not the focus, it should be changed by the drop-down list.</span></div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="comment"> Not sure this will always work in the future, but it works right now :) */</span></div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, gtk_entry_get_text(GTK_ENTRY(entry)));</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</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;</div><div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36"> 360</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client_set_file_action_sensitive</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gboolean sensitive)</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;{</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; gint i;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordflow">for</span> (i = 0; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_action_widgets[i]; i++) {</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gtk_widget_set_sensitive(client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_action_widgets[i], sensitive);</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; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;sensitive = sensitive;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc"> 370</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client_file_selection_on_changed</a>(GtkTreeSelection *selection, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;{</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; GList *list;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; list = gtk_tree_selection_get_selected_rows(selection, NULL);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client_set_file_action_sensitive</a>(client, (list ? TRUE : FALSE));</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; g_list_free(list);</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"> 380</span>&#160;<span class="keyword">static</span> gchar*</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854"> 381</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client_get_download_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; gchar *localdir = NULL;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; dialog = gtk_file_chooser_dialog_new(_(<span class="stringliteral">&quot;Choose download location&quot;</span>),</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))), GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="stringliteral">&quot;_Cancel&quot;</span>, GTK_RESPONSE_CANCEL, <span class="stringliteral">&quot;_OK&quot;</span>, GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">if</span> (priv-&gt;working_directory) {</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), priv-&gt;working_directory);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; }</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; g_free(priv-&gt;working_directory);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; priv-&gt;working_directory = gtk_file_chooser_get_current_folder(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; localdir = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">return</span> localdir;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;}</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805"> 403</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client_download</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, GtkTreeIter *piter, <span class="keyword">const</span> gchar *localdir)</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;{</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; GtkListStore *store = GTK_LIST_STORE(priv-&gt;task_list_model);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; gint type;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; gchar *name;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gfloat size;</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; gtk_tree_model_get(priv-&gt;file_list_sort, piter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, &amp;type, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>,</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; &amp;name, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>, &amp;size, -1);</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; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gtk_list_store_set(store, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a>, type, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>, name,</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, size, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>, remmina_ftp_client_taskid++,</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>, <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>,</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; priv-&gt;current_directory, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>, localdir, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>,</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>, 0.0, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>,</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; NULL, -1);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; g_free(name);</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; g_signal_emit(G_OBJECT(client), remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a>], 0);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;}</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510"> 429</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client_task_list_on_query_tooltip</a>(GtkWidget *widget, gint x, gint y, gboolean keyboard_tip,</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; GtkTooltip *tooltip, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;{</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; GtkTreePath *path = NULL;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; gchar *tmp;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; if (!gtk_tree_view_get_tooltip_context(GTK_TREE_VIEW(priv-&gt;task_list_view), &amp;x, &amp;y, keyboard_tip, NULL, &amp;path, &amp;iter)) {</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; }</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; gtk_tree_model_get(priv-&gt;task_list_model, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>, &amp;tmp, -1);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (!tmp)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 446</span>&#160; gtk_tooltip_set_text(tooltip, tmp);</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; gtk_tree_view_set_tooltip_row(GTK_TREE_VIEW(priv-&gt;task_list_view), tooltip, path);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; g_free(tmp);</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">return</span> TRUE;</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"> 455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372"> 456</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client_action_parent</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;{</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, <span class="stringliteral">&quot;..&quot;</span>);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43"> 462</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client_action_home</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;{</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, NULL);</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;</div><div class="line"><a name="l00468"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee"> 468</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client_action_refresh</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;{</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, <span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;}</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488"> 474</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client_action_download</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;{</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; GtkTreeSelection *selection;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; gchar *localdir;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; GList *list, *list_iter;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; GtkTreeIter iter;</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"> 483</span>&#160; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(priv-&gt;file_list_view));</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="keywordflow">if</span> (!selection)</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; list = gtk_tree_selection_get_selected_rows(selection, NULL);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">if</span> (!list)</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; localdir = <a class="code" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client_get_download_dir</a>(client);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">if</span> (!localdir) {</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; g_list_free(list);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; }</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; list_iter = g_list_first(list);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">while</span> (list_iter) {</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; gtk_tree_model_get_iter(priv-&gt;file_list_sort, &amp;iter, (GtkTreePath*)list_iter-&gt;data);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client_download</a>(client, &amp;iter, localdir);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; list_iter = g_list_next(list_iter);</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; }</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; g_list_free(list);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; g_free(localdir);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;}</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6"> 506</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client_action_delete</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; GtkTreeSelection *selection;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; GList *list, *list_iter;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gint type;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; gchar *name;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; gchar *path;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; gint response;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gboolean ret = TRUE;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(priv-&gt;file_list_view));</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">if</span> (!selection)</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; list = gtk_tree_selection_get_selected_rows(selection, NULL);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">if</span> (!list)</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">return</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; dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))), GTK_DIALOG_MODAL,</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, _(<span class="stringliteral">&quot;Are you sure to delete the selected files on server?&quot;</span>));</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; response = gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keywordflow">if</span> (response != GTK_RESPONSE_YES)</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">return</span>;</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; BUSY_CURSOR</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; list_iter = g_list_first(list);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keywordflow">while</span> (list_iter) {</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; gtk_tree_model_get_iter(priv-&gt;file_list_sort, &amp;iter, (GtkTreePath*)list_iter-&gt;data);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; gtk_tree_model_get(priv-&gt;file_list_sort, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, &amp;type,</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>, &amp;name, -1);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; path = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(priv-&gt;current_directory, name);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; g_signal_emit(G_OBJECT(client), remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">DELETE_FILE_SIGNAL</a>], 0, type, path, &amp;ret);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; g_free(name);</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; g_free(path);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">if</span> (!ret)</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; list_iter = g_list_next(list_iter);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; }</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; g_list_free(list);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; NORMAL_CURSOR</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client_action_refresh</a>(<span class="keywordtype">object</span>, client);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; }</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;}</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406"> 561</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client_upload_folder_on_toggled</a>(GtkToggleButton *togglebutton, GtkWidget *widget)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gtk_file_chooser_set_action(</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; GTK_FILE_CHOOSER(widget),</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; gtk_toggle_button_get_active(togglebutton) ?</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER : GTK_FILE_CHOOSER_ACTION_OPEN);</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;</div><div class="line"><a name="l00570"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd"> 570</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client_action_upload</a>(GObject *<span class="keywordtype">object</span>, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;{</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; GtkListStore *store = GTK_LIST_STORE(priv-&gt;task_list_model);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; GtkWidget *upload_folder_check;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gint type;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; GSList *files = NULL;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; GSList *element;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; gchar *path;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gchar *dir, *name;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keyword">struct </span>stat st;</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; dialog = gtk_file_chooser_dialog_new(_(<span class="stringliteral">&quot;Choose a file to upload&quot;</span>),</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))), GTK_FILE_CHOOSER_ACTION_OPEN, <span class="stringliteral">&quot;_Cancel&quot;</span>,</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; GTK_RESPONSE_CANCEL, <span class="stringliteral">&quot;_OK&quot;</span>, GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), TRUE);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">if</span> (priv-&gt;working_directory) {</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(dialog), priv-&gt;working_directory);</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; upload_folder_check = gtk_check_button_new_with_label(_(<span class="stringliteral">&quot;Upload folder&quot;</span>));</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; gtk_widget_show(upload_folder_check);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; g_signal_connect(G_OBJECT(upload_folder_check), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client_upload_folder_on_toggled</a>),</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; dialog);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; gtk_file_chooser_set_extra_widget(GTK_FILE_CHOOSER(dialog), upload_folder_check);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; g_free(priv-&gt;working_directory);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; priv-&gt;working_directory = gtk_file_chooser_get_current_folder(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; files = gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog));</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; type = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(upload_folder_check)) ?</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a> : <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>;</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="keywordflow">if</span> (!files)</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">for</span> (element = files; element; element = element-&gt;next) {</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; path = (gchar*)element-&gt;data;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; if (g_stat(path, &amp;st) &lt; 0)</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">continue</span>;</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; name = g_strrstr(path, <span class="stringliteral">&quot;/&quot;</span>);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">if</span> (name) {</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; *name++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; dir = path;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; name = path;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; dir = NULL;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; }</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gtk_list_store_set(store, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a>, type, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>, name,</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, (gfloat)st.st_size, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>,</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; remmina_ftp_client_taskid++, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>, <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a>,</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>, priv-&gt;current_directory, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>,</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; dir, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>,</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>, 0.0, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>, NULL, -1);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; g_free(path);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; }</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; g_slist_free(files);</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; g_signal_emit(G_OBJECT(client), remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a>], 0);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;}</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac"> 639</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client_popup_menu</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, GdkEventButton *event)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; GtkWidget *image;</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"> 646</span>&#160; menu = gtk_menu_new();</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; menuitem = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Download&quot;</span>));</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-document-save-symbolic&quot;</span>, GTK_ICON_SIZE_MENU);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; gtk_widget_show(image);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client_action_download</a>), client);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; menuitem = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Upload&quot;</span>));</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-document-send-symbolic&quot;</span>, GTK_ICON_SIZE_MENU);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; gtk_widget_show(image);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client_action_upload</a>), client);</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; menuitem = gtk_menu_item_new_with_mnemonic(_(<span class="stringliteral">&quot;_Delete&quot;</span>));</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client_action_delete</a>), client);</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(menu), (GdkEvent*)event);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, event-&gt;button, event-&gt;time);</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;}</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8"> 674</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client_file_list_on_button_press</a>(GtkWidget *widget, GdkEventButton *event, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; GList *list;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; gint type;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; gchar *name;</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; gchar *localdir;</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; if (event-&gt;button == 3) {</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client_popup_menu</a>(client, event);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (event-&gt;button == 1 &amp;&amp; event-&gt;type == GDK_2BUTTON_PRESS) {</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; list = gtk_tree_selection_get_selected_rows(</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; gtk_tree_view_get_selection(GTK_TREE_VIEW(priv-&gt;file_list_view)), NULL);</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">if</span> (list) {</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; gtk_tree_model_get_iter(priv-&gt;file_list_sort, &amp;iter, (GtkTreePath*)list-&gt;data);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; gtk_tree_model_get(priv-&gt;file_list_sort, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, &amp;type,</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>, &amp;name, -1);</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">switch</span> (type) {</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>:</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a>(client, name);</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; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>:</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; localdir = <a class="code" href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client_get_download_dir</a>(client);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">if</span> (localdir) {</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client_download</a>(client, &amp;iter, localdir);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; g_free(localdir);</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; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; }</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; g_list_free(list);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; g_free(name);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; }</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; }</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="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;}</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;</div><div class="line"><a name="l00714"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969"> 714</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client_task_list_cell_on_activate</a>(GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>, gchar *path, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;{</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; GtkTreePath *treepath;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; gint taskid;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; gboolean ret = FALSE;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; treepath = gtk_tree_path_new_from_string(path);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; gtk_tree_model_get_iter(priv-&gt;task_list_model, &amp;iter, treepath);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; gtk_tree_path_free(treepath);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; gtk_tree_model_get(priv-&gt;task_list_model, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>, &amp;taskid, -1);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; g_signal_emit(G_OBJECT(client), remmina_ftp_client_signals[<a class="code" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">CANCEL_TASK_SIGNAL</a>], 0, taskid, &amp;ret);</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; gtk_list_store_remove(GTK_LIST_STORE(priv-&gt;task_list_model), &amp;iter);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; }</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;}</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b"> 736</a></span>&#160;<span class="keyword">static</span> GtkWidget* <a class="code" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client_create_toolbar</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;{</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; GtkWidget *box;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; GtkWidget *button;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; GtkWidget *image;</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; gint i = 0;</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; box = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; gtk_widget_show(box);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; gtk_button_box_set_layout(GTK_BUTTON_BOX(box), GTK_BUTTONBOX_START);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; gtk_grid_attach(GTK_GRID(client), box, 0, 0, 1, 1);</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; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Home&quot;</span>));</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Go to home folder&quot;</span>));</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client_action_home</a>), client);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160;</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Up&quot;</span>));</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Go to parent folder&quot;</span>));</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client_action_parent</a>), client);</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160;</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Refresh&quot;</span>));</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Refresh current folder&quot;</span>));</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client_action_refresh</a>), client);</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; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Download&quot;</span>));</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Download from server&quot;</span>));</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-document-save-symbolic&quot;</span>, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; gtk_button_set_image(GTK_BUTTON(button), image);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client_action_download</a>), client);</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; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_action_widgets[i++] = button;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Upload&quot;</span>));</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Upload to server&quot;</span>));</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; image = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;remmina-document-send-symbolic&quot;</span>, GTK_ICON_SIZE_BUTTON);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; gtk_button_set_image(GTK_BUTTON(button), image);</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client_action_upload</a>), client);</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; button = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Delete&quot;</span>));</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; gtk_widget_show(button);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; gtk_widget_set_tooltip_text(button, _(<span class="stringliteral">&quot;Delete files on server&quot;</span>));</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; g_signal_connect(G_OBJECT(button), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client_action_delete</a>), client);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_action_widgets[i++] = button;</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="keywordflow">return</span> box;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6"> 802</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gboolean show_hidden)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_list_show_hidden = show_hidden;</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_list_filter));</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;}</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"><a class="line" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a"> 809</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client_filter_visible_func</a>(GtkTreeModel *model, GtkTreeIter *iter, <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;{</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; gchar *name;</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; gboolean result = TRUE;</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;file_list_show_hidden)</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; gtk_tree_model_get(model, iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>, &amp;name, -1);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keywordflow">if</span> (name &amp;&amp; name[0] == <span class="charliteral">&#39;.&#39;</span>) {</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; result = FALSE;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; }</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; g_free(name);</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; <span class="keywordflow">return</span> result;</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;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160;<span class="comment">/* Set the overwrite_all status */</span></div><div class="line"><a name="l00827"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f"> 827</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gboolean status)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;overwrite_all = status;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;}</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160;<span class="comment">/* Get the overwrite_all status */</span></div><div class="line"><a name="l00834"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e"> 834</a></span>&#160;gboolean <a class="code" href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160;{</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <span class="keywordflow">return</span> client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;overwrite_all;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;}</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160;</div><div class="line"><a name="l00840"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10"> 840</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10">remmina_ftp_client_init</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;{</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv;</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; GtkWidget *vpaned;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; GtkWidget *toolbar;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; GtkWidget *scrolledwindow;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; GtkCellRenderer *<a class="code" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a>;</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; GtkTreeViewColumn *column;</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; GtkWidget *vbox;</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; priv = g_new0(<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>, 1);</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a> = priv;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="comment">/* Initialize overwrite status to FALSE */</span></div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;overwrite_all = FALSE;</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="comment">/* Main container */</span></div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(client), TRUE);</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(client), TRUE);</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160;</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; <span class="comment">/* Toolbar */</span></div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; toolbar = <a class="code" href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client_create_toolbar</a>(client);</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; <span class="comment">/* The Paned to separate File List and Task List */</span></div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; vpaned = gtk_paned_new(GTK_ORIENTATION_VERTICAL);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(vpaned), TRUE);</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(vpaned), TRUE);</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; gtk_widget_show(vpaned);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; gtk_grid_attach_next_to(GTK_GRID(client), vpaned, toolbar, GTK_POS_BOTTOM, 1, 1);</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; priv-&gt;vpaned = vpaned;</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160;</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; <span class="comment">/* Remote */</span></div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; gtk_widget_show(vbox);</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; gtk_paned_pack1(GTK_PANED(vpaned), vbox, TRUE, FALSE);</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160;</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <span class="comment">/* Remote Directory */</span></div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; widget = gtk_combo_box_text_new_with_entry();</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(widget), <span class="stringliteral">&quot;/&quot;</span>);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), widget, FALSE, TRUE, 0);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; priv-&gt;directory_combo = widget;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <span class="comment">/* Remote File List */</span></div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), scrolledwindow, TRUE, TRUE, 0);</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; widget = gtk_tree_view_new();</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), widget);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)), GTK_SELECTION_MULTIPLE);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; priv-&gt;file_list_view = widget;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="comment">/* Remote File List - Columns */</span></div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; column = gtk_tree_view_column_new();</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; gtk_tree_view_column_set_title(column, _(<span class="stringliteral">&quot;Filename&quot;</span>));</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; gtk_tree_view_column_set_expand(column, TRUE);</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a>);</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; renderer = gtk_cell_renderer_pixbuf_new();</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; gtk_tree_view_column_pack_start(column, renderer, FALSE);</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client_cell_data_filetype_pixbuf</a>, NULL, NULL);</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; gtk_tree_view_column_pack_start(column, renderer, FALSE);</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; gtk_tree_view_column_add_attribute(column, renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>);</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;file_list_view), column);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Size&quot;</span>), renderer, NULL);</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; gtk_tree_view_column_set_alignment(column, 1.0);</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client_cell_data_size</a>, NULL, NULL);</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>);</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;file_list_view), column);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;User&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a>, NULL);</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a>);</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;file_list_view), column);</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160;</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Group&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a>, NULL);</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a>);</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;file_list_view), column);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Permission&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>,</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; NULL);</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client_cell_data_permission</a>, NULL, NULL);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>);</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;file_list_view), column);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="comment">/* Remote File List - Model */</span></div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; priv-&gt;file_list_model = GTK_TREE_MODEL(</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; gtk_list_store_new(<a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">REMMINA_FTP_FILE_N_COLUMNS</a>, G_TYPE_INT, G_TYPE_STRING, G_TYPE_FLOAT, G_TYPE_STRING,</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; G_TYPE_STRING, G_TYPE_INT, G_TYPE_STRING));</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; priv-&gt;file_list_filter = gtk_tree_model_filter_new(priv-&gt;file_list_model, NULL);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(priv-&gt;file_list_filter),</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; (GtkTreeModelFilterVisibleFunc)<a class="code" href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client_filter_visible_func</a>, client, NULL);</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; priv-&gt;file_list_sort = gtk_tree_model_sort_new_with_model(priv-&gt;file_list_filter);</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(priv-&gt;file_list_sort), <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a>,</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; GTK_SORT_ASCENDING);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; gtk_tree_view_set_model(GTK_TREE_VIEW(priv-&gt;file_list_view), priv-&gt;file_list_sort);</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; <span class="comment">/* Task List */</span></div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; gtk_paned_pack2(GTK_PANED(vpaned), scrolledwindow, FALSE, TRUE);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160;</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; widget = gtk_tree_view_new();</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), widget);</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; g_object_set(widget, <span class="stringliteral">&quot;has-tooltip&quot;</span>, TRUE, NULL);</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160;</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; priv-&gt;task_list_view = widget;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160;</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; <span class="comment">/* Task List - Columns */</span></div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; column = gtk_tree_view_column_new();</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; gtk_tree_view_column_set_title(column, _(<span class="stringliteral">&quot;Filename&quot;</span>));</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; gtk_tree_view_column_set_expand(column, TRUE);</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>);</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; renderer = gtk_cell_renderer_pixbuf_new();</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; gtk_tree_view_column_pack_start(column, renderer, FALSE);</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client_cell_data_progress_pixbuf</a>, NULL, NULL);</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; renderer = gtk_cell_renderer_pixbuf_new();</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; gtk_tree_view_column_pack_start(column, renderer, FALSE);</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client_cell_data_filetype_pixbuf</a>, NULL, NULL);</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; gtk_tree_view_column_pack_start(column, renderer, FALSE);</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; gtk_tree_view_column_add_attribute(column, renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>);</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Remote&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>,</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; NULL);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>);</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160;</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Local&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>, NULL);</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>);</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Size&quot;</span>), renderer, NULL);</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; gtk_tree_view_column_set_alignment(column, 1.0);</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client_cell_data_size_progress</a>, NULL, NULL);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; gtk_tree_view_column_set_sort_column_id(column, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>);</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; renderer = gtk_cell_renderer_progress_new();</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Progress&quot;</span>), renderer, NULL);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; gtk_tree_view_column_set_cell_data_func(column, renderer, <a class="code" href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client_cell_data_progress</a>, NULL, NULL);</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; renderer = <a class="code" href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_cell_renderer_pixbuf_new</a>();</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; column = gtk_tree_view_column_new_with_attributes(NULL, renderer, NULL);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; g_object_set(G_OBJECT(renderer), <span class="stringliteral">&quot;stock-id&quot;</span>, <span class="stringliteral">&quot;_Cancel&quot;</span>, NULL);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; gtk_tree_view_column_set_resizable(column, FALSE);</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(priv-&gt;task_list_view), column);</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; g_signal_connect(G_OBJECT(renderer), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client_task_list_cell_on_activate</a>), client);</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; <span class="comment">/* Task List - Model */</span></div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; priv-&gt;task_list_model = GTK_TREE_MODEL(</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; gtk_list_store_new(<a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">REMMINA_FTP_TASK_N_COLUMNS</a>, G_TYPE_INT, G_TYPE_STRING, G_TYPE_FLOAT, G_TYPE_INT,</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; G_TYPE_INT, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT, G_TYPE_FLOAT, G_TYPE_STRING));</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; gtk_tree_view_set_model(GTK_TREE_VIEW(priv-&gt;task_list_view), priv-&gt;task_list_model);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; <span class="comment">/* Setup the internal signals */</span></div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client_destroy</a>), NULL);</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; g_signal_connect(G_OBJECT(gtk_bin_get_child(GTK_BIN(priv-&gt;directory_combo))), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client_dir_on_activate</a>), client);</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; g_signal_connect(G_OBJECT(priv-&gt;directory_combo), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client_dir_on_changed</a>), client);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; g_signal_connect(G_OBJECT(priv-&gt;file_list_view), <span class="stringliteral">&quot;button-press-event&quot;</span>,</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client_file_list_on_button_press</a>), client);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; g_signal_connect(G_OBJECT(gtk_tree_view_get_selection(GTK_TREE_VIEW(priv-&gt;file_list_view))), <span class="stringliteral">&quot;changed&quot;</span>,</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client_file_selection_on_changed</a>), client);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; g_signal_connect(G_OBJECT(priv-&gt;task_list_view), <span class="stringliteral">&quot;query-tooltip&quot;</span>,</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; G_CALLBACK(<a class="code" href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client_task_list_on_query_tooltip</a>), client);</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;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;GtkWidget*</div><div class="line"><a name="l01042"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d"> 1042</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;{</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; client = REMMINA_FTP_CLIENT(g_object_new(REMMINA_TYPE_FTP_CLIENT, NULL));</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(client);</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;</div><div class="line"><a name="l01052"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3"> 1052</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;{</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; gint pos;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; pos = gtk_paned_get_position(GTK_PANED(client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;vpaned));</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(remminafile, <span class="stringliteral">&quot;ftp_vpanedpos&quot;</span>, pos);</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160;}</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;</div><div class="line"><a name="l01061"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa"> 1061</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; gint pos;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; GtkAllocation a;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160; pos = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;ftp_vpanedpos&quot;</span>, 0);</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160; <span class="keywordflow">if</span> (pos) {</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; gtk_widget_get_allocation(client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;vpaned, &amp;a);</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <span class="keywordflow">if</span> (a.height &gt; 0 &amp;&amp; pos &gt; a.height - 60) {</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; pos = a.height - 60;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; }</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; gtk_paned_set_position(GTK_PANED(client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>-&gt;vpaned), pos);</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; }</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__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc"> 1077</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; gtk_list_store_clear(GTK_LIST_STORE(priv-&gt;file_list_model));</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client_set_file_action_sensitive</a>(client, 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;</div><div class="line"><a name="l01086"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed"> 1086</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, ...)</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; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; GtkListStore *store = GTK_LIST_STORE(priv-&gt;file_list_model);</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; va_list args;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; gint type;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; gchar *name;</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; gchar *ptr;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; va_start(args, client);</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160; gtk_list_store_set_valist(store, &amp;iter, args);</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160; va_end(args);</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(store), &amp;iter,</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, &amp;type,</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>, &amp;name,</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; -1);</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; ptr = g_strdup_printf(<span class="stringliteral">&quot;%i%s&quot;</span>, type, name);</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; gtk_list_store_set(store, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a>, ptr, -1);</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; g_free(ptr);</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; g_free(name);</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;</div><div class="line"><a name="l01113"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f"> 1113</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <span class="keyword">const</span> gchar *dir)</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"> 1115</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; GtkTreeModel *model;</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; gboolean ret;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; gchar *t;</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; if (priv-&gt;current_directory &amp;&amp; g_strcmp0(priv-&gt;current_directory, dir) == 0)</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keywordflow">return</span>;</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; model = gtk_combo_box_get_model(GTK_COMBO_BOX(priv-&gt;directory_combo));</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; <span class="keywordflow">for</span> (ret = gtk_tree_model_get_iter_first(model, &amp;iter); ret; ret = gtk_tree_model_iter_next(model, &amp;iter)) {</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; gtk_tree_model_get(model, &amp;iter, 0, &amp;t, -1);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(t, dir) == 0) {</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; gtk_list_store_remove(GTK_LIST_STORE(model), &amp;iter);</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; g_free(t);</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; }</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; g_free(t);</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; }</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; gtk_combo_box_text_prepend_text(GTK_COMBO_BOX_TEXT(priv-&gt;directory_combo), dir);</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(priv-&gt;directory_combo), 0);</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; g_free(priv-&gt;current_directory);</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; priv-&gt;current_directory = g_strdup(dir);</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"> 1143</span>&#160;gchar*</div><div class="line"><a name="l01144"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc"> 1144</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;{</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; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; <span class="keywordflow">return</span> g_strdup(priv-&gt;current_directory);</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"> 1151</span>&#160;</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a>*</div><div class="line"><a name="l01153"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141"> 1153</a></span>&#160;<a class="code" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client)</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;{</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> task;</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"> 1161</span>&#160; if ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a>* retval;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>*)g_malloc( <span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>) );</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_FTP_CLIENT_GET_WAITING_TASK;</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a>.client = client;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; retval = d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a>.retval;</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; g_free(d);</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <span class="keywordflow">return</span> retval;</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; }</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter_first(priv-&gt;task_list_model, &amp;iter))</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; gtk_tree_model_get(priv-&gt;task_list_model, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a>, &amp;task.type,</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>, &amp;task.name, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, &amp;task.size,</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>, &amp;task.taskid, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>, &amp;task.tasktype,</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>, &amp;task.remotedir, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>,</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; &amp;task.localdir, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, &amp;task.status, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>,</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; &amp;task.donesize, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>, &amp;task.tooltip, -1);</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <span class="keywordflow">if</span> (task.status == <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>) {</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; path = gtk_tree_model_get_path(priv-&gt;task_list_model, &amp;iter);</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; task.rowref = gtk_tree_row_reference_new(priv-&gt;task_list_model, path);</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a>*)g_memdup(&amp;task, <span class="keyword">sizeof</span>(<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a>));</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; }</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_iter_next(priv-&gt;task_list_model, &amp;iter))</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; }</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l01197"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd"> 1197</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a>* task)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *priv = (<a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>*)client-&gt;<a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; GtkListStore *store = GTK_LIST_STORE(priv-&gt;task_list_model);</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; <span class="keywordflow">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>*)g_malloc( <span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>) );</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_FTP_CLIENT_UPDATE_TASK;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a>.client = client;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a>.task = task;</div><div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160; g_free(d);</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <span class="keywordflow">return</span>;</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"> 1216</span>&#160;</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;</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; path = gtk_tree_row_reference_get_path(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">rowref</a>);</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <span class="keywordflow">if</span> (path == NULL)</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; gtk_tree_model_get_iter(priv-&gt;task_list_model, &amp;iter, path);</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; gtk_list_store_set(store, &amp;iter, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">size</a>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a>,</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">donesize</a>, <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a>, -1);</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__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7"> 1228</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task)</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; <span class="keywordflow">if</span> (task) {</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">name</a>);</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">remotedir</a>);</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">localdir</a>);</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a>);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; g_free(task);</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;}</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;</div><div class="ttc" id="remmina__ftp__client_8c_html_a51ca0769a65bac59f16c790eb76330c8"><div class="ttname"><a href="remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8">remmina_ftp_client_file_list_on_button_press</a></div><div class="ttdeci">static gboolean remmina_ftp_client_file_list_on_button_press(GtkWidget *widget, GdkEventButton *event, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00674">remmina_ftp_client.c:674</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a2aaef09531b1694c183a5ba530fcc2fa"><div class="ttname"><a href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a></div><div class="ttdeci">void remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01061">remmina_ftp_client.c:1061</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00077">remmina_ftp_client.h:77</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ae5614fa3b465b83d0a5fa2245a97f45f"><div class="ttname"><a href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a></div><div class="ttdeci">void remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00827">remmina_ftp_client.c:827</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a01323d02fb338efc6df59b6396b004cb"><div class="ttname"><a href="remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb">remmina_ftp_client_size_to_str</a></div><div class="ttdeci">static gchar * remmina_ftp_client_size_to_str(gfloat size)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00237">remmina_ftp_client.c:237</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00102">remmina_ftp_client.h:102</a></div></div>
+<div class="ttc" id="struct___remmina_cell_renderer_pixbuf_class_html_ac51470401f7cc972ca9b767e3aa15279"><div class="ttname"><a href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279">_RemminaCellRendererPixbufClass::parent_class</a></div><div class="ttdeci">GtkCellRendererPixbufClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00069">remmina_ftp_client.c:69</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00073">remmina_ftp_client.h:73</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_adb002077547492e9d56c68281a1607d6"><div class="ttname"><a href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a></div><div class="ttdeci">void remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00802">remmina_ftp_client.c:802</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00089">remmina_ftp_client.h:89</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a3cb68d802d3c35dff5cee970d3c33bd5"><div class="ttname"><a href="remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5">remmina_ftp_client_signals</a></div><div class="ttdeci">static guint remmina_ftp_client_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00162">remmina_ftp_client.c:162</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a5464ddd2c0af8c518cd2fe647696e7a4"><div class="ttname"><a href="remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4">remmina_ftp_client_cell_data_permission</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_permission(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00259">remmina_ftp_client.c:259</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a132ed69d1311855ddf203c1be2913e43"><div class="ttname"><a href="remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43">remmina_ftp_client_action_home</a></div><div class="ttdeci">static void remmina_ftp_client_action_home(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00462">remmina_ftp_client.c:462</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00075">remmina_ftp_client.h:75</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_ab0911922a4cacc72610b6c2c8874f41a"><div class="ttname"><a href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a></div><div class="ttdeci">struct _RemminaFTPClientPriv RemminaFTPClientPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00048">remmina_ftp_client.h:48</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_adaedc425109ff59a35610144513181ac"><div class="ttname"><a href="remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac">remmina_ftp_client_popup_menu</a></div><div class="ttdeci">static void remmina_ftp_client_popup_menu(RemminaFTPClient *client, GdkEventButton *event)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00639">remmina_ftp_client.c:639</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a122b99fdc7197921f6e388cd9bf34e0b"><div class="ttname"><a href="remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b">remmina_ftp_client_create_toolbar</a></div><div class="ttdeci">static GtkWidget * remmina_ftp_client_create_toolbar(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00736">remmina_ftp_client.c:736</a></div></div>
+<div class="ttc" id="struct___remmina_cell_renderer_pixbuf_html_adc32a5ea949ab492a1d57e64a1adf045"><div class="ttname"><a href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">_RemminaCellRendererPixbuf::renderer</a></div><div class="ttdeci">GtkCellRendererPixbuf renderer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00065">remmina_ftp_client.c:65</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a0f8c03ede4800e429e5f4a6894d77510"><div class="ttname"><a href="remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510">remmina_ftp_client_task_list_on_query_tooltip</a></div><div class="ttdeci">static gboolean remmina_ftp_client_task_list_on_query_tooltip(GtkWidget *widget, gint x, gint y, gboolean keyboard_tip, GtkTooltip *tooltip, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00429">remmina_ftp_client.c:429</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a3ed43cd2e4ff590774318ffddb8f1493"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">remmina_masterthread_exec_data::ftp_client_update_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@16 ftp_client_update_task</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00050">remmina_ftp_client.h:50</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a6da87ca47ccd1cbee44a2d00b856c7fc"><div class="ttname"><a href="remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc">remmina_ftp_client_file_selection_on_changed</a></div><div class="ttdeci">static void remmina_ftp_client_file_selection_on_changed(GtkTreeSelection *selection, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00370">remmina_ftp_client.c:370</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ae4e945748f44486be2a906ab42c6f805"><div class="ttname"><a href="remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805">remmina_ftp_client_download</a></div><div class="ttdeci">static void remmina_ftp_client_download(RemminaFTPClient *client, GtkTreeIter *piter, const gchar *localdir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00403">remmina_ftp_client.c:403</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a8bdee1727836cb01a794c4164da50406"><div class="ttname"><a href="remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406">remmina_ftp_client_upload_folder_on_toggled</a></div><div class="ttdeci">static void remmina_ftp_client_upload_folder_on_toggled(GtkToggleButton *togglebutton, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00561">remmina_ftp_client.c:561</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_afad9715ec8784756b34f31c1db71d9cf"><div class="ttname"><a href="remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf">remmina_ftp_client_class_init</a></div><div class="ttdeci">static void remmina_ftp_client_class_init(RemminaFTPClientClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00165">remmina_ftp_client.c:165</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a709bf3bb81fba206dac478d08d42aadc"><div class="ttname"><a href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a></div><div class="ttdeci">gchar * remmina_ftp_client_get_dir(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01144">remmina_ftp_client.c:1144</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03"><div class="ttname"><a href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03">CANCEL_TASK_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00159">remmina_ftp_client.c:159</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ab879acb7e463e1b62284ee6a24e3a185"><div class="ttname"><a href="remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185">remmina_cell_renderer_pixbuf_class_init</a></div><div class="ttdeci">static void remmina_cell_renderer_pixbuf_class_init(RemminaCellRendererPixbufClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00091">remmina_ftp_client.c:91</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114"><div class="ttname"><a href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114">DELETE_FILE_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00159">remmina_ftp_client.c:159</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_class_html"><div class="ttname"><a href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00056">remmina_ftp_client.h:56</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00105">remmina_ftp_client.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_ac2b00cace6fd885736792664843be667"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">_RemminaFTPTask::tooltip</a></div><div class="ttdeci">gchar * tooltip</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00122">remmina_ftp_client.h:122</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_adb5e2ad5fd93f065bdc5c307df813c36"><div class="ttname"><a href="remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36">remmina_ftp_client_set_file_action_sensitive</a></div><div class="ttdeci">static void remmina_ftp_client_set_file_action_sensitive(RemminaFTPClient *client, gboolean sensitive)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00360">remmina_ftp_client.c:360</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a437dba2fc4f44f119501e9b53c688dd1"><div class="ttname"><a href="remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1">remmina_ftp_client_cell_data_progress</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_progress(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00309">remmina_ftp_client.c:309</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a33e4993b60c36eae89a6a0a943d28141"><div class="ttname"><a href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a></div><div class="ttdeci">RemminaFTPTask * remmina_ftp_client_get_waiting_task(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01153">remmina_ftp_client.c:1153</a></div></div>
+<div class="ttc" id="struct___remmina_cell_renderer_pixbuf_html"><div class="ttname"><a href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00064">remmina_ftp_client.c:64</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ad96358f40ab056c91f796ddda886a1dd"><div class="ttname"><a href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a></div><div class="ttdeci">void remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01197">remmina_ftp_client.c:1197</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html_a61c9dbffff97bf4c7a734694d25ccd54"><div class="ttname"><a href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">_RemminaFTPClient::priv</a></div><div class="ttdeci">RemminaFTPClientPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00053">remmina_ftp_client.h:53</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a86940733e5b9cf77b276084e437dcac0"><div class="ttname"><a href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a></div><div class="ttdeci">gchar * remmina_public_combine_path(const gchar *path1, const gchar *path2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00323">remmina_public.c:323</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a651eef678fd9d6d1e3bc0712f4517854"><div class="ttname"><a href="remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854">remmina_ftp_client_get_download_dir</a></div><div class="ttdeci">static gchar * remmina_ftp_client_get_download_dir(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00381">remmina_ftp_client.c:381</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_aebd9739e88aa215c1dc3d4138219d286"><div class="ttname"><a href="remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286">remmina_ftp_client_open_dir</a></div><div class="ttdeci">static void remmina_ftp_client_open_dir(RemminaFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00333">remmina_ftp_client.c:333</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a20d0575c04eb24553aeba7d0316e7a2e"><div class="ttname"><a href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a></div><div class="ttdeci">gboolean remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00834">remmina_ftp_client.c:834</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a49d1fee26f8c7fb210b46d83f92b08e2"><div class="ttname"><a href="remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2">remmina_cell_renderer_pixbuf_init</a></div><div class="ttdeci">static void remmina_cell_renderer_pixbuf_init(RemminaCellRendererPixbuf *renderer)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00103">remmina_ftp_client.c:103</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_aa7761ce5db26b435ced129f5e4fb3d30"><div class="ttname"><a href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a></div><div class="ttdeci">struct _RemminaCellRendererPixbuf RemminaCellRendererPixbuf</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00091">remmina_ftp_client.h:91</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a38a38a1c8c466cd8ce8c6ddecff88b43"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">remmina_masterthread_exec_data::ftp_client_get_waiting_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@17 ftp_client_get_waiting_task</div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a67034d0df1a745cf8befb2a95d8045a4"><div class="ttname"><a href="remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4">remmina_ftp_client_dir_on_changed</a></div><div class="ttdeci">static void remmina_ftp_client_dir_on_changed(GtkWidget *widget, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00347">remmina_ftp_client.c:347</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__ftp__client_8c_html_a630692ba90aee542f5504fbd845805ee"><div class="ttname"><a href="remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee">remmina_ftp_client_action_refresh</a></div><div class="ttdeci">static void remmina_ftp_client_action_refresh(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00468">remmina_ftp_client.c:468</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a27a70ad185d142086368c637b32e60ba"><div class="ttname"><a href="remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba">remmina_ftp_client_destroy</a></div><div class="ttdeci">static void remmina_ftp_client_destroy(RemminaFTPClient *client, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00182">remmina_ftp_client.c:182</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00078">remmina_ftp_client.h:78</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a6f2b57c1b126925a5ff6c6ae037e9e6c"><div class="ttname"><a href="remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c">RemminaCellRendererPixbufClass</a></div><div class="ttdeci">struct _RemminaCellRendererPixbufClass RemminaCellRendererPixbufClass</div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a659de1105971e3fda3d44d089277d6a7"><div class="ttname"><a href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a></div><div class="ttdeci">void remmina_ftp_task_free(RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01228">remmina_ftp_client.c:1228</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a2e39a69f60d38b46bc603df0ae368aed"><div class="ttname"><a href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a></div><div class="ttdeci">void remmina_ftp_client_add_file(RemminaFTPClient *client,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01086">remmina_ftp_client.c:1086</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00103">remmina_ftp_client.h:103</a></div></div>
+<div class="ttc" id="remmina__marshals_8h_html"><div class="ttname"><a href="remmina__marshals_8h.html">remmina_marshals.h</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00076">remmina_ftp_client.h:76</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a3a2dc5070f06ae0fcd25fbfe1587ab5c"><div class="ttname"><a href="remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c">remmina_ftp_client_dir_on_activate</a></div><div class="ttdeci">static void remmina_ftp_client_dir_on_activate(GtkWidget *widget, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00341">remmina_ftp_client.c:341</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a1ef77e687209d258ec576c31614ea60f"><div class="ttname"><a href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a></div><div class="ttdeci">void remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01113">remmina_ftp_client.c:1113</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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00097">remmina_ftp_client.h:97</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00096">remmina_ftp_client.h:96</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00099">remmina_ftp_client.h:99</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00074">remmina_ftp_client.h:74</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00159">remmina_ftp_client.c:159</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_aea63052ec0540ea9a7053da61dd04b8b"><div class="ttname"><a href="remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b">remmina_ftp_client_cell_data_size_progress</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_size_progress(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00283">remmina_ftp_client.c:283</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a6d8902cb0a498a91f904183369f04696"><div class="ttname"><a href="remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696">remmina_ftp_client_cell_data_progress_pixbuf</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_progress_pixbuf(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00210">remmina_ftp_client.c:210</a></div></div>
+<div class="ttc" id="struct___remmina_cell_renderer_pixbuf_class_html"><div class="ttname"><a href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00068">remmina_ftp_client.c:68</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_afca2c32cbd85de1f9f59141805f565dd"><div class="ttname"><a href="remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd">remmina_ftp_client_action_upload</a></div><div class="ttdeci">static void remmina_ftp_client_action_upload(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00570">remmina_ftp_client.c:570</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00104">remmina_ftp_client.h:104</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a63a298ab2eaf40a27403d45bbd031372"><div class="ttname"><a href="remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372">remmina_ftp_client_action_parent</a></div><div class="ttdeci">static void remmina_ftp_client_action_parent(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00456">remmina_ftp_client.c:456</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a5a0c3d9452b7b75c3ae49ac7a9851e0a"><div class="ttname"><a href="remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a">remmina_ftp_client_taskid</a></div><div class="ttdeci">static gint remmina_ftp_client_taskid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00156">remmina_ftp_client.c:156</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a67ff5ecb780875110ea8df8c9cdb4447"><div class="ttname"><a href="remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447">remmina_cell_renderer_pixbuf_activate</a></div><div class="ttdeci">static gboolean remmina_cell_renderer_pixbuf_activate(GtkCellRenderer *renderer, GdkEvent *event, GtkWidget *widget, const gchar *path, const GdkRectangle *background_area, const GdkRectangle *cell_area, GtkCellRendererState flags)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00082">remmina_ftp_client.c:82</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a179a26ffe6977ede5aa084619e29eba9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">_RemminaFTPTask::localdir</a></div><div class="ttdeci">gchar * localdir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00116">remmina_ftp_client.h:116</a></div></div>
+<div class="ttc" id="remmina__marshals_8c_html_a01460bf2694cb9ef62f1409d465ae70b"><div class="ttname"><a href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshal_BOOLEAN__INT_STRING</a></div><div class="ttdeci">void remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__marshals_8c_source.html#l00125">remmina_marshals.c:125</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abb2ad2f78b3dfcd6c9a68834346d0f6d"><div class="ttname"><a href="remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a></div><div class="ttdeci">GtkWidget * remmina_ftp_client_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01042">remmina_ftp_client.c:1042</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a27d2465531f2031f521280cbb11d3e89"><div class="ttname"><a href="remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89">remmina_ftp_client_cell_data_filetype_pixbuf</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_filetype_pixbuf(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00191">remmina_ftp_client.c:191</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html"><div class="ttname"><a href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00109">remmina_ftp_client.h:109</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a79fcc8693c4264aadb53d36149fae18b"><div class="ttname"><a href="remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b">remmina_cell_renderer_pixbuf_get_type</a></div><div class="ttdeci">GType remmina_cell_renderer_pixbuf_get_type(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00074">remmina_ftp_client.c:74</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a7eb7af10400725e0dd3da8ec6bda4a10"><div class="ttname"><a href="remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10">remmina_ftp_client_init</a></div><div class="ttdeci">static void remmina_ftp_client_init(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00840">remmina_ftp_client.c:840</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a8facf6f7974c51e238abd7096c729307"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">_RemminaFTPTask::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00112">remmina_ftp_client.h:112</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</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__ftp__client_8c_html_a13529f504158679b5c2fef7f1c25b969"><div class="ttname"><a href="remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969">remmina_ftp_client_task_list_cell_on_activate</a></div><div class="ttdeci">static void remmina_ftp_client_task_list_cell_on_activate(GtkCellRenderer *renderer, gchar *path, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00714">remmina_ftp_client.c:714</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html"><div class="ttname"><a href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00101">remmina_ftp_client.h:101</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64"><div class="ttname"><a href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64">OPEN_DIR_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00159">remmina_ftp_client.c:159</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_af749de0df07992d5b1f30cc32c3556cc"><div class="ttname"><a href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a></div><div class="ttdeci">void remmina_ftp_client_clear_file_list(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01077">remmina_ftp_client.c:1077</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a3872b49a2c0bea73d51d0500c5cee488"><div class="ttname"><a href="remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488">remmina_ftp_client_action_download</a></div><div class="ttdeci">static void remmina_ftp_client_action_download(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00474">remmina_ftp_client.c:474</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">REMMINA_FTP_FILE_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00080">remmina_ftp_client.h:80</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aec622571acc15e022f458efffcc275b0"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">_RemminaFTPTask::donesize</a></div><div class="ttdeci">gfloat donesize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00121">remmina_ftp_client.h:121</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a48fdf499ca63ec9f1f7e9af86f19a3f7"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">_RemminaFTPTask::size</a></div><div class="ttdeci">gfloat size</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00119">remmina_ftp_client.h:119</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00100">remmina_ftp_client.h:100</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0"><div class="ttname"><a href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0">NEW_TASK_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00159">remmina_ftp_client.c:159</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a90b05dce320d3ff7b6561b9f0ea8e291"><div class="ttname"><a href="remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaFTPClient, remmina_ftp_client, GTK_TYPE_GRID)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00120">remmina_ftp_client.c:120</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00098">remmina_ftp_client.h:98</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_aa421a961d286439948f40e787adb5939"><div class="ttname"><a href="remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939">remmina_ftp_client_cell_data_size</a></div><div class="ttdeci">static void remmina_ftp_client_cell_data_size(GtkTreeViewColumn *col, GtkCellRenderer *renderer, GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00244">remmina_ftp_client.c:244</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00079">remmina_ftp_client.h:79</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00088">remmina_ftp_client.h:88</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a5a433db0f6129e0bc4ec2fdc8f7588f6"><div class="ttname"><a href="remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6">remmina_ftp_client_action_delete</a></div><div class="ttdeci">static void remmina_ftp_client_action_delete(GObject *object, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00506">remmina_ftp_client.c:506</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">REMMINA_FTP_TASK_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00106">remmina_ftp_client.h:106</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a4b4e260fb27466bfd66cb55e5b135715"><div class="ttname"><a href="remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715">remmina_cell_renderer_pixbuf_new</a></div><div class="ttdeci">static GtkCellRenderer * remmina_cell_renderer_pixbuf_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00110">remmina_ftp_client.c:110</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00090">remmina_ftp_client.h:90</a></div></div>
+<div class="ttc" id="remmina__marshals_8c_html_ae155b6ae758a6b0ef3d89a4458feec99"><div class="ttname"><a href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshal_BOOLEAN__INT</a></div><div class="ttdeci">void remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__marshals_8c_source.html#l00087">remmina_marshals.c:87</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a28b9006fa53e21e48df9237d68a847f3"><div class="ttname"><a href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a></div><div class="ttdeci">void remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01052">remmina_ftp_client.c:1052</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a6985d2da0ed09c6b69c6360091d5b6c9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">_RemminaFTPTask::status</a></div><div class="ttdeci">gint status</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00120">remmina_ftp_client.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a0e2d8b5a795eff39aaa5678ee371cea8"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">_RemminaFTPTask::rowref</a></div><div class="ttdeci">GtkTreeRowReference * rowref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00117">remmina_ftp_client.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aff3ca859a6687076313869aeb569dd87"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">_RemminaFTPTask::remotedir</a></div><div class="ttdeci">gchar * remotedir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00115">remmina_ftp_client.h:115</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__ftp__client_8c_html_a1d9c5e03f84f108f4023fa7ecf1ec73a"><div class="ttname"><a href="remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a">remmina_ftp_client_filter_visible_func</a></div><div class="ttdeci">static gboolean remmina_ftp_client_filter_visible_func(GtkTreeModel *model, GtkTreeIter *iter, RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00809">remmina_ftp_client.c:809</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ftp__client_8c.html">remmina_ftp_client.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ftp__client_8h.html b/docs/remmina__ftp__client_8h.html
new file mode 100644
index 000000000..ba8d14e3f
--- /dev/null
+++ b/docs/remmina__ftp__client_8h.html
@@ -0,0 +1,742 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ftp_client.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ftp__client_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ftp_client.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ftp__client_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab0911922a4cacc72610b6c2c8874f41a"><td class="memItemLeft" align="right" valign="top">typedef struct _RemminaFTPClientPriv&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a></td></tr>
+<tr class="separator:ab0911922a4cacc72610b6c2c8874f41a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d6f5f9b47a1b842c4e8d246bafe7ab4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a></td></tr>
+<tr class="separator:a8d6f5f9b47a1b842c4e8d246bafe7ab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a083febe7a0060bd3aab6de3df3528069"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a></td></tr>
+<tr class="separator:a083febe7a0060bd3aab6de3df3528069"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a485c2042b93851c9e951829e1667a33b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a></td></tr>
+<tr class="separator:a485c2042b93851c9e951829e1667a33b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:adc29c2ff13d900c2f185ee95427fb06c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>,
+<a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8">REMMINA_FTP_FILE_N_TYPES</a>
+ }</td></tr>
+<tr class="separator:adc29c2ff13d900c2f185ee95427fb06c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61dadd085c1777f559549e05962b2c9e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">REMMINA_FTP_FILE_N_COLUMNS</a>
+<br />
+ }</td></tr>
+<tr class="separator:a61dadd085c1777f559549e05962b2c9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a726ca809ffd3d67ab4b8476646f26635"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19">REMMINA_FTP_TASK_N_TYPES</a>
+ }</td></tr>
+<tr class="separator:a726ca809ffd3d67ab4b8476646f26635"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0411cd49bb5b71852cecd93bcbf0ca2d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>,
+<a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a">REMMINA_FTP_TASK_N_STATUSES</a>
+<br />
+ }</td></tr>
+<tr class="separator:a0411cd49bb5b71852cecd93bcbf0ca2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abed82baf7f470b522273a3e37c24c600"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>,
+<a class="el" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">REMMINA_FTP_TASK_N_COLUMNS</a>
+<br />
+ }</td></tr>
+<tr class="separator:abed82baf7f470b522273a3e37c24c600"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a42dd1986557438290f9763a4f7586920"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920">remmina_ftp_client_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:a42dd1986557438290f9763a4f7586920"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2ad2f78b3dfcd6c9a68834346d0f6d"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a> (void)</td></tr>
+<tr class="separator:abb2ad2f78b3dfcd6c9a68834346d0f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28b9006fa53e21e48df9237d68a847f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a28b9006fa53e21e48df9237d68a847f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aaef09531b1694c183a5ba530fcc2fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a2aaef09531b1694c183a5ba530fcc2fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb002077547492e9d56c68281a1607d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gboolean show_hidden)</td></tr>
+<tr class="separator:adb002077547492e9d56c68281a1607d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af749de0df07992d5b1f30cc32c3556cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:af749de0df07992d5b1f30cc32c3556cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e39a69f60d38b46bc603df0ae368aed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client,...)</td></tr>
+<tr class="separator:a2e39a69f60d38b46bc603df0ae368aed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ef77e687209d258ec576c31614ea60f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, const gchar *dir)</td></tr>
+<tr class="separator:a1ef77e687209d258ec576c31614ea60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a709bf3bb81fba206dac478d08d42aadc"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a709bf3bb81fba206dac478d08d42aadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33e4993b60c36eae89a6a0a943d28141"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a33e4993b60c36eae89a6a0a943d28141"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad96358f40ab056c91f796ddda886a1dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:ad96358f40ab056c91f796ddda886a1dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a659de1105971e3fda3d44d089277d6a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a> (<a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:a659de1105971e3fda3d44d089277d6a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5614fa3b465b83d0a5fa2245a97f45f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client, gboolean status)</td></tr>
+<tr class="separator:ae5614fa3b465b83d0a5fa2245a97f45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20d0575c04eb24553aeba7d0316e7a2e"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a> (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a20d0575c04eb24553aeba7d0316e7a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a8d6f5f9b47a1b842c4e8d246bafe7ab4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d6f5f9b47a1b842c4e8d246bafe7ab4">&#9670;&nbsp;</a></span>RemminaFTPClient</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a> <a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a083febe7a0060bd3aab6de3df3528069"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a083febe7a0060bd3aab6de3df3528069">&#9670;&nbsp;</a></span>RemminaFTPClientClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a> <a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab0911922a4cacc72610b6c2c8874f41a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0911922a4cacc72610b6c2c8874f41a">&#9670;&nbsp;</a></span>RemminaFTPClientPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct _RemminaFTPClientPriv <a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a485c2042b93851c9e951829e1667a33b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a485c2042b93851c9e951829e1667a33b">&#9670;&nbsp;</a></span>RemminaFTPTask</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a> <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="adc29c2ff13d900c2f185ee95427fb06c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc29c2ff13d900c2f185ee95427fb06c">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0"></a>REMMINA_FTP_FILE_TYPE_DIR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5"></a>REMMINA_FTP_FILE_TYPE_FILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8"></a>REMMINA_FTP_FILE_N_TYPES&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a61dadd085c1777f559549e05962b2c9e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61dadd085c1777f559549e05962b2c9e">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b"></a>REMMINA_FTP_FILE_COLUMN_TYPE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96"></a>REMMINA_FTP_FILE_COLUMN_NAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e"></a>REMMINA_FTP_FILE_COLUMN_SIZE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c"></a>REMMINA_FTP_FILE_COLUMN_USER&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50"></a>REMMINA_FTP_FILE_COLUMN_GROUP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2"></a>REMMINA_FTP_FILE_COLUMN_PERMISSION&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284"></a>REMMINA_FTP_FILE_COLUMN_NAME_SORT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98"></a>REMMINA_FTP_FILE_N_COLUMNS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00072">72</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a726ca809ffd3d67ab4b8476646f26635"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a726ca809ffd3d67ab4b8476646f26635">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d"></a>REMMINA_FTP_TASK_TYPE_DOWNLOAD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24"></a>REMMINA_FTP_TASK_TYPE_UPLOAD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19"></a>REMMINA_FTP_TASK_N_TYPES&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00083">83</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a0411cd49bb5b71852cecd93bcbf0ca2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0411cd49bb5b71852cecd93bcbf0ca2d">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad"></a>REMMINA_FTP_TASK_STATUS_WAIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7"></a>REMMINA_FTP_TASK_STATUS_RUN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca"></a>REMMINA_FTP_TASK_STATUS_FINISH&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c"></a>REMMINA_FTP_TASK_STATUS_ERROR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a"></a>REMMINA_FTP_TASK_N_STATUSES&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00087">87</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="abed82baf7f470b522273a3e37c24c600"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abed82baf7f470b522273a3e37c24c600">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356"></a>REMMINA_FTP_TASK_COLUMN_TYPE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba"></a>REMMINA_FTP_TASK_COLUMN_NAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342"></a>REMMINA_FTP_TASK_COLUMN_SIZE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae"></a>REMMINA_FTP_TASK_COLUMN_TASKID&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2"></a>REMMINA_FTP_TASK_COLUMN_TASKTYPE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625"></a>REMMINA_FTP_TASK_COLUMN_REMOTEDIR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe"></a>REMMINA_FTP_TASK_COLUMN_LOCALDIR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf"></a>REMMINA_FTP_TASK_COLUMN_STATUS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e"></a>REMMINA_FTP_TASK_COLUMN_DONESIZE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed"></a>REMMINA_FTP_TASK_COLUMN_TOOLTIP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24"></a>REMMINA_FTP_TASK_N_COLUMNS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00095">95</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2e39a69f60d38b46bc603df0ae368aed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e39a69f60d38b46bc603df0ae368aed">&#9670;&nbsp;</a></span>remmina_ftp_client_add_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_add_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01086">1086</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="af749de0df07992d5b1f30cc32c3556cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af749de0df07992d5b1f30cc32c3556cc">&#9670;&nbsp;</a></span>remmina_ftp_client_clear_file_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_clear_file_list </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01077">1077</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a709bf3bb81fba206dac478d08d42aadc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a709bf3bb81fba206dac478d08d42aadc">&#9670;&nbsp;</a></span>remmina_ftp_client_get_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ftp_client_get_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01144">1144</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a20d0575c04eb24553aeba7d0316e7a2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20d0575c04eb24553aeba7d0316e7a2e">&#9670;&nbsp;</a></span>remmina_ftp_client_get_overwrite_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ftp_client_get_overwrite_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00834">834</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a42dd1986557438290f9763a4f7586920"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42dd1986557438290f9763a4f7586920">&#9670;&nbsp;</a></span>remmina_ftp_client_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_ftp_client_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a33e4993b60c36eae89a6a0a943d28141"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e4993b60c36eae89a6a0a943d28141">&#9670;&nbsp;</a></span>remmina_ftp_client_get_waiting_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>* remmina_ftp_client_get_waiting_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01153">1153</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a2aaef09531b1694c183a5ba530fcc2fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2aaef09531b1694c183a5ba530fcc2fa">&#9670;&nbsp;</a></span>remmina_ftp_client_load_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_load_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01061">1061</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="abb2ad2f78b3dfcd6c9a68834346d0f6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb2ad2f78b3dfcd6c9a68834346d0f6d">&#9670;&nbsp;</a></span>remmina_ftp_client_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_ftp_client_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01042">1042</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a28b9006fa53e21e48df9237d68a847f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28b9006fa53e21e48df9237d68a847f3">&#9670;&nbsp;</a></span>remmina_ftp_client_save_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_save_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01052">1052</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a1ef77e687209d258ec576c31614ea60f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ef77e687209d258ec576c31614ea60f">&#9670;&nbsp;</a></span>remmina_ftp_client_set_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01113">1113</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5614fa3b465b83d0a5fa2245a97f45f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5614fa3b465b83d0a5fa2245a97f45f">&#9670;&nbsp;</a></span>remmina_ftp_client_set_overwrite_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_overwrite_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00827">827</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="adb002077547492e9d56c68281a1607d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb002077547492e9d56c68281a1607d6">&#9670;&nbsp;</a></span>remmina_ftp_client_set_show_hidden()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_set_show_hidden </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>show_hidden</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00802">802</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ad96358f40ab056c91f796ddda886a1dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad96358f40ab056c91f796ddda886a1dd">&#9670;&nbsp;</a></span>remmina_ftp_client_update_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_client_update_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01197">1197</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a659de1105971e3fda3d44d089277d6a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a659de1105971e3fda3d44d089277d6a7">&#9670;&nbsp;</a></span>remmina_ftp_task_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ftp_task_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l01228">1228</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ftp__client_8h.js b/docs/remmina__ftp__client_8h.js
new file mode 100644
index 000000000..66eb7e1b3
--- /dev/null
+++ b/docs/remmina__ftp__client_8h.js
@@ -0,0 +1,54 @@
+var remmina__ftp__client_8h =
+[
+ [ "_RemminaFTPClient", "struct___remmina_f_t_p_client.html", "struct___remmina_f_t_p_client" ],
+ [ "_RemminaFTPClientClass", "struct___remmina_f_t_p_client_class.html", "struct___remmina_f_t_p_client_class" ],
+ [ "_RemminaFTPTask", "struct___remmina_f_t_p_task.html", "struct___remmina_f_t_p_task" ],
+ [ "RemminaFTPClient", "remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4", null ],
+ [ "RemminaFTPClientClass", "remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069", null ],
+ [ "RemminaFTPClientPriv", "remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a", null ],
+ [ "RemminaFTPTask", "remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b", null ],
+ [ "REMMINA_FTP_FILE_TYPE_DIR", "remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0", null ],
+ [ "REMMINA_FTP_FILE_TYPE_FILE", "remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5", null ],
+ [ "REMMINA_FTP_FILE_N_TYPES", "remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_TYPE", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_NAME", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_SIZE", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_USER", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_GROUP", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_PERMISSION", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2", null ],
+ [ "REMMINA_FTP_FILE_COLUMN_NAME_SORT", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284", null ],
+ [ "REMMINA_FTP_FILE_N_COLUMNS", "remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98", null ],
+ [ "REMMINA_FTP_TASK_TYPE_DOWNLOAD", "remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d", null ],
+ [ "REMMINA_FTP_TASK_TYPE_UPLOAD", "remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24", null ],
+ [ "REMMINA_FTP_TASK_N_TYPES", "remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19", null ],
+ [ "REMMINA_FTP_TASK_STATUS_WAIT", "remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad", null ],
+ [ "REMMINA_FTP_TASK_STATUS_RUN", "remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7", null ],
+ [ "REMMINA_FTP_TASK_STATUS_FINISH", "remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca", null ],
+ [ "REMMINA_FTP_TASK_STATUS_ERROR", "remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c", null ],
+ [ "REMMINA_FTP_TASK_N_STATUSES", "remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_TYPE", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_NAME", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_SIZE", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_TASKID", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_TASKTYPE", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_REMOTEDIR", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_LOCALDIR", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_STATUS", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_DONESIZE", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e", null ],
+ [ "REMMINA_FTP_TASK_COLUMN_TOOLTIP", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed", null ],
+ [ "REMMINA_FTP_TASK_N_COLUMNS", "remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24", null ],
+ [ "remmina_ftp_client_add_file", "remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed", null ],
+ [ "remmina_ftp_client_clear_file_list", "remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc", null ],
+ [ "remmina_ftp_client_get_dir", "remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc", null ],
+ [ "remmina_ftp_client_get_overwrite_status", "remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e", null ],
+ [ "remmina_ftp_client_get_type", "remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920", null ],
+ [ "remmina_ftp_client_get_waiting_task", "remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141", null ],
+ [ "remmina_ftp_client_load_state", "remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa", null ],
+ [ "remmina_ftp_client_new", "remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d", null ],
+ [ "remmina_ftp_client_save_state", "remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3", null ],
+ [ "remmina_ftp_client_set_dir", "remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f", null ],
+ [ "remmina_ftp_client_set_overwrite_status", "remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f", null ],
+ [ "remmina_ftp_client_set_show_hidden", "remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6", null ],
+ [ "remmina_ftp_client_update_task", "remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd", null ],
+ [ "remmina_ftp_task_free", "remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ftp__client_8h_source.html b/docs/remmina__ftp__client_8h_source.html
new file mode 100644
index 000000000..a84408559
--- /dev/null
+++ b/docs/remmina__ftp__client_8h_source.html
@@ -0,0 +1,167 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ftp_client.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ftp__client_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ftp_client.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ftp__client_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-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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_FTP_CLIENT (remmina_ftp_client_get_type())</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_FTP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_FTP_CLIENT, RemminaFTPClient))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_FTP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_FTP_CLIENT, RemminaFTPClientClass))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_FTP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_FTP_CLIENT))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_IS_FTP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_FTP_CLIENT))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_FTP_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_FTP_CLIENT, RemminaFTPClientClass))</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"><a class="line" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>_RemminaFTPClientPriv <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client.html"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77"> 51</a></span>&#160; GtkVBox <a class="code" href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77">vbox</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54"> 53</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> * <a class="code" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client_class.html"> 56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a> {</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce"> 57</a></span>&#160; GtkVBoxClass <a class="code" href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce">parent_class</a>;</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"><a class="line" href="struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7"> 59</a></span>&#160; void (*open_dir)(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343"> 60</a></span>&#160; void (*new_task)(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93"> 61</a></span>&#160; void (*cancel_task)(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905"> 62</a></span>&#160; void (*delete_file)(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;} <a class="code" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;GType <a class="code" href="remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920">remmina_ftp_client_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5"> 69</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>, <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>, <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8">REMMINA_FTP_FILE_N_TYPES</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;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b"> 73</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>,</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96"> 74</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e"> 75</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c"> 76</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a>,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50"> 77</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a>,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2"> 78</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>,</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284"> 79</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a>, <span class="comment">/* Auto populate */</span></div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98"> 80</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">REMMINA_FTP_FILE_N_COLUMNS</a></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;};</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24"> 84</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a>, <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a>, <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19">REMMINA_FTP_TASK_N_TYPES</a></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;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad"> 88</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a>,</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7"> 89</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a>,</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca"> 90</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>,</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c"> 91</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a>,</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a"> 92</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a">REMMINA_FTP_TASK_N_STATUSES</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"> 94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356"> 96</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a>,</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba"> 97</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a>,</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342"> 98</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a>,</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae"> 99</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a>,</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2"> 100</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a>,</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625"> 101</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a>,</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe"> 102</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a>,</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf"> 103</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a>,</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e"> 104</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a>,</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed"> 105</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a>,</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24"> 106</a></span>&#160; <a class="code" href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">REMMINA_FTP_TASK_N_COLUMNS</a></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;};</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"><a class="line" href="struct___remmina_f_t_p_task.html"> 109</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a> {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* Read-only */</span></div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9"> 111</a></span>&#160; gint <a class="code" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">type</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307"> 112</a></span>&#160; gchar * <a class="code" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">name</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840"> 113</a></span>&#160; gint <a class="code" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">taskid</a>;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce"> 114</a></span>&#160; gint <a class="code" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">tasktype</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87"> 115</a></span>&#160; gchar * <a class="code" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">remotedir</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9"> 116</a></span>&#160; gchar * <a class="code" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">localdir</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8"> 117</a></span>&#160; GtkTreeRowReference * <a class="code" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">rowref</a>;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">/* Updatable */</span></div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7"> 119</a></span>&#160; gfloat <a class="code" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">size</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9"> 120</a></span>&#160; gint <a class="code" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0"> 121</a></span>&#160; gfloat <a class="code" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">donesize</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667"> 122</a></span>&#160; gchar * <a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;} <a class="code" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>;</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;GtkWidget *<a class="code" href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a>(<span class="keywordtype">void</span>);</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="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</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;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gboolean show_hidden);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment">/* column, value, …, -1 */</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, ...);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment">/* Set the current directory. Should be called by opendir signal handler */</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <span class="keyword">const</span> gchar *dir);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment">/* Get the current directory as newly allocated string */</span></div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;gchar *<a class="code" href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment">/* Get the next waiting task */</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *<a class="code" href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment">/* Update the task */</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment">/* Free the RemminaFTPTask object */</span></div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(<a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment">/* Get/Set Set overwrite_all status */</span></div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client, gboolean status);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;gboolean <a class="code" href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a>(<a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> *client);</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;G_END_DECLS</div><div class="ttc" id="remmina__ftp__client_8h_html_adb002077547492e9d56c68281a1607d6"><div class="ttname"><a href="remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a></div><div class="ttdeci">void remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00802">remmina_ftp_client.c:802</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00077">remmina_ftp_client.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a0f55ef18c144344076af038501f36840"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">_RemminaFTPTask::taskid</a></div><div class="ttdeci">gint taskid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00113">remmina_ftp_client.h:113</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe">REMMINA_FTP_TASK_COLUMN_LOCALDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00102">remmina_ftp_client.h:102</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00073">remmina_ftp_client.h:73</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_ae5614fa3b465b83d0a5fa2245a97f45f"><div class="ttname"><a href="remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a></div><div class="ttdeci">void remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00827">remmina_ftp_client.c:827</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a2e39a69f60d38b46bc603df0ae368aed"><div class="ttname"><a href="remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a></div><div class="ttdeci">void remmina_ftp_client_add_file(RemminaFTPClient *client,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01086">remmina_ftp_client.c:1086</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00089">remmina_ftp_client.h:89</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00075">remmina_ftp_client.h:75</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_ab0911922a4cacc72610b6c2c8874f41a"><div class="ttname"><a href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a></div><div class="ttdeci">struct _RemminaFTPClientPriv RemminaFTPClientPriv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00048">remmina_ftp_client.h:48</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a">REMMINA_FTP_TASK_N_STATUSES</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00092">remmina_ftp_client.h:92</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a42dd1986557438290f9763a4f7586920"><div class="ttname"><a href="remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920">remmina_ftp_client_get_type</a></div><div class="ttdeci">GType remmina_ftp_client_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html_a3eec2ebafca433ebd11bdd842cbb5f77"><div class="ttname"><a href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77">_RemminaFTPClient::vbox</a></div><div class="ttdeci">GtkVBox vbox</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00051">remmina_ftp_client.h:51</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00050">remmina_ftp_client.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a9af7875a6abd79732abd2346371f8fc9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">_RemminaFTPTask::type</a></div><div class="ttdeci">gint type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00111">remmina_ftp_client.h:111</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_af749de0df07992d5b1f30cc32c3556cc"><div class="ttname"><a href="remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a></div><div class="ttdeci">void remmina_ftp_client_clear_file_list(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01077">remmina_ftp_client.c:1077</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a2aaef09531b1694c183a5ba530fcc2fa"><div class="ttname"><a href="remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a></div><div class="ttdeci">void remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01061">remmina_ftp_client.c:1061</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a485c2042b93851c9e951829e1667a33b"><div class="ttname"><a href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a></div><div class="ttdeci">struct _RemminaFTPTask RemminaFTPTask</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a20d0575c04eb24553aeba7d0316e7a2e"><div class="ttname"><a href="remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a></div><div class="ttdeci">gboolean remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00834">remmina_ftp_client.c:834</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8">REMMINA_FTP_FILE_N_TYPES</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_class_html"><div class="ttname"><a href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00056">remmina_ftp_client.h:56</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a8d6f5f9b47a1b842c4e8d246bafe7ab4"><div class="ttname"><a href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a></div><div class="ttdeci">struct _RemminaFTPClient RemminaFTPClient</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a33e4993b60c36eae89a6a0a943d28141"><div class="ttname"><a href="remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a></div><div class="ttdeci">RemminaFTPTask * remmina_ftp_client_get_waiting_task(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01153">remmina_ftp_client.c:1153</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed">REMMINA_FTP_TASK_COLUMN_TOOLTIP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00105">remmina_ftp_client.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_ac2b00cace6fd885736792664843be667"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">_RemminaFTPTask::tooltip</a></div><div class="ttdeci">gchar * tooltip</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00122">remmina_ftp_client.h:122</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a083febe7a0060bd3aab6de3df3528069"><div class="ttname"><a href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a></div><div class="ttdeci">struct _RemminaFTPClientClass RemminaFTPClientClass</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html_a61c9dbffff97bf4c7a734694d25ccd54"><div class="ttname"><a href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">_RemminaFTPClient::priv</a></div><div class="ttdeci">RemminaFTPClientPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00053">remmina_ftp_client.h:53</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a709bf3bb81fba206dac478d08d42aadc"><div class="ttname"><a href="remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a></div><div class="ttdeci">gchar * remmina_ftp_client_get_dir(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01144">remmina_ftp_client.c:1144</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00091">remmina_ftp_client.h:91</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00078">remmina_ftp_client.h:78</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf">REMMINA_FTP_TASK_COLUMN_STATUS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00103">remmina_ftp_client.h:103</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00076">remmina_ftp_client.h:76</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abb2ad2f78b3dfcd6c9a68834346d0f6d"><div class="ttname"><a href="remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d">remmina_ftp_client_new</a></div><div class="ttdeci">GtkWidget * remmina_ftp_client_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01042">remmina_ftp_client.c:1042</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba">REMMINA_FTP_TASK_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00097">remmina_ftp_client.h:97</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356">REMMINA_FTP_TASK_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00096">remmina_ftp_client.h:96</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae">REMMINA_FTP_TASK_COLUMN_TASKID</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00099">remmina_ftp_client.h:99</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00074">remmina_ftp_client.h:74</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e">REMMINA_FTP_TASK_COLUMN_DONESIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00104">remmina_ftp_client.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_class_html_aa4cb68b2d9fe79007367c5f5365129ce"><div class="ttname"><a href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce">_RemminaFTPClientClass::parent_class</a></div><div class="ttdeci">GtkVBoxClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00057">remmina_ftp_client.h:57</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19">REMMINA_FTP_TASK_N_TYPES</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a179a26ffe6977ede5aa084619e29eba9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">_RemminaFTPTask::localdir</a></div><div class="ttdeci">gchar * localdir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00116">remmina_ftp_client.h:116</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a1ef77e687209d258ec576c31614ea60f"><div class="ttname"><a href="remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a></div><div class="ttdeci">void remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01113">remmina_ftp_client.c:1113</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html"><div class="ttname"><a href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00109">remmina_ftp_client.h:109</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a659de1105971e3fda3d44d089277d6a7"><div class="ttname"><a href="remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a></div><div class="ttdeci">void remmina_ftp_task_free(RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01228">remmina_ftp_client.c:1228</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a210a60fe2706ad22adce6ea8f16e4bce"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">_RemminaFTPTask::tasktype</a></div><div class="ttdeci">gint tasktype</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00114">remmina_ftp_client.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a8facf6f7974c51e238abd7096c729307"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">_RemminaFTPTask::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00112">remmina_ftp_client.h:112</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625">REMMINA_FTP_TASK_COLUMN_REMOTEDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00101">remmina_ftp_client.h:101</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98">REMMINA_FTP_FILE_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00080">remmina_ftp_client.h:80</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aec622571acc15e022f458efffcc275b0"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">_RemminaFTPTask::donesize</a></div><div class="ttdeci">gfloat donesize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00121">remmina_ftp_client.h:121</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a48fdf499ca63ec9f1f7e9af86f19a3f7"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">_RemminaFTPTask::size</a></div><div class="ttdeci">gfloat size</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00119">remmina_ftp_client.h:119</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2">REMMINA_FTP_TASK_COLUMN_TASKTYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00100">remmina_ftp_client.h:100</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342">REMMINA_FTP_TASK_COLUMN_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00098">remmina_ftp_client.h:98</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284">REMMINA_FTP_FILE_COLUMN_NAME_SORT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00079">remmina_ftp_client.h:79</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad">REMMINA_FTP_TASK_STATUS_WAIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00088">remmina_ftp_client.h:88</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24"><div class="ttname"><a href="remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24">REMMINA_FTP_TASK_N_COLUMNS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00106">remmina_ftp_client.h:106</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a28b9006fa53e21e48df9237d68a847f3"><div class="ttname"><a href="remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a></div><div class="ttdeci">void remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01052">remmina_ftp_client.c:1052</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00090">remmina_ftp_client.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a6985d2da0ed09c6b69c6360091d5b6c9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">_RemminaFTPTask::status</a></div><div class="ttdeci">gint status</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00120">remmina_ftp_client.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a0e2d8b5a795eff39aaa5678ee371cea8"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">_RemminaFTPTask::rowref</a></div><div class="ttdeci">GtkTreeRowReference * rowref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00117">remmina_ftp_client.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aff3ca859a6687076313869aeb569dd87"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">_RemminaFTPTask::remotedir</a></div><div class="ttdeci">gchar * remotedir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00115">remmina_ftp_client.h:115</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_ad96358f40ab056c91f796ddda886a1dd"><div class="ttname"><a href="remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a></div><div class="ttdeci">void remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01197">remmina_ftp_client.c:1197</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__icon_8c.html b/docs/remmina__icon_8c.html
new file mode 100644
index 000000000..2b37ec1f5
--- /dev/null
+++ b/docs/remmina__icon_8c.html
@@ -0,0 +1,779 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_icon.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__icon_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_icon.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__icon_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html">_RemminaIcon</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7d506eafc267175d941402f28744d2d5"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_icon.html">_RemminaIcon</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</a></td></tr>
+<tr class="separator:a7d506eafc267175d941402f28744d2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a25b1d13f76ddf6a51836d780eda5fab1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a> (void)</td></tr>
+<tr class="separator:a25b1d13f76ddf6a51836d780eda5fab1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a920476110ab6410c8fc8cf734109e497"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon_main</a> (void)</td></tr>
+<tr class="separator:a920476110ab6410c8fc8cf734109e497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3b0e3d12e4854eae05b1afea19da404"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon_preferences</a> (void)</td></tr>
+<tr class="separator:ad3b0e3d12e4854eae05b1afea19da404"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cdf1958ef01e49889bcee2e90e2cf71"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon_about</a> (void)</td></tr>
+<tr class="separator:a5cdf1958ef01e49889bcee2e90e2cf71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac424cc450aa98c2a0fe2494cddff48a6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon_enable_avahi</a> (GtkCheckMenuItem *checkmenuitem, gpointer data)</td></tr>
+<tr class="separator:ac424cc450aa98c2a0fe2494cddff48a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8aaf73ed94cf20dcce1c7be26262cb56"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon_populate_additional_menu_item</a> (GtkWidget *menu)</td></tr>
+<tr class="separator:a8aaf73ed94cf20dcce1c7be26262cb56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1699688680e12abcfd5c74dd2f76d83"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon_on_launch_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem, gpointer data)</td></tr>
+<tr class="separator:ad1699688680e12abcfd5c74dd2f76d83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8708120906a8dc41a7998ebf9ecd129"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon_on_edit_item</a> (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu, <a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *menuitem, gpointer data)</td></tr>
+<tr class="separator:af8708120906a8dc41a7998ebf9ecd129"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2847311861df3a2f1c8bbcd35cf3fd6f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon_populate_extra_menu_item</a> (GtkWidget *menu)</td></tr>
+<tr class="separator:a2847311861df3a2f1c8bbcd35cf3fd6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af80ed314f91d653237249d839c7fc3b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a> (void)</td></tr>
+<tr class="separator:af80ed314f91d653237249d839c7fc3b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a444be76e3c3a065279c5f9abc7fae833"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon_popdown_menu</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a444be76e3c3a065279c5f9abc7fae833"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af175fef31eb95974094088235b3a2b1d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon_on_activate</a> (GtkStatusIcon *icon, gpointer user_data)</td></tr>
+<tr class="separator:af175fef31eb95974094088235b3a2b1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95b917790eeb38e48137018796bdda93"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon_on_popup_menu</a> (GtkStatusIcon *icon, guint button, guint activate_time, gpointer user_data)</td></tr>
+<tr class="separator:a95b917790eeb38e48137018796bdda93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15b625603bb0eb191fca9e77d2821735"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon_save_autostart_file</a> (GKeyFile *gkeyfile)</td></tr>
+<tr class="separator:a15b625603bb0eb191fca9e77d2821735"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a3b4f281c19f24645a895d3caab3ea0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon_create_autostart_file</a> (void)</td></tr>
+<tr class="separator:a5a3b4f281c19f24645a895d3caab3ea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a> (void)</td></tr>
+<tr class="memdesc:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whenever the Remmina icon is available. <a href="#a42f087b679b43b8a1d36cd9e9781a8b6">More...</a><br /></td></tr>
+<tr class="separator:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbd7758d1d43c61a014b7ef00f11fa58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a> (void)</td></tr>
+<tr class="separator:afbd7758d1d43c61a014b7ef00f11fa58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae477ccd85ab1d878d243aed7fa5e48ae"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a> (void)</td></tr>
+<tr class="separator:ae477ccd85ab1d878d243aed7fa5e48ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b1bc5b1130b31ea9c9cb7164fb82f1d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a> (gboolean autostart)</td></tr>
+<tr class="separator:a5b1bc5b1130b31ea9c9cb7164fb82f1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a912ed1addd1481ff94b775aad48731f0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0">remmina_icon</a></td></tr>
+<tr class="separator:a912ed1addd1481ff94b775aad48731f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a7d506eafc267175d941402f28744d2d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d506eafc267175d941402f28744d2d5">&#9670;&nbsp;</a></span>RemminaIcon</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_icon.html">_RemminaIcon</a> <a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a5cdf1958ef01e49889bcee2e90e2cf71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cdf1958ef01e49889bcee2e90e2cf71">&#9670;&nbsp;</a></span>remmina_icon_about()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_about </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a5a3b4f281c19f24645a895d3caab3ea0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a3b4f281c19f24645a895d3caab3ea0">&#9670;&nbsp;</a></span>remmina_icon_create_autostart_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_create_autostart_file </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00347">347</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a25b1d13f76ddf6a51836d780eda5fab1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25b1d13f76ddf6a51836d780eda5fab1">&#9670;&nbsp;</a></span>remmina_icon_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="ac424cc450aa98c2a0fe2494cddff48a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac424cc450aa98c2a0fe2494cddff48a6">&#9670;&nbsp;</a></span>remmina_icon_enable_avahi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_enable_avahi </td>
+ <td>(</td>
+ <td class="paramtype">GtkCheckMenuItem *&#160;</td>
+ <td class="paramname"><em>checkmenuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00117">117</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="afbd7758d1d43c61a014b7ef00f11fa58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afbd7758d1d43c61a014b7ef00f11fa58">&#9670;&nbsp;</a></span>remmina_icon_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="ae477ccd85ab1d878d243aed7fa5e48ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae477ccd85ab1d878d243aed7fa5e48ae">&#9670;&nbsp;</a></span>remmina_icon_is_autostart()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_icon_is_autostart </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00514">514</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a42f087b679b43b8a1d36cd9e9781a8b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42f087b679b43b8a1d36cd9e9781a8b6">&#9670;&nbsp;</a></span>remmina_icon_is_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_icon_is_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Determine whenever the Remmina icon is available. </p>
+<p>Return TRUE if a remmina_icon (status indicator/systray menu) is available and shown to the user, so the user can continue its work without the remmina main window. </p><dl class="section return"><dt>Returns</dt><dd>TRUE if the Remmina icon is available. </dd></dl>
+<p>Gnome Shell with compiled in LIBAPPINDICATOR: ensure have also a working appindicator extension available.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00376">376</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a920476110ab6410c8fc8cf734109e497"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a920476110ab6410c8fc8cf734109e497">&#9670;&nbsp;</a></span>remmina_icon_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_main </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00099">99</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="af175fef31eb95974094088235b3a2b1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af175fef31eb95974094088235b3a2b1d">&#9670;&nbsp;</a></span>remmina_icon_on_activate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_on_activate </td>
+ <td>(</td>
+ <td class="paramtype">GtkStatusIcon *&#160;</td>
+ <td class="paramname"><em>icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00301">301</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="af8708120906a8dc41a7998ebf9ecd129"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8708120906a8dc41a7998ebf9ecd129">&#9670;&nbsp;</a></span>remmina_icon_on_edit_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_on_edit_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00198">198</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="ad1699688680e12abcfd5c74dd2f76d83"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1699688680e12abcfd5c74dd2f76d83">&#9670;&nbsp;</a></span>remmina_icon_on_launch_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_on_launch_item </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3">RemminaAppletMenuItem</a> *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00178">178</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a95b917790eeb38e48137018796bdda93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95b917790eeb38e48137018796bdda93">&#9670;&nbsp;</a></span>remmina_icon_on_popup_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_on_popup_menu </td>
+ <td>(</td>
+ <td class="paramtype">GtkStatusIcon *&#160;</td>
+ <td class="paramname"><em>icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>activate_time</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00322">322</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a444be76e3c3a065279c5f9abc7fae833"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a444be76e3c3a065279c5f9abc7fae833">&#9670;&nbsp;</a></span>remmina_icon_popdown_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_popdown_menu </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00293">293</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a8aaf73ed94cf20dcce1c7be26262cb56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8aaf73ed94cf20dcce1c7be26262cb56">&#9670;&nbsp;</a></span>remmina_icon_populate_additional_menu_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_populate_additional_menu_item </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00134">134</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a2847311861df3a2f1c8bbcd35cf3fd6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2847311861df3a2f1c8bbcd35cf3fd6f">&#9670;&nbsp;</a></span>remmina_icon_populate_extra_menu_item()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_populate_extra_menu_item </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00218">218</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="af80ed314f91d653237249d839c7fc3b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af80ed314f91d653237249d839c7fc3b2">&#9670;&nbsp;</a></span>remmina_icon_populate_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_populate_menu </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00264">264</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="ad3b0e3d12e4854eae05b1afea19da404"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3b0e3d12e4854eae05b1afea19da404">&#9670;&nbsp;</a></span>remmina_icon_preferences()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_preferences </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00105">105</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a15b625603bb0eb191fca9e77d2821735"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15b625603bb0eb191fca9e77d2821735">&#9670;&nbsp;</a></span>remmina_icon_save_autostart_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_icon_save_autostart_file </td>
+ <td>(</td>
+ <td class="paramtype">GKeyFile *&#160;</td>
+ <td class="paramname"><em>gkeyfile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00336">336</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a5b1bc5b1130b31ea9c9cb7164fb82f1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b1bc5b1130b31ea9c9cb7164fb82f1d">&#9670;&nbsp;</a></span>remmina_icon_set_autostart()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_set_autostart </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>autostart</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00527">527</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a912ed1addd1481ff94b775aad48731f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a912ed1addd1481ff94b775aad48731f0">&#9670;&nbsp;</a></span>remmina_icon</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</a> remmina_icon</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00071">71</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__icon_8c.html">remmina_icon.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__icon_8c.js b/docs/remmina__icon_8c.js
new file mode 100644
index 000000000..8e51686eb
--- /dev/null
+++ b/docs/remmina__icon_8c.js
@@ -0,0 +1,25 @@
+var remmina__icon_8c =
+[
+ [ "_RemminaIcon", "struct___remmina_icon.html", "struct___remmina_icon" ],
+ [ "RemminaIcon", "remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5", null ],
+ [ "remmina_icon_about", "remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71", null ],
+ [ "remmina_icon_create_autostart_file", "remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0", null ],
+ [ "remmina_icon_destroy", "remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1", null ],
+ [ "remmina_icon_enable_avahi", "remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6", null ],
+ [ "remmina_icon_init", "remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58", null ],
+ [ "remmina_icon_is_autostart", "remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae", null ],
+ [ "remmina_icon_is_available", "remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6", null ],
+ [ "remmina_icon_main", "remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497", null ],
+ [ "remmina_icon_on_activate", "remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d", null ],
+ [ "remmina_icon_on_edit_item", "remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129", null ],
+ [ "remmina_icon_on_launch_item", "remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83", null ],
+ [ "remmina_icon_on_popup_menu", "remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93", null ],
+ [ "remmina_icon_popdown_menu", "remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833", null ],
+ [ "remmina_icon_populate_additional_menu_item", "remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56", null ],
+ [ "remmina_icon_populate_extra_menu_item", "remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f", null ],
+ [ "remmina_icon_populate_menu", "remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2", null ],
+ [ "remmina_icon_preferences", "remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404", null ],
+ [ "remmina_icon_save_autostart_file", "remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735", null ],
+ [ "remmina_icon_set_autostart", "remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d", null ],
+ [ "remmina_icon", "remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__icon_8c_source.html b/docs/remmina__icon_8c_source.html
new file mode 100644
index 000000000..a641c887e
--- /dev/null
+++ b/docs/remmina__icon_8c_source.html
@@ -0,0 +1,178 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_icon.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__icon_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_icon.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__icon_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-2020 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 &lt;gtk/gtk.h&gt;</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 &quot;<a class="code" href="remmina__widget__pool_8h.html">remmina_widget_pool.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__pref_8h.html">remmina_pref.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__exec_8h.html">remmina_exec.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__avahi_8h.html">remmina_avahi.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__applet__menu__item_8h.html">remmina_applet_menu_item.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__applet__menu_8h.html">remmina_applet_menu.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="rcw_8h.html">rcw.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__icon_8h.html">remmina_icon.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__trace__calls_8h.html">remmina/remmina_trace_calls.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__sysinfo_8h.html">remmina_sysinfo.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> #ifdef HAVE_AYATANA_LIBAPPINDICATOR</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> #include &lt;libayatana-appindicator/app-indicator.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"> #else</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"> #include &lt;libappindicator/app-indicator.h&gt;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> #endif</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif</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"><a class="line" href="struct___remmina_icon.html"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_icon.html">_RemminaIcon</a> {</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626"> 61</a></span>&#160; AppIndicator *<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19"> 63</a></span>&#160; GtkStatusIcon *<a class="code" href="struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19">icon</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2"> 65</a></span>&#160; <a class="code" href="struct___remmina_avahi.html">RemminaAvahi</a> *<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333"> 66</a></span>&#160; guint32 <a class="code" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">popup_time</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca"> 67</a></span>&#160; gchar *<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c"> 68</a></span>&#160; gchar *<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a>; <span class="comment">// GnomeShell version string, or null if not available</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;} <a class="code" href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</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"><a class="line" href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0"> 71</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_icon.html">RemminaIcon</a> <a class="code" href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0">remmina_icon</a> =</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;{ 0 };</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1"> 74</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>) {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; app_indicator_set_status(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, APP_INDICATOR_STATUS_PASSIVE);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; gtk_status_icon_set_visible(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, FALSE);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a> = NULL;</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; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>) {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a>(remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a> = NULL;</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"> 89</span>&#160; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>) {</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_free(remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a> = NULL;</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="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a>) {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; g_free(remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a>);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a> = NULL;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;}</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"><a class="line" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497"> 99</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon_main</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a>, NULL);</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;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404"> 105</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon_preferences</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a>, <span class="stringliteral">&quot;2&quot;</span>);</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__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71"> 111</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon_about</a>(<span class="keywordtype">void</span>)</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="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a>, NULL);</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;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6"> 117</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon_enable_avahi</a>(GtkCheckMenuItem *checkmenuitem, gpointer data)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;{</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>)</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span>;</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"> 123</span>&#160; <span class="keywordflow">if</span> (gtk_check_menu_item_get_active(checkmenuitem)) {</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a> = TRUE;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a>)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a>(remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a> = FALSE;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>);</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; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</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;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56"> 134</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon_populate_additional_menu_item</a>(GtkWidget *menu)</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;{</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GtkWidget *menuitem;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; menuitem = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Open Main Window&quot;</span>));</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon_main</a>), NULL);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; menuitem = gtk_menu_item_new_with_mnemonic(_(<span class="stringliteral">&quot;_Preferences&quot;</span>));</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon_preferences</a>), NULL);</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; menuitem = gtk_menu_item_new_with_mnemonic(_(<span class="stringliteral">&quot;_About&quot;</span>));</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon_about</a>), NULL);</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; menuitem = gtk_separator_menu_item_new();</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAVAHI_CLIENT</span></div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; menuitem = gtk_check_menu_item_new_with_label(_(<span class="stringliteral">&quot;Enable Service Discovery&quot;</span>));</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</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#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a>) {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);</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; gtk_widget_show(menuitem);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon_enable_avahi</a>), NULL);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; menuitem = gtk_separator_menu_item_new();</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; menuitem = gtk_menu_item_new_with_mnemonic(_(<span class="stringliteral">&quot;_Quit&quot;</span>));</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; g_signal_connect(G_OBJECT(menuitem), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a>), NULL);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;}</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"><a class="line" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83"> 178</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon_on_launch_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem, gpointer data)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;{</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gchar *s;</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">switch</span> (menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a>) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>:</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>, NULL);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>:</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>:</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s,%s&quot;</span>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>);</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>, s);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; g_free(s);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</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;</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129"> 198</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon_on_edit_item</a>(<a class="code" href="struct___remmina_applet_menu.html">RemminaAppletMenu</a> *menu, <a class="code" href="struct___remmina_applet_menu_item.html">RemminaAppletMenuItem</a> *menuitem, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; gchar *s;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">switch</span> (menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a>) {</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>:</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>, NULL);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a>:</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a>);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>:</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s,%s&quot;</span>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a>, menuitem-&gt;<a class="code" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a>);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a>, s);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; g_free(s);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;}</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"><a class="line" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f"> 218</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon_populate_extra_menu_item</a>(GtkWidget *menu)</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; GtkWidget *menuitem;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; gboolean new_ontop;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; gchar *tmp;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; new_ontop = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="comment">/* Iterate all discovered services from Avahi */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>) {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; g_hash_table_iter_init(&amp;iter, remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>-&gt;<a class="code" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a>);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, NULL, (gpointer*)&amp;tmp)) {</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; menuitem = <a class="code" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a>(<a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a>, tmp);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a>(REMMINA_APPLET_MENU(menu), REMMINA_APPLET_MENU_ITEM(menuitem));</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; }</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;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="comment">/* Separator */</span></div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; menuitem = gtk_separator_menu_item_new();</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span> (new_ontop) {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; }</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="comment">/* New Connection */</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; menuitem = <a class="code" href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a>(<a class="code" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a>);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a>(REMMINA_APPLET_MENU(menu), REMMINA_APPLET_MENU_ITEM(menuitem));</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">if</span> (new_ontop) {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; gtk_menu_shell_prepend(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; }</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;launch-item&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon_on_launch_item</a>), NULL);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;edit-item&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon_on_edit_item</a>), NULL);</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"> 261</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</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;<span class="keywordtype">void</span></div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2"> 264</a></span>&#160;<a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; GtkWidget *menuitem;</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="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a> &amp;&amp; !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>) {</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; menu = <a class="code" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a>();</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; app_indicator_set_menu(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, GTK_MENU(menu));</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; <a class="code" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a>(REMMINA_APPLET_MENU(menu), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a>);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a>(REMMINA_APPLET_MENU(menu));</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon_populate_extra_menu_item</a>(menu);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; menuitem = gtk_separator_menu_item_new();</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);</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; <a class="code" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon_populate_additional_menu_item</a>(menu);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;}</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="preprocessor">#else</span></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;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; TRACE_CALL(__func__);</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;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833"> 293</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon_popdown_menu</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;{</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">if</span> (gtk_get_current_event_time() - remmina_icon.<a class="code" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">popup_time</a> &lt;= 500) {</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a>(<a class="code" href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a>, NULL);</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;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d"> 301</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon_on_activate</a>(GtkStatusIcon *<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, gpointer user_data)</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;{</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; gint button, event_time;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">popup_time</a> = gtk_get_current_event_time();</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; menu = <a class="code" href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a>();</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a>(REMMINA_APPLET_MENU(menu), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a>);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a>(REMMINA_APPLET_MENU(menu));</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; <a class="code" href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon_populate_extra_menu_item</a>(menu);</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; button = 0;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; event_time = gtk_get_current_event_time();</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; g_signal_connect(G_OBJECT(menu), <span class="stringliteral">&quot;deactivate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon_popdown_menu</a>), NULL);</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; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, gtk_status_icon_position_menu, remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, button, event_time);</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__icon_8c.html#a95b917790eeb38e48137018796bdda93"> 322</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon_on_popup_menu</a>(GtkStatusIcon *<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, guint button, guint activate_time, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; GtkWidget *menu;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; menu = gtk_menu_new();</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <a class="code" href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon_populate_additional_menu_item</a>(menu);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, gtk_status_icon_position_menu, remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, button, activate_time);</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;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="preprocessor">#endif</span></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"><a class="line" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735"> 336</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon_save_autostart_file</a>(GKeyFile *gkeyfile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; gchar *content;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; gsize length;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; g_file_set_contents(remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>, content, length, NULL);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; g_free(content);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;}</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0"> 347</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon_create_autostart_file</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;{</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; GKeyFile *gkeyfile;</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">if</span> (g_file_test(remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>, G_FILE_TEST_EXISTS))</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">return</span>;</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"> 355</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Version&quot;</span>, <span class="stringliteral">&quot;1.0&quot;</span>);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Name&quot;</span>, _(<span class="stringliteral">&quot;Remmina Applet&quot;</span>));</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Comment&quot;</span>,</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; _(<span class="stringliteral">&quot;Connect to remote desktops through the applet menu&quot;</span>));</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Icon&quot;</span>, REMMINA_APP_ID);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Exec&quot;</span>, <span class="stringliteral">&quot;remmina -i&quot;</span>);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Terminal&quot;</span>, FALSE);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Type&quot;</span>, <span class="stringliteral">&quot;Application&quot;</span>);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Hidden&quot;</span>, TRUE);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon_save_autostart_file</a>(gkeyfile);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; g_key_file_free(gkeyfile);</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"> 368</span>&#160;</div><div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6"> 376</a></span>&#160;gboolean <a class="code" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;{</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; gchar *<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a>;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> gsv_maj, gsv_min, gsv_seq;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; gboolean gshell_has_legacyTray;</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>)</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</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#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>)</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="comment">/* Special treatmen under Gnome Shell */</span></div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">if</span> ((gsversion = <a class="code" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a>()) != NULL) {</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (sscanf(gsversion, <span class="stringliteral">&quot;%u.%u&quot;</span>, &amp;gsv_maj, &amp;gsv_min) == 2)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gsv_seq = gsv_maj &lt;&lt; 16 | gsv_min &lt;&lt; 8;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; gsv_seq = 0x030000;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; g_free(gsversion);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; gshell_has_legacyTray = FALSE;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">if</span> (gsv_seq &gt;= 0x031000 &amp;&amp; gsv_seq &lt;= 0x031800) {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="comment">/* Gnome shell from 3.16 to 3.24, Status Icon (GtkStatusIcon) is visible on the drawer</span></div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="comment"> * at the bottom left of the screen */</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; gshell_has_legacyTray = TRUE;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a>()) {</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="comment">/* No libappindicator extension for gnome shell, no remmina_icon */</span></div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (gshell_has_legacyTray) {</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">return</span> FALSE;</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="comment">/* Gnome Shell without LIBAPPINDICATOR */</span></div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">if</span> (gshell_has_legacyTray) {</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="comment">/* Gnome shell &lt; 3.16, Status Icon (GtkStatusIcon) is hidden</span></div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment"> * on the message tray */</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;}</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6"> 429</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;{</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gchar remmina_panel[23];</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gboolean sni_supported;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordtype">char</span> msg[200];</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</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#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a>)</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; g_stpcpy(remmina_panel, <span class="stringliteral">&quot;remmina-panel-inverted&quot;</span>);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; g_stpcpy(remmina_panel, <span class="stringliteral">&quot;remmina-panel&quot;</span>);</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;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="comment">/* Print on stdout the availability of appindicators on DBUS */</span></div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; sni_supported = <a class="code" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a>();</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"> 446</span>&#160; strcpy(msg, <span class="stringliteral">&quot;StatusNotifier/Appindicator support: &quot;</span>);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (sni_supported) {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; strcat(msg, <span class="stringliteral">&quot;your desktop does support it&quot;</span>);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; strcat(msg, <span class="stringliteral">&quot; and libappindicator is compiled in remmina. Good!&quot;</span>);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; strcat(msg, <span class="stringliteral">&quot;, but you did not compile remmina with cmake’s -DWITH_APPINDICATOR=on&quot;</span>);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; strcat(msg, <span class="stringliteral">&quot;not supported by desktop. libappindicator will try to fallback to GtkStatusIcon/xembed&quot;</span>);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; strcat(msg, <span class="stringliteral">&quot;not supported by desktop. Remmina will try to fallback to GtkStatusIcon/xembed&quot;</span>);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; }</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; strcat(msg, <span class="stringliteral">&quot;\n&quot;</span>);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; fputs(msg, stderr);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a> = <a class="code" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a>();</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a> != NULL) {</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; printf(<span class="stringliteral">&quot;Running under Gnome Shell version %s\n&quot;</span>, remmina_icon.<a class="code" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a>);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</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">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a> &amp;&amp; !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>) {</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a> = app_indicator_new(<span class="stringliteral">&quot;remmina-icon&quot;</span>, remmina_panel, APP_INDICATOR_CATEGORY_APPLICATION_STATUS);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; app_indicator_set_icon_theme_path(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, REMMINA_RUNTIME_DATADIR G_DIR_SEPARATOR_S <span class="stringliteral">&quot;icons&quot;</span>);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; app_indicator_set_status(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, APP_INDICATOR_STATUS_ACTIVE);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; app_indicator_set_title(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, <span class="stringliteral">&quot;Remmina&quot;</span>);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a> = gtk_status_icon_new_from_icon_name(remmina_panel);</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; gtk_status_icon_set_title(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, _(<span class="stringliteral">&quot;Remmina Remote Desktop Client&quot;</span>));</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; gtk_status_icon_set_tooltip_text(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, _(<span class="stringliteral">&quot;Remmina Remote Desktop Client&quot;</span>));</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"> 483</span>&#160; g_signal_connect(G_OBJECT(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>), <span class="stringliteral">&quot;popup-menu&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon_on_popup_menu</a>), NULL);</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; g_signal_connect(G_OBJECT(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>), <span class="stringliteral">&quot;activate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon_on_activate</a>), NULL);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>) {</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; app_indicator_set_status(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a> ?</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; APP_INDICATOR_STATUS_PASSIVE : APP_INDICATOR_STATUS_ACTIVE);</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="comment">/* With libappindicator we can also change the icon on the fly */</span></div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; app_indicator_set_icon(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, remmina_panel);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; gtk_status_icon_set_visible(remmina_icon.<a class="code" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a>, !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; }</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>) {</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a> = <a class="code" href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a>();</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; }</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">if</span> (remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>) {</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</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#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a>) {</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>-&gt;<a class="code" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a>)</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a>(remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a>(remmina_icon.<a class="code" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a>);</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; <span class="keywordflow">if</span> (!remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>) {</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a> = g_strdup_printf(<span class="stringliteral">&quot;%s/.config/autostart/remmina-applet.desktop&quot;</span>, g_get_home_dir());</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <a class="code" href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon_create_autostart_file</a>();</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; }</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;}</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"><a class="line" href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae"> 514</a></span>&#160;gboolean <a class="code" href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;{</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gboolean b;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; g_key_file_load_from_file(gkeyfile, remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; b = !g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Hidden&quot;</span>, NULL);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">return</span> b;</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__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d"> 527</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a>(gboolean autostart)</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; GKeyFile *gkeyfile;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; gboolean b;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; g_key_file_load_from_file(gkeyfile, remmina_icon.<a class="code" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; b = !g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Hidden&quot;</span>, NULL);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">if</span> (b != autostart) {</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Hidden&quot;</span>, !autostart);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="comment">/* Refresh it in case translation is updated */</span></div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Name&quot;</span>, _(<span class="stringliteral">&quot;Remmina Applet&quot;</span>));</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;Desktop Entry&quot;</span>, <span class="stringliteral">&quot;Comment&quot;</span>,</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; _(<span class="stringliteral">&quot;Connect to remote desktops through the applet menu&quot;</span>));</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon_save_autostart_file</a>(gkeyfile);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; }</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;}</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div><div class="ttc" id="struct___remmina_icon_html_aee3da1b92eed8cec42813a737e482b2c"><div class="ttname"><a href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">_RemminaIcon::gsversion</a></div><div class="ttdeci">gchar * gsversion</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00068">remmina_icon.c:68</a></div></div>
+<div class="ttc" id="remmina__avahi_8h_html"><div class="ttname"><a href="remmina__avahi_8h.html">remmina_avahi.h</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a920476110ab6410c8fc8cf734109e497"><div class="ttname"><a href="remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497">remmina_icon_main</a></div><div class="ttdeci">static void remmina_icon_main(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00099">remmina_icon.c:99</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html"><div class="ttname"><a href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00051">remmina_applet_menu_item.h:51</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a43319a5eff255c9b41dc8848cea6185f"><div class="ttname"><a href="remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f">remmina_avahi_new</a></div><div class="ttdeci">RemminaAvahi * remmina_avahi_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00189">remmina_avahi.c:189</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_ad3b0e3d12e4854eae05b1afea19da404"><div class="ttname"><a href="remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404">remmina_icon_preferences</a></div><div class="ttdeci">static void remmina_icon_preferences(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00105">remmina_icon.c:105</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html_a40565240018bc9fb3392dc6e57070333"><div class="ttname"><a href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">_RemminaIcon::popup_time</a></div><div class="ttdeci">guint32 popup_time</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00066">remmina_icon.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html_aebee73e3ede3fd37332d4d0bf6eb1cca"><div class="ttname"><a href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">_RemminaIcon::autostart_file</a></div><div class="ttdeci">gchar * autostart_file</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00067">remmina_icon.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad4d1bd34e31b36bd9306d0a5770a4e8f"><div class="ttname"><a href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref::dark_tray_icon</a></div><div class="ttdeci">gboolean dark_tray_icon</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__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__icon_8c_html_ad1699688680e12abcfd5c74dd2f76d83"><div class="ttname"><a href="remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83">remmina_icon_on_launch_item</a></div><div class="ttdeci">static void remmina_icon_on_launch_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00178">remmina_icon.c:178</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_af80ed314f91d653237249d839c7fc3b2"><div class="ttname"><a href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a></div><div class="ttdeci">void remmina_icon_populate_menu(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00264">remmina_icon.c:264</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#l00376">remmina_icon.c:376</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a0c122a469388d5000ce5af4ec29a561e"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">_RemminaAppletMenuItem::protocol</a></div><div class="ttdeci">gchar * protocol</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00058">remmina_applet_menu_item.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_a770b749c60737542802925cd6f3524fa"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">_RemminaAppletMenuItem::item_type</a></div><div class="ttdeci">RemminaAppletMenuItemType item_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00054">remmina_applet_menu_item.h:54</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65">REMMINA_COMMAND_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00046">remmina_exec.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_afcd157a6f3bddb4b23b4e328cd18358c"><div class="ttname"><a href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref::disable_tray_icon</a></div><div class="ttdeci">gboolean disable_tray_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00140">remmina_pref.h:140</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_adc65e597bc73ddbda587caa929efe872"><div class="ttname"><a href="remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872">remmina_applet_menu_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00227">remmina_applet_menu.c:227</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5">REMMINA_COMMAND_MAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00042">remmina_exec.h:42</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__icon_8c_html_afbd7758d1d43c61a014b7ef00f11fa58"><div class="ttname"><a href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a></div><div class="ttdeci">void remmina_icon_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00429">remmina_icon.c:429</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html_a1f2c31cd1f9af1feefc6b7ba7480f5d2"><div class="ttname"><a href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">_RemminaIcon::avahi</a></div><div class="ttdeci">RemminaAvahi * avahi</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00065">remmina_icon.c:65</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a25b1d13f76ddf6a51836d780eda5fab1"><div class="ttname"><a href="remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a></div><div class="ttdeci">void remmina_icon_destroy(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00074">remmina_icon.c:74</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a95b917790eeb38e48137018796bdda93"><div class="ttname"><a href="remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93">remmina_icon_on_popup_menu</a></div><div class="ttdeci">static void remmina_icon_on_popup_menu(GtkStatusIcon *icon, guint button, guint activate_time, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00322">remmina_icon.c:322</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a8aaf73ed94cf20dcce1c7be26262cb56"><div class="ttname"><a href="remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56">remmina_icon_populate_additional_menu_item</a></div><div class="ttdeci">static void remmina_icon_populate_additional_menu_item(GtkWidget *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00134">remmina_icon.c:134</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_ac424cc450aa98c2a0fe2494cddff48a6"><div class="ttname"><a href="remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6">remmina_icon_enable_avahi</a></div><div class="ttdeci">static void remmina_icon_enable_avahi(GtkCheckMenuItem *checkmenuitem, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00117">remmina_icon.c:117</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_af8708120906a8dc41a7998ebf9ecd129"><div class="ttname"><a href="remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129">remmina_icon_on_edit_item</a></div><div class="ttdeci">static void remmina_icon_on_edit_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00198">remmina_icon.c:198</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a912ed1addd1481ff94b775aad48731f0"><div class="ttname"><a href="remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0">remmina_icon</a></div><div class="ttdeci">static RemminaIcon remmina_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00071">remmina_icon.c:71</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_af2baabd1750dd1a95a0b36e601d99cfe"><div class="ttname"><a href="remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe">remmina_applet_menu_set_hide_count</a></div><div class="ttdeci">void remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00237">remmina_applet_menu.c:237</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_a79fd36823613c320001f0cdd2a97490f"><div class="ttname"><a href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_gnome_shell_version()</div><div class="ttdoc">Query DBUS to get gnome shell version. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00087">remmina_sysinfo.c:87</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a7d506eafc267175d941402f28744d2d5"><div class="ttname"><a href="remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5">RemminaIcon</a></div><div class="ttdeci">struct _RemminaIcon RemminaIcon</div></div>
+<div class="ttc" id="remmina__exec_8c_html_a424cabdcff647797061e7482049d62a7"><div class="ttname"><a href="remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a></div><div class="ttdeci">void remmina_exec_command(RemminaCommandType command, const gchar *data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00214">remmina_exec.c:214</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b">REMMINA_COMMAND_ABOUT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00047">remmina_exec.h:47</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7">REMMINA_COMMAND_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00044">remmina_exec.h:44</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1">REMMINA_APPLET_MENU_ITEM_DISCOVERED</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a74b9962d6ef442e9c0a84293e2eaed30"><div class="ttname"><a href="remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30">remmina_avahi_stop</a></div><div class="ttdeci">void remmina_avahi_stop(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00241">remmina_avahi.c:241</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_aac9b89701606ff0f130f36ec0df55674"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">_RemminaAppletMenuItem::filename</a></div><div class="ttdeci">gchar * filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00055">remmina_applet_menu_item.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html"><div class="ttname"><a href="struct___remmina_icon.html">_RemminaIcon</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00059">remmina_icon.c:59</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_ae477ccd85ab1d878d243aed7fa5e48ae"><div class="ttname"><a href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a></div><div class="ttdeci">gboolean remmina_icon_is_autostart(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00514">remmina_icon.c:514</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a2847311861df3a2f1c8bbcd35cf3fd6f"><div class="ttname"><a href="remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f">remmina_icon_populate_extra_menu_item</a></div><div class="ttdeci">static void remmina_icon_populate_extra_menu_item(GtkWidget *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00218">remmina_icon.c:218</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_a206abe0e916081b29c5faa52330e2271"><div class="ttname"><a href="remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271">remmina_exec_exitremmina</a></div><div class="ttdeci">void remmina_exec_exitremmina()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00088">remmina_exec.c:88</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a8029065504aef0e850d79f3823d18f66"><div class="ttname"><a href="remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66">remmina_applet_menu_populate</a></div><div class="ttdeci">void remmina_applet_menu_populate(RemminaAppletMenu *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00243">remmina_applet_menu.c:243</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a2710b09d09507f1c91ba8a2bd01b0436"><div class="ttname"><a href="remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436">remmina_avahi_free</a></div><div class="ttdeci">void remmina_avahi_free(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00264">remmina_avahi.c:264</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_ab73788ec8ee72842428712efb932d58e"><div class="ttname"><a href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">_RemminaAvahi::started</a></div><div class="ttdeci">gboolean started</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00044">remmina_avahi.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html_a52430cc6a84651509f25bc746d31e675"><div class="ttname"><a href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">_RemminaAvahi::discovered_services</a></div><div class="ttdeci">GHashTable * discovered_services</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00043">remmina_avahi.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_acee9d7384a5e3949df53cdf54390bbcd"><div class="ttname"><a href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref::applet_hide_count</a></div><div class="ttdeci">gboolean applet_hide_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00139">remmina_pref.h:139</a></div></div>
+<div class="ttc" id="struct___remmina_avahi_html"><div class="ttname"><a href="struct___remmina_avahi.html">_RemminaAvahi</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8h_source.html#l00042">remmina_avahi.h:42</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_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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_item_html_abfc6c501c400171718ddf4a520154e8c"><div class="ttname"><a href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">_RemminaAppletMenuItem::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00056">remmina_applet_menu_item.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_abbd08ed0c74b8f216e633aae6b141792"><div class="ttname"><a href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">_RemminaPref::applet_enable_avahi</a></div><div class="ttdeci">gboolean applet_enable_avahi</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00177">remmina_pref.h:177</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3">REMMINA_APPLET_MENU_ITEM_NEW</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</a></div></div>
+<div class="ttc" id="remmina__avahi_8c_html_a1ec851b22607dd1171ecdd5cca735b71"><div class="ttname"><a href="remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a></div><div class="ttdeci">void remmina_avahi_start(RemminaAvahi *ga)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__avahi_8c_source.html#l00207">remmina_avahi.c:207</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_af175fef31eb95974094088235b3a2b1d"><div class="ttname"><a href="remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d">remmina_icon_on_activate</a></div><div class="ttdeci">static void remmina_icon_on_activate(GtkStatusIcon *icon, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00301">remmina_icon.c:301</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a444be76e3c3a065279c5f9abc7fae833"><div class="ttname"><a href="remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833">remmina_icon_popdown_menu</a></div><div class="ttdeci">static void remmina_icon_popdown_menu(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00293">remmina_icon.c:293</a></div></div>
+<div class="ttc" id="struct___remmina_applet_menu_html"><div class="ttname"><a href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8h_source.html#l00055">remmina_applet_menu.h:55</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html_a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572"><div class="ttname"><a href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572">REMMINA_APPLET_MENU_ITEM_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8h_source.html#l00048">remmina_applet_menu_item.h:48</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_ae6ecf91edb905f3b2b39e33e05325590"><div class="ttname"><a href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a></div><div class="ttdeci">gboolean remmina_sysinfo_is_appindicator_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00046">remmina_sysinfo.c:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a999b74e3aab2e7fbc4431e803511b568"><div class="ttname"><a href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref::applet_new_ontop</a></div><div class="ttdeci">gboolean applet_new_ontop</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00138">remmina_pref.h:138</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a5cdf1958ef01e49889bcee2e90e2cf71"><div class="ttname"><a href="remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71">remmina_icon_about</a></div><div class="ttdeci">static void remmina_icon_about(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00111">remmina_icon.c:111</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8h_html"><div class="ttname"><a href="remmina__applet__menu_8h.html">remmina_applet_menu.h</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html_a6cf75146df2cbab7d5ae3046a62fd626"><div class="ttname"><a href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">_RemminaIcon::icon</a></div><div class="ttdeci">AppIndicator * icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00061">remmina_icon.c:61</a></div></div>
+<div class="ttc" id="struct___remmina_icon_html_af0d59295a7d21596ab989acfb36eba19"><div class="ttname"><a href="struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19">_RemminaIcon::icon</a></div><div class="ttdeci">GtkStatusIcon * icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00063">remmina_icon.c:63</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8c_html_a8518d5abbcb0cf2ff0923e41d55e1a96"><div class="ttname"><a href="remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96">remmina_applet_menu_item_new</a></div><div class="ttdeci">GtkWidget * remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu__item_8c_source.html#l00076">remmina_applet_menu_item.c:76</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a5a3b4f281c19f24645a895d3caab3ea0"><div class="ttname"><a href="remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0">remmina_icon_create_autostart_file</a></div><div class="ttdeci">static void remmina_icon_create_autostart_file(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00347">remmina_icon.c:347</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a5b1bc5b1130b31ea9c9cb7164fb82f1d"><div class="ttname"><a href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a></div><div class="ttdeci">void remmina_icon_set_autostart(gboolean autostart)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00527">remmina_icon.c:527</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_a261d344be12cd270d8b81a26e1ad9d23"><div class="ttname"><a href="remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23">remmina_applet_menu_add_item</a></div><div class="ttdeci">void remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00141">remmina_applet_menu.c:141</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d">REMMINA_COMMAND_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00045">remmina_exec.h:45</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html"><div class="ttname"><a href="remmina__exec_8h.html">remmina_exec.h</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html_a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704"><div class="ttname"><a href="remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704">REMMINA_COMMAND_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8h_source.html#l00043">remmina_exec.h:43</a></div></div>
+<div class="ttc" id="remmina__applet__menu_8c_html_abb924051b4e37930bed6aed12b653751"><div class="ttname"><a href="remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751">remmina_applet_menu_register_item</a></div><div class="ttdeci">void remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__applet__menu_8c_source.html#l00135">remmina_applet_menu.c:135</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html"><div class="ttname"><a href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a15b625603bb0eb191fca9e77d2821735"><div class="ttname"><a href="remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735">remmina_icon_save_autostart_file</a></div><div class="ttdeci">static void remmina_icon_save_autostart_file(GKeyFile *gkeyfile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00336">remmina_icon.c:336</a></div></div>
+<div class="ttc" id="remmina__applet__menu__item_8h_html"><div class="ttname"><a href="remmina__applet__menu__item_8h.html">remmina_applet_menu_item.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__icon_8c.html">remmina_icon.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__icon_8h.html b/docs/remmina__icon_8h.html
new file mode 100644
index 000000000..b24f9a6d2
--- /dev/null
+++ b/docs/remmina__icon_8h.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_icon.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__icon_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_icon.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__icon_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a741c81815e562f40672c4485172306d6"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6">remmina_icon_init</a> (void)</td></tr>
+<tr class="separator:a741c81815e562f40672c4485172306d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae477ccd85ab1d878d243aed7fa5e48ae"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a> (void)</td></tr>
+<tr class="separator:ae477ccd85ab1d878d243aed7fa5e48ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b1bc5b1130b31ea9c9cb7164fb82f1d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a> (gboolean autostart)</td></tr>
+<tr class="separator:a5b1bc5b1130b31ea9c9cb7164fb82f1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af80ed314f91d653237249d839c7fc3b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a> (void)</td></tr>
+<tr class="separator:af80ed314f91d653237249d839c7fc3b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25b1d13f76ddf6a51836d780eda5fab1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a> (void)</td></tr>
+<tr class="separator:a25b1d13f76ddf6a51836d780eda5fab1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a> (void)</td></tr>
+<tr class="memdesc:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine whenever the Remmina icon is available. <a href="#a42f087b679b43b8a1d36cd9e9781a8b6">More...</a><br /></td></tr>
+<tr class="separator:a42f087b679b43b8a1d36cd9e9781a8b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a25b1d13f76ddf6a51836d780eda5fab1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25b1d13f76ddf6a51836d780eda5fab1">&#9670;&nbsp;</a></span>remmina_icon_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a741c81815e562f40672c4485172306d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a741c81815e562f40672c4485172306d6">&#9670;&nbsp;</a></span>remmina_icon_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_icon_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="ae477ccd85ab1d878d243aed7fa5e48ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae477ccd85ab1d878d243aed7fa5e48ae">&#9670;&nbsp;</a></span>remmina_icon_is_autostart()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_icon_is_autostart </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00514">514</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a42f087b679b43b8a1d36cd9e9781a8b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42f087b679b43b8a1d36cd9e9781a8b6">&#9670;&nbsp;</a></span>remmina_icon_is_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_icon_is_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Determine whenever the Remmina icon is available. </p>
+<p>Return TRUE if a remmina_icon (status indicator/systray menu) is available and shown to the user, so the user can continue its work without the remmina main window. </p><dl class="section return"><dt>Returns</dt><dd>TRUE if the Remmina icon is available. </dd></dl>
+<p>Gnome Shell with compiled in LIBAPPINDICATOR: ensure have also a working appindicator extension available.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00376">376</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="af80ed314f91d653237249d839c7fc3b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af80ed314f91d653237249d839c7fc3b2">&#9670;&nbsp;</a></span>remmina_icon_populate_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_populate_menu </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00264">264</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a5b1bc5b1130b31ea9c9cb7164fb82f1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b1bc5b1130b31ea9c9cb7164fb82f1d">&#9670;&nbsp;</a></span>remmina_icon_set_autostart()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_icon_set_autostart </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>autostart</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00527">527</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__icon_8h.html">remmina_icon.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__icon_8h.js b/docs/remmina__icon_8h.js
new file mode 100644
index 000000000..316be1643
--- /dev/null
+++ b/docs/remmina__icon_8h.js
@@ -0,0 +1,9 @@
+var remmina__icon_8h =
+[
+ [ "remmina_icon_destroy", "remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1", null ],
+ [ "remmina_icon_init", "remmina__icon_8h.html#a741c81815e562f40672c4485172306d6", null ],
+ [ "remmina_icon_is_autostart", "remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae", null ],
+ [ "remmina_icon_is_available", "remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6", null ],
+ [ "remmina_icon_populate_menu", "remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2", null ],
+ [ "remmina_icon_set_autostart", "remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__icon_8h_source.html b/docs/remmina__icon_8h_source.html
new file mode 100644
index 000000000..4aaaa2280
--- /dev/null
+++ b/docs/remmina__icon_8h_source.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_icon.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__icon_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_icon.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__icon_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keywordtype">void</span> <a class="code" href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6">remmina_icon_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;gboolean <a class="code" href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a>(gboolean autostart);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;gboolean <a class="code" href="remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__icon_8h_html_a42f087b679b43b8a1d36cd9e9781a8b6"><div class="ttname"><a href="remmina__icon_8h.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#l00376">remmina_icon.c:376</a></div></div>
+<div class="ttc" id="remmina__icon_8h_html_ae477ccd85ab1d878d243aed7fa5e48ae"><div class="ttname"><a href="remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a></div><div class="ttdeci">gboolean remmina_icon_is_autostart(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00514">remmina_icon.c:514</a></div></div>
+<div class="ttc" id="remmina__icon_8h_html_a25b1d13f76ddf6a51836d780eda5fab1"><div class="ttname"><a href="remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1">remmina_icon_destroy</a></div><div class="ttdeci">void remmina_icon_destroy(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00074">remmina_icon.c:74</a></div></div>
+<div class="ttc" id="remmina__icon_8h_html_a5b1bc5b1130b31ea9c9cb7164fb82f1d"><div class="ttname"><a href="remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a></div><div class="ttdeci">void remmina_icon_set_autostart(gboolean autostart)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00527">remmina_icon.c:527</a></div></div>
+<div class="ttc" id="remmina__icon_8h_html_a741c81815e562f40672c4485172306d6"><div class="ttname"><a href="remmina__icon_8h.html#a741c81815e562f40672c4485172306d6">remmina_icon_init</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_icon_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00429">remmina_icon.c:429</a></div></div>
+<div class="ttc" id="remmina__icon_8h_html_af80ed314f91d653237249d839c7fc3b2"><div class="ttname"><a href="remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a></div><div class="ttdeci">void remmina_icon_populate_menu(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00264">remmina_icon.c:264</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__icon_8h.html">remmina_icon.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__key__chooser_8c.html b/docs/remmina__key__chooser_8c.html
new file mode 100644
index 000000000..f106efecb
--- /dev/null
+++ b/docs/remmina__key__chooser_8c.html
@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_key_chooser.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__key__chooser_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_key_chooser.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__key__chooser_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2dc21f6f759474cbff56dbfaf8b87a46"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser_dialog_on_key_press</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a> *arguments)</td></tr>
+<tr class="separator:a2dc21f6f759474cbff56dbfaf8b87a46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e8586623c819a2e24b6d7b1d3efde94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser_new</a> (GtkWindow *parent_window, gboolean use_modifiers)</td></tr>
+<tr class="separator:a9e8586623c819a2e24b6d7b1d3efde94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aba1462f1026818581e91155b12618f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a> (guint keyval, guint state)</td></tr>
+<tr class="separator:a5aba1462f1026818581e91155b12618f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4901c270a9c35ed2258c92cdc897474"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a> (const gchar *value)</td></tr>
+<tr class="separator:ae4901c270a9c35ed2258c92cdc897474"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2dc21f6f759474cbff56dbfaf8b87a46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2dc21f6f759474cbff56dbfaf8b87a46">&#9670;&nbsp;</a></span>remmina_key_chooser_dialog_on_key_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_key_chooser_dialog_on_key_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a> *&#160;</td>
+ <td class="paramname"><em>arguments</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00044">44</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4901c270a9c35ed2258c92cdc897474"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4901c270a9c35ed2258c92cdc897474">&#9670;&nbsp;</a></span>remmina_key_chooser_get_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_key_chooser_get_keyval </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00101">101</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+<a id="a5aba1462f1026818581e91155b12618f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5aba1462f1026818581e91155b12618f">&#9670;&nbsp;</a></span>remmina_key_chooser_get_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_key_chooser_get_value </td>
+ <td>(</td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>state</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00083">83</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+<a id="a9e8586623c819a2e24b6d7b1d3efde94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e8586623c819a2e24b6d7b1d3efde94">&#9670;&nbsp;</a></span>remmina_key_chooser_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a>* remmina_key_chooser_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent_window</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_modifiers</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00057">57</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__key__chooser_8c.html">remmina_key_chooser.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__key__chooser_8c.js b/docs/remmina__key__chooser_8c.js
new file mode 100644
index 000000000..1b1ae03aa
--- /dev/null
+++ b/docs/remmina__key__chooser_8c.js
@@ -0,0 +1,7 @@
+var remmina__key__chooser_8c =
+[
+ [ "remmina_key_chooser_dialog_on_key_press", "remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46", null ],
+ [ "remmina_key_chooser_get_keyval", "remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474", null ],
+ [ "remmina_key_chooser_get_value", "remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f", null ],
+ [ "remmina_key_chooser_new", "remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__key__chooser_8c_source.html b/docs/remmina__key__chooser_8c_source.html
new file mode 100644
index 000000000..b94440794
--- /dev/null
+++ b/docs/remmina__key__chooser_8c_source.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_key_chooser.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__key__chooser_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_key_chooser.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__key__chooser_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-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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Handle key-presses on the GtkEventBox */</span></div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46"> 44</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser_dialog_on_key_press</a>(GtkWidget *widget, GdkEventKey *event, <a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a> *arguments)</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"> 46</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (!arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">use_modifiers</a> || !event-&gt;is_modifier) {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a> = <span class="keyword">event</span>-&gt;state;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a> = gdk_keyval_to_lower(event-&gt;keyval);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; gtk_dialog_response(GTK_DIALOG(gtk_widget_get_toplevel(widget)),</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; event-&gt;keyval == GDK_KEY_Escape ? GTK_RESPONSE_CANCEL : GTK_RESPONSE_OK);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Show a key chooser dialog and return the keyval for the selected key */</span></div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36"> 57</a></span>&#160;<a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a>* <a class="code" href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser_new</a>(GtkWindow *parent_window, gboolean use_modifiers)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; GtkBuilder *builder = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_key_chooser.glade&quot;</span>);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; GtkDialog *dialog;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a> *arguments;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; arguments = g_new0(<a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a>, 1);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a> = 0;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">use_modifiers</a> = use_modifiers;</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"> 67</span>&#160; <span class="comment">/* Setup the dialog */</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; dialog = GTK_DIALOG(gtk_builder_get_object(builder, <span class="stringliteral">&quot;KeyChooserDialog&quot;</span>));</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), parent_window);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* Connect the GtkEventBox signal */</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; g_signal_connect(gtk_builder_get_object(builder, <span class="stringliteral">&quot;eventbox_key_chooser&quot;</span>), <span class="stringliteral">&quot;key-press-event&quot;</span>,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; G_CALLBACK(<a class="code" href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser_dialog_on_key_press</a>), arguments);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* Show the dialog and destroy it after the use */</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a> = gtk_dialog_run(dialog);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">/* The delete button set the keyval 0 */</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span> (arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a> == GTK_RESPONSE_REJECT)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a> = 0;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> arguments;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;}</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* Get the uppercase character value of a keyval */</span></div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f"> 83</a></span>&#160;gchar* <a class="code" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a>(guint keyval, guint state)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (!keyval)</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> g_strdup(KEY_CHOOSER_NONE);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;%s%s%s%s%s%s%s&quot;</span>,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; (state &amp; GDK_SHIFT_MASK) ? KEY_MODIFIER_SHIFT : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; (state &amp; GDK_CONTROL_MASK) ? KEY_MODIFIER_CTRL : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; (state &amp; GDK_MOD1_MASK) ? KEY_MODIFIER_ALT : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; (state &amp; GDK_SUPER_MASK) ? KEY_MODIFIER_SUPER : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; (state &amp; GDK_HYPER_MASK) ? KEY_MODIFIER_HYPER : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; (state &amp; GDK_META_MASK) ? KEY_MODIFIER_META : <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; gdk_keyval_name(gdk_keyval_to_upper(keyval)));</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;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment">/* Get the keyval of a (lowercase) character value */</span></div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474"> 101</a></span>&#160;guint <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(<span class="keyword">const</span> gchar *value)</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; gchar *patterns[] =</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; KEY_MODIFIER_SHIFT,</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; KEY_MODIFIER_CTRL,</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; KEY_MODIFIER_ALT,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; KEY_MODIFIER_SUPER,</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; KEY_MODIFIER_HYPER,</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; KEY_MODIFIER_META,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; NULL</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; };</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; gint i;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; gchar *tmpvalue;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; gchar *newvalue;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; guint keyval;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(value, KEY_CHOOSER_NONE) == 0)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">return</span> 0;</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; <span class="comment">/* Remove any modifier text before to get the keyval */</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; newvalue = g_strdup(value);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; g_strv_length(patterns); i++) {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; tmpvalue = <a class="code" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a>(newvalue, patterns[i], <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; g_free(newvalue);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; newvalue = g_strdup(tmpvalue);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; g_free(tmpvalue);</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; keyval = gdk_keyval_to_lower(gdk_keyval_from_name(newvalue));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; g_free(newvalue);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span> keyval;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;}</div><div class="ttc" id="remmina__key__chooser_8c_html_a9e8586623c819a2e24b6d7b1d3efde94"><div class="ttname"><a href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser_new</a></div><div class="ttdeci">RemminaKeyChooserArguments * remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00057">remmina_key_chooser.c:57</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8h_html"><div class="ttname"><a href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_a9afcfe09663fddc96755b08e5a62ef03"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">_RemminaKeyChooserArguments::use_modifiers</a></div><div class="ttdeci">gboolean use_modifiers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00049">remmina_key_chooser.h:49</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="struct___remmina_key_chooser_arguments_html"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00046">remmina_key_chooser.h:46</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_a2dc21f6f759474cbff56dbfaf8b87a46"><div class="ttname"><a href="remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46">remmina_key_chooser_dialog_on_key_press</a></div><div class="ttdeci">static gboolean remmina_key_chooser_dialog_on_key_press(GtkWidget *widget, GdkEventKey *event, RemminaKeyChooserArguments *arguments)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00044">remmina_key_chooser.c:44</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aea7547abe3a67e6126addc9ed91af640"><div class="ttname"><a href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a></div><div class="ttdeci">gchar * remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00659">remmina_public.c:659</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ac3b1c476480609afbbe21a2bb507e14c"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">_RemminaKeyChooserArguments::state</a></div><div class="ttdeci">guint state</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00048">remmina_key_chooser.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ad6bf8db773a58c4b73ce7902f76a860f"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">_RemminaKeyChooserArguments::keyval</a></div><div class="ttdeci">guint keyval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00047">remmina_key_chooser.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_a2fd9e4d001913994dd7ffee24563bde7"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">_RemminaKeyChooserArguments::response</a></div><div class="ttdeci">gint response</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00050">remmina_key_chooser.h:50</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_ae4901c270a9c35ed2258c92cdc897474"><div class="ttname"><a href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a></div><div class="ttdeci">guint remmina_key_chooser_get_keyval(const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00101">remmina_key_chooser.c:101</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_a5aba1462f1026818581e91155b12618f"><div class="ttname"><a href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a></div><div class="ttdeci">gchar * remmina_key_chooser_get_value(guint keyval, guint state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00083">remmina_key_chooser.c:83</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__key__chooser_8c.html">remmina_key_chooser.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__key__chooser_8h.html b/docs/remmina__key__chooser_8h.html
new file mode 100644
index 000000000..dec8d21b7
--- /dev/null
+++ b/docs/remmina__key__chooser_8h.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_key_chooser.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__key__chooser_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_key_chooser.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__key__chooser_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a4379a1e87bdb9d8b4c1f67c0bb9c4e27"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a></td></tr>
+<tr class="separator:a4379a1e87bdb9d8b4c1f67c0bb9c4e27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9353d33cda8bb123293406e9655c9e36"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36">remmina_key_chooser_new</a> (GtkWindow *parent_window, gboolean use_modifiers)</td></tr>
+<tr class="separator:a9353d33cda8bb123293406e9655c9e36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aba1462f1026818581e91155b12618f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a> (guint keyval, guint state)</td></tr>
+<tr class="separator:a5aba1462f1026818581e91155b12618f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4901c270a9c35ed2258c92cdc897474"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a> (const gchar *value)</td></tr>
+<tr class="separator:ae4901c270a9c35ed2258c92cdc897474"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a4379a1e87bdb9d8b4c1f67c0bb9c4e27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">&#9670;&nbsp;</a></span>RemminaKeyChooserArguments</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a> <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ae4901c270a9c35ed2258c92cdc897474"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4901c270a9c35ed2258c92cdc897474">&#9670;&nbsp;</a></span>remmina_key_chooser_get_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_key_chooser_get_keyval </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00101">101</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+<a id="a5aba1462f1026818581e91155b12618f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5aba1462f1026818581e91155b12618f">&#9670;&nbsp;</a></span>remmina_key_chooser_get_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_key_chooser_get_value </td>
+ <td>(</td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>state</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00083">83</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+<a id="a9353d33cda8bb123293406e9655c9e36"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9353d33cda8bb123293406e9655c9e36">&#9670;&nbsp;</a></span>remmina_key_chooser_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS <a class="el" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a>* remmina_key_chooser_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent_window</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_modifiers</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8c_source.html#l00057">57</a> of file <a class="el" href="remmina__key__chooser_8c_source.html">remmina_key_chooser.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__key__chooser_8h.js b/docs/remmina__key__chooser_8h.js
new file mode 100644
index 000000000..c98b4b938
--- /dev/null
+++ b/docs/remmina__key__chooser_8h.js
@@ -0,0 +1,8 @@
+var remmina__key__chooser_8h =
+[
+ [ "_RemminaKeyChooserArguments", "struct___remmina_key_chooser_arguments.html", "struct___remmina_key_chooser_arguments" ],
+ [ "RemminaKeyChooserArguments", "remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27", null ],
+ [ "remmina_key_chooser_get_keyval", "remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474", null ],
+ [ "remmina_key_chooser_get_value", "remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f", null ],
+ [ "remmina_key_chooser_new", "remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__key__chooser_8h_source.html b/docs/remmina__key__chooser_8h_source.html
new file mode 100644
index 000000000..a9694af34
--- /dev/null
+++ b/docs/remmina__key__chooser_8h_source.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_key_chooser.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__key__chooser_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_key_chooser.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__key__chooser_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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">#define KEY_MODIFIER_SHIFT _(&quot;Shift+&quot;)</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#define KEY_MODIFIER_CTRL _(&quot;Ctrl+&quot;)</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#define KEY_MODIFIER_ALT _(&quot;Alt+&quot;)</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define KEY_MODIFIER_SUPER _(&quot;Super+&quot;)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define KEY_MODIFIER_HYPER _(&quot;Hyper+&quot;)</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define KEY_MODIFIER_META _(&quot;Meta+&quot;)</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define KEY_CHOOSER_NONE _(&quot;&lt;None&gt;&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="struct___remmina_key_chooser_arguments.html"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a> {</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f"> 47</a></span>&#160; guint <a class="code" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c"> 48</a></span>&#160; guint <a class="code" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03"> 49</a></span>&#160; gboolean <a class="code" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">use_modifiers</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7"> 50</a></span>&#160; gint <a class="code" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/* Show a key chooser dialog and return the keyval for the selected key */</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a> *<a class="code" href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36">remmina_key_chooser_new</a>(GtkWindow *parent_window, gboolean <a class="code" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">use_modifiers</a>);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">/* Get the uppercase character value of a keyval */</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;gchar *<a class="code" href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a>(guint <a class="code" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a>, guint <a class="code" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a>);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">/* Get the keyval of a (lowercase) character value */</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;guint <a class="code" href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(<span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__key__chooser_8h_html_ae4901c270a9c35ed2258c92cdc897474"><div class="ttname"><a href="remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a></div><div class="ttdeci">guint remmina_key_chooser_get_keyval(const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00101">remmina_key_chooser.c:101</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_a9afcfe09663fddc96755b08e5a62ef03"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">_RemminaKeyChooserArguments::use_modifiers</a></div><div class="ttdeci">gboolean use_modifiers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00049">remmina_key_chooser.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00046">remmina_key_chooser.h:46</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8h_html_a9353d33cda8bb123293406e9655c9e36"><div class="ttname"><a href="remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36">remmina_key_chooser_new</a></div><div class="ttdeci">G_BEGIN_DECLS RemminaKeyChooserArguments * remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00057">remmina_key_chooser.c:57</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8h_html_a4379a1e87bdb9d8b4c1f67c0bb9c4e27"><div class="ttname"><a href="remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27">RemminaKeyChooserArguments</a></div><div class="ttdeci">struct _RemminaKeyChooserArguments RemminaKeyChooserArguments</div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ac3b1c476480609afbbe21a2bb507e14c"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">_RemminaKeyChooserArguments::state</a></div><div class="ttdeci">guint state</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00048">remmina_key_chooser.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ad6bf8db773a58c4b73ce7902f76a860f"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">_RemminaKeyChooserArguments::keyval</a></div><div class="ttdeci">guint keyval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00047">remmina_key_chooser.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_a2fd9e4d001913994dd7ffee24563bde7"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">_RemminaKeyChooserArguments::response</a></div><div class="ttdeci">gint response</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00050">remmina_key_chooser.h:50</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8h_html_a5aba1462f1026818581e91155b12618f"><div class="ttname"><a href="remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a></div><div class="ttdeci">gchar * remmina_key_chooser_get_value(guint keyval, guint state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00083">remmina_key_chooser.c:83</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__log_8c.html b/docs/remmina__log_8c.html
new file mode 100644
index 000000000..a3f523617
--- /dev/null
+++ b/docs/remmina__log_8c.html
@@ -0,0 +1,548 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_log.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__log_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_log.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__log_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window.html">_RemminaLogWindow</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad5a920aad512279bb932bcb26a2c3c19"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_log_window.html">_RemminaLogWindow</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a></td></tr>
+<tr class="separator:ad5a920aad512279bb932bcb26a2c3c19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5682db89dd84e1c413326e17a4f79dbe"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">RemminaLogWindowClass</a></td></tr>
+<tr class="separator:a5682db89dd84e1c413326e17a4f79dbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8f8d45cce779ec2a8db7bfdd02097a3e"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e">remmina_log_window_get_type</a> (void)</td></tr>
+<tr class="separator:a8f8d45cce779ec2a8db7bfdd02097a3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43a42f51f64b54924564e166c56b39e1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log_on_keypress</a> (GtkWidget *widget, GdkEvent *event, gpointer user_data)</td></tr>
+<tr class="separator:a43a42f51f64b54924564e166c56b39e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e5960f194353bd36d82bd9476c309bd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd">remmina_log_window_init</a> (<a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a> *logwin)</td></tr>
+<tr class="separator:a1e5960f194353bd36d82bd9476c309bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a070042aa580b708536dc793336722660"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log_window_new</a> (void)</td></tr>
+<tr class="separator:a070042aa580b708536dc793336722660"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a355067bd2e33d8942ad9d8af60c19f0c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log_end</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a355067bd2e33d8942ad9d8af60c19f0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72cf53183f3ef89c4208fdccb629003d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a> (void)</td></tr>
+<tr class="separator:a72cf53183f3ef89c4208fdccb629003d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f5bb72acbdcbf8793b4a5f4a6132b5"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a> (void)</td></tr>
+<tr class="separator:a96f5bb72acbdcbf8793b4a5f4a6132b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a5cc60197293b97a0c6fa2a471b221b"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log_scroll_to_end</a> (gpointer data)</td></tr>
+<tr class="separator:a6a5cc60197293b97a0c6fa2a471b221b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cbb8cc1b0525ae49248a84fb4b2b1a1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a> (gpointer data)</td></tr>
+<tr class="separator:a7cbb8cc1b0525ae49248a84fb4b2b1a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca8f826a273194e22f4467421af9b3aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a> (const gchar *text)</td></tr>
+<tr class="separator:aca8f826a273194e22f4467421af9b3aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa90e751e7bd5d477179188273c095d9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (const gchar *fmt,...)</td></tr>
+<tr class="memdesc:aa90e751e7bd5d477179188273c095d9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print a string in the Remmina Debug Windows and in the terminal. <a href="#aa90e751e7bd5d477179188273c095d9a">More...</a><br /></td></tr>
+<tr class="separator:aa90e751e7bd5d477179188273c095d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7848510c1fe1990c992e28cd31af9d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a> (const gchar *fmt,...)</td></tr>
+<tr class="separator:ac7848510c1fe1990c992e28cd31af9d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6c06467e9ec98a4ccc6645291cd5d19a"><td class="memItemLeft" align="right" valign="top">static GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a> = NULL</td></tr>
+<tr class="separator:a6c06467e9ec98a4ccc6645291cd5d19a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ad5a920aad512279bb932bcb26a2c3c19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5a920aad512279bb932bcb26a2c3c19">&#9670;&nbsp;</a></span>RemminaLogWindow</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_log_window.html">_RemminaLogWindow</a> <a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a5682db89dd84e1c413326e17a4f79dbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5682db89dd84e1c413326e17a4f79dbe">&#9670;&nbsp;</a></span>RemminaLogWindowClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a> <a class="el" href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">RemminaLogWindowClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa90e751e7bd5d477179188273c095d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa90e751e7bd5d477179188273c095d9a">&#9670;&nbsp;</a></span>remmina_debug()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_debug </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print a string in the Remmina Debug Windows and in the terminal. </p>
+<p>The string will be visible in the terminal if G_MESSAGES_DEBUG=all </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00194">194</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a355067bd2e33d8942ad9d8af60c19f0c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a355067bd2e33d8942ad9d8af60c19f0c">&#9670;&nbsp;</a></span>remmina_log_end()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_log_end </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00125">125</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a43a42f51f64b54924564e166c56b39e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43a42f51f64b54924564e166c56b39e1">&#9670;&nbsp;</a></span>remmina_log_on_keypress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_log_on_keypress </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="aca8f826a273194e22f4467421af9b3aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca8f826a273194e22f4467421af9b3aa">&#9670;&nbsp;</a></span>remmina_log_print()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_log_print </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00181">181</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a7cbb8cc1b0525ae49248a84fb4b2b1a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7cbb8cc1b0525ae49248a84fb4b2b1a1">&#9670;&nbsp;</a></span>remmina_log_print_real()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_log_print_real </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00167">167</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7848510c1fe1990c992e28cd31af9d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7848510c1fe1990c992e28cd31af9d8">&#9670;&nbsp;</a></span>remmina_log_printf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_log_printf </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00215">215</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a96f5bb72acbdcbf8793b4a5f4a6132b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96f5bb72acbdcbf8793b4a5f4a6132b5">&#9670;&nbsp;</a></span>remmina_log_running()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_log_running </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00148">148</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a6a5cc60197293b97a0c6fa2a471b221b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a5cc60197293b97a0c6fa2a471b221b">&#9670;&nbsp;</a></span>remmina_log_scroll_to_end()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_log_scroll_to_end </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00154">154</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a72cf53183f3ef89c4208fdccb629003d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72cf53183f3ef89c4208fdccb629003d">&#9670;&nbsp;</a></span>remmina_log_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_log_start </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00131">131</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a8f8d45cce779ec2a8db7bfdd02097a3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f8d45cce779ec2a8db7bfdd02097a3e">&#9670;&nbsp;</a></span>remmina_log_window_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_log_window_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00063">63</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a1e5960f194353bd36d82bd9476c309bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e5960f194353bd36d82bd9476c309bd">&#9670;&nbsp;</a></span>remmina_log_window_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_log_window_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a> *&#160;</td>
+ <td class="paramname"><em>logwin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00094">94</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a070042aa580b708536dc793336722660"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a070042aa580b708536dc793336722660">&#9670;&nbsp;</a></span>remmina_log_window_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static GtkWidget* remmina_log_window_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00119">119</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a6c06467e9ec98a4ccc6645291cd5d19a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c06467e9ec98a4ccc6645291cd5d19a">&#9670;&nbsp;</a></span>log_window</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* log_window = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__log_8c.html">remmina_log.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__log_8c.js b/docs/remmina__log_8c.js
new file mode 100644
index 000000000..ea5473346
--- /dev/null
+++ b/docs/remmina__log_8c.js
@@ -0,0 +1,20 @@
+var remmina__log_8c =
+[
+ [ "_RemminaLogWindow", "struct___remmina_log_window.html", "struct___remmina_log_window" ],
+ [ "_RemminaLogWindowClass", "struct___remmina_log_window_class.html", "struct___remmina_log_window_class" ],
+ [ "RemminaLogWindow", "remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19", null ],
+ [ "RemminaLogWindowClass", "remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe", null ],
+ [ "remmina_debug", "remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a", null ],
+ [ "remmina_log_end", "remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c", null ],
+ [ "remmina_log_on_keypress", "remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1", null ],
+ [ "remmina_log_print", "remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa", null ],
+ [ "remmina_log_print_real", "remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1", null ],
+ [ "remmina_log_printf", "remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8", null ],
+ [ "remmina_log_running", "remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5", null ],
+ [ "remmina_log_scroll_to_end", "remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b", null ],
+ [ "remmina_log_start", "remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d", null ],
+ [ "remmina_log_window_get_type", "remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e", null ],
+ [ "remmina_log_window_init", "remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd", null ],
+ [ "remmina_log_window_new", "remmina__log_8c.html#a070042aa580b708536dc793336722660", null ],
+ [ "log_window", "remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__log_8c_source.html b/docs/remmina__log_8c_source.html
new file mode 100644
index 000000000..4c52ddf6d
--- /dev/null
+++ b/docs/remmina__log_8c_source.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_log.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__log_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_log.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__log_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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__stats__sender_8h.html">remmina_stats_sender.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</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="comment">/***** Define the log window GUI *****/</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_LOG_WINDOW (remmina_log_window_get_type())</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_LOG_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_LOG_WINDOW, RemminaLogWindow))</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_LOG_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_LOG_WINDOW, RemminaLogWindowClass))</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define REMMINA_IS_LOG_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_LOG_WINDOW))</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define REMMINA_IS_LOG_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_LOG_WINDOW))</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define REMMINA_LOG_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_LOG_WINDOW, RemminaLogWindowClass))</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_log_window.html"> 52</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_log_window.html">_RemminaLogWindow</a> {</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184"> 53</a></span>&#160; GtkWindow <a class="code" href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184">window</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087"> 55</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">log_view</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232"> 56</a></span>&#160; GtkTextBuffer *<a class="code" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;} <a class="code" href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a>;</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"><a class="line" href="struct___remmina_log_window_class.html"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a> {</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af"> 60</a></span>&#160; GtkWindowClass <a class="code" href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af">parent_class</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">RemminaLogWindowClass</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e"> 63</a></span>&#160;GType <a class="code" href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e">remmina_log_window_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<a class="code" href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_log_window.html">RemminaLogWindow</a>, remmina_log_window, GTK_TYPE_WINDOW)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> remmina_log_window_class_init(<a class="code" href="struct___remmina_log_window_class.html">RemminaLogWindowClass</a> *klass)</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</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="comment">/* We will always only have one log window per instance */</span></div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a"> 74</a></span>&#160;<span class="keyword">static</span> GtkWidget *<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a> = NULL;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1"> 76</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log_on_keypress</a>(GtkWidget *widget, GdkEvent *event, gpointer user_data)</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"> 78</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; GdkEventKey *e = (GdkEventKey *)event;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> ((e-&gt;state &amp; GDK_CONTROL_MASK) == GDK_CONTROL_MASK) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> ((e-&gt;keyval == GDK_KEY_s || e-&gt;keyval == GDK_KEY_t) &amp;&amp; <a class="code" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a>()) {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a>(e-&gt;keyval != GDK_KEY_s);</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</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; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd"> 94</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd">remmina_log_window_init</a>(<a class="code" href="struct___remmina_log_window.html">RemminaLogWindow</a> *logwin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; GtkWidget *scrolledwindow;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(logwin), 4);</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; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; gtk_container_add(GTK_CONTAINER(logwin), scrolledwindow);</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; widget = gtk_text_view_new();</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(widget), GTK_WRAP_WORD_CHAR);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; gtk_text_view_set_editable(GTK_TEXT_VIEW(widget), FALSE);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), widget);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; logwin-&gt;<a class="code" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">log_view</a> = widget;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; logwin-&gt;<a class="code" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a> = gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));</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; g_signal_connect(G_OBJECT(logwin-&gt;<a class="code" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">log_view</a>), <span class="stringliteral">&quot;key-press-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log_on_keypress</a>), (gpointer)logwin);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">static</span> GtkWidget*</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a070042aa580b708536dc793336722660"> 119</a></span>&#160;<a class="code" href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log_window_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;{</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(g_object_new(REMMINA_TYPE_LOG_WINDOW, NULL));</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</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"><a class="line" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c"> 125</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log_end</a>(GtkWidget *widget, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a> = NULL;</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__log_8h.html#a0b1a2e5262436772262a859cc1e23683"> 131</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gtk_window_present(GTK_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>));</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a> = <a class="code" href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log_window_new</a>();</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; gtk_window_set_default_size(GTK_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>), 640, 480);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_signal_connect(G_OBJECT(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log_end</a>), NULL);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gtk_widget_show(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a>())</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a>(<span class="stringliteral">&quot;Shortcut keys for stats:\n&quot;</span></div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="stringliteral">&quot;\tCTRL+S: collect, show and send stats\n&quot;</span></div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="stringliteral">&quot;\tCTRL+T: collect and show stats\n&quot;</span>);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;}</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"><a class="line" href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5"> 148</a></span>&#160;gboolean <a class="code" href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a>(<span class="keywordtype">void</span>)</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"> 150</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span> (<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a> != NULL);</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"><a class="line" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b"> 154</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log_scroll_to_end</a>(gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; GtkTextIter iter;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>) {</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; gtk_text_buffer_get_end_iter(REMMINA_LOG_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)-&gt;<a class="code" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a>, &amp;iter);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(REMMINA_LOG_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)-&gt;<a class="code" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">log_view</a>), &amp;iter, 0.0, FALSE, 0.0,</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; 0.0);</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"> 164</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1"> 167</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a>(gpointer data)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;{</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; GtkTextIter iter;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>) {</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; gtk_text_buffer_get_end_iter(REMMINA_LOG_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)-&gt;<a class="code" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a>, &amp;iter);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; gtk_text_buffer_insert(REMMINA_LOG_WINDOW(<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)-&gt;<a class="code" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a>, &amp;iter, (<span class="keyword">const</span> gchar*)data, -1);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; IDLE_ADD(<a class="code" href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log_scroll_to_end</a>, NULL);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; }</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_free(data);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;}</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa"> 181</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a>(<span class="keyword">const</span> gchar *text)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; IDLE_ADD(<a class="code" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a>, g_strdup(text));</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a"> 194</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="keyword">const</span> gchar *fmt, ...)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">/* IMPORTANT: DO NOT USE TRACES IN THIS FUNCION */</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="comment">/* DO NOT USE TRACE_CALL(__func__); */</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; va_list args;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gchar *text;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; va_start(args, fmt);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; text = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; va_end(args);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; g_autofree gchar *buf = g_strconcat(<span class="stringliteral">&quot;(&quot;</span>, <a class="code" href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a>, <span class="stringliteral">&quot;) - &quot;</span>, text, NULL);</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; g_debug (<span class="stringliteral">&quot;%s&quot;</span>, g_strdup(buf));</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; buf = g_strconcat (buf, <span class="stringliteral">&quot;\n&quot;</span>, NULL);</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"> 210</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>)</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; IDLE_ADD(<a class="code" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a>, g_strdup(buf));</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="l00215"></a><span class="lineno"><a class="line" href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8"> 215</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a>(<span class="keyword">const</span> gchar *fmt, ...)</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;{</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; va_list args;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; gchar *text;</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"> 221</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a>) <span class="keywordflow">return</span>;</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; va_start(args, fmt);</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; text = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; va_end(args);</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; IDLE_ADD(<a class="code" href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a>, text);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;}</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</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#l00131">remmina_log.c:131</a></div></div>
+<div class="ttc" id="struct___remmina_log_window_html_ae287dadd2c2a5bf704d7c494bcc74184"><div class="ttname"><a href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184">_RemminaLogWindow::window</a></div><div class="ttdeci">GtkWindow window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00053">remmina_log.c:53</a></div></div>
+<div class="ttc" id="struct___remmina_log_window_html"><div class="ttname"><a href="struct___remmina_log_window.html">_RemminaLogWindow</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00052">remmina_log.c:52</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a7cbb8cc1b0525ae49248a84fb4b2b1a1"><div class="ttname"><a href="remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1">remmina_log_print_real</a></div><div class="ttdeci">static gboolean remmina_log_print_real(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00167">remmina_log.c:167</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a5682db89dd84e1c413326e17a4f79dbe"><div class="ttname"><a href="remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe">RemminaLogWindowClass</a></div><div class="ttdeci">struct _RemminaLogWindowClass RemminaLogWindowClass</div></div>
+<div class="ttc" id="remmina__log_8c_html_a6a5cc60197293b97a0c6fa2a471b221b"><div class="ttname"><a href="remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b">remmina_log_scroll_to_end</a></div><div class="ttdeci">static gboolean remmina_log_scroll_to_end(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00154">remmina_log.c:154</a></div></div>
+<div class="ttc" id="struct___remmina_log_window_html_a06774ea75d0ea07580555d34abbb8232"><div class="ttname"><a href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">_RemminaLogWindow::log_buffer</a></div><div class="ttdeci">GtkTextBuffer * log_buffer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00056">remmina_log.c:56</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a96f5bb72acbdcbf8793b4a5f4a6132b5"><div class="ttname"><a href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a></div><div class="ttdeci">gboolean remmina_log_running(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00148">remmina_log.c:148</a></div></div>
+<div class="ttc" id="struct___remmina_log_window_html_abfbb6314130ad100aba258087d9d4087"><div class="ttname"><a href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">_RemminaLogWindow::log_view</a></div><div class="ttdeci">GtkWidget * log_view</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00055">remmina_log.c:55</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="rcw_8c_html_a21e0a6e416667f30c2b1599b8b24faec"><div class="ttname"><a href="rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaConnectionWindow, rcw, GTK_TYPE_WINDOW)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00075">rcw.c:75</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="struct___remmina_log_window_class_html"><div class="ttname"><a href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00059">remmina_log.c:59</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="remmina__log_8c_html_a1e5960f194353bd36d82bd9476c309bd"><div class="ttname"><a href="remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd">remmina_log_window_init</a></div><div class="ttdeci">static void remmina_log_window_init(RemminaLogWindow *logwin)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00094">remmina_log.c:94</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html_a64f3bfdd611684b04321d32f9bbb6c24"><div class="ttname"><a href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a></div><div class="ttdeci">char * fun</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__log_8c_html_a43a42f51f64b54924564e166c56b39e1"><div class="ttname"><a href="remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1">remmina_log_on_keypress</a></div><div class="ttdeci">static gboolean remmina_log_on_keypress(GtkWidget *widget, GdkEvent *event, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00076">remmina_log.c:76</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a8f8d45cce779ec2a8db7bfdd02097a3e"><div class="ttname"><a href="remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e">remmina_log_window_get_type</a></div><div class="ttdeci">GType remmina_log_window_get_type(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00063">remmina_log.c:63</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a070042aa580b708536dc793336722660"><div class="ttname"><a href="remmina__log_8c.html#a070042aa580b708536dc793336722660">remmina_log_window_new</a></div><div class="ttdeci">static GtkWidget * remmina_log_window_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00119">remmina_log.c:119</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_ad5a920aad512279bb932bcb26a2c3c19"><div class="ttname"><a href="remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19">RemminaLogWindow</a></div><div class="ttdeci">struct _RemminaLogWindow RemminaLogWindow</div></div>
+<div class="ttc" id="remmina__log_8c_html_a6c06467e9ec98a4ccc6645291cd5d19a"><div class="ttname"><a href="remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a">log_window</a></div><div class="ttdeci">static GtkWidget * log_window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00074">remmina_log.c:74</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_ac7848510c1fe1990c992e28cd31af9d8"><div class="ttname"><a href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a></div><div class="ttdeci">void remmina_log_printf(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00215">remmina_log.c:215</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8h_html"><div class="ttname"><a href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a5aa2104ccded08aa02dd2886f87af516"><div class="ttname"><a href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a></div><div class="ttdeci">gboolean remmina_stat_sender_can_send()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00295">remmina_stats_sender.c:295</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_adcfe144769bc83b3a6cc216eb3589919"><div class="ttname"><a href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a></div><div class="ttdeci">void remmina_stats_sender_send(gboolean show_only)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00282">remmina_stats_sender.c:282</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aca8f826a273194e22f4467421af9b3aa"><div class="ttname"><a href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a></div><div class="ttdeci">void remmina_log_print(const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00181">remmina_log.c:181</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a355067bd2e33d8942ad9d8af60c19f0c"><div class="ttname"><a href="remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c">remmina_log_end</a></div><div class="ttdeci">static void remmina_log_end(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00125">remmina_log.c:125</a></div></div>
+<div class="ttc" id="struct___remmina_log_window_class_html_af63588f4d71726fcda17ae5c2adcf2af"><div class="ttname"><a href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af">_RemminaLogWindowClass::parent_class</a></div><div class="ttdeci">GtkWindowClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00060">remmina_log.c:60</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__log_8c.html">remmina_log.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__log_8h.html b/docs/remmina__log_8h.html
new file mode 100644
index 000000000..21afc6119
--- /dev/null
+++ b/docs/remmina__log_8h.html
@@ -0,0 +1,244 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_log.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__log_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_log.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__log_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0b1a2e5262436772262a859cc1e23683"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683">remmina_log_start</a> (void)</td></tr>
+<tr class="separator:a0b1a2e5262436772262a859cc1e23683"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f5bb72acbdcbf8793b4a5f4a6132b5"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a> (void)</td></tr>
+<tr class="separator:a96f5bb72acbdcbf8793b4a5f4a6132b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca8f826a273194e22f4467421af9b3aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a> (const gchar *text)</td></tr>
+<tr class="separator:aca8f826a273194e22f4467421af9b3aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa90e751e7bd5d477179188273c095d9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (const gchar *fmt,...)</td></tr>
+<tr class="memdesc:aa90e751e7bd5d477179188273c095d9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print a string in the Remmina Debug Windows and in the terminal. <a href="#aa90e751e7bd5d477179188273c095d9a">More...</a><br /></td></tr>
+<tr class="separator:aa90e751e7bd5d477179188273c095d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7848510c1fe1990c992e28cd31af9d8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a> (const gchar *fmt,...)</td></tr>
+<tr class="separator:ac7848510c1fe1990c992e28cd31af9d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa90e751e7bd5d477179188273c095d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa90e751e7bd5d477179188273c095d9a">&#9670;&nbsp;</a></span>remmina_debug()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_debug </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print a string in the Remmina Debug Windows and in the terminal. </p>
+<p>The string will be visible in the terminal if G_MESSAGES_DEBUG=all </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00194">194</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="aca8f826a273194e22f4467421af9b3aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca8f826a273194e22f4467421af9b3aa">&#9670;&nbsp;</a></span>remmina_log_print()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_log_print </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00181">181</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7848510c1fe1990c992e28cd31af9d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7848510c1fe1990c992e28cd31af9d8">&#9670;&nbsp;</a></span>remmina_log_printf()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_log_printf </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00215">215</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a96f5bb72acbdcbf8793b4a5f4a6132b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96f5bb72acbdcbf8793b4a5f4a6132b5">&#9670;&nbsp;</a></span>remmina_log_running()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_log_running </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00148">148</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b1a2e5262436772262a859cc1e23683"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b1a2e5262436772262a859cc1e23683">&#9670;&nbsp;</a></span>remmina_log_start()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_log_start </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00131">131</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__log_8h.html">remmina_log.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__log_8h.js b/docs/remmina__log_8h.js
new file mode 100644
index 000000000..20408e545
--- /dev/null
+++ b/docs/remmina__log_8h.js
@@ -0,0 +1,8 @@
+var remmina__log_8h =
+[
+ [ "remmina_debug", "remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a", null ],
+ [ "remmina_log_print", "remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa", null ],
+ [ "remmina_log_printf", "remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8", null ],
+ [ "remmina_log_running", "remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5", null ],
+ [ "remmina_log_start", "remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__log_8h_source.html b/docs/remmina__log_8h_source.html
new file mode 100644
index 000000000..c7a32cc4d
--- /dev/null
+++ b/docs/remmina__log_8h_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_log.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__log_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_log.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__log_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keywordtype">void</span> <a class="code" href="remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683">remmina_log_start</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;gboolean <a class="code" href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a>(<span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a>(<span class="keyword">const</span> gchar *fmt, ...);</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"> 46</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__log_8h_html_a96f5bb72acbdcbf8793b4a5f4a6132b5"><div class="ttname"><a href="remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a></div><div class="ttdeci">gboolean remmina_log_running(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00148">remmina_log.c:148</a></div></div>
+<div class="ttc" id="remmina__log_8h_html_a0b1a2e5262436772262a859cc1e23683"><div class="ttname"><a href="remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683">remmina_log_start</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_log_start(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00131">remmina_log.c:131</a></div></div>
+<div class="ttc" id="remmina__log_8h_html_aca8f826a273194e22f4467421af9b3aa"><div class="ttname"><a href="remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a></div><div class="ttdeci">void remmina_log_print(const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00181">remmina_log.c:181</a></div></div>
+<div class="ttc" id="remmina__log_8h_html_ac7848510c1fe1990c992e28cd31af9d8"><div class="ttname"><a href="remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a></div><div class="ttdeci">void remmina_log_printf(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00215">remmina_log.c:215</a></div></div>
+<div class="ttc" id="remmina__log_8h_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__log_8h.html">remmina_log.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__main_8c.html b/docs/remmina__main_8c.html
new file mode 100644
index 000000000..e0de78142
--- /dev/null
+++ b/docs/remmina__main_8c.html
@@ -0,0 +1,2746 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_main.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__main_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_main.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__main_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ab04a0655cd1e3bcac5e8f48c18df1a57"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>,
+<a class="el" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4">N_COLUMNS</a>
+<br />
+ }</td></tr>
+<tr class="separator:ab04a0655cd1e3bcac5e8f48c18df1a57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac448c53d7a2066763d2b747d269f60ee"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a> (void)</td></tr>
+<tr class="memdesc:ac448c53d7a2066763d2b747d269f60ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save the Remmina Main Window size to assure the main geometry at each restart. <a href="#ac448c53d7a2066763d2b747d269f60ee">More...</a><br /></td></tr>
+<tr class="separator:ac448c53d7a2066763d2b747d269f60ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51880fc109db6457a5d0fc543c2deaf2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2">remmina_main_save_expanded_group_func</a> (GtkTreeView *tree_view, GtkTreePath *path, gpointer user_data)</td></tr>
+<tr class="separator:a51880fc109db6457a5d0fc543c2deaf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8744dc59ba8072ffdf557b6c94e9f40"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a> (void)</td></tr>
+<tr class="separator:ad8744dc59ba8072ffdf557b6c94e9f40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a009f32092bd1d8dcd8e783d25416f3df"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a> ()</td></tr>
+<tr class="memdesc:a009f32092bd1d8dcd8e783d25416f3df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save the Remmina Main Window size and the exapnded group before to close Remmina. <a href="#a009f32092bd1d8dcd8e783d25416f3df">More...</a><br /></td></tr>
+<tr class="separator:a009f32092bd1d8dcd8e783d25416f3df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33ef5745d8b934ef52379c277d3a1ab2"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2">remmina_main_dexit</a> (gpointer data)</td></tr>
+<tr class="memdesc:a33ef5745d8b934ef52379c277d3a1ab2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to exit remmina after a delete window event. <a href="#a33ef5745d8b934ef52379c277d3a1ab2">More...</a><br /></td></tr>
+<tr class="separator:a33ef5745d8b934ef52379c277d3a1ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40493bb60c169e53e2e08a0d0a808302"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302">remmina_main_on_delete_event</a> (GtkWidget *widget, GdkEvent *event, gpointer user_data)</td></tr>
+<tr class="separator:a40493bb60c169e53e2e08a0d0a808302"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71097b95723932e40835fa00f1b1eba0"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main_rmodestroy</a> (gpointer data)</td></tr>
+<tr class="memdesc:a71097b95723932e40835fa00f1b1eba0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called after the main window is destroyed, will cleanup remminamain object and related data. <a href="#a71097b95723932e40835fa00f1b1eba0">More...</a><br /></td></tr>
+<tr class="separator:a71097b95723932e40835fa00f1b1eba0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95532ac6d110eeeb2e41d4b2a329797c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c">remmina_main_destroy</a> ()</td></tr>
+<tr class="memdesc:a95532ac6d110eeeb2e41d4b2a329797c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the main window is destroyed via a call from gtk_widget_destroy() <a href="#a95532ac6d110eeeb2e41d4b2a329797c">More...</a><br /></td></tr>
+<tr class="separator:a95532ac6d110eeeb2e41d4b2a329797c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e60326026d7de56882bc83c0084fd12"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a> (void)</td></tr>
+<tr class="separator:a9e60326026d7de56882bc83c0084fd12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab08aae433b625c3a84330630fe2bd2d5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a> ()</td></tr>
+<tr class="separator:ab08aae433b625c3a84330630fe2bd2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c5043279b5d98d4d08635d33402ea66"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a> (GtkTreeSelection *selection, GtkTreeModel *model, GtkTreePath *path, gboolean path_currently_selected, gpointer user_data)</td></tr>
+<tr class="separator:a3c5043279b5d98d4d08635d33402ea66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71f485dba1b11bf8cba129920767b5e6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</td></tr>
+<tr class="separator:a71f485dba1b11bf8cba129920767b5e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a6ba822ef89ef8ad9f19340c2c8b7f5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a> (GNode *node, GtkTreeStore *store, GtkTreeIter *parent)</td></tr>
+<tr class="separator:a2a6ba822ef89ef8ad9f19340c2c8b7f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa46e6b815c241d32a476a29053dbf296"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296">remmina_main_load_file_tree_group</a> (GtkTreeStore *store)</td></tr>
+<tr class="separator:aa46e6b815c241d32a476a29053dbf296"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74cb130b886c2b905f651e777644a08c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c">remmina_main_expand_group_traverse</a> (GtkTreeIter *iter)</td></tr>
+<tr class="separator:a74cb130b886c2b905f651e777644a08c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a4733c243f20c3ffc27105003f5e30e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a> (void)</td></tr>
+<tr class="separator:a4a4733c243f20c3ffc27105003f5e30e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a847424fdb97ffe35d060409d4d738497"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497">remmina_main_load_file_tree_find</a> (GtkTreeModel *tree, GtkTreeIter *iter, const gchar *match_group)</td></tr>
+<tr class="separator:a847424fdb97ffe35d060409d4d738497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae32574ebe06b1a24f135af9379e663b4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4">remmina_main_load_file_tree_callback</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</td></tr>
+<tr class="separator:ae32574ebe06b1a24f135af9379e663b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71fbe206a9c2abb8f348ee598d7751b7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7">remmina_main_file_model_on_sort</a> (GtkTreeSortable *sortable, gpointer user_data)</td></tr>
+<tr class="separator:a71fbe206a9c2abb8f348ee598d7751b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0d22f0e3571eb80886acb0c68005800"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800">remmina_main_filter_visible_func</a> (GtkTreeModel *model, GtkTreeIter *iter, gpointer user_data)</td></tr>
+<tr class="separator:ab0d22f0e3571eb80886acb0c68005800"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa20963aed43242994c88d5a97a546355"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355">remmina_main_select_file</a> (const gchar *filename)</td></tr>
+<tr class="separator:aa20963aed43242994c88d5a97a546355"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3617295e74fa84edbd41dedc601402a7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a> ()</td></tr>
+<tr class="separator:a3617295e74fa84edbd41dedc601402a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d8aed506a9e65e444507b6eae74bbb0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0">remmina_main_load_files_cb</a> ()</td></tr>
+<tr class="separator:a2d8aed506a9e65e444507b6eae74bbb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b30ed832369f3a7153aa63f98873c9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a6b30ed832369f3a7153aa63f98873c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcf8bd8ca57b389264ff9739a61efdc1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:abcf8bd8ca57b389264ff9739a61efdc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a466d0b07944e619bd9b0e473c8a5bd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd">remmina_main_file_editor_destroy</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a6a466d0b07944e619bd9b0e473c8a5bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf51d42fa2c5ce84164b5514b4634229"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:abf51d42fa2c5ce84164b5514b4634229"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52cc21537ff003b9d0fbdb9040c811af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a52cc21537ff003b9d0fbdb9040c811af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a1e318355fd97b304ce2675d02ea8b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9">remmina_main_on_search_toggle</a> ()</td></tr>
+<tr class="separator:a7a1e318355fd97b304ce2675d02ea8b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1a3a51f6d7f6a2411f9b38de860d766"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main_on_view_toggle</a> ()</td></tr>
+<tr class="separator:ac1a3a51f6d7f6a2411f9b38de860d766"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44eb44c6391f53a19c6f1fdf9a39a8c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a44eb44c6391f53a19c6f1fdf9a39a8c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfbfc580d25b58d09770a7d33ffe03cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:adfbfc580d25b58d09770a7d33ffe03cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e574723222f5df9db456977e62a093"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a10e574723222f5df9db456977e62a093"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ed9f6a588a2d9e3a6cf6884c8d07f92"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a6ed9f6a588a2d9e3a6cf6884c8d07f92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05dbb6ce820f3a137949b919d0efa6a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a05dbb6ce820f3a137949b919d0efa6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5445e5568a6fc04d08b620829a59334a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a5445e5568a6fc04d08b620829a59334a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d60de4c121cae0c82e60b13873073db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db">remmina_main_on_date_column_sort_clicked</a> ()</td></tr>
+<tr class="separator:a3d60de4c121cae0c82e60b13873073db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac767825cb87a34531306cfb587216d20"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a> (GSList *files)</td></tr>
+<tr class="separator:ac767825cb87a34531306cfb587216d20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85aa313453e0ecaa17bcce233973998d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d">remmina_main_action_tools_import_on_response</a> (GtkDialog *dialog, gint response_id, gpointer user_data)</td></tr>
+<tr class="separator:a85aa313453e0ecaa17bcce233973998d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab203476099a5ad6e889f91c8e05d577d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:ab203476099a5ad6e889f91c8e05d577d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf59ad5b0a0ef68e58bbea3701929efc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:adf59ad5b0a0ef68e58bbea3701929efc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7049d977154921f651cc1538f59c5b7a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a7049d977154921f651cc1538f59c5b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c32fe66988056b353220128611b9116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0c32fe66988056b353220128611b9116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac3aa116a8d8b527f1aa61b7395b4b32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:aac3aa116a8d8b527f1aa61b7395b4b32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2704d643ee15702a84a1c76219dd5277"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a2704d643ee15702a84a1c76219dd5277"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5db4436cc72b9d5ea3e498f8519efecc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a5db4436cc72b9d5ea3e498f8519efecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac0bb51159be042fecab0103e73a54dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:aac0bb51159be042fecab0103e73a54dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b4ec1e78b79adaa180a385ac50c20d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0b4ec1e78b79adaa180a385ac50c20d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a802458852abacebfb16f1f4295806a01"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01">remmina_main_quickconnect</a> (void)</td></tr>
+<tr class="separator:a802458852abacebfb16f1f4295806a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a210e9e04c7c97cc86412044de31f659d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d">remmina_main_quickconnect_on_click</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a210e9e04c7c97cc86412044de31f659d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c69b2fa6a56869c54f58d7ebae89427"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427">remmina_main_quick_search_enter</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a6c69b2fa6a56869c54f58d7ebae89427"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab98d51c96a87fddaa2d5d6d4614bafa8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:ab98d51c96a87fddaa2d5d6d4614bafa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba1a89a2400c5cc8373c6bd34602ac10"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10">remmina_main_file_list_on_row_activated</a> (GtkTreeView *tree, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data)</td></tr>
+<tr class="separator:aba1a89a2400c5cc8373c6bd34602ac10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace72fa8f7198020464623e7117a351a9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9">remmina_main_file_list_on_button_press</a> (GtkWidget *widget, GdkEventButton *event, gpointer user_data)</td></tr>
+<tr class="separator:ace72fa8f7198020464623e7117a351a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31102f8ca7440a22c1514bca17933193"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193">remmina_main_file_list_on_key_press</a> (GtkWidget *widget, GdkEventKey *event, gpointer user_data)</td></tr>
+<tr class="separator:a31102f8ca7440a22c1514bca17933193"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af51fc7233eb2397a5074ba37b5c5275f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f">remmina_main_quick_search_on_icon_press</a> (GtkEntry *entry, GtkEntryIconPosition icon_pos, GdkEvent *event, gpointer user_data)</td></tr>
+<tr class="separator:af51fc7233eb2397a5074ba37b5c5275f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1cac4199e40e35bf3fcdb98841615657"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657">remmina_main_quick_search_on_changed</a> (GtkEditable *editable, gpointer user_data)</td></tr>
+<tr class="separator:a1cac4199e40e35bf3fcdb98841615657"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf073486149762f547504020484bff70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#adf073486149762f547504020484bff70">remmina_main_on_drag_data_received</a> (GtkWidget *widget, GdkDragContext *drag_context, gint x, gint y, GtkSelectionData *data, guint info, guint time, gpointer user_data)</td></tr>
+<tr class="separator:adf073486149762f547504020484bff70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7be10e330f0c2a3f74e119cde443786f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f">remmina_main_add_tool_plugin</a> (gchar *name, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, gpointer user_data)</td></tr>
+<tr class="separator:a7be10e330f0c2a3f74e119cde443786f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a861de52d1b5ec54591d0592de6289d79"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79">remmina_main_on_window_state_event</a> (GtkWidget *widget, GdkEventWindowState *event, gpointer user_data)</td></tr>
+<tr class="separator:a861de52d1b5ec54591d0592de6289d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afefc1b651e1c546e949dbe6df72b0300"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a> (void)</td></tr>
+<tr class="separator:afefc1b651e1c546e949dbe6df72b0300"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4d9b76d32fa500f4b9f39a19e4eaaf2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2">remmina_main_on_show</a> (GtkWidget *w, gpointer user_data)</td></tr>
+<tr class="separator:aa4d9b76d32fa500f4b9f39a19e4eaaf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af14b1942a754d7b2f5c10266208ebe01"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01">remmina_main_new</a> (void)</td></tr>
+<tr class="separator:af14b1942a754d7b2f5c10266208ebe01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7740488de65c0e642895cc9dfba07b6e"><td class="memItemLeft" align="right" valign="top">GtkWindow *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a> ()</td></tr>
+<tr class="separator:a7740488de65c0e642895cc9dfba07b6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ae0372dafe41f96a09097c07d1b270a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</td></tr>
+<tr class="separator:a5ae0372dafe41f96a09097c07d1b270a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a> (const gchar *message)</td></tr>
+<tr class="separator:ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ab7c680e1f6ffeef21cb928a083d36d89"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89">remminamain</a></td></tr>
+<tr class="separator:ab7c680e1f6ffeef21cb928a083d36d89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64f3bfdd611684b04321d32f9bbb6c24"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a> = &quot;main&quot;</td></tr>
+<tr class="separator:a64f3bfdd611684b04321d32f9bbb6c24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ebbcba2c07af0938b3c29e316747d12"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a> []</td></tr>
+<tr class="separator:a8ebbcba2c07af0938b3c29e316747d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af146cc1f982c98a9c8a5ac43cc1508f3"><td class="memItemLeft" align="right" valign="top">static GActionEntry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a> []</td></tr>
+<tr class="separator:af146cc1f982c98a9c8a5ac43cc1508f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ccd8303ada6e26880504fc58812fbda"><td class="memItemLeft" align="right" valign="top">static GtkTargetEntry&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda">remmina_drop_types</a> []</td></tr>
+<tr class="separator:a8ccd8303ada6e26880504fc58812fbda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aace9ecdd0b74d392ad6ed541bd605c1c"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a> []</td></tr>
+<tr class="separator:aace9ecdd0b74d392ad6ed541bd605c1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="ab04a0655cd1e3bcac5e8f48c18df1a57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab04a0655cd1e3bcac5e8f48c18df1a57">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445"></a>PROTOCOL_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c"></a>NAME_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b"></a>GROUP_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f"></a>SERVER_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756"></a>PLUGIN_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb"></a>DATE_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d"></a>FILENAME_COLUMN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4"></a>N_COLUMNS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00071">71</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a85aa313453e0ecaa17bcce233973998d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85aa313453e0ecaa17bcce233973998d">&#9670;&nbsp;</a></span>remmina_main_action_tools_import_on_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_action_tools_import_on_response </td>
+ <td>(</td>
+ <td class="paramtype">GtkDialog *&#160;</td>
+ <td class="paramname"><em>dialog</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00941">941</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a7be10e330f0c2a3f74e119cde443786f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7be10e330f0c2a3f74e119cde443786f">&#9670;&nbsp;</a></span>remmina_main_add_tool_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_add_tool_plugin </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01200">1200</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a9e60326026d7de56882bc83c0084fd12"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e60326026d7de56882bc83c0084fd12">&#9670;&nbsp;</a></span>remmina_main_clear_selection_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_clear_selection_data </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00240">240</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a95532ac6d110eeeb2e41d4b2a329797c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95532ac6d110eeeb2e41d4b2a329797c">&#9670;&nbsp;</a></span>remmina_main_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called when the main window is destroyed via a call from gtk_widget_destroy() </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00227">227</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a33ef5745d8b934ef52379c277d3a1ab2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33ef5745d8b934ef52379c277d3a1ab2">&#9670;&nbsp;</a></span>remmina_main_dexit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_dexit </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Try to exit remmina after a delete window event. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00184">184</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a4a4733c243f20c3ffc27105003f5e30e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a4733c243f20c3ffc27105003f5e30e">&#9670;&nbsp;</a></span>remmina_main_expand_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_expand_group </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00421">421</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a74cb130b886c2b905f651e777644a08c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74cb130b886c2b905f651e777644a08c">&#9670;&nbsp;</a></span>remmina_main_expand_group_traverse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_expand_group_traverse </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00391">391</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6a466d0b07944e619bd9b0e473c8a5bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a466d0b07944e619bd9b0e473c8a5bd">&#9670;&nbsp;</a></span>remmina_main_file_editor_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_file_editor_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00693">693</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ace72fa8f7198020464623e7117a351a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace72fa8f7198020464623e7117a351a9">&#9670;&nbsp;</a></span>remmina_main_file_list_on_button_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_main_file_list_on_button_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventButton *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01121">1121</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a31102f8ca7440a22c1514bca17933193"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31102f8ca7440a22c1514bca17933193">&#9670;&nbsp;</a></span>remmina_main_file_list_on_key_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_main_file_list_on_key_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01138">1138</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aba1a89a2400c5cc8373c6bd34602ac10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba1a89a2400c5cc8373c6bd34602ac10">&#9670;&nbsp;</a></span>remmina_main_file_list_on_row_activated()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_file_list_on_row_activated </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeView *&#160;</td>
+ <td class="paramname"><em>tree</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreePath *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeViewColumn *&#160;</td>
+ <td class="paramname"><em>column</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01103">1103</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a71fbe206a9c2abb8f348ee598d7751b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71fbe206a9c2abb8f348ee598d7751b7">&#9670;&nbsp;</a></span>remmina_main_file_model_on_sort()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_file_model_on_sort </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeSortable *&#160;</td>
+ <td class="paramname"><em>sortable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00489">489</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab0d22f0e3571eb80886acb0c68005800"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0d22f0e3571eb80886acb0c68005800">&#9670;&nbsp;</a></span>remmina_main_filter_visible_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_filter_visible_func </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00501">501</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a7740488de65c0e642895cc9dfba07b6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7740488de65c0e642895cc9dfba07b6e">&#9670;&nbsp;</a></span>remmina_main_get_window()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow* remmina_main_get_window </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01361">1361</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ac767825cb87a34531306cfb587216d20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac767825cb87a34531306cfb587216d20">&#9670;&nbsp;</a></span>remmina_main_import_file_list()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_import_file_list </td>
+ <td>(</td>
+ <td class="paramtype">GSList *&#160;</td>
+ <td class="paramname"><em>files</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00897">897</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="afefc1b651e1c546e949dbe6df72b0300"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afefc1b651e1c546e949dbe6df72b0300">&#9670;&nbsp;</a></span>remmina_main_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">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#l01219">1219</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a71f485dba1b11bf8cba129920767b5e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71f485dba1b11bf8cba129920767b5e6">&#9670;&nbsp;</a></span>remmina_main_load_file_list_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_load_file_list_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00332">332</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ae32574ebe06b1a24f135af9379e663b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae32574ebe06b1a24f135af9379e663b4">&#9670;&nbsp;</a></span>remmina_main_load_file_tree_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_load_file_tree_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00459">459</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a847424fdb97ffe35d060409d4d738497"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a847424fdb97ffe35d060409d4d738497">&#9670;&nbsp;</a></span>remmina_main_load_file_tree_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_load_file_tree_find </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>tree</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>iter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>match_group</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00431">431</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aa46e6b815c241d32a476a29053dbf296"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa46e6b815c241d32a476a29053dbf296">&#9670;&nbsp;</a></span>remmina_main_load_file_tree_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_load_file_tree_group </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeStore *&#160;</td>
+ <td class="paramname"><em>store</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00381">381</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a2a6ba822ef89ef8ad9f19340c2c8b7f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a6ba822ef89ef8ad9f19340c2c8b7f5">&#9670;&nbsp;</a></span>remmina_main_load_file_tree_traverse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_load_file_tree_traverse </td>
+ <td>(</td>
+ <td class="paramtype">GNode *&#160;</td>
+ <td class="paramname"><em>node</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeStore *&#160;</td>
+ <td class="paramname"><em>store</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>parent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00354">354</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a3617295e74fa84edbd41dedc601402a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3617295e74fa84edbd41dedc601402a7">&#9670;&nbsp;</a></span>remmina_main_load_files()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_load_files </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00575">575</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a2d8aed506a9e65e444507b6eae74bbb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d8aed506a9e65e444507b6eae74bbb0">&#9670;&nbsp;</a></span>remmina_main_load_files_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_load_files_cb </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00655">655</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="af14b1942a754d7b2f5c10266208ebe01"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af14b1942a754d7b2f5c10266208ebe01">&#9670;&nbsp;</a></span>remmina_main_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_main_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01292">1292</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aac0bb51159be042fecab0103e73a54dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac0bb51159be042fecab0103e73a54dc">&#9670;&nbsp;</a></span>remmina_main_on_action_application_about()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_about </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01031">1031</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a05dbb6ce820f3a137949b919d0efa6a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05dbb6ce820f3a137949b919d0efa6a1">&#9670;&nbsp;</a></span>remmina_main_on_action_application_default()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_default </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00853">853</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="abf51d42fa2c5ce84164b5514b4634229"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf51d42fa2c5ce84164b5514b4634229">&#9670;&nbsp;</a></span>remmina_main_on_action_application_mpchange()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_mpchange </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00699">699</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b4ec1e78b79adaa180a385ac50c20d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b4ec1e78b79adaa180a385ac50c20d6">&#9670;&nbsp;</a></span>remmina_main_on_action_application_news()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_news </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01037">1037</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="adf59ad5b0a0ef68e58bbea3701929efc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf59ad5b0a0ef68e58bbea3701929efc">&#9670;&nbsp;</a></span>remmina_main_on_action_application_plugins()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_plugins </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00995">995</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ed9f6a588a2d9e3a6cf6884c8d07f92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed9f6a588a2d9e3a6cf6884c8d07f92">&#9670;&nbsp;</a></span>remmina_main_on_action_application_preferences()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_preferences </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00843">843</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5445e5568a6fc04d08b620829a59334a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5445e5568a6fc04d08b620829a59334a">&#9670;&nbsp;</a></span>remmina_main_on_action_application_quit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_quit </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00879">879</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0edcc1d7dc3adcbb7bb36aa0f62dec3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">&#9670;&nbsp;</a></span>remmina_main_on_action_collapse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_collapse </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01090">1090</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6b30ed832369f3a7153aa63f98873c9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b30ed832369f3a7153aa63f98873c9d">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_connect </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00661">661</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a44eb44c6391f53a19c6f1fdf9a39a8c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44eb44c6391f53a19c6f1fdf9a39a8c1">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_copy </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00773">773</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a10e574723222f5df9db456977e62a093"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10e574723222f5df9db456977e62a093">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_delete </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00818">818</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="adfbfc580d25b58d09770a7d33ffe03cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfbfc580d25b58d09770a7d33ffe03cc">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_edit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_edit </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00796">796</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="abcf8bd8ca57b389264ff9739a61efdc1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abcf8bd8ca57b389264ff9739a61efdc1">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_external_tools()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_external_tools </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00681">681</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a52cc21537ff003b9d0fbdb9040c811af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52cc21537ff003b9d0fbdb9040c811af">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_new </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00730">730</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab98d51c96a87fddaa2d5d6d4614bafa8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab98d51c96a87fddaa2d5d6d4614bafa8">&#9670;&nbsp;</a></span>remmina_main_on_action_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_expand </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01096">1096</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aac3aa116a8d8b527f1aa61b7395b4b32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac3aa116a8d8b527f1aa61b7395b4b32">&#9670;&nbsp;</a></span>remmina_main_on_action_help_community()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_community </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01013">1013</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5db4436cc72b9d5ea3e498f8519efecc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5db4436cc72b9d5ea3e498f8519efecc">&#9670;&nbsp;</a></span>remmina_main_on_action_help_debug()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_debug </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01025">1025</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a2704d643ee15702a84a1c76219dd5277"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2704d643ee15702a84a1c76219dd5277">&#9670;&nbsp;</a></span>remmina_main_on_action_help_donations()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_donations </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01019">1019</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a7049d977154921f651cc1538f59c5b7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7049d977154921f651cc1538f59c5b7a">&#9670;&nbsp;</a></span>remmina_main_on_action_help_homepage()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_homepage </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01001">1001</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0c32fe66988056b353220128611b9116"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c32fe66988056b353220128611b9116">&#9670;&nbsp;</a></span>remmina_main_on_action_help_wiki()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_wiki </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01007">1007</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab203476099a5ad6e889f91c8e05d577d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab203476099a5ad6e889f91c8e05d577d">&#9670;&nbsp;</a></span>remmina_main_on_action_tools_export()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_tools_export </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00965">965</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a4b4f0bbdb9e487d6c3809e8a57dc1d1c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">&#9670;&nbsp;</a></span>remmina_main_on_action_tools_import()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_tools_import </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00953">953</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d60de4c121cae0c82e60b13873073db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d60de4c121cae0c82e60b13873073db">&#9670;&nbsp;</a></span>remmina_main_on_date_column_sort_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_date_column_sort_clicked </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00887">887</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a40493bb60c169e53e2e08a0d0a808302"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40493bb60c169e53e2e08a0d0a808302">&#9670;&nbsp;</a></span>remmina_main_on_delete_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_main_on_delete_event </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00191">191</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="adf073486149762f547504020484bff70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf073486149762f547504020484bff70">&#9670;&nbsp;</a></span>remmina_main_on_drag_data_received()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_drag_data_received </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkDragContext *&#160;</td>
+ <td class="paramname"><em>drag_context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkSelectionData *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>info</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>time</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01181">1181</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a7a1e318355fd97b304ce2675d02ea8b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a1e318355fd97b304ce2675d02ea8b9">&#9670;&nbsp;</a></span>remmina_main_on_search_toggle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_search_toggle </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00745">745</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aa4d9b76d32fa500f4b9f39a19e4eaaf2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa4d9b76d32fa500f4b9f39a19e4eaaf2">&#9670;&nbsp;</a></span>remmina_main_on_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_show </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01283">1283</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1a3a51f6d7f6a2411f9b38de860d766"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1a3a51f6d7f6a2411f9b38de860d766">&#9670;&nbsp;</a></span>remmina_main_on_view_toggle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_view_toggle </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00754">754</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a861de52d1b5ec54591d0592de6289d79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a861de52d1b5ec54591d0592de6289d79">&#9670;&nbsp;</a></span>remmina_main_on_window_state_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_main_on_window_state_event </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventWindowState *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01212">1212</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6c69b2fa6a56869c54f58d7ebae89427"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c69b2fa6a56869c54f58d7ebae89427">&#9670;&nbsp;</a></span>remmina_main_quick_search_enter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_quick_search_enter </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01084">1084</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a1cac4199e40e35bf3fcdb98841615657"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cac4199e40e35bf3fcdb98841615657">&#9670;&nbsp;</a></span>remmina_main_quick_search_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_quick_search_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkEditable *&#160;</td>
+ <td class="paramname"><em>editable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<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>
+<a id="af51fc7233eb2397a5074ba37b5c5275f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af51fc7233eb2397a5074ba37b5c5275f">&#9670;&nbsp;</a></span>remmina_main_quick_search_on_icon_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_quick_search_on_icon_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkEntry *&#160;</td>
+ <td class="paramname"><em>entry</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkEntryIconPosition&#160;</td>
+ <td class="paramname"><em>icon_pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01153">1153</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a802458852abacebfb16f1f4295806a01"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a802458852abacebfb16f1f4295806a01">&#9670;&nbsp;</a></span>remmina_main_quickconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_quickconnect </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01045">1045</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a210e9e04c7c97cc86412044de31f659d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a210e9e04c7c97cc86412044de31f659d">&#9670;&nbsp;</a></span>remmina_main_quickconnect_on_click()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_main_quickconnect_on_click </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01075">1075</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a71097b95723932e40835fa00f1b1eba0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71097b95723932e40835fa00f1b1eba0">&#9670;&nbsp;</a></span>remmina_main_rmodestroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_rmodestroy </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Called after the main window is destroyed, will cleanup remminamain object and related data. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00206">206</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a009f32092bd1d8dcd8e783d25416f3df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a009f32092bd1d8dcd8e783d25416f3df">&#9670;&nbsp;</a></span>remmina_main_save_before_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_save_before_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Save the Remmina Main Window size and the exapnded group before to close Remmina. </p>
+<p>This function uses remmina_main_save_size and remmina_main_save_expanded_group. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ad8744dc59ba8072ffdf557b6c94e9f40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8744dc59ba8072ffdf557b6c94e9f40">&#9670;&nbsp;</a></span>remmina_main_save_expanded_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_save_expanded_group </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00155">155</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a51880fc109db6457a5d0fc543c2deaf2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51880fc109db6457a5d0fc543c2deaf2">&#9670;&nbsp;</a></span>remmina_main_save_expanded_group_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_save_expanded_group_func </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeView *&#160;</td>
+ <td class="paramname"><em>tree_view</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreePath *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00141">141</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ac448c53d7a2066763d2b747d269f60ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac448c53d7a2066763d2b747d269f60ee">&#9670;&nbsp;</a></span>remmina_main_save_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_save_size </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Save the Remmina Main Window size to assure the main geometry at each restart. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00130">130</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aa20963aed43242994c88d5a97a546355"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa20963aed43242994c88d5a97a546355">&#9670;&nbsp;</a></span>remmina_main_select_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_select_file </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00547">547</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a3c5043279b5d98d4d08635d33402ea66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c5043279b5d98d4d08635d33402ea66">&#9670;&nbsp;</a></span>remmina_main_selection_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_main_selection_func </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeSelection *&#160;</td>
+ <td class="paramname"><em>selection</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeModel *&#160;</td>
+ <td class="paramname"><em>model</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreePath *&#160;</td>
+ <td class="paramname"><em>path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>path_currently_selected</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00302">302</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab08aae433b625c3a84330630fe2bd2d5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab08aae433b625c3a84330630fe2bd2d5">&#9670;&nbsp;</a></span>remmina_main_show_snap_welcome()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_main_show_snap_welcome </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00251">251</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ad99b9c0bf2fa8c166a8b4a09e06ffdf7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">&#9670;&nbsp;</a></span>remmina_main_show_warning_dialog()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_show_warning_dialog </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01380">1380</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ae0372dafe41f96a09097c07d1b270a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ae0372dafe41f96a09097c07d1b270a">&#9670;&nbsp;</a></span>remmina_main_update_file_datetime()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_update_file_datetime </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01373">1373</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a64f3bfdd611684b04321d32f9bbb6c24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64f3bfdd611684b04321d32f9bbb6c24">&#9670;&nbsp;</a></span>fun</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* fun = &quot;main&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="af146cc1f982c98a9c8a5ac43cc1508f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af146cc1f982c98a9c8a5ac43cc1508f3">&#9670;&nbsp;</a></span>main_actions</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GActionEntry main_actions[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;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;news&quot;</span>, <a class="code" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</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>, 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"> { <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;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;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;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;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;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">}</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#l01001">remmina_main.c:1001</a></div></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#l00661">remmina_main.c:661</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0b4ec1e78b79adaa180a385ac50c20d6"><div class="ttname"><a href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a></div><div class="ttdeci">void remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01037">remmina_main.c:1037</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#l00953">remmina_main.c:953</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#l00699">remmina_main.c:699</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#l01025">remmina_main.c:1025</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#l01007">remmina_main.c:1007</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#l00853">remmina_main.c:853</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#l00773">remmina_main.c:773</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#l01090">remmina_main.c:1090</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#l01019">remmina_main.c:1019</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#l00730">remmina_main.c:730</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#l00843">remmina_main.c:843</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#l00818">remmina_main.c:818</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#l01013">remmina_main.c:1013</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#l00681">remmina_main.c:681</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#l00796">remmina_main.c:796</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#l01096">remmina_main.c:1096</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#l00879">remmina_main.c:879</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#l00965">remmina_main.c:965</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#l01031">remmina_main.c:1031</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#l00995">remmina_main.c:995</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00092">92</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aace9ecdd0b74d392ad6ed541bd605c1c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aace9ecdd0b74d392ad6ed541bd605c1c">&#9670;&nbsp;</a></span>quick_connect_plugin_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* quick_connect_plugin_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <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></div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ccd8303ada6e26880504fc58812fbda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ccd8303ada6e26880504fc58812fbda">&#9670;&nbsp;</a></span>remmina_drop_types</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTargetEntry remmina_drop_types[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <span class="stringliteral">&quot;text/uri-list&quot;</span>, 0, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00117">117</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab7c680e1f6ffeef21cb928a083d36d89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7c680e1f6ffeef21cb928a083d36d89">&#9670;&nbsp;</a></span>remminamain</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a>* remminamain</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ebbcba2c07af0938b3c29e316747d12"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ebbcba2c07af0938b3c29e316747d12">&#9670;&nbsp;</a></span>supported_mime_types</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* supported_mime_types[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;x-scheme-handler/rdp&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00083">83</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__main_8c.html">remmina_main.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__main_8c.js b/docs/remmina__main_8c.js
new file mode 100644
index 000000000..611185fc3
--- /dev/null
+++ b/docs/remmina__main_8c.js
@@ -0,0 +1,85 @@
+var remmina__main_8c =
+[
+ [ "PROTOCOL_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445", null ],
+ [ "NAME_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c", null ],
+ [ "GROUP_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b", null ],
+ [ "SERVER_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f", null ],
+ [ "PLUGIN_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756", null ],
+ [ "DATE_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb", null ],
+ [ "FILENAME_COLUMN", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d", null ],
+ [ "N_COLUMNS", "remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4", null ],
+ [ "remmina_main_action_tools_import_on_response", "remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d", null ],
+ [ "remmina_main_add_tool_plugin", "remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f", null ],
+ [ "remmina_main_clear_selection_data", "remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12", null ],
+ [ "remmina_main_destroy", "remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c", null ],
+ [ "remmina_main_dexit", "remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2", null ],
+ [ "remmina_main_expand_group", "remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e", null ],
+ [ "remmina_main_expand_group_traverse", "remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c", null ],
+ [ "remmina_main_file_editor_destroy", "remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd", null ],
+ [ "remmina_main_file_list_on_button_press", "remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9", null ],
+ [ "remmina_main_file_list_on_key_press", "remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193", null ],
+ [ "remmina_main_file_list_on_row_activated", "remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10", null ],
+ [ "remmina_main_file_model_on_sort", "remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7", null ],
+ [ "remmina_main_filter_visible_func", "remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800", null ],
+ [ "remmina_main_get_window", "remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e", null ],
+ [ "remmina_main_import_file_list", "remmina__main_8c.html#ac767825cb87a34531306cfb587216d20", null ],
+ [ "remmina_main_init", "remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300", null ],
+ [ "remmina_main_load_file_list_callback", "remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6", null ],
+ [ "remmina_main_load_file_tree_callback", "remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4", null ],
+ [ "remmina_main_load_file_tree_find", "remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497", null ],
+ [ "remmina_main_load_file_tree_group", "remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296", null ],
+ [ "remmina_main_load_file_tree_traverse", "remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5", null ],
+ [ "remmina_main_load_files", "remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7", null ],
+ [ "remmina_main_load_files_cb", "remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0", null ],
+ [ "remmina_main_new", "remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01", null ],
+ [ "remmina_main_on_action_application_about", "remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc", null ],
+ [ "remmina_main_on_action_application_default", "remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1", null ],
+ [ "remmina_main_on_action_application_mpchange", "remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229", null ],
+ [ "remmina_main_on_action_application_news", "remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6", null ],
+ [ "remmina_main_on_action_application_plugins", "remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc", null ],
+ [ "remmina_main_on_action_application_preferences", "remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92", null ],
+ [ "remmina_main_on_action_application_quit", "remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a", null ],
+ [ "remmina_main_on_action_collapse", "remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a", null ],
+ [ "remmina_main_on_action_connection_connect", "remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d", null ],
+ [ "remmina_main_on_action_connection_copy", "remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1", null ],
+ [ "remmina_main_on_action_connection_delete", "remmina__main_8c.html#a10e574723222f5df9db456977e62a093", null ],
+ [ "remmina_main_on_action_connection_edit", "remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc", null ],
+ [ "remmina_main_on_action_connection_external_tools", "remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1", null ],
+ [ "remmina_main_on_action_connection_new", "remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af", null ],
+ [ "remmina_main_on_action_expand", "remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8", null ],
+ [ "remmina_main_on_action_help_community", "remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32", null ],
+ [ "remmina_main_on_action_help_debug", "remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc", null ],
+ [ "remmina_main_on_action_help_donations", "remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277", null ],
+ [ "remmina_main_on_action_help_homepage", "remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a", null ],
+ [ "remmina_main_on_action_help_wiki", "remmina__main_8c.html#a0c32fe66988056b353220128611b9116", null ],
+ [ "remmina_main_on_action_tools_export", "remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d", null ],
+ [ "remmina_main_on_action_tools_import", "remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c", null ],
+ [ "remmina_main_on_date_column_sort_clicked", "remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db", null ],
+ [ "remmina_main_on_delete_event", "remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302", null ],
+ [ "remmina_main_on_drag_data_received", "remmina__main_8c.html#adf073486149762f547504020484bff70", null ],
+ [ "remmina_main_on_search_toggle", "remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9", null ],
+ [ "remmina_main_on_show", "remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2", null ],
+ [ "remmina_main_on_view_toggle", "remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766", null ],
+ [ "remmina_main_on_window_state_event", "remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79", null ],
+ [ "remmina_main_quick_search_enter", "remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427", null ],
+ [ "remmina_main_quick_search_on_changed", "remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657", null ],
+ [ "remmina_main_quick_search_on_icon_press", "remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f", null ],
+ [ "remmina_main_quickconnect", "remmina__main_8c.html#a802458852abacebfb16f1f4295806a01", null ],
+ [ "remmina_main_quickconnect_on_click", "remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d", null ],
+ [ "remmina_main_rmodestroy", "remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0", null ],
+ [ "remmina_main_save_before_destroy", "remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df", null ],
+ [ "remmina_main_save_expanded_group", "remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40", null ],
+ [ "remmina_main_save_expanded_group_func", "remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2", null ],
+ [ "remmina_main_save_size", "remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee", null ],
+ [ "remmina_main_select_file", "remmina__main_8c.html#aa20963aed43242994c88d5a97a546355", null ],
+ [ "remmina_main_selection_func", "remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66", null ],
+ [ "remmina_main_show_snap_welcome", "remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5", null ],
+ [ "remmina_main_show_warning_dialog", "remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7", null ],
+ [ "remmina_main_update_file_datetime", "remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a", null ],
+ [ "fun", "remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24", null ],
+ [ "main_actions", "remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3", null ],
+ [ "quick_connect_plugin_list", "remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c", null ],
+ [ "remmina_drop_types", "remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda", null ],
+ [ "remminamain", "remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89", null ],
+ [ "supported_mime_types", "remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__main_8c_source.html b/docs/remmina__main_8c_source.html
new file mode 100644
index 000000000..bb53c2f76
--- /dev/null
+++ b/docs/remmina__main_8c_source.html
@@ -0,0 +1,311 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_main.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__main_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<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-2020 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 &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gio/gdesktopappinfo.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</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_8h.html">remmina.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__string__array_8h.html">remmina_string_array.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__public_8h.html">remmina_public.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__file_8h.html">remmina_file.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__manager_8h.html">remmina_file_manager.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__editor_8h.html">remmina_file_editor.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="rcw_8h.html">rcw.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__about_8h.html">remmina_about.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__pref_8h.html">remmina_pref.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__pref__dialog_8h.html">remmina_pref_dialog.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__widget__pool_8h.html">remmina_widget_pool.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__plugin__manager_8h.html">remmina_plugin_manager.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__log_8h.html">remmina_log.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__icon_8h.html">remmina_icon.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__main_8h.html">remmina_main.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__exec_8h.html">remmina_exec.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__mpchange_8h.html">remmina_mpchange.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__external__tools_8h.html">remmina_external_tools.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__unlock_8h.html">remmina_unlock.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89"> 65</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="l00066"></a><span class="lineno"> 66</span>&#160;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</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="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#a64f3bfdd611684b04321d32f9bbb6c24"> 69</a></span>&#160;<span class="keywordtype">char</span> *<a class="code" href="remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a> = <span class="stringliteral">&quot;main&quot;</span>; <span class="comment">/* just setting the initial value of the calling function name, that is set in the remmina_trace */</span></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="keyword">enum</span> {</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445"> 72</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>,</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c"> 73</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>,</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b"> 74</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f"> 75</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756"> 76</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb"> 77</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d"> 78</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>,</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4"> 79</a></span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4">N_COLUMNS</a></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;};</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keyword">static</span></div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12"> 83</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="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/rdp&quot;</span>,</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; NULL</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;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3"> 92</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="l00093"></a><span class="lineno"> 93</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="l00094"></a><span class="lineno"> 94</span>&#160; { <span class="stringliteral">&quot;news&quot;</span>, <a class="code" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a>, NULL, NULL, NULL },</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</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="l00096"></a><span class="lineno"> 96</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="l00097"></a><span class="lineno"> 97</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="l00098"></a><span class="lineno"> 98</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>, NULL, NULL, NULL },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</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="l00100"></a><span class="lineno"> 100</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="l00101"></a><span class="lineno"> 101</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="l00102"></a><span class="lineno"> 102</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="l00103"></a><span class="lineno"> 103</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="l00104"></a><span class="lineno"> 104</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="l00105"></a><span class="lineno"> 105</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="l00106"></a><span class="lineno"> 106</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="l00107"></a><span class="lineno"> 107</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="l00108"></a><span class="lineno"> 108</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="l00109"></a><span class="lineno"> 109</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="l00110"></a><span class="lineno"> 110</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="l00111"></a><span class="lineno"> 111</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="l00112"></a><span class="lineno"> 112</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="l00113"></a><span class="lineno"> 113</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="l00114"></a><span class="lineno"> 114</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="l00115"></a><span class="lineno"> 115</span>&#160;};</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda"> 117</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="l00118"></a><span class="lineno"> 118</span>&#160;{</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { <span class="stringliteral">&quot;text/uri-list&quot;</span>, 0, 1 }</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;};</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"><a class="line" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c"> 122</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="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</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></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"> 126</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee"> 130</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="l00131"></a><span class="lineno"> 131</span>&#160;{</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</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="l00134"></a><span class="lineno"> 134</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="l00135"></a><span class="lineno"> 135</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="l00136"></a><span class="lineno"> 136</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</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="l00138"></a><span class="lineno"> 138</span>&#160; }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</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"><a class="line" href="remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2"> 141</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="l00142"></a><span class="lineno"> 142</span>&#160;{</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gchar *group;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</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="l00148"></a><span class="lineno"> 148</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#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, -1);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">if</span> (group) {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</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="l00151"></a><span class="lineno"> 151</span>&#160; g_free(group);</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__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40"> 155</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="l00156"></a><span class="lineno"> 156</span>&#160;{</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</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="l00159"></a><span class="lineno"> 159</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="l00160"></a><span class="lineno"> 160</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="l00161"></a><span class="lineno"> 161</span>&#160; }</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</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="l00163"></a><span class="lineno"> 163</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="l00164"></a><span class="lineno"> 164</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="l00165"></a><span class="lineno"> 165</span>&#160; }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;}</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5"> 172</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="l00173"></a><span class="lineno"> 173</span>&#160;{</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</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="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a>();</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;}</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2"> 184</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="l00185"></a><span class="lineno"> 185</span>&#160;{</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</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="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;}</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302"> 191</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="l00192"></a><span class="lineno"> 192</span>&#160;{</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">/* Forget the main window: it has been deleted */</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a> = NULL;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</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="l00199"></a><span class="lineno"> 199</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0"> 206</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main_rmodestroy</a>(gpointer data)</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; 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="l00209"></a><span class="lineno"> 209</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="l00210"></a><span class="lineno"> 210</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="l00211"></a><span class="lineno"> 211</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="l00212"></a><span class="lineno"> 212</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="l00213"></a><span class="lineno"> 213</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="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</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="l00216"></a><span class="lineno"> 216</span>&#160; g_object_unref(remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</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="l00218"></a><span class="lineno"> 218</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="l00219"></a><span class="lineno"> 219</span>&#160; g_free(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a>);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; g_free(remminamain);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; remminamain = NULL;</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="l00227"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8"> 227</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="l00228"></a><span class="lineno"> 228</span>&#160;{</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">if</span> (remminamain) {</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="comment">/* Schedule remminamain object destruction after</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> * GTK will finish to destroy the main window */</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</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="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df">remmina_main_save_before_destroy</a>();</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; g_idle_add(<a class="code" href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main_rmodestroy</a>, NULL);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</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;</div><div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12"> 240</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="l00241"></a><span class="lineno"> 241</span>&#160;{</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</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="l00244"></a><span class="lineno"> 244</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="l00245"></a><span class="lineno"> 245</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="l00246"></a><span class="lineno"> 246</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="l00247"></a><span class="lineno"> 247</span>&#160;}</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5"> 251</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="l00252"></a><span class="lineno"> 252</span>&#160;{</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; GtkBuilder *dlgbuilder = NULL;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; GtkWindow *parent;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordtype">int</span> result;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keyword">static</span> gboolean shown_once = FALSE;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gboolean need_snap_interface_connections = FALSE;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; GtkWidget* dsa;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</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="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> (shown_once)</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; shown_once = TRUE;</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; g_print(<span class="stringliteral">&quot;Remmina is compiled as a SNAP package.\n&quot;</span>);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</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="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">if</span> (remmina_secret_plugin == NULL) {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</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="l00271"></a><span class="lineno"> 271</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (!remmina_secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>()) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</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="l00275"></a><span class="lineno"> 275</span>&#160; need_snap_interface_connections = TRUE;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</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; <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="l00280"></a><span class="lineno"> 280</span>&#160; dlgbuilder = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_snap_info_dialog.glade&quot;</span>);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; dsa = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;dontshowagain&quot;</span>));</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">if</span> (dlgbuilder) {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; parent = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; dlg = GTK_WIDGET(gtk_builder_get_object(dlgbuilder, <span class="stringliteral">&quot;snapwarndlg&quot;</span>));</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dlg), parent);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; gtk_builder_connect_signals(dlgbuilder, NULL);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; result = gtk_dialog_run(GTK_DIALOG(dlg));</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span> (result == 1) {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</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="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; gtk_widget_destroy(dlg);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; g_object_unref(dlgbuilder);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; }</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66"> 302</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="l00303"></a><span class="lineno"> 303</span>&#160; gboolean path_currently_selected, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; guint context_id;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gchar buf[1000];</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (path_currently_selected)</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter(model, &amp;iter, path))</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</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; gtk_tree_model_get(model, &amp;iter, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">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>, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>,</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; &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>, -1);</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; 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="l00322"></a><span class="lineno"> 322</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="l00323"></a><span class="lineno"> 323</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="l00324"></a><span class="lineno"> 324</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="l00325"></a><span class="lineno"> 325</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="l00326"></a><span class="lineno"> 326</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</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="l00328"></a><span class="lineno"> 328</span>&#160; }</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;}</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6"> 332</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="l00333"></a><span class="lineno"> 333</span>&#160;{</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; store = GTK_LIST_STORE(user_data);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gchar* datetime;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; gtk_list_store_set(store, &amp;iter,</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">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="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">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="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">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="l00346"></a><span class="lineno"> 346</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">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="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">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="l00348"></a><span class="lineno"> 348</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; -1);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; g_free(datetime);</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"><a class="line" href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5"> 354</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 *node, GtkTreeStore *store, GtkTreeIter *parent)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;{</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; GtkTreeIter *iter;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a> *data;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; GNode *child;</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; iter = NULL;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (node-&gt;data) {</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; data = (<a class="code" href="remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90">RemminaGroupData</a>*)node-&gt;data;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; iter = g_new0(GtkTreeIter, 1);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gtk_tree_store_append(store, iter, parent);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gtk_tree_store_set(store, iter,</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, <span class="stringliteral">&quot;folder-symbolic&quot;</span>,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, data-&gt;name,</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, data-&gt;group,</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, data-&gt;datetime,</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, NULL,</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; -1);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; }</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</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="l00375"></a><span class="lineno"> 375</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="l00376"></a><span class="lineno"> 376</span>&#160; }</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; g_free(iter);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296"> 381</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="l00382"></a><span class="lineno"> 382</span>&#160;{</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; GNode *root;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</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="l00387"></a><span class="lineno"> 387</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="l00388"></a><span class="lineno"> 388</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="l00389"></a><span class="lineno"> 389</span>&#160;}</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c"> 391</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="l00392"></a><span class="lineno"> 392</span>&#160;{</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; GtkTreeModel *tree;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; gboolean ret;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</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="l00401"></a><span class="lineno"> 401</span>&#160; ret = TRUE;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">if</span> (filename == NULL) {</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</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="l00406"></a><span class="lineno"> 406</span>&#160; path = gtk_tree_model_get_path(tree, iter);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</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="l00408"></a><span class="lineno"> 408</span>&#160; gtk_tree_path_free(path);</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">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter)) {</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</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="l00412"></a><span class="lineno"> 412</span>&#160; }</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; }</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; g_free(group);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; g_free(filename);</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"> 417</span>&#160; ret = gtk_tree_model_iter_next(tree, 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;}</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e"> 421</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="l00422"></a><span class="lineno"> 422</span>&#160;{</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; GtkTreeIter iter;</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; <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="l00427"></a><span class="lineno"> 427</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="l00428"></a><span class="lineno"> 428</span>&#160; }</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;</div><div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497"> 431</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="l00432"></a><span class="lineno"> 432</span>&#160;{</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gboolean ret, match;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; gchar *group, *filename;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; GtkTreeIter child;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; match = FALSE;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; ret = TRUE;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; gtk_tree_model_get(tree, iter, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group, <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;filename, -1);</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; match = (filename == NULL &amp;&amp; g_strcmp0(group, match_group) == 0);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; g_free(group);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; g_free(filename);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">if</span> (match)</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_children(tree, &amp;child, iter)) {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</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="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">if</span> (match) {</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; memcpy(iter, &amp;child, <span class="keyword">sizeof</span>(GtkTreeIter));</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; }</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; ret = gtk_tree_model_iter_next(tree, iter);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; }</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="keywordflow">return</span> match;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;}</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4"> 459</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="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; GtkTreeIter iter, child;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; GtkTreeStore *store;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; gboolean found;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gchar* datetime;</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; store = GTK_TREE_STORE(user_data);</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; found = FALSE;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</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="l00471"></a><span class="lineno"> 471</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="l00472"></a><span class="lineno"> 472</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="l00473"></a><span class="lineno"> 473</span>&#160; }</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; datetime = <a class="code" href="remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a>(remminafile);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; gtk_tree_store_append(store, &amp;child, (found ? &amp;iter : NULL));</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; gtk_tree_store_set(store, &amp;child,</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">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="l00479"></a><span class="lineno"> 479</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">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="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">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="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">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="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">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="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, datetime,</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile),</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; -1);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; g_free(datetime);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;}</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;</div><div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7"> 489</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="l00490"></a><span class="lineno"> 490</span>&#160;{</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; gint columnid;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; GtkSortType order;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; gtk_tree_sortable_get_sort_column_id(sortable, &amp;columnid, &amp;order);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</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="l00497"></a><span class="lineno"> 497</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="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;}</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800"> 501</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="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; gchar *text;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; gchar *protocol, *name, *group, *server, *plugin, *date, *s;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; gboolean result = TRUE;</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; 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="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordflow">if</span> (text &amp;&amp; text[0]) {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; gtk_tree_model_get(model, iter,</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a>, &amp;protocol,</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a>, &amp;name,</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a>, &amp;group,</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a>, &amp;server,</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_COLUMN</a>, &amp;plugin,</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_COLUMN</a>, &amp;date,</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; -1);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</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="l00519"></a><span class="lineno"> 519</span>&#160; s = g_ascii_strdown(name ? name : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; g_free(name);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; name = s;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; s = g_ascii_strdown(group ? group : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; g_free(group);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; group = s;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; s = g_ascii_strdown(server ? server : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; g_free(server);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; server = s;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; s = g_ascii_strdown(plugin ? plugin : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; g_free(plugin);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; plugin = s;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; s = g_ascii_strdown(date ? date : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; g_free(date);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; date = s;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; result = (strstr(name, text) || strstr(group, text) || strstr(server, text) || strstr(plugin, text) || strstr(date, text));</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; }</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; g_free(protocol);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; g_free(name);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; g_free(group);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; g_free(server);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; g_free(plugin);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; g_free(date);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; }</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; g_free(text);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;}</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div><div class="line"><a name="l00547"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa20963aed43242994c88d5a97a546355"> 547</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="l00548"></a><span class="lineno"> 548</span>&#160;{</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; gchar *item_filename;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gboolean cmp;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</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="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</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#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_COLUMN</a>, &amp;item_filename, -1);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; cmp = g_strcmp0(item_filename, filename);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; g_free(item_filename);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">if</span> (cmp == 0) {</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</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="l00564"></a><span class="lineno"> 564</span>&#160; &amp;iter);</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</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="l00566"></a><span class="lineno"> 566</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="l00567"></a><span class="lineno"> 567</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; }</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</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="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; }</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;</div><div class="line"><a name="l00575"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7"> 575</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="l00576"></a><span class="lineno"> 576</span>&#160;{</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gint items_count;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gchar buf[200];</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; guint context_id;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; gint view_file_mode;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordtype">char</span> *save_selected_filename;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; GtkTreeModel *newmodel;</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; 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="l00586"></a><span class="lineno"> 586</span>&#160; <a class="code" href="remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40">remmina_main_save_expanded_group</a>();</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; 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="l00589"></a><span class="lineno"> 589</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="l00590"></a><span class="lineno"> 590</span>&#160; view_file_mode = <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</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; <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="l00593"></a><span class="lineno"> 593</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</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="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</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="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; }</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; <span class="keywordflow">switch</span> (view_file_mode) {</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>:</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="comment">/* Create new GtkTreeStore model */</span></div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; newmodel = GTK_TREE_MODEL(gtk_tree_store_new(7, 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="l00606"></a><span class="lineno"> 606</span>&#160; <span class="comment">/* Hide the Group column in the tree view mode */</span></div><div class="line"><a name="l00607"></a><span class="lineno"> 607</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="l00608"></a><span class="lineno"> 608</span>&#160; <span class="comment">/* Load groups first */</span></div><div class="line"><a name="l00609"></a><span class="lineno"> 609</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="l00610"></a><span class="lineno"> 610</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00611"></a><span class="lineno"> 611</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="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>:</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="comment">/* Create new GtkListStore model */</span></div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; newmodel = GTK_TREE_MODEL(gtk_list_store_new(7, 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="l00618"></a><span class="lineno"> 618</span>&#160; <span class="comment">/* Show the Group column in the list view mode */</span></div><div class="line"><a name="l00619"></a><span class="lineno"> 619</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="l00620"></a><span class="lineno"> 620</span>&#160; <span class="comment">/* Load files list */</span></div><div class="line"><a name="l00621"></a><span class="lineno"> 621</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="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; }</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="comment">/* Unset old model */</span></div><div class="line"><a name="l00626"></a><span class="lineno"> 626</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="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="comment">/* Destroy the old model and save the new one */</span></div><div class="line"><a name="l00629"></a><span class="lineno"> 629</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="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</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="l00632"></a><span class="lineno"> 632</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="l00633"></a><span class="lineno"> 633</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="l00634"></a><span class="lineno"> 634</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="l00635"></a><span class="lineno"> 635</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="l00636"></a><span class="lineno"> 636</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="l00637"></a><span class="lineno"> 637</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="l00638"></a><span class="lineno"> 638</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="l00639"></a><span class="lineno"> 639</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="l00640"></a><span class="lineno"> 640</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="l00641"></a><span class="lineno"> 641</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="l00642"></a><span class="lineno"> 642</span>&#160; <a class="code" href="remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e">remmina_main_expand_group</a>();</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="keywordflow">if</span> (save_selected_filename) {</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</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="l00646"></a><span class="lineno"> 646</span>&#160; g_free(save_selected_filename);</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; <span class="comment">/* Show in the status bar the total number of connections found */</span></div><div class="line"><a name="l00649"></a><span class="lineno"> 649</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="l00650"></a><span class="lineno"> 650</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="l00651"></a><span class="lineno"> 651</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="l00652"></a><span class="lineno"> 652</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="l00653"></a><span class="lineno"> 653</span>&#160;}</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;</div><div class="line"><a name="l00655"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0"> 655</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0">remmina_main_load_files_cb</a>()</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;{</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;}</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d"> 661</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="l00662"></a><span class="lineno"> 662</span>&#160;{</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</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="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</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="l00671"></a><span class="lineno"> 671</span>&#160;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">return</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; <a class="code" href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a>(remminafile);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</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="l00677"></a><span class="lineno"> 677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;}</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1"> 681</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="l00682"></a><span class="lineno"> 682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</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="l00685"></a><span class="lineno"> 685</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordflow">if</span> (<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="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</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="l00691"></a><span class="lineno"> 691</span>&#160;}</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd"> 693</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="l00694"></a><span class="lineno"> 694</span>&#160;{</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</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"><a class="line" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229"> 699</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="l00700"></a><span class="lineno"> 700</span>&#160;{</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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; <span class="keyword">const</span> gchar *username;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="keyword">const</span> gchar *domain;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keyword">const</span> gchar *group;</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; username = domain = group = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</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="l00712"></a><span class="lineno"> 712</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="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL) {</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</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="l00715"></a><span class="lineno"> 715</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="l00716"></a><span class="lineno"> 716</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="l00717"></a><span class="lineno"> 717</span>&#160; }</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; }</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keywordflow">if</span> (<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="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <a class="code" href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange_schedule</a>(TRUE, group, domain, username, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <span class="keywordflow">if</span> (remminafile != NULL)</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</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;}</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"><a class="line" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af"> 730</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="l00731"></a><span class="lineno"> 731</span>&#160;{</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordflow">if</span> (<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="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; widget = <a class="code" href="remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e">remmina_file_editor_new</a>();</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</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="l00740"></a><span class="lineno"> 740</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="l00741"></a><span class="lineno"> 741</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;}</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div><div class="line"><a name="l00745"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9"> 745</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9">remmina_main_on_search_toggle</a>()</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;{</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keywordflow">if</span> (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="l00748"></a><span class="lineno"> 748</span>&#160; gtk_search_bar_set_search_mode(remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>, TRUE);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; gtk_search_bar_set_search_mode(remminamain-&gt;<a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>, FALSE);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; }</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;}</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160;</div><div class="line"><a name="l00754"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766"> 754</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="l00755"></a><span class="lineno"> 755</span>&#160;{</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</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="l00757"></a><span class="lineno"> 757</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#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</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#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</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="l00760"></a><span class="lineno"> 760</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; }</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</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#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>) {</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</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#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>;</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</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="l00767"></a><span class="lineno"> 767</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</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; }</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;</div><div class="line"><a name="l00773"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1"> 773</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="l00774"></a><span class="lineno"> 774</span>&#160;{</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">if</span> (<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="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</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="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</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="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</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="l00787"></a><span class="lineno"> 787</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="l00788"></a><span class="lineno"> 788</span>&#160; gtk_widget_show(widget);</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; <span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00791"></a><span class="lineno"> 791</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="l00792"></a><span class="lineno"> 792</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="l00793"></a><span class="lineno"> 793</span>&#160; }</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#adfbfc580d25b58d09770a7d33ffe03cc"> 796</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="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; GtkWidget *widget;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; <span class="keywordflow">if</span> (<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="l00802"></a><span class="lineno"> 802</span>&#160; <span class="keywordflow">return</span>;</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; <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="l00805"></a><span class="lineno"> 805</span>&#160; <span class="keywordflow">return</span>;</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; 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="l00808"></a><span class="lineno"> 808</span>&#160; <span class="keywordflow">if</span> (widget) {</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</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="l00810"></a><span class="lineno"> 810</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; }</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;<span class="comment">/* Select the file previously selected */</span></div><div class="line"><a name="l00813"></a><span class="lineno"> 813</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="l00814"></a><span class="lineno"> 814</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="l00815"></a><span class="lineno"> 815</span>&#160; }</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160;}</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;</div><div class="line"><a name="l00818"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093"> 818</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="l00819"></a><span class="lineno"> 819</span>&#160;{</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; gchar *delfilename;</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</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="l00825"></a><span class="lineno"> 825</span>&#160; <span class="keywordflow">return</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; <span class="keywordflow">if</span> (<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="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</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="l00831"></a><span class="lineno"> 831</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to delete \&quot;%s\&quot;?&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="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_YES) {</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; 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="l00834"></a><span class="lineno"> 834</span>&#160; <a class="code" href="remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4">remmina_file_delete</a>(delfilename);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; g_free(delfilename);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; }</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <a class="code" href="remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12">remmina_main_clear_selection_data</a>();</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92"> 843</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="l00844"></a><span class="lineno"> 844</span>&#160;{</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; <span class="keywordflow">if</span> (<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="l00847"></a><span class="lineno"> 847</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; GtkDialog *dialog = <a class="code" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a>(0, remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1"> 853</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="l00854"></a><span class="lineno"> 854</span>&#160;{</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; g_autoptr(GError) error = NULL;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; GDesktopAppInfo *desktop_info;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; GAppInfo *info = NULL;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</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="l00860"></a><span class="lineno"> 860</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160;</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; desktop_info = g_desktop_app_info_new (<span class="keywordtype">id</span>);</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; <span class="keywordflow">if</span> (!desktop_info)</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; info = G_APP_INFO (desktop_info);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</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="l00869"></a><span class="lineno"> 869</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="l00870"></a><span class="lineno"> 870</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="l00871"></a><span class="lineno"> 871</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="l00872"></a><span class="lineno"> 872</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00873"></a><span class="lineno"> 873</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="l00874"></a><span class="lineno"> 874</span>&#160; g_app_info_get_name (info),</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <a class="code" href="remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; }</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;</div><div class="line"><a name="l00879"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a"> 879</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="l00880"></a><span class="lineno"> 880</span>&#160;{</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; <span class="comment">// Called by quit signal in remmina_main.glade</span></div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; g_debug (<span class="stringliteral">&quot;Quit intercept&quot;</span>);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</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="l00885"></a><span class="lineno"> 885</span>&#160;}</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;</div><div class="line"><a name="l00887"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db"> 887</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="l00888"></a><span class="lineno"> 888</span>&#160;{</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</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#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>) {</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</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#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</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="l00892"></a><span class="lineno"> 892</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; }</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160;}</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20"> 897</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="l00898"></a><span class="lineno"> 898</span>&#160;{</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; GtkWidget *dlg;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; GSList *element;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; gchar *path;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; GString *err;</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = NULL;</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; gboolean imported;</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; err = g_string_new(NULL);</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; imported = FALSE;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; <span class="keywordflow">for</span> (element = files; element; element = element-&gt;next) {</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; path = (gchar*)element-&gt;data;</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</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="l00913"></a><span class="lineno"> 913</span>&#160; <span class="keywordflow">if</span> (plugin &amp;&amp; (remminafile = plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">import_func</a>(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="l00914"></a><span class="lineno"> 914</span>&#160; <a class="code" href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a>(remminafile);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; imported = TRUE;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; g_string_append(err, path);</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; g_string_append_c(err, <span class="charliteral">&#39;\n&#39;</span>);</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; }</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; remminafile = NULL;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; }</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; g_free(path);</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; }</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; g_slist_free(files);</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">if</span> (err-&gt;len &gt; 0) {</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00930"></a><span class="lineno"> 930</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="l00931"></a><span class="lineno"> 931</span>&#160; _(<span class="stringliteral">&quot;Unable to import:\n%s&quot;</span>), err-&gt;str);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</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="l00933"></a><span class="lineno"> 933</span>&#160; gtk_widget_show(dlg);</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; g_string_free(err, TRUE);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="keywordflow">if</span> (imported) {</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; }</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160;}</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"><a class="line" href="remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d"> 941</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="l00942"></a><span class="lineno"> 942</span>&#160;{</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; GSList *files;</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"> 946</span>&#160; <span class="keywordflow">if</span> (response_id == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; files = gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(dialog));</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; }</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;}</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;</div><div class="line"><a name="l00953"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c"> 953</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="l00954"></a><span class="lineno"> 954</span>&#160;{</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</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="l00959"></a><span class="lineno"> 959</span>&#160; GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; gtk_file_chooser_set_select_multiple(GTK_FILE_CHOOSER(dialog), TRUE);</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</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="l00962"></a><span class="lineno"> 962</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160;}</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160;</div><div class="line"><a name="l00965"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d"> 965</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="l00966"></a><span class="lineno"> 966</span>&#160;{</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; GtkWidget *dialog;</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="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="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160;</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</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="l00976"></a><span class="lineno"> 976</span>&#160; <span class="keywordflow">if</span> (remminafile == NULL)</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</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="l00979"></a><span class="lineno"> 979</span>&#160; <span class="keywordflow">if</span> (plugin) {</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</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="l00981"></a><span class="lineno"> 981</span>&#160; GTK_FILE_CHOOSER_ACTION_SAVE, _(<span class="stringliteral">&quot;_Save&quot;</span>), GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; <span class="keywordflow">if</span> (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT) {</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1">export_func</a>(remminafile, gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog)));</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; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</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="l00988"></a><span class="lineno"> 988</span>&#160; _(<span class="stringliteral">&quot;This protocol does not support exporting.&quot;</span>));</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</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="l00990"></a><span class="lineno"> 990</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; }</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160;}</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;</div><div class="line"><a name="l00995"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc"> 995</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="l00996"></a><span class="lineno"> 996</span>&#160;{</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</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="l00999"></a><span class="lineno"> 999</span>&#160;}</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;</div><div class="line"><a name="l01001"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a"> 1001</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="l01002"></a><span class="lineno"> 1002</span>&#160;{</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</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="l01005"></a><span class="lineno"> 1005</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116"> 1007</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="l01008"></a><span class="lineno"> 1008</span>&#160;{</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</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="l01011"></a><span class="lineno"> 1011</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32"> 1013</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="l01014"></a><span class="lineno"> 1014</span>&#160;{</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</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="l01017"></a><span class="lineno"> 1017</span>&#160;}</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;</div><div class="line"><a name="l01019"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277"> 1019</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="l01020"></a><span class="lineno"> 1020</span>&#160;{</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</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="l01023"></a><span class="lineno"> 1023</span>&#160;}</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;</div><div class="line"><a name="l01025"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc"> 1025</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="l01026"></a><span class="lineno"> 1026</span>&#160;{</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; <a class="code" href="remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d">remmina_log_start</a>();</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;}</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;</div><div class="line"><a name="l01031"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc"> 1031</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="l01032"></a><span class="lineno"> 1032</span>&#160;{</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</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="l01035"></a><span class="lineno"> 1035</span>&#160;};</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;</div><div class="line"><a name="l01037"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6"> 1037</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a>(GSimpleAction *action, GVariant *param, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = 0;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> = 0;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;};</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"><a class="line" href="remmina__main_8c.html#a802458852abacebfb16f1f4295806a01"> 1045</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="l01046"></a><span class="lineno"> 1046</span>&#160;{</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; gchar* server;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; gchar *qcp;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; <span class="comment">/* Save quick connect protocol if different from the previous one */</span></div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</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="l01055"></a><span class="lineno"> 1055</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="l01056"></a><span class="lineno"> 1056</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="l01057"></a><span class="lineno"> 1057</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="l01058"></a><span class="lineno"> 1058</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; }</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; remminafile = <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>();</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</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="l01063"></a><span class="lineno"> 1063</span>&#160;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</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="l01065"></a><span class="lineno"> 1065</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="l01066"></a><span class="lineno"> 1066</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="l01067"></a><span class="lineno"> 1067</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="l01068"></a><span class="lineno"> 1068</span>&#160; g_free(server);</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <a class="code" href="rcw_8c.html#a1b7a771392e15e527005305e71cc2546">rcw_open_from_file</a>(remminafile);</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l01075"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d"> 1075</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="l01076"></a><span class="lineno"> 1076</span>&#160;{</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</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="l01079"></a><span class="lineno"> 1079</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="l01080"></a><span class="lineno"> 1080</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;}</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</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="l01084"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427"> 1084</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="l01085"></a><span class="lineno"> 1085</span>&#160;{</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</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="l01087"></a><span class="lineno"> 1087</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="l01088"></a><span class="lineno"> 1088</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a"> 1090</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="l01091"></a><span class="lineno"> 1091</span>&#160;{</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</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="l01094"></a><span class="lineno"> 1094</span>&#160;}</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;</div><div class="line"><a name="l01096"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8"> 1096</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="l01097"></a><span class="lineno"> 1097</span>&#160;{</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</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="l01100"></a><span class="lineno"> 1100</span>&#160;}</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;<span class="comment">/* Handle double click on a row in the connections list */</span></div><div class="line"><a name="l01103"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10"> 1103</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="l01104"></a><span class="lineno"> 1104</span>&#160;{</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;<span class="comment">/* If a connection was selected then execute the default action */</span></div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</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="l01108"></a><span class="lineno"> 1108</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="l01109"></a><span class="lineno"> 1109</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a>:</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</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="l01111"></a><span class="lineno"> 1111</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a>:</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</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="l01115"></a><span class="lineno"> 1115</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;}</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;<span class="comment">/* Show the popup menu by the right button mouse click */</span></div><div class="line"><a name="l01121"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9"> 1121</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="l01122"></a><span class="lineno"> 1122</span>&#160;{</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; <span class="keywordflow">if</span> (event-&gt;button == MOUSE_BUTTON_RIGHT) {</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</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="l01126"></a><span class="lineno"> 1126</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</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="l01128"></a><span class="lineno"> 1128</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</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="l01130"></a><span class="lineno"> 1130</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; }</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160;}</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="comment">/* Show the popup menu by the menu key */</span></div><div class="line"><a name="l01138"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193"> 1138</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="l01139"></a><span class="lineno"> 1139</span>&#160;{</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; <span class="keywordflow">if</span> (event-&gt;keyval == GDK_KEY_Menu) {</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</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="l01144"></a><span class="lineno"> 1144</span>&#160; GDK_GRAVITY_CENTER, GDK_GRAVITY_CENTER,</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160; (GdkEvent*)event);</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</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="l01148"></a><span class="lineno"> 1148</span>&#160;<span class="preprocessor">#endif</span></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">return</span> FALSE;</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;}</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"><a class="line" href="remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f"> 1153</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="l01154"></a><span class="lineno"> 1154</span>&#160;{</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <span class="keywordflow">if</span> (icon_pos == GTK_ENTRY_ICON_SECONDARY) {</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; gtk_entry_set_text(entry, <span class="stringliteral">&quot;&quot;</span>);</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#a1cac4199e40e35bf3fcdb98841615657"> 1161</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="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; <span class="comment">/* If a search text was input then temporary set the file mode to list */</span></div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</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="l01166"></a><span class="lineno"> 1166</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="l01167"></a><span class="lineno"> 1167</span>&#160; <span class="comment">/* File view mode changed, put it to override and reload list */</span></div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</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="l01169"></a><span class="lineno"> 1169</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; }</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</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="l01173"></a><span class="lineno"> 1173</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="l01174"></a><span class="lineno"> 1174</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="l01175"></a><span class="lineno"> 1175</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; }</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; }</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</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="l01179"></a><span class="lineno"> 1179</span>&#160;}</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160;</div><div class="line"><a name="l01181"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#adf073486149762f547504020484bff70"> 1181</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="l01182"></a><span class="lineno"> 1182</span>&#160; GtkSelectionData *data, guint info, guint time, gpointer user_data)</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;{</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; gchar **uris;</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; GSList *files = NULL;</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; gint i;</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; uris = g_uri_list_extract_uris((<span class="keyword">const</span> gchar*)gtk_selection_data_get_data(data));</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <span class="keywordflow">for</span> (i = 0; uris[i]; i++) {</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</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="l01192"></a><span class="lineno"> 1192</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; files = g_slist_append(files, g_strdup(uris[i] + 7));</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; }</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; g_strfreev(uris);</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; <a class="code" href="remmina__main_8c.html#ac767825cb87a34531306cfb587216d20">remmina_main_import_file_list</a>(files);</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;}</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;<span class="comment">/* Add a new menuitem to the Tools menu */</span></div><div class="line"><a name="l01200"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f"> 1200</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="l01201"></a><span class="lineno"> 1201</span>&#160;{</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</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="l01204"></a><span class="lineno"> 1204</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="l01205"></a><span class="lineno"> 1205</span>&#160;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; gtk_widget_show(menuitem);</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</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="l01208"></a><span class="lineno"> 1208</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#aafa38623d15ab10ab2fe23b262a8cd17">exec_func</a>), NULL);</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;}</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"><a class="line" href="remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79"> 1212</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="l01213"></a><span class="lineno"> 1213</span>&#160;{</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;}</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;<span class="comment">/* Remmina main window initialization */</span></div><div class="line"><a name="l01219"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300"> 1219</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="l01220"></a><span class="lineno"> 1220</span>&#160;{</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; <span class="keywordtype">int</span> i, qcp_idx, qcp_actidx;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; <span class="keywordtype">char</span> *name;</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"> 1225</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Initializing the Remmina main window&quot;</span>);</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</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="l01227"></a><span class="lineno"> 1227</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="l01228"></a><span class="lineno"> 1228</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="l01229"></a><span class="lineno"> 1229</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</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="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> (!<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="l01233"></a><span class="lineno"> 1233</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="l01234"></a><span class="lineno"> 1234</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="l01235"></a><span class="lineno"> 1235</span>&#160; gtk_window_maximize(remminamain-&gt;<a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; }</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; <span class="comment">/* Honor global preferences Search Bar visibility */</span></div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</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="l01240"></a><span class="lineno"> 1240</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="l01241"></a><span class="lineno"> 1241</span>&#160;</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</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="l01243"></a><span class="lineno"> 1243</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="l01244"></a><span class="lineno"> 1244</span>&#160;</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; <span class="comment">/* Add available quick connect protocols to remminamain-&gt;combo_quick_connect_protocol */</span></div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; qcp_idx = qcp_actidx = 0;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</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="l01248"></a><span class="lineno"> 1248</span>&#160; name = <a class="code" href="remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c">quick_connect_plugin_list</a>[i];</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</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="l01250"></a><span class="lineno"> 1250</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="l01251"></a><span class="lineno"> 1251</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="l01252"></a><span class="lineno"> 1252</span>&#160; qcp_actidx = qcp_idx;</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; qcp_idx ++;</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; }</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; 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="l01257"></a><span class="lineno"> 1257</span>&#160;</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; <span class="comment">/* Connect the group accelerators to the GtkWindow */</span></div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; <span class="comment">//gtk_window_add_accel_group(remminamain-&gt;window, remminamain-&gt;accelgroup_shortcuts);</span></div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; <span class="comment">/* Set the Quick Connection */</span></div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</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="l01262"></a><span class="lineno"> 1262</span>&#160; <span class="comment">/* Set the TreeView for the files list */</span></div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; gtk_tree_selection_set_select_function(</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</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="l01265"></a><span class="lineno"> 1265</span>&#160; <a class="code" href="remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66">remmina_main_selection_func</a>, NULL, NULL);</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</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="l01268"></a><span class="lineno"> 1268</span>&#160; <span class="comment">/* Load the files list */</span></div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <span class="comment">/* Drag-n-drop support */</span></div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</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="l01273"></a><span class="lineno"> 1273</span>&#160;</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; <span class="comment">/* Finish initialization */</span></div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</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="l01276"></a><span class="lineno"> 1276</span>&#160;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</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="l01278"></a><span class="lineno"> 1278</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="l01279"></a><span class="lineno"> 1279</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="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"> 1282</span>&#160;<span class="comment">/* Signal handler for &quot;show&quot; on remminamain-&gt;window */</span></div><div class="line"><a name="l01283"></a><span class="lineno"><a class="line" href="remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2"> 1283</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="l01284"></a><span class="lineno"> 1284</span>&#160;{</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; <a class="code" href="remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5">remmina_main_show_snap_welcome</a>();</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160;<span class="preprocessor">#endif</span></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"> 1291</span>&#160;<span class="comment">/* RemminaMain instance */</span></div><div class="line"><a name="l01292"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7"> 1292</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="l01293"></a><span class="lineno"> 1293</span>&#160;{</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160; GSimpleActionGroup *actions;</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160; GtkAccelGroup *accel_group = NULL;</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160; remminamain = g_new0(<a class="code" href="struct___remmina_main.html">RemminaMain</a>, 1);</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</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="l01300"></a><span class="lineno"> 1300</span>&#160; <span class="comment">/* Assign UI widgets to the private members */</span></div><div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>&#160; remminamain-&gt;<a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a> = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_main.glade&quot;</span>);</div><div class="line"><a name="l01302"></a><span class="lineno"> 1302</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="l01303"></a><span class="lineno"> 1303</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="l01304"></a><span class="lineno"> 1304</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="l01305"></a><span class="lineno"> 1305</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="l01306"></a><span class="lineno"> 1306</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="l01307"></a><span class="lineno"> 1307</span>&#160; }</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>&#160; <span class="comment">/* New Button */</span></div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</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="l01310"></a><span class="lineno"> 1310</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="l01311"></a><span class="lineno"> 1311</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="l01312"></a><span class="lineno"> 1312</span>&#160; <span class="comment">/* Search bar */</span></div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</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="l01314"></a><span class="lineno"> 1314</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="l01315"></a><span class="lineno"> 1315</span>&#160; <span class="comment">/* view mode list/tree */</span></div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</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="l01317"></a><span class="lineno"> 1317</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="l01318"></a><span class="lineno"> 1318</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="l01319"></a><span class="lineno"> 1319</span>&#160;</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</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="l01322"></a><span class="lineno"> 1322</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="l01323"></a><span class="lineno"> 1323</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="l01324"></a><span class="lineno"> 1324</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="l01325"></a><span class="lineno"> 1325</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="l01326"></a><span class="lineno"> 1326</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="l01327"></a><span class="lineno"> 1327</span>&#160; }</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; <span class="comment">/* View mode radios */</span></div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</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="l01330"></a><span class="lineno"> 1330</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="l01331"></a><span class="lineno"> 1331</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l01332"></a><span class="lineno"> 1332</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="l01333"></a><span class="lineno"> 1333</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="l01334"></a><span class="lineno"> 1334</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="l01335"></a><span class="lineno"> 1335</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="l01336"></a><span class="lineno"> 1336</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="l01337"></a><span class="lineno"> 1337</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</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="l01339"></a><span class="lineno"> 1339</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="l01340"></a><span class="lineno"> 1340</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="l01341"></a><span class="lineno"> 1341</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160; actions = g_simple_action_group_new();</div><div class="line"><a name="l01343"></a><span class="lineno"> 1343</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="l01344"></a><span class="lineno"> 1344</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="l01345"></a><span class="lineno"> 1345</span>&#160; g_object_unref(actions);</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; <span class="comment">/* Accelerators */</span></div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; accel_group = gtk_accel_group_new();</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</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="l01349"></a><span class="lineno"> 1349</span>&#160; gtk_accel_group_connect (accel_group, GDK_KEY_Q, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</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="l01351"></a><span class="lineno"> 1351</span>&#160; gtk_accel_group_connect (accel_group, GDK_KEY_P, GDK_CONTROL_MASK, 0,</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; g_cclosure_new_swap (G_CALLBACK (<a class="code" href="remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a>), NULL, NULL));</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</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="l01356"></a><span class="lineno"> 1356</span>&#160; <span class="comment">/* Initialize the window and load the preferences */</span></div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; <a class="code" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a>();</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</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="l01359"></a><span class="lineno"> 1359</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc"> 1361</a></span>&#160;GtkWindow* <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>()</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160;{</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; <span class="keywordflow">if</span> (!remminamain)</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</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="l01366"></a><span class="lineno"> 1366</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</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="l01368"></a><span class="lineno"> 1368</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</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="l01370"></a><span class="lineno"> 1370</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="l01371"></a><span class="lineno"> 1371</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a"> 1373</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="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">if</span> (!remminamain)</div><div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160; <a class="code" href="remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7">remmina_main_load_files</a>();</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;}</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"><a class="line" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7"> 1380</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="l01381"></a><span class="lineno"> 1381</span>&#160;{</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160; GtkWidget* dialog;</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160;</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</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="l01385"></a><span class="lineno"> 1385</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="l01386"></a><span class="lineno"> 1386</span>&#160; message, g_get_application_name());</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; }</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb">DATE_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="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#l00067">remmina_plugin_manager.c:67</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#l00131">remmina_log.c:131</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_af146cc1f982c98a9c8a5ac43cc1508f3"><div class="ttname"><a href="remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3">main_actions</a></div><div class="ttdeci">static GActionEntry main_actions[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00092">remmina_main.c:92</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae293a1fa591d3db78bd587c5af9c9101"><div class="ttname"><a href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref::hide_searchbar</a></div><div class="ttdeci">gboolean hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00133">remmina_pref.h:133</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</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="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#l00059">remmina_main.h:59</a></div></div>
+<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#l00449">remmina_file.c:449</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#l00052">remmina_main.h:52</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d">FILENAME_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_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#l00459">remmina_main.c:459</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#l00108">plugin.h:108</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#l01001">remmina_main.c:1001</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df"><div class="ttname"><a href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00047">remmina_pref.h:47</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#l00123">remmina_pref.h:123</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#l00251">remmina_main.c:251</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#l01361">remmina_main.c:1361</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#l00088">remmina_main.h:88</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#l00082">remmina_main.h:82</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#l00155">remmina_main.c:155</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a71097b95723932e40835fa00f1b1eba0"><div class="ttname"><a href="remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0">remmina_main_rmodestroy</a></div><div class="ttdeci">static gboolean remmina_main_rmodestroy(gpointer data)</div><div class="ttdoc">Called after the main window is destroyed, will cleanup remminamain object and related data...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00206">remmina_main.c:206</a></div></div>
+<div class="ttc" id="remmina__external__tools_8c_html_abe70273f7d1cbab092c6f6017695c56d"><div class="ttname"><a href="remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d">remmina_external_tools_from_filename</a></div><div class="ttdeci">gboolean remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__external__tools_8c_source.html#l00056">remmina_external_tools.c:56</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="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#l00078">remmina_main.h:78</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</a></div></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#l00661">remmina_main.c:661</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac">REMMINA_PLUGIN_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00048">plugin.h:48</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a7a1e318355fd97b304ce2675d02ea8b9"><div class="ttname"><a href="remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9">remmina_main_on_search_toggle</a></div><div class="ttdeci">void remmina_main_on_search_toggle()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00745">remmina_main.c:745</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#l00041">types.h:41</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#l00053">remmina_main.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_ac4f2b0118490cede0577aaee9f2e0b5f"><div class="ttname"><a href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">_RemminaFilePlugin::export_hints</a></div><div class="ttdeci">const gchar * export_hints</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00105">plugin.h:105</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a13f13a6a4280268656f258cb5aeff031"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00388">remmina_plugin_manager.c:388</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a2d8aed506a9e65e444507b6eae74bbb0"><div class="ttname"><a href="remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0">remmina_main_load_files_cb</a></div><div class="ttdeci">void remmina_main_load_files_cb()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00655">remmina_main.c:655</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="struct___remmina_tool_plugin_html_aafa38623d15ab10ab2fe23b262a8cd17"><div class="ttname"><a href="struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17">_RemminaToolPlugin::exec_func</a></div><div class="ttdeci">void(* exec_func)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00115">plugin.h:115</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#l00045">remmina_main.h:45</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#l00189">remmina_pref.h:189</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#l01121">remmina_main.c:1121</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#l00501">remmina_main.c:501</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b">GROUP_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00074">remmina_main.c:74</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_afce14b101da527ada9b44a4503e91e07"><div class="ttname"><a href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a></div><div class="ttdeci">RemminaFilePlugin * remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00510">remmina_plugin_manager.c:510</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a0b4ec1e78b79adaa180a385ac50c20d6"><div class="ttname"><a href="remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a></div><div class="ttdeci">void remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01037">remmina_main.c:1037</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_a06196f19abc15526514a5aa59a568798"><div class="ttname"><a href="remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798">remmina_file_manager_free_group_tree</a></div><div class="ttdeci">void remmina_file_manager_free_group_tree(GNode *node)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00307">remmina_file_manager.c:307</a></div></div>
+<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#l00491">remmina_plugin_manager.c:491</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#l00953">remmina_main.c:953</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ac448c53d7a2066763d2b747d269f60ee"><div class="ttname"><a href="remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee">remmina_main_save_size</a></div><div class="ttdeci">static void remmina_main_save_size(void)</div><div class="ttdoc">Save the Remmina Main Window size to assure the main geometry at each restart. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00130">remmina_main.c:130</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#l00699">remmina_main.c:699</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ac1a3a51f6d7f6a2411f9b38de860d766"><div class="ttname"><a href="remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766">remmina_main_on_view_toggle</a></div><div class="ttdeci">void remmina_main_on_view_toggle()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00754">remmina_main.c:754</a></div></div>
+<div class="ttc" id="remmina__mpchange_8h_html"><div class="ttname"><a href="remmina__mpchange_8h.html">remmina_mpchange.h</a></div></div>
+<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_af80ed314f91d653237249d839c7fc3b2"><div class="ttname"><a href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a></div><div class="ttdeci">void remmina_icon_populate_menu(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00264">remmina_icon.c:264</a></div></div>
+<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 file has been modified. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00789">remmina_file.c:789</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#l00489">remmina_main.c:489</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#l00179">remmina_pref.h:179</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#l01292">remmina_main.c:1292</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#l01025">remmina_main.c:1025</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="struct___remmina_secret_plugin_html_a519a411cb2091da2176258d87bcea6d4"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin::is_service_available</a></div><div class="ttdeci">gboolean(* is_service_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00138">plugin.h:138</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="remmina__file_8c_html_ac952f8ddb715314f11cef1ccc513fb7e"><div class="ttname"><a href="remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e">remmina_file_generate_filename</a></div><div class="ttdeci">void remmina_file_generate_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00108">remmina_file.c:108</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 exapnded group before to close Remmina. ...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00172">remmina_main.c:172</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a4ac66b7ebefb9bd8167737eb1af83cde"><div class="ttname"><a href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00056">plugin.h:56</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a71f485dba1b11bf8cba129920767b5e6"><div class="ttname"><a href="remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6">remmina_main_load_file_list_callback</a></div><div class="ttdeci">static void remmina_main_load_file_list_callback(RemminaFile *remminafile, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00332">remmina_main.c:332</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a2a6ba822ef89ef8ad9f19340c2c8b7f5"><div class="ttname"><a href="remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5">remmina_main_load_file_tree_traverse</a></div><div class="ttdeci">static gboolean remmina_main_load_file_tree_traverse(GNode *node, GtkTreeStore *store, GtkTreeIter *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00354">remmina_main.c:354</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#l00083">remmina_main.h:83</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756">PLUGIN_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_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#l00431">remmina_main.c:431</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#l00089">remmina_main.h:89</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#l01007">remmina_main.c:1007</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_ab721bcec1729b6681a71c2fb196878f1"><div class="ttname"><a href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1">_RemminaFilePlugin::export_func</a></div><div class="ttdeci">gboolean(* export_func)(RemminaFile *file, const gchar *to_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00104">plugin.h:104</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#l00183">remmina_pref.h:183</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#l00853">remmina_main.c:853</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#l00129">plugin.h:129</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#l01212">remmina_main.c:1212</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4">N_COLUMNS</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__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</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#l00058">remmina_exec.h:58</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#l01373">remmina_main.c:1373</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#l00050">remmina_main.h:50</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#l00381">remmina_main.c:381</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#l00773">remmina_main.c:773</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#l00437">remmina_plugin_manager.c:437</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#l00897">remmina_main.c:897</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#l01090">remmina_main.c:1090</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#l00049">remmina_main.h:49</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#l01019">remmina_main.c:1019</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="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#l00086">remmina_main.h:86</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_ac84b71e36fe02a6ff8cb295269316960"><div class="ttname"><a href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange_schedule</a></div><div class="ttdeci">void remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00425">remmina_mpchange.c:425</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_main_html_a35f10af8065b3b64ba6f26db60061d39"><div class="ttname"><a href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">_RemminaMain::combo_quick_connect_protocol</a></div><div class="ttdeci">GtkComboBoxText * combo_quick_connect_protocol</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_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#l00188">remmina_pref.h:188</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#l00184">remmina_pref.h:184</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#l00064">remmina_main.h:64</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#l01181">remmina_main.c:1181</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#l01380">remmina_main.c:1380</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#l00730">remmina_main.c:730</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#l01084">remmina_main.c:1084</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#l00723">remmina_file.c:723</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7"><div class="ttname"><a href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00046">remmina_pref.h:46</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#l00056">remmina_main.h:56</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#l00051">remmina_main.h:51</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a8ab78913d299df665a408a8a5ec51bbe"><div class="ttname"><a href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a></div><div class="ttdeci">void remmina_string_array_free(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00170">remmina_string_array.c:170</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac13f1310a2625b29defdf5b0ba8fd2d0"><div class="ttname"><a href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">_RemminaPref::main_sort_column_id</a></div><div class="ttdeci">gint main_sort_column_id</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00182">remmina_pref.h:182</a></div></div>
+<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#l00181">remmina_pref.h:181</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#l00071">remmina_main.h:71</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#l01161">remmina_main.c:1161</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#l00843">remmina_main.c:843</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#l00046">remmina_main.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b13dc96ccf8ebad045f02c58eb1d005"><div class="ttname"><a href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref::periodic_rmnews_get_count</a></div><div class="ttdeci">glong periodic_rmnews_get_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00207">remmina_pref.h:207</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3"><div class="ttname"><a href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00052">remmina_pref.h:52</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#l00081">remmina_main.h:81</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#l00818">remmina_main.c:818</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="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#l00175">remmina_pref.h:175</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445">PROTOCOL_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00072">remmina_main.c:72</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_aff90e964c6541b1af02adf7ea39e6e02"><div class="ttname"><a href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00044">remmina_string_array.c:44</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3d19095f74e9b7c92d74f11bd5a39a8c"><div class="ttname"><a href="remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a></div><div class="ttdeci">void remmina_file_touch(RemminaFile *remminafile)</div><div class="ttdoc">Update the atime and mtime of a given filename. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00839">remmina_file.c:839</a></div></div>
+<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#l01603">remmina_file_editor.c:1603</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#l00141">remmina_main.c:141</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#l01283">remmina_main.c:1283</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#l01219">remmina_main.c:1219</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#l00069">remmina_main.h:69</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f">SERVER_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00075">remmina_main.c:75</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#l00547">remmina_main.c:547</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#l00191">remmina_main.c:191</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#l01013">remmina_main.c:1013</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#l00060">remmina_main.h:60</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="ttdoc">Called when the main window is destroyed via a call from gtk_widget_destroy() </div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00227">remmina_main.c:227</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#l00090">remmina_file.c:90</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#l00070">remmina_main.h:70</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#l01103">remmina_main.c:1103</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#l00391">remmina_main.c:391</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#l00091">remmina_main.h:91</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#l00302">remmina_main.c:302</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#l00681">remmina_main.c:681</a></div></div>
+<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#l00240">remmina_main.c:240</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#l03892">rcw.c:3892</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#l00887">remmina_main.c:887</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__main_8c_html_a64f3bfdd611684b04321d32f9bbb6c24"><div class="ttname"><a href="remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a></div><div class="ttdeci">char * fun</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__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#l01138">remmina_main.c:1138</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#l00045">remmina_about.c:45</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#l01564">remmina_file_editor.c:1564</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#l00057">remmina_exec.h:57</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#l00359">remmina_plugin_manager.c:359</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#l01200">remmina_main.c:1200</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__pref_8h_html_a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a"><div class="ttname"><a href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00051">remmina_pref.h:51</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</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#l00796">remmina_main.c:796</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#l00084">remmina_main.h:84</a></div></div>
+<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#l03847">rcw.c:3847</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#l00083">remmina_main.c:83</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#l01096">remmina_main.c:1096</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#l00079">remmina.c:79</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#l00047">remmina_main.h:47</a></div></div>
+<div class="ttc" id="remmina__exec_8c_html_aaa67e07e2426828d7e7b9b30d2038d31"><div class="ttname"><a href="remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31">remmina_application_condexit</a></div><div class="ttdeci">void remmina_application_condexit(RemminaCondExitType why)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__exec_8c_source.html#l00117">remmina_exec.c:117</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a16091735af5c6ee31fb794a5fb860342"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00613">remmina_pref_dialog.c:613</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<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#l00122">remmina_main.c:122</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#l00561">remmina_file.c:561</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#l01045">remmina_main.c:1045</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_af1bc6a2734ca8060af2943bf0dfca8d7"><div class="ttname"><a href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">_RemminaFilePlugin::import_func</a></div><div class="ttdeci">RemminaFile *(* import_func)(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00102">plugin.h:102</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#l00117">remmina_main.c:117</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#l00062">remmina_main.h:62</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#l00065">remmina_main.c:65</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#l01584">remmina_file_editor.c:1584</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#l00879">remmina_main.c:879</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#l00066">remmina_main.h:66</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#l00111">remmina_unlock.c:111</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#l00697">remmina_file.c:697</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a58fce08bda1efaeefd8b65f6463f67c6"><div class="ttname"><a href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref::periodic_rmnews_last_get</a></div><div class="ttdeci">glong periodic_rmnews_last_get</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00206">remmina_pref.h:206</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aeb86dc8005c98ce2eab57bd900467875"><div class="ttname"><a href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">_RemminaPref::main_height</a></div><div class="ttdeci">gint main_height</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00180">remmina_pref.h:180</a></div></div>
+<div class="ttc" id="remmina__external__tools_8h_html"><div class="ttname"><a href="remmina__external__tools_8h.html">remmina_external_tools.h</a></div></div>
+<div class="ttc" id="remmina__exec_8h_html"><div class="ttname"><a href="remmina__exec_8h.html">remmina_exec.h</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#l00276">remmina_file_manager.c:276</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#l00090">remmina_main.h:90</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#l00965">remmina_main.c:965</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#l00693">remmina_main.c:693</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#l00151">remmina_file_manager.c:151</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#l00421">remmina_main.c:421</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#l01153">remmina_main.c:1153</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_ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c"><div class="ttname"><a href="remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c">NAME_COLUMN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00073">remmina_main.c:73</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#l00575">remmina_main.c:575</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#l01031">remmina_main.c:1031</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#l00941">remmina_main.c:941</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#l00995">remmina_main.c:995</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#l00184">remmina_main.c:184</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#l01075">remmina_main.c:1075</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__main_8c.html">remmina_main.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__main_8h.html b/docs/remmina__main_8h.html
new file mode 100644
index 000000000..82f9c3bb9
--- /dev/null
+++ b/docs/remmina__main_8h.html
@@ -0,0 +1,1132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_main.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__main_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_main.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__main_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html">_RemminaMain</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html">_RemminaMainPriv</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a49e7c1b5d4dcfd155886e39d78b3d052"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_main_priv.html">_RemminaMainPriv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">RemminaMainPriv</a></td></tr>
+<tr class="separator:a49e7c1b5d4dcfd155886e39d78b3d052"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad17d9a48f2b3f84e17baa91104bc6cb1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_main.html">_RemminaMain</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a></td></tr>
+<tr class="separator:ad17d9a48f2b3f84e17baa91104bc6cb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0c322c3136c4225d5f8d4cee318afce7"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7">remmina_main_new</a> (void)</td></tr>
+<tr class="separator:a0c322c3136c4225d5f8d4cee318afce7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3948142732379a3d165f3b0b4d5f5abc"><td class="memItemLeft" align="right" valign="top">GtkWindow *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc">remmina_main_get_window</a> (void)</td></tr>
+<tr class="separator:a3948142732379a3d165f3b0b4d5f5abc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ae0372dafe41f96a09097c07d1b270a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a">remmina_main_update_file_datetime</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</td></tr>
+<tr class="separator:a5ae0372dafe41f96a09097c07d1b270a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77d974da2ddd1ea7c87f8b9bb1eedda8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8">remmina_main_destroy</a> (void)</td></tr>
+<tr class="memdesc:a77d974da2ddd1ea7c87f8b9bb1eedda8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the main window is destroyed via a call from gtk_widget_destroy() <a href="#a77d974da2ddd1ea7c87f8b9bb1eedda8">More...</a><br /></td></tr>
+<tr class="separator:a77d974da2ddd1ea7c87f8b9bb1eedda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95cedb0d631aacbd1b4a5ee1e10a40a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main_save_before_destroy</a> (void)</td></tr>
+<tr class="memdesc:a95cedb0d631aacbd1b4a5ee1e10a40a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Save the Remmina Main Window size and the exapnded group before to close Remmina. <a href="#a95cedb0d631aacbd1b4a5ee1e10a40a5">More...</a><br /></td></tr>
+<tr class="separator:a95cedb0d631aacbd1b4a5ee1e10a40a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">remmina_main_show_warning_dialog</a> (const gchar *message)</td></tr>
+<tr class="separator:ad99b9c0bf2fa8c166a8b4a09e06ffdf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac0bb51159be042fecab0103e73a54dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc">remmina_main_on_action_application_about</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:aac0bb51159be042fecab0103e73a54dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b4ec1e78b79adaa180a385ac50c20d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0b4ec1e78b79adaa180a385ac50c20d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05dbb6ce820f3a137949b919d0efa6a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a05dbb6ce820f3a137949b919d0efa6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf51d42fa2c5ce84164b5514b4634229"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229">remmina_main_on_action_application_mpchange</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:abf51d42fa2c5ce84164b5514b4634229"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf59ad5b0a0ef68e58bbea3701929efc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc">remmina_main_on_action_application_plugins</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:adf59ad5b0a0ef68e58bbea3701929efc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ed9f6a588a2d9e3a6cf6884c8d07f92"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92">remmina_main_on_action_application_preferences</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a6ed9f6a588a2d9e3a6cf6884c8d07f92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5445e5568a6fc04d08b620829a59334a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a">remmina_main_on_action_application_quit</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a5445e5568a6fc04d08b620829a59334a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b30ed832369f3a7153aa63f98873c9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d">remmina_main_on_action_connection_connect</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a6b30ed832369f3a7153aa63f98873c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44eb44c6391f53a19c6f1fdf9a39a8c1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1">remmina_main_on_action_connection_copy</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a44eb44c6391f53a19c6f1fdf9a39a8c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e574723222f5df9db456977e62a093"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a10e574723222f5df9db456977e62a093">remmina_main_on_action_connection_delete</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a10e574723222f5df9db456977e62a093"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfbfc580d25b58d09770a7d33ffe03cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc">remmina_main_on_action_connection_edit</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:adfbfc580d25b58d09770a7d33ffe03cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcf8bd8ca57b389264ff9739a61efdc1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1">remmina_main_on_action_connection_external_tools</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:abcf8bd8ca57b389264ff9739a61efdc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52cc21537ff003b9d0fbdb9040c811af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af">remmina_main_on_action_connection_new</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a52cc21537ff003b9d0fbdb9040c811af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac3aa116a8d8b527f1aa61b7395b4b32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32">remmina_main_on_action_help_community</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:aac3aa116a8d8b527f1aa61b7395b4b32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5db4436cc72b9d5ea3e498f8519efecc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc">remmina_main_on_action_help_debug</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a5db4436cc72b9d5ea3e498f8519efecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2704d643ee15702a84a1c76219dd5277"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277">remmina_main_on_action_help_donations</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a2704d643ee15702a84a1c76219dd5277"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7049d977154921f651cc1538f59c5b7a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a">remmina_main_on_action_help_homepage</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a7049d977154921f651cc1538f59c5b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c32fe66988056b353220128611b9116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a0c32fe66988056b353220128611b9116">remmina_main_on_action_help_wiki</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0c32fe66988056b353220128611b9116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab203476099a5ad6e889f91c8e05d577d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d">remmina_main_on_action_tools_export</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:ab203476099a5ad6e889f91c8e05d577d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">remmina_main_on_action_tools_import</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a4b4f0bbdb9e487d6c3809e8a57dc1d1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab98d51c96a87fddaa2d5d6d4614bafa8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8">remmina_main_on_action_expand</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:ab98d51c96a87fddaa2d5d6d4614bafa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">remmina_main_on_action_collapse</a> (GSimpleAction *action, GVariant *param, gpointer data)</td></tr>
+<tr class="separator:a0edcc1d7dc3adcbb7bb36aa0f62dec3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ad17d9a48f2b3f84e17baa91104bc6cb1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad17d9a48f2b3f84e17baa91104bc6cb1">&#9670;&nbsp;</a></span>RemminaMain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_main.html">_RemminaMain</a> <a class="el" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a49e7c1b5d4dcfd155886e39d78b3d052"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49e7c1b5d4dcfd155886e39d78b3d052">&#9670;&nbsp;</a></span>RemminaMainPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_main_priv.html">_RemminaMainPriv</a> <a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">RemminaMainPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a77d974da2ddd1ea7c87f8b9bb1eedda8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77d974da2ddd1ea7c87f8b9bb1eedda8">&#9670;&nbsp;</a></span>remmina_main_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called when the main window is destroyed via a call from gtk_widget_destroy() </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00227">227</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a3948142732379a3d165f3b0b4d5f5abc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3948142732379a3d165f3b0b4d5f5abc">&#9670;&nbsp;</a></span>remmina_main_get_window()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow* remmina_main_get_window </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01361">1361</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0c322c3136c4225d5f8d4cee318afce7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c322c3136c4225d5f8d4cee318afce7">&#9670;&nbsp;</a></span>remmina_main_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS GtkWidget* remmina_main_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01292">1292</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aac0bb51159be042fecab0103e73a54dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac0bb51159be042fecab0103e73a54dc">&#9670;&nbsp;</a></span>remmina_main_on_action_application_about()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_about </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01031">1031</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a05dbb6ce820f3a137949b919d0efa6a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05dbb6ce820f3a137949b919d0efa6a1">&#9670;&nbsp;</a></span>remmina_main_on_action_application_default()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_default </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00853">853</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="abf51d42fa2c5ce84164b5514b4634229"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf51d42fa2c5ce84164b5514b4634229">&#9670;&nbsp;</a></span>remmina_main_on_action_application_mpchange()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_mpchange </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00699">699</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b4ec1e78b79adaa180a385ac50c20d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b4ec1e78b79adaa180a385ac50c20d6">&#9670;&nbsp;</a></span>remmina_main_on_action_application_news()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_news </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01037">1037</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="adf59ad5b0a0ef68e58bbea3701929efc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf59ad5b0a0ef68e58bbea3701929efc">&#9670;&nbsp;</a></span>remmina_main_on_action_application_plugins()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_plugins </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00995">995</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ed9f6a588a2d9e3a6cf6884c8d07f92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed9f6a588a2d9e3a6cf6884c8d07f92">&#9670;&nbsp;</a></span>remmina_main_on_action_application_preferences()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_preferences </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00843">843</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5445e5568a6fc04d08b620829a59334a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5445e5568a6fc04d08b620829a59334a">&#9670;&nbsp;</a></span>remmina_main_on_action_application_quit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_application_quit </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00879">879</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0edcc1d7dc3adcbb7bb36aa0f62dec3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0edcc1d7dc3adcbb7bb36aa0f62dec3a">&#9670;&nbsp;</a></span>remmina_main_on_action_collapse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_collapse </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01090">1090</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a6b30ed832369f3a7153aa63f98873c9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b30ed832369f3a7153aa63f98873c9d">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_connect </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00661">661</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a44eb44c6391f53a19c6f1fdf9a39a8c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44eb44c6391f53a19c6f1fdf9a39a8c1">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_copy </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00773">773</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a10e574723222f5df9db456977e62a093"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10e574723222f5df9db456977e62a093">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_delete()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_delete </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00818">818</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="adfbfc580d25b58d09770a7d33ffe03cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfbfc580d25b58d09770a7d33ffe03cc">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_edit()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_edit </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00796">796</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="abcf8bd8ca57b389264ff9739a61efdc1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abcf8bd8ca57b389264ff9739a61efdc1">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_external_tools()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_external_tools </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00681">681</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a52cc21537ff003b9d0fbdb9040c811af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52cc21537ff003b9d0fbdb9040c811af">&#9670;&nbsp;</a></span>remmina_main_on_action_connection_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_connection_new </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00730">730</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab98d51c96a87fddaa2d5d6d4614bafa8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab98d51c96a87fddaa2d5d6d4614bafa8">&#9670;&nbsp;</a></span>remmina_main_on_action_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_expand </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01096">1096</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="aac3aa116a8d8b527f1aa61b7395b4b32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac3aa116a8d8b527f1aa61b7395b4b32">&#9670;&nbsp;</a></span>remmina_main_on_action_help_community()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_community </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01013">1013</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5db4436cc72b9d5ea3e498f8519efecc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5db4436cc72b9d5ea3e498f8519efecc">&#9670;&nbsp;</a></span>remmina_main_on_action_help_debug()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_debug </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01025">1025</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a2704d643ee15702a84a1c76219dd5277"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2704d643ee15702a84a1c76219dd5277">&#9670;&nbsp;</a></span>remmina_main_on_action_help_donations()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_donations </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01019">1019</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a7049d977154921f651cc1538f59c5b7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7049d977154921f651cc1538f59c5b7a">&#9670;&nbsp;</a></span>remmina_main_on_action_help_homepage()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_homepage </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01001">1001</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a0c32fe66988056b353220128611b9116"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c32fe66988056b353220128611b9116">&#9670;&nbsp;</a></span>remmina_main_on_action_help_wiki()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_help_wiki </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01007">1007</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ab203476099a5ad6e889f91c8e05d577d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab203476099a5ad6e889f91c8e05d577d">&#9670;&nbsp;</a></span>remmina_main_on_action_tools_export()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_tools_export </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00965">965</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a4b4f0bbdb9e487d6c3809e8a57dc1d1c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b4f0bbdb9e487d6c3809e8a57dc1d1c">&#9670;&nbsp;</a></span>remmina_main_on_action_tools_import()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_on_action_tools_import </td>
+ <td>(</td>
+ <td class="paramtype">GSimpleAction *&#160;</td>
+ <td class="paramname"><em>action</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GVariant *&#160;</td>
+ <td class="paramname"><em>param</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00953">953</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a95cedb0d631aacbd1b4a5ee1e10a40a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95cedb0d631aacbd1b4a5ee1e10a40a5">&#9670;&nbsp;</a></span>remmina_main_save_before_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_save_before_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Save the Remmina Main Window size and the exapnded group before to close Remmina. </p>
+<p>This function uses remmina_main_save_size and remmina_main_save_expanded_group. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="ad99b9c0bf2fa8c166a8b4a09e06ffdf7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad99b9c0bf2fa8c166a8b4a09e06ffdf7">&#9670;&nbsp;</a></span>remmina_main_show_warning_dialog()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_show_warning_dialog </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01380">1380</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ae0372dafe41f96a09097c07d1b270a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ae0372dafe41f96a09097c07d1b270a">&#9670;&nbsp;</a></span>remmina_main_update_file_datetime()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_main_update_file_datetime </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l01373">1373</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__main_8h.html">remmina_main.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__main_8h.js b/docs/remmina__main_8h.js
new file mode 100644
index 000000000..602ba88b6
--- /dev/null
+++ b/docs/remmina__main_8h.js
@@ -0,0 +1,35 @@
+var remmina__main_8h =
+[
+ [ "_RemminaMain", "struct___remmina_main.html", "struct___remmina_main" ],
+ [ "_RemminaMainPriv", "struct___remmina_main_priv.html", "struct___remmina_main_priv" ],
+ [ "RemminaMain", "remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1", null ],
+ [ "RemminaMainPriv", "remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052", null ],
+ [ "remmina_main_destroy", "remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8", null ],
+ [ "remmina_main_get_window", "remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc", null ],
+ [ "remmina_main_new", "remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7", null ],
+ [ "remmina_main_on_action_application_about", "remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc", null ],
+ [ "remmina_main_on_action_application_default", "remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1", null ],
+ [ "remmina_main_on_action_application_mpchange", "remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229", null ],
+ [ "remmina_main_on_action_application_news", "remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6", null ],
+ [ "remmina_main_on_action_application_plugins", "remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc", null ],
+ [ "remmina_main_on_action_application_preferences", "remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92", null ],
+ [ "remmina_main_on_action_application_quit", "remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a", null ],
+ [ "remmina_main_on_action_collapse", "remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a", null ],
+ [ "remmina_main_on_action_connection_connect", "remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d", null ],
+ [ "remmina_main_on_action_connection_copy", "remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1", null ],
+ [ "remmina_main_on_action_connection_delete", "remmina__main_8h.html#a10e574723222f5df9db456977e62a093", null ],
+ [ "remmina_main_on_action_connection_edit", "remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc", null ],
+ [ "remmina_main_on_action_connection_external_tools", "remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1", null ],
+ [ "remmina_main_on_action_connection_new", "remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af", null ],
+ [ "remmina_main_on_action_expand", "remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8", null ],
+ [ "remmina_main_on_action_help_community", "remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32", null ],
+ [ "remmina_main_on_action_help_debug", "remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc", null ],
+ [ "remmina_main_on_action_help_donations", "remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277", null ],
+ [ "remmina_main_on_action_help_homepage", "remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a", null ],
+ [ "remmina_main_on_action_help_wiki", "remmina__main_8h.html#a0c32fe66988056b353220128611b9116", null ],
+ [ "remmina_main_on_action_tools_export", "remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d", null ],
+ [ "remmina_main_on_action_tools_import", "remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c", null ],
+ [ "remmina_main_save_before_destroy", "remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5", null ],
+ [ "remmina_main_show_warning_dialog", "remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7", null ],
+ [ "remmina_main_update_file_datetime", "remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__main_8h_source.html b/docs/remmina__main_8h_source.html
new file mode 100644
index 000000000..9e901ec8e
--- /dev/null
+++ b/docs/remmina__main_8h_source.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_main.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__main_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<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-2020 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;<a class="code" href="remmina__string__array_8h.html">remmina_string_array.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052"> 43</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="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_main.html"> 45</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="l00046"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1"> 46</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2"> 47</a></span>&#160; GtkWindow * <a class="code" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">/* Menu widgets */</span></div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6"> 49</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec"> 50</a></span>&#160; GtkMenuButton * <a class="code" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62"> 51</a></span>&#160; GtkMenu * <a class="code" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4"> 52</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0"> 53</a></span>&#160; GtkRadioMenuItem * <a class="code" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a"> 54</a></span>&#160; GtkMenuItem * <a class="code" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">menuitem_connection_quit</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* Button new */</span></div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e"> 56</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21"> 57</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">button_make_default</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">/* Search bar objects */</span></div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72"> 59</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7"> 60</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670"> 61</a></span>&#160; GtkToggleButton * <a class="code" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">ustats_toggle</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd"> 62</a></span>&#160; GtkSearchBar * <a class="code" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* Quick connect objects */</span></div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95"> 64</a></span>&#160; GtkBox * <a class="code" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39"> 65</a></span>&#160; GtkComboBoxText * <a class="code" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095"> 66</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774"> 67</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">button_quick_connect</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* Other widgets */</span></div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced"> 69</a></span>&#160; GtkTreeView * <a class="code" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc"> 70</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2"> 71</a></span>&#160; GtkStatusbar * <a class="code" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* Non widget objects */</span></div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549"> 73</a></span>&#160; GtkAccelGroup * <a class="code" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">accelgroup_shortcuts</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">/* Actions from the view ActionGroup */</span></div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f"> 75</a></span>&#160; GtkToggleAction * <a class="code" href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f">action_view_quick_connect</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19"> 76</a></span>&#160; GtkToggleAction * <a class="code" href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19">action_view_mode_list</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c"> 77</a></span>&#160; GtkToggleAction * <a class="code" href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c">action_view_mode_tree</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980"> 78</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="l00079"></a><span class="lineno"> 79</span>&#160;} <a class="code" href="remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1">RemminaMain</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html"> 81</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="l00082"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f"> 82</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c"> 83</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd"> 84</a></span>&#160; GtkTreeModel * <a class="code" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a>;</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"><a class="line" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f"> 86</a></span>&#160; gboolean <a class="code" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a>;</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"><a class="line" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00"> 88</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d"> 89</a></span>&#160; gchar * <a class="code" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76"> 90</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="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a"> 91</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="l00092"></a><span class="lineno"> 92</span>&#160;};</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"> 94</span>&#160;G_BEGIN_DECLS</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">/* Create the main Remmina window */</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</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="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment">/* Get the current main window or NULL if not initialized */</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</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="l00100"></a><span class="lineno"> 100</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</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="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</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="l00104"></a><span class="lineno"> 104</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="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</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="l00107"></a><span class="lineno"> 107</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="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a>(GSimpleAction *action, GVariant *param, gpointer data);</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#a05dbb6ce820f3a137949b919d0efa6a1">remmina_main_on_action_application_default</a>(GSimpleAction *action, GVariant *param, gpointer data);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</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="l00111"></a><span class="lineno"> 111</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="l00112"></a><span class="lineno"> 112</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="l00113"></a><span class="lineno"> 113</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="l00114"></a><span class="lineno"> 114</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="l00115"></a><span class="lineno"> 115</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="l00116"></a><span class="lineno"> 116</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="l00117"></a><span class="lineno"> 117</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="l00118"></a><span class="lineno"> 118</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="l00119"></a><span class="lineno"> 119</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="l00120"></a><span class="lineno"> 120</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="l00121"></a><span class="lineno"> 121</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="l00122"></a><span class="lineno"> 122</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="l00123"></a><span class="lineno"> 123</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="l00124"></a><span class="lineno"> 124</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="l00125"></a><span class="lineno"> 125</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="l00126"></a><span class="lineno"> 126</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="l00127"></a><span class="lineno"> 127</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="l00128"></a><span class="lineno"> 128</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="l00129"></a><span class="lineno"> 129</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</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#l00995">remmina_main.c:995</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#l00059">remmina_main.h:59</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#l00052">remmina_main.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_main_html_adec4d2fed2242dde029d46dac791e50f"><div class="ttname"><a href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f">_RemminaMain::action_view_quick_connect</a></div><div class="ttdeci">GtkToggleAction * action_view_quick_connect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8h_source.html#l00075">remmina_main.h:75</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_abcf8bd8ca57b389264ff9739a61efdc1"><div class="ttname"><a href="remmina__main_8h.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#l00681">remmina_main.c:681</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a95cedb0d631aacbd1b4a5ee1e10a40a5"><div class="ttname"><a href="remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5">remmina_main_save_before_destroy</a></div><div class="ttdeci">void remmina_main_save_before_destroy(void)</div><div class="ttdoc">Save the Remmina Main Window size and the exapnded group before to close Remmina. ...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00172">remmina_main.c:172</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a62228cb0bc959307e3268cff98e1f7bb"><div class="ttname"><a href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></div><div class="ttdeci">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8h_source.html#l00041">remmina_string_array.h:41</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#l00088">remmina_main.h:88</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#l00082">remmina_main.h:82</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="ttdoc">Called when the main window is destroyed via a call from gtk_widget_destroy() </div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00227">remmina_main.c:227</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#l00078">remmina_main.h:78</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#l01001">remmina_main.c:1001</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#l00041">types.h:41</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#l00054">remmina_main.h:54</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#l00053">remmina_main.h:53</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#l00045">remmina_main.h:45</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#l01096">remmina_main.c:1096</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#l01025">remmina_main.c:1025</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#l00773">remmina_main.c:773</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#l01292">remmina_main.c:1292</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#l00953">remmina_main.c:953</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#l00073">remmina_main.h:73</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#l00083">remmina_main.h:83</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#l00089">remmina_main.h:89</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#l00818">remmina_main.c:818</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#l01031">remmina_main.c:1031</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#l00050">remmina_main.h:50</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#l00843">remmina_main.c:843</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#l00049">remmina_main.h:49</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="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#l00086">remmina_main.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_main_html_a35f10af8065b3b64ba6f26db60061d39"><div class="ttname"><a href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">_RemminaMain::combo_quick_connect_protocol</a></div><div class="ttdeci">GtkComboBoxText * combo_quick_connect_protocol</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_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#l00064">remmina_main.h:64</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#l01013">remmina_main.c:1013</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#l00056">remmina_main.h:56</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#l00051">remmina_main.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_main_html_a5303ae9f0ad38b2648ed0d9d43909d19"><div class="ttname"><a href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19">_RemminaMain::action_view_mode_list</a></div><div class="ttdeci">GtkToggleAction * action_view_mode_list</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_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#l00071">remmina_main.h:71</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#l00046">remmina_main.h:46</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#l00081">remmina_main.h:81</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#l00067">remmina_main.h:67</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#l00965">remmina_main.c:965</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#l01361">remmina_main.c:1361</a></div></div>
+<div class="ttc" id="struct___remmina_main_html_a33b48d282a8e7a692efdd354707fd28c"><div class="ttname"><a href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c">_RemminaMain::action_view_mode_tree</a></div><div class="ttdeci">GtkToggleAction * action_view_mode_tree</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_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#l00699">remmina_main.c:699</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#l00069">remmina_main.h:69</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#l00060">remmina_main.h:60</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#l00070">remmina_main.h:70</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#l00091">remmina_main.h:91</a></div></div>
+<div class="ttc" id="remmina__main_8h_html_a0b4ec1e78b79adaa180a385ac50c20d6"><div class="ttname"><a href="remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6">remmina_main_on_action_application_news</a></div><div class="ttdeci">void remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l01037">remmina_main.c:1037</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#l00796">remmina_main.c:796</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#l01380">remmina_main.c:1380</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#l00853">remmina_main.c:853</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#l00084">remmina_main.h:84</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#l01373">remmina_main.c:1373</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#l00661">remmina_main.c:661</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#l00047">remmina_main.h:47</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#l00879">remmina_main.c:879</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#l00061">remmina_main.h:61</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#l00730">remmina_main.c:730</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#l01090">remmina_main.c:1090</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#l00057">remmina_main.h:57</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#l01019">remmina_main.c:1019</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#l00062">remmina_main.h:62</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#l00066">remmina_main.h:66</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#l01007">remmina_main.c:1007</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#l00090">remmina_main.h:90</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>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__main_8h.html">remmina_main.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__marshals_8c.html b/docs/remmina__marshals_8c.html
new file mode 100644
index 000000000..9fddb24fb
--- /dev/null
+++ b/docs/remmina__marshals_8c.html
@@ -0,0 +1,222 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_marshals.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__marshals_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_marshals.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__marshals_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae155b6ae758a6b0ef3d89a4458feec99"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshal_BOOLEAN__INT</a> (GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</td></tr>
+<tr class="separator:ae155b6ae758a6b0ef3d89a4458feec99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01460bf2694cb9ef62f1409d465ae70b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshal_BOOLEAN__INT_STRING</a> (GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</td></tr>
+<tr class="separator:a01460bf2694cb9ef62f1409d465ae70b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ae155b6ae758a6b0ef3d89a4458feec99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae155b6ae758a6b0ef3d89a4458feec99">&#9670;&nbsp;</a></span>remmina_marshal_BOOLEAN__INT()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_marshal_BOOLEAN__INT </td>
+ <td>(</td>
+ <td class="paramtype">GClosure *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GValue *return_value&#160;</td>
+ <td class="paramname"><em>G_GNUC_UNUSED</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer invocation_hint&#160;</td>
+ <td class="paramname"><em>G_GNUC_UNUSED</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>marshal_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__marshals_8c_source.html#l00087">87</a> of file <a class="el" href="remmina__marshals_8c_source.html">remmina_marshals.c</a>.</p>
+
+</div>
+</div>
+<a id="a01460bf2694cb9ef62f1409d465ae70b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01460bf2694cb9ef62f1409d465ae70b">&#9670;&nbsp;</a></span>remmina_marshal_BOOLEAN__INT_STRING()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_marshal_BOOLEAN__INT_STRING </td>
+ <td>(</td>
+ <td class="paramtype">GClosure *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GValue *return_value&#160;</td>
+ <td class="paramname"><em>G_GNUC_UNUSED</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer invocation_hint&#160;</td>
+ <td class="paramname"><em>G_GNUC_UNUSED</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>marshal_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__marshals_8c_source.html#l00125">125</a> of file <a class="el" href="remmina__marshals_8c_source.html">remmina_marshals.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__marshals_8c.html">remmina_marshals.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__marshals_8c.js b/docs/remmina__marshals_8c.js
new file mode 100644
index 000000000..af6ac12ac
--- /dev/null
+++ b/docs/remmina__marshals_8c.js
@@ -0,0 +1,5 @@
+var remmina__marshals_8c =
+[
+ [ "remmina_marshal_BOOLEAN__INT", "remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99", null ],
+ [ "remmina_marshal_BOOLEAN__INT_STRING", "remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__marshals_8c_source.html b/docs/remmina__marshals_8c_source.html
new file mode 100644
index 000000000..87299c633
--- /dev/null
+++ b/docs/remmina__marshals_8c_source.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_marshals.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__marshals_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_marshals.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__marshals_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) 2011 Marc-Andre Moreau</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Copyright (C) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</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 &lt;glib-object.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef G_ENABLE_DEBUG</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_boolean(v) g_value_get_boolean(v)</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_char(v) g_value_get_char(v)</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uchar(v) g_value_get_uchar(v)</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_int(v) g_value_get_int(v)</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uint(v) g_value_get_uint(v)</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_long(v) g_value_get_long(v)</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_ulong(v) g_value_get_ulong(v)</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_int64(v) g_value_get_int64(v)</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uint64(v) g_value_get_uint64(v)</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_enum(v) g_value_get_enum(v)</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_flags(v) g_value_get_flags(v)</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_float(v) g_value_get_float(v)</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_double(v) g_value_get_double(v)</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_string(v) (char*)g_value_get_string(v)</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_param(v) g_value_get_param(v)</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_boxed(v) g_value_get_boxed(v)</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_pointer(v) g_value_get_pointer(v)</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_object(v) g_value_get_object(v)</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#else </span><span class="comment">/* !G_ENABLE_DEBUG */</span><span class="preprocessor"></span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> * Do not access GValues directly in your code. Instead, use the</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> * g_value_get_*() functions</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_boolean(v) (v)-&gt;data[0].v_int</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_char(v) (v)-&gt;data[0].v_int</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uchar(v) (v)-&gt;data[0].v_uint</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_int(v) (v)-&gt;data[0].v_int</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uint(v) (v)-&gt;data[0].v_uint</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_long(v) (v)-&gt;data[0].v_long</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_ulong(v) (v)-&gt;data[0].v_ulong</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_int64(v) (v)-&gt;data[0].v_int64</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_uint64(v) (v)-&gt;data[0].v_uint64</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_enum(v) (v)-&gt;data[0].v_long</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_flags(v) (v)-&gt;data[0].v_ulong</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_float(v) (v)-&gt;data[0].v_float</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_double(v) (v)-&gt;data[0].v_double</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_string(v) (v)-&gt;data[0].v_pointer</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_param(v) (v)-&gt;data[0].v_pointer</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_boxed(v) (v)-&gt;data[0].v_pointer</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_pointer(v) (v)-&gt;data[0].v_pointer</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#define g_marshal_value_peek_object(v) (v)-&gt;data[0].v_pointer</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* !G_ENABLE_DEBUG */</span><span class="preprocessor"></span></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;<span class="comment">/* BOOLEAN:INT (remminamarshals.list:4) */</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99"> 87</a></span>&#160;<a class="code" href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshal_BOOLEAN__INT</a>(GClosure *closure,</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; GValue *return_value G_GNUC_UNUSED,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; guint n_param_values,</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">const</span> GValue *param_values,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; gpointer invocation_hint G_GNUC_UNUSED,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; gpointer marshal_data)</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"> 94</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">typedef</span> gboolean (*GMarshalFunc_BOOLEAN__INT) (gpointer data1,</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gint arg_1,</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; gpointer data2);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">register</span> GMarshalFunc_BOOLEAN__INT callback;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">register</span> GCClosure *cc = (GCClosure*)closure;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">register</span> gpointer data1, data2;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; gboolean v_return;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; g_return_if_fail(return_value != NULL);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; g_return_if_fail(n_param_values == 2);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (G_CCLOSURE_SWAP_DATA(closure)) {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; data1 = closure-&gt;data;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; data2 = g_value_peek_pointer(param_values + 0);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; data1 = g_value_peek_pointer(param_values + 0);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; data2 = closure-&gt;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; callback = (GMarshalFunc_BOOLEAN__INT)(marshal_data ? marshal_data : cc-&gt;callback);</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; v_return = callback(data1,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; g_marshal_value_peek_int(param_values + 1)</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; ,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; data2);</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; g_value_set_boolean(return_value, v_return);</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"> 123</span>&#160;<span class="comment">/* BOOLEAN:INT,STRING (remminamarshals.list:5) */</span></div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b"> 125</a></span>&#160;<a class="code" href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshal_BOOLEAN__INT_STRING</a>(GClosure *closure,</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; GValue *return_value G_GNUC_UNUSED,</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; guint n_param_values,</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">const</span> GValue *param_values,</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; gpointer invocation_hint G_GNUC_UNUSED,</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; gpointer marshal_data)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;{</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">typedef</span> gboolean (*GMarshalFunc_BOOLEAN__INT_STRING) (gpointer data1,</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gint arg_1,</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gpointer arg_2,</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gpointer data2);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">register</span> GMarshalFunc_BOOLEAN__INT_STRING callback;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keyword">register</span> GCClosure *cc = (GCClosure*)closure;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">register</span> gpointer data1, data2;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gboolean v_return;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; g_return_if_fail(return_value != NULL);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; g_return_if_fail(n_param_values == 3);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span> (G_CCLOSURE_SWAP_DATA(closure)) {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; data1 = closure-&gt;data;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; data2 = g_value_peek_pointer(param_values + 0);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; data1 = g_value_peek_pointer(param_values + 0);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; data2 = closure-&gt;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; callback = (GMarshalFunc_BOOLEAN__INT_STRING)(marshal_data ? marshal_data : cc-&gt;callback);</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; v_return = callback(data1,</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; g_marshal_value_peek_int(param_values + 1),</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; g_marshal_value_peek_string(param_values + 2),</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; data2);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; g_value_set_boolean(return_value, v_return);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;}</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div><div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__marshals_8c_html_a01460bf2694cb9ef62f1409d465ae70b"><div class="ttname"><a href="remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b">remmina_marshal_BOOLEAN__INT_STRING</a></div><div class="ttdeci">void remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__marshals_8c_source.html#l00125">remmina_marshals.c:125</a></div></div>
+<div class="ttc" id="remmina__marshals_8c_html_ae155b6ae758a6b0ef3d89a4458feec99"><div class="ttname"><a href="remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99">remmina_marshal_BOOLEAN__INT</a></div><div class="ttdeci">void remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__marshals_8c_source.html#l00087">remmina_marshals.c:87</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__marshals_8c.html">remmina_marshals.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__marshals_8h.html b/docs/remmina__marshals_8h.html
new file mode 100644
index 000000000..84e0bee0b
--- /dev/null
+++ b/docs/remmina__marshals_8h.html
@@ -0,0 +1,218 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_marshals.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__marshals_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_marshals.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__marshals_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab614355cdc97644b6505743b34a78384"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384">remmina_marshal_BOOLEAN__INT</a> (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data)</td></tr>
+<tr class="separator:ab614355cdc97644b6505743b34a78384"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4bf876b1fb721df926edf68ec116761"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761">remmina_marshal_BOOLEAN__INT_STRING</a> (GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data)</td></tr>
+<tr class="separator:af4bf876b1fb721df926edf68ec116761"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab614355cdc97644b6505743b34a78384"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab614355cdc97644b6505743b34a78384">&#9670;&nbsp;</a></span>remmina_marshal_BOOLEAN__INT()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_marshal_BOOLEAN__INT </td>
+ <td>(</td>
+ <td class="paramtype">GClosure *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GValue *&#160;</td>
+ <td class="paramname"><em>return_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>invocation_hint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>marshal_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af4bf876b1fb721df926edf68ec116761"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4bf876b1fb721df926edf68ec116761">&#9670;&nbsp;</a></span>remmina_marshal_BOOLEAN__INT_STRING()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_marshal_BOOLEAN__INT_STRING </td>
+ <td>(</td>
+ <td class="paramtype">GClosure *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GValue *&#160;</td>
+ <td class="paramname"><em>return_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>param_values</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>invocation_hint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>marshal_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__marshals_8h.html">remmina_marshals.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__marshals_8h.js b/docs/remmina__marshals_8h.js
new file mode 100644
index 000000000..e0e180701
--- /dev/null
+++ b/docs/remmina__marshals_8h.js
@@ -0,0 +1,5 @@
+var remmina__marshals_8h =
+[
+ [ "remmina_marshal_BOOLEAN__INT", "remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384", null ],
+ [ "remmina_marshal_BOOLEAN__INT_STRING", "remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__marshals_8h_source.html b/docs/remmina__marshals_8h_source.html
new file mode 100644
index 000000000..4063a5b74
--- /dev/null
+++ b/docs/remmina__marshals_8h_source.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_marshals.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__marshals_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_marshals.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__marshals_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="preprocessor">#ifndef __remmina_marshal_MARSHAL_H__</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="preprocessor">#define __remmina_marshal_MARSHAL_H__</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &lt;glib-object.h&gt;</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">/* BOOLEAN:INT (remminamarshals.list:4) */</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384">remmina_marshal_BOOLEAN__INT</a>(GClosure *closure, GValue *return_value, guint n_param_values, <span class="keyword">const</span> GValue *param_values, gpointer invocation_hint, gpointer marshal_data);</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">/* BOOLEAN:INT,STRING (remminamarshals.list:5) */</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">void</span> <a class="code" href="remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761">remmina_marshal_BOOLEAN__INT_STRING</a>(GClosure *closure, GValue *return_value, guint n_param_values, <span class="keyword">const</span> GValue *param_values, gpointer invocation_hint, gpointer marshal_data);</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;G_END_DECLS</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* __remmina_marshal_MARSHAL_H__ */</span><span class="preprocessor"></span></div><div class="ttc" id="remmina__marshals_8h_html_af4bf876b1fb721df926edf68ec116761"><div class="ttname"><a href="remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761">remmina_marshal_BOOLEAN__INT_STRING</a></div><div class="ttdeci">void remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data)</div></div>
+<div class="ttc" id="remmina__marshals_8h_html_ab614355cdc97644b6505743b34a78384"><div class="ttname"><a href="remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384">remmina_marshal_BOOLEAN__INT</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__marshals_8h.html">remmina_marshals.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__masterthread__exec_8c.html b/docs/remmina__masterthread__exec_8c.html
new file mode 100644
index 000000000..9804739e3
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8c.html
@@ -0,0 +1,267 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_masterthread_exec.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__masterthread__exec_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_masterthread_exec.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__masterthread__exec_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae5c4d736f1856249c255430e010a179f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec_callback</a> (<a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *d)</td></tr>
+<tr class="separator:ae5c4d736f1856249c255430e010a179f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94985f15fd0d27c037824ee90b0ecd3c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec_cleanup_handler</a> (gpointer data)</td></tr>
+<tr class="separator:a94985f15fd0d27c037824ee90b0ecd3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14628c2470cac50e87916a70ea05c97d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a> (<a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *d)</td></tr>
+<tr class="separator:a14628c2470cac50e87916a70ea05c97d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a595ce198f8adda31fe11348b0f734e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec_save_main_thread_id</a> ()</td></tr>
+<tr class="separator:a4a595ce198f8adda31fe11348b0f734e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a52e863a3a3da6da6bb5d36c13b7ff4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a> ()</td></tr>
+<tr class="separator:a3a52e863a3a3da6da6bb5d36c13b7ff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8eeacd537241e5af184a2007c476baf0"><td class="memItemLeft" align="right" valign="top">static pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">gMainThreadID</a></td></tr>
+<tr class="separator:a8eeacd537241e5af184a2007c476baf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a14628c2470cac50e87916a70ea05c97d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14628c2470cac50e87916a70ea05c97d">&#9670;&nbsp;</a></span>remmina_masterthread_exec_and_wait()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_masterthread_exec_and_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5c4d736f1856249c255430e010a179f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5c4d736f1856249c255430e010a179f">&#9670;&nbsp;</a></span>remmina_masterthread_exec_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_masterthread_exec_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00046">46</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a94985f15fd0d27c037824ee90b0ecd3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94985f15fd0d27c037824ee90b0ecd3c">&#9670;&nbsp;</a></span>remmina_masterthread_exec_cleanup_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_masterthread_exec_cleanup_handler </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00115">115</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a3a52e863a3a3da6da6bb5d36c13b7ff4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a52e863a3a3da6da6bb5d36c13b7ff4">&#9670;&nbsp;</a></span>remmina_masterthread_exec_is_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_masterthread_exec_is_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00144">144</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a4a595ce198f8adda31fe11348b0f734e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a595ce198f8adda31fe11348b0f734e">&#9670;&nbsp;</a></span>remmina_masterthread_exec_save_main_thread_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_masterthread_exec_save_main_thread_id </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00138">138</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a8eeacd537241e5af184a2007c476baf0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8eeacd537241e5af184a2007c476baf0">&#9670;&nbsp;</a></span>gMainThreadID</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t gMainThreadID</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00044">44</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__masterthread__exec_8c.html">remmina_masterthread_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__masterthread__exec_8c.js b/docs/remmina__masterthread__exec_8c.js
new file mode 100644
index 000000000..112af7447
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8c.js
@@ -0,0 +1,9 @@
+var remmina__masterthread__exec_8c =
+[
+ [ "remmina_masterthread_exec_and_wait", "remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d", null ],
+ [ "remmina_masterthread_exec_callback", "remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f", null ],
+ [ "remmina_masterthread_exec_cleanup_handler", "remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c", null ],
+ [ "remmina_masterthread_exec_is_main_thread", "remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4", null ],
+ [ "remmina_masterthread_exec_save_main_thread_id", "remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e", null ],
+ [ "gMainThreadID", "remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__masterthread__exec_8c_source.html b/docs/remmina__masterthread__exec_8c_source.html
new file mode 100644
index 000000000..6d1cf70df
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8c_source.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_masterthread_exec.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__masterthread__exec_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_masterthread_exec.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__masterthread__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) 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-2020 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="comment">/* Support for execution on main thread of some GTK related</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> * functions (due to threads deprecations in GTK) */</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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a>&quot;</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"><a class="line" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0"> 44</a></span>&#160;<span class="keyword">static</span> pthread_t <a class="code" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">gMainThreadID</a>;</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__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f"> 46</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec_callback</a>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d)</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;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* This function is called on main GTK Thread via gdk_threads_add_idlde()</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> * from remmina_masterthread_exec_and_wait() */</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">if</span> (!d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">cancelled</a>) {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">switch</span> (d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a>) {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordflow">case</span> FUNC_INIT_SAVE_CRED:</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">init_save_creds</a>.gp);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">case</span> FUNC_CHAT_RECEIVE:</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a>.gp, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a>.text);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">case</span> FUNC_FILE_GET_STRING:</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.retval = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.remminafile, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>.setting );</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">case</span> FUNC_GTK_LABEL_SET_TEXT:</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; gtk_label_set_text( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">gtk_label_set_text</a>.label, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">gtk_label_set_text</a>.str );</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">case</span> FUNC_FTP_CLIENT_UPDATE_TASK:</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a>( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a>.client, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a>.task );</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">case</span> FUNC_FTP_CLIENT_GET_WAITING_TASK:</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a>.retval = <a class="code" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a>( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a>.client );</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">case</span> FUNC_PROTOCOLWIDGET_EMIT_SIGNAL:</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a>.gp, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a>.signal_name);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">case</span> FUNC_PROTOCOLWIDGET_MPPROGRESS:</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.ret_mp = <a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.cnnobj, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.message,</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.response_callback, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.response_callback_data);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">case</span> FUNC_PROTOCOLWIDGET_MPDESTROY:</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a>.cnnobj, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a>.mp);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">case</span> FUNC_PROTOCOLWIDGET_MPSHOWRETRY:</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">protocolwidget_mpshowretry</a>.gp);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">case</span> FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN:</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a>(d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a>.gp, d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a>.port);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">case</span> FUNC_SFTP_CLIENT_CONFIRM_RESUME:</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.retval = <a class="code" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a>( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.client,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.path );</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">case</span> FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY:</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a>( d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.terminal,</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.codeset,</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.master,</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.slave);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</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; pthread_mutex_lock(&amp;d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">pt_mutex</a>);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">complete</a> = TRUE;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; pthread_cond_signal(&amp;d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">pt_cond</a>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; pthread_mutex_unlock(&amp;d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">pt_mutex</a>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">/* thread has been cancelled, so we must free d memory here */</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; g_free(d);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;}</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"><a class="line" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c"> 115</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec_cleanup_handler</a>(gpointer data)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;{</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d = data;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">cancelled</a> = TRUE;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;}</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"><a class="line" href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d"> 122</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">cancelled</a> = FALSE;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">complete</a> = FALSE;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; pthread_cleanup_push(<a class="code" href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec_cleanup_handler</a>, (<span class="keywordtype">void</span>*)d);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; pthread_mutex_init(&amp;d-&gt;pt_mutex, NULL);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; pthread_cond_init(&amp;d-&gt;pt_cond, NULL);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; gdk_threads_add_idle((GSourceFunc)<a class="code" href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec_callback</a>, (gpointer)d);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; pthread_mutex_lock(&amp;d-&gt;pt_mutex);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">while</span> (!d-&gt;complete)</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; pthread_cond_wait(&amp;d-&gt;pt_cond, &amp;d-&gt;pt_mutex);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; pthread_cleanup_pop(0);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; pthread_mutex_destroy(&amp;d-&gt;pt_mutex);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; pthread_cond_destroy(&amp;d-&gt;pt_cond);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;}</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850"> 138</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec_save_main_thread_id</a>()</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;{</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="comment">/* To be called from main thread at startup */</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">gMainThreadID</a> = pthread_self();</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;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c"> 144</a></span>&#160;gboolean <a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;{</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> pthread_equal(<a class="code" href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">gMainThreadID</a>, pthread_self()) != 0;</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="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#l00449">remmina_file.c:449</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#l01736">remmina_protocol_widget.c:1736</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a88f1cb3b53958da5786e5eebf31f95b2"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">remmina_masterthread_exec_data::file_get_string</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@15 file_get_string</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab863cc1442a992adfa323bc77ab88504"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a></div><div class="ttdeci">void remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01592">remmina_protocol_widget.c:1592</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a138904893cb9c7f6535b8dfc7ba17e33"><div class="ttname"><a href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a></div><div class="ttdeci">gint remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00906">remmina_sftp_client.c:906</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a56e0a400c4120f5394715811c83012f4"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">remmina_masterthread_exec_data::gtk_label_set_text</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@12 gtk_label_set_text</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aefee02ed8a8fe629eda81151fc8fcc4c"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">remmina_masterthread_exec_data::protocolwidget_emit_signal</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@18 protocolwidget_emit_signal</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a3ed43cd2e4ff590774318ffddb8f1493"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">remmina_masterthread_exec_data::ftp_client_update_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@16 ftp_client_update_task</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a7efb3ca6b61f2eda0dbad7ad9bc6d09b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">remmina_masterthread_exec_data::protocolwidget_mpdestroy</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@20 protocolwidget_mpdestroy</div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a4a595ce198f8adda31fe11348b0f734e"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e">remmina_masterthread_exec_save_main_thread_id</a></div><div class="ttdeci">void remmina_masterthread_exec_save_main_thread_id()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00138">remmina_masterthread_exec.c:138</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a2609267a5c4dcf8b9cbe411ee51656d9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">remmina_masterthread_exec_data::complete</a></div><div class="ttdeci">gboolean complete</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00124">remmina_masterthread_exec.h:124</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a384e675528400649161ea3ea41292020"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">remmina_masterthread_exec_data::chat_receive</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@14 chat_receive</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a71c221eacb5898a24c4f8981bc14a327"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">remmina_masterthread_exec_data::vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@24 vte_terminal_set_encoding_and_pty</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_adc8e3776e67abca9ab913bc33172e4ce"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00312">remmina_ssh_plugin.c:312</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a41d44d1cc03512701f61bb88a983e94b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">remmina_masterthread_exec_data::pt_cond</a></div><div class="ttdeci">pthread_cond_t pt_cond</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00121">remmina_masterthread_exec.h:121</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a8eeacd537241e5af184a2007c476baf0"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0">gMainThreadID</a></div><div class="ttdeci">static pthread_t gMainThreadID</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00044">remmina_masterthread_exec.c:44</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a33e4993b60c36eae89a6a0a943d28141"><div class="ttname"><a href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a></div><div class="ttdeci">RemminaFTPTask * remmina_ftp_client_get_waiting_task(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01153">remmina_ftp_client.c:1153</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ad96358f40ab056c91f796ddda886a1dd"><div class="ttname"><a href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a></div><div class="ttdeci">void remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01197">remmina_ftp_client.c:1197</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a38a38a1c8c466cd8ce8c6ddecff88b43"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">remmina_masterthread_exec_data::ftp_client_get_waiting_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@17 ftp_client_get_waiting_task</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a278e13b53a4fdb65498e00e908edb98d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01646">remmina_protocol_widget.c:1646</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ac390f60a6ecc7312c7e4cbc1c4de0a63"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">remmina_masterthread_exec_data::cancelled</a></div><div class="ttdeci">gboolean cancelled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00123">remmina_masterthread_exec.h:123</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a97cba8208a4348446159bf465b3233f5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a></div><div class="ttdeci">void remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00712">remmina_protocol_widget.c:712</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a78b123eca6709bceeacda7d791a94bf1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a></div><div class="ttdeci">RemminaMessagePanel * remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00687">remmina_protocol_widget.c:687</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7ed85f4ea19e0660dbf46f4f3dc4b895"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01674">remmina_protocol_widget.c:1674</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a6dd7314100e35804a8081e9837bd9304"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">remmina_masterthread_exec_data::init_save_creds</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@13 init_save_creds</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_abaf33a2c9ab6bcd73ba02bfe942a26a1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">remmina_masterthread_exec_data::protocolwidget_mpshowretry</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@21 protocolwidget_mpshowretry</div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a94985f15fd0d27c037824ee90b0ecd3c"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c">remmina_masterthread_exec_cleanup_handler</a></div><div class="ttdeci">static void remmina_masterthread_exec_cleanup_handler(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00115">remmina_masterthread_exec.c:115</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac3e5a7f14aef4adb2e57d35e9c180b3b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a></div><div class="ttdeci">void remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00565">remmina_protocol_widget.c:565</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_ae5c4d736f1856249c255430e010a179f"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f">remmina_masterthread_exec_callback</a></div><div class="ttdeci">static gboolean remmina_masterthread_exec_callback(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00046">remmina_masterthread_exec.c:46</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a633088cf0d1767a3c85852c1d4c625b6"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">remmina_masterthread_exec_data::protocolwidget_mpprogress</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@19 protocolwidget_mpprogress</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a94ca25645f970c7eb2a78b0234c60077"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">remmina_masterthread_exec_data::sftp_client_confirm_resume</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@23 sftp_client_confirm_resume</div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a96c5eaa302251a13d318bd7d13ed0c95"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">remmina_masterthread_exec_data::protocolwidget_panelshowlisten</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@22 protocolwidget_panelshowlisten</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad6766566c40f5265a8ec504e56951319"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">remmina_masterthread_exec_data::pt_mutex</a></div><div class="ttdeci">pthread_mutex_t pt_mutex</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00120">remmina_masterthread_exec.h:120</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__masterthread__exec_8c.html">remmina_masterthread_exec.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__masterthread__exec_8h.html b/docs/remmina__masterthread__exec_8h.html
new file mode 100644
index 000000000..e6800b6bc
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8h.html
@@ -0,0 +1,203 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_masterthread_exec.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__masterthread__exec_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_masterthread_exec.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__masterthread__exec_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a6ac3d74eb524ac9fb0ff7eef0cb1450e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a></td></tr>
+<tr class="separator:a6ac3d74eb524ac9fb0ff7eef0cb1450e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a14628c2470cac50e87916a70ea05c97d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a> (<a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *d)</td></tr>
+<tr class="separator:a14628c2470cac50e87916a70ea05c97d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d6fe9efdc6b84c16d99809003cfc850"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850">remmina_masterthread_exec_save_main_thread_id</a> (void)</td></tr>
+<tr class="separator:a3d6fe9efdc6b84c16d99809003cfc850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b90b9539fd1bffa1fdace50f9caf29c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c">remmina_masterthread_exec_is_main_thread</a> (void)</td></tr>
+<tr class="separator:a7b90b9539fd1bffa1fdace50f9caf29c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a6ac3d74eb524ac9fb0ff7eef0cb1450e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ac3d74eb524ac9fb0ff7eef0cb1450e">&#9670;&nbsp;</a></span>RemminaMTExecData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a> <a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a14628c2470cac50e87916a70ea05c97d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14628c2470cac50e87916a70ea05c97d">&#9670;&nbsp;</a></span>remmina_masterthread_exec_and_wait()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_masterthread_exec_and_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a7b90b9539fd1bffa1fdace50f9caf29c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b90b9539fd1bffa1fdace50f9caf29c">&#9670;&nbsp;</a></span>remmina_masterthread_exec_is_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_masterthread_exec_is_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00144">144</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d6fe9efdc6b84c16d99809003cfc850"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d6fe9efdc6b84c16d99809003cfc850">&#9670;&nbsp;</a></span>remmina_masterthread_exec_save_main_thread_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_masterthread_exec_save_main_thread_id </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8c_source.html#l00138">138</a> of file <a class="el" href="remmina__masterthread__exec_8c_source.html">remmina_masterthread_exec.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__masterthread__exec_8h.js b/docs/remmina__masterthread__exec_8h.js
new file mode 100644
index 000000000..d90da47ea
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8h.js
@@ -0,0 +1,8 @@
+var remmina__masterthread__exec_8h =
+[
+ [ "remmina_masterthread_exec_data", "structremmina__masterthread__exec__data.html", "structremmina__masterthread__exec__data" ],
+ [ "RemminaMTExecData", "remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e", null ],
+ [ "remmina_masterthread_exec_and_wait", "remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d", null ],
+ [ "remmina_masterthread_exec_is_main_thread", "remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c", null ],
+ [ "remmina_masterthread_exec_save_main_thread_id", "remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__masterthread__exec_8h_source.html b/docs/remmina__masterthread__exec_8h_source.html
new file mode 100644
index 000000000..cc3e6d0fb
--- /dev/null
+++ b/docs/remmina__masterthread__exec_8h_source.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_masterthread_exec.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__masterthread__exec_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_masterthread_exec.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__masterthread__exec_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-2020 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 &lt;pthread.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a>&quot;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__ftp__client_8h.html">remmina_ftp_client.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__ssh__plugin_8h.html">remmina_ssh_plugin.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a> {</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a"> 44</a></span>&#160; <span class="keyword">enum</span> { <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a">FUNC_GTK_LABEL_SET_TEXT</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d"> 45</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d">FUNC_INIT_SAVE_CRED</a>, <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537">FUNC_CHAT_RECEIVE</a>, <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10">FUNC_FILE_GET_STRING</a>,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82"> 46</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82">FUNC_FTP_CLIENT_UPDATE_TASK</a>, <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9">FUNC_FTP_CLIENT_GET_WAITING_TASK</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09"> 47</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09">FUNC_SFTP_CLIENT_CONFIRM_RESUME</a>,</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567"> 48</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567">FUNC_PROTOCOLWIDGET_EMIT_SIGNAL</a>,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197"> 49</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197">FUNC_PROTOCOLWIDGET_MPPROGRESS</a>,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809"> 50</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809">FUNC_PROTOCOLWIDGET_MPDESTROY</a>,</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b"> 51</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b">FUNC_PROTOCOLWIDGET_MPSHOWRETRY</a>,</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60"> 52</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60">FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN</a>,</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605"> 53</a></span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605">FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY</a> } <a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">union </span>{</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6"> 57</a></span>&#160; GtkLabel * <a class="code" href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6">label</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea"> 58</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea">str</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">gtk_label_set_text</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c"> 61</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">init_save_creds</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de"> 65</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de">text</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9"> 68</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * <a class="code" href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9">remminafile</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b"> 69</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b">setting</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15"> 70</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15">retval</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b"> 73</a></span>&#160; <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> * <a class="code" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">client</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1"> 74</a></span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> * <a class="code" href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1">task</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> * <a class="code" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">client</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c"> 78</a></span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> * <a class="code" href="structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c">retval</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910"> 82</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910">signal_name</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd"> 85</a></span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> * <a class="code" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">cnnobj</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1"> 86</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1">message</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543"> 87</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> <a class="code" href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543">response_callback</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658"> 88</a></span>&#160; gpointer <a class="code" href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658">response_callback_data</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1"> 89</a></span>&#160; RemminaMessagePanel * <a class="code" href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1">ret_mp</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> * <a class="code" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">cnnobj</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050"> 93</a></span>&#160; RemminaMessagePanel * <a class="code" href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050">mp</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">protocolwidget_mpshowretry</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9"> 100</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9">port</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d"> 104</a></span>&#160; <a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> * <a class="code" href="structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d">client</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9"> 105</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9">path</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07"> 106</a></span>&#160; gint <a class="code" href="structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07">retval</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBVTE</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1"> 111</a></span>&#160; VteTerminal * <a class="code" href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1">terminal</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668"> 112</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> * <a class="code" href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668">codeset</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61"> 113</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61">master</a>;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e"> 114</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e">slave</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; } <a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">/* Mutex for thread synchronization */</span></div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319"> 120</a></span>&#160; pthread_mutex_t <a class="code" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">pt_mutex</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b"> 121</a></span>&#160; pthread_cond_t <a class="code" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">pt_cond</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">/* Flag to catch cancellations */</span></div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63"> 123</a></span>&#160; gboolean <a class="code" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">cancelled</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9"> 124</a></span>&#160; gboolean <a class="code" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">complete</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;} <a class="code" href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a>;</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="keywordtype">void</span> <a class="code" href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850">remmina_masterthread_exec_save_main_thread_id</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;gboolean <a class="code" href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c">remmina_masterthread_exec_is_main_thread</a>(<span class="keywordtype">void</span>);</div><div class="ttc" id="structremmina__masterthread__exec__data_html_ab4a1d527225cf5a768814b02acb0e7a1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1">remmina_masterthread_exec_data::ret_mp</a></div><div class="ttdeci">RemminaMessagePanel * ret_mp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00089">remmina_masterthread_exec.h:89</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a83087d1f4af27c63ec04ee91cb85d050"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050">remmina_masterthread_exec_data::mp</a></div><div class="ttdeci">RemminaMessagePanel * mp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00093">remmina_masterthread_exec.h:93</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a88f1cb3b53958da5786e5eebf31f95b2"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">remmina_masterthread_exec_data::file_get_string</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@15 file_get_string</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a02bfd27b9d74423a89c656e4ebbfa77d"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d">remmina_masterthread_exec_data::client</a></div><div class="ttdeci">RemminaSFTPClient * client</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00104">remmina_masterthread_exec.h:104</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a56e0a400c4120f5394715811c83012f4"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">remmina_masterthread_exec_data::gtk_label_set_text</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@12 gtk_label_set_text</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aefee02ed8a8fe629eda81151fc8fcc4c"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">remmina_masterthread_exec_data::protocolwidget_emit_signal</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@18 protocolwidget_emit_signal</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605">remmina_masterthread_exec_data::FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00053">remmina_masterthread_exec.h:53</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad5d676070c4a9c71302eb6052b20b6d9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9">remmina_masterthread_exec_data::port</a></div><div class="ttdeci">int port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00100">remmina_masterthread_exec.h:100</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d">remmina_masterthread_exec_data::FUNC_INIT_SAVE_CRED</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00045">remmina_masterthread_exec.h:45</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a3ed43cd2e4ff590774318ffddb8f1493"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">remmina_masterthread_exec_data::ftp_client_update_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@16 ftp_client_update_task</div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html"><div class="ttname"><a href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00050">remmina_ftp_client.h:50</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a670e48a166439326cb75d31499b19ec1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1">remmina_masterthread_exec_data::message</a></div><div class="ttdeci">const gchar * message</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00086">remmina_masterthread_exec.h:86</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10">remmina_masterthread_exec_data::FUNC_FILE_GET_STRING</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00045">remmina_masterthread_exec.h:45</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a7efb3ca6b61f2eda0dbad7ad9bc6d09b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">remmina_masterthread_exec_data::protocolwidget_mpdestroy</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@20 protocolwidget_mpdestroy</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197">remmina_masterthread_exec_data::FUNC_PROTOCOLWIDGET_MPPROGRESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00049">remmina_masterthread_exec.h:49</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537">remmina_masterthread_exec_data::FUNC_CHAT_RECEIVE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00045">remmina_masterthread_exec.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html"><div class="ttname"><a href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00152">rcw.c:152</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a2609267a5c4dcf8b9cbe411ee51656d9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">remmina_masterthread_exec_data::complete</a></div><div class="ttdeci">gboolean complete</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00124">remmina_masterthread_exec.h:124</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html_a6ac3d74eb524ac9fb0ff7eef0cb1450e"><div class="ttname"><a href="remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e">RemminaMTExecData</a></div><div class="ttdeci">struct remmina_masterthread_exec_data RemminaMTExecData</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a384e675528400649161ea3ea41292020"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">remmina_masterthread_exec_data::chat_receive</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@14 chat_receive</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a71c221eacb5898a24c4f8981bc14a327"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">remmina_masterthread_exec_data::vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@24 vte_terminal_set_encoding_and_pty</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09">remmina_masterthread_exec_data::FUNC_SFTP_CLIENT_CONFIRM_RESUME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00047">remmina_masterthread_exec.h:47</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a41d44d1cc03512701f61bb88a983e94b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">remmina_masterthread_exec_data::pt_cond</a></div><div class="ttdeci">pthread_cond_t pt_cond</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00121">remmina_masterthread_exec.h:121</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9">remmina_masterthread_exec_data::FUNC_FTP_CLIENT_GET_WAITING_TASK</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00046">remmina_masterthread_exec.h:46</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a0725f553412b93c289f10bd2a49a112b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">remmina_masterthread_exec_data::client</a></div><div class="ttdeci">RemminaFTPClient * client</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00073">remmina_masterthread_exec.h:73</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a38a38a1c8c466cd8ce8c6ddecff88b43"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">remmina_masterthread_exec_data::ftp_client_get_waiting_task</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@17 ftp_client_get_waiting_task</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aca5558e097d2874a89f561a14bdd407c"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">remmina_masterthread_exec_data::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00061">remmina_masterthread_exec.h:61</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ac390f60a6ecc7312c7e4cbc1c4de0a63"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">remmina_masterthread_exec_data::cancelled</a></div><div class="ttdeci">gboolean cancelled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00123">remmina_masterthread_exec.h:123</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html_a3d6fe9efdc6b84c16d99809003cfc850"><div class="ttname"><a href="remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850">remmina_masterthread_exec_save_main_thread_id</a></div><div class="ttdeci">void remmina_masterthread_exec_save_main_thread_id(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00138">remmina_masterthread_exec.c:138</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a0bf7d0588171676f9801e40ccea9e2f1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1">remmina_masterthread_exec_data::task</a></div><div class="ttdeci">RemminaFTPTask * task</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00074">remmina_masterthread_exec.h:74</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aea0366c99f68b738f396678ea6b77e07"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07">remmina_masterthread_exec_data::retval</a></div><div class="ttdeci">gint retval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00106">remmina_masterthread_exec.h:106</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567">remmina_masterthread_exec_data::FUNC_PROTOCOLWIDGET_EMIT_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00048">remmina_masterthread_exec.h:48</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a967491ec9115ba8e0d4603017fc439a6"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6">remmina_masterthread_exec_data::label</a></div><div class="ttdeci">GtkLabel * label</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00057">remmina_masterthread_exec.h:57</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aebeb1a8332f2e1ce5264bf73348bdffd"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">remmina_masterthread_exec_data::cnnobj</a></div><div class="ttdeci">RemminaConnectionObject * cnnobj</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00085">remmina_masterthread_exec.h:85</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00056">remmina_sftp_client.h:56</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a6dd7314100e35804a8081e9837bd9304"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">remmina_masterthread_exec_data::init_save_creds</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@13 init_save_creds</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_abaf33a2c9ab6bcd73ba02bfe942a26a1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">remmina_masterthread_exec_data::protocolwidget_mpshowretry</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@21 protocolwidget_mpshowretry</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a9a7d8ee3e4b091baee9167892b18e0de"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de">remmina_masterthread_exec_data::text</a></div><div class="ttdeci">const gchar * text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00065">remmina_masterthread_exec.h:65</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a8037aefe9dcee17afe1b14166800a668"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668">remmina_masterthread_exec_data::codeset</a></div><div class="ttdeci">const char * codeset</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00112">remmina_masterthread_exec.h:112</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a24956c80352de0631eed5e61138c55d1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1">remmina_masterthread_exec_data::terminal</a></div><div class="ttdeci">VteTerminal * terminal</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00111">remmina_masterthread_exec.h:111</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2923c94c1caf1ac4a7eb48361d2670a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a></div><div class="ttdeci">void(* RemminaMessagePanelCallback)(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00065">remmina_message_panel.h:65</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a41fe769268faa363a261ac4ce02ac35e"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e">remmina_masterthread_exec_data::slave</a></div><div class="ttdeci">int slave</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00114">remmina_masterthread_exec.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html"><div class="ttname"><a href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00109">remmina_ftp_client.h:109</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b">remmina_masterthread_exec_data::FUNC_PROTOCOLWIDGET_MPSHOWRETRY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00051">remmina_masterthread_exec.h:51</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a633088cf0d1767a3c85852c1d4c625b6"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">remmina_masterthread_exec_data::protocolwidget_mpprogress</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@19 protocolwidget_mpprogress</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a02cdefa13335a3bf35a16791b2af0910"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910">remmina_masterthread_exec_data::signal_name</a></div><div class="ttdeci">const gchar * signal_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00082">remmina_masterthread_exec.h:82</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ae203540a298d2f92459e740789e8799c"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c">remmina_masterthread_exec_data::retval</a></div><div class="ttdeci">RemminaFTPTask * retval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00078">remmina_masterthread_exec.h:78</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a94ca25645f970c7eb2a78b0234c60077"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">remmina_masterthread_exec_data::sftp_client_confirm_resume</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@23 sftp_client_confirm_resume</div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html_a7b90b9539fd1bffa1fdace50f9caf29c"><div class="ttname"><a href="remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html"><div class="ttname"><a href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_abbe5b4e21ccb693a6505c958e150984b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b">remmina_masterthread_exec_data::setting</a></div><div class="ttdeci">const gchar * setting</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00069">remmina_masterthread_exec.h:69</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html"><div class="ttname"><a href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809">remmina_masterthread_exec_data::FUNC_PROTOCOLWIDGET_MPDESTROY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00050">remmina_masterthread_exec.h:50</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab2d4a59a7498371e4a12516a4d4349c9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9">remmina_masterthread_exec_data::path</a></div><div class="ttdeci">const gchar * path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00105">remmina_masterthread_exec.h:105</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad967414b3a4f021b073529a6e9c48d61"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61">remmina_masterthread_exec_data::master</a></div><div class="ttdeci">int master</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00113">remmina_masterthread_exec.h:113</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a9d393b6e73a6971ac91cad231f796e15"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15">remmina_masterthread_exec_data::retval</a></div><div class="ttdeci">const gchar * retval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00070">remmina_masterthread_exec.h:70</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad918fe1f14834f71a7a55bdee0c9a543"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543">remmina_masterthread_exec_data::response_callback</a></div><div class="ttdeci">RemminaMessagePanelCallback response_callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00087">remmina_masterthread_exec.h:87</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a">remmina_masterthread_exec_data::FUNC_GTK_LABEL_SET_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00044">remmina_masterthread_exec.h:44</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60">remmina_masterthread_exec_data::FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00052">remmina_masterthread_exec.h:52</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a96c5eaa302251a13d318bd7d13ed0c95"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">remmina_masterthread_exec_data::protocolwidget_panelshowlisten</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@22 protocolwidget_panelshowlisten</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad02dd3e2c0839ed5dda61b49a4377eb9"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9">remmina_masterthread_exec_data::remminafile</a></div><div class="ttdeci">RemminaFile * remminafile</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00068">remmina_masterthread_exec.h:68</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aed4afd0ce7ecf117534076f500aa0658"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658">remmina_masterthread_exec_data::response_callback_data</a></div><div class="ttdeci">gpointer response_callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00088">remmina_masterthread_exec.h:88</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82">remmina_masterthread_exec_data::FUNC_FTP_CLIENT_UPDATE_TASK</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00046">remmina_masterthread_exec.h:46</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad52781108d6219754fdff16e0e1764ea"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea">remmina_masterthread_exec_data::str</a></div><div class="ttdeci">const gchar * str</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00058">remmina_masterthread_exec.h:58</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_ad6766566c40f5265a8ec504e56951319"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">remmina_masterthread_exec_data::pt_mutex</a></div><div class="ttdeci">pthread_mutex_t pt_mutex</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00120">remmina_masterthread_exec.h:120</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__message__panel_8c.html b/docs/remmina__message__panel_8c.html
new file mode 100644
index 000000000..01f1f0109
--- /dev/null
+++ b/docs/remmina__message__panel_8c.html
@@ -0,0 +1,823 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_message_panel.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__message__panel_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_message_panel.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__message__panel_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad3ce5558696c03b0355b44b7f1b0d31e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e">G_DEFINE_TYPE_WITH_PRIVATE</a> (RemminaMessagePanel, remmina_message_panel, GTK_TYPE_BOX)</td></tr>
+<tr class="separator:ad3ce5558696c03b0355b44b7f1b0d31e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6b5ef1f109af9209f76d194dd704a8c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c">remmina_message_panel_init</a> (RemminaMessagePanel *mp)</td></tr>
+<tr class="separator:ab6b5ef1f109af9209f76d194dd704a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ed806c022986b81ef4db70e6d89abc9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9">remmina_message_panel_class_init</a> (RemminaMessagePanelClass *class)</td></tr>
+<tr class="separator:a6ed806c022986b81ef4db70e6d89abc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7015155d2b1db3e74de4d4d5ef7cca55"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a> ()</td></tr>
+<tr class="separator:a7015155d2b1db3e74de4d4d5ef7cca55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd857d6074d031de315fed1ffe0b6062"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a> (GtkButton *button, gpointer user_data)</td></tr>
+<tr class="separator:abd857d6074d031de315fed1ffe0b6062"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afae4072b7d8b54392ec08da7d6ead620"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:afae4072b7d8b54392ec08da7d6ead620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae01d27ae9f678dc5a4fa32f0b401f434"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ae01d27ae9f678dc5a4fa32f0b401f434"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5b1825b5d4e56ecc2f25c28bb042c32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ae5b1825b5d4e56ecc2f25c28bb042c32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2cec8bc8216154388727b7e35200667"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a> (RemminaMessagePanel *mp, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags)</td></tr>
+<tr class="separator:ae2cec8bc8216154388727b7e35200667"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac10f450f856ca7d9c0b6896261e9c407"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a> (RemminaMessagePanel *mp, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ac10f450f856ca7d9c0b6896261e9c407"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb1f47e5ad88086c1bda1b0a156c34d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a> (RemminaMessagePanel *mp)</td></tr>
+<tr class="separator:aacb1f47e5ad88086c1bda1b0a156c34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e20944d484c95036eeb6b5d7775c901"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a> (RemminaMessagePanel *mp, int entryid, const gchar *text)</td></tr>
+<tr class="separator:a0e20944d484c95036eeb6b5d7775c901"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44054d029d4615092ae8a2ee1bf81db4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:a44054d029d4615092ae8a2ee1bf81db4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67a48217d44350e028ed95b1b55f0b0f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a> (RemminaMessagePanel *mp, int entryid, gboolean state)</td></tr>
+<tr class="separator:a67a48217d44350e028ed95b1b55f0b0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80bc2fcb39c236da739593c2134c73fa"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:a80bc2fcb39c236da739593c2134c73fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec9dcd96d0148fec9cdc9e94cc8dc1ff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a> (RemminaMessagePanel *mp, int entryid, const gchar *filename)</td></tr>
+<tr class="separator:aec9dcd96d0148fec9cdc9e94cc8dc1ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab89dba73bc6832c6c5061a0d8bd0fbb4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:ab89dba73bc6832c6c5061a0d8bd0fbb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7db7b9f49fe6b83b17471116d363d40"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a> (RemminaMessagePanel *mp, gint response_id)</td></tr>
+<tr class="separator:af7db7b9f49fe6b83b17471116d363d40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ad7824aab39b78f2b1b1ce661213f8f1c"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">messagepanel_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td></tr>
+<tr class="separator:ad7824aab39b78f2b1b1ce661213f8f1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac93f8305d443470b429d0bf723e30953"><td class="memItemLeft" align="right" valign="top">static const gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a> [] = &quot;btn_response&quot;</td></tr>
+<tr class="separator:ac93f8305d443470b429d0bf723e30953"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad3ce5558696c03b0355b44b7f1b0d31e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3ce5558696c03b0355b44b7f1b0d31e">&#9670;&nbsp;</a></span>G_DEFINE_TYPE_WITH_PRIVATE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE_WITH_PRIVATE </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_message_panel&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_BOX&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="abd857d6074d031de315fed1ffe0b6062"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd857d6074d031de315fed1ffe0b6062">&#9670;&nbsp;</a></span>remmina_message_panel_button_clicked_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_message_panel_button_clicked_callback </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ed806c022986b81ef4db70e6d89abc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ed806c022986b81ef4db70e6d89abc9">&#9670;&nbsp;</a></span>remmina_message_panel_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_message_panel_class_init </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanelClass *&#160;</td>
+ <td class="paramname"><em>class</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00072">72</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ab89dba73bc6832c6c5061a0d8bd0fbb4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab89dba73bc6832c6c5061a0d8bd0fbb4">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_message_panel_field_get_filename </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00776">776</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a44054d029d4615092ae8a2ee1bf81db4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44054d029d4615092ae8a2ee1bf81db4">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_message_panel_field_get_string </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00704">704</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a80bc2fcb39c236da739593c2134c73fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80bc2fcb39c236da739593c2134c73fa">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_switch_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_message_panel_field_get_switch_state </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00740">740</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="aec9dcd96d0148fec9cdc9e94cc8dc1ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec9dcd96d0148fec9cdc9e94cc8dc1ff">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_filename </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00759">759</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a0e20944d484c95036eeb6b5d7775c901"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e20944d484c95036eeb6b5d7775c901">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_string </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00688">688</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a67a48217d44350e028ed95b1b55f0b0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67a48217d44350e028ed95b1b55f0b0f">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_switch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_switch </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>state</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00722">722</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="aacb1f47e5ad88086c1bda1b0a156c34d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacb1f47e5ad88086c1bda1b0a156c34d">&#9670;&nbsp;</a></span>remmina_message_panel_focus_auth_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_focus_auth_entry </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00653">653</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ab6b5ef1f109af9209f76d194dd704a8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6b5ef1f109af9209f76d194dd704a8c">&#9670;&nbsp;</a></span>remmina_message_panel_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_message_panel_init </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a7015155d2b1db3e74de4d4d5ef7cca55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7015155d2b1db3e74de4d4d5ef7cca55">&#9670;&nbsp;</a></span>remmina_message_panel_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_message_panel_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00088">88</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="af7db7b9f49fe6b83b17471116d363d40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7db7b9f49fe6b83b17471116d363d40">&#9670;&nbsp;</a></span>remmina_message_panel_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_response </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00794">794</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae2cec8bc8216154388727b7e35200667"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2cec8bc8216154388727b7e35200667">&#9670;&nbsp;</a></span>remmina_message_panel_setup_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_auth </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password_prompt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00283">283</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ac10f450f856ca7d9c0b6896261e9c407"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac10f450f856ca7d9c0b6896261e9c407">&#9670;&nbsp;</a></span>remmina_message_panel_setup_auth_x509()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_auth_x509 </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00481">481</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae01d27ae9f678dc5a4fa32f0b401f434"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae01d27ae9f678dc5a4fa32f0b401f434">&#9670;&nbsp;</a></span>remmina_message_panel_setup_message()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_message </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00175">175</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="afae4072b7d8b54392ec08da7d6ead620"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afae4072b7d8b54392ec08da7d6ead620">&#9670;&nbsp;</a></span>remmina_message_panel_setup_progress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_progress </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00128">128</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5b1825b5d4e56ecc2f25c28bb042c32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5b1825b5d4e56ecc2f25c28bb042c32">&#9670;&nbsp;</a></span>remmina_message_panel_setup_question()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_question </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00214">214</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ac93f8305d443470b429d0bf723e30953"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac93f8305d443470b429d0bf723e30953">&#9670;&nbsp;</a></span>btn_response_key</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar btn_response_key[] = &quot;btn_response&quot;</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ad7824aab39b78f2b1b1ce661213f8f1c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7824aab39b78f2b1b1ce661213f8f1c">&#9670;&nbsp;</a></span>messagepanel_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint messagepanel_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__message__panel_8c.html">remmina_message_panel.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__message__panel_8c.js b/docs/remmina__message__panel_8c.js
new file mode 100644
index 000000000..c1a7c1c7a
--- /dev/null
+++ b/docs/remmina__message__panel_8c.js
@@ -0,0 +1,24 @@
+var remmina__message__panel_8c =
+[
+ [ "RemminaMessagePanelPrivate", "struct_remmina_message_panel_private.html", "struct_remmina_message_panel_private" ],
+ [ "G_DEFINE_TYPE_WITH_PRIVATE", "remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e", null ],
+ [ "remmina_message_panel_button_clicked_callback", "remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062", null ],
+ [ "remmina_message_panel_class_init", "remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9", null ],
+ [ "remmina_message_panel_field_get_filename", "remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4", null ],
+ [ "remmina_message_panel_field_get_string", "remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4", null ],
+ [ "remmina_message_panel_field_get_switch_state", "remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa", null ],
+ [ "remmina_message_panel_field_set_filename", "remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff", null ],
+ [ "remmina_message_panel_field_set_string", "remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901", null ],
+ [ "remmina_message_panel_field_set_switch", "remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f", null ],
+ [ "remmina_message_panel_focus_auth_entry", "remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d", null ],
+ [ "remmina_message_panel_init", "remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c", null ],
+ [ "remmina_message_panel_new", "remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55", null ],
+ [ "remmina_message_panel_response", "remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40", null ],
+ [ "remmina_message_panel_setup_auth", "remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667", null ],
+ [ "remmina_message_panel_setup_auth_x509", "remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407", null ],
+ [ "remmina_message_panel_setup_message", "remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434", null ],
+ [ "remmina_message_panel_setup_progress", "remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620", null ],
+ [ "remmina_message_panel_setup_question", "remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32", null ],
+ [ "btn_response_key", "remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953", null ],
+ [ "messagepanel_signals", "remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__message__panel_8c_source.html b/docs/remmina__message__panel_8c_source.html
new file mode 100644
index 000000000..699aff5de
--- /dev/null
+++ b/docs/remmina__message__panel_8c_source.html
@@ -0,0 +1,146 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_message_panel.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__message__panel_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_message_panel.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__message__panel_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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__message__panel_8h.html">remmina_message_panel.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__trace__calls_8h.html">remmina/remmina_trace_calls.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"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct_remmina_message_panel_private.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;{</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283"> 50</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> <a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4"> 51</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8"> 52</a></span>&#160; GtkWidget *w[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a>];</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e"> 55</a></span>&#160;<a class="code" href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e">G_DEFINE_TYPE_WITH_PRIVATE</a> (RemminaMessagePanel, remmina_message_panel, GTK_TYPE_BOX)</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; RESPONSE,</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c"> 61</a></span>&#160;};</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">messagepanel_signals</a>[<a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>];</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953"> 65</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>[] = <span class="stringliteral">&quot;btn_response&quot;</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__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c"> 67</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c">remmina_message_panel_init</a> (RemminaMessagePanel *mp)</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;}</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9"> 72</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9">remmina_message_panel_class_init</a>(RemminaMessagePanelClass *<span class="keyword">class</span>)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// class-&gt;transform_text = my_app_label_real_transform_text;</span></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; <a class="code" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">messagepanel_signals</a>[RESPONSE] =</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; g_signal_new (<span class="stringliteral">&quot;response&quot;</span>,</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; G_OBJECT_CLASS_TYPE (<span class="keyword">class</span>),</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; G_SIGNAL_RUN_LAST,</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; G_STRUCT_OFFSET (RemminaMessagePanelClass, response),</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; NULL, NULL,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; NULL,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; G_TYPE_NONE, 1,</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; G_TYPE_INT);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</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"><a class="line" href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294"> 88</a></span>&#160;RemminaMessagePanel *<a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>()</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;{</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; RemminaMessagePanel* mp;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; mp = (RemminaMessagePanel*)g_object_new(REMMINA_TYPE_MESSAGE_PANEL,</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="stringliteral">&quot;orientation&quot;</span>, GTK_ORIENTATION_VERTICAL,</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="stringliteral">&quot;spacing&quot;</span>, 0,</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; NULL);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = NULL;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = NULL;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">/* Set widget class, for CSS styling */</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// gtk_widget_set_name(GTK_WIDGET(mp), &quot;remmina-cw-message-panel&quot;);</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; gtk_style_context_add_class(gtk_widget_get_style_context(GTK_WIDGET(mp)), <span class="stringliteral">&quot;message_panel&quot;</span>);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; gtk_style_context_add_class(gtk_widget_get_style_context(GTK_WIDGET(mp)), <span class="stringliteral">&quot;background&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> mp;</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__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062"> 111</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>(</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; GtkButton *button, gpointer user_data)</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;{</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; RemminaMessagePanel *mp = (RemminaMessagePanel*)user_data;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; gint btn_data;</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; btn_data = (gint)((gint64)g_object_get_data(G_OBJECT(button), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>));</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; <span class="comment">/* Calls the callback, if defined */</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> != NULL)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; (*priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a>)(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a>, btn_data);</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"> 126</span>&#160;}</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"><a class="line" href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620"> 128</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</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; <span class="comment">/*</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> * Setup a message panel to show a spinner, a message like &quot;Connecting…&quot;,</span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> * and a button to cancel the action in progress</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GtkBox *hbox;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; GtkWidget *w;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</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; <span class="keywordflow">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; printf(<span class="stringliteral">&quot;WARNING: %s called in a subthread. This should not happen.\n&quot;</span>, __func__);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">raise</span>(SIGINT);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; hbox = GTK_BOX(gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0));</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; <span class="comment">/* A spinner */</span></div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; w = gtk_spinner_new();</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; gtk_box_pack_start(hbox, w, FALSE, FALSE, 0);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; gtk_spinner_start(GTK_SPINNER(w));</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; <span class="comment">/* A message */</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; w = gtk_label_new(message);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; gtk_box_pack_start(hbox, w, TRUE, TRUE, 0);</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; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = response_callback;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = response_callback_data;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="comment">/* A button to cancel the action. The cancel button is available</span></div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> * only when a response_callback function is defined. */</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">if</span> (response_callback) {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; w = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Cancel&quot;</span>));</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gtk_box_pack_end(hbox, w, FALSE, FALSE, 0);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; g_object_set_data(G_OBJECT(w), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_CANCEL);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; g_signal_connect(G_OBJECT(w), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</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;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gtk_box_pack_start(GTK_BOX(mp), GTK_WIDGET(hbox), TRUE, TRUE, 0);</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; gtk_widget_show_all(GTK_WIDGET(mp));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</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"><a class="line" href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434"> 175</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> * Setup a message panel to a message to read like &quot;Cannot connect…&quot;,</span></div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> * and a button to close the panel</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> */</span></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; TRACE_CALL(__func__);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; GtkBox *hbox;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; GtkWidget *w;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; printf(<span class="stringliteral">&quot;WARNING: %s called in a subthread. This should not happen.\n&quot;</span>, __func__);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</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; hbox = GTK_BOX(gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0));</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="comment">/* A message */</span></div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; w = gtk_label_new(message);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gtk_box_pack_start(hbox, w, TRUE, TRUE, 0);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="comment">/* A button to confirm reading */</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; w = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Close&quot;</span>));</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_box_pack_end(hbox, w, FALSE, FALSE, 0);</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; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = response_callback;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = response_callback_data;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_object_set_data(G_OBJECT(w), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_OK);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; g_signal_connect(G_OBJECT(w), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</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; gtk_box_pack_start(GTK_BOX(mp), GTK_WIDGET(hbox), TRUE, TRUE, 0);</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"> 210</span>&#160; gtk_widget_show_all(GTK_WIDGET(mp));</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;}</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"><a class="line" href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32"> 214</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;{</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment"> * Setup a message panel to a message to read like &quot;Do you accept ?&quot;,</span></div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment"> * and a pair of button for Yes and No</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment"> * message is an HTML string</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"> * Callback will receive GTK_RESPONSE_NO for No, GTK_RESPONSE_YES for Yes</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="comment"> */</span></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; TRACE_CALL(__func__);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; GtkWidget *bbox;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; GtkWidget *w;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</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; <span class="keywordflow">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; printf(<span class="stringliteral">&quot;WARNING: %s called in a subthread. This should not happen. Raising SIGINT for debugging.\n&quot;</span>, __func__);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keyword">raise</span>(SIGINT);</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"> 235</span>&#160; <span class="comment">/* Create grid */</span></div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; gtk_widget_set_halign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; gtk_widget_set_valign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="comment">/* A message, in HTML format */</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; w = gtk_label_new(NULL);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; gtk_label_set_markup(GTK_LABEL(w), message);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; gtk_widget_set_halign(GTK_WIDGET(w), GTK_ALIGN_START);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; gtk_widget_set_valign(GTK_WIDGET(w), GTK_ALIGN_FILL);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(w), 18);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(w), 9);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(w), 18);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(w), 18);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gtk_widget_show(w);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; gtk_grid_attach(GTK_GRID(grid), w, 0, 0, 2, 1);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="comment">/* A button for yes and one for no */</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_START);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; gtk_grid_attach(GTK_GRID(grid), bbox, 0, 1, 1, 1);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; w = gtk_button_new_with_label(_(<span class="stringliteral">&quot;Yes&quot;</span>));</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; gtk_widget_set_valign(GTK_WIDGET(w), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; g_object_set_data(G_OBJECT(w), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_YES);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; g_signal_connect(G_OBJECT(w), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gtk_container_add(GTK_CONTAINER(bbox), w);</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; w = gtk_button_new_with_label(_(<span class="stringliteral">&quot;No&quot;</span>));</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; gtk_widget_set_valign(GTK_WIDGET(w), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; g_object_set_data(G_OBJECT(w), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_NO);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = response_callback;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = response_callback_data;</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; g_signal_connect(G_OBJECT(w), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; gtk_container_add(GTK_CONTAINER(bbox), w);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; gtk_box_pack_start(GTK_BOX(mp), GTK_WIDGET(grid), TRUE, TRUE, 0);</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; gtk_widget_show_all(GTK_WIDGET(mp));</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</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;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667"> 283</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a>(RemminaMessagePanel *mp, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data, <span class="keyword">const</span> gchar *title, <span class="keyword">const</span> gchar *password_prompt, <span class="keywordtype">unsigned</span> flags)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; GtkWidget *grid;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; GtkWidget *password_entry;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; GtkWidget *username_entry;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; GtkWidget *domain_entry;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; GtkWidget *save_password_switch;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; GtkWidget *bbox;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; GtkWidget *button_ok;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; GtkWidget *button_cancel;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordtype">int</span> grid_row;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</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; <span class="keywordflow">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; printf(<span class="stringliteral">&quot;WARNING: %s called in a subthread. This should not happen. Raising SIGINT to debug.\n&quot;</span>, __func__);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keyword">raise</span>(SIGINT);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</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; <span class="comment">/* Create grid */</span></div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; gtk_widget_set_halign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_widget_set_valign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="comment">//gtk_grid_set_column_homogeneous(GTK_GRID(grid), TRUE);</span></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; <span class="comment">/* Entries */</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; grid_row = 0;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; widget = gtk_label_new(title);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; gtk_style_context_add_class(gtk_widget_get_style_context(widget), <span class="stringliteral">&quot;title_label&quot;</span>);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_FILL);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 3, 1);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; grid_row++;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (flags &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a>) {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Username&quot;</span>));</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; username_entry = gtk_entry_new();</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="comment">// gtk_style_context_add_class(gtk_widget_get_style_context(username_entry), &quot;panel_entry&quot;);</span></div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; gtk_widget_set_halign(GTK_WIDGET(username_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; gtk_widget_set_valign(GTK_WIDGET(username_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(username_entry), 9);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(username_entry), 3);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(username_entry), 6);</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(username_entry), 18);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="comment">//gtk_entry_set_activates_default (GTK_ENTRY(username_entry), TRUE);</span></div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; gtk_grid_attach(GTK_GRID(grid), username_entry, 1, grid_row, 2, 1);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(username_entry), 100);</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">if</span> (flags &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a>) {</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; g_object_set(username_entry, <span class="stringliteral">&quot;editable&quot;</span>, FALSE, NULL);</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"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<span class="comment"> if (default_username &amp;&amp; default_username[0] != &#39;\0&#39;) {</span></div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="comment"> gtk_entry_set_text(GTK_ENTRY(username_entry), default_username);</span></div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="comment"> }</span></div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; grid_row++;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; username_entry = NULL;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; }</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="comment">/* The password/key field */</span></div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; widget = gtk_label_new(password_prompt);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; password_entry = gtk_entry_new();</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; gtk_widget_set_halign(GTK_WIDGET(password_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; gtk_widget_set_valign(GTK_WIDGET(password_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(password_entry), 3);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(password_entry), 3);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(password_entry), 6);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(password_entry), 18);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; gtk_entry_set_activates_default (GTK_ENTRY(password_entry), TRUE);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; gtk_grid_attach(GTK_GRID(grid), password_entry, 1, grid_row, 2, 1);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(password_entry), 100);</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; gtk_entry_set_visibility(GTK_ENTRY(password_entry), FALSE);</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; grid_row++;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (flags &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a>) {</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Domain&quot;</span>));</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; domain_entry = gtk_entry_new();</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; gtk_widget_set_halign(GTK_WIDGET(domain_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; gtk_widget_set_valign(GTK_WIDGET(domain_entry), GTK_ALIGN_FILL);</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(domain_entry), 3);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(domain_entry), 3);</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(domain_entry), 6);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(domain_entry), 18);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; gtk_entry_set_activates_default (GTK_ENTRY(domain_entry), TRUE);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; gtk_widget_show(domain_entry);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; gtk_grid_attach(GTK_GRID(grid), domain_entry, 1, grid_row, 2, 1);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; gtk_entry_set_max_length(GTK_ENTRY(domain_entry), 100);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="comment">/* if (default_domain &amp;&amp; default_domain[0] != &#39;\0&#39;) {</span></div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="comment"> gtk_entry_set_text(GTK_ENTRY(domain_entry), default_domain);</span></div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;<span class="comment"> } */</span></div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; grid_row ++;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; domain_entry = NULL;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; }</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;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Save password&quot;</span>));</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; save_password_switch = gtk_switch_new();</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; gtk_widget_set_halign(GTK_WIDGET(save_password_switch), GTK_ALIGN_START);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; gtk_widget_set_valign(GTK_WIDGET(save_password_switch), GTK_ALIGN_FILL);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(save_password_switch), 9);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(save_password_switch), 9);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(save_password_switch), 6);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(save_password_switch), 18);</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; gtk_grid_attach(GTK_GRID(grid), save_password_switch, 1, grid_row, 2, 1);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (flags &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; gtk_switch_set_active(GTK_SWITCH(save_password_switch), TRUE);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; gtk_switch_set_active(GTK_SWITCH(save_password_switch), FALSE);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(save_password_switch), FALSE);</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; grid_row ++;</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; <span class="comment">/* Buttons, ok and cancel */</span></div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; bbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_EDGE);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; gtk_box_set_spacing (GTK_BOX (bbox), 40);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(bbox), 9);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; button_ok = gtk_button_new_with_label(_(<span class="stringliteral">&quot;_OK&quot;</span>));</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; gtk_button_set_use_underline(GTK_BUTTON(button_ok), TRUE);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; gtk_widget_set_can_default(button_ok, TRUE);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; gtk_container_add (GTK_CONTAINER (bbox), button_ok);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <span class="comment">/* Buttons, ok and cancel */</span></div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; button_cancel = gtk_button_new_with_label(_(<span class="stringliteral">&quot;_Cancel&quot;</span>));</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gtk_button_set_use_underline(GTK_BUTTON(button_cancel), TRUE);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gtk_container_add (GTK_CONTAINER (bbox), button_cancel);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; gtk_grid_attach(GTK_GRID(grid), bbox, 0, grid_row, 3, 1);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="comment">/* Pack it into the panel */</span></div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gtk_box_pack_start(GTK_BOX(mp), grid, TRUE, TRUE, 4);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a>] = username_entry;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>] = password_entry;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>] = save_password_switch;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a>] = domain_entry;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a>] = button_ok;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = response_callback;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = response_callback_data;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">if</span> (username_entry) g_signal_connect_swapped (username_entry, <span class="stringliteral">&quot;activate&quot;</span>, (GCallback)gtk_widget_grab_focus, password_entry);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; g_signal_connect_swapped (password_entry, <span class="stringliteral">&quot;activate&quot;</span>, (GCallback)gtk_widget_grab_focus, button_ok);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; g_object_set_data(G_OBJECT(button_cancel), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_CANCEL);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; g_signal_connect(G_OBJECT(button_cancel), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; g_object_set_data(G_OBJECT(button_ok), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_OK);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; g_signal_connect(G_OBJECT(button_ok), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</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;</div><div class="line"><a name="l00481"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407"> 481</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a>(RemminaMessagePanel *mp, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</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"> 483</span>&#160; TRACE_CALL(__func__);</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; GtkWidget *grid;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; GtkWidget *bbox;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; GtkWidget *button_ok;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; GtkWidget *button_cancel;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; GtkWidget *cacert_file;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; GtkWidget *cacrl_file;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; GtkWidget *clientcert_file;</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; GtkWidget *clientkey_file;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordtype">int</span> grid_row;</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; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv = remmina_message_panel_get_instance_private(mp);</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">if</span> ( !<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>() ) {</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; printf(<span class="stringliteral">&quot;WARNING: %s called in a subthread. This should not happen. Raising SIGINT to debug.\n&quot;</span>, __func__);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keyword">raise</span>(SIGINT);</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; }</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="comment">/* Create grid */</span></div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; grid = gtk_grid_new();</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; gtk_widget_set_halign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; gtk_widget_set_valign(GTK_WIDGET(grid), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; gtk_widget_show(grid);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; gtk_grid_set_row_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; gtk_grid_set_column_spacing(GTK_GRID(grid), 6);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="comment">/* Entries */</span></div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; grid_row = 0;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;Enter certificate authentication files&quot;</span>));</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gtk_style_context_add_class(gtk_widget_get_style_context(widget), <span class="stringliteral">&quot;title_label&quot;</span>);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_FILL);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 3, 1);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; grid_row++;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keyword">const</span> gchar *lbl_cacert = _(<span class="stringliteral">&quot;CA Certificate File&quot;</span>);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; widget = gtk_label_new(lbl_cacert);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; cacert_file = gtk_file_chooser_button_new(lbl_cacert, GTK_FILE_CHOOSER_ACTION_OPEN);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="comment">// gtk_style_context_add_class(gtk_widget_get_style_context(username_entry), &quot;panel_entry&quot;);</span></div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; gtk_widget_show(cacert_file);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cacert_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cacert_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(cacert_file), 9);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(cacert_file), 3);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(cacert_file), 6);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(cacert_file), 18);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; gtk_grid_attach(GTK_GRID(grid), cacert_file, 1, grid_row, 2, 1);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; grid_row++;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keyword">const</span> gchar *lbl_cacrl = _(<span class="stringliteral">&quot;CA CRL File&quot;</span>);</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; widget = gtk_label_new(lbl_cacrl);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; cacrl_file = gtk_file_chooser_button_new(lbl_cacrl, GTK_FILE_CHOOSER_ACTION_OPEN);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="comment">// gtk_style_context_add_class(gtk_widget_get_style_context(username_entry), &quot;panel_entry&quot;);</span></div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; gtk_widget_show(cacrl_file);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; gtk_widget_set_halign(GTK_WIDGET(cacrl_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; gtk_widget_set_valign(GTK_WIDGET(cacrl_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(cacrl_file), 9);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(cacrl_file), 3);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(cacrl_file), 6);</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(cacrl_file), 18);</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; gtk_grid_attach(GTK_GRID(grid), cacrl_file, 1, grid_row, 2, 1);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; grid_row++;</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="keyword">const</span> gchar *lbl_clicert = _(<span class="stringliteral">&quot;Client Certificate File&quot;</span>);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; widget = gtk_label_new(lbl_clicert);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; clientcert_file = gtk_file_chooser_button_new(lbl_clicert, GTK_FILE_CHOOSER_ACTION_OPEN);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="comment">// gtk_style_context_add_class(gtk_widget_get_style_context(username_entry), &quot;panel_entry&quot;);</span></div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; gtk_widget_show(clientcert_file);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gtk_widget_set_halign(GTK_WIDGET(clientcert_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; gtk_widget_set_valign(GTK_WIDGET(clientcert_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(clientcert_file), 9);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(clientcert_file), 3);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(clientcert_file), 6);</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(clientcert_file), 18);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; gtk_grid_attach(GTK_GRID(grid), clientcert_file, 1, grid_row, 2, 1);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; grid_row++;</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; <span class="keyword">const</span> gchar *lbl_clikey = _(<span class="stringliteral">&quot;Client Certificate Key&quot;</span>);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; widget = gtk_label_new(lbl_clikey);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(widget), 9);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(widget), 3);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(widget), 18);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(widget), 6);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, grid_row, 1, 1);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; clientkey_file = gtk_file_chooser_button_new(lbl_clikey, GTK_FILE_CHOOSER_ACTION_OPEN);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="comment">// gtk_style_context_add_class(gtk_widget_get_style_context(username_entry), &quot;panel_entry&quot;);</span></div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; gtk_widget_show(clientkey_file);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; gtk_widget_set_halign(GTK_WIDGET(clientkey_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; gtk_widget_set_valign(GTK_WIDGET(clientkey_file), GTK_ALIGN_FILL);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(clientkey_file), 9);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(clientkey_file), 3);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(clientkey_file), 6);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(clientkey_file), 18);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; gtk_grid_attach(GTK_GRID(grid), clientkey_file, 1, grid_row, 2, 1);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; grid_row++;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="comment">/* Buttons, ok and cancel */</span></div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; bbox = gtk_button_box_new(GTK_ORIENTATION_HORIZONTAL);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gtk_button_box_set_layout (GTK_BUTTON_BOX (bbox), GTK_BUTTONBOX_EDGE);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; gtk_box_set_spacing (GTK_BOX (bbox), 40);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; gtk_widget_set_margin_top (GTK_WIDGET(bbox), 9);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; gtk_widget_set_margin_bottom (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; gtk_widget_set_margin_start (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; gtk_widget_set_margin_end (GTK_WIDGET(bbox), 18);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; button_ok = gtk_button_new_with_label(_(<span class="stringliteral">&quot;_OK&quot;</span>));</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; gtk_widget_set_can_default (button_ok, TRUE);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gtk_button_set_use_underline(GTK_BUTTON(button_ok), TRUE);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="comment">//gtk_widget_show(button_ok);</span></div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; gtk_container_add (GTK_CONTAINER (bbox), button_ok);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <span class="comment">//gtk_grid_attach(GTK_GRID(grid), button_ok, 0, grid_row, 1, 1);</span></div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="comment">/* Buttons, ok and cancel */</span></div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; button_cancel = gtk_button_new_with_label(_(<span class="stringliteral">&quot;_Cancel&quot;</span>));</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; gtk_button_set_use_underline(GTK_BUTTON(button_cancel), TRUE);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="comment">//gtk_widget_show(button_cancel);</span></div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; gtk_container_add (GTK_CONTAINER (bbox), button_cancel);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; gtk_grid_attach(GTK_GRID(grid), bbox, 0, grid_row, 3, 1);</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="comment">/* Pack it into the panel */</span></div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; gtk_box_pack_start(GTK_BOX(mp), grid, TRUE, TRUE, 4);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a> = response_callback;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a> = response_callback_data;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a>] = cacert_file;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a>] = cacrl_file;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a>] = clientcert_file;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a>] = clientkey_file;</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a>] = button_ok;</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"> 646</span>&#160; g_object_set_data(G_OBJECT(button_cancel), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_CANCEL);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; g_signal_connect(G_OBJECT(button_cancel), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; g_object_set_data(G_OBJECT(button_ok), <a class="code" href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a>, (<span class="keywordtype">void</span> *)GTK_RESPONSE_OK);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; g_signal_connect(G_OBJECT(button_ok), <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a>), mp);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;}</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d"> 653</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a>(RemminaMessagePanel *mp)</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;{</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; GtkWidget *w;</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keyword">const</span> gchar *username;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="comment">/* Activate default button */</span></div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; w = priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a>];</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">if</span> (w &amp;&amp; G_TYPE_CHECK_INSTANCE_TYPE(w, gtk_button_get_type()))</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; gtk_widget_grab_default(w);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; w = priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a>];</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">if</span> (w == NULL)</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; w = priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>];</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; username = gtk_entry_get_text(GTK_ENTRY(w));</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">if</span> (username[0] != 0)</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; w = priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[<a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>];</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; }</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="keywordflow">if</span> (w == NULL)</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(w, gtk_entry_get_type()))</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; gtk_widget_grab_focus(w);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;}</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"><a class="line" href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901"> 688</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, <span class="keyword">const</span> gchar *text)</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;{</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_entry_get_type()))</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; gtk_entry_set_text(GTK_ENTRY(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid]), text != NULL ? text : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;}</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"><a class="line" href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4"> 704</a></span>&#160;gchar* <a class="code" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid)</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;{</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_entry_get_type()))</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">return</span> g_strdup(gtk_entry_get_text(GTK_ENTRY(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid])));</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;}</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f"> 722</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, gboolean state)</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;{</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</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; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</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; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_switch_get_type()))</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; gtk_switch_set_state(GTK_SWITCH(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid]), state);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;}</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"><a class="line" href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa"> 740</a></span>&#160;gboolean <a class="code" href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid)</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;{</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_switch_get_type()))</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">return</span> gtk_switch_get_state(GTK_SWITCH(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid]));</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;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;</div><div class="line"><a name="l00759"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff"> 759</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, <span class="keyword">const</span> gchar *filename)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160;</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="keywordflow">if</span> (mp == NULL)</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_file_chooser_button_get_type()))</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; gtk_file_chooser_set_filename(GTK_FILE_CHOOSER(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid]), filename);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;}</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4"> 776</a></span>&#160;gchar* <a class="code" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid)</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;{</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <a class="code" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a> *priv;</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> (mp == NULL)</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; priv = remmina_message_panel_get_instance_private(mp);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="keywordflow">if</span> (priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid] == NULL)</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid], gtk_file_chooser_button_get_type()))</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="keywordflow">return</span> gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(priv-&gt;<a class="code" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a>[entryid]));</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;</div><div class="line"><a name="l00794"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40"> 794</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a>(RemminaMessagePanel *mp, gint response_id)</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"> 796</span>&#160; g_signal_emit(mp, <a class="code" href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">messagepanel_signals</a>[RESPONSE], 0, response_id);</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;</div><div class="ttc" id="remmina__message__panel_8c_html_ab6b5ef1f109af9209f76d194dd704a8c"><div class="ttname"><a href="remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c">remmina_message_panel_init</a></div><div class="ttdeci">static void remmina_message_panel_init(RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00067">remmina_message_panel.c:67</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00053">remmina_message_panel.h:53</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ad7824aab39b78f2b1b1ce661213f8f1c"><div class="ttname"><a href="remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c">messagepanel_signals</a></div><div class="ttdeci">static guint messagepanel_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00061">remmina_message_panel.c:61</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae2cec8bc8216154388727b7e35200667"><div class="ttname"><a href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a></div><div class="ttdeci">void remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00283">remmina_message_panel.c:283</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae5b1825b5d4e56ecc2f25c28bb042c32"><div class="ttname"><a href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a></div><div class="ttdeci">void remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00214">remmina_message_panel.c:214</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ab89dba73bc6832c6c5061a0d8bd0fbb4"><div class="ttname"><a href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00776">remmina_message_panel.c:776</a></div></div>
+<div class="ttc" id="rcw_8c_html_a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00173">rcw.c:173</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00133">types.h:133</a></div></div>
+<div class="ttc" id="struct_remmina_message_panel_private_html_a6595dbe739d97d82e36c6e0878bcf1d4"><div class="ttname"><a href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">RemminaMessagePanelPrivate::response_callback_data</a></div><div class="ttdeci">void * response_callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00051">remmina_message_panel.c:51</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00054">remmina_message_panel.h:54</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ac10f450f856ca7d9c0b6896261e9c407"><div class="ttname"><a href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a></div><div class="ttdeci">void remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00481">remmina_message_panel.c:481</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a6ed806c022986b81ef4db70e6d89abc9"><div class="ttname"><a href="remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9">remmina_message_panel_class_init</a></div><div class="ttdeci">static void remmina_message_panel_class_init(RemminaMessagePanelClass *class)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00072">remmina_message_panel.c:72</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__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_aacb1f47e5ad88086c1bda1b0a156c34d"><div class="ttname"><a href="remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a></div><div class="ttdeci">void remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00653">remmina_message_panel.c:653</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00060">remmina_message_panel.h:60</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a0e20944d484c95036eeb6b5d7775c901"><div class="ttname"><a href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a></div><div class="ttdeci">void remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00688">remmina_message_panel.c:688</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00052">remmina_message_panel.h:52</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00057">remmina_message_panel.h:57</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_aec9dcd96d0148fec9cdc9e94cc8dc1ff"><div class="ttname"><a href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a></div><div class="ttdeci">void remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00759">remmina_message_panel.c:759</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__message__panel_8h_html"><div class="ttname"><a href="remmina__message__panel_8h.html">remmina_message_panel.h</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a67a48217d44350e028ed95b1b55f0b0f"><div class="ttname"><a href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a></div><div class="ttdeci">void remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00722">remmina_message_panel.c:722</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00059">remmina_message_panel.h:59</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00061">remmina_message_panel.h:61</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2923c94c1caf1ac4a7eb48361d2670a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a></div><div class="ttdeci">void(* RemminaMessagePanelCallback)(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00065">remmina_message_panel.h:65</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ad3ce5558696c03b0355b44b7f1b0d31e"><div class="ttname"><a href="remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e">G_DEFINE_TYPE_WITH_PRIVATE</a></div><div class="ttdeci">G_DEFINE_TYPE_WITH_PRIVATE(RemminaMessagePanel, remmina_message_panel, GTK_TYPE_BOX)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00055">remmina_message_panel.c:55</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a44054d029d4615092ae8a2ee1bf81db4"><div class="ttname"><a href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00704">remmina_message_panel.c:704</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00056">remmina_message_panel.h:56</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_afae4072b7d8b54392ec08da7d6ead620"><div class="ttname"><a href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a></div><div class="ttdeci">void remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00128">remmina_message_panel.c:128</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00134">types.h:134</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00058">remmina_message_panel.h:58</a></div></div>
+<div class="ttc" id="struct_remmina_message_panel_private_html"><div class="ttname"><a href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00047">remmina_message_panel.c:47</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae01d27ae9f678dc5a4fa32f0b401f434"><div class="ttname"><a href="remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a></div><div class="ttdeci">void remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00175">remmina_message_panel.c:175</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a80bc2fcb39c236da739593c2134c73fa"><div class="ttname"><a href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a></div><div class="ttdeci">gboolean remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00740">remmina_message_panel.c:740</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ac93f8305d443470b429d0bf723e30953"><div class="ttname"><a href="remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953">btn_response_key</a></div><div class="ttdeci">static const gchar btn_response_key[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00065">remmina_message_panel.c:65</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_af7db7b9f49fe6b83b17471116d363d40"><div class="ttname"><a href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a></div><div class="ttdeci">void remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00794">remmina_message_panel.c:794</a></div></div>
+<div class="ttc" id="struct_remmina_message_panel_private_html_a9766a5c72bd815501e2ba0a5ac8cd283"><div class="ttname"><a href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">RemminaMessagePanelPrivate::response_callback</a></div><div class="ttdeci">RemminaMessagePanelCallback response_callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00050">remmina_message_panel.c:50</a></div></div>
+<div class="ttc" id="struct_remmina_message_panel_private_html_a7cbab11c19f590bf2ec253eb694b93f8"><div class="ttname"><a href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">RemminaMessagePanelPrivate::w</a></div><div class="ttdeci">GtkWidget * w[REMMINA_MESSAGE_PANEL_MAXWIDGETID]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00052">remmina_message_panel.c:52</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a7015155d2b1db3e74de4d4d5ef7cca55"><div class="ttname"><a href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a></div><div class="ttdeci">RemminaMessagePanel * remmina_message_panel_new()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00088">remmina_message_panel.c:88</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_abd857d6074d031de315fed1ffe0b6062"><div class="ttname"><a href="remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062">remmina_message_panel_button_clicked_callback</a></div><div class="ttdeci">static void remmina_message_panel_button_clicked_callback(GtkButton *button, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00111">remmina_message_panel.c:111</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__message__panel_8c.html">remmina_message_panel.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__message__panel_8h.html b/docs/remmina__message__panel_8h.html
new file mode 100644
index 000000000..d7826dba0
--- /dev/null
+++ b/docs/remmina__message__panel_8h.html
@@ -0,0 +1,744 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_message_panel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__message__panel_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_message_panel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__message__panel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ae2923c94c1caf1ac4a7eb48361d2670a"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>) (void *user_data, int button)</td></tr>
+<tr class="separator:ae2923c94c1caf1ac4a7eb48361d2670a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ae4d5251432e1a9e6803c0240cc492e18"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a> =1,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e">REMMINA_MESSAGE_PANEL_SAVEPASSWORD</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a>,
+<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a>
+<br />
+ }</td></tr>
+<tr class="separator:ae4d5251432e1a9e6803c0240cc492e18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a558c1459208a2a314734a1cf92e8e156"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156">G_DECLARE_DERIVABLE_TYPE</a> (RemminaMessagePanel, remmina_message_panel, REMMINA, MESSAGE_PANEL, GtkBox) struct _RemminaMessagePanelClass</td></tr>
+<tr class="separator:a558c1459208a2a314734a1cf92e8e156"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4a7707360c836ba312a2c7286db294"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294">remmina_message_panel_new</a> (void)</td></tr>
+<tr class="separator:adf4a7707360c836ba312a2c7286db294"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afae4072b7d8b54392ec08da7d6ead620"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:afae4072b7d8b54392ec08da7d6ead620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae01d27ae9f678dc5a4fa32f0b401f434"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ae01d27ae9f678dc5a4fa32f0b401f434"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5b1825b5d4e56ecc2f25c28bb042c32"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a> (RemminaMessagePanel *mp, const gchar *message, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ae5b1825b5d4e56ecc2f25c28bb042c32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2cec8bc8216154388727b7e35200667"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a> (RemminaMessagePanel *mp, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags)</td></tr>
+<tr class="separator:ae2cec8bc8216154388727b7e35200667"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac10f450f856ca7d9c0b6896261e9c407"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a> (RemminaMessagePanel *mp, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:ac10f450f856ca7d9c0b6896261e9c407"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb1f47e5ad88086c1bda1b0a156c34d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a> (RemminaMessagePanel *mp)</td></tr>
+<tr class="separator:aacb1f47e5ad88086c1bda1b0a156c34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e20944d484c95036eeb6b5d7775c901"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a> (RemminaMessagePanel *mp, int entryid, const gchar *text)</td></tr>
+<tr class="separator:a0e20944d484c95036eeb6b5d7775c901"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44054d029d4615092ae8a2ee1bf81db4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:a44054d029d4615092ae8a2ee1bf81db4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67a48217d44350e028ed95b1b55f0b0f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a> (RemminaMessagePanel *mp, int entryid, gboolean state)</td></tr>
+<tr class="separator:a67a48217d44350e028ed95b1b55f0b0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80bc2fcb39c236da739593c2134c73fa"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:a80bc2fcb39c236da739593c2134c73fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec9dcd96d0148fec9cdc9e94cc8dc1ff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a> (RemminaMessagePanel *mp, int entryid, const gchar *filename)</td></tr>
+<tr class="separator:aec9dcd96d0148fec9cdc9e94cc8dc1ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab89dba73bc6832c6c5061a0d8bd0fbb4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a> (RemminaMessagePanel *mp, int entryid)</td></tr>
+<tr class="separator:ab89dba73bc6832c6c5061a0d8bd0fbb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7db7b9f49fe6b83b17471116d363d40"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a> (RemminaMessagePanel *mp, gint response_id)</td></tr>
+<tr class="separator:af7db7b9f49fe6b83b17471116d363d40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ae2923c94c1caf1ac4a7eb48361d2670a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2923c94c1caf1ac4a7eb48361d2670a">&#9670;&nbsp;</a></span>RemminaMessagePanelCallback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* RemminaMessagePanelCallback) (void *user_data, int button)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__message__panel_8h_source.html">remmina_message_panel.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="ae4d5251432e1a9e6803c0240cc492e18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4d5251432e1a9e6803c0240cc492e18">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25"></a>REMMINA_MESSAGE_PANEL_USERNAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6"></a>REMMINA_MESSAGE_PANEL_PASSWORD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a"></a>REMMINA_MESSAGE_PANEL_DOMAIN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e"></a>REMMINA_MESSAGE_PANEL_SAVEPASSWORD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725"></a>REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7"></a>REMMINA_MESSAGE_PANEL_CACERTFILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779"></a>REMMINA_MESSAGE_PANEL_CACRLFILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7"></a>REMMINA_MESSAGE_PANEL_CLIENTCERTFILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3"></a>REMMINA_MESSAGE_PANEL_CLIENTKEYFILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a"></a>REMMINA_MESSAGE_PANEL_MAXWIDGETID&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__message__panel_8h_source.html">remmina_message_panel.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a558c1459208a2a314734a1cf92e8e156"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a558c1459208a2a314734a1cf92e8e156">&#9670;&nbsp;</a></span>G_DECLARE_DERIVABLE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DECLARE_DERIVABLE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_message_panel&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">REMMINA&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">MESSAGE_PANEL&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkBox&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__message__panel_8h_source.html">remmina_message_panel.h</a>.</p>
+
+</div>
+</div>
+<a id="ab89dba73bc6832c6c5061a0d8bd0fbb4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab89dba73bc6832c6c5061a0d8bd0fbb4">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_message_panel_field_get_filename </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00776">776</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a44054d029d4615092ae8a2ee1bf81db4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44054d029d4615092ae8a2ee1bf81db4">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_message_panel_field_get_string </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00704">704</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a80bc2fcb39c236da739593c2134c73fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80bc2fcb39c236da739593c2134c73fa">&#9670;&nbsp;</a></span>remmina_message_panel_field_get_switch_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_message_panel_field_get_switch_state </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00740">740</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="aec9dcd96d0148fec9cdc9e94cc8dc1ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec9dcd96d0148fec9cdc9e94cc8dc1ff">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_filename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_filename </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00759">759</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a0e20944d484c95036eeb6b5d7775c901"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e20944d484c95036eeb6b5d7775c901">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_string </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00688">688</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a67a48217d44350e028ed95b1b55f0b0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a67a48217d44350e028ed95b1b55f0b0f">&#9670;&nbsp;</a></span>remmina_message_panel_field_set_switch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_field_set_switch </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entryid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>state</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00722">722</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="aacb1f47e5ad88086c1bda1b0a156c34d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacb1f47e5ad88086c1bda1b0a156c34d">&#9670;&nbsp;</a></span>remmina_message_panel_focus_auth_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_focus_auth_entry </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00653">653</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="adf4a7707360c836ba312a2c7286db294"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf4a7707360c836ba312a2c7286db294">&#9670;&nbsp;</a></span>remmina_message_panel_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_message_panel_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00088">88</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="af7db7b9f49fe6b83b17471116d363d40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7db7b9f49fe6b83b17471116d363d40">&#9670;&nbsp;</a></span>remmina_message_panel_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_response </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00794">794</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae2cec8bc8216154388727b7e35200667"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2cec8bc8216154388727b7e35200667">&#9670;&nbsp;</a></span>remmina_message_panel_setup_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_auth </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password_prompt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00283">283</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ac10f450f856ca7d9c0b6896261e9c407"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac10f450f856ca7d9c0b6896261e9c407">&#9670;&nbsp;</a></span>remmina_message_panel_setup_auth_x509()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_auth_x509 </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00481">481</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae01d27ae9f678dc5a4fa32f0b401f434"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae01d27ae9f678dc5a4fa32f0b401f434">&#9670;&nbsp;</a></span>remmina_message_panel_setup_message()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_message </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00175">175</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="afae4072b7d8b54392ec08da7d6ead620"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afae4072b7d8b54392ec08da7d6ead620">&#9670;&nbsp;</a></span>remmina_message_panel_setup_progress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_progress </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00128">128</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5b1825b5d4e56ecc2f25c28bb042c32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5b1825b5d4e56ecc2f25c28bb042c32">&#9670;&nbsp;</a></span>remmina_message_panel_setup_question()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_message_panel_setup_question </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00214">214</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__message__panel_8h.html">remmina_message_panel.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__message__panel_8h.js b/docs/remmina__message__panel_8h.js
new file mode 100644
index 000000000..74db3b954
--- /dev/null
+++ b/docs/remmina__message__panel_8h.js
@@ -0,0 +1,29 @@
+var remmina__message__panel_8h =
+[
+ [ "RemminaMessagePanelCallback", "remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a", null ],
+ [ "REMMINA_MESSAGE_PANEL_USERNAME", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25", null ],
+ [ "REMMINA_MESSAGE_PANEL_PASSWORD", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6", null ],
+ [ "REMMINA_MESSAGE_PANEL_DOMAIN", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a", null ],
+ [ "REMMINA_MESSAGE_PANEL_SAVEPASSWORD", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e", null ],
+ [ "REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725", null ],
+ [ "REMMINA_MESSAGE_PANEL_CACERTFILE", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7", null ],
+ [ "REMMINA_MESSAGE_PANEL_CACRLFILE", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779", null ],
+ [ "REMMINA_MESSAGE_PANEL_CLIENTCERTFILE", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7", null ],
+ [ "REMMINA_MESSAGE_PANEL_CLIENTKEYFILE", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3", null ],
+ [ "REMMINA_MESSAGE_PANEL_MAXWIDGETID", "remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a", null ],
+ [ "G_DECLARE_DERIVABLE_TYPE", "remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156", null ],
+ [ "remmina_message_panel_field_get_filename", "remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4", null ],
+ [ "remmina_message_panel_field_get_string", "remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4", null ],
+ [ "remmina_message_panel_field_get_switch_state", "remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa", null ],
+ [ "remmina_message_panel_field_set_filename", "remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff", null ],
+ [ "remmina_message_panel_field_set_string", "remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901", null ],
+ [ "remmina_message_panel_field_set_switch", "remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f", null ],
+ [ "remmina_message_panel_focus_auth_entry", "remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d", null ],
+ [ "remmina_message_panel_new", "remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294", null ],
+ [ "remmina_message_panel_response", "remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40", null ],
+ [ "remmina_message_panel_setup_auth", "remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667", null ],
+ [ "remmina_message_panel_setup_auth_x509", "remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407", null ],
+ [ "remmina_message_panel_setup_message", "remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434", null ],
+ [ "remmina_message_panel_setup_progress", "remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620", null ],
+ [ "remmina_message_panel_setup_question", "remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__message__panel_8h_source.html b/docs/remmina__message__panel_8h_source.html
new file mode 100644
index 000000000..25d03428d
--- /dev/null
+++ b/docs/remmina__message__panel_8h_source.html
@@ -0,0 +1,127 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_message_panel.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__message__panel_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_message_panel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__message__panel_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_MESSAGE_PANEL (remmina_message_panel_get_type())</span></div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156"> 42</a></span>&#160;<a class="code" href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156">G_DECLARE_DERIVABLE_TYPE</a>(RemminaMessagePanel, remmina_message_panel, REMMINA, MESSAGE_PANEL, GtkBox)</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="keyword">struct </span>_RemminaMessagePanelClass {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; GtkBoxClass parent_class;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; void (*response) (RemminaMessagePanel *mp, gint response_id);</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;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* Widgets ID for dialog fields */</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25"> 52</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a>=1,</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6"> 53</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>,</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a"> 54</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a>,</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e"> 55</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e">REMMINA_MESSAGE_PANEL_SAVEPASSWORD</a>,</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725"> 56</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a>,</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7"> 57</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a>,</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779"> 58</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a>,</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7"> 59</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a>,</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3"> 60</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a>,</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a"> 61</a></span>&#160; <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;};</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Callback function type to receive buttons notification */</span></div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a"> 65</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>)(<span class="keywordtype">void</span> *user_data, <span class="keywordtype">int</span> button);</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"> 67</span>&#160;RemminaMessagePanel *<a class="code" href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294">remmina_message_panel_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a>(RemminaMessagePanel *mp, <span class="keyword">const</span> gchar *message, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a>(RemminaMessagePanel *mp, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data, <span class="keyword">const</span> gchar *title, <span class="keyword">const</span> gchar *password_prompt, <span class="keywordtype">unsigned</span> flags);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a>(RemminaMessagePanel *mp, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a>(RemminaMessagePanel *mp);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, <span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;gchar *<a class="code" href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, gboolean state);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;gboolean <a class="code" href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid, <span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;gchar *<a class="code" href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(RemminaMessagePanel *mp, <span class="keywordtype">int</span> entryid);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a>(RemminaMessagePanel *mp, gint response_id);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__message__panel_8h_html_a0e20944d484c95036eeb6b5d7775c901"><div class="ttname"><a href="remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a></div><div class="ttdeci">void remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00688">remmina_message_panel.c:688</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00053">remmina_message_panel.h:53</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae5b1825b5d4e56ecc2f25c28bb042c32"><div class="ttname"><a href="remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a></div><div class="ttdeci">void remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00214">remmina_message_panel.c:214</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00054">remmina_message_panel.h:54</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae01d27ae9f678dc5a4fa32f0b401f434"><div class="ttname"><a href="remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434">remmina_message_panel_setup_message</a></div><div class="ttdeci">void remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00175">remmina_message_panel.c:175</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_a80bc2fcb39c236da739593c2134c73fa"><div class="ttname"><a href="remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a></div><div class="ttdeci">gboolean remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00740">remmina_message_panel.c:740</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e">REMMINA_MESSAGE_PANEL_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00055">remmina_message_panel.h:55</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_a44054d029d4615092ae8a2ee1bf81db4"><div class="ttname"><a href="remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00704">remmina_message_panel.c:704</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_afae4072b7d8b54392ec08da7d6ead620"><div class="ttname"><a href="remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a></div><div class="ttdeci">void remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00128">remmina_message_panel.c:128</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00060">remmina_message_panel.h:60</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00052">remmina_message_panel.h:52</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00057">remmina_message_panel.h:57</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_aacb1f47e5ad88086c1bda1b0a156c34d"><div class="ttname"><a href="remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d">remmina_message_panel_focus_auth_entry</a></div><div class="ttdeci">void remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00653">remmina_message_panel.c:653</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_af7db7b9f49fe6b83b17471116d363d40"><div class="ttname"><a href="remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a></div><div class="ttdeci">void remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00794">remmina_message_panel.c:794</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_adf4a7707360c836ba312a2c7286db294"><div class="ttname"><a href="remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294">remmina_message_panel_new</a></div><div class="ttdeci">RemminaMessagePanel * remmina_message_panel_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00088">remmina_message_panel.c:88</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_a67a48217d44350e028ed95b1b55f0b0f"><div class="ttname"><a href="remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a></div><div class="ttdeci">void remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00722">remmina_message_panel.c:722</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ab89dba73bc6832c6c5061a0d8bd0fbb4"><div class="ttname"><a href="remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00776">remmina_message_panel.c:776</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00059">remmina_message_panel.h:59</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00061">remmina_message_panel.h:61</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2923c94c1caf1ac4a7eb48361d2670a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a></div><div class="ttdeci">void(* RemminaMessagePanelCallback)(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00065">remmina_message_panel.h:65</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ac10f450f856ca7d9c0b6896261e9c407"><div class="ttname"><a href="remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a></div><div class="ttdeci">void remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00481">remmina_message_panel.c:481</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725">REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00056">remmina_message_panel.h:56</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_aec9dcd96d0148fec9cdc9e94cc8dc1ff"><div class="ttname"><a href="remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a></div><div class="ttdeci">void remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00759">remmina_message_panel.c:759</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00058">remmina_message_panel.h:58</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2cec8bc8216154388727b7e35200667"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a></div><div class="ttdeci">void remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00283">remmina_message_panel.c:283</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_a558c1459208a2a314734a1cf92e8e156"><div class="ttname"><a href="remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156">G_DECLARE_DERIVABLE_TYPE</a></div><div class="ttdeci">G_DECLARE_DERIVABLE_TYPE(RemminaMessagePanel, remmina_message_panel, REMMINA, MESSAGE_PANEL, GtkBox) struct _RemminaMessagePanelClass</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00042">remmina_message_panel.h:42</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__message__panel_8h.html">remmina_message_panel.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__mpchange_8c.html b/docs/remmina__mpchange_8c.html
new file mode 100644
index 000000000..0954128bf
--- /dev/null
+++ b/docs/remmina__mpchange_8c.html
@@ -0,0 +1,628 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_mpchange.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__mpchange_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_mpchange.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__mpchange_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html">mpchanger_params</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a7ff5f2dff38e7639981794c43dc9167b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a> = 0,
+<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">COL_NAME</a>,
+<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">COL_GROUP</a>,
+<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">COL_USERNAME</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">COL_FILENAME</a>,
+<a class="el" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">NUM_COLS</a>
+<br />
+ }</td></tr>
+<tr class="separator:a7ff5f2dff38e7639981794c43dc9167b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a506370be386145eeb2c59829fe3e8131"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a> (const gchar *needle, const gchar *haystack, int *matchcount)</td></tr>
+<tr class="separator:a506370be386145eeb2c59829fe3e8131"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26ac0b33bd0b5ea718e16d04923b5ccd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange_file_list_callback</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</td></tr>
+<tr class="separator:a26ac0b33bd0b5ea718e16d04923b5ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa872ba9de3be7ccd116881cee84c8b85"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange_checkbox_toggle</a> (GtkCellRendererToggle *cell, gchar *path_string, gpointer user_data)</td></tr>
+<tr class="separator:aa872ba9de3be7ccd116881cee84c8b85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24d0569c79b289b5812c5c3019e5f4dd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange_dochange</a> (gchar *fname, struct <a class="el" href="structmpchanger__params.html">mpchanger_params</a> *mpcp)</td></tr>
+<tr class="separator:a24d0569c79b289b5812c5c3019e5f4dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a909daa43f234a03b1ec12a58acc51b15"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">enable_inputs</a> (struct <a class="el" href="structmpchanger__params.html">mpchanger_params</a> *mpcp, gboolean ena)</td></tr>
+<tr class="separator:a909daa43f234a03b1ec12a58acc51b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abea63e74b83d3545308d05dfe88e2839"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">changenext</a> (gpointer user_data)</td></tr>
+<tr class="separator:abea63e74b83d3545308d05dfe88e2839"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07d130893c0487bb873f2b6986e15a1b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange_dochange_clicked</a> (GtkButton *btn, gpointer user_data)</td></tr>
+<tr class="separator:a07d130893c0487bb873f2b6986e15a1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4bf7e99626c40534641916848253f60f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange_searchfield_changed_to</a> (gpointer user_data)</td></tr>
+<tr class="separator:a4bf7e99626c40534641916848253f60f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad063ddefc518c67ed98f4b4bdf87fa8f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a> (GtkSearchEntry *se, gpointer user_data)</td></tr>
+<tr class="separator:ad063ddefc518c67ed98f4b4bdf87fa8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e4f5a537a13face058177dc97e88c8a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange_stopsearch</a> (GtkSearchEntry *entry, gpointer user_data)</td></tr>
+<tr class="separator:a1e4f5a537a13face058177dc97e88c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a525273e9a7f849c9d072467d216762b2"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_file_multipasswd_changer_mt</a> (gpointer d)</td></tr>
+<tr class="separator:a525273e9a7f849c9d072467d216762b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac84b71e36fe02a6ff8cb295269316960"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange_schedule</a> (gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password)</td></tr>
+<tr class="separator:ac84b71e36fe02a6ff8cb295269316960"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a7ff5f2dff38e7639981794c43dc9167b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ff5f2dff38e7639981794c43dc9167b">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a"></a>COL_F&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24"></a>COL_NAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd"></a>COL_GROUP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e"></a>COL_USERNAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3"></a>COL_FILENAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1"></a>NUM_COLS&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00072">72</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abea63e74b83d3545308d05dfe88e2839"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abea63e74b83d3545308d05dfe88e2839">&#9670;&nbsp;</a></span>changenext()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean changenext </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00188">188</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a909daa43f234a03b1ec12a58acc51b15"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a909daa43f234a03b1ec12a58acc51b15">&#9670;&nbsp;</a></span>enable_inputs()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void enable_inputs </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structmpchanger__params.html">mpchanger_params</a> *&#160;</td>
+ <td class="paramname"><em>mpcp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>ena</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00177">177</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a525273e9a7f849c9d072467d216762b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a525273e9a7f849c9d072467d216762b2">&#9670;&nbsp;</a></span>remmina_file_multipasswd_changer_mt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_file_multipasswd_changer_mt </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00310">310</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="aa872ba9de3be7ccd116881cee84c8b85"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa872ba9de3be7ccd116881cee84c8b85">&#9670;&nbsp;</a></span>remmina_mpchange_checkbox_toggle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_checkbox_toggle </td>
+ <td>(</td>
+ <td class="paramtype">GtkCellRendererToggle *&#160;</td>
+ <td class="paramname"><em>cell</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>path_string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00148">148</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a24d0569c79b289b5812c5c3019e5f4dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24d0569c79b289b5812c5c3019e5f4dd">&#9670;&nbsp;</a></span>remmina_mpchange_dochange()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_dochange </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>fname</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structmpchanger__params.html">mpchanger_params</a> *&#160;</td>
+ <td class="paramname"><em>mpcp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00162">162</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a07d130893c0487bb873f2b6986e15a1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07d130893c0487bb873f2b6986e15a1b">&#9670;&nbsp;</a></span>remmina_mpchange_dochange_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_dochange_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>btn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00211">211</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a506370be386145eeb2c59829fe3e8131"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a506370be386145eeb2c59829fe3e8131">&#9670;&nbsp;</a></span>remmina_mpchange_fieldcompare()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_mpchange_fieldcompare </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>matchcount</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00081">81</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a26ac0b33bd0b5ea718e16d04923b5ccd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26ac0b33bd0b5ea718e16d04923b5ccd">&#9670;&nbsp;</a></span>remmina_mpchange_file_list_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_file_list_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00098">98</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ac84b71e36fe02a6ff8cb295269316960"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac84b71e36fe02a6ff8cb295269316960">&#9670;&nbsp;</a></span>remmina_mpchange_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_mpchange_schedule </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>has_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00425">425</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ad063ddefc518c67ed98f4b4bdf87fa8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad063ddefc518c67ed98f4b4bdf87fa8f">&#9670;&nbsp;</a></span>remmina_mpchange_searchfield_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_searchfield_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkSearchEntry *&#160;</td>
+ <td class="paramname"><em>se</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00288">288</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a4bf7e99626c40534641916848253f60f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4bf7e99626c40534641916848253f60f">&#9670;&nbsp;</a></span>remmina_mpchange_searchfield_changed_to()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_mpchange_searchfield_changed_to </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00251">251</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a1e4f5a537a13face058177dc97e88c8a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e4f5a537a13face058177dc97e88c8a">&#9670;&nbsp;</a></span>remmina_mpchange_stopsearch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_mpchange_stopsearch </td>
+ <td>(</td>
+ <td class="paramtype">GtkSearchEntry *&#160;</td>
+ <td class="paramname"><em>entry</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00302">302</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__mpchange_8c.html">remmina_mpchange.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__mpchange_8c.js b/docs/remmina__mpchange_8c.js
new file mode 100644
index 000000000..83a3ce930
--- /dev/null
+++ b/docs/remmina__mpchange_8c.js
@@ -0,0 +1,22 @@
+var remmina__mpchange_8c =
+[
+ [ "mpchanger_params", "structmpchanger__params.html", "structmpchanger__params" ],
+ [ "COL_F", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a", null ],
+ [ "COL_NAME", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24", null ],
+ [ "COL_GROUP", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd", null ],
+ [ "COL_USERNAME", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e", null ],
+ [ "COL_FILENAME", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3", null ],
+ [ "NUM_COLS", "remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1", null ],
+ [ "changenext", "remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839", null ],
+ [ "enable_inputs", "remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15", null ],
+ [ "remmina_file_multipasswd_changer_mt", "remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2", null ],
+ [ "remmina_mpchange_checkbox_toggle", "remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85", null ],
+ [ "remmina_mpchange_dochange", "remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd", null ],
+ [ "remmina_mpchange_dochange_clicked", "remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b", null ],
+ [ "remmina_mpchange_fieldcompare", "remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131", null ],
+ [ "remmina_mpchange_file_list_callback", "remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd", null ],
+ [ "remmina_mpchange_schedule", "remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960", null ],
+ [ "remmina_mpchange_searchfield_changed", "remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f", null ],
+ [ "remmina_mpchange_searchfield_changed_to", "remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f", null ],
+ [ "remmina_mpchange_stopsearch", "remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__mpchange_8c_source.html b/docs/remmina__mpchange_8c_source.html
new file mode 100644
index 000000000..a74a1807a
--- /dev/null
+++ b/docs/remmina__mpchange_8c_source.html
@@ -0,0 +1,159 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_mpchange.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__mpchange_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_mpchange.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__mpchange_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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</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="l00043"></a><span class="lineno"> 43</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="l00044"></a><span class="lineno"> 44</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="l00045"></a><span class="lineno"> 45</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="l00046"></a><span class="lineno"> 46</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="l00047"></a><span class="lineno"> 47</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="l00048"></a><span class="lineno"> 48</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="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define GET_DIALOG_OBJECT(object_name) gtk_builder_get_object(bu, object_name)</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structmpchanger__params.html"> 52</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> {</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742"> 53</a></span>&#160; gchar *<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>; <span class="comment">// New username</span></div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c"> 54</a></span>&#160; gchar *<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>; <span class="comment">// New domain</span></div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e"> 55</a></span>&#160; gchar *<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a>; <span class="comment">// New password</span></div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b"> 56</a></span>&#160; gchar *<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809"> 58</a></span>&#160; GtkEntry *<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a>, *<a class="code" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">eUsername</a>, *<a class="code" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">eDomain</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be"> 59</a></span>&#160; GtkEntry *<a class="code" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">ePassword1</a>, *<a class="code" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">ePassword2</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73"> 60</a></span>&#160; GtkListStore* <a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568"> 61</a></span>&#160; GtkDialog* <a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2"> 62</a></span>&#160; GtkTreeView* <a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2"> 63</a></span>&#160; GtkButton* <a class="code" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">btnDoChange</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd"> 64</a></span>&#160; GtkLabel* <a class="code" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">statusLabel</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46"> 66</a></span>&#160; GtkTreeIter <a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719"> 67</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">changed_passwords_count</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87"> 68</a></span>&#160; guint <a class="code" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">sid</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918"> 69</a></span>&#160; guint <a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</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;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a"> 73</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a> = 0,</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24"> 74</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">COL_NAME</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd"> 75</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">COL_GROUP</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e"> 76</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">COL_USERNAME</a>,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3"> 77</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">COL_FILENAME</a>,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1"> 78</a></span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">NUM_COLS</a></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;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131"> 81</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a>(<span class="keyword">const</span> gchar *needle, <span class="keyword">const</span> gchar *haystack, <span class="keywordtype">int</span> *matchcount)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; TRACE_CALL(__func__);</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; <span class="keywordflow">if</span> (needle[0] == 0) {</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; (*matchcount)++;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> TRUE;</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"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (strcasecmp(needle, haystack) != 0)</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> FALSE;</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; (*matchcount)++;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> TRUE;</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;}</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd"> 98</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange_file_list_callback</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;{</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; GtkListStore* <a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; GtkTreeIter <a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">int</span> matchcount;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>, *<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>, *<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; gchar* s;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp;</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; mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>*)user_data;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; store = GTK_LIST_STORE(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</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; 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="l00114"></a><span class="lineno"> 114</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="l00115"></a><span class="lineno"> 115</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="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (username == NULL)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; username = <span class="stringliteral">&quot;&quot;</span>;</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">if</span> (domain == NULL)</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; domain = <span class="stringliteral">&quot;&quot;</span>;</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"> 123</span>&#160; <span class="keywordflow">if</span> (group == NULL)</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; group = <span class="stringliteral">&quot;&quot;</span>;</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"> 126</span>&#160; matchcount = 0;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a>(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>, username, &amp;matchcount))</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a>(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>, domain, &amp;matchcount))</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a>(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>, group, &amp;matchcount))</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;%s\\%s&quot;</span>, domain, username);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; gtk_list_store_set(store, &amp;iter,</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a>, matchcount &gt;= 3 ? TRUE : FALSE,</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">COL_NAME</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="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">COL_GROUP</a>, group,</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">COL_USERNAME</a>, s,</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">COL_FILENAME</a>, remminafile-&gt;filename,</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; -1);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; g_free(s);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;}</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"><a class="line" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85"> 148</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange_checkbox_toggle</a>(GtkCellRendererToggle *cell, gchar *path_string, gpointer user_data)</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"> 150</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; GtkTreeIter <a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>*)user_data;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; GtkTreePath *path;</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"> 155</span>&#160; gboolean a = gtk_cell_renderer_toggle_get_active(cell);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; path = gtk_tree_path_new_from_string(path_string);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; gtk_tree_model_get_iter(GTK_TREE_MODEL(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>), &amp;iter, path);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gtk_list_store_set(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>, &amp;iter, <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a>, !a, -1);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;}</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"><a class="line" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd"> 162</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange_dochange</a>(gchar* fname, <span class="keyword">struct</span> <a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp)</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"> 164</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remminafile;</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; remminafile = <a class="code" href="remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e">remmina_file_load</a>(fname);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (remminafile) {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, mpcp-&gt;<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a>);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a>(remminafile);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">changed_passwords_count</a>++;</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="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15"> 177</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">enable_inputs</a>(<span class="keyword">struct</span> <a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp, gboolean ena)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;{</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a>), ena);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">eUsername</a>), ena);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">eDomain</a>), ena);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">ePassword1</a>), ena);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">ePassword2</a>), ena);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">btnDoChange</a>), ena);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>), ena);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;}</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839"> 188</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">changenext</a>(gpointer user_data)</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>*)user_data;</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gchar* fname;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gboolean sel;</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; gtk_tree_model_get(GTK_TREE_MODEL(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>), &amp;mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>, <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a>, &amp;sel, -1);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>), &amp;mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>, <a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">COL_FILENAME</a>, &amp;fname, -1);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span> (sel) {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange_dochange</a>(fname, mpcp);</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; g_free(fname);</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> (gtk_tree_model_iter_next(GTK_TREE_MODEL(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>), &amp;mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>)) {</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">return</span> G_SOURCE_CONTINUE;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; gtk_dialog_response(mpcp-&gt;<a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>, 1);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">sid</a> = 0;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b"> 211</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange_dochange_clicked</a>(GtkButton *btn, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>* mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a>*)user_data;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keyword">const</span> gchar *passwd1, *passwd2;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; g_source_remove(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a> = 0;</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"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">if</span> (!gtk_tree_model_get_iter_first(GTK_TREE_MODEL(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>), &amp;mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>))</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span>;</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; passwd1 = gtk_entry_get_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">ePassword1</a>);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; passwd2 = gtk_entry_get_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">ePassword2</a>);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(passwd1, passwd2) != 0) {</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; GtkWidget *msgDialog;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; msgDialog = gtk_message_dialog_new(GTK_WINDOW(mpcp-&gt;<a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>),</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; GTK_DIALOG_DESTROY_WITH_PARENT,</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; GTK_MESSAGE_ERROR,</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; _(<span class="stringliteral">&quot;The passwords do not match&quot;</span>));</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; gtk_dialog_run(GTK_DIALOG(msgDialog));</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gtk_widget_destroy(msgDialog);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; g_free(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a>);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a> = g_strdup(passwd1);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">changed_passwords_count</a> = 0;</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; gtk_label_set_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">statusLabel</a>, _(<span class="stringliteral">&quot;Resetting passwords, please wait…&quot;</span>));</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">enable_inputs</a>(mpcp, FALSE);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">sid</a> = g_idle_add(<a class="code" href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">changenext</a>, (gpointer)mpcp);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</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;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f"> 251</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange_searchfield_changed_to</a>(gpointer user_data)</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;{</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *)user_data;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keyword">const</span> gchar *s;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>) {</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; g_source_remove(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a> = 0;</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; s = gtk_entry_get_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a>);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; g_free(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a> = g_strdup(s);</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; s = gtk_entry_get_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">eDomain</a>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; g_free(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a> = g_strdup(s);</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; s = gtk_entry_get_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">eUsername</a>);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; g_free(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a> = g_strdup(s);</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; <span class="keywordflow">if</span> (mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a> != NULL) {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; gtk_tree_view_set_model(mpcp-&gt;<a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>, NULL);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a> = gtk_list_store_new(<a class="code" href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">NUM_COLS</a>, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);</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; <span class="keywordflow">if</span> (mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>[0] != 0 || mpcp-&gt;<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>[0] != 0 || mpcp-&gt;<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>[0] != 0)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>((GFunc)<a class="code" href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange_file_list_callback</a>, (gpointer)mpcp);</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; gtk_tree_view_set_model(mpcp-&gt;table, GTK_TREE_MODEL(mpcp-&gt;store));</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> G_SOURCE_CONTINUE; <span class="comment">// Source already remove at the beginning</span></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;}</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"><a class="line" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f"> 288</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a>(GtkSearchEntry *se, gpointer user_data)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *)user_data;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>) {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; g_source_remove(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a>);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a> = 0;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</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; mpcp-&gt;<a class="code" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a> = g_timeout_add(500, <a class="code" href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange_searchfield_changed_to</a>, user_data);</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;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a"> 302</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange_stopsearch</a>(GtkSearchEntry *entry, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="comment">/* The stop-search signal is emitted when pressing Esc on a GtkSearchEntry. We end the dialog. */</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *mpcp = (<span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *)user_data;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_dialog_response(mpcp-&gt;<a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>, 1);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;}</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2"> 310</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_file_multipasswd_changer_mt</a>(gpointer d)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *mpcp = d;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; GtkBuilder* bu;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; GtkDialog* <a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; GtkWindow* mainwindow;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; GtkCellRendererToggle *toggle;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *secret_plugin;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordtype">char</span> *initerror;</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; mainwindow = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="comment">/* The multiple password changer works only when a secrecy plugin is available */</span></div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; initerror = NULL;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; 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="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keywordflow">if</span> (secret_plugin == NULL) {</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; initerror = _(<span class="stringliteral">&quot;The multi password changer requires a secrecy plugin.\n&quot;</span>);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (!secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>()) {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; initerror = _(<span class="stringliteral">&quot;The multi password changer requires a secrecy service.\n&quot;</span>);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</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> (initerror) {</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; GtkWidget *msgDialog;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; msgDialog = gtk_message_dialog_new(mainwindow, GTK_DIALOG_MODAL, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK,</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="stringliteral">&quot;%s&quot;</span>, initerror);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gtk_dialog_run(GTK_DIALOG(msgDialog));</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gtk_widget_destroy(msgDialog);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</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; bu = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_mpc.glade&quot;</span>);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">if</span> (!bu) {</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Unable to load the multiple password changer glade file interface\n&quot;</span>);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; dialog = GTK_DIALOG(gtk_builder_get_object(bu, <span class="stringliteral">&quot;MPCDialog&quot;</span>));</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a> = <a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">if</span> (mainwindow)</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), mainwindow);</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"> 355</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a> = GTK_ENTRY(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;groupEntry&quot;</span>));</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; gtk_entry_set_text(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a>, mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; g_signal_connect(G_OBJECT(mpcp-&gt;<a class="code" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a>), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a>), (gpointer)mpcp);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; g_signal_connect(G_OBJECT(mpcp-&gt;eGroup), <span class="stringliteral">&quot;stop-search&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a">remmina_mpchange_stopsearch</a>), (gpointer)mpcp);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; mpcp-&gt;eUsername = GTK_ENTRY(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;usernameEntry&quot;</span>));</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; gtk_entry_set_text(mpcp-&gt;eUsername, mpcp-&gt;username);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; g_signal_connect(G_OBJECT(mpcp-&gt;eUsername), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a>), (gpointer)mpcp);</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; mpcp-&gt;eDomain = GTK_ENTRY(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;domainEntry&quot;</span>));</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; gtk_entry_set_text(mpcp-&gt;eDomain, mpcp-&gt;domain);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; g_signal_connect(G_OBJECT(mpcp-&gt;eDomain), <span class="stringliteral">&quot;changed&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a>), (gpointer)mpcp);</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"> 368</span>&#160; mpcp-&gt;ePassword1 = GTK_ENTRY(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;password1Entry&quot;</span>));</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; gtk_entry_set_text(mpcp-&gt;ePassword1, mpcp-&gt;password);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; mpcp-&gt;ePassword2 = GTK_ENTRY(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;password2Entry&quot;</span>));</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; gtk_entry_set_text(mpcp-&gt;ePassword2, mpcp-&gt;password);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; mpcp-&gt;statusLabel = GTK_LABEL(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;statusLabel&quot;</span>));</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; mpcp-&gt;store = NULL;</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; mpcp-&gt;table = GTK_TREE_VIEW(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;profchangelist&quot;</span>));</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="comment">/* Fire a fake searchfield changed, so a new list store is created */</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a>(NULL, (gpointer)mpcp);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; toggle = GTK_CELL_RENDERER_TOGGLE(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;cellrenderertoggle1&quot;</span>));</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; g_signal_connect(G_OBJECT(toggle), <span class="stringliteral">&quot;toggled&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange_checkbox_toggle</a>), (gpointer)mpcp);</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; mpcp-&gt;btnDoChange = GTK_BUTTON(GET_DIALOG_OBJECT(<span class="stringliteral">&quot;btnDoChange&quot;</span>));</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; g_signal_connect(mpcp-&gt;btnDoChange, <span class="stringliteral">&quot;clicked&quot;</span>, G_CALLBACK(<a class="code" href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange_dochange_clicked</a>), (gpointer)mpcp);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;sid) {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; g_source_remove(mpcp-&gt;sid);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; mpcp-&gt;sid = 0;</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;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;searchentrychange_timeout_source_id) {</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; g_source_remove(mpcp-&gt;searchentrychange_timeout_source_id);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; mpcp-&gt;searchentrychange_timeout_source_id = 0;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; }</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (mpcp-&gt;changed_passwords_count) {</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; GtkWidget *msgDialog;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; msgDialog = gtk_message_dialog_new(GTK_WINDOW(mpcp-&gt;dialog),</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; GTK_DIALOG_DESTROY_WITH_PARENT,</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; GTK_MESSAGE_INFO,</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; GTK_BUTTONS_OK,</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; ngettext(<span class="stringliteral">&quot;%d password changed.&quot;</span>, <span class="stringliteral">&quot;%d passwords changed.&quot;</span>, mpcp-&gt;changed_passwords_count), mpcp-&gt;changed_passwords_count);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; gtk_dialog_run(GTK_DIALOG(msgDialog));</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gtk_widget_destroy(msgDialog);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; }</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="comment">// Free data</span></div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; g_free(mpcp-&gt;username);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; g_free(mpcp-&gt;password);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; g_free(mpcp-&gt;domain);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; g_free(mpcp-&gt;group);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; g_free(mpcp);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00425"></a><span class="lineno"><a class="line" href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed"> 425</a></span>&#160;<a class="code" href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange_schedule</a>(gboolean has_domain, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a>)</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; <span class="comment">// We could also be called in a subthread after a successful connection</span></div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="comment">// (not currently implemented)</span></div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="comment">// So we just schedule the multipassword changer to be executed on</span></div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="comment">// the main thread</span></div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keyword">struct </span><a class="code" href="structmpchanger__params.html">mpchanger_params</a> *mpcp;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; mpcp = g_malloc0(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structmpchanger__params.html">mpchanger_params</a>));</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a> = g_strdup(username);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a> = g_strdup(password);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a> = g_strdup(domain);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; mpcp-&gt;<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a> = g_strdup(group);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; gdk_threads_add_idle(<a class="code" href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_file_multipasswd_changer_mt</a>, (gpointer)mpcp);</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;}</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;</div><div class="ttc" id="structmpchanger__params_html_aaccae78b49c585d0a4d34776152ae5a2"><div class="ttname"><a href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">mpchanger_params::btnDoChange</a></div><div class="ttdeci">GtkButton * btnDoChange</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00063">remmina_mpchange.c:63</a></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#l00327">remmina_file.c:327</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_abd2f06bf0a5ddcf7156e5ef7d0c8d4d7"><div class="ttname"><a href="remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7">remmina_file_free</a></div><div class="ttdeci">void remmina_file_free(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00548">remmina_file.c:548</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__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#l00449">remmina_file.c:449</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#l00069">remmina_mpchange.c:69</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#l00302">remmina_mpchange.c:302</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#l01361">remmina_main.c:1361</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3">COL_FILENAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00077">remmina_mpchange.c:77</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="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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd">COL_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00075">remmina_mpchange.c:75</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_adf52357ac6f70f8bead49111deff9568"><div class="ttname"><a href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">mpchanger_params::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00061">remmina_mpchange.c:61</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__mpchange_8h_html"><div class="ttname"><a href="remmina__mpchange_8h.html">remmina_mpchange.h</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_ac9c16b65f1d27a62e2622b79f1aaf7bd"><div class="ttname"><a href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">mpchanger_params::statusLabel</a></div><div class="ttdeci">GtkLabel * statusLabel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00064">remmina_mpchange.c:64</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a506370be386145eeb2c59829fe3e8131"><div class="ttname"><a href="remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131">remmina_mpchange_fieldcompare</a></div><div class="ttdeci">static gboolean remmina_mpchange_fieldcompare(const gchar *needle, const gchar *haystack, int *matchcount)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00081">remmina_mpchange.c:81</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a519a411cb2091da2176258d87bcea6d4"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin::is_service_available</a></div><div class="ttdeci">gboolean(* is_service_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00138">plugin.h:138</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a26ac0b33bd0b5ea718e16d04923b5ccd"><div class="ttname"><a href="remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd">remmina_mpchange_file_list_callback</a></div><div class="ttdeci">static void remmina_mpchange_file_list_callback(RemminaFile *remminafile, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00098">remmina_mpchange.c:98</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_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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_ad063ddefc518c67ed98f4b4bdf87fa8f"><div class="ttname"><a href="remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f">remmina_mpchange_searchfield_changed</a></div><div class="ttdeci">static void remmina_mpchange_searchfield_changed(GtkSearchEntry *se, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00288">remmina_mpchange.c:288</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_ab39b307ec320e66e34dd5b6a8c56d348"><div class="ttname"><a href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">mpchanger_params::eGroup</a></div><div class="ttdeci">GtkEntry * eGroup</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00058">remmina_mpchange.c:58</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="structmpchanger__params_html_a87576a4dfe04c11686cf574669331bb2"><div class="ttname"><a href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">mpchanger_params::table</a></div><div class="ttdeci">GtkTreeView * table</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__mpchange_8c_html_a525273e9a7f849c9d072467d216762b2"><div class="ttname"><a href="remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2">remmina_file_multipasswd_changer_mt</a></div><div class="ttdeci">static gboolean remmina_file_multipasswd_changer_mt(gpointer d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00310">remmina_mpchange.c:310</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a41f51745fc0e63d75d15fc80aaa4a29e"><div class="ttname"><a href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">mpchanger_params::password</a></div><div class="ttdeci">gchar * password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00055">remmina_mpchange.c:55</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_ac84b71e36fe02a6ff8cb295269316960"><div class="ttname"><a href="remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960">remmina_mpchange_schedule</a></div><div class="ttdeci">void remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00425">remmina_mpchange.c:425</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="structmpchanger__params_html_a3cb4141ca61b0b9a5584239386dbbe46"><div class="ttname"><a href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">mpchanger_params::iter</a></div><div class="ttdeci">GtkTreeIter iter</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00066">remmina_mpchange.c:66</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1">NUM_COLS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00078">remmina_mpchange.c:78</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_ace846a15a537aecd0de2a17a1203c809"><div class="ttname"><a href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">mpchanger_params::eUsername</a></div><div class="ttdeci">GtkEntry * eUsername</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00058">remmina_mpchange.c:58</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_aa1af698dc2f5c11ef826938652fd0245"><div class="ttname"><a href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">mpchanger_params::ePassword1</a></div><div class="ttdeci">GtkEntry * ePassword1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00059">remmina_mpchange.c:59</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a4bf7e99626c40534641916848253f60f"><div class="ttname"><a href="remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f">remmina_mpchange_searchfield_changed_to</a></div><div class="ttdeci">static gboolean remmina_mpchange_searchfield_changed_to(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00251">remmina_mpchange.c:251</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a909daa43f234a03b1ec12a58acc51b15"><div class="ttname"><a href="remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15">enable_inputs</a></div><div class="ttdeci">static void enable_inputs(struct mpchanger_params *mpcp, gboolean ena)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00177">remmina_mpchange.c:177</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24">COL_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00074">remmina_mpchange.c:74</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a24d0569c79b289b5812c5c3019e5f4dd"><div class="ttname"><a href="remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd">remmina_mpchange_dochange</a></div><div class="ttdeci">static void remmina_mpchange_dochange(gchar *fname, struct mpchanger_params *mpcp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00162">remmina_mpchange.c:162</a></div></div>
+<div class="ttc" id="structmpchanger__params_html"><div class="ttname"><a href="structmpchanger__params.html">mpchanger_params</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00052">remmina_mpchange.c:52</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a098952d194a183d4a505aa065797864b"><div class="ttname"><a href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">mpchanger_params::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00056">remmina_mpchange.c:56</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a3be28ff7f5a9b44dc47f92b883a85ac5"><div class="ttname"><a href="remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5">remmina_file_store_secret_plugin_password</a></div><div class="ttdeci">void remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00660">remmina_file.c:660</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a3f0a338901d8e6195eb872b0f2098e73"><div class="ttname"><a href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">mpchanger_params::store</a></div><div class="ttdeci">GtkListStore * store</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00060">remmina_mpchange.c:60</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__mpchange_8c_html_a07d130893c0487bb873f2b6986e15a1b"><div class="ttname"><a href="remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b">remmina_mpchange_dochange_clicked</a></div><div class="ttdeci">static void remmina_mpchange_dochange_clicked(GtkButton *btn, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00211">remmina_mpchange.c:211</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a">COL_F</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00073">remmina_mpchange.c:73</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a90af95c96a92c2aff1c2ab4be2e40f5c"><div class="ttname"><a href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">mpchanger_params::domain</a></div><div class="ttdeci">gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00054">remmina_mpchange.c:54</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a170ffe7965540ab152a4a95945482c87"><div class="ttname"><a href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">mpchanger_params::sid</a></div><div class="ttdeci">guint sid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00068">remmina_mpchange.c:68</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e"><div class="ttname"><a href="remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e">COL_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00076">remmina_mpchange.c:76</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a634dd9d08486b2a435fba15119db6742"><div class="ttname"><a href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">mpchanger_params::username</a></div><div class="ttdeci">gchar * username</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00053">remmina_mpchange.c:53</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_ae582e14f2f790ea6bfdf81d5920e51ed"><div class="ttname"><a href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">mpchanger_params::eDomain</a></div><div class="ttdeci">GtkEntry * eDomain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00058">remmina_mpchange.c:58</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a44429b8b620590ed1e1e015af6191719"><div class="ttname"><a href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">mpchanger_params::changed_passwords_count</a></div><div class="ttdeci">int changed_passwords_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00067">remmina_mpchange.c:67</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_aa872ba9de3be7ccd116881cee84c8b85"><div class="ttname"><a href="remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85">remmina_mpchange_checkbox_toggle</a></div><div class="ttdeci">static void remmina_mpchange_checkbox_toggle(GtkCellRendererToggle *cell, gchar *path_string, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00148">remmina_mpchange.c:148</a></div></div>
+<div class="ttc" id="remmina__mpchange_8c_html_abea63e74b83d3545308d05dfe88e2839"><div class="ttname"><a href="remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839">changenext</a></div><div class="ttdeci">static gboolean changenext(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00188">remmina_mpchange.c:188</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a5c5b14d537a1b0685027d50d2a4cf9be"><div class="ttname"><a href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">mpchanger_params::ePassword2</a></div><div class="ttdeci">GtkEntry * ePassword2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00059">remmina_mpchange.c:59</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#l00151">remmina_file_manager.c:151</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__mpchange_8c.html">remmina_mpchange.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__mpchange_8h.html b/docs/remmina__mpchange_8h.html
new file mode 100644
index 000000000..42ce17946
--- /dev/null
+++ b/docs/remmina__mpchange_8h.html
@@ -0,0 +1,160 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_mpchange.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__mpchange_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_mpchange.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__mpchange_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8627f0b2ac822c2f57a4eddc843a8fed"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed">remmina_mpchange_schedule</a> (gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password)</td></tr>
+<tr class="separator:a8627f0b2ac822c2f57a4eddc843a8fed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a8627f0b2ac822c2f57a4eddc843a8fed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8627f0b2ac822c2f57a4eddc843a8fed">&#9670;&nbsp;</a></span>remmina_mpchange_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_mpchange_schedule </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>has_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00425">425</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__mpchange_8h.html">remmina_mpchange.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__mpchange_8h.js b/docs/remmina__mpchange_8h.js
new file mode 100644
index 000000000..8cbb6c683
--- /dev/null
+++ b/docs/remmina__mpchange_8h.js
@@ -0,0 +1,4 @@
+var remmina__mpchange_8h =
+[
+ [ "remmina_mpchange_schedule", "remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__mpchange_8h_source.html b/docs/remmina__mpchange_8h_source.html
new file mode 100644
index 000000000..67f6f38b8
--- /dev/null
+++ b/docs/remmina__mpchange_8h_source.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_mpchange.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__mpchange_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_mpchange.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__mpchange_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-2020 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;<a class="code" href="types_8h.html">remmina/types.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</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="comment">/* Schedule the multipassword change confirmation dialog to be executed ASAP */</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed">remmina_mpchange_schedule</a>(gboolean has_domain, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a>, <span class="keyword">const</span> gchar *<a class="code" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a>);</div><div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div>
+<div class="ttc" id="remmina__mpchange_8h_html_a8627f0b2ac822c2f57a4eddc843a8fed"><div class="ttname"><a href="remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed">remmina_mpchange_schedule</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00425">remmina_mpchange.c:425</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a41f51745fc0e63d75d15fc80aaa4a29e"><div class="ttname"><a href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">mpchanger_params::password</a></div><div class="ttdeci">gchar * password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00055">remmina_mpchange.c:55</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a098952d194a183d4a505aa065797864b"><div class="ttname"><a href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">mpchanger_params::group</a></div><div class="ttdeci">gchar * group</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00056">remmina_mpchange.c:56</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a90af95c96a92c2aff1c2ab4be2e40f5c"><div class="ttname"><a href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">mpchanger_params::domain</a></div><div class="ttdeci">gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00054">remmina_mpchange.c:54</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a634dd9d08486b2a435fba15119db6742"><div class="ttname"><a href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">mpchanger_params::username</a></div><div class="ttdeci">gchar * username</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00053">remmina_mpchange.c:53</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__mpchange_8h.html">remmina_mpchange.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__nslookup_8sh.html b/docs/remmina__nslookup_8sh.html
new file mode 100644
index 000000000..ac5bd24ad
--- /dev/null
+++ b/docs/remmina__nslookup_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_nslookup.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__nslookup_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_nslookup.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__nslookup_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__nslookup_8sh.html">remmina_nslookup.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__nslookup_8sh_source.html b/docs/remmina__nslookup_8sh_source.html
new file mode 100644
index 000000000..d35d0d064
--- /dev/null
+++ b/docs/remmina__nslookup_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_nslookup.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__nslookup_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_nslookup.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__nslookup_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;. $(dirname $0)/functions.sh</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;settitle</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;nslookup $server</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;pause</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__nslookup_8sh.html">remmina_nslookup.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ping_8sh.html b/docs/remmina__ping_8sh.html
new file mode 100644
index 000000000..83351c174
--- /dev/null
+++ b/docs/remmina__ping_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ping.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ping_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ping.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ping_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__ping_8sh.html">remmina_ping.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ping_8sh_source.html b/docs/remmina__ping_8sh_source.html
new file mode 100644
index 000000000..44dc1b54a
--- /dev/null
+++ b/docs/remmina__ping_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ping.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ping_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ping.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ping_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;. $(dirname $0)/functions.sh</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;settitle</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;ping -c3 $server</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;pause</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__ping_8sh.html">remmina_ping.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin_8h.html b/docs/remmina__plugin_8h.html
new file mode 100644
index 000000000..f9db6d268
--- /dev/null
+++ b/docs/remmina__plugin_8h.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a9e23247b6eabdebd2bec63382738fdee"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee">PThreadCleanupFunc</a>) (void *)</td></tr>
+<tr class="separator:a9e23247b6eabdebd2bec63382738fdee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a9e23247b6eabdebd2bec63382738fdee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e23247b6eabdebd2bec63382738fdee">&#9670;&nbsp;</a></span>PThreadCleanupFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* PThreadCleanupFunc) (void *)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__plugin_8h_source.html">remmina_plugin.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_5d25c70afac6b002f7f51ae199ab2b04.html">common</a></li><li class="navelem"><a class="el" href="remmina__plugin_8h.html">remmina_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin_8h.js b/docs/remmina__plugin_8h.js
new file mode 100644
index 000000000..4cc544d2c
--- /dev/null
+++ b/docs/remmina__plugin_8h.js
@@ -0,0 +1,4 @@
+var remmina__plugin_8h =
+[
+ [ "PThreadCleanupFunc", "remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__plugin_8h_source.html b/docs/remmina__plugin_8h_source.html
new file mode 100644
index 000000000..618d4e163
--- /dev/null
+++ b/docs/remmina__plugin_8h_source.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__plugin_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n-lib.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="plugin_8h.html">remmina/plugin.h</a>&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;signal.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#ifdef HAVE_NETDB_H</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &lt;netdb.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#ifdef HAVE_ARPA_INET_H</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &lt;arpa/inet.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#ifdef HAVE_NETINET_IN_H</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &lt;netinet/in.h&gt;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#ifdef HAVE_SYS_SOCKET_H</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &lt;sys/socket.h&gt;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#ifdef HAVE_FCNTL_H</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#ifdef HAVE_ERRNO_H</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#include &lt;errno.h&gt;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#endif</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__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee"> 69</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee">PThreadCleanupFunc</a>)(<span class="keywordtype">void</span> *);</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;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#define IDLE_ADD gdk_threads_add_idle</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#define TIMEOUT_ADD gdk_threads_add_timeout</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#define CANCEL_ASYNC pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL); pthread_testcancel();</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#define CANCEL_DEFER pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL);</span></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;<span class="preprocessor">#define THREADS_ENTER _Pragma(&quot;GCC error \&quot;THREADS_ENTER has been deprecated in Remmina 1.2\&quot;&quot;)</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#define THREADS_LEAVE _Pragma(&quot;GCC error \&quot;THREADS_LEAVE has been deprecated in Remmina 1.2\&quot;&quot;)</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="preprocessor">#define MAX_X_DISPLAY_NUMBER 99</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#define X_UNIX_SOCKET &quot;/tmp/.X11-unix/X%d&quot;</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#define INCLUDE_GET_AVAILABLE_XDISPLAY static gint \</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor"> remmina_get_available_xdisplay(void) \</span></div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor"> gint i; \</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"> gint display = 0; \</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"> gchar fn[200]; \</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"> for (i = 1; i &lt; MAX_X_DISPLAY_NUMBER; i++) \</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"> g_snprintf(fn, sizeof(fn), X_UNIX_SOCKET, i); \</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"> if (!g_file_test(fn, G_FILE_TEST_EXISTS)) \</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"> display = i; \</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor"> break; \</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"> } \</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor"> } \</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"> return display; \</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor"> }</span></div><div class="ttc" id="plugin_8h_html"><div class="ttname"><a href="plugin_8h.html">plugin.h</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html_a9e23247b6eabdebd2bec63382738fdee"><div class="ttname"><a href="remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee">PThreadCleanupFunc</a></div><div class="ttdeci">void(* PThreadCleanupFunc)(void *)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin_8h_source.html#l00069">remmina_plugin.h:69</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_5d25c70afac6b002f7f51ae199ab2b04.html">common</a></li><li class="navelem"><a class="el" href="remmina__plugin_8h.html">remmina_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin__manager_8c.html b/docs/remmina__plugin__manager_8c.html
new file mode 100644
index 000000000..194427f75
--- /dev/null
+++ b/docs/remmina__plugin__manager_8c.html
@@ -0,0 +1,822 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_manager.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin__manager_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin_manager.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__plugin__manager_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae78fa0b2eab8c987d810c6997b136d2e"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager_compare_func</a> (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> **a, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> **b)</td></tr>
+<tr class="separator:ae78fa0b2eab8c987d810c6997b136d2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e75f54171749cfec5c0cbbb1095ed86"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">htdestroy</a> (gpointer ht)</td></tr>
+<tr class="separator:a7e75f54171749cfec5c0cbbb1095ed86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72f0dbafb41acc4a5834f5c0719e6046"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">init_settings_cache</a> (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin)</td></tr>
+<tr class="separator:a72f0dbafb41acc4a5834f5c0719e6046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4cb2d85f9cf76089a082122f2891fb8"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager_register_plugin</a> (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin)</td></tr>
+<tr class="separator:ad4cb2d85f9cf76089a082122f2891fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ef27b953decb0c707ec9a18da47a38f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a> ()</td></tr>
+<tr class="separator:a1ef27b953decb0c707ec9a18da47a38f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfd705f51933350af0f8760d23e85c6e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager_load_plugin</a> (const gchar *name)</td></tr>
+<tr class="separator:adfd705f51933350af0f8760d23e85c6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac90d2ffe3909722ca3daedac28da76e5"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">compare_secret_plugin_init_order</a> (gconstpointer a, gconstpointer b)</td></tr>
+<tr class="separator:ac90d2ffe3909722ca3daedac28da76e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92c2264598a43702594535cebbf4d8cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a> (void)</td></tr>
+<tr class="separator:a92c2264598a43702594535cebbf4d8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3872c8656a8a3d5147bcc603471c1932"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, const gchar *name)</td></tr>
+<tr class="separator:a3872c8656a8a3d5147bcc603471c1932"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af60b8edfa50563ae4c7593efc3deed55"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a> (const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *setting)</td></tr>
+<tr class="separator:af60b8edfa50563ae4c7593efc3deed55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13f13a6a4280268656f258cb5aeff031"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data)</td></tr>
+<tr class="separator:a13f13a6a4280268656f258cb5aeff031"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fdc160c477f9f5e1d881c0c054d4b07"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager_show_for_each_stdout</a> (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin)</td></tr>
+<tr class="separator:a3fdc160c477f9f5e1d881c0c054d4b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe0881986b2a64bfb5460981dadcf28d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a> ()</td></tr>
+<tr class="separator:afe0881986b2a64bfb5460981dadcf28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a634fadd9871f76bc60c3da0aa95e719c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager_show_for_each</a> (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, GtkListStore *store)</td></tr>
+<tr class="separator:a634fadd9871f76bc60c3da0aa95e719c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedec4e9cf18d99a559aa51065c2bc276"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:aedec4e9cf18d99a559aa51065c2bc276"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a859348bddc9069f06195915692b65076"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a> (const gchar *file)</td></tr>
+<tr class="separator:a859348bddc9069f06195915692b65076"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afce14b101da527ada9b44a4503e91e07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:afce14b101da527ada9b44a4503e91e07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad380a98f6624aa8c830015c8b428b7b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a> (void)</td></tr>
+<tr class="separator:ad380a98f6624aa8c830015c8b428b7b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1668951fd7067f2c405e001836855080"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> ptype, const gchar *name, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> ftype)</td></tr>
+<tr class="separator:a1668951fd7067f2c405e001836855080"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef243c58b9e8c778232d5acb32c7729b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a> (<a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *pp, const char *setting)</td></tr>
+<tr class="separator:aef243c58b9e8c778232d5acb32c7729b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a65313d34bb7e940f388e45818fd5889e"><td class="memItemLeft" align="right" valign="top">static GPtrArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a> = NULL</td></tr>
+<tr class="separator:a65313d34bb7e940f388e45818fd5889e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a150a4a8a8dcd21a51008250bb38bce49"><td class="memItemLeft" align="right" valign="top">static GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a> = NULL</td></tr>
+<tr class="separator:a150a4a8a8dcd21a51008250bb38bce49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e79d6abd0b12c1ed2bb33988e41857e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_secret_plugin</a> = NULL</td></tr>
+<tr class="separator:a5e79d6abd0b12c1ed2bb33988e41857e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a719ce18a83ed7ecb3388f179a8590c10"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a> []</td></tr>
+<tr class="separator:a719ce18a83ed7ecb3388f179a8590c10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3996819fdb2c833f3c64c2ad399e5f10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a></td></tr>
+<tr class="separator:a3996819fdb2c833f3c64c2ad399e5f10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ac90d2ffe3909722ca3daedac28da76e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac90d2ffe3909722ca3daedac28da76e5">&#9670;&nbsp;</a></span>compare_secret_plugin_init_order()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint compare_secret_plugin_init_order </td>
+ <td>(</td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00281">281</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a7e75f54171749cfec5c0cbbb1095ed86"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e75f54171749cfec5c0cbbb1095ed86">&#9670;&nbsp;</a></span>htdestroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void htdestroy </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>ht</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00078">78</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a72f0dbafb41acc4a5834f5c0719e6046"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72f0dbafb41acc4a5834f5c0719e6046">&#9670;&nbsp;</a></span>init_settings_cache()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void init_settings_cache </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00083">83</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a1ef27b953decb0c707ec9a18da47a38f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ef27b953decb0c707ec9a18da47a38f">&#9670;&nbsp;</a></span>remmina_gtksocket_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_gtksocket_available </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="ae78fa0b2eab8c987d810c6997b136d2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae78fa0b2eab8c987d810c6997b136d2e">&#9670;&nbsp;</a></span>remmina_plugin_manager_compare_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_plugin_manager_compare_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> **&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> **&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00072">72</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a13f13a6a4280268656f258cb5aeff031"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13f13a6a4280268656f258cb5aeff031">&#9670;&nbsp;</a></span>remmina_plugin_manager_for_each_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_for_each_plugin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00388">388</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="af60b8edfa50563ae4c7593efc3deed55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af60b8edfa50563ae4c7593efc3deed55">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_canonical_setting_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_plugin_manager_get_canonical_setting_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td>
+ <td class="paramname"><em>setting</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00374">374</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afce14b101da527ada9b44a4503e91e07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afce14b101da527ada9b44a4503e91e07">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_export_file_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>* remmina_plugin_manager_get_export_file_handler </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00510">510</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a859348bddc9069f06195915692b65076"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a859348bddc9069f06195915692b65076">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_import_file_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>* remmina_plugin_manager_get_import_file_handler </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00491">491</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a3872c8656a8a3d5147bcc603471c1932"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3872c8656a8a3d5147bcc603471c1932">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a>* remmina_plugin_manager_get_plugin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00359">359</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="ad380a98f6624aa8c830015c8b428b7b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad380a98f6624aa8c830015c8b428b7b4">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_secret_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>* remmina_plugin_manager_get_secret_plugin </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00527">527</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a92c2264598a43702594535cebbf4d8cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92c2264598a43702594535cebbf4d8cd">&#9670;&nbsp;</a></span>remmina_plugin_manager_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00295">295</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="aef243c58b9e8c778232d5acb32c7729b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef243c58b9e8c778232d5acb32c7729b">&#9670;&nbsp;</a></span>remmina_plugin_manager_is_encrypted_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_manager_is_encrypted_setting </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *&#160;</td>
+ <td class="paramname"><em>pp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00552">552</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="adfd705f51933350af0f8760d23e85c6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfd705f51933350af0f8760d23e85c6e">&#9670;&nbsp;</a></span>remmina_plugin_manager_load_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_manager_load_plugin </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00254">254</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a1668951fd7067f2c405e001836855080"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1668951fd7067f2c405e001836855080">&#9670;&nbsp;</a></span>remmina_plugin_manager_query_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_manager_query_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>ptype</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>ftype</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00533">533</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4cb2d85f9cf76089a082122f2891fb8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4cb2d85f9cf76089a082122f2891fb8">&#9670;&nbsp;</a></span>remmina_plugin_manager_register_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_manager_register_plugin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00135">135</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="aedec4e9cf18d99a559aa51065c2bc276"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedec4e9cf18d99a559aa51065c2bc276">&#9670;&nbsp;</a></span>remmina_plugin_manager_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_show </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00437">437</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a634fadd9871f76bc60c3da0aa95e719c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a634fadd9871f76bc60c3da0aa95e719c">&#9670;&nbsp;</a></span>remmina_plugin_manager_show_for_each()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_manager_show_for_each </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkListStore *&#160;</td>
+ <td class="paramname"><em>store</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00426">426</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fdc160c477f9f5e1d881c0c054d4b07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fdc160c477f9f5e1d881c0c054d4b07">&#9670;&nbsp;</a></span>remmina_plugin_manager_show_for_each_stdout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_manager_show_for_each_stdout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00408">408</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afe0881986b2a64bfb5460981dadcf28d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe0881986b2a64bfb5460981dadcf28d">&#9670;&nbsp;</a></span>remmina_plugin_manager_show_stdout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_show_stdout </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00419">419</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a150a4a8a8dcd21a51008250bb38bce49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a150a4a8a8dcd21a51008250bb38bce49">&#9670;&nbsp;</a></span>encrypted_settings_cache</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* encrypted_settings_cache = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a3996819fdb2c833f3c64c2ad399e5f10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3996819fdb2c833f3c64c2ad399e5f10">&#9670;&nbsp;</a></span>remmina_plugin_manager_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> remmina_plugin_manager_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a65313d34bb7e940f388e45818fd5889e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65313d34bb7e940f388e45818fd5889e">&#9670;&nbsp;</a></span>remmina_plugin_table</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPtrArray* remmina_plugin_table = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a719ce18a83ed7ecb3388f179a8590c10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a719ce18a83ed7ecb3388f179a8590c10">&#9670;&nbsp;</a></span>remmina_plugin_type_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_plugin_type_name[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Protocol&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Entry&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;File&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Tool&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Preference&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secret&quot;</span>), NULL }</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e79d6abd0b12c1ed2bb33988e41857e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e79d6abd0b12c1ed2bb33988e41857e">&#9670;&nbsp;</a></span>remmina_secret_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>* remmina_secret_plugin = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__plugin__manager_8c.html">remmina_plugin_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin__manager_8c.js b/docs/remmina__plugin__manager_8c.js
new file mode 100644
index 000000000..dbab3dc60
--- /dev/null
+++ b/docs/remmina__plugin__manager_8c.js
@@ -0,0 +1,28 @@
+var remmina__plugin__manager_8c =
+[
+ [ "compare_secret_plugin_init_order", "remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5", null ],
+ [ "htdestroy", "remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86", null ],
+ [ "init_settings_cache", "remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046", null ],
+ [ "remmina_gtksocket_available", "remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f", null ],
+ [ "remmina_plugin_manager_compare_func", "remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e", null ],
+ [ "remmina_plugin_manager_for_each_plugin", "remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031", null ],
+ [ "remmina_plugin_manager_get_canonical_setting_name", "remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55", null ],
+ [ "remmina_plugin_manager_get_export_file_handler", "remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07", null ],
+ [ "remmina_plugin_manager_get_import_file_handler", "remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076", null ],
+ [ "remmina_plugin_manager_get_plugin", "remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932", null ],
+ [ "remmina_plugin_manager_get_secret_plugin", "remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4", null ],
+ [ "remmina_plugin_manager_init", "remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd", null ],
+ [ "remmina_plugin_manager_is_encrypted_setting", "remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b", null ],
+ [ "remmina_plugin_manager_load_plugin", "remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e", null ],
+ [ "remmina_plugin_manager_query_feature_by_type", "remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080", null ],
+ [ "remmina_plugin_manager_register_plugin", "remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8", null ],
+ [ "remmina_plugin_manager_show", "remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276", null ],
+ [ "remmina_plugin_manager_show_for_each", "remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c", null ],
+ [ "remmina_plugin_manager_show_for_each_stdout", "remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07", null ],
+ [ "remmina_plugin_manager_show_stdout", "remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d", null ],
+ [ "encrypted_settings_cache", "remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49", null ],
+ [ "remmina_plugin_manager_service", "remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10", null ],
+ [ "remmina_plugin_table", "remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e", null ],
+ [ "remmina_plugin_type_name", "remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10", null ],
+ [ "remmina_secret_plugin", "remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__plugin__manager_8c_source.html b/docs/remmina__plugin__manager_8c_source.html
new file mode 100644
index 000000000..824bc5127
--- /dev/null
+++ b/docs/remmina__plugin__manager_8c_source.html
@@ -0,0 +1,246 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_manager.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin__manager_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_plugin_manager.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__plugin__manager_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-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-2020 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;</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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</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"> 46</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.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__public_8h.html">remmina_public.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__pref_8h.html">remmina_pref.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__protocol__widget_8h.html">remmina_protocol_widget.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__log_8h.html">remmina_log.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__widget__pool_8h.html">remmina_widget_pool.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__plugin__manager_8h.html">remmina_plugin_manager.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__public_8h.html">remmina_public.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</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"><a class="line" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e"> 61</a></span>&#160;<span class="keyword">static</span> GPtrArray* <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a> = NULL;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* A GHashTable of GHashTables where to store the names of the encrypted settings */</span></div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49"> 64</a></span>&#160;<span class="keyword">static</span> GHashTable *<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a> = NULL;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* There can be only one secret plugin loaded */</span></div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e"> 67</a></span>&#160;<span class="keyword">static</span> <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> = NULL;</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__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10"> 69</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *<a class="code" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a>[] =</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;{ <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Protocol&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Entry&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;File&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Tool&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Preference&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Secret&quot;</span>), NULL };</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e"> 72</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager_compare_func</a>(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> **a, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> **b)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> g_strcmp0((*a)-&gt;name, (*b)-&gt;name);</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__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86"> 78</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">htdestroy</a>(gpointer ht)</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; g_hash_table_unref(ht);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;}</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046"> 83</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">init_settings_cache</a>(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *protocol_plugin;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a>* setting_iter;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; GHashTable *pht;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">/* This code make a encrypted setting cache only for protocol plugins */</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a> != <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>) {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span>;</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"> 96</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a> == NULL)</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a> = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, <a class="code" href="remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86">htdestroy</a>);</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="keywordflow">if</span> (!(pht = g_hash_table_lookup(<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>))) {</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; pht = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; g_hash_table_insert(<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a>, g_strdup(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>), pht);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</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">/* Some settings are encrypted &quot;by name&quot; */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">/* g_hash_table_insert(pht, g_strdup(&quot;proxy_password&quot;), (gpointer)TRUE); */</span></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; g_hash_table_insert(pht, g_strdup(<span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>), (gpointer)TRUE);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; g_hash_table_insert(pht, g_strdup(<span class="stringliteral">&quot;ssh_tunnel_passphrase&quot;</span>), (gpointer)TRUE);</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; <span class="comment">/* ssh_password is no longer used starting from remmina 1.4.</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> * But we MUST mark it as encrypted setting, or the migration procedure will fail */</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; g_hash_table_insert(pht, g_strdup(<span class="stringliteral">&quot;ssh_password&quot;</span>), (gpointer)TRUE);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">/* Other settings are encrypted because of their type */</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; protocol_plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)plugin;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">basic_settings</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> == <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; g_hash_table_insert(pht, g_strdup(<a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter)), (gpointer)TRUE);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; setting_iter++;</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"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; setting_iter = protocol_plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span> (setting_iter) {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">while</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> != <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>) {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (setting_iter-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> == <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>)</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; g_hash_table_insert(pht, g_strdup(<a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(setting_iter)), (gpointer)TRUE);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; setting_iter++;</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; }</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;}</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"><a class="line" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8"> 135</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager_register_plugin</a>(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin)</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a> == <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>) {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_print(<span class="stringliteral">&quot;Remmina plugin %s (type=%s) has registered but not yet initialized/activated. &quot;</span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="stringliteral">&quot;Initialization order is %d.\n&quot;</span>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>,</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; _(<a class="code" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a>[plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a>]),</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; ((<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a>*)plugin)-&gt;init_order);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; }</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">init_settings_cache</a>(plugin);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; g_ptr_array_add(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, plugin);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; g_ptr_array_sort(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, (GCompareFunc)<a class="code" href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager_compare_func</a>);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> TRUE;</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f"> 151</a></span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a>()</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; GdkDisplayManager* dm;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; GdkDisplay* d;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; gboolean available;</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; dm = gdk_display_manager_get();</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; d = gdk_display_manager_get_default_display(dm);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; available = FALSE;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">if</span> (GDK_IS_X11_DISPLAY(d)) {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">/* GtkSocket support is available only under X.Org */</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; available = TRUE;</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> available;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10"> 172</a></span>&#160;<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> <a class="code" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a> =</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; <a class="code" href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager_register_plugin</a>,</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a>,</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a>,</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a>,</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a>,</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>,</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>,</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a>,</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>,</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>,</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a>,</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a>,</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a>,</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a>,</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a>,</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a>,</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a>,</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a>,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a>,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a>,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a>,</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a>,</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a>,</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a>,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a>,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a>,</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a>,</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a>,</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a>,</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a>,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a>,</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a>,</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a>,</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a>,</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a>,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a>,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a>,</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a>,</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a>,</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a>,</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a>,</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a>,</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a>,</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a>,</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a>,</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; <a class="code" href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a>,</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892">remmina_file_new</a>,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>,</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>,</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <a class="code" href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a>,</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>,</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>,</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a>,</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <a class="code" href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a>,</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>,</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a>,</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <a class="code" href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a>,</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a>,</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <a class="code" href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a>,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a>,</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; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>,</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a>,</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a>,</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>,</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <a class="code" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>,</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>,</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>,</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a>,</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a>,</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a></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;};</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e"> 254</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager_load_plugin</a>(<span class="keyword">const</span> gchar *name)</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;{</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; GModule *module;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">RemminaPluginEntryFunc</a> entry;</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; module = g_module_open(name, G_MODULE_BIND_LAZY | G_MODULE_BIND_LOCAL);</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> (!module) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; g_print(<span class="stringliteral">&quot;Failed to load plugin: %s.\n&quot;</span>, name);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; g_print(<span class="stringliteral">&quot;Error: %s\n&quot;</span>, g_module_error());</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">if</span> (!g_module_symbol(module, <span class="stringliteral">&quot;remmina_plugin_entry&quot;</span>, (gpointer*)&amp;entry)) {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; g_print(<span class="stringliteral">&quot;Failed to locate plugin entry: %s.\n&quot;</span>, name);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">return</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"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (!entry(&amp;remmina_plugin_manager_service)) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; g_print(<span class="stringliteral">&quot;Plugin entry returned false: %s.\n&quot;</span>, name);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="comment">/* We don’t close the module because we will need it throughout the process lifetime */</span></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;</div><div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5"> 281</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">compare_secret_plugin_init_order</a>(gconstpointer a, gconstpointer b)</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; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *sa, *sb;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; sa = (<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a>*)a;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; sb = (<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a>*)b;</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; <span class="keywordflow">if</span> (sa-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a> &gt; sb-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a>)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (sa-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a> &lt; sb-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a>)</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd"> 295</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;{</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; GDir *dir;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keyword">const</span> gchar *name, *ptr;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; gchar *fullpath;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *sp;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; GSList *secret_plugins;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; GSList *sple;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a> = g_ptr_array_new();</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">if</span> (!g_module_supported()) {</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; g_print(<span class="stringliteral">&quot;Dynamic loading of plugins is not supported in this platform!\n&quot;</span>);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; dir = g_dir_open(REMMINA_RUNTIME_PLUGINDIR, 0, NULL);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">if</span> (dir == NULL)</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">if</span> ((ptr = strrchr(name, <span class="charliteral">&#39;.&#39;</span>)) == NULL)</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; ptr++;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(ptr, G_MODULE_SUFFIX) != 0)</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; fullpath = g_strdup_printf(REMMINA_RUNTIME_PLUGINDIR <span class="stringliteral">&quot;/%s&quot;</span>, name);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <a class="code" href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager_load_plugin</a>(fullpath);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; g_free(fullpath);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; g_dir_close(dir);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="comment">/* Now all secret plugins needs to initialize, following their init_order.</span></div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="comment"> * The 1st plugin which will initialize correctly will be</span></div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment"> * the default remmina_secret_plugin */</span></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> (remmina_secret_plugin)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; g_print(<span class="stringliteral">&quot;Internal ERROR: remmina_secret_plugin must be null here\n&quot;</span>);</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; secret_plugins = NULL;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>-&gt;len; i++) {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; plugin = (<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)g_ptr_array_index(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, i);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a> == <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a>) {</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; secret_plugins = g_slist_insert_sorted(secret_plugins, (gpointer)plugin, <a class="code" href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">compare_secret_plugin_init_order</a>);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</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;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; sple = secret_plugins;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">while</span>(sple != NULL) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; sp = (<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a>*)sple-&gt;data;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; if (sp-&gt;<a class="code" href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56">init</a>()) {</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; g_print(<span class="stringliteral">&quot;Secret plugin %s has been successfully initialized and will be your default secret plugin\n&quot;</span>,</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; sp-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">name</a>);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; remmina_secret_plugin = sp;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">break</span>;</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; sple = sple-&gt;next;</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"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; g_slist_free(secret_plugins);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;}</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"><a class="line" href="remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932"> 359</a></span>&#160;<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>* <a class="code" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <span class="keyword">const</span> gchar *name)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; gint i;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>-&gt;len; i++) {</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; plugin = (<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)g_ptr_array_index(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, i);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a> == type &amp;&amp; g_strcmp0(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>, name) == 0) {</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">return</span> plugin;</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; }</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;}</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55"> 374</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(<span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a>* setting)</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;{</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span> (setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a> == NULL) {</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">if</span> (setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> == <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>)</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;server&quot;</span>;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">if</span> (setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> == <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>)</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;password&quot;</span>;</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">if</span> (setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a> == <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>)</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;resolution&quot;</span>;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;missing_setting_name_into_plugin_RemminaProtocolSetting&quot;</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">return</span> setting-&gt;<a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a>;</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;</div><div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031"> 388</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="code" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data)</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;{</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gint i;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>-&gt;len; i++) {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; plugin = (<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)g_ptr_array_index(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, i);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a> == type) {</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; func((gchar*)plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>, plugin, data);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; }</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; }</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;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="comment">/* A copy of remmina_plugin_manager_show and remmina_plugin_manager_show_for_each</span></div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="comment"> * This is because we want to print the list of plugins, and their versions, to the standard output</span></div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="comment"> * with the remmina command line option --full-version instead of using the plugins widget</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="comment"> ** @todo Investigate to use only GListStore and than pass the elements to be shown to 2 separate</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;<span class="comment"> * functions</span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="comment"> * WARNING: GListStore is supported only from GLib 2.44 */</span></div><div class="line"><a name="l00408"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07"> 408</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager_show_for_each_stdout</a>(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin)</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; TRACE_CALL(__func__);</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; g_print(<span class="stringliteral">&quot;%-20s%-16s%-64s%-10s\n&quot;</span>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>,</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; _(<a class="code" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a>[plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a>]),</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; g_dgettext(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">domain</a>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>),</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">version</a>);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;}</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"><a class="line" href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d"> 419</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a>()</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;{</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; g_print(<span class="stringliteral">&quot;%-20s%-16s%-64s%-10s\n&quot;</span>, <span class="stringliteral">&quot;NAME&quot;</span>, <span class="stringliteral">&quot;TYPE&quot;</span>, <span class="stringliteral">&quot;DESCRIPTION&quot;</span>, <span class="stringliteral">&quot;PLUGIN AND LIBRARY VERSION&quot;</span>);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; g_ptr_array_foreach(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, (GFunc)<a class="code" href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager_show_for_each_stdout</a>, NULL);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;}</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"><a class="line" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c"> 426</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager_show_for_each</a>(<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, GtkListStore *<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>)</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;{</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; GtkTreeIter <a class="code" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a>;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; gtk_list_store_set(store, &amp;iter, 0, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a>, 1, _(<a class="code" href="remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10">remmina_plugin_type_name</a>[plugin-&gt;<a class="code" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a>]), 2,</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; g_dgettext(plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">domain</a>, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a>), 3, plugin-&gt;<a class="code" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">version</a>, -1);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276"> 437</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(GtkWindow *parent)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; GtkWidget *<a class="code" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a>;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; GtkWidget *scrolledwindow;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; GtkWidget *tree;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; GtkCellRenderer *renderer;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; GtkTreeViewColumn *column;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; GtkListStore *<a class="code" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; dialog = gtk_dialog_new_with_buttons(_(<span class="stringliteral">&quot;Plugins&quot;</span>), parent, GTK_DIALOG_MODAL, _(<span class="stringliteral">&quot;_OK&quot;</span>), GTK_RESPONSE_ACCEPT, NULL);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(gtk_widget_destroy), dialog);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; gtk_window_set_default_size(GTK_WINDOW(dialog), 500, 350);</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; scrolledwindow = gtk_scrolled_window_new(NULL, NULL);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; gtk_widget_show(scrolledwindow);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))), scrolledwindow, TRUE, TRUE, 0);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; tree = gtk_tree_view_new();</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; gtk_container_add(GTK_CONTAINER(scrolledwindow), tree);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gtk_widget_show(tree);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; store = gtk_list_store_new(4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; g_ptr_array_foreach(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, (GFunc)<a class="code" href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager_show_for_each</a>, store);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gtk_tree_view_set_model(GTK_TREE_VIEW(tree), GTK_TREE_MODEL(store));</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Name&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, 0, NULL);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; gtk_tree_view_column_set_sort_column_id(column, 0);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Type&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1, NULL);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; gtk_tree_view_column_set_sort_column_id(column, 1);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Description&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, 2, NULL);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; gtk_tree_view_column_set_sort_column_id(column, 2);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; column = gtk_tree_view_column_new_with_attributes(_(<span class="stringliteral">&quot;Version&quot;</span>), renderer, <span class="stringliteral">&quot;text&quot;</span>, 3, NULL);</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; gtk_tree_view_column_set_resizable(column, TRUE);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; gtk_tree_view_column_set_sort_column_id(column, 3);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;}</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"><a class="line" href="remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076"> 491</a></span>&#160;<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a>* <a class="code" href="remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a>(<span class="keyword">const</span> gchar *file)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; gint i;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>-&gt;len; i++) {</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; plugin = (<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a>*)g_ptr_array_index(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, i);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">type</a> != <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a>)</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4">import_test_func</a>(file)) {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordflow">return</span> plugin;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; }</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; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;}</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07"> 510</a></span>&#160;<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a>* <a class="code" href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;{</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *plugin;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gint i;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>-&gt;len; i++) {</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; plugin = (<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a>*)g_ptr_array_index(<a class="code" href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a>, i);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">type</a> != <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a>)</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03">export_test_func</a>(remminafile)) {</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">return</span> plugin;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; }</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; }</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">return</span> NULL;</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__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4"> 527</a></span>&#160;<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a>* <a class="code" href="remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a>(<span class="keywordtype">void</span>)</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; <span class="keywordflow">return</span> <a class="code" href="remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e">remmina_secret_plugin</a>;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;}</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080"> 533</a></span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> ptype, <span class="keyword">const</span> gchar* name, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> ftype)</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;{</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a>* plugin;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a>*)<a class="code" href="remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(ptype, name);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keywordflow">if</span> (plugin == NULL) {</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; }</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">for</span> (feature = plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>; feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>; feature++) {</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> == ftype)</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; }</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;}</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b"> 552</a></span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *pp, <span class="keyword">const</span> <span class="keywordtype">char</span> *setting)</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;{</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; GHashTable *pht;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a> == NULL)</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">if</span> (!(pht = g_hash_table_lookup(<a class="code" href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a>, pp-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>)))</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">if</span> (!g_hash_table_lookup(pht, setting))</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;}</div><div class="ttc" id="remmina__protocol__widget_8c_html_a25bcb2ae99449624fed6f770218e3d25"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01153">remmina_protocol_widget.c:1153</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a843c2455a10c9382aee454515f9e7f8b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01695">remmina_protocol_widget.c:1695</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</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#l00067">remmina_plugin_manager.c:67</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_af60b8edfa50563ae4c7593efc3deed55"><div class="ttname"><a href="remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a></div><div class="ttdeci">const gchar * remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00374">remmina_plugin_manager.c:374</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a95088334da86faf9520383629fff48af"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a></div><div class="ttdeci">void remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01178">remmina_protocol_widget.c:1178</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_aef243c58b9e8c778232d5acb32c7729b"><div class="ttname"><a href="remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a></div><div class="ttdeci">gboolean remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00552">remmina_plugin_manager.c:552</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a37cd589f00c94cb28eabb1bce4646d0b"><div class="ttname"><a href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a></div><div class="ttdeci">gint remmina_pref_get_scale_quality(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00974">remmina_pref.c:974</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a8ef0523afadadc9984d53fb02ecc01ad"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a></div><div class="ttdeci">void remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01701">remmina_protocol_widget.c:1701</a></div></div>
+<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#l00078">remmina_plugin_manager.c:78</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#l00816">remmina_protocol_widget.c:816</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#l01736">remmina_protocol_widget.c:1736</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#l01117">remmina_protocol_widget.c:1117</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab4c6435ef92e34a94270069ce1861907"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01102">remmina_protocol_widget.c:1102</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6982152fd0492586819ce1760a853e99"><div class="ttname"><a href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a></div><div class="ttdeci">gint remmina_pref_get_sshtunnel_port(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00996">remmina_pref.c:996</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aebc7c7d34c470081a52aa35d998ce868"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01419">remmina_protocol_widget.c:1419</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="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab863cc1442a992adfa323bc77ab88504"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a></div><div class="ttdeci">void remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01592">remmina_protocol_widget.c:1592</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_ac90d2ffe3909722ca3daedac28da76e5"><div class="ttname"><a href="remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5">compare_secret_plugin_init_order</a></div><div class="ttdeci">static gint compare_secret_plugin_init_order(gconstpointer a, gconstpointer b)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00281">remmina_plugin_manager.c:281</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9ed3110b7b030bccd0ff9ed70e86da2d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01550">remmina_protocol_widget.c:1550</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aab2f304822ccfd4979854ef1afd81771"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a></div><div class="ttdeci">gboolean remmina_protocol_widget_has_error(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01166">remmina_protocol_widget.c:1166</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_ac7f294cb3a5e989e95f619780ede87d3"><div class="ttname"><a href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">_RemminaPlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00054">plugin.h:54</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac">REMMINA_PLUGIN_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00047">plugin.h:47</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a13e14fa81f7ca52942415a7caf5b932c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a></div><div class="ttdeci">void remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00674">remmina_protocol_widget.c:674</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00912">remmina_protocol_widget.c:912</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a68d4ed61b9d039dd06ba4252a8971c18"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a></div><div class="ttdeci">G_BEGIN_DECLS typedef gboolean(* RemminaPluginFunc)(gchar *name, RemminaPlugin *plugin, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8h_source.html#l00043">remmina_plugin_manager.h:43</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a13f13a6a4280268656f258cb5aeff031"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00388">remmina_plugin_manager.c:388</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7c15fa81642c52ef382e1dbe34ffb6ac"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01544">remmina_protocol_widget.c:1544</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad3c2fe67b137c757bd21b79ad5dcc5ff"><div class="ttname"><a href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a></div><div class="ttdeci">GtkWidget * rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03898">rcw.c:3898</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_adfd705f51933350af0f8760d23e85c6e"><div class="ttname"><a href="remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e">remmina_plugin_manager_load_plugin</a></div><div class="ttdeci">static void remmina_plugin_manager_load_plugin(const gchar *name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00254">remmina_plugin_manager.c:254</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a92c2264598a43702594535cebbf4d8cd"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a></div><div class="ttdeci">void remmina_plugin_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00295">remmina_plugin_manager.c:295</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="structmpchanger__params_html_adf52357ac6f70f8bead49111deff9568"><div class="ttname"><a href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">mpchanger_params::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00061">remmina_mpchange.c:61</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a0155c6684591e0dd843c7145792fef09"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">_RemminaSecretPlugin::init_order</a></div><div class="ttdeci">int init_order</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_ad514c2523ff0c919ddf535e3dbad9f3a"><div class="ttname"><a href="remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a">remmina_file_get_secret</a></div><div class="ttdeci">gchar * remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00484">remmina_file.c:484</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a12e52ee4ab89912280605e36ee069267"><div class="ttname"><a href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a></div><div class="ttdeci">gint remmina_pref_get_ssh_loglevel(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00984">remmina_pref.c:984</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_afa1a3a21c504b386cecfb42d1c9e6bff"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">_RemminaProtocolPlugin::features</a></div><div class="ttdeci">const RemminaProtocolFeature * features</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__plugin__manager_8c_html_afce14b101da527ada9b44a4503e91e07"><div class="ttname"><a href="remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a></div><div class="ttdeci">RemminaFilePlugin * remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00510">remmina_plugin_manager.c:510</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a024d3e6d752dd29828b31c60c8c7c201"><div class="ttname"><a href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">_RemminaPlugin::domain</a></div><div class="ttdeci">const gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00057">plugin.h:57</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#l00491">remmina_plugin_manager.c:491</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9473da27fd10eb46ef8360f9ad4be86d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01556">remmina_protocol_widget.c:1556</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ae609b351fff17c235251b0ba7c480da5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01129">remmina_protocol_widget.c:1129</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5ec62969da54155e24edcb1d998f93f7"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01141">remmina_protocol_widget.c:1141</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa88afa1e3f04974974a8be324b0a930e"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a></div><div class="ttdeci">void remmina_protocol_widget_update_align(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00394">remmina_protocol_widget.c:394</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa674c14f3a46dd5eb6b53d6f8ce6bd31"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01481">remmina_protocol_widget.c:1481</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a4fbb2aff07d1fef416352d8b80d79e02"><div class="ttname"><a href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a></div><div class="ttdeci">void remmina_pref_set_value(const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01026">remmina_pref.c:1026</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a4ac66b7ebefb9bd8167737eb1af83cde"><div class="ttname"><a href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">_RemminaPlugin::description</a></div><div class="ttdeci">const gchar * description</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00056">plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_aecdad5d7ff5bdfbf0ce80b4b73f65099"><div class="ttname"><a href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">_RemminaPlugin::version</a></div><div class="ttdeci">const gchar * version</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00058">plugin.h:58</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a15368afcbeb770f8cf25941bd49e7b54"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a></div><div class="ttdeci">void remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01089">remmina_protocol_widget.c:1089</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a41b62f211a8a8e960bc80aa1ba6b0380"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a></div><div class="ttdeci">void remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01123">remmina_protocol_widget.c:1123</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a634fadd9871f76bc60c3da0aa95e719c"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c">remmina_plugin_manager_show_for_each</a></div><div class="ttdeci">static gboolean remmina_plugin_manager_show_for_each(RemminaPlugin *plugin, GtkListStore *store)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00426">remmina_plugin_manager.c:426</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a98b783e4c5c1dae695fe554f52f94a23"><div class="ttname"><a href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a></div><div class="ttdeci">gboolean remmina_pref_get_ssh_parseconfig(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00990">remmina_pref.c:990</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a278e13b53a4fdb65498e00e908edb98d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01646">remmina_protocol_widget.c:1646</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#l00437">remmina_plugin_manager.c:437</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__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_aafae42901b54bcb08f0cb24451836b03"><div class="ttname"><a href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03">_RemminaFilePlugin::export_test_func</a></div><div class="ttdeci">gboolean(* export_test_func)(RemminaFile *file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00103">plugin.h:103</a></div></div>
+<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#l00343">remmina_protocol_widget.c:343</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#l00172">remmina_plugin_manager.c:172</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#l00069">remmina_plugin_manager.c:69</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#l00424">remmina_protocol_widget.c:424</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#l00057">types.h:57</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a3cb4141ca61b0b9a5584239386dbbe46"><div class="ttname"><a href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">mpchanger_params::iter</a></div><div class="ttdeci">GtkTreeIter iter</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00066">remmina_mpchange.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a197b28d8b71ccb0c91ce8bf27690968a"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">_RemminaSecretPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00131">plugin.h:131</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_acf75fd4bac28a3d53da064b2905f23c1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01510">remmina_protocol_widget.c:1510</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a1668951fd7067f2c405e001836855080"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00533">remmina_plugin_manager.c:533</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab9632c73b32531b7bea976e10204670b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01574">remmina_protocol_widget.c:1574</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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2551dd6f53480609596d2695040fba5d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a></div><div class="ttdeci">void remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00409">remmina_protocol_widget.c:409</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a1ef27b953decb0c707ec9a18da47a38f"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a></div><div class="ttdeci">gboolean remmina_gtksocket_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00151">remmina_plugin_manager.c:151</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7ed85f4ea19e0660dbf46f4f3dc4b895"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01674">remmina_protocol_widget.c:1674</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aae09a7e2c978cc36e85d0f295518978d"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">_RemminaProtocolPlugin::basic_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * basic_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00070">plugin.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_ac00efb2a471517b35fbd386c29ee18f4"><div class="ttname"><a href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4">_RemminaFilePlugin::import_test_func</a></div><div class="ttdeci">gboolean(* import_test_func)(const gchar *from_file)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00101">plugin.h:101</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a262d75d6b535bd8c623e607805db4084"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01489">remmina_protocol_widget.c:1489</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_aa65bc30beb59d607ba430d966e7e27f5"><div class="ttname"><a href="remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5">remmina_file_get_datadir</a></div><div class="ttdeci">gchar * remmina_file_get_datadir(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00054">remmina_file_manager.c:54</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a12eddf3428a53201ee0a2ec422d2fa4a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a></div><div class="ttdeci">gboolean remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00942">remmina_protocol_widget.c:942</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a70aecb9af2ea35527e8d058d1d87a0d3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01565">remmina_protocol_widget.c:1565</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></div><div class="ttdeci">RemminaProtocolFeatureType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00043">types.h:43</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aadd106cec729a80405c6097e4c662044"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a></div><div class="ttdeci">void remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01135">remmina_protocol_widget.c:1135</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a6274d44b592a54162ff583135e55ffc9"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting::type</a></div><div class="ttdeci">RemminaProtocolSettingType type</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00095">types.h:95</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac3e5a7f14aef4adb2e57d35e9c180b3b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a></div><div class="ttdeci">void remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00565">remmina_protocol_widget.c:565</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</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#l00090">remmina_file.c:90</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_aaac087c000b0863a296f2739f6344af8"><div class="ttname"><a href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a></div><div class="ttdeci">guint remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00931">remmina_pref.c:931</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="remmina__protocol__widget_8c_html_a2830f756dfc3d735b57b0c5753c429e3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a></div><div class="ttdeci">gboolean remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01198">remmina_protocol_widget.c:1198</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a08d312825fc0de9f9286279d99f763a1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01583">remmina_protocol_widget.c:1583</a></div></div>
+<div class="ttc" id="plugin_8h_html_a59fee7dbde41c8d29059ca64622d1948"><div class="ttname"><a href="plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948">RemminaPluginEntryFunc</a></div><div class="ttdeci">gboolean(* RemminaPluginEntryFunc)(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00229">plugin.h:229</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html_a3ff85e56bf902817630aafea67e3e494"><div class="ttname"><a href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">_RemminaFilePlugin::type</a></div><div class="ttdeci">RemminaPluginType type</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00095">plugin.h:95</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a172fa9cf2ce196c9846a3e47ea9036b4"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01046">remmina_protocol_widget.c:1046</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#l00359">remmina_plugin_manager.c:359</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a05b5edfc3d3d0dcff1745d1d35aaca5c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a></div><div class="ttdeci">void remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00377">remmina_protocol_widget.c:377</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a65313d34bb7e940f388e45818fd5889e"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e">remmina_plugin_table</a></div><div class="ttdeci">static GPtrArray * remmina_plugin_table</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00061">remmina_plugin_manager.c:61</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a3f0a338901d8e6195eb872b0f2098e73"><div class="ttname"><a href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">mpchanger_params::store</a></div><div class="ttdeci">GtkListStore * store</div><div class="ttdef"><b>Definition:</b> <a href="remmina__mpchange_8c_source.html#l00060">remmina_mpchange.c:60</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad8df6a87e19b7751b26820ef4a668de9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01109">remmina_protocol_widget.c:1109</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="struct___remmina_secret_plugin_html_ad433f24a09d962e66a336eb461cecd56"><div class="ttname"><a href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56">_RemminaSecretPlugin::init</a></div><div class="ttdeci">gboolean(* init)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00137">plugin.h:137</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a6e04143450eeb71e3d0b2c14983860a4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00063">plugin.h:63</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a3fc52d61f77327534286f57e563e0923"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_password(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01538">remmina_protocol_widget.c:1538</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_ae78fa0b2eab8c987d810c6997b136d2e"><div class="ttname"><a href="remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e">remmina_plugin_manager_compare_func</a></div><div class="ttdeci">static gint remmina_plugin_manager_compare_func(RemminaPlugin **a, RemminaPlugin **b)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00072">remmina_plugin_manager.c:72</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aceb00d9dff794500ccb04a1373eb32db"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin::advanced_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * advanced_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00071">plugin.h:71</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624a"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a></div><div class="ttdeci">RemminaPluginType</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00044">plugin.h:44</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a150a4a8a8dcd21a51008250bb38bce49"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49">encrypted_settings_cache</a></div><div class="ttdeci">static GHashTable * encrypted_settings_cache</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00064">remmina_plugin_manager.c:64</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a0b19dbe685e4465e7f06706270e120fa"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a></div><div class="ttdeci">void remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01159">remmina_protocol_widget.c:1159</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_ac7848510c1fe1990c992e28cd31af9d8"><div class="ttname"><a href="remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8">remmina_log_printf</a></div><div class="ttdeci">void remmina_log_printf(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00215">remmina_log.c:215</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a3fdc160c477f9f5e1d881c0c054d4b07"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07">remmina_plugin_manager_show_for_each_stdout</a></div><div class="ttdeci">static gboolean remmina_plugin_manager_show_for_each_stdout(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00408">remmina_plugin_manager.c:408</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9bcd0d356c7215dc0f791c9744360705"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a></div><div class="ttdeci">void remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01790">remmina_protocol_widget.c:1790</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aca8f826a273194e22f4467421af9b3aa"><div class="ttname"><a href="remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa">remmina_log_print</a></div><div class="ttdeci">void remmina_log_print(const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00181">remmina_log.c:181</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a503e53fe49430a5ed310c342c946c014"><div class="ttname"><a href="remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014">remmina_file_unsave_passwords</a></div><div class="ttdeci">void remmina_file_unsave_passwords(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00736">remmina_file.c:736</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a4a3a9ba7422fc302b0b412ac771c9953"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a></div><div class="ttdeci">void remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01729">remmina_protocol_widget.c:1729</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_adc8b77823386e00e610527d6b0b61149"><div class="ttname"><a href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a></div><div class="ttdeci">void remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00333">remmina_public.c:333</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c">REMMINA_PLUGIN_TYPE_SECRET</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00050">plugin.h:50</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_ad4cb2d85f9cf76089a082122f2891fb8"><div class="ttname"><a href="remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8">remmina_plugin_manager_register_plugin</a></div><div class="ttdeci">static gboolean remmina_plugin_manager_register_plugin(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00135">remmina_plugin_manager.c:135</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_afe0881986b2a64bfb5460981dadcf28d"><div class="ttname"><a href="remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a></div><div class="ttdeci">void remmina_plugin_manager_show_stdout()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00419">remmina_plugin_manager.c:419</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2506e80d482c34532d0e534856452069"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a></div><div class="ttdeci">RemminaFile * remmina_protocol_widget_get_file(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01204">remmina_protocol_widget.c:1204</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a72f0dbafb41acc4a5834f5c0719e6046"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046">init_settings_cache</a></div><div class="ttdeci">static void init_settings_cache(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00083">remmina_plugin_manager.c:83</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a66263e6e7da79357ceb80d32b191d9f2"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a></div><div class="ttdeci">void remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp))</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01713">remmina_protocol_widget.c:1713</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html_a3f09b29bb3b0c044780d56a8b1a51582"><div class="ttname"><a href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">_RemminaPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00055">plugin.h:55</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a96159bd8e9d70c74967e666e2f188df0"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_username(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01532">remmina_protocol_widget.c:1532</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ac4cd339607204c5f478727e2a0c04857"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">_RemminaProtocolSetting::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00096">types.h:96</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__plugin__manager_8c.html">remmina_plugin_manager.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin__manager_8h.html b/docs/remmina__plugin__manager_8h.html
new file mode 100644
index 000000000..019b421bc
--- /dev/null
+++ b/docs/remmina__plugin__manager_8h.html
@@ -0,0 +1,501 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_manager.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin__manager_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin_manager.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__plugin__manager_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a92c2264598a43702594535cebbf4d8cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a> (void)</td></tr>
+<tr class="separator:a92c2264598a43702594535cebbf4d8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3872c8656a8a3d5147bcc603471c1932"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, const gchar *name)</td></tr>
+<tr class="separator:a3872c8656a8a3d5147bcc603471c1932"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1668951fd7067f2c405e001836855080"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> ptype, const gchar *name, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> ftype)</td></tr>
+<tr class="separator:a1668951fd7067f2c405e001836855080"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13f13a6a4280268656f258cb5aeff031"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data)</td></tr>
+<tr class="separator:a13f13a6a4280268656f258cb5aeff031"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedec4e9cf18d99a559aa51065c2bc276"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:aedec4e9cf18d99a559aa51065c2bc276"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b8798c3d17b453bddad4b948e9b0d9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a">remmina_plugin_manager_for_each_plugin_stdout</a> (<a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data)</td></tr>
+<tr class="separator:a0b8798c3d17b453bddad4b948e9b0d9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe0881986b2a64bfb5460981dadcf28d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a> ()</td></tr>
+<tr class="separator:afe0881986b2a64bfb5460981dadcf28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a859348bddc9069f06195915692b65076"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a> (const gchar *file)</td></tr>
+<tr class="separator:a859348bddc9069f06195915692b65076"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afce14b101da527ada9b44a4503e91e07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:afce14b101da527ada9b44a4503e91e07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad380a98f6624aa8c830015c8b428b7b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a> (void)</td></tr>
+<tr class="separator:ad380a98f6624aa8c830015c8b428b7b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af60b8edfa50563ae4c7593efc3deed55"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a> (const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *setting)</td></tr>
+<tr class="separator:af60b8edfa50563ae4c7593efc3deed55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef243c58b9e8c778232d5acb32c7729b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a> (<a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *pp, const char *setting)</td></tr>
+<tr class="separator:aef243c58b9e8c778232d5acb32c7729b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ef27b953decb0c707ec9a18da47a38f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a> ()</td></tr>
+<tr class="separator:a1ef27b953decb0c707ec9a18da47a38f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a68d4ed61b9d039dd06ba4252a8971c18"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> )(gchar *name, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, gpointer data)</td></tr>
+<tr class="separator:a68d4ed61b9d039dd06ba4252a8971c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3996819fdb2c833f3c64c2ad399e5f10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a></td></tr>
+<tr class="separator:a3996819fdb2c833f3c64c2ad399e5f10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a1ef27b953decb0c707ec9a18da47a38f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ef27b953decb0c707ec9a18da47a38f">&#9670;&nbsp;</a></span>remmina_gtksocket_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_gtksocket_available </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a13f13a6a4280268656f258cb5aeff031"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13f13a6a4280268656f258cb5aeff031">&#9670;&nbsp;</a></span>remmina_plugin_manager_for_each_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_for_each_plugin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00388">388</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b8798c3d17b453bddad4b948e9b0d9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b8798c3d17b453bddad4b948e9b0d9a">&#9670;&nbsp;</a></span>remmina_plugin_manager_for_each_plugin_stdout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_for_each_plugin_stdout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af60b8edfa50563ae4c7593efc3deed55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af60b8edfa50563ae4c7593efc3deed55">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_canonical_setting_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_plugin_manager_get_canonical_setting_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td>
+ <td class="paramname"><em>setting</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00374">374</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afce14b101da527ada9b44a4503e91e07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afce14b101da527ada9b44a4503e91e07">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_export_file_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>* remmina_plugin_manager_get_export_file_handler </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00510">510</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a859348bddc9069f06195915692b65076"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a859348bddc9069f06195915692b65076">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_import_file_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e">RemminaFilePlugin</a>* remmina_plugin_manager_get_import_file_handler </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>file</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00491">491</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a3872c8656a8a3d5147bcc603471c1932"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3872c8656a8a3d5147bcc603471c1932">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a>* remmina_plugin_manager_get_plugin </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00359">359</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="ad380a98f6624aa8c830015c8b428b7b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad380a98f6624aa8c830015c8b428b7b4">&#9670;&nbsp;</a></span>remmina_plugin_manager_get_secret_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aec59d37943e501da2d7107c933865782">RemminaSecretPlugin</a>* remmina_plugin_manager_get_secret_plugin </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00527">527</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a92c2264598a43702594535cebbf4d8cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92c2264598a43702594535cebbf4d8cd">&#9670;&nbsp;</a></span>remmina_plugin_manager_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00295">295</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="aef243c58b9e8c778232d5acb32c7729b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef243c58b9e8c778232d5acb32c7729b">&#9670;&nbsp;</a></span>remmina_plugin_manager_is_encrypted_setting()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_manager_is_encrypted_setting </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *&#160;</td>
+ <td class="paramname"><em>pp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>setting</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00552">552</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a1668951fd7067f2c405e001836855080"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1668951fd7067f2c405e001836855080">&#9670;&nbsp;</a></span>remmina_plugin_manager_query_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_manager_query_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td>
+ <td class="paramname"><em>ptype</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>ftype</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00533">533</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="aedec4e9cf18d99a559aa51065c2bc276"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedec4e9cf18d99a559aa51065c2bc276">&#9670;&nbsp;</a></span>remmina_plugin_manager_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_show </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00437">437</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="afe0881986b2a64bfb5460981dadcf28d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe0881986b2a64bfb5460981dadcf28d">&#9670;&nbsp;</a></span>remmina_plugin_manager_show_stdout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_manager_show_stdout </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00419">419</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3996819fdb2c833f3c64c2ad399e5f10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3996819fdb2c833f3c64c2ad399e5f10">&#9670;&nbsp;</a></span>remmina_plugin_manager_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> remmina_plugin_manager_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__plugin__manager_8c_source.html">remmina_plugin_manager.c</a>.</p>
+
+</div>
+</div>
+<a id="a68d4ed61b9d039dd06ba4252a8971c18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68d4ed61b9d039dd06ba4252a8971c18">&#9670;&nbsp;</a></span>RemminaPluginFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS typedef gboolean(* RemminaPluginFunc) (gchar *name, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, gpointer data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__plugin__manager_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__plugin__manager_8h_source.html">remmina_plugin_manager.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__plugin__manager_8h.js b/docs/remmina__plugin__manager_8h.js
new file mode 100644
index 000000000..2cd5a6eb5
--- /dev/null
+++ b/docs/remmina__plugin__manager_8h.js
@@ -0,0 +1,18 @@
+var remmina__plugin__manager_8h =
+[
+ [ "remmina_gtksocket_available", "remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f", null ],
+ [ "remmina_plugin_manager_for_each_plugin", "remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031", null ],
+ [ "remmina_plugin_manager_for_each_plugin_stdout", "remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a", null ],
+ [ "remmina_plugin_manager_get_canonical_setting_name", "remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55", null ],
+ [ "remmina_plugin_manager_get_export_file_handler", "remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07", null ],
+ [ "remmina_plugin_manager_get_import_file_handler", "remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076", null ],
+ [ "remmina_plugin_manager_get_plugin", "remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932", null ],
+ [ "remmina_plugin_manager_get_secret_plugin", "remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4", null ],
+ [ "remmina_plugin_manager_init", "remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd", null ],
+ [ "remmina_plugin_manager_is_encrypted_setting", "remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b", null ],
+ [ "remmina_plugin_manager_query_feature_by_type", "remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080", null ],
+ [ "remmina_plugin_manager_show", "remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276", null ],
+ [ "remmina_plugin_manager_show_stdout", "remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d", null ],
+ [ "remmina_plugin_manager_service", "remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10", null ],
+ [ "RemminaPluginFunc", "remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__plugin__manager_8h_source.html b/docs/remmina__plugin__manager_8h_source.html
new file mode 100644
index 000000000..f32fc97f4
--- /dev/null
+++ b/docs/remmina__plugin__manager_8h_source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_manager.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__plugin__manager_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_plugin_manager.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__plugin__manager_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="plugin_8h.html">remmina/plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18"> 43</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a>)(gchar *name, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, gpointer data);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *<a class="code" href="remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932">remmina_plugin_manager_get_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <span class="keyword">const</span> gchar *name);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> ptype, <span class="keyword">const</span> gchar *name, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> ftype);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="code" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276">remmina_plugin_manager_show</a>(GtkWindow *parent);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a">remmina_plugin_manager_for_each_plugin_stdout</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> type, <a class="code" href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a> func, gpointer data);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a>();</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *<a class="code" href="remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076">remmina_plugin_manager_get_import_file_handler</a>(<span class="keyword">const</span> gchar *file);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<a class="code" href="struct___remmina_file_plugin.html">RemminaFilePlugin</a> *<a class="code" href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *<a class="code" href="remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4">remmina_plugin_manager_get_secret_plugin</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a>(<span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *setting);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a>(<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *pp, <span class="keyword">const</span> <span class="keywordtype">char</span> *setting);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;gboolean <a class="code" href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a>();</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="keyword">extern</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> <a class="code" href="remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a>;</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_afe0881986b2a64bfb5460981dadcf28d"><div class="ttname"><a href="remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d">remmina_plugin_manager_show_stdout</a></div><div class="ttdeci">void remmina_plugin_manager_show_stdout()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00419">remmina_plugin_manager.c:419</a></div></div>
+<div class="ttc" id="struct___remmina_file_plugin_html"><div class="ttname"><a href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00094">plugin.h:94</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a68d4ed61b9d039dd06ba4252a8971c18"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18">RemminaPluginFunc</a></div><div class="ttdeci">G_BEGIN_DECLS typedef gboolean(* RemminaPluginFunc)(gchar *name, RemminaPlugin *plugin, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8h_source.html#l00043">remmina_plugin_manager.h:43</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a3872c8656a8a3d5147bcc603471c1932"><div class="ttname"><a href="remmina__plugin__manager_8h.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#l00359">remmina_plugin_manager.c:359</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a13f13a6a4280268656f258cb5aeff031"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00388">remmina_plugin_manager.c:388</a></div></div>
+<div class="ttc" id="plugin_8h_html"><div class="ttname"><a href="plugin_8h.html">plugin.h</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a3996819fdb2c833f3c64c2ad399e5f10"><div class="ttname"><a href="remmina__plugin__manager_8h.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#l00172">remmina_plugin_manager.c:172</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_afce14b101da527ada9b44a4503e91e07"><div class="ttname"><a href="remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07">remmina_plugin_manager_get_export_file_handler</a></div><div class="ttdeci">RemminaFilePlugin * remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00510">remmina_plugin_manager.c:510</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a859348bddc9069f06195915692b65076"><div class="ttname"><a href="remmina__plugin__manager_8h.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#l00491">remmina_plugin_manager.c:491</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a0b8798c3d17b453bddad4b948e9b0d9a"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a">remmina_plugin_manager_for_each_plugin_stdout</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin_stdout(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_ad380a98f6624aa8c830015c8b428b7b4"><div class="ttname"><a href="remmina__plugin__manager_8h.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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a1ef27b953decb0c707ec9a18da47a38f"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f">remmina_gtksocket_available</a></div><div class="ttdeci">gboolean remmina_gtksocket_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00151">remmina_plugin_manager.c:151</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_af60b8edfa50563ae4c7593efc3deed55"><div class="ttname"><a href="remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55">remmina_plugin_manager_get_canonical_setting_name</a></div><div class="ttdeci">const gchar * remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00374">remmina_plugin_manager.c:374</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_aef243c58b9e8c778232d5acb32c7729b"><div class="ttname"><a href="remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b">remmina_plugin_manager_is_encrypted_setting</a></div><div class="ttdeci">gboolean remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00552">remmina_plugin_manager.c:552</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a1668951fd7067f2c405e001836855080"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080">remmina_plugin_manager_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00533">remmina_plugin_manager.c:533</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_aedec4e9cf18d99a559aa51065c2bc276"><div class="ttname"><a href="remmina__plugin__manager_8h.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#l00437">remmina_plugin_manager.c:437</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></div><div class="ttdeci">RemminaProtocolFeatureType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00043">types.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8h_html_a92c2264598a43702594535cebbf4d8cd"><div class="ttname"><a href="remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd">remmina_plugin_manager_init</a></div><div class="ttdeci">void remmina_plugin_manager_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00295">remmina_plugin_manager.c:295</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624a"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a></div><div class="ttdeci">RemminaPluginType</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00044">plugin.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__plugin__manager_8h.html">remmina_plugin_manager.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref_8c.html b/docs/remmina__pref_8c.html
new file mode 100644
index 000000000..20f1a6287
--- /dev/null
+++ b/docs/remmina__pref_8c.html
@@ -0,0 +1,832 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_pref.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__pref_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afc609e167e078f1991320f79e9f9157c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref_gen_secret</a> (void)</td></tr>
+<tr class="separator:afc609e167e078f1991320f79e9f9157c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0296a8f5b359547a0aa4cbffb914edd3"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref_get_keyval_from_str</a> (const gchar *str)</td></tr>
+<tr class="separator:a0296a8f5b359547a0aa4cbffb914edd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed7f3859d4306419932df15131987355"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref_init_keymap</a> (void)</td></tr>
+<tr class="separator:aed7f3859d4306419932df15131987355"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7829d615a6c5b8a6f6c759043fb2ac81"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a> (const char *src_path, const char *dst_path)</td></tr>
+<tr class="separator:a7829d615a6c5b8a6f6c759043fb2ac81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6424eb32c9549eb3e26f167dc58c218"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a> (GKeyFile *gkeyfile, <a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a> *color_pref)</td></tr>
+<tr class="separator:ad6424eb32c9549eb3e26f167dc58c218"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a400f7319fd3996a13399ef72bcf0a2fd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a> (void)</td></tr>
+<tr class="separator:a400f7319fd3996a13399ef72bcf0a2fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dd25f5b3a055b936a5fa327bc71f19c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a> (void)</td></tr>
+<tr class="separator:a0dd25f5b3a055b936a5fa327bc71f19c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae17aaf37449083a4322b6748c8f3a39f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a> (void)</td></tr>
+<tr class="separator:ae17aaf37449083a4322b6748c8f3a39f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9e75c6bf39aa93a87d421fc3d742d60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a> (const gchar *protocol, const gchar *server)</td></tr>
+<tr class="separator:ab9e75c6bf39aa93a87d421fc3d742d60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0208d5dc8197423da67e5967aafb7a05"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a> (const gchar *protocol)</td></tr>
+<tr class="separator:a0208d5dc8197423da67e5967aafb7a05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3b15f811daf0aaf8bacd67f1b47aa14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a> (void)</td></tr>
+<tr class="separator:ac3b15f811daf0aaf8bacd67f1b47aa14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaac087c000b0863a296f2739f6344af8"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a> (const gchar *keymap, guint keyval)</td></tr>
+<tr class="separator:aaac087c000b0863a296f2739f6344af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a745bbef1d48a7462f8db997821742395"><td class="memItemLeft" align="right" valign="top">gchar **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a> (void)</td></tr>
+<tr class="separator:a745bbef1d48a7462f8db997821742395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37cd589f00c94cb28eabb1bce4646d0b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a> (void)</td></tr>
+<tr class="separator:a37cd589f00c94cb28eabb1bce4646d0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e52ee4ab89912280605e36ee069267"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a> (void)</td></tr>
+<tr class="separator:a12e52ee4ab89912280605e36ee069267"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98b783e4c5c1dae695fe554f52f94a23"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a> (void)</td></tr>
+<tr class="separator:a98b783e4c5c1dae695fe554f52f94a23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6982152fd0492586819ce1760a853e99"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a> (void)</td></tr>
+<tr class="separator:a6982152fd0492586819ce1760a853e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ed143a13f2a3393e44fd5b2c4fee4be"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a> (void)</td></tr>
+<tr class="separator:a5ed143a13f2a3393e44fd5b2c4fee4be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7040b17df053835bfb21eb24ae10414"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a> (void)</td></tr>
+<tr class="separator:ad7040b17df053835bfb21eb24ae10414"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a781431450dfcf639c8dd96701be3795b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a> (void)</td></tr>
+<tr class="separator:a781431450dfcf639c8dd96701be3795b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a695b64e75d6f49de220dc777e57714"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a> (void)</td></tr>
+<tr class="separator:a1a695b64e75d6f49de220dc777e57714"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fbb2aff07d1fef416352d8b80d79e02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a> (const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a4fbb2aff07d1fef416352d8b80d79e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a> (const gchar *key)</td></tr>
+<tr class="separator:a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a8d02227eb703bccc3f9296a5d89d6f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a> (const gchar *key)</td></tr>
+<tr class="separator:a9a8d02227eb703bccc3f9296a5d89d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a316f4290c083d28bd3492ee979278290"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a> = &quot;640x480,800x600,1024x768,1152x864,1280x960,1400x1050&quot;</td></tr>
+<tr class="separator:a316f4290c083d28bd3492ee979278290"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a858117f890841ad21d3a153f5b81dbdd"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">default_keystrokes</a> = &quot;Send hello world§hello world\\n&quot;</td></tr>
+<tr class="separator:a858117f890841ad21d3a153f5b81dbdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10b667eb7a100d6ac8d9544697f22743"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_keymap_file</a></td></tr>
+<tr class="separator:a10b667eb7a100d6ac8d9544697f22743"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac194a2cb922d4a047b825dc69713cc46"><td class="memItemLeft" align="right" valign="top">static GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a> = NULL</td></tr>
+<tr class="separator:ac194a2cb922d4a047b825dc69713cc46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23aaa111a41eb1c80df5e85af25e7e44"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">default_keymap_data</a></td></tr>
+<tr class="separator:a23aaa111a41eb1c80df5e85af25e7e44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab9e75c6bf39aa93a87d421fc3d742d60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9e75c6bf39aa93a87d421fc3d742d60">&#9670;&nbsp;</a></span>remmina_pref_add_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_add_recent </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00842">842</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3b15f811daf0aaf8bacd67f1b47aa14"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3b15f811daf0aaf8bacd67f1b47aa14">&#9670;&nbsp;</a></span>remmina_pref_clear_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_clear_recent </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00902">902</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a7829d615a6c5b8a6f6c759043fb2ac81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7829d615a6c5b8a6f6c759043fb2ac81">&#9670;&nbsp;</a></span>remmina_pref_file_do_copy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_pref_file_do_copy </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>dst_path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000009">Todo:</a></b></dt><dd>remmina_pref_file_do_copy and remmina_file_manager_do_copy to remmina_files_copy </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00171">171</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6424eb32c9549eb3e26f167dc58c218"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6424eb32c9549eb3e26f167dc58c218">&#9670;&nbsp;</a></span>remmina_pref_file_load_colors()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_file_load_colors </td>
+ <td>(</td>
+ <td class="paramtype">GKeyFile *&#160;</td>
+ <td class="paramname"><em>gkeyfile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a> *&#160;</td>
+ <td class="paramname"><em>color_pref</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00183">183</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="afc609e167e078f1991320f79e9f9157c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc609e167e078f1991320f79e9f9157c">&#9670;&nbsp;</a></span>remmina_pref_gen_secret()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_pref_gen_secret </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00071">71</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a8d02227eb703bccc3f9296a5d89d6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a8d02227eb703bccc3f9296a5d89d6f">&#9670;&nbsp;</a></span>remmina_pref_get_boolean()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_get_boolean </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01057">1057</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a0296a8f5b359547a0aa4cbffb914edd3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0296a8f5b359547a0aa4cbffb914edd3">&#9670;&nbsp;</a></span>remmina_pref_get_keyval_from_str()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static guint remmina_pref_get_keyval_from_str </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00099">99</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a0208d5dc8197423da67e5967aafb7a05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0208d5dc8197423da67e5967aafb7a05">&#9670;&nbsp;</a></span>remmina_pref_get_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_get_recent </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00883">883</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a37cd589f00c94cb28eabb1bce4646d0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37cd589f00c94cb28eabb1bce4646d0b">&#9670;&nbsp;</a></span>remmina_pref_get_scale_quality()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_scale_quality </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00974">974</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a12e52ee4ab89912280605e36ee069267"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12e52ee4ab89912280605e36ee069267">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_loglevel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_loglevel </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00984">984</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a98b783e4c5c1dae695fe554f52f94a23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98b783e4c5c1dae695fe554f52f94a23">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_parseconfig()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_get_ssh_parseconfig </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00990">990</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a781431450dfcf639c8dd96701be3795b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a781431450dfcf639c8dd96701be3795b">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepcnt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepcnt </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01014">1014</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ed143a13f2a3393e44fd5b2c4fee4be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ed143a13f2a3393e44fd5b2c4fee4be">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepidle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepidle </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01002">1002</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ad7040b17df053835bfb21eb24ae10414"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7040b17df053835bfb21eb24ae10414">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepintvl()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepintvl </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01008">1008</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a1a695b64e75d6f49de220dc777e57714"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a695b64e75d6f49de220dc777e57714">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_usrtimeout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_usrtimeout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01020">1020</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a6982152fd0492586819ce1760a853e99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6982152fd0492586819ce1760a853e99">&#9670;&nbsp;</a></span>remmina_pref_get_sshtunnel_port()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_sshtunnel_port </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00996">996</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a6bcbf4cc3a58ed4ee9f087b4270d8fd6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">&#9670;&nbsp;</a></span>remmina_pref_get_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_get_value </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01043">1043</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a400f7319fd3996a13399ef72bcf0a2fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a400f7319fd3996a13399ef72bcf0a2fd">&#9670;&nbsp;</a></span>remmina_pref_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00221">221</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="aed7f3859d4306419932df15131987355"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed7f3859d4306419932df15131987355">&#9670;&nbsp;</a></span>remmina_pref_init_keymap()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_pref_init_keymap </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00115">115</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a0dd25f5b3a055b936a5fa327bc71f19c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dd25f5b3a055b936a5fa327bc71f19c">&#9670;&nbsp;</a></span>remmina_pref_is_rw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_is_rw </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00697">697</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="aaac087c000b0863a296f2739f6344af8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaac087c000b0863a296f2739f6344af8">&#9670;&nbsp;</a></span>remmina_pref_keymap_get_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_pref_keymap_get_keyval </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00931">931</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a745bbef1d48a7462f8db997821742395"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a745bbef1d48a7462f8db997821742395">&#9670;&nbsp;</a></span>remmina_pref_keymap_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar** remmina_pref_keymap_groups </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00951">951</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ae17aaf37449083a4322b6748c8f3a39f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae17aaf37449083a4322b6748c8f3a39f">&#9670;&nbsp;</a></span>remmina_pref_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_save </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00707">707</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fbb2aff07d1fef416352d8b80d79e02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fbb2aff07d1fef416352d8b80d79e02">&#9670;&nbsp;</a></span>remmina_pref_set_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_set_value </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01026">1026</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a23aaa111a41eb1c80df5e85af25e7e44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23aaa111a41eb1c80df5e85af25e7e44">&#9670;&nbsp;</a></span>default_keymap_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* default_keymap_data</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= <span class="stringliteral">&quot;# Please check gdk/gdkkeysyms.h for a full list of all key names or hex key values\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;[Map Meta Keys]\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;Super_L = Meta_L\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;Super_R = Meta_R\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;Meta_L = Super_L\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;Meta_R = Super_R\n&quot;</span></div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00063">63</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a858117f890841ad21d3a153f5b81dbdd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a858117f890841ad21d3a153f5b81dbdd">&#9670;&nbsp;</a></span>default_keystrokes</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* default_keystrokes = &quot;Send hello world§hello world\\n&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00057">57</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a316f4290c083d28bd3492ee979278290"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a316f4290c083d28bd3492ee979278290">&#9670;&nbsp;</a></span>default_resolutions</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* default_resolutions = &quot;640x480,800x600,1024x768,1152x864,1280x960,1400x1050&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a10b667eb7a100d6ac8d9544697f22743"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10b667eb7a100d6ac8d9544697f22743">&#9670;&nbsp;</a></span>remmina_keymap_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_keymap_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ac194a2cb922d4a047b825dc69713cc46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac194a2cb922d4a047b825dc69713cc46">&#9670;&nbsp;</a></span>remmina_keymap_table</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* remmina_keymap_table = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref_8c.html">remmina_pref.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref_8c.js b/docs/remmina__pref_8c.js
new file mode 100644
index 000000000..80022a767
--- /dev/null
+++ b/docs/remmina__pref_8c.js
@@ -0,0 +1,32 @@
+var remmina__pref_8c =
+[
+ [ "remmina_pref_add_recent", "remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60", null ],
+ [ "remmina_pref_clear_recent", "remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14", null ],
+ [ "remmina_pref_file_do_copy", "remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81", null ],
+ [ "remmina_pref_file_load_colors", "remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218", null ],
+ [ "remmina_pref_gen_secret", "remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c", null ],
+ [ "remmina_pref_get_boolean", "remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f", null ],
+ [ "remmina_pref_get_keyval_from_str", "remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3", null ],
+ [ "remmina_pref_get_recent", "remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05", null ],
+ [ "remmina_pref_get_scale_quality", "remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b", null ],
+ [ "remmina_pref_get_ssh_loglevel", "remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267", null ],
+ [ "remmina_pref_get_ssh_parseconfig", "remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23", null ],
+ [ "remmina_pref_get_ssh_tcp_keepcnt", "remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b", null ],
+ [ "remmina_pref_get_ssh_tcp_keepidle", "remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be", null ],
+ [ "remmina_pref_get_ssh_tcp_keepintvl", "remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414", null ],
+ [ "remmina_pref_get_ssh_tcp_usrtimeout", "remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714", null ],
+ [ "remmina_pref_get_sshtunnel_port", "remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99", null ],
+ [ "remmina_pref_get_value", "remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6", null ],
+ [ "remmina_pref_init", "remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd", null ],
+ [ "remmina_pref_init_keymap", "remmina__pref_8c.html#aed7f3859d4306419932df15131987355", null ],
+ [ "remmina_pref_is_rw", "remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c", null ],
+ [ "remmina_pref_keymap_get_keyval", "remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8", null ],
+ [ "remmina_pref_keymap_groups", "remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395", null ],
+ [ "remmina_pref_save", "remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f", null ],
+ [ "remmina_pref_set_value", "remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02", null ],
+ [ "default_keymap_data", "remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44", null ],
+ [ "default_keystrokes", "remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd", null ],
+ [ "default_resolutions", "remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290", null ],
+ [ "remmina_keymap_file", "remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743", null ],
+ [ "remmina_keymap_table", "remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__pref_8c_source.html b/docs/remmina__pref_8c_source.html
new file mode 100644
index 000000000..5adfeae56
--- /dev/null
+++ b/docs/remmina__pref_8c_source.html
@@ -0,0 +1,245 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_pref.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__pref_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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;sys/time.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;sys/utsname.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__sodium_8h.html">remmina_sodium.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</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="l00052"></a><span class="lineno"> 52</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="l00053"></a><span class="lineno"> 53</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="l00054"></a><span class="lineno"> 54</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="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290"> 56</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a> = <span class="stringliteral">&quot;640x480,800x600,1024x768,1152x864,1280x960,1400x1050&quot;</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd"> 57</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">default_keystrokes</a> = <span class="stringliteral">&quot;Send hello world§hello world\\n&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"><a class="line" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743"> 59</a></span>&#160;gchar *<a class="code" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_keymap_file</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46"> 60</a></span>&#160;<span class="keyword">static</span> GHashTable *<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a> = NULL;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment">/* We could customize this further if there are more requirements */</span></div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44"> 63</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *<a class="code" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">default_keymap_data</a> = <span class="stringliteral">&quot;# Please check gdk/gdkkeysyms.h for a full list of all key names or hex key values\n&quot;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="stringliteral">&quot;\n&quot;</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;[Map Meta Keys]\n&quot;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;Super_L = Meta_L\n&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="stringliteral">&quot;Super_R = Meta_R\n&quot;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="stringliteral">&quot;Meta_L = Super_L\n&quot;</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="stringliteral">&quot;Meta_R = Super_R\n&quot;</span>;</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"><a class="line" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c"> 71</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref_gen_secret</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; guchar s[32];</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; gint i;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; GTimeVal gtime;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; gchar *content;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; gsize length;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; g_get_current_time(&amp;gtime);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; srand(gtime.tv_sec);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; 32; i++) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; s[i] = (guchar)(rand() % 256);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a> = g_base64_encode(s, 32);</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"> 89</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;secret&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; g_file_set_contents(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, content, length, 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; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; g_free(content);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;}</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"><a class="line" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3"> 99</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref_get_keyval_from_str</a>(<span class="keyword">const</span> gchar *str)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; guint k;</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="keywordflow">if</span> (!str)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> 0;</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; k = gdk_keyval_from_name(str);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (!k) {</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span> (sscanf(str, <span class="stringliteral">&quot;%x&quot;</span>, &amp;k) &lt; 1)</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; k = 0;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> k;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;}</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"><a class="line" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355"> 115</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref_init_keymap</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;{</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; gchar **groups;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gchar **gptr;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; gchar **keys;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gchar **kptr;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gsize nkeys;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gchar *value;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; guint *<a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; guint *tableptr;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; guint k1, k2;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a>)</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; g_hash_table_destroy(<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a>);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a> = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);</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; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> (!g_key_file_load_from_file(gkeyfile, <a class="code" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_keymap_file</a>, G_KEY_FILE_NONE, NULL)) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (!g_key_file_load_from_data(gkeyfile, <a class="code" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">default_keymap_data</a>, strlen(<a class="code" href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">default_keymap_data</a>), G_KEY_FILE_NONE,</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; NULL)) {</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; g_print(<span class="stringliteral">&quot;Failed to initialize keymap table\n&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</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; }</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; groups = g_key_file_get_groups(gkeyfile, NULL);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gptr = groups;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">while</span> (*gptr) {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; keys = g_key_file_get_keys(gkeyfile, *gptr, &amp;nkeys, NULL);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; table = g_new0(guint, nkeys * 2 + 1);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; g_hash_table_insert(<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a>, g_strdup(*gptr), table);</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"> 150</span>&#160; kptr = keys;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; tableptr = <a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">while</span> (*kptr) {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; k1 = <a class="code" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref_get_keyval_from_str</a>(*kptr);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">if</span> (k1) {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; value = g_key_file_get_string(gkeyfile, *gptr, *kptr, NULL);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; k2 = <a class="code" href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref_get_keyval_from_str</a>(value);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; g_free(value);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; *tableptr++ = k1;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; *tableptr++ = k2;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; kptr++;</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; g_strfreev(keys);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gptr++;</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; g_strfreev(groups);</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81"> 171</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *src_path, <span class="keyword">const</span> <span class="keywordtype">char</span> *dst_path)</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;{</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; GFile *src = g_file_new_for_path(src_path), *dst = g_file_new_for_path(dst_path);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="comment">/* We don’t overwrite the target if it exists, because overwrite is not set */</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">const</span> gboolean ok = g_file_copy(src, dst, G_FILE_COPY_NONE, NULL, NULL, NULL, NULL);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; g_object_unref(dst);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_object_unref(src);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">return</span> ok;</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"><a class="line" href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218"> 183</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a>(GKeyFile *gkeyfile, <a class="code" href="struct___remmina_color_pref.html">RemminaColorPref</a> *color_pref)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;{</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keyword">const</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordtype">char</span> **setting;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordtype">char</span> *fallback;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; } colors[] = {</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; { <span class="stringliteral">&quot;background&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>, <span class="stringliteral">&quot;#d5ccba&quot;</span> },</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; { <span class="stringliteral">&quot;cursor&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a>, <span class="stringliteral">&quot;#45373c&quot;</span> },</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; { <span class="stringliteral">&quot;foreground&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>, <span class="stringliteral">&quot;#45373c&quot;</span> },</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; { <span class="stringliteral">&quot;color0&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a>, <span class="stringliteral">&quot;#20111b&quot;</span> },</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; { <span class="stringliteral">&quot;color1&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a>, <span class="stringliteral">&quot;#be100e&quot;</span> },</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; { <span class="stringliteral">&quot;color2&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a>, <span class="stringliteral">&quot;#858162&quot;</span> },</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; { <span class="stringliteral">&quot;color3&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a>, <span class="stringliteral">&quot;#eaa549&quot;</span> },</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; { <span class="stringliteral">&quot;color4&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a>, <span class="stringliteral">&quot;#426a79&quot;</span> },</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; { <span class="stringliteral">&quot;color5&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a>, <span class="stringliteral">&quot;#97522c&quot;</span> },</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; { <span class="stringliteral">&quot;color6&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a>, <span class="stringliteral">&quot;#989a9c&quot;</span> },</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; { <span class="stringliteral">&quot;color7&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a>, <span class="stringliteral">&quot;#968c83&quot;</span> },</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; { <span class="stringliteral">&quot;color8&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a>, <span class="stringliteral">&quot;#5e5252&quot;</span> },</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; { <span class="stringliteral">&quot;color9&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a>, <span class="stringliteral">&quot;#be100e&quot;</span> },</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; { <span class="stringliteral">&quot;color10&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a>, <span class="stringliteral">&quot;#858162&quot;</span> },</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; { <span class="stringliteral">&quot;color11&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a>, <span class="stringliteral">&quot;#eaa549&quot;</span> },</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; { <span class="stringliteral">&quot;color12&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a>, <span class="stringliteral">&quot;#426a79&quot;</span> },</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; { <span class="stringliteral">&quot;color13&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a>, <span class="stringliteral">&quot;#97522c&quot;</span> },</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; { <span class="stringliteral">&quot;color14&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a>, <span class="stringliteral">&quot;#989a9c&quot;</span> },</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; { <span class="stringliteral">&quot;color15&quot;</span>, &amp;color_pref-&gt;<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a>, <span class="stringliteral">&quot;#d5ccba&quot;</span> },</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"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; (<span class="keyword">sizeof</span>(colors) / <span class="keyword">sizeof</span>(colors[0])); i++) {</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, colors[i].name, NULL))</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; *colors[i].setting = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, colors[i].name,</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; NULL);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; *colors[i].setting = colors[i].fallback;</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__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd"> 221</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a>(<span class="keywordtype">void</span>)</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; GKeyFile *gkeyfile;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gchar *remmina_dir;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">const</span> gchar *filename = <span class="stringliteral">&quot;remmina.pref&quot;</span>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keyword">const</span> gchar *colors_filename = <span class="stringliteral">&quot;remmina.colors&quot;</span>;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gchar *<a class="code" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a>;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; GDir *dir;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; gchar *legacy = <span class="stringliteral">&quot;.remmina&quot;</span>;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; remmina_dir = g_build_path( <span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="comment">/* Create the XDG_CONFIG_HOME directory */</span></div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; g_mkdir_with_parents(remmina_dir, 0750);</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; g_free(remmina_dir), remmina_dir = NULL;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="comment">/* Legacy ~/.remmina we copy the existing remmina.pref file inside</span></div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> * XDG_CONFIG_HOME */</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_home_dir(), legacy, NULL);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span> (g_file_test(remmina_dir, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; dir = g_dir_open(remmina_dir, 0, NULL);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a>(</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; g_build_path( <span class="stringliteral">&quot;/&quot;</span>, remmina_dir, filename, NULL),</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; g_build_path( <span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(),</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="stringliteral">&quot;remmina&quot;</span>, filename, NULL));</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="comment">/* /usr/local/etc/remmina */</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keyword">const</span> gchar * <span class="keyword">const</span> *dirs = g_get_system_config_dirs();</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; g_free(remmina_dir), remmina_dir = NULL;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; remmina_dir = g_build_path( <span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">if</span> (g_file_test(remmina_dir, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; dir = g_dir_open(remmina_dir, 0, NULL);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">while</span> ((filename = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <a class="code" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a>(</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; g_build_path( <span class="stringliteral">&quot;/&quot;</span>, remmina_dir, filename, NULL),</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; g_build_path( <span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(),</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="stringliteral">&quot;remmina&quot;</span>, filename, NULL));</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; g_free(remmina_dir), remmina_dir = NULL;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</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; <span class="comment">/* The last case we use the home ~/.config/remmina */</span></div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">if</span> (remmina_dir != NULL)</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; g_free(remmina_dir), remmina_dir = NULL;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; remmina_dir = g_build_path( <span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(),</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</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"> 272</span>&#160; <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a> = g_strdup_printf(<span class="stringliteral">&quot;%s/remmina.pref&quot;</span>, remmina_dir);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="comment">/* remmina.colors */</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; remmina_colors_file = g_strdup_printf(<span class="stringliteral">&quot;%s/%s&quot;</span>, remmina_dir, colors_filename);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_keymap_file</a> = g_strdup_printf(<span class="stringliteral">&quot;%s/remmina.keymap&quot;</span>, remmina_dir);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;save_view_mode&quot;</span>, NULL))</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;save_view_mode&quot;</span>, NULL);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a> = TRUE;</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="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;use_master_password&quot;</span>, NULL))</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;use_master_password&quot;</span>, NULL);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a> = FALSE;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_timeout&quot;</span>, NULL))</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_timeout&quot;</span>, NULL);</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; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a> = 0;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_password&quot;</span>, NULL))</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_password&quot;</span>, NULL);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a> = g_strdup(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_on_auto&quot;</span>, NULL))</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_on_auto&quot;</span>, NULL);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a> = TRUE;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;floating_toolbar_placement&quot;</span>, NULL))</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;floating_toolbar_placement&quot;</span>, NULL);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a> = <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a>;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;prevent_snap_welcome_message&quot;</span>, NULL))</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</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> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;prevent_snap_welcome_message&quot;</span>, NULL);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00315"></a><span class="lineno"> 315</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> = FALSE;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;last_quickconnect_protocol&quot;</span>, NULL))</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</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_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;last_quickconnect_protocol&quot;</span>, NULL);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00320"></a><span class="lineno"> 320</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(<span class="stringliteral">&quot;&quot;</span>);</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"> 322</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_placement&quot;</span>, NULL))</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_placement&quot;</span>, NULL);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a> = <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a>;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;always_show_tab&quot;</span>, NULL))</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;always_show_tab&quot;</span>, NULL);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a> = TRUE;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_connection_toolbar&quot;</span>, NULL))</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>,</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="stringliteral">&quot;hide_connection_toolbar&quot;</span>, NULL);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a> = FALSE;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_searchbar&quot;</span>, NULL))</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="stringliteral">&quot;hide_searchbar&quot;</span>, NULL);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a> = FALSE;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_action&quot;</span>, NULL))</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_action&quot;</span>, NULL);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a> = <a class="code" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a>;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;scale_quality&quot;</span>, NULL))</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;scale_quality&quot;</span>, NULL);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a> = GDK_INTERP_HYPER;</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="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_toolbar&quot;</span>, NULL))</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">hide_toolbar</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_toolbar&quot;</span>, NULL);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">hide_toolbar</a> = FALSE;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;small_toolbutton&quot;</span>, NULL))</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;small_toolbutton&quot;</span>, NULL);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a> = FALSE;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;view_file_mode&quot;</span>, NULL))</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</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> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;view_file_mode&quot;</span>, NULL);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00367"></a><span class="lineno"> 367</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#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;resolutions&quot;</span>, NULL))</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;resolutions&quot;</span>, NULL);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a> = g_strdup(<a class="code" href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a>);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;keystrokes&quot;</span>, NULL))</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;keystrokes&quot;</span>, NULL);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a> = g_strdup(<a class="code" href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">default_keystrokes</a>);</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_width&quot;</span>, NULL))</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a> = MAX(600, g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_width&quot;</span>, NULL));</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a> = 600;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_height&quot;</span>, NULL))</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a> = MAX(400, g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_height&quot;</span>, NULL));</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a> = 400;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_maximize&quot;</span>, NULL))</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</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> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_maximize&quot;</span>, NULL);</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; <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="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_column_id&quot;</span>, NULL))</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</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> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_column_id&quot;</span>,</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; NULL);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00398"></a><span class="lineno"> 398</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> = 1;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_order&quot;</span>, NULL))</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</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> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_order&quot;</span>, NULL);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00403"></a><span class="lineno"> 403</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> = 0;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;expanded_group&quot;</span>, NULL))</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</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> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;expanded_group&quot;</span>, NULL);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00408"></a><span class="lineno"> 408</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> = g_strdup(<span class="stringliteral">&quot;&quot;</span>);</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_pin_down&quot;</span>, NULL))</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_pin_down&quot;</span>, NULL);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a> = FALSE;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_loglevel&quot;</span>, NULL))</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_loglevel&quot;</span>, NULL);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a> = DEFAULT_SSH_LOGLEVEL;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;deny_screenshot_clipboard&quot;</span>, NULL))</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;deny_screenshot_clipboard&quot;</span>, NULL);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a> = TRUE;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;datadir_path&quot;</span>, NULL))</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;datadir_path&quot;</span>, NULL);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> = g_strdup(<span class="stringliteral">&quot;&quot;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;remmina_file_name&quot;</span>, NULL)) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;remmina_file_name&quot;</span>, NULL);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a> = g_strdup(<span class="stringliteral">&quot;%G_%P_%N_%h&quot;</span>);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</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> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;screenshot_path&quot;</span>, NULL)) {</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;screenshot_path&quot;</span>, NULL);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> = g_get_user_special_dir(G_USER_DIRECTORY_PICTURES);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</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#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> == NULL)</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> = g_get_home_dir();</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;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;screenshot_name&quot;</span>, NULL)) {</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;screenshot_name&quot;</span>, NULL);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a> = g_strdup(<span class="stringliteral">&quot;remmina_%p_%h_%Y%m%d-%H%M%S&quot;</span>);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_parseconfig&quot;</span>, NULL))</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_parseconfig&quot;</span>, NULL);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a> = DEFAULT_SSH_PARSECONFIG;</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"> 455</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;sshtunnel_port&quot;</span>, NULL))</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;sshtunnel_port&quot;</span>, NULL);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a> = DEFAULT_SSHTUNNEL_PORT;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepidle&quot;</span>, NULL))</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepidle&quot;</span>, NULL);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a> = SSH_SOCKET_TCP_KEEPIDLE;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepintvl&quot;</span>, NULL))</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepintvl&quot;</span>, NULL);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a> = SSH_SOCKET_TCP_KEEPINTVL;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepcnt&quot;</span>, NULL))</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepcnt&quot;</span>, NULL);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a> = SSH_SOCKET_TCP_KEEPCNT;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_usrtimeout&quot;</span>, NULL))</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_usrtimeout&quot;</span>, NULL);</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a> = SSH_SOCKET_TCP_USER_TIMEOUT;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_new_ontop&quot;</span>, NULL))</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_new_ontop&quot;</span>, NULL);</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a> = FALSE;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_hide_count&quot;</span>, NULL))</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_hide_count&quot;</span>, NULL);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a> = FALSE;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_enable_avahi&quot;</span>, NULL))</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_enable_avahi&quot;</span>,</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; NULL);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a> = FALSE;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;disable_tray_icon&quot;</span>, NULL))</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;disable_tray_icon&quot;</span>, NULL);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a> = FALSE;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;dark_tray_icon&quot;</span>, NULL))</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;dark_tray_icon&quot;</span>, NULL);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a> = FALSE;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;recent_maximum&quot;</span>, NULL))</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;recent_maximum&quot;</span>, NULL);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> = 10;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_mode&quot;</span>, NULL))</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_mode&quot;</span>, NULL);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a> = 0;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;tab_mode&quot;</span>, NULL))</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;tab_mode&quot;</span>, NULL);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a> = 0;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_toolbar_visibility&quot;</span>, NULL))</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#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_toolbar_visibility&quot;</span>, NULL);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a> = <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">FLOATING_TOOLBAR_VISIBILITY_PEEKING</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;auto_scroll_step&quot;</span>, NULL))</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;auto_scroll_step&quot;</span>, NULL);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> = 10;</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hostkey&quot;</span>, NULL))</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hostkey&quot;</span>, NULL);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> = GDK_KEY_Control_R;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_fullscreen&quot;</span>, NULL))</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_fullscreen&quot;</span>,</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; NULL);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a> = GDK_KEY_f;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_autofit&quot;</span>, NULL))</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_autofit&quot;</span>,</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; NULL);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a> = GDK_KEY_1;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_nexttab&quot;</span>, NULL))</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_nexttab&quot;</span>,</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; NULL);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a> = GDK_KEY_Right;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_prevtab&quot;</span>, NULL))</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_prevtab&quot;</span>,</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; NULL);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a> = GDK_KEY_Left;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_scale&quot;</span>, NULL))</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_scale&quot;</span>, NULL);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a> = GDK_KEY_s;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_viewonly&quot;</span>, NULL))</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_viewonly&quot;</span>, NULL);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a> = GDK_KEY_m;</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_grab&quot;</span>, NULL))</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_grab&quot;</span>, NULL);</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a> = GDK_KEY_Control_R;</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_minimize&quot;</span>, NULL))</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_minimize&quot;</span>, NULL);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a> = GDK_KEY_F9;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_screenshot&quot;</span>, NULL))</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_screenshot&quot;</span>, NULL);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a> = GDK_KEY_F12;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_disconnect&quot;</span>, NULL))</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_disconnect&quot;</span>,</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; NULL);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a> = GDK_KEY_F4;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_toolbar&quot;</span>, NULL))</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_toolbar&quot;</span>,</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; NULL);</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a> = GDK_KEY_t;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;secret&quot;</span>, NULL))</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;secret&quot;</span>, NULL);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a> = NULL;</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; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;uid&quot;</span>, NULL))</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">uid</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;uid&quot;</span>, NULL);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">uid</a> = NULL;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_font&quot;</span>, NULL))</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_font&quot;</span>, NULL);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> = 0;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_allow_bold_text&quot;</span>, NULL))</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_allow_bold_text&quot;</span>,</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; NULL);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a> = TRUE;</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"> 618</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_lines&quot;</span>, NULL))</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_lines&quot;</span>, NULL);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a> = 512;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_copy&quot;</span>, NULL))</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_copy&quot;</span>,</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; NULL);</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a> = GDK_KEY_c;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_paste&quot;</span>, NULL))</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_paste&quot;</span>,</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; NULL);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a> = GDK_KEY_v;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_select_all&quot;</span>, NULL))</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a> = g_key_file_get_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_shortcutkey_select_all&quot;</span>,</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; NULL);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a> = GDK_KEY_a;</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="comment">/* If we have a color scheme file, we switch to it, GIO will merge it in the</span></div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;<span class="comment"> * remmina.pref file */</span></div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keywordflow">if</span> (g_file_test(remmina_colors_file, G_FILE_TEST_IS_REGULAR)) {</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; g_key_file_load_from_file(gkeyfile, remmina_colors_file, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; g_remove(remmina_colors_file);</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;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <a class="code" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a>(gkeyfile, &amp;<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_permitted&quot;</span>, NULL))</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_permitted&quot;</span>, NULL);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> = FALSE;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_last_sent&quot;</span>, NULL))</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a> = g_key_file_get_int64(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_last_sent&quot;</span>, NULL);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a> = 0;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_uuid_prefix&quot;</span>, NULL))</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_uuid_prefix&quot;</span>, NULL);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> = NULL;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_last_get&quot;</span>, NULL))</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = g_key_file_get_int64(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_last_get&quot;</span>, NULL);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = 0;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_get_count&quot;</span>, NULL))</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> = g_key_file_get_int64(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_get_count&quot;</span>, NULL);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> = 0;</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">if</span> (g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_uuid_prefix&quot;</span>, NULL))</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_uuid_prefix&quot;</span>, NULL);</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> = NULL;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="comment">/* Default settings */</span></div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">if</span> (!g_key_file_has_key(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;name&quot;</span>, NULL)) {</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;name&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;ignore-tls-errors&quot;</span>, 1);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;enable-plugins&quot;</span>, 1);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</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#a99a34af002da68036758fab3ceb08259">secret</a> == NULL)</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <a class="code" href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref_gen_secret</a>();</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <a class="code" href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref_init_keymap</a>();</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;}</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c"> 697</a></span>&#160;gboolean <a class="code" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">if</span> (access(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, W_OK) == 0)</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;}</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f"> 707</a></span>&#160;gboolean <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;{</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; TRACE_CALL(__func__);</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="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a>() == FALSE) {</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; g_debug (<span class="stringliteral">&quot;remmina.pref is not writable, returning&quot;</span>);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; }</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; gchar *content;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; gsize length;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;datadir_path&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a>);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;remmina_file_name&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a>);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;screenshot_path&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a>);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;remmina_file_name&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a>);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;deny_screenshot_clipboard&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a>);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;save_view_mode&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a>);</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;use_master_password&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a>);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_timeout&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a>);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_password&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a>);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;use_master_password&quot;</span>, FALSE);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_timeout&quot;</span>, 0);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;unlock_password&quot;</span>, g_strdup(<span class="stringliteral">&quot;&quot;</span>));</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;floating_toolbar_placement&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a>);</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_placement&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a>);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;prevent_snap_welcome_message&quot;</span>, <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="l00742"></a><span class="lineno"> 742</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;last_quickconnect_protocol&quot;</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>);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_on_auto&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a>);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;always_show_tab&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a>);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_connection_toolbar&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a>);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_searchbar&quot;</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="l00747"></a><span class="lineno"> 747</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_action&quot;</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="l00748"></a><span class="lineno"> 748</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;scale_quality&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a>);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_loglevel&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a>);</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_parseconfig&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a>);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hide_toolbar&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">hide_toolbar</a>);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;small_toolbutton&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a>);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;view_file_mode&quot;</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="l00754"></a><span class="lineno"> 754</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;resolutions&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;keystrokes&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a>);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_width&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_height&quot;</span>, <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="l00758"></a><span class="lineno"> 758</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_maximize&quot;</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="l00759"></a><span class="lineno"> 759</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_column_id&quot;</span>, <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="l00760"></a><span class="lineno"> 760</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;main_sort_order&quot;</span>, <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="l00761"></a><span class="lineno"> 761</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;expanded_group&quot;</span>, <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="l00762"></a><span class="lineno"> 762</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;toolbar_pin_down&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a>);</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;sshtunnel_port&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepidle&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a>);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepintvl&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a>);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_keepcnt&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a>);</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;ssh_tcp_usrtimeout&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a>);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_new_ontop&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a>);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_hide_count&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a>);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;applet_enable_avahi&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a>);</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;disable_tray_icon&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>);</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;dark_tray_icon&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a>);</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;recent_maximum&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a>);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;default_mode&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a>);</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;tab_mode&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a>);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;fullscreen_toolbar_visibility&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a>);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;auto_scroll_step&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a>);</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;hostkey&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_fullscreen&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a>);</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_autofit&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a>);</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_nexttab&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a>);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_prevtab&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a>);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_scale&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a>);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_grab&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a>);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_viewonly&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a>);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_screenshot&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a>);</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_minimize&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a>);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_disconnect&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a>);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;shortcutkey_toolbar&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a>);</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_font&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_allow_bold_text&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a>);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, <span class="stringliteral">&quot;vte_lines&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a>);</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;background&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;cursor&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;foreground&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color0&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color1&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color2&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color3&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color4&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color5&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color6&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color7&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color8&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color9&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color10&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color11&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color12&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color13&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color14&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;ssh_colors&quot;</span>, <span class="stringliteral">&quot;color15&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a> : <span class="stringliteral">&quot;&quot;</span>);</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; g_key_file_set_boolean(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_permitted&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a>);</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; g_key_file_set_int64(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_last_sent&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a>);</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;usage_stats&quot;</span>, <span class="stringliteral">&quot;periodic_usage_stats_uuid_prefix&quot;</span>,</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; g_key_file_set_int64(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_last_get&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a>);</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_get_count&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a>);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_news&quot;</span>, <span class="stringliteral">&quot;periodic_rmnews_uuid_prefix&quot;</span>,</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> ? <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="comment">/* Default settings */</span></div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;name&quot;</span>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; g_key_file_set_integer(gkeyfile, <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;ignore-tls-errors&quot;</span>, 1);</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; g_file_set_contents(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, content, length, &amp;error);</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> (error != NULL)</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; {</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; g_warning (<span class="stringliteral">&quot;remmina_pref_save error: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; g_clear_error (&amp;error);</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; g_free(content);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; }</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; g_free(content);</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;}</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60"> 842</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a>(<span class="keyword">const</span> gchar *protocol, <span class="keyword">const</span> gchar *server)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; gchar key[20];</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; gchar *val;</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; gchar *content;</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; gsize length;</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</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#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> &lt;= 0 || server == NULL || server[0] == 0)</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="comment">/* Load original value into memory */</span></div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; gkeyfile = g_key_file_new();</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; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160;</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; g_snprintf(key, <span class="keyword">sizeof</span>(key), <span class="stringliteral">&quot;recent_%s&quot;</span>, protocol);</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; array = <a class="code" href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a>(g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, NULL));</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; <span class="comment">/* Add the new value */</span></div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a>(array, server);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; <span class="keywordflow">while</span> (array-&gt;len &gt;= <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a>) {</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; <a class="code" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a>(array, 0);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; }</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(array, server);</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"> 870</span>&#160; <span class="comment">/* Save */</span></div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; val = <a class="code" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(array);</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, val);</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; g_free(val);</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; g_file_set_contents(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, content, length, NULL);</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; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; g_free(content);</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"> 881</span>&#160;</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160;gchar*</div><div class="line"><a name="l00883"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05"> 883</a></span>&#160;<a class="code" href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a>(<span class="keyword">const</span> gchar *protocol)</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;{</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; gchar key[20];</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; gchar *val;</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; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160;</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; g_snprintf(key, <span class="keyword">sizeof</span>(key), <span class="stringliteral">&quot;recent_%s&quot;</span>, protocol);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; val = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, NULL);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; <span class="keywordflow">return</span> val;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;}</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14"> 902</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;{</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; gchar **keys;</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; gint i;</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; gchar *content;</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; gsize length;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; keys = g_key_file_get_keys(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, NULL, NULL);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <span class="keywordflow">if</span> (keys) {</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; <span class="keywordflow">for</span> (i = 0; keys[i]; i++) {</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="keywordflow">if</span> (strncmp(keys[i], <span class="stringliteral">&quot;recent_&quot;</span>, 7) == 0) {</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, keys[i], <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; }</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; }</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; g_strfreev(keys);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; }</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; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; g_file_set_contents(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, content, length, NULL);</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160;</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; g_free(content);</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;</div><div class="line"><a name="l00931"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8"> 931</a></span>&#160;guint <a class="code" href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a>(<span class="keyword">const</span> gchar *keymap, guint keyval)</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160;{</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; guint *<a class="code" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a>;</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; gint i;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; <span class="keywordflow">if</span> (!keymap || keymap[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; <span class="keywordflow">return</span> keyval;</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160;</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; table = (guint*)g_hash_table_lookup(<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a>, keymap);</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="keywordflow">if</span> (!table)</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="keywordflow">return</span> keyval;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="keywordflow">for</span> (i = 0; table[i] &gt; 0; i += 2) {</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordflow">if</span> (table[i] == keyval)</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="keywordflow">return</span> table[i + 1];</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; }</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; <span class="keywordflow">return</span> keyval;</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160;}</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160;</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160;gchar**</div><div class="line"><a name="l00951"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395"> 951</a></span>&#160;<a class="code" href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;{</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; GList *list;</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; guint len;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; gchar **keys;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; guint i;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160;</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; list = g_hash_table_get_keys(<a class="code" href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a>);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; len = g_list_length(list);</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; keys = g_new0(gchar*, (len + 1) * 2 + 1);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; keys[0] = g_strdup(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; keys[1] = g_strdup(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; len; i++) {</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; keys[(i + 1) * 2] = g_strdup((gchar*)g_list_nth_data(list, i));</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; keys[(i + 1) * 2 + 1] = g_strdup((gchar*)g_list_nth_data(list, i));</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; }</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; g_list_free(list);</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="keywordflow">return</span> keys;</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160;}</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160;</div><div class="line"><a name="l00974"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b"> 974</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; <span class="comment">/* Paranoid programming */</span></div><div class="line"><a name="l00978"></a><span class="lineno"> 978</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#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a> &lt; 0) {</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a> = 0;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; }</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a>;</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160;}</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;</div><div class="line"><a name="l00984"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267"> 984</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160;{</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a>;</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160;}</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160;</div><div class="line"><a name="l00990"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23"> 990</a></span>&#160;gboolean <a class="code" href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160;{</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a>;</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;}</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160;</div><div class="line"><a name="l00996"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99"> 996</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;}</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be"> 1002</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;{</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</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;</div><div class="line"><a name="l01008"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414"> 1008</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a>;</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;</div><div class="line"><a name="l01014"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b"> 1014</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;{</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a>;</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;}</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"><a class="line" href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714"> 1020</a></span>&#160;gint <a class="code" href="remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;{</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="keywordflow">return</span> <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a>;</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;}</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;</div><div class="line"><a name="l01026"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02"> 1026</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a>(<span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *value)</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;{</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; gchar *content;</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; gsize length;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; g_key_file_set_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, value);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; content = g_key_file_to_data(gkeyfile, &amp;length, NULL);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; g_file_set_contents(<a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, content, length, NULL);</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; g_key_file_free(gkeyfile);</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; g_free(content);</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;}</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"><a class="line" href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6"> 1043</a></span>&#160;gchar* <a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="keyword">const</span> gchar *key)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; gchar *value;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; value = g_key_file_get_string(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, NULL);</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; g_key_file_free(gkeyfile);</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; <span class="keywordflow">return</span> value;</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;</div><div class="line"><a name="l01057"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f"> 1057</a></span>&#160;gboolean <a class="code" href="remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="keyword">const</span> gchar *key)</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;{</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; gboolean value;</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; gkeyfile = g_key_file_new();</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; g_key_file_load_from_file(gkeyfile, <a class="code" href="rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; value = g_key_file_get_boolean(gkeyfile, <span class="stringliteral">&quot;remmina_pref&quot;</span>, key, NULL);</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; g_key_file_free(gkeyfile);</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; <span class="keywordflow">return</span> value;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;}</div><div class="ttc" id="struct___remmina_pref_html_a10b1f3d9b49687c09ec5dd98a0577d7f"><div class="ttname"><a href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref::shortcutkey_fullscreen</a></div><div class="ttdeci">guint shortcutkey_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00152">remmina_pref.h:152</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac95fed56e8995e3361928ebf87505f21"><div class="ttname"><a href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">_RemminaPref::floating_toolbar_placement</a></div><div class="ttdeci">gint floating_toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00186">remmina_pref.h:186</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae293a1fa591d3db78bd587c5af9c9101"><div class="ttname"><a href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref::hide_searchbar</a></div><div class="ttdeci">gboolean hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00133">remmina_pref.h:133</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aac4f34f297a653052752b571777bc001"><div class="ttname"><a href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref::ssh_loglevel</a></div><div class="ttdeci">gint ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00143">remmina_pref.h:143</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a37cd589f00c94cb28eabb1bce4646d0b"><div class="ttname"><a href="remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a></div><div class="ttdeci">gint remmina_pref_get_scale_quality(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00974">remmina_pref.c:974</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a887cbbd379d159cd0ac1acea7173d07b"><div class="ttname"><a href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref::shortcutkey_minimize</a></div><div class="ttdeci">guint shortcutkey_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00161">remmina_pref.h:161</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html"><div class="ttname"><a href="remmina__sodium_8h.html">remmina_sodium.h</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_afc609e167e078f1991320f79e9f9157c"><div class="ttname"><a href="remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c">remmina_pref_gen_secret</a></div><div class="ttdeci">static void remmina_pref_gen_secret(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00071">remmina_pref.c:71</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a745bbef1d48a7462f8db997821742395"><div class="ttname"><a href="remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a></div><div class="ttdeci">gchar ** remmina_pref_keymap_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00951">remmina_pref.c:951</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a858117f890841ad21d3a153f5b81dbdd"><div class="ttname"><a href="remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd">default_keystrokes</a></div><div class="ttdeci">const gchar * default_keystrokes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00057">remmina_pref.c:57</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a23aaa111a41eb1c80df5e85af25e7e44"><div class="ttname"><a href="remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44">default_keymap_data</a></div><div class="ttdeci">static const gchar * default_keymap_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00063">remmina_pref.c:63</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#l00123">remmina_pref.h:123</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#l00072">rcw.c:72</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a62228cb0bc959307e3268cff98e1f7bb"><div class="ttname"><a href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></div><div class="ttdeci">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8h_source.html#l00041">remmina_string_array.h:41</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6982152fd0492586819ce1760a853e99"><div class="ttname"><a href="remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a></div><div class="ttdeci">gint remmina_pref_get_sshtunnel_port(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00996">remmina_pref.c:996</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6ae707cecd1f6660d8e2168d7422b797"><div class="ttname"><a href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref::hostkey</a></div><div class="ttdeci">guint hostkey</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00151">remmina_pref.h:151</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a49c21f0374af5abd5c3034cbc665a17f"><div class="ttname"><a href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">_RemminaPref::uid</a></div><div class="ttdeci">gchar * uid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00195">remmina_pref.h:195</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a086c9b0fe4bcfe0e5349422d17886d65"><div class="ttname"><a href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref::keystrokes</a></div><div class="ttdeci">gchar * keystrokes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00128">remmina_pref.h:128</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a7829d615a6c5b8a6f6c759043fb2ac81"><div class="ttname"><a href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a></div><div class="ttdeci">static gboolean remmina_pref_file_do_copy(const char *src_path, const char *dst_path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00171">remmina_pref.c:171</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b5f4704fb50b67ff1e3daaf7d7d3209"><div class="ttname"><a href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref::shortcutkey_screenshot</a></div><div class="ttdeci">guint shortcutkey_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00160">remmina_pref.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a45d70bbebf5163081d67df3dbb73cc1b"><div class="ttname"><a href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref::shortcutkey_prevtab</a></div><div class="ttdeci">guint shortcutkey_prevtab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00154">remmina_pref.h:154</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1d7deb091e0d51a8d7885ad9e22dc9a7"><div class="ttname"><a href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref::ssh_parseconfig</a></div><div class="ttdeci">gboolean ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00144">remmina_pref.h:144</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html"><div class="ttname"><a href="struct___remmina_color_pref.html">_RemminaColorPref</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00088">remmina_pref.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2a14fc38e73351f9009fe155dd859808"><div class="ttname"><a href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref::color0</a></div><div class="ttdeci">gchar * color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00093">remmina_pref.h:93</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a793ae9c3e2f88eed85551c85d6832ebd"><div class="ttname"><a href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref::ssh_tcp_keepintvl</a></div><div class="ttdeci">gint ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00147">remmina_pref.h:147</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#l00189">remmina_pref.h:189</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00072">remmina_pref.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a4ad947d133d2aa2c94756aacb5031e79"><div class="ttname"><a href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref::color14</a></div><div class="ttdeci">gchar * color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00107">remmina_pref.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad4d1bd34e31b36bd9306d0a5770a4e8f"><div class="ttname"><a href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref::dark_tray_icon</a></div><div class="ttdeci">gboolean dark_tray_icon</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="struct___remmina_color_pref_html_ae26f55ce50c1485cda60106c5f24256c"><div class="ttname"><a href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref::color10</a></div><div class="ttdeci">gchar * color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00103">remmina_pref.h:103</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a12e52ee4ab89912280605e36ee069267"><div class="ttname"><a href="remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a></div><div class="ttdeci">gint remmina_pref_get_ssh_loglevel(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00984">remmina_pref.c:984</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65a1f2b90d033425fd0c041fccae320c"><div class="ttname"><a href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref::auto_scroll_step</a></div><div class="ttdeci">gint auto_scroll_step</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00125">remmina_pref.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a579fae9094500d743c26d03f4c34d457"><div class="ttname"><a href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref::vte_shortcutkey_copy</a></div><div class="ttdeci">guint vte_shortcutkey_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00169">remmina_pref.h:169</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab0928bd64388cb1ced2f542d3b35019d"><div class="ttname"><a href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref::default_mode</a></div><div class="ttdeci">gint default_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00134">remmina_pref.h:134</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a0296a8f5b359547a0aa4cbffb914edd3"><div class="ttname"><a href="remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3">remmina_pref_get_keyval_from_str</a></div><div class="ttdeci">static guint remmina_pref_get_keyval_from_str(const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00099">remmina_pref.c:99</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a0208d5dc8197423da67e5967aafb7a05"><div class="ttname"><a href="remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a></div><div class="ttdeci">gchar * remmina_pref_get_recent(const gchar *protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00883">remmina_pref.c:883</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a3a897d3fdc112fd9f96d2363f4094fc4"><div class="ttname"><a href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref::color2</a></div><div class="ttdeci">gchar * color2</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="struct___remmina_pref_html_ae5c3a7fd35cc51f658dda67052440b47"><div class="ttname"><a href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref::shortcutkey_autofit</a></div><div class="ttdeci">guint shortcutkey_autofit</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="struct___remmina_pref_html_a99a34af002da68036758fab3ceb08259"><div class="ttname"><a href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">_RemminaPref::secret</a></div><div class="ttdeci">gchar * secret</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00192">remmina_pref.h:192</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59d72ae63a434fbb978934e4592417c4"><div class="ttname"><a href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">_RemminaPref::use_master_password</a></div><div class="ttdeci">gboolean use_master_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00119">remmina_pref.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2ca13ee672a2536665f66d544753928"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref::color12</a></div><div class="ttdeci">gchar * color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00105">remmina_pref.h:105</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#l00179">remmina_pref.h:179</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_pref_html_a095f19f07c5ebeb47a89b1bfe23cc21e"><div class="ttname"><a href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">_RemminaPref::scale_quality</a></div><div class="ttdeci">gint scale_quality</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00124">remmina_pref.h:124</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ab9e75c6bf39aa93a87d421fc3d742d60"><div class="ttname"><a href="remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a></div><div class="ttdeci">void remmina_pref_add_recent(const gchar *protocol, const gchar *server)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00842">remmina_pref.c:842</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a4fbb2aff07d1fef416352d8b80d79e02"><div class="ttname"><a href="remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a></div><div class="ttdeci">void remmina_pref_set_value(const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01026">remmina_pref.c:1026</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae63c0c0ec8dbfe8bf665221868661b35"><div class="ttname"><a href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">_RemminaPref::deny_screenshot_clipboard</a></div><div class="ttdeci">gboolean deny_screenshot_clipboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00116">remmina_pref.h:116</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59eebf1d365ef192de8e14da2c381f37"><div class="ttname"><a href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref::resolutions</a></div><div class="ttdeci">gchar * resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00127">remmina_pref.h:127</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9c5171c5d8a61cc48171065644613cad"><div class="ttname"><a href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref::vte_shortcutkey_select_all</a></div><div class="ttdeci">guint vte_shortcutkey_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00171">remmina_pref.h:171</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa495bd5170c952a7dccff4e2504f5867"><div class="ttname"><a href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref::foreground</a></div><div class="ttdeci">gchar * foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00092">remmina_pref.h:92</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a675a8004488715429fa540dffb330d49"><div class="ttname"><a href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref::background</a></div><div class="ttdeci">gchar * background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00090">remmina_pref.h:90</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#l00183">remmina_pref.h:183</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a52f5fa8b2b4500c3ab9ae35f0d410f17"><div class="ttname"><a href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref::vte_allow_bold_text</a></div><div class="ttdeci">gboolean vte_allow_bold_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00166">remmina_pref.h:166</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_afcd157a6f3bddb4b23b4e328cd18358c"><div class="ttname"><a href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref::disable_tray_icon</a></div><div class="ttdeci">gboolean disable_tray_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00140">remmina_pref.h:140</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5ae99dc78a80baa14e0407983077c500"><div class="ttname"><a href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref::cursor</a></div><div class="ttdeci">gchar * cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00091">remmina_pref.h:91</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab78e34f426da9a37b467efbdf2183644"><div class="ttname"><a href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">_RemminaPref::recent_maximum</a></div><div class="ttdeci">gint recent_maximum</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00126">remmina_pref.h:126</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a98b783e4c5c1dae695fe554f52f94a23"><div class="ttname"><a href="remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a></div><div class="ttdeci">gboolean remmina_pref_get_ssh_parseconfig(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00990">remmina_pref.c:990</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ac194a2cb922d4a047b825dc69713cc46"><div class="ttname"><a href="remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46">remmina_keymap_table</a></div><div class="ttdeci">static GHashTable * remmina_keymap_table</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00060">remmina_pref.c:60</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac342b87e3992a20833d39e864e8ab85b"><div class="ttname"><a href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref::vte_font</a></div><div class="ttdeci">gchar * vte_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00165">remmina_pref.h:165</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a3df98a686c4e2703455c1a786d3f1f5c"><div class="ttname"><a href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref::screenshot_path</a></div><div class="ttdeci">const gchar * screenshot_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00115">remmina_pref.h:115</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__string__array_8c_html_a40811c036e46f6544ab6c4cff445454b"><div class="ttname"><a href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a></div><div class="ttdeci">void remmina_string_array_remove_index(RemminaStringArray *array, gint i)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00104">remmina_string_array.c:104</a></div></div>
+<div class="ttc" id="structmpchanger__params_html_a87576a4dfe04c11686cf574669331bb2"><div class="ttname"><a href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">mpchanger_params::table</a></div><div class="ttdeci">GtkTreeView * table</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__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="struct___remmina_pref_html_aef2fe0f203dd68ed30d12e3b22a4f972"><div class="ttname"><a href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref::unlock_timeout</a></div><div class="ttdeci">gint unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00122">remmina_pref.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_affa1d02e2b0d9f6fc7b006fd74a52ad7"><div class="ttname"><a href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref::periodic_usage_stats_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_usage_stats_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00202">remmina_pref.h:202</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a0242e9fcc63d6d24257f63fc23077133"><div class="ttname"><a href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">_RemminaPref::toolbar_placement</a></div><div class="ttdeci">gint toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00187">remmina_pref.h:187</a></div></div>
+<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#l00188">remmina_pref.h:188</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#l00184">remmina_pref.h:184</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a87044f758cc0e9c975b02c3f94147e06"><div class="ttname"><a href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">_RemminaPref::periodic_rmnews_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_rmnews_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00208">remmina_pref.h:208</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65b01db52636d3fb896cd8a5c68eb2fc"><div class="ttname"><a href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">_RemminaPref::unlock_password</a></div><div class="ttdeci">const gchar * unlock_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00120">remmina_pref.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a901034949132f369eb34c4f1ded3a0a6"><div class="ttname"><a href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref::vte_shortcutkey_paste</a></div><div class="ttdeci">guint vte_shortcutkey_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00170">remmina_pref.h:170</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a17bfba7a11836808719d33d5f6edbdc7"><div class="ttname"><a href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref::shortcutkey_disconnect</a></div><div class="ttdeci">guint shortcutkey_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00162">remmina_pref.h:162</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad92d70d47d7ad80298efe591955fa8b8"><div class="ttname"><a href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref::ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint ssh_tcp_usrtimeout</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="struct___remmina_color_pref_html_a24a8c38ab11389b860d0658812ff7bbc"><div class="ttname"><a href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref::color13</a></div><div class="ttdeci">gchar * color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00106">remmina_pref.h:106</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7"><div class="ttname"><a href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00046">remmina_pref.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a293541cc884cabe4f9b2b3181b3ea9c0"><div class="ttname"><a href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">_RemminaPref::small_toolbutton</a></div><div class="ttdeci">gboolean small_toolbutton</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00174">remmina_pref.h:174</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a363642437f5920c93fe35c07ef3601cc"><div class="ttname"><a href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref::shortcutkey_grab</a></div><div class="ttdeci">guint shortcutkey_grab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00158">remmina_pref.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6d77a2663675f01670ed7cc2f14e39c9"><div class="ttname"><a href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref::always_show_tab</a></div><div class="ttdeci">gboolean always_show_tab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00131">remmina_pref.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a62b161b504422d53a766abb3444f8449"><div class="ttname"><a href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">_RemminaPref::toolbar_pin_down</a></div><div class="ttdeci">gboolean toolbar_pin_down</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00185">remmina_pref.h:185</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac13f1310a2625b29defdf5b0ba8fd2d0"><div class="ttname"><a href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">_RemminaPref::main_sort_column_id</a></div><div class="ttdeci">gint main_sort_column_id</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00182">remmina_pref.h:182</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2859598ef2f87afb5a970a197a503765"><div class="ttname"><a href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref::shortcutkey_scale</a></div><div class="ttdeci">guint shortcutkey_scale</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00157">remmina_pref.h:157</a></div></div>
+<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#l00181">remmina_pref.h:181</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a462a635b3a55cc0e3af087ff996fba9a"><div class="ttname"><a href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new_from_allocated_string(gchar *strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00077">remmina_string_array.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b13dc96ccf8ebad045f02c58eb1d005"><div class="ttname"><a href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref::periodic_rmnews_get_count</a></div><div class="ttdeci">glong periodic_rmnews_get_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00207">remmina_pref.h:207</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</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#l01057">remmina_pref.c:1057</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8ae5e31836066ac69f7c907f30d2ffc"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref::color9</a></div><div class="ttdeci">gchar * color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00102">remmina_pref.h:102</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2d0facd5a0480a450d525ce9ef4fed60"><div class="ttname"><a href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref::color5</a></div><div class="ttdeci">gchar * color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00098">remmina_pref.h:98</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#l00175">remmina_pref.h:175</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a1d9bd13f411189c9d8d8a08ceb77e8d7"><div class="ttname"><a href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref::color7</a></div><div class="ttdeci">gchar * color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00100">remmina_pref.h:100</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a781431450dfcf639c8dd96701be3795b"><div class="ttname"><a href="remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepcnt(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01014">remmina_pref.c:1014</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ac3b15f811daf0aaf8bacd67f1b47aa14"><div class="ttname"><a href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a></div><div class="ttdeci">void remmina_pref_clear_recent(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00902">remmina_pref.c:902</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a316f4290c083d28bd3492ee979278290"><div class="ttname"><a href="remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a></div><div class="ttdeci">const gchar * default_resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00056">remmina_pref.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a712773f926eb2ec030d6af80cdc33095"><div class="ttname"><a href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref::shortcutkey_nexttab</a></div><div class="ttdeci">guint shortcutkey_nexttab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00155">remmina_pref.h:155</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_acee9d7384a5e3949df53cdf54390bbcd"><div class="ttname"><a href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref::applet_hide_count</a></div><div class="ttdeci">gboolean applet_hide_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00139">remmina_pref.h:139</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2bf96a40b9f63300d02e158b26546203"><div class="ttname"><a href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref::ssh_tcp_keepidle</a></div><div class="ttdeci">gint ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00146">remmina_pref.h:146</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aecbe4c6a13ec6eda818c9f74c6f63468"><div class="ttname"><a href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref::tab_mode</a></div><div class="ttdeci">gint tab_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00135">remmina_pref.h:135</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_aaac087c000b0863a296f2739f6344af8"><div class="ttname"><a href="remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a></div><div class="ttdeci">guint remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00931">remmina_pref.c:931</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a8cbf300dc913d51365c93f928e0d02fd"><div class="ttname"><a href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">_RemminaPref::hide_toolbar</a></div><div class="ttdeci">gboolean hide_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00173">remmina_pref.h:173</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a2a8a9753ebf61c9418a77ba3dd654ff3"><div class="ttname"><a href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a></div><div class="ttdeci">void remmina_string_array_remove(RemminaStringArray *array, const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00110">remmina_string_array.c:110</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8d7f02ac9b6890ad675b702708bc4af9"><div class="ttname"><a href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref::color6</a></div><div class="ttdeci">gchar * color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00099">remmina_pref.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_abbd08ed0c74b8f216e633aae6b141792"><div class="ttname"><a href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">_RemminaPref::applet_enable_avahi</a></div><div class="ttdeci">gboolean applet_enable_avahi</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00177">remmina_pref.h:177</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa1544a98f03088dc260ed98f2deac94f"><div class="ttname"><a href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref::remmina_file_name</a></div><div class="ttdeci">const gchar * remmina_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00114">remmina_pref.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af9c8b60418a9dc795230e4ebb084f850"><div class="ttname"><a href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref::vte_lines</a></div><div class="ttdeci">gint vte_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00168">remmina_pref.h:168</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a400f7319fd3996a13399ef72bcf0a2fd"><div class="ttname"><a href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a></div><div class="ttdeci">void remmina_pref_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00221">remmina_pref.c:221</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a10b667eb7a100d6ac8d9544697f22743"><div class="ttname"><a href="remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743">remmina_keymap_file</a></div><div class="ttdeci">gchar * remmina_keymap_file</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00059">remmina_pref.c:59</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">FLOATING_TOOLBAR_VISIBILITY_PEEKING</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00083">remmina_pref.h:83</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2b41853bdaaefa3968017819c19d316"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref::color3</a></div><div class="ttdeci">gchar * color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00096">remmina_pref.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa3dc5f8676c4747f2fcaf9a68d16d11b"><div class="ttname"><a href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref::shortcutkey_toolbar</a></div><div class="ttdeci">guint shortcutkey_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00163">remmina_pref.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5d92875f0034e5fc3d360d97d5992bd4"><div class="ttname"><a href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref::color8</a></div><div class="ttdeci">gchar * color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00101">remmina_pref.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad9fb2bee26f8054c373fbc6ad0ccf736"><div class="ttname"><a href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">_RemminaPref::periodic_usage_stats_last_sent</a></div><div class="ttdeci">glong periodic_usage_stats_last_sent</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00201">remmina_pref.h:201</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__pref_8h_html_a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a"><div class="ttname"><a href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00051">remmina_pref.h:51</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a94d3cf980275b6e9b0c701972f8b1cce"><div class="ttname"><a href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a></div><div class="ttdeci">gchar * remmina_colors_file</div></div>
+<div class="ttc" id="struct___remmina_pref_html_a082f698b8aa7cec3c1cb0fd987d4358f"><div class="ttname"><a href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref::ssh_tcp_keepcnt</a></div><div class="ttdeci">gint ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00148">remmina_pref.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a999b74e3aab2e7fbc4431e803511b568"><div class="ttname"><a href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref::applet_new_ontop</a></div><div class="ttdeci">gboolean applet_new_ontop</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00138">remmina_pref.h:138</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae2267a1de362addcee0c5801612dc5d6"><div class="ttname"><a href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref::screenshot_name</a></div><div class="ttdeci">const gchar * screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00117">remmina_pref.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_afa7c4748f22173796b35d1d50b6c1914"><div class="ttname"><a href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref::color4</a></div><div class="ttdeci">gchar * color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00097">remmina_pref.h:97</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00064">remmina_pref.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9258f6c3c18f14b4abb148aa43e6bc0e"><div class="ttname"><a href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref::hide_connection_toolbar</a></div><div class="ttdeci">gboolean hide_connection_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00132">remmina_pref.h:132</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_aed7f3859d4306419932df15131987355"><div class="ttname"><a href="remmina__pref_8c.html#aed7f3859d4306419932df15131987355">remmina_pref_init_keymap</a></div><div class="ttdeci">static void remmina_pref_init_keymap(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00115">remmina_pref.c:115</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af348bb968fd98ba269c4e253750e2400"><div class="ttname"><a href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref::sshtunnel_port</a></div><div class="ttdeci">gint sshtunnel_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00145">remmina_pref.h:145</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a920221c2f304bfa278d0944bbbb6e011"><div class="ttname"><a href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">_RemminaPref::datadir_path</a></div><div class="ttdeci">const gchar * datadir_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00113">remmina_pref.h:113</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8c109e8479617a5e6da0fcaccf511c60"><div class="ttname"><a href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref::color15</a></div><div class="ttdeci">gchar * color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00108">remmina_pref.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8e90ea1299ef641fbef1495f899cf97"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref::color11</a></div><div class="ttdeci">gchar * color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00104">remmina_pref.h:104</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a0dd25f5b3a055b936a5fa327bc71f19c"><div class="ttname"><a href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a></div><div class="ttdeci">gboolean remmina_pref_is_rw(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00697">remmina_pref.c:697</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="struct___remmina_pref_html_a85e3d3ef34fb8969211860df159a04d8"><div class="ttname"><a href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref::color_pref</a></div><div class="ttdeci">RemminaColorPref color_pref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00197">remmina_pref.h:197</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a58fce08bda1efaeefd8b65f6463f67c6"><div class="ttname"><a href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref::periodic_rmnews_last_get</a></div><div class="ttdeci">glong periodic_rmnews_last_get</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00206">remmina_pref.h:206</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aeb86dc8005c98ce2eab57bd900467875"><div class="ttname"><a href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">_RemminaPref::main_height</a></div><div class="ttdeci">gint main_height</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00180">remmina_pref.h:180</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ad6424eb32c9549eb3e26f167dc58c218"><div class="ttname"><a href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a></div><div class="ttdeci">void remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00183">remmina_pref.c:183</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4eb866c8e08104362aa51f14f5894e51"><div class="ttname"><a href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref::shortcutkey_viewonly</a></div><div class="ttdeci">guint shortcutkey_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00159">remmina_pref.h:159</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4a74d72f34e960155c489e0f91574d2b"><div class="ttname"><a href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref::fullscreen_on_auto</a></div><div class="ttdeci">gboolean fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00130">remmina_pref.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aad6660781f636788d5f05b3bac85d676"><div class="ttname"><a href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref::save_view_mode</a></div><div class="ttdeci">gboolean save_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00118">remmina_pref.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa4a65b76fbdc0b3e97d3046f0b48e1ff"><div class="ttname"><a href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref::color1</a></div><div class="ttdeci">gchar * color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00094">remmina_pref.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a97ad6670df5c399df233f0a74f5c148f"><div class="ttname"><a href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref::fullscreen_toolbar_visibility</a></div><div class="ttdeci">gint fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00136">remmina_pref.h:136</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a1a695b64e75d6f49de220dc777e57714"><div class="ttname"><a href="remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_usrtimeout(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01020">remmina_pref.c:1020</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a5ed143a13f2a3393e44fd5b2c4fee4be"><div class="ttname"><a href="remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepidle(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01002">remmina_pref.c:1002</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ad7040b17df053835bfb21eb24ae10414"><div class="ttname"><a href="remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepintvl(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01008">remmina_pref.c:1008</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref_8c.html">remmina_pref.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref_8h.html b/docs/remmina__pref_8h.html
new file mode 100644
index 000000000..7e9901e7a
--- /dev/null
+++ b/docs/remmina__pref_8h.html
@@ -0,0 +1,902 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_pref.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__pref_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html">_RemminaColorPref</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html">_RemminaPref</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a058ab9dfe6100245f7c578c2e41d5970"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_color_pref.html">_RemminaColorPref</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a></td></tr>
+<tr class="separator:a058ab9dfe6100245f7c578c2e41d5970"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e34cf29f6a4bff2d79cf621b5370c3b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_pref.html">_RemminaPref</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a></td></tr>
+<tr class="separator:a4e34cf29f6a4bff2d79cf621b5370c3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aabfcbcb5ac86a1edac4035264bc7d2b8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>,
+<a class="el" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a>
+ }</td></tr>
+<tr class="separator:aabfcbcb5ac86a1edac4035264bc7d2b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d76b81b0ad4c19007a781d4edb8181f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a> = 0,
+<a class="el" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a> = 1
+ }</td></tr>
+<tr class="separator:a5d76b81b0ad4c19007a781d4edb8181f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac34dfe6c6b73b43a4656c9dce041034"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a> = 0,
+<a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a> = 1,
+<a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3">FULLSCREEN_MODE</a> = 2,
+<a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a> = 3,
+<br />
+&#160;&#160;<a class="el" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a> = 4
+<br />
+ }</td></tr>
+<tr class="separator:aac34dfe6c6b73b43a4656c9dce041034"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ed680fdb405e7195d9f14032851eebb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a> = 0,
+<a class="el" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a> = 1
+ }</td></tr>
+<tr class="separator:a0ed680fdb405e7195d9f14032851eebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0944a4353780132eeab7b06e3e42291d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a> = 0,
+<a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a> = 1,
+<a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a> = 2,
+<a class="el" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a> = 3
+ }</td></tr>
+<tr class="separator:a0944a4353780132eeab7b06e3e42291d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4790f45dcc812c1b00184a2edccdddf5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a> = 0,
+<a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a> = 1,
+<a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">REMMINA_TAB_ALL</a> = 2,
+<a class="el" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">REMMINA_TAB_NONE</a> = 3
+ }</td></tr>
+<tr class="separator:a4790f45dcc812c1b00184a2edccdddf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4caf8d8f829279fba122163d961608a4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">FLOATING_TOOLBAR_VISIBILITY_PEEKING</a> = 0,
+<a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">FLOATING_TOOLBAR_VISIBILITY_INVISIBLE</a> = 1,
+<a class="el" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">FLOATING_TOOLBAR_VISIBILITY_DISABLE</a> = 2
+ }</td></tr>
+<tr class="separator:a4caf8d8f829279fba122163d961608a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a400f7319fd3996a13399ef72bcf0a2fd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a> (void)</td></tr>
+<tr class="separator:a400f7319fd3996a13399ef72bcf0a2fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dd25f5b3a055b936a5fa327bc71f19c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a> (void)</td></tr>
+<tr class="separator:a0dd25f5b3a055b936a5fa327bc71f19c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae17aaf37449083a4322b6748c8f3a39f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a> (void)</td></tr>
+<tr class="separator:ae17aaf37449083a4322b6748c8f3a39f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9e75c6bf39aa93a87d421fc3d742d60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a> (const gchar *protocol, const gchar *server)</td></tr>
+<tr class="separator:ab9e75c6bf39aa93a87d421fc3d742d60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0208d5dc8197423da67e5967aafb7a05"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a> (const gchar *protocol)</td></tr>
+<tr class="separator:a0208d5dc8197423da67e5967aafb7a05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3b15f811daf0aaf8bacd67f1b47aa14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a> (void)</td></tr>
+<tr class="separator:ac3b15f811daf0aaf8bacd67f1b47aa14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaac087c000b0863a296f2739f6344af8"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a> (const gchar *keymap, guint keyval)</td></tr>
+<tr class="separator:aaac087c000b0863a296f2739f6344af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a745bbef1d48a7462f8db997821742395"><td class="memItemLeft" align="right" valign="top">gchar **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a> (void)</td></tr>
+<tr class="separator:a745bbef1d48a7462f8db997821742395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37cd589f00c94cb28eabb1bce4646d0b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a> (void)</td></tr>
+<tr class="separator:a37cd589f00c94cb28eabb1bce4646d0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e52ee4ab89912280605e36ee069267"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a> (void)</td></tr>
+<tr class="separator:a12e52ee4ab89912280605e36ee069267"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98b783e4c5c1dae695fe554f52f94a23"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a> (void)</td></tr>
+<tr class="separator:a98b783e4c5c1dae695fe554f52f94a23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6982152fd0492586819ce1760a853e99"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a> (void)</td></tr>
+<tr class="separator:a6982152fd0492586819ce1760a853e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6424eb32c9549eb3e26f167dc58c218"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a> (GKeyFile *gkeyfile, <a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a> *color_pref)</td></tr>
+<tr class="separator:ad6424eb32c9549eb3e26f167dc58c218"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ed143a13f2a3393e44fd5b2c4fee4be"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a> (void)</td></tr>
+<tr class="separator:a5ed143a13f2a3393e44fd5b2c4fee4be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7040b17df053835bfb21eb24ae10414"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a> (void)</td></tr>
+<tr class="separator:ad7040b17df053835bfb21eb24ae10414"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a781431450dfcf639c8dd96701be3795b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a> (void)</td></tr>
+<tr class="separator:a781431450dfcf639c8dd96701be3795b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a695b64e75d6f49de220dc777e57714"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a> (void)</td></tr>
+<tr class="separator:a1a695b64e75d6f49de220dc777e57714"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fbb2aff07d1fef416352d8b80d79e02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a> (const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a4fbb2aff07d1fef416352d8b80d79e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a> (const gchar *key)</td></tr>
+<tr class="separator:a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a8d02227eb703bccc3f9296a5d89d6f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a> (const gchar *key)</td></tr>
+<tr class="separator:a9a8d02227eb703bccc3f9296a5d89d6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a316f4290c083d28bd3492ee979278290"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a></td></tr>
+<tr class="separator:a316f4290c083d28bd3492ee979278290"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af657fd4825d16d8d003a8b42fbd0c715"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a></td></tr>
+<tr class="separator:af657fd4825d16d8d003a8b42fbd0c715"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94d3cf980275b6e9b0c701972f8b1cce"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a></td></tr>
+<tr class="separator:a94d3cf980275b6e9b0c701972f8b1cce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29701ae152ba15f6d8921f395174d2df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a></td></tr>
+<tr class="separator:a29701ae152ba15f6d8921f395174d2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a058ab9dfe6100245f7c578c2e41d5970"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a058ab9dfe6100245f7c578c2e41d5970">&#9670;&nbsp;</a></span>RemminaColorPref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_color_pref.html">_RemminaColorPref</a> <a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4e34cf29f6a4bff2d79cf621b5370c3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4e34cf29f6a4bff2d79cf621b5370c3b">&#9670;&nbsp;</a></span>RemminaPref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_pref.html">_RemminaPref</a> <a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="aabfcbcb5ac86a1edac4035264bc7d2b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aabfcbcb5ac86a1edac4035264bc7d2b8">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7"></a>REMMINA_VIEW_FILE_LIST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df"></a>REMMINA_VIEW_FILE_TREE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00045">45</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d76b81b0ad4c19007a781d4edb8181f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d76b81b0ad4c19007a781d4edb8181f">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a"></a>REMMINA_ACTION_CONNECT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3"></a>REMMINA_ACTION_EDIT&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aac34dfe6c6b73b43a4656c9dce041034"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac34dfe6c6b73b43a4656c9dce041034">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f"></a>UNDEFINED_MODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a"></a>SCROLLED_WINDOW_MODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3"></a>FULLSCREEN_MODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e"></a>SCROLLED_FULLSCREEN_MODE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955"></a>VIEWPORT_FULLSCREEN_MODE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a0ed680fdb405e7195d9f14032851eebb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ed680fdb405e7195d9f14032851eebb">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796"></a>FLOATING_TOOLBAR_PLACEMENT_TOP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d"></a>FLOATING_TOOLBAR_PLACEMENT_BOTTOM&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a0944a4353780132eeab7b06e3e42291d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0944a4353780132eeab7b06e3e42291d">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f"></a>TOOLBAR_PLACEMENT_TOP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27"></a>TOOLBAR_PLACEMENT_RIGHT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076"></a>TOOLBAR_PLACEMENT_BOTTOM&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf"></a>TOOLBAR_PLACEMENT_LEFT&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4790f45dcc812c1b00184a2edccdddf5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4790f45dcc812c1b00184a2edccdddf5">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33"></a>REMMINA_TAB_BY_GROUP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558"></a>REMMINA_TAB_BY_PROTOCOL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9"></a>REMMINA_TAB_ALL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631"></a>REMMINA_TAB_NONE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00075">75</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4caf8d8f829279fba122163d961608a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4caf8d8f829279fba122163d961608a4">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e"></a>FLOATING_TOOLBAR_VISIBILITY_PEEKING&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc"></a>FLOATING_TOOLBAR_VISIBILITY_INVISIBLE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c"></a>FLOATING_TOOLBAR_VISIBILITY_DISABLE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00082">82</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab9e75c6bf39aa93a87d421fc3d742d60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9e75c6bf39aa93a87d421fc3d742d60">&#9670;&nbsp;</a></span>remmina_pref_add_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_add_recent </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00842">842</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3b15f811daf0aaf8bacd67f1b47aa14"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3b15f811daf0aaf8bacd67f1b47aa14">&#9670;&nbsp;</a></span>remmina_pref_clear_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_clear_recent </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00902">902</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6424eb32c9549eb3e26f167dc58c218"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6424eb32c9549eb3e26f167dc58c218">&#9670;&nbsp;</a></span>remmina_pref_file_load_colors()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_file_load_colors </td>
+ <td>(</td>
+ <td class="paramtype">GKeyFile *&#160;</td>
+ <td class="paramname"><em>gkeyfile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a> *&#160;</td>
+ <td class="paramname"><em>color_pref</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00183">183</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a8d02227eb703bccc3f9296a5d89d6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a8d02227eb703bccc3f9296a5d89d6f">&#9670;&nbsp;</a></span>remmina_pref_get_boolean()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_get_boolean </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01057">1057</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a0208d5dc8197423da67e5967aafb7a05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0208d5dc8197423da67e5967aafb7a05">&#9670;&nbsp;</a></span>remmina_pref_get_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_get_recent </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>protocol</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00883">883</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a37cd589f00c94cb28eabb1bce4646d0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37cd589f00c94cb28eabb1bce4646d0b">&#9670;&nbsp;</a></span>remmina_pref_get_scale_quality()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_scale_quality </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00974">974</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a12e52ee4ab89912280605e36ee069267"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12e52ee4ab89912280605e36ee069267">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_loglevel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_loglevel </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00984">984</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a98b783e4c5c1dae695fe554f52f94a23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98b783e4c5c1dae695fe554f52f94a23">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_parseconfig()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_get_ssh_parseconfig </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00990">990</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a781431450dfcf639c8dd96701be3795b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a781431450dfcf639c8dd96701be3795b">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepcnt()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepcnt </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01014">1014</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ed143a13f2a3393e44fd5b2c4fee4be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ed143a13f2a3393e44fd5b2c4fee4be">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepidle()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepidle </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01002">1002</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ad7040b17df053835bfb21eb24ae10414"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7040b17df053835bfb21eb24ae10414">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_keepintvl()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_keepintvl </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01008">1008</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a1a695b64e75d6f49de220dc777e57714"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a695b64e75d6f49de220dc777e57714">&#9670;&nbsp;</a></span>remmina_pref_get_ssh_tcp_usrtimeout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_ssh_tcp_usrtimeout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01020">1020</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a6982152fd0492586819ce1760a853e99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6982152fd0492586819ce1760a853e99">&#9670;&nbsp;</a></span>remmina_pref_get_sshtunnel_port()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_pref_get_sshtunnel_port </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00996">996</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a6bcbf4cc3a58ed4ee9f087b4270d8fd6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">&#9670;&nbsp;</a></span>remmina_pref_get_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_get_value </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01043">1043</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a400f7319fd3996a13399ef72bcf0a2fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a400f7319fd3996a13399ef72bcf0a2fd">&#9670;&nbsp;</a></span>remmina_pref_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00221">221</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a0dd25f5b3a055b936a5fa327bc71f19c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dd25f5b3a055b936a5fa327bc71f19c">&#9670;&nbsp;</a></span>remmina_pref_is_rw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_is_rw </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00697">697</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="aaac087c000b0863a296f2739f6344af8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaac087c000b0863a296f2739f6344af8">&#9670;&nbsp;</a></span>remmina_pref_keymap_get_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_pref_keymap_get_keyval </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00931">931</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a745bbef1d48a7462f8db997821742395"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a745bbef1d48a7462f8db997821742395">&#9670;&nbsp;</a></span>remmina_pref_keymap_groups()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar** remmina_pref_keymap_groups </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00951">951</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="ae17aaf37449083a4322b6748c8f3a39f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae17aaf37449083a4322b6748c8f3a39f">&#9670;&nbsp;</a></span>remmina_pref_save()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_pref_save </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00707">707</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fbb2aff07d1fef416352d8b80d79e02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fbb2aff07d1fef416352d8b80d79e02">&#9670;&nbsp;</a></span>remmina_pref_set_value()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_set_value </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l01026">1026</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a316f4290c083d28bd3492ee979278290"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a316f4290c083d28bd3492ee979278290">&#9670;&nbsp;</a></span>default_resolutions</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* default_resolutions</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__pref_8c_source.html">remmina_pref.c</a>.</p>
+
+</div>
+</div>
+<a id="a94d3cf980275b6e9b0c701972f8b1cce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94d3cf980275b6e9b0c701972f8b1cce">&#9670;&nbsp;</a></span>remmina_colors_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_colors_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a29701ae152ba15f6d8921f395174d2df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29701ae152ba15f6d8921f395174d2df">&#9670;&nbsp;</a></span>remmina_pref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a> remmina_pref</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00073">73</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="af657fd4825d16d8d003a8b42fbd0c715"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af657fd4825d16d8d003a8b42fbd0c715">&#9670;&nbsp;</a></span>remmina_pref_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_pref_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00072">72</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref_8h.html">remmina_pref.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref_8h.js b/docs/remmina__pref_8h.js
new file mode 100644
index 000000000..62103bb3b
--- /dev/null
+++ b/docs/remmina__pref_8h.js
@@ -0,0 +1,53 @@
+var remmina__pref_8h =
+[
+ [ "_RemminaColorPref", "struct___remmina_color_pref.html", "struct___remmina_color_pref" ],
+ [ "_RemminaPref", "struct___remmina_pref.html", "struct___remmina_pref" ],
+ [ "RemminaColorPref", "remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970", null ],
+ [ "RemminaPref", "remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b", null ],
+ [ "REMMINA_VIEW_FILE_LIST", "remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7", null ],
+ [ "REMMINA_VIEW_FILE_TREE", "remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df", null ],
+ [ "REMMINA_ACTION_CONNECT", "remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a", null ],
+ [ "REMMINA_ACTION_EDIT", "remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3", null ],
+ [ "UNDEFINED_MODE", "remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f", null ],
+ [ "SCROLLED_WINDOW_MODE", "remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a", null ],
+ [ "FULLSCREEN_MODE", "remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3", null ],
+ [ "SCROLLED_FULLSCREEN_MODE", "remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e", null ],
+ [ "VIEWPORT_FULLSCREEN_MODE", "remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955", null ],
+ [ "FLOATING_TOOLBAR_PLACEMENT_TOP", "remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796", null ],
+ [ "FLOATING_TOOLBAR_PLACEMENT_BOTTOM", "remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d", null ],
+ [ "TOOLBAR_PLACEMENT_TOP", "remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f", null ],
+ [ "TOOLBAR_PLACEMENT_RIGHT", "remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27", null ],
+ [ "TOOLBAR_PLACEMENT_BOTTOM", "remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076", null ],
+ [ "TOOLBAR_PLACEMENT_LEFT", "remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf", null ],
+ [ "REMMINA_TAB_BY_GROUP", "remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33", null ],
+ [ "REMMINA_TAB_BY_PROTOCOL", "remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558", null ],
+ [ "REMMINA_TAB_ALL", "remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9", null ],
+ [ "REMMINA_TAB_NONE", "remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631", null ],
+ [ "FLOATING_TOOLBAR_VISIBILITY_PEEKING", "remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e", null ],
+ [ "FLOATING_TOOLBAR_VISIBILITY_INVISIBLE", "remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc", null ],
+ [ "FLOATING_TOOLBAR_VISIBILITY_DISABLE", "remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c", null ],
+ [ "remmina_pref_add_recent", "remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60", null ],
+ [ "remmina_pref_clear_recent", "remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14", null ],
+ [ "remmina_pref_file_load_colors", "remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218", null ],
+ [ "remmina_pref_get_boolean", "remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f", null ],
+ [ "remmina_pref_get_recent", "remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05", null ],
+ [ "remmina_pref_get_scale_quality", "remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b", null ],
+ [ "remmina_pref_get_ssh_loglevel", "remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267", null ],
+ [ "remmina_pref_get_ssh_parseconfig", "remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23", null ],
+ [ "remmina_pref_get_ssh_tcp_keepcnt", "remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b", null ],
+ [ "remmina_pref_get_ssh_tcp_keepidle", "remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be", null ],
+ [ "remmina_pref_get_ssh_tcp_keepintvl", "remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414", null ],
+ [ "remmina_pref_get_ssh_tcp_usrtimeout", "remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714", null ],
+ [ "remmina_pref_get_sshtunnel_port", "remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99", null ],
+ [ "remmina_pref_get_value", "remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6", null ],
+ [ "remmina_pref_init", "remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd", null ],
+ [ "remmina_pref_is_rw", "remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c", null ],
+ [ "remmina_pref_keymap_get_keyval", "remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8", null ],
+ [ "remmina_pref_keymap_groups", "remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395", null ],
+ [ "remmina_pref_save", "remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f", null ],
+ [ "remmina_pref_set_value", "remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02", null ],
+ [ "default_resolutions", "remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290", null ],
+ [ "remmina_colors_file", "remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce", null ],
+ [ "remmina_pref", "remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df", null ],
+ [ "remmina_pref_file", "remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__pref_8h_source.html b/docs/remmina__pref_8h_source.html
new file mode 100644
index 000000000..ec4d7664e
--- /dev/null
+++ b/docs/remmina__pref_8h_source.html
@@ -0,0 +1,249 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_pref.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__pref_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> * Remmina Preference Loader</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7"> 46</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df"> 47</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a"> 51</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a> = 0,</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3"> 52</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a> = 1</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;};</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f"> 56</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a> = 0,</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a"> 57</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a> = 1,</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3"> 58</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3">FULLSCREEN_MODE</a> = 2,</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e"> 59</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</a> = 3,</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955"> 60</a></span>&#160; <a class="code" href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</a> = 4</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796"> 64</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a> = 0,</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d"> 65</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a> = 1</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"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f"> 69</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a> = 0,</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27"> 70</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a> = 1,</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076"> 71</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a> = 2,</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf"> 72</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a> = 3</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;};</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33"> 76</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a> = 0,</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558"> 77</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a> = 1,</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9"> 78</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">REMMINA_TAB_ALL</a> = 2,</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631"> 79</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">REMMINA_TAB_NONE</a> = 3</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;};</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e"> 83</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">FLOATING_TOOLBAR_VISIBILITY_PEEKING</a> = 0,</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc"> 84</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">FLOATING_TOOLBAR_VISIBILITY_INVISIBLE</a> = 1, <span class="comment">//&quot;Invisible&quot; corresponds to the &quot;Hidden&quot; option in the drop-down</span></div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c"> 85</a></span>&#160; <a class="code" href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">FLOATING_TOOLBAR_VISIBILITY_DISABLE</a> = 2</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;};</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"><a class="line" href="struct___remmina_color_pref.html"> 88</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_color_pref.html">_RemminaColorPref</a> {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">/* Color palette for VTE terminal */</span></div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49"> 90</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500"> 91</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867"> 92</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808"> 93</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff"> 94</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4"> 95</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316"> 96</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914"> 97</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60"> 98</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9"> 99</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7"> 100</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4"> 101</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc"> 102</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a>;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c"> 103</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97"> 104</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928"> 105</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc"> 106</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79"> 107</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a>;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60"> 108</a></span>&#160; gchar * <a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;} <a class="code" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a>;</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="struct___remmina_pref.html"> 111</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_pref.html">_RemminaPref</a> {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">/* In RemminaPrefDialog options tab */</span></div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011"> 113</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a>;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f"> 114</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c"> 115</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35"> 116</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6"> 117</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a>;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676"> 118</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a>;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4"> 119</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc"> 120</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651"> 121</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">unlock_repassword</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972"> 122</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef"> 123</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e"> 124</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c"> 125</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644"> 126</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a>;</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37"> 127</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65"> 128</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="comment">/* In RemminaPrefDialog appearance tab */</span></div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b"> 130</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9"> 131</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e"> 132</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101"> 133</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d"> 134</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a>;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468"> 135</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a>;</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f"> 136</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">/* In RemminaPrefDialog applet tab */</span></div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568"> 138</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a>;</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd"> 139</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a>;</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c"> 140</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f"> 141</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">/* In RemminaPrefDialog SSH Option tab */</span></div><div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001"> 143</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a>;</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7"> 144</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400"> 145</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203"> 146</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a>;</div><div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd"> 147</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a>;</div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f"> 148</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a>;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8"> 149</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">/* In RemminaPrefDialog keyboard tab */</span></div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797"> 151</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f"> 152</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a>;</div><div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47"> 153</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a>;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b"> 154</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a>;</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095"> 155</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a>;</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a"> 156</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">shortcutkey_dynres</a>;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765"> 157</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a>;</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc"> 158</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a>;</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51"> 159</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209"> 160</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a>;</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b"> 161</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a>;</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7"> 162</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a>;</div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b"> 163</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">/* In RemminaPrefDialog terminal tab */</span></div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b"> 165</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17"> 166</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a>;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22"> 167</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22">vte_system_colors</a>;</div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850"> 168</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457"> 169</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6"> 170</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad"> 171</a></span>&#160; guint <a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a>;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">/* In View menu */</span></div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd"> 173</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">hide_toolbar</a>;</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0"> 174</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a>;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1"> 175</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="comment">/* In tray icon */</span></div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792"> 177</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="comment">/* Auto */</span></div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222"> 179</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a>;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875"> 180</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a>;</div><div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6"> 181</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0"> 182</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a>;</div><div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4"> 183</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a>;</div><div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5"> 184</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a>;</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449"> 185</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a>;</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21"> 186</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133"> 187</a></span>&#160; gint <a class="code" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7"> 188</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a>;</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e"> 189</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">/* Crypto */</span></div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259"> 192</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="comment">/* UID */</span></div><div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f"> 195</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">uid</a>;</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"><a class="line" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8"> 197</a></span>&#160; <a class="code" href="struct___remmina_color_pref.html">RemminaColorPref</a> <a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="comment">/* Usage stats */</span></div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3"> 200</a></span>&#160; gboolean <a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a>;</div><div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736"> 201</a></span>&#160; glong <a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7"> 202</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>;</div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd"> 203</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd">last_success</a>;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="comment">/* Remmina news */</span></div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6"> 206</a></span>&#160; glong <a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a>;</div><div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005"> 207</a></span>&#160; glong <a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a>;</div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06"> 208</a></span>&#160; gchar * <a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a>;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;} <a class="code" href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a>;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="preprocessor">#define DEFAULT_SSH_PARSECONFIG TRUE</span></div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="preprocessor">#define DEFAULT_SSHTUNNEL_PORT 4732</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="preprocessor">#define DEFAULT_SSH_PORT 22</span></div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="preprocessor">#define DEFAULT_SSH_LOGLEVEL 1</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="preprocessor">#define SSH_SOCKET_TCP_KEEPIDLE 20</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="preprocessor">#define SSH_SOCKET_TCP_KEEPINTVL 10</span></div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="preprocessor">#define SSH_SOCKET_TCP_KEEPCNT 3</span></div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="preprocessor">#define SSH_SOCKET_TCP_USER_TIMEOUT 60000 // 60 seconds</span></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;<span class="keyword">extern</span> <span class="keyword">const</span> gchar *<a class="code" href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a>;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keyword">extern</span> gchar *<a class="code" href="remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715">remmina_pref_file</a>;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="keyword">extern</span> gchar *<a class="code" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct___remmina_pref.html">RemminaPref</a> <a class="code" href="remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>;</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;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;gboolean <a class="code" href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;gboolean <a class="code" href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a>(<span class="keyword">const</span> gchar *protocol, <span class="keyword">const</span> gchar *server);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;gchar *<a class="code" href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a>(<span class="keyword">const</span> gchar *protocol);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;guint <a class="code" href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a>(<span class="keyword">const</span> gchar *keymap, guint keyval);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;gchar **<a class="code" href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;gboolean <a class="code" href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a>(GKeyFile *gkeyfile, <a class="code" href="struct___remmina_color_pref.html">RemminaColorPref</a> *color_pref);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;gint <a class="code" href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;gint <a class="code" href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a>(<span class="keyword">const</span> gchar *key, <span class="keyword">const</span> gchar *value);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;gchar *<a class="code" href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="keyword">const</span> gchar *key);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;gboolean <a class="code" href="remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f">remmina_pref_get_boolean</a>(<span class="keyword">const</span> gchar *key);</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_pref_html_a10b1f3d9b49687c09ec5dd98a0577d7f"><div class="ttname"><a href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref::shortcutkey_fullscreen</a></div><div class="ttdeci">guint shortcutkey_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00152">remmina_pref.h:152</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html"><div class="ttname"><a href="struct___remmina_pref.html">_RemminaPref</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00111">remmina_pref.h:111</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac95fed56e8995e3361928ebf87505f21"><div class="ttname"><a href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">_RemminaPref::floating_toolbar_placement</a></div><div class="ttdeci">gint floating_toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00186">remmina_pref.h:186</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae293a1fa591d3db78bd587c5af9c9101"><div class="ttname"><a href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref::hide_searchbar</a></div><div class="ttdeci">gboolean hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00133">remmina_pref.h:133</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a9a8d02227eb703bccc3f9296a5d89d6f"><div class="ttname"><a href="remmina__pref_8h.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#l01057">remmina_pref.c:1057</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aac4f34f297a653052752b571777bc001"><div class="ttname"><a href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref::ssh_loglevel</a></div><div class="ttdeci">gint ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00143">remmina_pref.h:143</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a887cbbd379d159cd0ac1acea7173d07b"><div class="ttname"><a href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref::shortcutkey_minimize</a></div><div class="ttdeci">guint shortcutkey_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00161">remmina_pref.h:161</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a781431450dfcf639c8dd96701be3795b"><div class="ttname"><a href="remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b">remmina_pref_get_ssh_tcp_keepcnt</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepcnt(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01014">remmina_pref.c:1014</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_ac3b15f811daf0aaf8bacd67f1b47aa14"><div class="ttname"><a href="remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a></div><div class="ttdeci">void remmina_pref_clear_recent(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00902">remmina_pref.c:902</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a316f4290c083d28bd3492ee979278290"><div class="ttname"><a href="remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290">default_resolutions</a></div><div class="ttdeci">const gchar * default_resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00056">remmina_pref.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a57e104c8ff60943f4a03e2e15c6b2a22"><div class="ttname"><a href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22">_RemminaPref::vte_system_colors</a></div><div class="ttdeci">gboolean vte_system_colors</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00167">remmina_pref.h:167</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df"><div class="ttname"><a href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df">REMMINA_VIEW_FILE_TREE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00047">remmina_pref.h:47</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4fbb2aff07d1fef416352d8b80d79e02"><div class="ttname"><a href="remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02">remmina_pref_set_value</a></div><div class="ttdeci">void remmina_pref_set_value(const gchar *key, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01026">remmina_pref.c:1026</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#l00123">remmina_pref.h:123</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6ae707cecd1f6660d8e2168d7422b797"><div class="ttname"><a href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref::hostkey</a></div><div class="ttdeci">guint hostkey</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00151">remmina_pref.h:151</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a49c21f0374af5abd5c3034cbc665a17f"><div class="ttname"><a href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">_RemminaPref::uid</a></div><div class="ttdeci">gchar * uid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00195">remmina_pref.h:195</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a086c9b0fe4bcfe0e5349422d17886d65"><div class="ttname"><a href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref::keystrokes</a></div><div class="ttdeci">gchar * keystrokes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00128">remmina_pref.h:128</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2cc56c093d45511af91c6b05c522c45a"><div class="ttname"><a href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">_RemminaPref::shortcutkey_dynres</a></div><div class="ttdeci">guint shortcutkey_dynres</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00156">remmina_pref.h:156</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a400f7319fd3996a13399ef72bcf0a2fd"><div class="ttname"><a href="remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a></div><div class="ttdeci">void remmina_pref_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00221">remmina_pref.c:221</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b5f4704fb50b67ff1e3daaf7d7d3209"><div class="ttname"><a href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref::shortcutkey_screenshot</a></div><div class="ttdeci">guint shortcutkey_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00160">remmina_pref.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a45d70bbebf5163081d67df3dbb73cc1b"><div class="ttname"><a href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref::shortcutkey_prevtab</a></div><div class="ttdeci">guint shortcutkey_prevtab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00154">remmina_pref.h:154</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1d7deb091e0d51a8d7885ad9e22dc9a7"><div class="ttname"><a href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref::ssh_parseconfig</a></div><div class="ttdeci">gboolean ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00144">remmina_pref.h:144</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html"><div class="ttname"><a href="struct___remmina_color_pref.html">_RemminaColorPref</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00088">remmina_pref.h:88</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27">TOOLBAR_PLACEMENT_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00070">remmina_pref.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2a14fc38e73351f9009fe155dd859808"><div class="ttname"><a href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref::color0</a></div><div class="ttdeci">gchar * color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00093">remmina_pref.h:93</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a793ae9c3e2f88eed85551c85d6832ebd"><div class="ttname"><a href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref::ssh_tcp_keepintvl</a></div><div class="ttdeci">gint ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00147">remmina_pref.h:147</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#l00189">remmina_pref.h:189</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf">TOOLBAR_PLACEMENT_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00072">remmina_pref.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a4ad947d133d2aa2c94756aacb5031e79"><div class="ttname"><a href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref::color14</a></div><div class="ttdeci">gchar * color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00107">remmina_pref.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad4d1bd34e31b36bd9306d0a5770a4e8f"><div class="ttname"><a href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref::dark_tray_icon</a></div><div class="ttdeci">gboolean dark_tray_icon</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__pref_8h_html_a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f">TOOLBAR_PLACEMENT_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00069">remmina_pref.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ae26f55ce50c1485cda60106c5f24256c"><div class="ttname"><a href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref::color10</a></div><div class="ttdeci">gchar * color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00103">remmina_pref.h:103</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65a1f2b90d033425fd0c041fccae320c"><div class="ttname"><a href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref::auto_scroll_step</a></div><div class="ttdeci">gint auto_scroll_step</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00125">remmina_pref.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a579fae9094500d743c26d03f4c34d457"><div class="ttname"><a href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref::vte_shortcutkey_copy</a></div><div class="ttdeci">guint vte_shortcutkey_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00169">remmina_pref.h:169</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab0928bd64388cb1ced2f542d3b35019d"><div class="ttname"><a href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref::default_mode</a></div><div class="ttdeci">gint default_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00134">remmina_pref.h:134</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a3a897d3fdc112fd9f96d2363f4094fc4"><div class="ttname"><a href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref::color2</a></div><div class="ttdeci">gchar * color2</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="struct___remmina_pref_html_aeb4afc1d03afffed838149645eccc9dd"><div class="ttname"><a href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd">_RemminaPref::last_success</a></div><div class="ttdeci">gchar * last_success</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00203">remmina_pref.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae5c3a7fd35cc51f658dda67052440b47"><div class="ttname"><a href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref::shortcutkey_autofit</a></div><div class="ttdeci">guint shortcutkey_autofit</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__pref_8h_html_a0dd25f5b3a055b936a5fa327bc71f19c"><div class="ttname"><a href="remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a></div><div class="ttdeci">gboolean remmina_pref_is_rw(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00697">remmina_pref.c:697</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a99a34af002da68036758fab3ceb08259"><div class="ttname"><a href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">_RemminaPref::secret</a></div><div class="ttdeci">gchar * secret</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00192">remmina_pref.h:192</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aaac087c000b0863a296f2739f6344af8"><div class="ttname"><a href="remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8">remmina_pref_keymap_get_keyval</a></div><div class="ttdeci">guint remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00931">remmina_pref.c:931</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59d72ae63a434fbb978934e4592417c4"><div class="ttname"><a href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">_RemminaPref::use_master_password</a></div><div class="ttdeci">gboolean use_master_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00119">remmina_pref.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2ca13ee672a2536665f66d544753928"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref::color12</a></div><div class="ttdeci">gchar * color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00105">remmina_pref.h:105</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#l00179">remmina_pref.h:179</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076"><div class="ttname"><a href="remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076">TOOLBAR_PLACEMENT_BOTTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00071">remmina_pref.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a095f19f07c5ebeb47a89b1bfe23cc21e"><div class="ttname"><a href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">_RemminaPref::scale_quality</a></div><div class="ttdeci">gint scale_quality</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00124">remmina_pref.h:124</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae63c0c0ec8dbfe8bf665221868661b35"><div class="ttname"><a href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">_RemminaPref::deny_screenshot_clipboard</a></div><div class="ttdeci">gboolean deny_screenshot_clipboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00116">remmina_pref.h:116</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59eebf1d365ef192de8e14da2c381f37"><div class="ttname"><a href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref::resolutions</a></div><div class="ttdeci">gchar * resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00127">remmina_pref.h:127</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f">UNDEFINED_MODE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00056">remmina_pref.h:56</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955">VIEWPORT_FULLSCREEN_MODE</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="struct___remmina_pref_html_a9c5171c5d8a61cc48171065644613cad"><div class="ttname"><a href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref::vte_shortcutkey_select_all</a></div><div class="ttdeci">guint vte_shortcutkey_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00171">remmina_pref.h:171</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_ad6424eb32c9549eb3e26f167dc58c218"><div class="ttname"><a href="remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a></div><div class="ttdeci">void remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00183">remmina_pref.c:183</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_af657fd4825d16d8d003a8b42fbd0c715"><div class="ttname"><a href="remmina__pref_8h.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#l00072">rcw.c:72</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa495bd5170c952a7dccff4e2504f5867"><div class="ttname"><a href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref::foreground</a></div><div class="ttdeci">gchar * foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00092">remmina_pref.h:92</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a675a8004488715429fa540dffb330d49"><div class="ttname"><a href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref::background</a></div><div class="ttdeci">gchar * background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00090">remmina_pref.h:90</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#l00183">remmina_pref.h:183</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d">FLOATING_TOOLBAR_PLACEMENT_BOTTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00065">remmina_pref.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a52f5fa8b2b4500c3ab9ae35f0d410f17"><div class="ttname"><a href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref::vte_allow_bold_text</a></div><div class="ttdeci">gboolean vte_allow_bold_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00166">remmina_pref.h:166</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_afcd157a6f3bddb4b23b4e328cd18358c"><div class="ttname"><a href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref::disable_tray_icon</a></div><div class="ttdeci">gboolean disable_tray_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00140">remmina_pref.h:140</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5ae99dc78a80baa14e0407983077c500"><div class="ttname"><a href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref::cursor</a></div><div class="ttdeci">gchar * cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00091">remmina_pref.h:91</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab78e34f426da9a37b467efbdf2183644"><div class="ttname"><a href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">_RemminaPref::recent_maximum</a></div><div class="ttdeci">gint recent_maximum</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00126">remmina_pref.h:126</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4e34cf29f6a4bff2d79cf621b5370c3b"><div class="ttname"><a href="remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b">RemminaPref</a></div><div class="ttdeci">struct _RemminaPref RemminaPref</div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc">FLOATING_TOOLBAR_VISIBILITY_INVISIBLE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00084">remmina_pref.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac342b87e3992a20833d39e864e8ab85b"><div class="ttname"><a href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref::vte_font</a></div><div class="ttdeci">gchar * vte_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00165">remmina_pref.h:165</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a3df98a686c4e2703455c1a786d3f1f5c"><div class="ttname"><a href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref::screenshot_path</a></div><div class="ttdeci">const gchar * screenshot_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00115">remmina_pref.h:115</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a37cd589f00c94cb28eabb1bce4646d0b"><div class="ttname"><a href="remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b">remmina_pref_get_scale_quality</a></div><div class="ttdeci">gint remmina_pref_get_scale_quality(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00974">remmina_pref.c:974</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33">REMMINA_TAB_BY_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00076">remmina_pref.h:76</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a745bbef1d48a7462f8db997821742395"><div class="ttname"><a href="remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395">remmina_pref_keymap_groups</a></div><div class="ttdeci">gchar ** remmina_pref_keymap_groups(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00951">remmina_pref.c:951</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aef2fe0f203dd68ed30d12e3b22a4f972"><div class="ttname"><a href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref::unlock_timeout</a></div><div class="ttdeci">gint unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00122">remmina_pref.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_affa1d02e2b0d9f6fc7b006fd74a52ad7"><div class="ttname"><a href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref::periodic_usage_stats_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_usage_stats_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00202">remmina_pref.h:202</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a0242e9fcc63d6d24257f63fc23077133"><div class="ttname"><a href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">_RemminaPref::toolbar_placement</a></div><div class="ttdeci">gint toolbar_placement</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00187">remmina_pref.h:187</a></div></div>
+<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#l00188">remmina_pref.h:188</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#l00184">remmina_pref.h:184</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a87044f758cc0e9c975b02c3f94147e06"><div class="ttname"><a href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">_RemminaPref::periodic_rmnews_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_rmnews_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00208">remmina_pref.h:208</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65b01db52636d3fb896cd8a5c68eb2fc"><div class="ttname"><a href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">_RemminaPref::unlock_password</a></div><div class="ttdeci">const gchar * unlock_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00120">remmina_pref.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a901034949132f369eb34c4f1ded3a0a6"><div class="ttname"><a href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref::vte_shortcutkey_paste</a></div><div class="ttdeci">guint vte_shortcutkey_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00170">remmina_pref.h:170</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a17bfba7a11836808719d33d5f6edbdc7"><div class="ttname"><a href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref::shortcutkey_disconnect</a></div><div class="ttdeci">guint shortcutkey_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00162">remmina_pref.h:162</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad92d70d47d7ad80298efe591955fa8b8"><div class="ttname"><a href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref::ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint ssh_tcp_usrtimeout</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="struct___remmina_color_pref_html_a24a8c38ab11389b860d0658812ff7bbc"><div class="ttname"><a href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref::color13</a></div><div class="ttdeci">gchar * color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00106">remmina_pref.h:106</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7"><div class="ttname"><a href="remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7">REMMINA_VIEW_FILE_LIST</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00046">remmina_pref.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a293541cc884cabe4f9b2b3181b3ea9c0"><div class="ttname"><a href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">_RemminaPref::small_toolbutton</a></div><div class="ttdeci">gboolean small_toolbutton</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00174">remmina_pref.h:174</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a363642437f5920c93fe35c07ef3601cc"><div class="ttname"><a href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref::shortcutkey_grab</a></div><div class="ttdeci">guint shortcutkey_grab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00158">remmina_pref.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6d77a2663675f01670ed7cc2f14e39c9"><div class="ttname"><a href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref::always_show_tab</a></div><div class="ttdeci">gboolean always_show_tab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00131">remmina_pref.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a62b161b504422d53a766abb3444f8449"><div class="ttname"><a href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">_RemminaPref::toolbar_pin_down</a></div><div class="ttdeci">gboolean toolbar_pin_down</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00185">remmina_pref.h:185</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac13f1310a2625b29defdf5b0ba8fd2d0"><div class="ttname"><a href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">_RemminaPref::main_sort_column_id</a></div><div class="ttdeci">gint main_sort_column_id</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00182">remmina_pref.h:182</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2859598ef2f87afb5a970a197a503765"><div class="ttname"><a href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref::shortcutkey_scale</a></div><div class="ttdeci">guint shortcutkey_scale</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00157">remmina_pref.h:157</a></div></div>
+<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#l00181">remmina_pref.h:181</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac001e6ac3d70ae6adca7d918898a9651"><div class="ttname"><a href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">_RemminaPref::unlock_repassword</a></div><div class="ttdeci">const gchar * unlock_repassword</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00121">remmina_pref.h:121</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_ad7040b17df053835bfb21eb24ae10414"><div class="ttname"><a href="remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414">remmina_pref_get_ssh_tcp_keepintvl</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepintvl(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01008">remmina_pref.c:1008</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b13dc96ccf8ebad045f02c58eb1d005"><div class="ttname"><a href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref::periodic_rmnews_get_count</a></div><div class="ttdeci">glong periodic_rmnews_get_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00207">remmina_pref.h:207</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3"><div class="ttname"><a href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3">REMMINA_ACTION_EDIT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00052">remmina_pref.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558">REMMINA_TAB_BY_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00077">remmina_pref.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8ae5e31836066ac69f7c907f30d2ffc"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref::color9</a></div><div class="ttdeci">gchar * color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00102">remmina_pref.h:102</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2d0facd5a0480a450d525ce9ef4fed60"><div class="ttname"><a href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref::color5</a></div><div class="ttdeci">gchar * color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00098">remmina_pref.h:98</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#l00175">remmina_pref.h:175</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a1d9bd13f411189c9d8d8a08ceb77e8d7"><div class="ttname"><a href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref::color7</a></div><div class="ttdeci">gchar * color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00100">remmina_pref.h:100</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c">FLOATING_TOOLBAR_VISIBILITY_DISABLE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00085">remmina_pref.h:85</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9">REMMINA_TAB_ALL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00078">remmina_pref.h:78</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a98b783e4c5c1dae695fe554f52f94a23"><div class="ttname"><a href="remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23">remmina_pref_get_ssh_parseconfig</a></div><div class="ttdeci">gboolean remmina_pref_get_ssh_parseconfig(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00990">remmina_pref.c:990</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a712773f926eb2ec030d6af80cdc33095"><div class="ttname"><a href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref::shortcutkey_nexttab</a></div><div class="ttdeci">guint shortcutkey_nexttab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00155">remmina_pref.h:155</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_acee9d7384a5e3949df53cdf54390bbcd"><div class="ttname"><a href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref::applet_hide_count</a></div><div class="ttdeci">gboolean applet_hide_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00139">remmina_pref.h:139</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2bf96a40b9f63300d02e158b26546203"><div class="ttname"><a href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref::ssh_tcp_keepidle</a></div><div class="ttdeci">gint ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00146">remmina_pref.h:146</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aecbe4c6a13ec6eda818c9f74c6f63468"><div class="ttname"><a href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref::tab_mode</a></div><div class="ttdeci">gint tab_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00135">remmina_pref.h:135</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a8cbf300dc913d51365c93f928e0d02fd"><div class="ttname"><a href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">_RemminaPref::hide_toolbar</a></div><div class="ttdeci">gboolean hide_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00173">remmina_pref.h:173</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8d7f02ac9b6890ad675b702708bc4af9"><div class="ttname"><a href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref::color6</a></div><div class="ttdeci">gchar * color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00099">remmina_pref.h:99</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a6982152fd0492586819ce1760a853e99"><div class="ttname"><a href="remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99">remmina_pref_get_sshtunnel_port</a></div><div class="ttdeci">gint remmina_pref_get_sshtunnel_port(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00996">remmina_pref.c:996</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_abbd08ed0c74b8f216e633aae6b141792"><div class="ttname"><a href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">_RemminaPref::applet_enable_avahi</a></div><div class="ttdeci">gboolean applet_enable_avahi</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00177">remmina_pref.h:177</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa1544a98f03088dc260ed98f2deac94f"><div class="ttname"><a href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref::remmina_file_name</a></div><div class="ttdeci">const gchar * remmina_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00114">remmina_pref.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af9c8b60418a9dc795230e4ebb084f850"><div class="ttname"><a href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref::vte_lines</a></div><div class="ttdeci">gint vte_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00168">remmina_pref.h:168</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e"><div class="ttname"><a href="remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e">FLOATING_TOOLBAR_VISIBILITY_PEEKING</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00083">remmina_pref.h:83</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a29701ae152ba15f6d8921f395174d2df"><div class="ttname"><a href="remmina__pref_8h.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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2b41853bdaaefa3968017819c19d316"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref::color3</a></div><div class="ttdeci">gchar * color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00096">remmina_pref.h:96</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e">SCROLLED_FULLSCREEN_MODE</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="struct___remmina_pref_html_aa3dc5f8676c4747f2fcaf9a68d16d11b"><div class="ttname"><a href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref::shortcutkey_toolbar</a></div><div class="ttdeci">guint shortcutkey_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00163">remmina_pref.h:163</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a1a695b64e75d6f49de220dc777e57714"><div class="ttname"><a href="remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714">remmina_pref_get_ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_usrtimeout(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01020">remmina_pref.c:1020</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a5ed143a13f2a3393e44fd5b2c4fee4be"><div class="ttname"><a href="remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be">remmina_pref_get_ssh_tcp_keepidle</a></div><div class="ttdeci">gint remmina_pref_get_ssh_tcp_keepidle(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01002">remmina_pref.c:1002</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5d92875f0034e5fc3d360d97d5992bd4"><div class="ttname"><a href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref::color8</a></div><div class="ttdeci">gchar * color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00101">remmina_pref.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad9fb2bee26f8054c373fbc6ad0ccf736"><div class="ttname"><a href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">_RemminaPref::periodic_usage_stats_last_sent</a></div><div class="ttdeci">glong periodic_usage_stats_last_sent</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00201">remmina_pref.h:201</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a"><div class="ttname"><a href="remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a">REMMINA_ACTION_CONNECT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00051">remmina_pref.h:51</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a94d3cf980275b6e9b0c701972f8b1cce"><div class="ttname"><a href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a></div><div class="ttdeci">gchar * remmina_colors_file</div></div>
+<div class="ttc" id="struct___remmina_pref_html_a082f698b8aa7cec3c1cb0fd987d4358f"><div class="ttname"><a href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref::ssh_tcp_keepcnt</a></div><div class="ttdeci">gint ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00148">remmina_pref.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a999b74e3aab2e7fbc4431e803511b568"><div class="ttname"><a href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref::applet_new_ontop</a></div><div class="ttdeci">gboolean applet_new_ontop</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00138">remmina_pref.h:138</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae2267a1de362addcee0c5801612dc5d6"><div class="ttname"><a href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref::screenshot_name</a></div><div class="ttdeci">const gchar * screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00117">remmina_pref.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_afa7c4748f22173796b35d1d50b6c1914"><div class="ttname"><a href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref::color4</a></div><div class="ttdeci">gchar * color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00097">remmina_pref.h:97</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796"><div class="ttname"><a href="remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796">FLOATING_TOOLBAR_PLACEMENT_TOP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00064">remmina_pref.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9258f6c3c18f14b4abb148aa43e6bc0e"><div class="ttname"><a href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref::hide_connection_toolbar</a></div><div class="ttdeci">gboolean hide_connection_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00132">remmina_pref.h:132</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3">FULLSCREEN_MODE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00058">remmina_pref.h:58</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a"><div class="ttname"><a href="remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a">SCROLLED_WINDOW_MODE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00057">remmina_pref.h:57</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631"><div class="ttname"><a href="remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631">REMMINA_TAB_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00079">remmina_pref.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af348bb968fd98ba269c4e253750e2400"><div class="ttname"><a href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref::sshtunnel_port</a></div><div class="ttdeci">gint sshtunnel_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00145">remmina_pref.h:145</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a920221c2f304bfa278d0944bbbb6e011"><div class="ttname"><a href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">_RemminaPref::datadir_path</a></div><div class="ttdeci">const gchar * datadir_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00113">remmina_pref.h:113</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a0208d5dc8197423da67e5967aafb7a05"><div class="ttname"><a href="remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05">remmina_pref_get_recent</a></div><div class="ttdeci">gchar * remmina_pref_get_recent(const gchar *protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00883">remmina_pref.c:883</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8c109e8479617a5e6da0fcaccf511c60"><div class="ttname"><a href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref::color15</a></div><div class="ttdeci">gchar * color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00108">remmina_pref.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8e90ea1299ef641fbef1495f899cf97"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref::color11</a></div><div class="ttdeci">gchar * color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00104">remmina_pref.h:104</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_ab9e75c6bf39aa93a87d421fc3d742d60"><div class="ttname"><a href="remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60">remmina_pref_add_recent</a></div><div class="ttdeci">void remmina_pref_add_recent(const gchar *protocol, const gchar *server)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00842">remmina_pref.c:842</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a85e3d3ef34fb8969211860df159a04d8"><div class="ttname"><a href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref::color_pref</a></div><div class="ttdeci">RemminaColorPref color_pref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00197">remmina_pref.h:197</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a58fce08bda1efaeefd8b65f6463f67c6"><div class="ttname"><a href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref::periodic_rmnews_last_get</a></div><div class="ttdeci">glong periodic_rmnews_last_get</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00206">remmina_pref.h:206</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aeb86dc8005c98ce2eab57bd900467875"><div class="ttname"><a href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">_RemminaPref::main_height</a></div><div class="ttdeci">gint main_height</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00180">remmina_pref.h:180</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4eb866c8e08104362aa51f14f5894e51"><div class="ttname"><a href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref::shortcutkey_viewonly</a></div><div class="ttdeci">guint shortcutkey_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00159">remmina_pref.h:159</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a058ab9dfe6100245f7c578c2e41d5970"><div class="ttname"><a href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a></div><div class="ttdeci">struct _RemminaColorPref RemminaColorPref</div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4a74d72f34e960155c489e0f91574d2b"><div class="ttname"><a href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref::fullscreen_on_auto</a></div><div class="ttdeci">gboolean fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00130">remmina_pref.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aad6660781f636788d5f05b3bac85d676"><div class="ttname"><a href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref::save_view_mode</a></div><div class="ttdeci">gboolean save_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00118">remmina_pref.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa4a65b76fbdc0b3e97d3046f0b48e1ff"><div class="ttname"><a href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref::color1</a></div><div class="ttdeci">gchar * color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00094">remmina_pref.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a97ad6670df5c399df233f0a74f5c148f"><div class="ttname"><a href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref::fullscreen_toolbar_visibility</a></div><div class="ttdeci">gint fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00136">remmina_pref.h:136</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a12e52ee4ab89912280605e36ee069267"><div class="ttname"><a href="remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267">remmina_pref_get_ssh_loglevel</a></div><div class="ttdeci">gint remmina_pref_get_ssh_loglevel(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00984">remmina_pref.c:984</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref_8h.html">remmina_pref.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref__dialog_8c.html b/docs/remmina__pref__dialog_8c.html
new file mode 100644
index 000000000..f9778f298
--- /dev/null
+++ b/docs/remmina__pref__dialog_8c.html
@@ -0,0 +1,631 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref_dialog.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref__dialog_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_pref_dialog.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__pref__dialog_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7576b68fbb2a0497d7ac51eb0633e877"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877">remmina_pref_dialog_on_key_chooser</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a7576b68fbb2a0497d7ac51eb0633e877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b3f23a900c8f07814fd0fb26f29e5f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f">remmina_pref_on_button_resolutions_clicked</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:ad4b3f23a900c8f07814fd0fb26f29e5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50dcebddc0891688ae179ba940d21fd1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1">remmina_pref_on_color_scheme_selected</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a50dcebddc0891688ae179ba940d21fd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a470290d26c88259265912a3e0018b662"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662">remmina_pref_dialog_clear_recent</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a470290d26c88259265912a3e0018b662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c5f28eea2fe32297da5f7833df7b131"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131">remmina_pref_on_button_keystrokes_clicked</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a0c5f28eea2fe32297da5f7833df7b131"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ba9bbbff353b8e36810d423e6f7e8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a> (GtkEditable *editable, <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *dialog)</td></tr>
+<tr class="separator:a19ba9bbbff353b8e36810d423e6f7e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc2763311ece7ab6b505d4ec56391f69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69">remmina_pref_dialog_on_close_clicked</a> (GtkWidget *widget, <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *dialog)</td></tr>
+<tr class="separator:adc2763311ece7ab6b505d4ec56391f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9776574663e2c3fcb793ec70887336d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d">remmina_pref_on_dialog_destroy</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:ab9776574663e2c3fcb793ec70887336d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add9c48bccc2c61be2f2900a154648dd4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog_add_pref_plugin</a> (gchar *name, <a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin, gpointer user_data)</td></tr>
+<tr class="separator:add9c48bccc2c61be2f2900a154648dd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a620e1cd173b0c970580c33397c076d6e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e">remmina_pref_dialog_vte_font_on_toggled</a> (GtkWidget *widget, <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *dialog)</td></tr>
+<tr class="separator:a620e1cd173b0c970580c33397c076d6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18bfbeb5d049a9f37f7624199b2b864a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a">remmina_pref_dialog_disable_tray_icon_on_toggled</a> (GtkWidget *widget, <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *dialog)</td></tr>
+<tr class="separator:a18bfbeb5d049a9f37f7624199b2b864a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a384dde55873f855555c0194d45cbfd59"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a> (GtkButton *button, guint keyval)</td></tr>
+<tr class="separator:a384dde55873f855555c0194d45cbfd59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a050b69e373c90ea7d400aa94f34344"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog_init</a> (void)</td></tr>
+<tr class="separator:a9a050b69e373c90ea7d400aa94f34344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16091735af5c6ee31fb794a5fb860342"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a> (gint default_tab, GtkWindow *parent)</td></tr>
+<tr class="separator:a16091735af5c6ee31fb794a5fb860342"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af87f153e3fc696f76da732d8e431be5a"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog_get_dialog</a> ()</td></tr>
+<tr class="separator:af87f153e3fc696f76da732d8e431be5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a2e3c32df32107ad3f4b9ea85fc001368"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368">remmina_pref_dialog</a></td></tr>
+<tr class="separator:a2e3c32df32107ad3f4b9ea85fc001368"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="add9c48bccc2c61be2f2900a154648dd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add9c48bccc2c61be2f2900a154648dd4">&#9670;&nbsp;</a></span>remmina_pref_dialog_add_pref_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_pref_dialog_add_pref_plugin </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *&#160;</td>
+ <td class="paramname"><em>plugin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00356">356</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a470290d26c88259265912a3e0018b662"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a470290d26c88259265912a3e0018b662">&#9670;&nbsp;</a></span>remmina_pref_dialog_clear_recent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_dialog_clear_recent </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00124">124</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a18bfbeb5d049a9f37f7624199b2b864a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18bfbeb5d049a9f37f7624199b2b864a">&#9670;&nbsp;</a></span>remmina_pref_dialog_disable_tray_icon_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_dialog_disable_tray_icon_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td>
+ <td class="paramname"><em>dialog</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00384">384</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="af87f153e3fc696f76da732d8e431be5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af87f153e3fc696f76da732d8e431be5a">&#9670;&nbsp;</a></span>remmina_pref_dialog_get_dialog()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_pref_dialog_get_dialog </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00726">726</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a050b69e373c90ea7d400aa94f34344"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a050b69e373c90ea7d400aa94f34344">&#9670;&nbsp;</a></span>remmina_pref_dialog_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_pref_dialog_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00405">405</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a16091735af5c6ee31fb794a5fb860342"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16091735af5c6ee31fb794a5fb860342">&#9670;&nbsp;</a></span>remmina_pref_dialog_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_pref_dialog_new </td>
+ <td>(</td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_tab</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00613">613</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="adc2763311ece7ab6b505d4ec56391f69"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc2763311ece7ab6b505d4ec56391f69">&#9670;&nbsp;</a></span>remmina_pref_dialog_on_close_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_dialog_on_close_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td>
+ <td class="paramname"><em>dialog</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00188">188</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a7576b68fbb2a0497d7ac51eb0633e877"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7576b68fbb2a0497d7ac51eb0633e877">&#9670;&nbsp;</a></span>remmina_pref_dialog_on_key_chooser()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_dialog_on_key_chooser </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a384dde55873f855555c0194d45cbfd59"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a384dde55873f855555c0194d45cbfd59">&#9670;&nbsp;</a></span>remmina_pref_dialog_set_button_label()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_pref_dialog_set_button_label </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00395">395</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a620e1cd173b0c970580c33397c076d6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a620e1cd173b0c970580c33397c076d6e">&#9670;&nbsp;</a></span>remmina_pref_dialog_vte_font_on_toggled()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_dialog_vte_font_on_toggled </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td>
+ <td class="paramname"><em>dialog</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00378">378</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a0c5f28eea2fe32297da5f7833df7b131"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c5f28eea2fe32297da5f7833df7b131">&#9670;&nbsp;</a></span>remmina_pref_on_button_keystrokes_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_on_button_keystrokes_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00138">138</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4b3f23a900c8f07814fd0fb26f29e5f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4b3f23a900c8f07814fd0fb26f29e5f">&#9670;&nbsp;</a></span>remmina_pref_on_button_resolutions_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_on_button_resolutions_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a50dcebddc0891688ae179ba940d21fd1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50dcebddc0891688ae179ba940d21fd1">&#9670;&nbsp;</a></span>remmina_pref_on_color_scheme_selected()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_on_color_scheme_selected </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00093">93</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="ab9776574663e2c3fcb793ec70887336d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9776574663e2c3fcb793ec70887336d">&#9670;&nbsp;</a></span>remmina_pref_on_dialog_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_pref_on_dialog_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00194">194</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a19ba9bbbff353b8e36810d423e6f7e8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19ba9bbbff353b8e36810d423e6f7e8f">&#9670;&nbsp;</a></span>remmina_prefdiag_unlock_repwd_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_prefdiag_unlock_repwd_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkEditable *&#160;</td>
+ <td class="paramname"><em>editable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td>
+ <td class="paramname"><em>dialog</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a2e3c32df32107ad3f4b9ea85fc001368"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e3c32df32107ad3f4b9ea85fc001368">&#9670;&nbsp;</a></span>remmina_pref_dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a>* remmina_pref_dialog</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref__dialog_8c.html">remmina_pref_dialog.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref__dialog_8c.js b/docs/remmina__pref__dialog_8c.js
new file mode 100644
index 000000000..d980002d2
--- /dev/null
+++ b/docs/remmina__pref__dialog_8c.js
@@ -0,0 +1,19 @@
+var remmina__pref__dialog_8c =
+[
+ [ "remmina_pref_dialog_add_pref_plugin", "remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4", null ],
+ [ "remmina_pref_dialog_clear_recent", "remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662", null ],
+ [ "remmina_pref_dialog_disable_tray_icon_on_toggled", "remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a", null ],
+ [ "remmina_pref_dialog_get_dialog", "remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a", null ],
+ [ "remmina_pref_dialog_init", "remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344", null ],
+ [ "remmina_pref_dialog_new", "remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342", null ],
+ [ "remmina_pref_dialog_on_close_clicked", "remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69", null ],
+ [ "remmina_pref_dialog_on_key_chooser", "remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877", null ],
+ [ "remmina_pref_dialog_set_button_label", "remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59", null ],
+ [ "remmina_pref_dialog_vte_font_on_toggled", "remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e", null ],
+ [ "remmina_pref_on_button_keystrokes_clicked", "remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131", null ],
+ [ "remmina_pref_on_button_resolutions_clicked", "remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f", null ],
+ [ "remmina_pref_on_color_scheme_selected", "remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1", null ],
+ [ "remmina_pref_on_dialog_destroy", "remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d", null ],
+ [ "remmina_prefdiag_unlock_repwd_on_changed", "remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f", null ],
+ [ "remmina_pref_dialog", "remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__pref__dialog_8c_source.html b/docs/remmina__pref__dialog_8c_source.html
new file mode 100644
index 000000000..4a0246f49
--- /dev/null
+++ b/docs/remmina__pref__dialog_8c_source.html
@@ -0,0 +1,316 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref_dialog.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref__dialog_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_pref_dialog.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__pref__dialog_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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;vte/vte.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 &quot;<a class="code" href="remmina__sodium_8h.html">remmina_sodium.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__public_8h.html">remmina_public.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__string__list_8h.html">remmina_string_list.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__widget__pool_8h.html">remmina_widget_pool.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__key__chooser_8h.html">remmina_key_chooser.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__plugin__manager_8h.html">remmina_plugin_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__icon_8h.html">remmina_icon.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__pref_8h.html">remmina_pref.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__pref__dialog_8h.html">remmina_pref_dialog.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368"> 55</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *<a class="code" href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368">remmina_pref_dialog</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define GET_OBJECT(object_name) gtk_builder_get_object(remmina_pref_dialog-&gt;builder, object_name)</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="comment">/* Show a key chooser dialog */</span></div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877"> 60</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877">remmina_pref_dialog_on_key_chooser</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="struct___remmina_key_chooser_arguments.html">RemminaKeyChooserArguments</a> *arguments;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; g_return_if_fail(GTK_IS_BUTTON(widget));</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"> 67</span>&#160; arguments = <a class="code" href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser_new</a>(GTK_WINDOW(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>), FALSE);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a> != GTK_RESPONSE_CANCEL &amp;&amp; arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a> != GTK_RESPONSE_DELETE_EVENT) {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; gchar *val = <a class="code" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a>(arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a>, arguments-&gt;<a class="code" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a>);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; gtk_button_set_label(GTK_BUTTON(widget), val);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; g_free(val);</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; g_free(arguments);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* Show the available resolutions list dialog */</span></div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f"> 77</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f">remmina_pref_on_button_resolutions_clicked</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; GtkDialog *dialog = <a class="code" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a>(FALSE, NULL);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a>(<a class="code" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a>);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>, TRUE);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a>(_(<span class="stringliteral">&quot;Resolutions&quot;</span>), _(<span class="stringliteral">&quot;Configure the available resolutions&quot;</span>));</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>));</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a>);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a> = <a class="code" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a>();</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;}</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;<span class="comment">/* Re-initialize the remmina_pref_init to reload the color scheme when a color scheme</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> * file is selected*/</span></div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1"> 93</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1">remmina_pref_on_color_scheme_selected</a>(GtkWidget *widget, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gchar *sourcepath;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; gchar *remmina_dir;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; gchar *destpath;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; GFile *source;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; GFile *destination;</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; sourcepath = gtk_file_chooser_get_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">button_term_cs</a>);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; source = g_file_new_for_path(sourcepath);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; remmina_dir = g_build_path( <span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">/* /home/foo/.config/remmina */</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; destpath = g_strdup_printf(<span class="stringliteral">&quot;%s/remmina.colors&quot;</span>, remmina_dir);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; destination = g_file_new_for_path(destpath);</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; <span class="keywordflow">if</span> (g_file_test(sourcepath, G_FILE_TEST_IS_REGULAR)) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; g_file_copy( source,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; destination,</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; G_FILE_COPY_OVERWRITE,</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; NULL,</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; NULL,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; NULL,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; NULL);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">/* Here we should reinitialize the widget */</span></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; g_free(sourcepath);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; g_object_unref(source);</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"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662"> 124</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662">remmina_pref_dialog_clear_recent</a>(GtkWidget *widget, gpointer user_data)</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"> 126</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; GtkDialog *dialog;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a>();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; dialog = GTK_DIALOG(gtk_message_dialog_new(GTK_WINDOW(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>),</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; _(<span class="stringliteral">&quot;Recent lists cleared.&quot;</span>)));</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment">/* Configure custom keystrokes to send to the plugins */</span></div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131"> 138</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131">remmina_pref_on_button_keystrokes_clicked</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;{</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; GtkDialog *dialog = <a class="code" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a>(TRUE, STRING_DELIMITOR2);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a>(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a>, TRUE);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a>(_(<span class="stringliteral">&quot;Keystrokes&quot;</span>), _(<span class="stringliteral">&quot;Configure the keystrokes&quot;</span>));</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(dialog), GTK_WINDOW(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>));</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gtk_dialog_run(dialog);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a>);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a> = <a class="code" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a>();</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; gtk_widget_destroy(GTK_WIDGET(dialog));</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f"> 151</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a>(GtkEditable* editable, <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *dialog)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; GtkCssProvider *provider;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">const</span> gchar *color;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> gchar *password;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> gchar *repassword;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; provider = gtk_css_provider_new();</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; password = gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; repassword = gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(password, repassword) == 0) {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; color = g_strdup(<span class="stringliteral">&quot;green&quot;</span>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; color = g_strdup(<span class="stringliteral">&quot;red&quot;</span>);</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;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (repassword == NULL || repassword[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; color = g_strdup(<span class="stringliteral">&quot;inherit&quot;</span>);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; gtk_css_provider_load_from_data(provider,</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_strdup_printf (</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="stringliteral">&quot;.unlock_repassword {\n&quot;</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="stringliteral">&quot; color: %s;\n&quot;</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="stringliteral">&quot;}\n&quot;</span></div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; , color)</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; , -1, NULL);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gtk_style_context_add_provider_for_screen(gdk_screen_get_default(),</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; GTK_STYLE_PROVIDER(provider),</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);</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; gtk_widget_queue_draw(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>));</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; g_object_unref(provider);</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;}</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69"> 188</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69">remmina_pref_dialog_on_close_clicked</a>(GtkWidget *widget, <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *dialog)</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;{</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; gtk_widget_destroy(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>));</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"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d"> 194</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d">remmina_pref_on_dialog_destroy</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;{</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; gboolean b;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; GdkRGBA color;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gboolean rebuild_remmina_icon = FALSE;</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; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> = gtk_file_chooser_get_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">filechooserbutton_options_datadir_path</a>);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</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#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> == NULL)</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> = g_strdup(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a> = gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a>);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> = gtk_file_chooser_get_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a> = gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a>);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a> = gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">switch_options_deny_screenshot_clipboard</a>));</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a> = gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">switch_options_remember_last_view_mode</a>));</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a> = gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>));</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">unlock_repassword</a> = gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">if</span> (gtk_entry_get_text_length(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>) != 0)</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a> = <a class="code" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a>(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>));</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> = gtk_file_chooser_get_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a>);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">checkbutton_appearance_fullscreen_on_auto</a>));</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">checkbutton_appearance_show_tabs</a>));</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">checkbutton_appearance_hide_toolbar</a>));</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">checkbutton_appearance_hide_searchbar</a>));</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"> 221</span>&#160; b = gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">switch_permit_send_stats</a>));</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> = b;</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; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">comboboxtext_options_double_click</a>);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">comboboxtext_appearance_view_mode</a>);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">comboboxtext_appearance_tab_interface</a>);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">comboboxtext_appearance_fullscreen_toolbar_visibility</a>);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">comboboxtext_options_scale_quality</a>);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a> = gtk_combo_box_get_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">comboboxtext_options_ssh_loglevel</a>);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">entry_options_ssh_port</a>));</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</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#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a> &lt;= 0)</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a> = DEFAULT_SSHTUNNEL_PORT;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">entry_options_ssh_tcp_keepidle</a>));</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</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#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a> &lt;= 0)</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a> = SSH_SOCKET_TCP_KEEPIDLE;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">entry_options_ssh_tcp_keepintvl</a>));</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</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#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a> &lt;= 0)</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a> = SSH_SOCKET_TCP_KEEPINTVL;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">entry_options_ssh_tcp_keepcnt</a>));</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</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#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a> &lt;= 0)</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a> = SSH_SOCKET_TCP_KEEPCNT;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">entry_options_ssh_tcp_usrtimeout</a>));</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</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#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a> &lt;= 0)</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a> = SSH_SOCKET_TCP_USER_TIMEOUT;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">checkbutton_options_ssh_parseconfig</a>));</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a>));</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</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#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a> &lt; 0)</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a> = 0;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="preprocessor">#endif</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; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">entry_options_scroll</a>));</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</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#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> &lt; 10)</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> = 10;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> &gt; 500)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a> = 500;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">entry_options_recent_items</a>));</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</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#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> &lt; 0)</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a> = 0;</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; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">checkbutton_applet_new_connection_on_top</a>));</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a> = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">checkbutton_applet_hide_totals</a>));</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; b = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">checkbutton_applet_light_tray</a>));</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</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#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a> != b) {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a> = b;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; rebuild_remmina_icon = TRUE;</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; b = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">checkbutton_applet_disable_tray</a>));</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</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#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a> != b) {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a> = b;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; rebuild_remmina_icon = TRUE;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">if</span> (b) {</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; b = FALSE;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; b = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a>));</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; <a class="code" href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a>(b);</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="keywordflow">if</span> (rebuild_remmina_icon) {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <a class="code" href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a>();</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a>();</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;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">button_keyboard_host_key</a>));</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">button_keyboard_fullscreen</a>));</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">button_keyboard_auto_fit</a>));</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">button_keyboard_switch_tab_left</a>));</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">button_keyboard_switch_tab_right</a>));</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">button_keyboard_scaled</a>));</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">button_keyboard_grab_keyboard</a>));</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">button_keyboard_screenshot</a>));</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">button_keyboard_viewonly</a>));</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">button_keyboard_minimize</a>));</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">button_keyboard_disconnect</a>));</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">button_keyboard_toolbar</a>));</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; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">if</span> (gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">switch_terminal_font_system</a>))) {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> = NULL;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> = g_strdup(gtk_font_chooser_get_font(GTK_FONT_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>)));</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; }</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a> = gtk_switch_get_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">switch_terminal_bold</a>));</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">colorbutton_foreground</a>), &amp;color);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">colorbutton_background</a>), &amp;color);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a>), &amp;color);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a>), &amp;color);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a>), &amp;color);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a>), &amp;color);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a>), &amp;color);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a>), &amp;color);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a>), &amp;color);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a>), &amp;color);</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a>), &amp;color);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a>), &amp;color);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a>), &amp;color);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a>), &amp;color);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a>), &amp;color);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a>), &amp;color);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a>), &amp;color);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a>), &amp;color);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; gtk_color_chooser_get_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a>), &amp;color);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a> = gdk_rgba_to_string(&amp;color);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a> = atoi(gtk_entry_get_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">entry_scrollback_lines</a>));</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">button_keyboard_copy</a>));</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">button_keyboard_paste</a>));</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a> = <a class="code" href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a>(gtk_button_get_label(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">button_keyboard_select_all</a>));</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <a class="code" href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a>();</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; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a> = NULL;</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"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4"> 356</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog_add_pref_plugin</a>(gchar *name, <a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *plugin, gpointer user_data)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;{</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <a class="code" href="struct___remmina_pref_plugin.html">RemminaPrefPlugin</a> *pref_plugin;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; GtkWidget *vbox;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; pref_plugin = (<a class="code" href="struct___remmina_pref_plugin.html">RemminaPrefPlugin</a>*)plugin;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; widget = gtk_label_new(pref_plugin-&gt;<a class="code" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">pref_label</a>);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gtk_widget_show(widget);</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"> 368</span>&#160; vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; gtk_widget_show(vbox);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; gtk_notebook_append_page(GTK_NOTEBOOK(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">notebook_preferences</a>), vbox, widget);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; widget = pref_plugin-&gt;<a class="code" href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989">get_pref_body</a>();</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), widget, FALSE, FALSE, 0);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;}</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e"> 378</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e">remmina_pref_dialog_vte_font_on_toggled</a>(GtkWidget *widget, <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *dialog)</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"> 380</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>), !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)));</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;}</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a"> 384</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a">remmina_pref_dialog_disable_tray_icon_on_toggled</a>(GtkWidget *widget, <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *dialog)</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;{</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; gboolean b;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; b = !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a>), b);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;}</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="comment">/* Helper function for remmina_pref_dialog_init() */</span></div><div class="line"><a name="l00395"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59"> 395</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(GtkButton *button, guint keyval)</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; gchar *val;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; val = <a class="code" href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a>(keyval, 0);</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; gtk_button_set_label(button, val);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; g_free(val);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;}</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="comment">/* Remmina preferences initialization */</span></div><div class="line"><a name="l00405"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344"> 405</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog_init</a>(<span class="keywordtype">void</span>)</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"> 407</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; gchar buf[100];</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; GdkRGBA color;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="preprocessor">#if !defined (HAVE_LIBSSH) || !defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; GtkWidget *align;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;<span class="preprocessor">#if !defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; align = GTK_WIDGET(GET_OBJECT(<span class="stringliteral">&quot;alignment_terminal&quot;</span>));</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gtk_widget_set_sensitive(align, FALSE);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="preprocessor">#if !defined (HAVE_LIBSSH)</span></div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; align = GTK_WIDGET(GET_OBJECT(<span class="stringliteral">&quot;alignment_ssh&quot;</span>));</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; gtk_widget_set_sensitive(align, FALSE);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; gtk_dialog_set_default_response(GTK_DIALOG(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>), GTK_RESPONSE_CLOSE);</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_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">switch_options_remember_last_view_mode</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a>);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a>);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</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#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a> != NULL) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a>);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>), TRUE);</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>), TRUE);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>), TRUE);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a>), TRUE);</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>), FALSE);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>), FALSE);</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="comment">// TRANSLATORS: Do not translate libsodium, is the name of a library</span></div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; gtk_widget_set_tooltip_text (GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>), _(<span class="stringliteral">&quot;libsodium &gt;= 1.9.0 is required to use master password&quot;</span>));</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>), FALSE);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>), FALSE);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a>), FALSE);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">switch_options_deny_screenshot_clipboard</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a>);</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">checkbutton_appearance_fullscreen_on_auto</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a>);</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">checkbutton_appearance_show_tabs</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a>);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">checkbutton_appearance_hide_toolbar</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a>);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">checkbutton_appearance_hide_searchbar</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="l00454"></a><span class="lineno"> 454</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">switch_permit_send_stats</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a>);</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; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">entry_options_ssh_port</a>, buf);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a>);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">entry_options_ssh_tcp_keepidle</a>, buf);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a>);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">entry_options_ssh_tcp_keepintvl</a>, buf);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a>);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">entry_options_ssh_tcp_keepcnt</a>, buf);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a>);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">entry_options_ssh_tcp_usrtimeout</a>, buf);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a>);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">entry_options_scroll</a>, buf);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a>);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">entry_options_recent_items</a>, buf);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">checkbutton_applet_new_connection_on_top</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a>);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">checkbutton_applet_hide_totals</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a>);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">checkbutton_applet_disable_tray</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">checkbutton_applet_light_tray</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a>);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a>), <a class="code" href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a>());</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a>), !<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a>);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">button_keyboard_host_key</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a>);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">button_keyboard_fullscreen</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a>);</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">button_keyboard_auto_fit</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a>);</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">button_keyboard_switch_tab_left</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a>);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">button_keyboard_switch_tab_right</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a>);</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">button_keyboard_scaled</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a>);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">button_keyboard_grab_keyboard</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a>);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">button_keyboard_screenshot</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a>);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">button_keyboard_viewonly</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a>);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">button_keyboard_minimize</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a>);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">button_keyboard_disconnect</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a>);</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">button_keyboard_toolbar</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a>);</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</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#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> &amp;&amp; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>[0])) {</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">switch_terminal_font_system</a>), TRUE);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; }</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</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#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> &amp;&amp; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>[0]) {</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; gtk_font_chooser_set_font(GTK_FONT_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; gtk_font_chooser_set_font(GTK_FONT_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>), <span class="stringliteral">&quot;Monospace 12&quot;</span>);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>), FALSE);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; }</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; gtk_switch_set_active(GTK_SWITCH(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">switch_terminal_bold</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a>);</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="comment">/* Foreground color option */</span></div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">colorbutton_foreground</a>), &amp;color);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="comment">/* Background color option */</span></div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">colorbutton_background</a>), &amp;color);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="comment">/* Cursor color option */</span></div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a>);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a>), &amp;color);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="comment">/* 16 colors */</span></div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a>);</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a>), &amp;color);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a>);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a>), &amp;color);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a>);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a>), &amp;color);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a>);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a>), &amp;color);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a>);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a>), &amp;color);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a>);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a>), &amp;color);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a>);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a>), &amp;color);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a>);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a>), &amp;color);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a>);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a>), &amp;color);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a>);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a>), &amp;color);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a>);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a>), &amp;color);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a>);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a>), &amp;color);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a>);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a>), &amp;color);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a>);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a>), &amp;color);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a>);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a>), &amp;color);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; gdk_rgba_parse(&amp;color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a>);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; gtk_color_chooser_set_rgba(GTK_COLOR_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a>), &amp;color);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;<span class="preprocessor">#if !VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="comment">/* Disable color scheme buttons if old version of VTE */</span></div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a>), FALSE);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a>), FALSE);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a>), FALSE);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a>), FALSE);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a>), FALSE);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a>), FALSE);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a>), FALSE);</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a>), FALSE);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a>), FALSE);</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a>), FALSE);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a>), FALSE);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a>), FALSE);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a>), FALSE);</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a>), FALSE);</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a>), FALSE);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a>), FALSE);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a>), FALSE);</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a>);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">entry_scrollback_lines</a>, buf);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a>);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a>, buf);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">comboboxtext_options_double_click</a>, <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="l00577"></a><span class="lineno"> 577</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">comboboxtext_appearance_view_mode</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a>);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">comboboxtext_appearance_tab_interface</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a>);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">comboboxtext_appearance_fullscreen_toolbar_visibility</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a>);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">comboboxtext_options_scale_quality</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a>);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; gtk_combo_box_set_active(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">comboboxtext_options_ssh_loglevel</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a>);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</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#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a> != NULL &amp;&amp; strlen(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a>) &gt; 0) {</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; gtk_file_chooser_set_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">filechooserbutton_options_datadir_path</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a>);</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; <span class="keywordflow">if</span> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a> != NULL) {</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a>);</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a>, <span class="stringliteral">&quot;%G_%P_%N_%h.remmina&quot;</span>);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; }</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</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#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a> != NULL) {</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; gtk_file_chooser_set_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a>);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; gtk_file_chooser_set_filename(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a>, g_get_home_dir());</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> (<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a> != NULL) {</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a>);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; gtk_entry_set_text(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a>, <span class="stringliteral">&quot;remmina_%p_%h_%Y%m%d-%H%M%S&quot;</span>);</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; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">checkbutton_options_ssh_parseconfig</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a>);</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; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">button_keyboard_copy</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a>);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">button_keyboard_paste</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a>);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a>(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">button_keyboard_select_all</a>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a>);</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; <a class="code" href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a>(<a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a>, <a class="code" href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog_add_pref_plugin</a>, remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>);</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; g_object_set_data(G_OBJECT(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>), <span class="stringliteral">&quot;tag&quot;</span>, <span class="stringliteral">&quot;remmina-pref-dialog&quot;</span>);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GTK_WIDGET(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>));</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;}</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;<span class="comment">/* RemminaPrefDialog instance */</span></div><div class="line"><a name="l00613"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a"> 613</a></span>&#160;GtkDialog* <a class="code" href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a>(gint default_tab, GtkWindow *parent)</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;{</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; TRACE_CALL(__func__);</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; remmina_pref_dialog = g_new0(<a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a>, 1);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">priv</a> = g_new0(<a class="code" href="struct___remmina_pref_dialog_priv.html">RemminaPrefDialogPriv</a>, 1);</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; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">builder</a> = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_preferences.glade&quot;</span>);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a> = GTK_DIALOG(gtk_builder_get_object(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">builder</a>, <span class="stringliteral">&quot;RemminaPrefDialog&quot;</span>));</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>), parent);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">notebook_preferences</a> = GTK_NOTEBOOK(GET_OBJECT(<span class="stringliteral">&quot;notebook_preferences&quot;</span>));</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">filechooserbutton_options_datadir_path</a> = GTK_FILE_CHOOSER(GET_OBJECT(<span class="stringliteral">&quot;filechooserbutton_options_datadir_path&quot;</span>));</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_file_name&quot;</span>));</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a> = GTK_FILE_CHOOSER(GET_OBJECT(<span class="stringliteral">&quot;filechooserbutton_options_screenshots_path&quot;</span>));</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_screenshot_name&quot;</span>));</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">switch_options_deny_screenshot_clipboard</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_options_deny_screenshot_clipboard&quot;</span>));</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">switch_options_remember_last_view_mode</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_options_remember_last_view_mode&quot;</span>));</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_security_use_master_password&quot;</span>));</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;unlock_password&quot;</span>));</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;unlock_repassword&quot;</span>));</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">checkbutton_options_save_settings</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_options_save_settings&quot;</span>));</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">checkbutton_appearance_fullscreen_on_auto</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_appearance_fullscreen_on_auto&quot;</span>));</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">checkbutton_appearance_show_tabs</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_appearance_show_tabs&quot;</span>));</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">checkbutton_appearance_hide_toolbar</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_appearance_hide_toolbar&quot;</span>));</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">checkbutton_appearance_hide_searchbar</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_appearance_hide_searchbar&quot;</span>));</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">switch_permit_send_stats</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_permit_send_stats&quot;</span>));</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">comboboxtext_options_double_click</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_options_double_click&quot;</span>));</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">comboboxtext_appearance_view_mode</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_appearance_view_mode&quot;</span>));</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">comboboxtext_appearance_tab_interface</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_appearance_tab_interface&quot;</span>));</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">comboboxtext_appearance_fullscreen_toolbar_visibility</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_appearance_fullscreen_toolbar_visibility&quot;</span>));</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">comboboxtext_options_scale_quality</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_options_scale_quality&quot;</span>));</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">checkbutton_options_ssh_parseconfig</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_options_ssh_parseconfig&quot;</span>));</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">comboboxtext_options_ssh_loglevel</a> = GTK_COMBO_BOX(GET_OBJECT(<span class="stringliteral">&quot;comboboxtext_options_ssh_loglevel&quot;</span>));</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">entry_options_ssh_port</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_ssh_port&quot;</span>));</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">entry_options_ssh_tcp_keepidle</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_ssh_tcp_keepidle&quot;</span>));</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">entry_options_ssh_tcp_keepintvl</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_ssh_tcp_keepintvl&quot;</span>));</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">entry_options_ssh_tcp_keepcnt</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_ssh_tcp_keepcnt&quot;</span>));</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">entry_options_ssh_tcp_usrtimeout</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_ssh_tcp_usrtimeout&quot;</span>));</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">entry_options_scroll</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_scroll&quot;</span>));</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">entry_options_recent_items</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_options_recent_items&quot;</span>));</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">button_options_recent_items_clear</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_options_recent_items_clear&quot;</span>));</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;unlock_timeout&quot;</span>));</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; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">checkbutton_applet_new_connection_on_top</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_applet_new_connection_on_top&quot;</span>));</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">checkbutton_applet_hide_totals</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_applet_hide_totals&quot;</span>));</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">checkbutton_applet_disable_tray</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_applet_disable_tray&quot;</span>));</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">checkbutton_applet_light_tray</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_applet_light_tray&quot;</span>));</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a> = GTK_CHECK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;checkbutton_applet_start_in_tray&quot;</span>));</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">button_keyboard_host_key</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_host_key&quot;</span>));</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">button_keyboard_fullscreen</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_fullscreen&quot;</span>));</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">button_keyboard_auto_fit</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_auto_fit&quot;</span>));</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">button_keyboard_switch_tab_left</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_switch_tab_left&quot;</span>));</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">button_keyboard_switch_tab_right</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_switch_tabright&quot;</span>));</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">button_keyboard_scaled</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_scaled&quot;</span>));</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">button_keyboard_grab_keyboard</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_grab_keyboard&quot;</span>));</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">button_keyboard_screenshot</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_screenshot&quot;</span>));</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">button_keyboard_viewonly</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_viewonly&quot;</span>));</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">button_keyboard_minimize</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_minimize&quot;</span>));</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">button_keyboard_disconnect</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_disconnect&quot;</span>));</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">button_keyboard_toolbar</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_toolbar&quot;</span>));</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">switch_terminal_font_system</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_terminal_font_system&quot;</span>));</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a> = GTK_FONT_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;fontbutton_terminal_font&quot;</span>));</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">switch_terminal_bold</a> = GTK_SWITCH(GET_OBJECT(<span class="stringliteral">&quot;switch_terminal_bold&quot;</span>));</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">entry_scrollback_lines</a> = GTK_ENTRY(GET_OBJECT(<span class="stringliteral">&quot;entry_scrollback_lines&quot;</span>));</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">button_keyboard_copy</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_copy&quot;</span>));</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">button_keyboard_paste</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_paste&quot;</span>));</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">button_keyboard_select_all</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_keyboard_select_all&quot;</span>));</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">label_terminal_foreground</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_terminal_foreground&quot;</span>));</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">colorbutton_foreground</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_foreground&quot;</span>));</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">label_terminal_background</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_terminal_background&quot;</span>));</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">colorbutton_background</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_background&quot;</span>));</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">label_terminal_cursor_color</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_terminal_cursor_color&quot;</span>));</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_cursor&quot;</span>));</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">label_terminal_normal_colors</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_terminal_normal_colors&quot;</span>));</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color0&quot;</span>));</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color1&quot;</span>));</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color2&quot;</span>));</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color3&quot;</span>));</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color4&quot;</span>));</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color5&quot;</span>));</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color6&quot;</span>));</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color7&quot;</span>));</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">label_terminal_bright_colors</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_terminal_bright_colors&quot;</span>));</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color8&quot;</span>));</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color9&quot;</span>));</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color10&quot;</span>));</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color11&quot;</span>));</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color12&quot;</span>));</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color13&quot;</span>));</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color14&quot;</span>));</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a> = GTK_COLOR_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;colorbutton_color15&quot;</span>));</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">button_term_cs</a> = GTK_FILE_CHOOSER(GET_OBJECT(<span class="stringliteral">&quot;button_term_cs&quot;</span>));</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; gtk_file_chooser_set_current_folder( GTK_FILE_CHOOSER(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">button_term_cs</a>), REMMINA_RUNTIME_TERM_CS_DIR);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; gtk_builder_connect_signals(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">builder</a>, NULL);</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="comment">/* Initialize the window and load the preferences */</span></div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <a class="code" href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog_init</a>();</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordflow">if</span> (default_tab &gt; 0)</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; gtk_notebook_set_current_page(remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">notebook_preferences</a>, default_tab);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">return</span> remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;}</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4"> 726</a></span>&#160;GtkDialog* <a class="code" href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog_get_dialog</a>()</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; <span class="keywordflow">if</span> (!remmina_pref_dialog)</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keywordflow">return</span> remmina_pref_dialog-&gt;<a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;}</div><div class="ttc" id="struct___remmina_pref_html_a10b1f3d9b49687c09ec5dd98a0577d7f"><div class="ttname"><a href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">_RemminaPref::shortcutkey_fullscreen</a></div><div class="ttdeci">guint shortcutkey_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00152">remmina_pref.h:152</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a11147c41297537effe55f18a63ce9f7e"><div class="ttname"><a href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a></div><div class="ttdeci">GtkDialog * remmina_string_list_new(gboolean two_columns, const gchar *fields_separator)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00281">remmina_string_list.c:281</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae293a1fa591d3db78bd587c5af9c9101"><div class="ttname"><a href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">_RemminaPref::hide_searchbar</a></div><div class="ttdeci">gboolean hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00133">remmina_pref.h:133</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_afccd66623eb7bb1ec233a241e97e80f0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">_RemminaPrefDialog::button_keyboard_select_all</a></div><div class="ttdeci">GtkButton * button_keyboard_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00113">remmina_pref_dialog.h:113</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_add9c48bccc2c61be2f2900a154648dd4"><div class="ttname"><a href="remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4">remmina_pref_dialog_add_pref_plugin</a></div><div class="ttdeci">static gboolean remmina_pref_dialog_add_pref_plugin(gchar *name, RemminaPlugin *plugin, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00356">remmina_pref_dialog.c:356</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a95129b25f045ca6f0bc90323b755aebb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">_RemminaPrefDialog::colorbutton_color2</a></div><div class="ttdeci">GtkColorButton * colorbutton_color2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00120">remmina_pref_dialog.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aac4f34f297a653052752b571777bc001"><div class="ttname"><a href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref::ssh_loglevel</a></div><div class="ttdeci">gint ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00143">remmina_pref.h:143</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a887cbbd379d159cd0ac1acea7173d07b"><div class="ttname"><a href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">_RemminaPref::shortcutkey_minimize</a></div><div class="ttdeci">guint shortcutkey_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00161">remmina_pref.h:161</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html"><div class="ttname"><a href="remmina__sodium_8h.html">remmina_sodium.h</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="struct___remmina_pref_dialog_html_a4b8e7072d5c4b5c8b5e57714130f973d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">_RemminaPrefDialog::colorbutton_color14</a></div><div class="ttdeci">GtkColorButton * colorbutton_color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00132">remmina_pref_dialog.h:132</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a8f34c1336ad9efc4679c6e449bec7a97"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">_RemminaPrefDialog::button_keyboard_grab_keyboard</a></div><div class="ttdeci">GtkButton * button_keyboard_grab_keyboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00096">remmina_pref_dialog.h:96</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_a9e8586623c819a2e24b6d7b1d3efde94"><div class="ttname"><a href="remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94">remmina_key_chooser_new</a></div><div class="ttdeci">RemminaKeyChooserArguments * remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00057">remmina_key_chooser.c:57</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a384dde55873f855555c0194d45cbfd59"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59">remmina_pref_dialog_set_button_label</a></div><div class="ttdeci">static void remmina_pref_dialog_set_button_label(GtkButton *button, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00395">remmina_pref_dialog.c:395</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#l00123">remmina_pref.h:123</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7af362b8421b6f066d4d9d737a01ebfb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">_RemminaPrefDialog::comboboxtext_appearance_fullscreen_toolbar_visibility</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00072">remmina_pref_dialog.h:72</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#l00248">remmina_string_list.c:248</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af0b14d180d9dcabf9e79b98094bbae74"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">_RemminaPrefDialog::button_keyboard_paste</a></div><div class="ttdeci">GtkButton * button_keyboard_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00112">remmina_pref_dialog.h:112</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6ae707cecd1f6660d8e2168d7422b797"><div class="ttname"><a href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">_RemminaPref::hostkey</a></div><div class="ttdeci">guint hostkey</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00151">remmina_pref.h:151</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a086c9b0fe4bcfe0e5349422d17886d65"><div class="ttname"><a href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">_RemminaPref::keystrokes</a></div><div class="ttdeci">gchar * keystrokes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00128">remmina_pref.h:128</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a159eb84f43ce9ed81b92b6e260839af6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">_RemminaPrefDialog::button_options_recent_items_clear</a></div><div class="ttdeci">GtkButton * button_options_recent_items_clear</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00081">remmina_pref_dialog.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6e763bfa2b2c507744f4773cd81f3571"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">_RemminaPrefDialog::entry_options_screenshot_name</a></div><div class="ttdeci">GtkEntry * entry_options_screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00054">remmina_pref_dialog.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b5f4704fb50b67ff1e3daaf7d7d3209"><div class="ttname"><a href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">_RemminaPref::shortcutkey_screenshot</a></div><div class="ttdeci">guint shortcutkey_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00160">remmina_pref.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a45d70bbebf5163081d67df3dbb73cc1b"><div class="ttname"><a href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">_RemminaPref::shortcutkey_prevtab</a></div><div class="ttdeci">guint shortcutkey_prevtab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00154">remmina_pref.h:154</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1d7deb091e0d51a8d7885ad9e22dc9a7"><div class="ttname"><a href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref::ssh_parseconfig</a></div><div class="ttdeci">gboolean ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00144">remmina_pref.h:144</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a9a050b69e373c90ea7d400aa94f34344"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344">remmina_pref_dialog_init</a></div><div class="ttdeci">static void remmina_pref_dialog_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00405">remmina_pref_dialog.c:405</a></div></div>
+<div class="ttc" id="remmina__plugin__manager_8c_html_a13f13a6a4280268656f258cb5aeff031"><div class="ttname"><a href="remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031">remmina_plugin_manager_for_each_plugin</a></div><div class="ttdeci">void remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__plugin__manager_8c_source.html#l00388">remmina_plugin_manager.c:388</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a5d87faf3df58b2fc1e09a33fd07c4d0c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">_RemminaPrefDialog::entry_options_file_name</a></div><div class="ttdeci">GtkEntry * entry_options_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00052">remmina_pref_dialog.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad87514b86ed3f9b5980bf6c565343b87"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">_RemminaPrefDialog::checkbutton_appearance_fullscreen_on_auto</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00062">remmina_pref_dialog.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a341e052b4a78587530b63975b7edc92d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">_RemminaPrefDialog::label_terminal_foreground</a></div><div class="ttdeci">GtkLabel * label_terminal_foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00106">remmina_pref_dialog.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2a14fc38e73351f9009fe155dd859808"><div class="ttname"><a href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref::color0</a></div><div class="ttdeci">gchar * color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00093">remmina_pref.h:93</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a793ae9c3e2f88eed85551c85d6832ebd"><div class="ttname"><a href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref::ssh_tcp_keepintvl</a></div><div class="ttdeci">gint ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00147">remmina_pref.h:147</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a33d785a31072bb4ce865ae048cc14fc2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">_RemminaPrefDialog::button_keyboard_fullscreen</a></div><div class="ttdeci">GtkButton * button_keyboard_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00091">remmina_pref_dialog.h:91</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a691d1ca711b31813c15a58e18161b989"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989">_RemminaPrefPlugin::get_pref_body</a></div><div class="ttdeci">GtkWidget *(* get_pref_body)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00126">plugin.h:126</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a26ad416987608d6c6f0a98ba9d611119"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">_RemminaPrefDialog::checkbutton_options_save_settings</a></div><div class="ttdeci">GtkCheckButton * checkbutton_options_save_settings</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00061">remmina_pref_dialog.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a4ad947d133d2aa2c94756aacb5031e79"><div class="ttname"><a href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref::color14</a></div><div class="ttdeci">gchar * color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00107">remmina_pref.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa8077d5e8254495ddee87c6baafb07a5"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">_RemminaPrefDialog::button_keyboard_toolbar</a></div><div class="ttdeci">GtkButton * button_keyboard_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00101">remmina_pref_dialog.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad4d1bd34e31b36bd9306d0a5770a4e8f"><div class="ttname"><a href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">_RemminaPref::dark_tray_icon</a></div><div class="ttdeci">gboolean dark_tray_icon</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="struct___remmina_color_pref_html_ae26f55ce50c1485cda60106c5f24256c"><div class="ttname"><a href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref::color10</a></div><div class="ttdeci">gchar * color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00103">remmina_pref.h:103</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="struct___remmina_pref_dialog_html_ae6eb4e606ae2e199435754728d723ce1"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">_RemminaPrefDialog::button_keyboard_disconnect</a></div><div class="ttdeci">GtkButton * button_keyboard_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00100">remmina_pref_dialog.h:100</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65a1f2b90d033425fd0c041fccae320c"><div class="ttname"><a href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref::auto_scroll_step</a></div><div class="ttdeci">gint auto_scroll_step</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00125">remmina_pref.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a85b8819ff553f86a5ad8f7fd1a7aa531"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">_RemminaPrefDialog::entry_options_recent_items</a></div><div class="ttdeci">GtkEntry * entry_options_recent_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00080">remmina_pref_dialog.h:80</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a579fae9094500d743c26d03f4c34d457"><div class="ttname"><a href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref::vte_shortcutkey_copy</a></div><div class="ttdeci">guint vte_shortcutkey_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00169">remmina_pref.h:169</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a9e7984859dc88bab77503b175fc4d8c7"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">_RemminaPrefDialog::entry_options_ssh_tcp_usrtimeout</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_usrtimeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00078">remmina_pref_dialog.h:78</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a18bfbeb5d049a9f37f7624199b2b864a"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a">remmina_pref_dialog_disable_tray_icon_on_toggled</a></div><div class="ttdeci">void remmina_pref_dialog_disable_tray_icon_on_toggled(GtkWidget *widget, RemminaPrefDialog *dialog)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00384">remmina_pref_dialog.c:384</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab0928bd64388cb1ced2f542d3b35019d"><div class="ttname"><a href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">_RemminaPref::default_mode</a></div><div class="ttdeci">gint default_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00134">remmina_pref.h:134</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a098786d3aa6991aeba43a61e29d534d0"><div class="ttname"><a href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a></div><div class="ttdeci">gboolean remmina_public_resolution_validation_func(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00603">remmina_public.c:603</a></div></div>
+<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="struct___remmina_color_pref_html_a3a897d3fdc112fd9f96d2363f4094fc4"><div class="ttname"><a href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref::color2</a></div><div class="ttdeci">gchar * color2</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__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6a01f6f8247a97a94b8855902a14a980"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">_RemminaPrefDialog::switch_terminal_bold</a></div><div class="ttdeci">GtkSwitch * switch_terminal_bold</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00105">remmina_pref_dialog.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae5c3a7fd35cc51f658dda67052440b47"><div class="ttname"><a href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">_RemminaPref::shortcutkey_autofit</a></div><div class="ttdeci">guint shortcutkey_autofit</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="struct___remmina_pref_dialog_html_a9088c8f060e1fe7e12445fb2f9b99bc3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">_RemminaPrefDialog::colorbutton_color6</a></div><div class="ttdeci">GtkColorButton * colorbutton_color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00124">remmina_pref_dialog.h:124</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8h_html"><div class="ttname"><a href="remmina__key__chooser_8h.html">remmina_key_chooser.h</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_af80ed314f91d653237249d839c7fc3b2"><div class="ttname"><a href="remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2">remmina_icon_populate_menu</a></div><div class="ttdeci">void remmina_icon_populate_menu(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00264">remmina_icon.c:264</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a62227d6671d78e7387e727c92d79c92e"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">_RemminaPrefDialog::label_terminal_normal_colors</a></div><div class="ttdeci">GtkLabel * label_terminal_normal_colors</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00115">remmina_pref_dialog.h:115</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59d72ae63a434fbb978934e4592417c4"><div class="ttname"><a href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">_RemminaPref::use_master_password</a></div><div class="ttdeci">gboolean use_master_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00119">remmina_pref.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7ab49071b369069912565f3e0a8b000b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">_RemminaPrefDialog::switch_options_remember_last_view_mode</a></div><div class="ttdeci">GtkSwitch * switch_options_remember_last_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00056">remmina_pref_dialog.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af3997f4513793f2b6ba71a54c55c78bb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">_RemminaPrefDialog::fontbutton_terminal_font</a></div><div class="ttdeci">GtkFontButton * fontbutton_terminal_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00104">remmina_pref_dialog.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2ca13ee672a2536665f66d544753928"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref::color12</a></div><div class="ttdeci">gchar * color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00105">remmina_pref.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a2ce8a15918b4f58702d1063afbbc5a4a"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">_RemminaPrefDialog::colorbutton_color3</a></div><div class="ttdeci">GtkColorButton * colorbutton_color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00121">remmina_pref_dialog.h:121</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa63edd53778f0eba2e610690fb8002a3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">_RemminaPrefDialog::colorbutton_color15</a></div><div class="ttdeci">GtkColorButton * colorbutton_color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00133">remmina_pref_dialog.h:133</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a095f19f07c5ebeb47a89b1bfe23cc21e"><div class="ttname"><a href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">_RemminaPref::scale_quality</a></div><div class="ttdeci">gint scale_quality</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00124">remmina_pref.h:124</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae63c0c0ec8dbfe8bf665221868661b35"><div class="ttname"><a href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">_RemminaPref::deny_screenshot_clipboard</a></div><div class="ttdeci">gboolean deny_screenshot_clipboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00116">remmina_pref.h:116</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a59eebf1d365ef192de8e14da2c381f37"><div class="ttname"><a href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">_RemminaPref::resolutions</a></div><div class="ttdeci">gchar * resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00127">remmina_pref.h:127</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9c5171c5d8a61cc48171065644613cad"><div class="ttname"><a href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref::vte_shortcutkey_select_all</a></div><div class="ttdeci">guint vte_shortcutkey_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00171">remmina_pref.h:171</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a41f551c6f21f4a448e4c5ec1186240fd"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">_RemminaPrefDialog::checkbutton_appearance_hide_searchbar</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00065">remmina_pref_dialog.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4c6b01300d82ee50a036fc9fb758cb1f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">_RemminaPrefDialog::checkbutton_appearance_hide_toolbar</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_hide_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00064">remmina_pref_dialog.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa495bd5170c952a7dccff4e2504f5867"><div class="ttname"><a href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref::foreground</a></div><div class="ttdeci">gchar * foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00092">remmina_pref.h:92</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_ab9776574663e2c3fcb793ec70887336d"><div class="ttname"><a href="remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d">remmina_pref_on_dialog_destroy</a></div><div class="ttdeci">void remmina_pref_on_dialog_destroy(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00194">remmina_pref_dialog.c:194</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a675a8004488715429fa540dffb330d49"><div class="ttname"><a href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref::background</a></div><div class="ttdeci">gchar * background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00090">remmina_pref.h:90</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a50dcebddc0891688ae179ba940d21fd1"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1">remmina_pref_on_color_scheme_selected</a></div><div class="ttdeci">void remmina_pref_on_color_scheme_selected(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00093">remmina_pref_dialog.c:93</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1b100c8bbb0b01229b240a035defd45f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">_RemminaPrefDialog::button_keyboard_copy</a></div><div class="ttdeci">GtkButton * button_keyboard_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00111">remmina_pref_dialog.h:111</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a2a76560d15a613524e38d22934843196"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">_RemminaPrefDialog::entry_options_ssh_tcp_keepintvl</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00076">remmina_pref_dialog.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a745d3114e3cef2c572b859530926ad40"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">_RemminaPrefDialog::entry_options_ssh_port</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00074">remmina_pref_dialog.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a52f5fa8b2b4500c3ab9ae35f0d410f17"><div class="ttname"><a href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref::vte_allow_bold_text</a></div><div class="ttdeci">gboolean vte_allow_bold_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00166">remmina_pref.h:166</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae766dd561f1bf23723306f7a70015f27"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">_RemminaPrefDialog::filechooserbutton_options_screenshots_path</a></div><div class="ttdeci">GtkFileChooser * filechooserbutton_options_screenshots_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00053">remmina_pref_dialog.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6cea3c4860e9889953a6a22c72672d32"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">_RemminaPrefDialog::entry_options_ssh_tcp_keepidle</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00075">remmina_pref_dialog.h:75</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_afcd157a6f3bddb4b23b4e328cd18358c"><div class="ttname"><a href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">_RemminaPref::disable_tray_icon</a></div><div class="ttdeci">gboolean disable_tray_icon</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00140">remmina_pref.h:140</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae26ffa1d95468ab0e3a85a22aa074189"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">_RemminaPrefDialog::entry_scrollback_lines</a></div><div class="ttdeci">GtkEntry * entry_scrollback_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00110">remmina_pref_dialog.h:110</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_afa66945e979adc91f4956efb11115a2f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">_RemminaPrefDialog::colorbutton_color4</a></div><div class="ttdeci">GtkColorButton * colorbutton_color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00122">remmina_pref_dialog.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5ae99dc78a80baa14e0407983077c500"><div class="ttname"><a href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref::cursor</a></div><div class="ttdeci">gchar * cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00091">remmina_pref.h:91</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ab78e34f426da9a37b467efbdf2183644"><div class="ttname"><a href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">_RemminaPref::recent_maximum</a></div><div class="ttdeci">gint recent_maximum</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00126">remmina_pref.h:126</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac342b87e3992a20833d39e864e8ab85b"><div class="ttname"><a href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref::vte_font</a></div><div class="ttdeci">gchar * vte_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00165">remmina_pref.h:165</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a7576b68fbb2a0497d7ac51eb0633e877"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877">remmina_pref_dialog_on_key_chooser</a></div><div class="ttdeci">void remmina_pref_dialog_on_key_chooser(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00060">remmina_pref_dialog.c:60</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a3df98a686c4e2703455c1a786d3f1f5c"><div class="ttname"><a href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">_RemminaPref::screenshot_path</a></div><div class="ttdeci">const gchar * screenshot_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00115">remmina_pref.h:115</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__icon_8c_html_afbd7758d1d43c61a014b7ef00f11fa58"><div class="ttname"><a href="remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58">remmina_icon_init</a></div><div class="ttdeci">void remmina_icon_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00429">remmina_icon.c:429</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="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757">REMMINA_PLUGIN_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00049">plugin.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6e24f37d348137f4ee4fa783180f7b94"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">_RemminaPrefDialog::button_keyboard_screenshot</a></div><div class="ttdeci">GtkButton * button_keyboard_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00097">remmina_pref_dialog.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af3245723de79398df91fe0e440c0e327"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">_RemminaPrefDialog::button_keyboard_viewonly</a></div><div class="ttdeci">GtkButton * button_keyboard_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00098">remmina_pref_dialog.h:98</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7e7d1f3f754e55464a80fcd8d448c47c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">_RemminaPrefDialog::checkbutton_applet_new_connection_on_top</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_new_connection_on_top</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00084">remmina_pref_dialog.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ac1628fda7c9fc362575002733d4adf46"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">_RemminaPrefDialog::switch_terminal_font_system</a></div><div class="ttdeci">GtkSwitch * switch_terminal_font_system</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00103">remmina_pref_dialog.h:103</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aef2fe0f203dd68ed30d12e3b22a4f972"><div class="ttname"><a href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref::unlock_timeout</a></div><div class="ttdeci">gint unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00122">remmina_pref.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7a61d9daaf87c47c073e474498a1a15c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">_RemminaPrefDialog::colorbutton_color13</a></div><div class="ttdeci">GtkColorButton * colorbutton_color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00131">remmina_pref_dialog.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00046">remmina_key_chooser.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4f80906dcdf81e03e383e38b8ca568a3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">_RemminaPrefDialog::colorbutton_color5</a></div><div class="ttdeci">GtkColorButton * colorbutton_color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00123">remmina_pref_dialog.h:123</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7a269ccc996f2b110e1aa33228ca3db0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">_RemminaPrefDialog::entry_options_ssh_tcp_keepcnt</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00077">remmina_pref_dialog.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a07e738aa428d0aa99503058e1c0a5f11"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">_RemminaPrefDialog::notebook_preferences</a></div><div class="ttdeci">GtkNotebook * notebook_preferences</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00049">remmina_pref_dialog.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65b01db52636d3fb896cd8a5c68eb2fc"><div class="ttname"><a href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">_RemminaPref::unlock_password</a></div><div class="ttdeci">const gchar * unlock_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00120">remmina_pref.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a901034949132f369eb34c4f1ded3a0a6"><div class="ttname"><a href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref::vte_shortcutkey_paste</a></div><div class="ttdeci">guint vte_shortcutkey_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00170">remmina_pref.h:170</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a0b6b038291c02fd29f2fc6cd04135b97"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">_RemminaPrefDialog::unlock_timeout</a></div><div class="ttdeci">GtkEntry * unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00058">remmina_pref_dialog.h:58</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a42b49fa9a654cb061a02f52577171e1e"><div class="ttname"><a href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a></div><div class="ttdeci">gchar * remmina_sodium_pwhash_str(const gchar *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00095">remmina_sodium.c:95</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a17bfba7a11836808719d33d5f6edbdc7"><div class="ttname"><a href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">_RemminaPref::shortcutkey_disconnect</a></div><div class="ttdeci">guint shortcutkey_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00162">remmina_pref.h:162</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4592c110729ee7d530712da1d7fdc097"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">_RemminaPrefDialog::unlock_password</a></div><div class="ttdeci">GtkEntry * unlock_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00059">remmina_pref_dialog.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad92d70d47d7ad80298efe591955fa8b8"><div class="ttname"><a href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref::ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint ssh_tcp_usrtimeout</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="struct___remmina_color_pref_html_a24a8c38ab11389b860d0658812ff7bbc"><div class="ttname"><a href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref::color13</a></div><div class="ttdeci">gchar * color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00106">remmina_pref.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a9cd6e07816b16f7f94f55193426af4e0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">_RemminaPrefDialog::button_keyboard_switch_tab_left</a></div><div class="ttdeci">GtkButton * button_keyboard_switch_tab_left</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00093">remmina_pref_dialog.h:93</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html_a9ea805605a462db2ce7912ef05a4fd9d"><div class="ttname"><a href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">_RemminaPrefPlugin::pref_label</a></div><div class="ttdeci">const gchar * pref_label</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00125">plugin.h:125</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_adc2763311ece7ab6b505d4ec56391f69"><div class="ttname"><a href="remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69">remmina_pref_dialog_on_close_clicked</a></div><div class="ttdeci">void remmina_pref_dialog_on_close_clicked(GtkWidget *widget, RemminaPrefDialog *dialog)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00188">remmina_pref_dialog.c:188</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a3a830a938ddb7dde8a580e108a7ad028"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">_RemminaPrefDialog::checkbutton_applet_start_in_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_start_in_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00088">remmina_pref_dialog.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa618b528fc78d3253f0fc2c5ffacbde2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">_RemminaPrefDialog::button_keyboard_auto_fit</a></div><div class="ttdeci">GtkButton * button_keyboard_auto_fit</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00092">remmina_pref_dialog.h:92</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a363642437f5920c93fe35c07ef3601cc"><div class="ttname"><a href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">_RemminaPref::shortcutkey_grab</a></div><div class="ttdeci">guint shortcutkey_grab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00158">remmina_pref.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a6d77a2663675f01670ed7cc2f14e39c9"><div class="ttname"><a href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">_RemminaPref::always_show_tab</a></div><div class="ttdeci">gboolean always_show_tab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00131">remmina_pref.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a066bf2941261efad64c5942a69a6e33d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">_RemminaPrefDialog::label_terminal_background</a></div><div class="ttdeci">GtkLabel * label_terminal_background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00108">remmina_pref_dialog.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html"><div class="ttname"><a href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00046">remmina_pref_dialog.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a3fe278a66ed7fba91a944df3c60dd7b6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">_RemminaPrefDialog::button_term_cs</a></div><div class="ttdeci">GtkFileChooser * button_term_cs</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00134">remmina_pref_dialog.h:134</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2859598ef2f87afb5a970a197a503765"><div class="ttname"><a href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">_RemminaPref::shortcutkey_scale</a></div><div class="ttdeci">guint shortcutkey_scale</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00157">remmina_pref.h:157</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a277ea20324585713697f7d9572b965f1"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">_RemminaPrefDialog::checkbutton_applet_light_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_light_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00087">remmina_pref_dialog.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a877c22a6809bb846cc6555c4100ef877"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">_RemminaPrefDialog::colorbutton_color0</a></div><div class="ttdeci">GtkColorButton * colorbutton_color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00118">remmina_pref_dialog.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a5e3df5e92bbf0aec0f317216de88681d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">_RemminaPrefDialog::comboboxtext_options_scale_quality</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_scale_quality</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00070">remmina_pref_dialog.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ac15ed49a7e4ab8926bf4385737e0382b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">_RemminaPrefDialog::entry_options_scroll</a></div><div class="ttdeci">GtkEntry * entry_options_scroll</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00079">remmina_pref_dialog.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a120e306368b8fc06841c2fc2d48778c5"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">_RemminaPrefDialog::checkbutton_appearance_show_tabs</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_show_tabs</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00063">remmina_pref_dialog.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac001e6ac3d70ae6adca7d918898a9651"><div class="ttname"><a href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">_RemminaPref::unlock_repassword</a></div><div class="ttdeci">const gchar * unlock_repassword</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00121">remmina_pref.h:121</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_ae477ccd85ab1d878d243aed7fa5e48ae"><div class="ttname"><a href="remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae">remmina_icon_is_autostart</a></div><div class="ttdeci">gboolean remmina_icon_is_autostart(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00514">remmina_icon.c:514</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a66b5ccfa48e93ed57dd5aae00039c39b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">_RemminaPrefDialog::unlock_repassword</a></div><div class="ttdeci">GtkEntry * unlock_repassword</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00060">remmina_pref_dialog.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a956db17e48d1c446df7677d3e9f917e2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">_RemminaPrefDialog::colorbutton_foreground</a></div><div class="ttdeci">GtkColorButton * colorbutton_foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00107">remmina_pref_dialog.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a2e3c32df32107ad3f4b9ea85fc001368"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368">remmina_pref_dialog</a></div><div class="ttdeci">static RemminaPrefDialog * remmina_pref_dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00055">remmina_pref_dialog.c:55</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8ae5e31836066ac69f7c907f30d2ffc"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref::color9</a></div><div class="ttdeci">gchar * color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00102">remmina_pref.h:102</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2d0facd5a0480a450d525ce9ef4fed60"><div class="ttname"><a href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref::color5</a></div><div class="ttdeci">gchar * color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00098">remmina_pref.h:98</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a1d9bd13f411189c9d8d8a08ceb77e8d7"><div class="ttname"><a href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref::color7</a></div><div class="ttdeci">gchar * color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00100">remmina_pref.h:100</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a46e2af690d5d39c6d3ec2c07431d76a8"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">_RemminaPrefDialog::colorbutton_color11</a></div><div class="ttdeci">GtkColorButton * colorbutton_color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00129">remmina_pref_dialog.h:129</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6cf1e8aa7d474aacc471b625d6330826"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">_RemminaPrefDialog::button_keyboard_host_key</a></div><div class="ttdeci">GtkButton * button_keyboard_host_key</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00090">remmina_pref_dialog.h:90</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_ab1bacc097f59c20b477d954bb863a5e0"><div class="ttname"><a href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a></div><div class="ttdeci">void remmina_string_list_set_text(const gchar *text, const gboolean clear_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00172">remmina_string_list.c:172</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ac3b15f811daf0aaf8bacd67f1b47aa14"><div class="ttname"><a href="remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14">remmina_pref_clear_recent</a></div><div class="ttdeci">void remmina_pref_clear_recent(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00902">remmina_pref.c:902</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4a8bc03207480e0e616794ea5efc71f6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">_RemminaPrefDialog::comboboxtext_appearance_tab_interface</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_tab_interface</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00069">remmina_pref_dialog.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a712773f926eb2ec030d6af80cdc33095"><div class="ttname"><a href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">_RemminaPref::shortcutkey_nexttab</a></div><div class="ttdeci">guint shortcutkey_nexttab</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00155">remmina_pref.h:155</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_acee9d7384a5e3949df53cdf54390bbcd"><div class="ttname"><a href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">_RemminaPref::applet_hide_count</a></div><div class="ttdeci">gboolean applet_hide_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00139">remmina_pref.h:139</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_acaf49bcad1a8975b1ab0de2c241ff912"><div class="ttname"><a href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">_RemminaPrefDialog::checkbutton_applet_disable_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_disable_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00086">remmina_pref_dialog.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2bf96a40b9f63300d02e158b26546203"><div class="ttname"><a href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref::ssh_tcp_keepidle</a></div><div class="ttdeci">gint ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00146">remmina_pref.h:146</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a517186be14ab61d72d6212592b958972"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">_RemminaPrefDialog::comboboxtext_options_ssh_loglevel</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00071">remmina_pref_dialog.h:71</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html"><div class="ttname"><a href="remmina__string__list_8h.html">remmina_string_list.h</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ac3b1c476480609afbbe21a2bb507e14c"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">_RemminaKeyChooserArguments::state</a></div><div class="ttdeci">guint state</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00048">remmina_key_chooser.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a597cc3d6e631babe57df7a472cbb2876"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">_RemminaPrefDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00047">remmina_pref_dialog.h:47</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a19ba9bbbff353b8e36810d423e6f7e8f"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a></div><div class="ttdeci">void remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00151">remmina_pref_dialog.c:151</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aecbe4c6a13ec6eda818c9f74c6f63468"><div class="ttname"><a href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">_RemminaPref::tab_mode</a></div><div class="ttdeci">gint tab_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00135">remmina_pref.h:135</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_aa9ca6ccf40b954051a0daa5c1efeef87"><div class="ttname"><a href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a></div><div class="ttdeci">void remmina_string_list_set_titles(gchar *title1, gchar *title2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00255">remmina_string_list.c:255</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_priv_html"><div class="ttname"><a href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00042">remmina_pref_dialog.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a16f07e2dad152f37ebbabdba18346ff3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">_RemminaPrefDialog::label_terminal_cursor_color</a></div><div class="ttdeci">GtkLabel * label_terminal_cursor_color</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00114">remmina_pref_dialog.h:114</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a620e1cd173b0c970580c33397c076d6e"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e">remmina_pref_dialog_vte_font_on_toggled</a></div><div class="ttdeci">void remmina_pref_dialog_vte_font_on_toggled(GtkWidget *widget, RemminaPrefDialog *dialog)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00378">remmina_pref_dialog.c:378</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8d7f02ac9b6890ad675b702708bc4af9"><div class="ttname"><a href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref::color6</a></div><div class="ttdeci">gchar * color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00099">remmina_pref.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_pref_plugin_html"><div class="ttname"><a href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00118">plugin.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa1544a98f03088dc260ed98f2deac94f"><div class="ttname"><a href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">_RemminaPref::remmina_file_name</a></div><div class="ttdeci">const gchar * remmina_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00114">remmina_pref.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af9c8b60418a9dc795230e4ebb084f850"><div class="ttname"><a href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref::vte_lines</a></div><div class="ttdeci">gint vte_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00168">remmina_pref.h:168</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a400f7319fd3996a13399ef72bcf0a2fd"><div class="ttname"><a href="remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd">remmina_pref_init</a></div><div class="ttdeci">void remmina_pref_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00221">remmina_pref.c:221</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2b41853bdaaefa3968017819c19d316"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref::color3</a></div><div class="ttdeci">gchar * color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00096">remmina_pref.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aa3dc5f8676c4747f2fcaf9a68d16d11b"><div class="ttname"><a href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">_RemminaPref::shortcutkey_toolbar</a></div><div class="ttdeci">guint shortcutkey_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00163">remmina_pref.h:163</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_ad4b3f23a900c8f07814fd0fb26f29e5f"><div class="ttname"><a href="remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f">remmina_pref_on_button_resolutions_clicked</a></div><div class="ttdeci">void remmina_pref_on_button_resolutions_clicked(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00077">remmina_pref_dialog.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5d92875f0034e5fc3d360d97d5992bd4"><div class="ttname"><a href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref::color8</a></div><div class="ttdeci">gchar * color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00101">remmina_pref.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a86e2ecb7e448ef661c2857de7b724061"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">_RemminaPrefDialog::comboboxtext_options_double_click</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_double_click</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00067">remmina_pref_dialog.h:67</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a0c5f28eea2fe32297da5f7833df7b131"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131">remmina_pref_on_button_keystrokes_clicked</a></div><div class="ttdeci">void remmina_pref_on_button_keystrokes_clicked(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00138">remmina_pref_dialog.c:138</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a082f698b8aa7cec3c1cb0fd987d4358f"><div class="ttname"><a href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref::ssh_tcp_keepcnt</a></div><div class="ttdeci">gint ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00148">remmina_pref.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a999b74e3aab2e7fbc4431e803511b568"><div class="ttname"><a href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">_RemminaPref::applet_new_ontop</a></div><div class="ttdeci">gboolean applet_new_ontop</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00138">remmina_pref.h:138</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ae2267a1de362addcee0c5801612dc5d6"><div class="ttname"><a href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">_RemminaPref::screenshot_name</a></div><div class="ttdeci">const gchar * screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00117">remmina_pref.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_afa7c4748f22173796b35d1d50b6c1914"><div class="ttname"><a href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref::color4</a></div><div class="ttdeci">gchar * color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00097">remmina_pref.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1138eed66b8fe0a2386ee07ec33557be"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">_RemminaPrefDialog::button_keyboard_minimize</a></div><div class="ttdeci">GtkButton * button_keyboard_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00099">remmina_pref_dialog.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9258f6c3c18f14b4abb148aa43e6bc0e"><div class="ttname"><a href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">_RemminaPref::hide_connection_toolbar</a></div><div class="ttdeci">gboolean hide_connection_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00132">remmina_pref.h:132</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_af87f153e3fc696f76da732d8e431be5a"><div class="ttname"><a href="remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a">remmina_pref_dialog_get_dialog</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_get_dialog()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00726">remmina_pref_dialog.c:726</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aad290cb37b80d5295452ad1fd4322acc"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">_RemminaPrefDialog::checkbutton_options_ssh_parseconfig</a></div><div class="ttdeci">GtkCheckButton * checkbutton_options_ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00073">remmina_pref_dialog.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af348bb968fd98ba269c4e253750e2400"><div class="ttname"><a href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref::sshtunnel_port</a></div><div class="ttdeci">gint sshtunnel_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00145">remmina_pref.h:145</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a920221c2f304bfa278d0944bbbb6e011"><div class="ttname"><a href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">_RemminaPref::datadir_path</a></div><div class="ttdeci">const gchar * datadir_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00113">remmina_pref.h:113</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad92dc760283fa996f40a976bcc3f3d2d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">_RemminaPrefDialog::switch_options_deny_screenshot_clipboard</a></div><div class="ttdeci">GtkSwitch * switch_options_deny_screenshot_clipboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00055">remmina_pref_dialog.h:55</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a470290d26c88259265912a3e0018b662"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662">remmina_pref_dialog_clear_recent</a></div><div class="ttdeci">void remmina_pref_dialog_clear_recent(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00124">remmina_pref_dialog.c:124</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa6e591a542ea2a29a5a00e2bf411d2c6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">_RemminaPrefDialog::checkbutton_applet_hide_totals</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_hide_totals</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00085">remmina_pref_dialog.h:85</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad9ea2466137b35ccef6896126954bc1a"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">_RemminaPrefDialog::colorbutton_color10</a></div><div class="ttdeci">GtkColorButton * colorbutton_color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00128">remmina_pref_dialog.h:128</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af145d83f411becab1a1f35787dd2196c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">_RemminaPrefDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00048">remmina_pref_dialog.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae2c902d8ab3e2cb84eaec25d597afac8"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">_RemminaPrefDialog::button_keyboard_switch_tab_right</a></div><div class="ttdeci">GtkButton * button_keyboard_switch_tab_right</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00094">remmina_pref_dialog.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8c109e8479617a5e6da0fcaccf511c60"><div class="ttname"><a href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref::color15</a></div><div class="ttdeci">gchar * color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00108">remmina_pref.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a917c214ab0662ebd06db3eb7f7c47bf2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">_RemminaPrefDialog::comboboxtext_appearance_view_mode</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00068">remmina_pref_dialog.h:68</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adc48fc8abfc2c8e06fea5d42d9790ec9"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">_RemminaPrefDialog::button_keyboard_scaled</a></div><div class="ttdeci">GtkButton * button_keyboard_scaled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00095">remmina_pref_dialog.h:95</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8c_html_a16091735af5c6ee31fb794a5fb860342"><div class="ttname"><a href="remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342">remmina_pref_dialog_new</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00613">remmina_pref_dialog.c:613</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8e90ea1299ef641fbef1495f899cf97"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref::color11</a></div><div class="ttdeci">gchar * color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00104">remmina_pref.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1b6e2744506a9e396d8cbae0529356bb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">_RemminaPrefDialog::colorbutton_color8</a></div><div class="ttdeci">GtkColorButton * colorbutton_color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00126">remmina_pref_dialog.h:126</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7aa4cc48f6f7ecf608f5fcf2b4147b18"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">_RemminaPrefDialog::switch_permit_send_stats</a></div><div class="ttdeci">GtkSwitch * switch_permit_send_stats</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00066">remmina_pref_dialog.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adda92d5335d281571b58a40f3ebe95d4"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">_RemminaPrefDialog::colorbutton_background</a></div><div class="ttdeci">GtkColorButton * colorbutton_background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00109">remmina_pref_dialog.h:109</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af9cc0aee7b72d2b3da5a193b8e7b0171"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">_RemminaPrefDialog::switch_security_use_master_password</a></div><div class="ttdeci">GtkSwitch * switch_security_use_master_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00057">remmina_pref_dialog.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6bf0904ad661465e2a522b7dced372ab"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">_RemminaPrefDialog::colorbutton_cursor</a></div><div class="ttdeci">GtkColorButton * colorbutton_cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00117">remmina_pref_dialog.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_ad6bf8db773a58c4b73ce7902f76a860f"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">_RemminaKeyChooserArguments::keyval</a></div><div class="ttdeci">guint keyval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00047">remmina_key_chooser.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adf1125853e83c16e1ce9704c761d7b9c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">_RemminaPrefDialog::colorbutton_color7</a></div><div class="ttdeci">GtkColorButton * colorbutton_color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00125">remmina_pref_dialog.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_key_chooser_arguments_html_a2fd9e4d001913994dd7ffee24563bde7"><div class="ttname"><a href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">_RemminaKeyChooserArguments::response</a></div><div class="ttdeci">gint response</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8h_source.html#l00050">remmina_key_chooser.h:50</a></div></div>
+<div class="ttc" id="remmina__icon_8c_html_a5b1bc5b1130b31ea9c9cb7164fb82f1d"><div class="ttname"><a href="remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d">remmina_icon_set_autostart</a></div><div class="ttdeci">void remmina_icon_set_autostart(gboolean autostart)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__icon_8c_source.html#l00527">remmina_icon.c:527</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a85e3d3ef34fb8969211860df159a04d8"><div class="ttname"><a href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref::color_pref</a></div><div class="ttdeci">RemminaColorPref color_pref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00197">remmina_pref.h:197</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4eb866c8e08104362aa51f14f5894e51"><div class="ttname"><a href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">_RemminaPref::shortcutkey_viewonly</a></div><div class="ttdeci">guint shortcutkey_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00159">remmina_pref.h:159</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a270f2b3596d5f836b0db47b21b049fcb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">_RemminaPrefDialog::priv</a></div><div class="ttdeci">RemminaPrefDialogPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00136">remmina_pref_dialog.h:136</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a4a74d72f34e960155c489e0f91574d2b"><div class="ttname"><a href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">_RemminaPref::fullscreen_on_auto</a></div><div class="ttdeci">gboolean fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00130">remmina_pref.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a280cb6d6e959c7e395a887defde7a485"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">_RemminaPrefDialog::colorbutton_color9</a></div><div class="ttdeci">GtkColorButton * colorbutton_color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00127">remmina_pref_dialog.h:127</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aca3d7c47a24dc2722496670937a57cbb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">_RemminaPrefDialog::label_terminal_bright_colors</a></div><div class="ttdeci">GtkLabel * label_terminal_bright_colors</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00116">remmina_pref_dialog.h:116</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_aad6660781f636788d5f05b3bac85d676"><div class="ttname"><a href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">_RemminaPref::save_view_mode</a></div><div class="ttdeci">gboolean save_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00118">remmina_pref.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa4a65b76fbdc0b3e97d3046f0b48e1ff"><div class="ttname"><a href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref::color1</a></div><div class="ttdeci">gchar * color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00094">remmina_pref.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a97ad6670df5c399df233f0a74f5c148f"><div class="ttname"><a href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">_RemminaPref::fullscreen_toolbar_visibility</a></div><div class="ttdeci">gint fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00136">remmina_pref.h:136</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a995f847743fb828f3400559cea4fff35"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">_RemminaPrefDialog::colorbutton_color12</a></div><div class="ttdeci">GtkColorButton * colorbutton_color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00130">remmina_pref_dialog.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ab4c71aaab278901ae411d68abf97a123"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">_RemminaPrefDialog::filechooserbutton_options_datadir_path</a></div><div class="ttdeci">GtkFileChooser * filechooserbutton_options_datadir_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00051">remmina_pref_dialog.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a8d88c38e27116711851bfb573e90b811"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">_RemminaPrefDialog::colorbutton_color1</a></div><div class="ttdeci">GtkColorButton * colorbutton_color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00119">remmina_pref_dialog.h:119</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_ae4901c270a9c35ed2258c92cdc897474"><div class="ttname"><a href="remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474">remmina_key_chooser_get_keyval</a></div><div class="ttdeci">guint remmina_key_chooser_get_keyval(const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00101">remmina_key_chooser.c:101</a></div></div>
+<div class="ttc" id="remmina__key__chooser_8c_html_a5aba1462f1026818581e91155b12618f"><div class="ttname"><a href="remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f">remmina_key_chooser_get_value</a></div><div class="ttdeci">gchar * remmina_key_chooser_get_value(guint keyval, guint state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__key__chooser_8c_source.html#l00083">remmina_key_chooser.c:83</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a74058eac0af28c05a55d041103457aec"><div class="ttname"><a href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a></div><div class="ttdeci">gchar * remmina_string_list_get_text(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00206">remmina_string_list.c:206</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref__dialog_8c.html">remmina_pref_dialog.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref__dialog_8h.html b/docs/remmina__pref__dialog_8h.html
new file mode 100644
index 000000000..38d594e8a
--- /dev/null
+++ b/docs/remmina__pref__dialog_8h.html
@@ -0,0 +1,272 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref_dialog.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref__dialog_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_pref_dialog.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__pref__dialog_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aeba55bfe8ab83707f2e68034061a3dd2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a></td></tr>
+<tr class="separator:aeba55bfe8ab83707f2e68034061a3dd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5318669e14d555b8bd2adc81a54d97b7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a></td></tr>
+<tr class="separator:a5318669e14d555b8bd2adc81a54d97b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a96a58e29e8dbf2b5bdeb775cba46556e"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a">REMMINA_PREF_OPTIONS_TAB</a> = 0,
+<a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb">REMMINA_PREF_APPEARANCE</a> = 1,
+<a class="el" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c">REMMINA_PREF_APPLET_TAB</a> = 2
+ }</td></tr>
+<tr class="separator:a96a58e29e8dbf2b5bdeb775cba46556e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a482168ebe847fb3d052f940e8b82a69a"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a">remmina_pref_dialog_new</a> (gint default_tab, GtkWindow *parent)</td></tr>
+<tr class="separator:a482168ebe847fb3d052f940e8b82a69a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8862957212096ddda372be1310c8bd4"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4">remmina_pref_dialog_get_dialog</a> (void)</td></tr>
+<tr class="separator:aa8862957212096ddda372be1310c8bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ba9bbbff353b8e36810d423e6f7e8f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a> (GtkEditable *editable, <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *dialog)</td></tr>
+<tr class="separator:a19ba9bbbff353b8e36810d423e6f7e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a5318669e14d555b8bd2adc81a54d97b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5318669e14d555b8bd2adc81a54d97b7">&#9670;&nbsp;</a></span>RemminaPrefDialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a> <a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aeba55bfe8ab83707f2e68034061a3dd2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeba55bfe8ab83707f2e68034061a3dd2">&#9670;&nbsp;</a></span>RemminaPrefDialogPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a> <a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a96a58e29e8dbf2b5bdeb775cba46556e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96a58e29e8dbf2b5bdeb775cba46556e">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a"></a>REMMINA_PREF_OPTIONS_TAB&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb"></a>REMMINA_PREF_APPEARANCE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c"></a>REMMINA_PREF_APPLET_TAB&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00139">139</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa8862957212096ddda372be1310c8bd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8862957212096ddda372be1310c8bd4">&#9670;&nbsp;</a></span>remmina_pref_dialog_get_dialog()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_pref_dialog_get_dialog </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00726">726</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a482168ebe847fb3d052f940e8b82a69a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a482168ebe847fb3d052f940e8b82a69a">&#9670;&nbsp;</a></span>remmina_pref_dialog_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS GtkDialog* remmina_pref_dialog_new </td>
+ <td>(</td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_tab</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00613">613</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+<a id="a19ba9bbbff353b8e36810d423e6f7e8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19ba9bbbff353b8e36810d423e6f7e8f">&#9670;&nbsp;</a></span>remmina_prefdiag_unlock_repwd_on_changed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_prefdiag_unlock_repwd_on_changed </td>
+ <td>(</td>
+ <td class="paramtype">GtkEditable *&#160;</td>
+ <td class="paramname"><em>editable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a> *&#160;</td>
+ <td class="paramname"><em>dialog</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8c_source.html#l00151">151</a> of file <a class="el" href="remmina__pref__dialog_8c_source.html">remmina_pref_dialog.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__pref__dialog_8h.js b/docs/remmina__pref__dialog_8h.js
new file mode 100644
index 000000000..aac2267fa
--- /dev/null
+++ b/docs/remmina__pref__dialog_8h.js
@@ -0,0 +1,13 @@
+var remmina__pref__dialog_8h =
+[
+ [ "_RemminaPrefDialogPriv", "struct___remmina_pref_dialog_priv.html", "struct___remmina_pref_dialog_priv" ],
+ [ "_RemminaPrefDialog", "struct___remmina_pref_dialog.html", "struct___remmina_pref_dialog" ],
+ [ "RemminaPrefDialog", "remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7", null ],
+ [ "RemminaPrefDialogPriv", "remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2", null ],
+ [ "REMMINA_PREF_OPTIONS_TAB", "remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a", null ],
+ [ "REMMINA_PREF_APPEARANCE", "remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb", null ],
+ [ "REMMINA_PREF_APPLET_TAB", "remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c", null ],
+ [ "remmina_pref_dialog_get_dialog", "remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4", null ],
+ [ "remmina_pref_dialog_new", "remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a", null ],
+ [ "remmina_prefdiag_unlock_repwd_on_changed", "remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__pref__dialog_8h_source.html b/docs/remmina__pref__dialog_8h_source.html
new file mode 100644
index 000000000..351e67f78
--- /dev/null
+++ b/docs/remmina__pref__dialog_8h_source.html
@@ -0,0 +1,197 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_pref_dialog.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__pref__dialog_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_pref_dialog.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__pref__dialog_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) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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="comment">/*</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> * Remmina Preferences Dialog</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog_priv.html"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a> {</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05"> 43</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05">resolutions_list</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a>;</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="struct___remmina_pref_dialog.html"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a> {</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876"> 47</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">builder</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c"> 48</a></span>&#160; GtkDialog * <a class="code" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11"> 49</a></span>&#160; GtkNotebook * <a class="code" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">notebook_preferences</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123"> 51</a></span>&#160; GtkFileChooser * <a class="code" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">filechooserbutton_options_datadir_path</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c"> 52</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27"> 53</a></span>&#160; GtkFileChooser * <a class="code" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571"> 54</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d"> 55</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">switch_options_deny_screenshot_clipboard</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b"> 56</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">switch_options_remember_last_view_mode</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171"> 57</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97"> 58</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097"> 59</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b"> 60</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119"> 61</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">checkbutton_options_save_settings</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87"> 62</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">checkbutton_appearance_fullscreen_on_auto</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5"> 63</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">checkbutton_appearance_show_tabs</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f"> 64</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">checkbutton_appearance_hide_toolbar</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd"> 65</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">checkbutton_appearance_hide_searchbar</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18"> 66</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">switch_permit_send_stats</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061"> 67</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">comboboxtext_options_double_click</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2"> 68</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">comboboxtext_appearance_view_mode</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6"> 69</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">comboboxtext_appearance_tab_interface</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d"> 70</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">comboboxtext_options_scale_quality</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972"> 71</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">comboboxtext_options_ssh_loglevel</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb"> 72</a></span>&#160; GtkComboBox * <a class="code" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">comboboxtext_appearance_fullscreen_toolbar_visibility</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc"> 73</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">checkbutton_options_ssh_parseconfig</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40"> 74</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">entry_options_ssh_port</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32"> 75</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">entry_options_ssh_tcp_keepidle</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196"> 76</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">entry_options_ssh_tcp_keepintvl</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0"> 77</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">entry_options_ssh_tcp_keepcnt</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7"> 78</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">entry_options_ssh_tcp_usrtimeout</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b"> 79</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">entry_options_scroll</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531"> 80</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">entry_options_recent_items</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6"> 81</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">button_options_recent_items_clear</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903"> 82</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903">button_options_resolutions</a>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c"> 84</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">checkbutton_applet_new_connection_on_top</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6"> 85</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">checkbutton_applet_hide_totals</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912"> 86</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">checkbutton_applet_disable_tray</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1"> 87</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">checkbutton_applet_light_tray</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028"> 88</a></span>&#160; GtkCheckButton * <a class="code" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826"> 90</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">button_keyboard_host_key</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2"> 91</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">button_keyboard_fullscreen</a>;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2"> 92</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">button_keyboard_auto_fit</a>;</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0"> 93</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">button_keyboard_switch_tab_left</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8"> 94</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">button_keyboard_switch_tab_right</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9"> 95</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">button_keyboard_scaled</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97"> 96</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">button_keyboard_grab_keyboard</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94"> 97</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">button_keyboard_screenshot</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327"> 98</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">button_keyboard_viewonly</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be"> 99</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">button_keyboard_minimize</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1"> 100</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">button_keyboard_disconnect</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5"> 101</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">button_keyboard_toolbar</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46"> 103</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">switch_terminal_font_system</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb"> 104</a></span>&#160; GtkFontButton * <a class="code" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980"> 105</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">switch_terminal_bold</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d"> 106</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">label_terminal_foreground</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2"> 107</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">colorbutton_foreground</a>;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d"> 108</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">label_terminal_background</a>;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4"> 109</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">colorbutton_background</a>;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189"> 110</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">entry_scrollback_lines</a>;</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f"> 111</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">button_keyboard_copy</a>;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74"> 112</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">button_keyboard_paste</a>;</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0"> 113</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">button_keyboard_select_all</a>;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3"> 114</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">label_terminal_cursor_color</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e"> 115</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">label_terminal_normal_colors</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb"> 116</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">label_terminal_bright_colors</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab"> 117</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a>;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877"> 118</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a>;</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811"> 119</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb"> 120</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a>;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a"> 121</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f"> 122</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3"> 123</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3"> 124</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c"> 125</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb"> 126</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a>;</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485"> 127</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a"> 128</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a>;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8"> 129</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a>;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35"> 130</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c"> 131</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a>;</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d"> 132</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a>;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3"> 133</a></span>&#160; GtkColorButton * <a class="code" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6"> 134</a></span>&#160; GtkFileChooser * <a class="code" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">button_term_cs</a>;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb"> 136</a></span>&#160; <a class="code" href="struct___remmina_pref_dialog_priv.html">RemminaPrefDialogPriv</a> * <a class="code" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">priv</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;} <a class="code" href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a"> 140</a></span>&#160; <a class="code" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a">REMMINA_PREF_OPTIONS_TAB</a> = 0,</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb"> 141</a></span>&#160; <a class="code" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb">REMMINA_PREF_APPEARANCE</a> = 1,</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c"> 142</a></span>&#160; <a class="code" href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c">REMMINA_PREF_APPLET_TAB</a> = 2</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;};</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment">/* RemminaPrefDialog instance */</span></div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;GtkDialog *<a class="code" href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a">remmina_pref_dialog_new</a>(gint default_tab, GtkWindow *parent);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">/* Get the current PrefDialog or NULL if not initialized */</span></div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;GtkDialog *<a class="code" href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4">remmina_pref_dialog_get_dialog</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a>(GtkEditable *editable, <a class="code" href="struct___remmina_pref_dialog.html">RemminaPrefDialog</a> *dialog);</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;G_END_DECLS</div><div class="ttc" id="struct___remmina_pref_dialog_html_afccd66623eb7bb1ec233a241e97e80f0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">_RemminaPrefDialog::button_keyboard_select_all</a></div><div class="ttdeci">GtkButton * button_keyboard_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00113">remmina_pref_dialog.h:113</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a95129b25f045ca6f0bc90323b755aebb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">_RemminaPrefDialog::colorbutton_color2</a></div><div class="ttdeci">GtkColorButton * colorbutton_color2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00120">remmina_pref_dialog.h:120</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4b8e7072d5c4b5c8b5e57714130f973d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">_RemminaPrefDialog::colorbutton_color14</a></div><div class="ttdeci">GtkColorButton * colorbutton_color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00132">remmina_pref_dialog.h:132</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a5318669e14d555b8bd2adc81a54d97b7"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7">RemminaPrefDialog</a></div><div class="ttdeci">struct _RemminaPrefDialog RemminaPrefDialog</div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a8f34c1336ad9efc4679c6e449bec7a97"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">_RemminaPrefDialog::button_keyboard_grab_keyboard</a></div><div class="ttdeci">GtkButton * button_keyboard_grab_keyboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00096">remmina_pref_dialog.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7af362b8421b6f066d4d9d737a01ebfb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">_RemminaPrefDialog::comboboxtext_appearance_fullscreen_toolbar_visibility</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_fullscreen_toolbar_visibility</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00072">remmina_pref_dialog.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af0b14d180d9dcabf9e79b98094bbae74"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">_RemminaPrefDialog::button_keyboard_paste</a></div><div class="ttdeci">GtkButton * button_keyboard_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00112">remmina_pref_dialog.h:112</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a159eb84f43ce9ed81b92b6e260839af6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">_RemminaPrefDialog::button_options_recent_items_clear</a></div><div class="ttdeci">GtkButton * button_options_recent_items_clear</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00081">remmina_pref_dialog.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6e763bfa2b2c507744f4773cd81f3571"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">_RemminaPrefDialog::entry_options_screenshot_name</a></div><div class="ttdeci">GtkEntry * entry_options_screenshot_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00054">remmina_pref_dialog.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a5d87faf3df58b2fc1e09a33fd07c4d0c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">_RemminaPrefDialog::entry_options_file_name</a></div><div class="ttdeci">GtkEntry * entry_options_file_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00052">remmina_pref_dialog.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad87514b86ed3f9b5980bf6c565343b87"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">_RemminaPrefDialog::checkbutton_appearance_fullscreen_on_auto</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_fullscreen_on_auto</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00062">remmina_pref_dialog.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a341e052b4a78587530b63975b7edc92d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">_RemminaPrefDialog::label_terminal_foreground</a></div><div class="ttdeci">GtkLabel * label_terminal_foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00106">remmina_pref_dialog.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a33d785a31072bb4ce865ae048cc14fc2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">_RemminaPrefDialog::button_keyboard_fullscreen</a></div><div class="ttdeci">GtkButton * button_keyboard_fullscreen</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00091">remmina_pref_dialog.h:91</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a26ad416987608d6c6f0a98ba9d611119"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">_RemminaPrefDialog::checkbutton_options_save_settings</a></div><div class="ttdeci">GtkCheckButton * checkbutton_options_save_settings</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00061">remmina_pref_dialog.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa8077d5e8254495ddee87c6baafb07a5"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">_RemminaPrefDialog::button_keyboard_toolbar</a></div><div class="ttdeci">GtkButton * button_keyboard_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00101">remmina_pref_dialog.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae6eb4e606ae2e199435754728d723ce1"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">_RemminaPrefDialog::button_keyboard_disconnect</a></div><div class="ttdeci">GtkButton * button_keyboard_disconnect</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00100">remmina_pref_dialog.h:100</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a85b8819ff553f86a5ad8f7fd1a7aa531"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">_RemminaPrefDialog::entry_options_recent_items</a></div><div class="ttdeci">GtkEntry * entry_options_recent_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00080">remmina_pref_dialog.h:80</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a9e7984859dc88bab77503b175fc4d8c7"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">_RemminaPrefDialog::entry_options_ssh_tcp_usrtimeout</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_usrtimeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00078">remmina_pref_dialog.h:78</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_aeba55bfe8ab83707f2e68034061a3dd2"><div class="ttname"><a href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a></div><div class="ttdeci">struct _RemminaPrefDialogPriv RemminaPrefDialogPriv</div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6a01f6f8247a97a94b8855902a14a980"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">_RemminaPrefDialog::switch_terminal_bold</a></div><div class="ttdeci">GtkSwitch * switch_terminal_bold</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00105">remmina_pref_dialog.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a9088c8f060e1fe7e12445fb2f9b99bc3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">_RemminaPrefDialog::colorbutton_color6</a></div><div class="ttdeci">GtkColorButton * colorbutton_color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00124">remmina_pref_dialog.h:124</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a62227d6671d78e7387e727c92d79c92e"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">_RemminaPrefDialog::label_terminal_normal_colors</a></div><div class="ttdeci">GtkLabel * label_terminal_normal_colors</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00115">remmina_pref_dialog.h:115</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7ab49071b369069912565f3e0a8b000b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">_RemminaPrefDialog::switch_options_remember_last_view_mode</a></div><div class="ttdeci">GtkSwitch * switch_options_remember_last_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00056">remmina_pref_dialog.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af3997f4513793f2b6ba71a54c55c78bb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">_RemminaPrefDialog::fontbutton_terminal_font</a></div><div class="ttdeci">GtkFontButton * fontbutton_terminal_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00104">remmina_pref_dialog.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a2ce8a15918b4f58702d1063afbbc5a4a"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">_RemminaPrefDialog::colorbutton_color3</a></div><div class="ttdeci">GtkColorButton * colorbutton_color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00121">remmina_pref_dialog.h:121</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa63edd53778f0eba2e610690fb8002a3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">_RemminaPrefDialog::colorbutton_color15</a></div><div class="ttdeci">GtkColorButton * colorbutton_color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00133">remmina_pref_dialog.h:133</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_aa8862957212096ddda372be1310c8bd4"><div class="ttname"><a href="remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4">remmina_pref_dialog_get_dialog</a></div><div class="ttdeci">GtkDialog * remmina_pref_dialog_get_dialog(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00726">remmina_pref_dialog.c:726</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a41f551c6f21f4a448e4c5ec1186240fd"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">_RemminaPrefDialog::checkbutton_appearance_hide_searchbar</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_hide_searchbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00065">remmina_pref_dialog.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4c6b01300d82ee50a036fc9fb758cb1f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">_RemminaPrefDialog::checkbutton_appearance_hide_toolbar</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_hide_toolbar</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00064">remmina_pref_dialog.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1b100c8bbb0b01229b240a035defd45f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">_RemminaPrefDialog::button_keyboard_copy</a></div><div class="ttdeci">GtkButton * button_keyboard_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00111">remmina_pref_dialog.h:111</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a2a76560d15a613524e38d22934843196"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">_RemminaPrefDialog::entry_options_ssh_tcp_keepintvl</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00076">remmina_pref_dialog.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a745d3114e3cef2c572b859530926ad40"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">_RemminaPrefDialog::entry_options_ssh_port</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00074">remmina_pref_dialog.h:74</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a">REMMINA_PREF_OPTIONS_TAB</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00140">remmina_pref_dialog.h:140</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae766dd561f1bf23723306f7a70015f27"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">_RemminaPrefDialog::filechooserbutton_options_screenshots_path</a></div><div class="ttdeci">GtkFileChooser * filechooserbutton_options_screenshots_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00053">remmina_pref_dialog.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6cea3c4860e9889953a6a22c72672d32"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">_RemminaPrefDialog::entry_options_ssh_tcp_keepidle</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00075">remmina_pref_dialog.h:75</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae26ffa1d95468ab0e3a85a22aa074189"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">_RemminaPrefDialog::entry_scrollback_lines</a></div><div class="ttdeci">GtkEntry * entry_scrollback_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00110">remmina_pref_dialog.h:110</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_afa66945e979adc91f4956efb11115a2f"><div class="ttname"><a href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">_RemminaPrefDialog::colorbutton_color4</a></div><div class="ttdeci">GtkColorButton * colorbutton_color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00122">remmina_pref_dialog.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6e24f37d348137f4ee4fa783180f7b94"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">_RemminaPrefDialog::button_keyboard_screenshot</a></div><div class="ttdeci">GtkButton * button_keyboard_screenshot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00097">remmina_pref_dialog.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af3245723de79398df91fe0e440c0e327"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">_RemminaPrefDialog::button_keyboard_viewonly</a></div><div class="ttdeci">GtkButton * button_keyboard_viewonly</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00098">remmina_pref_dialog.h:98</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7e7d1f3f754e55464a80fcd8d448c47c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">_RemminaPrefDialog::checkbutton_applet_new_connection_on_top</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_new_connection_on_top</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00084">remmina_pref_dialog.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ac1628fda7c9fc362575002733d4adf46"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">_RemminaPrefDialog::switch_terminal_font_system</a></div><div class="ttdeci">GtkSwitch * switch_terminal_font_system</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00103">remmina_pref_dialog.h:103</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7a61d9daaf87c47c073e474498a1a15c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">_RemminaPrefDialog::colorbutton_color13</a></div><div class="ttdeci">GtkColorButton * colorbutton_color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00131">remmina_pref_dialog.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4f80906dcdf81e03e383e38b8ca568a3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">_RemminaPrefDialog::colorbutton_color5</a></div><div class="ttdeci">GtkColorButton * colorbutton_color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00123">remmina_pref_dialog.h:123</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb">REMMINA_PREF_APPEARANCE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00141">remmina_pref_dialog.h:141</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7a269ccc996f2b110e1aa33228ca3db0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">_RemminaPrefDialog::entry_options_ssh_tcp_keepcnt</a></div><div class="ttdeci">GtkEntry * entry_options_ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00077">remmina_pref_dialog.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a07e738aa428d0aa99503058e1c0a5f11"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">_RemminaPrefDialog::notebook_preferences</a></div><div class="ttdeci">GtkNotebook * notebook_preferences</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00049">remmina_pref_dialog.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a0b6b038291c02fd29f2fc6cd04135b97"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">_RemminaPrefDialog::unlock_timeout</a></div><div class="ttdeci">GtkEntry * unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00058">remmina_pref_dialog.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4592c110729ee7d530712da1d7fdc097"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">_RemminaPrefDialog::unlock_password</a></div><div class="ttdeci">GtkEntry * unlock_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00059">remmina_pref_dialog.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a9cd6e07816b16f7f94f55193426af4e0"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">_RemminaPrefDialog::button_keyboard_switch_tab_left</a></div><div class="ttdeci">GtkButton * button_keyboard_switch_tab_left</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00093">remmina_pref_dialog.h:93</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a3a830a938ddb7dde8a580e108a7ad028"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">_RemminaPrefDialog::checkbutton_applet_start_in_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_start_in_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00088">remmina_pref_dialog.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa618b528fc78d3253f0fc2c5ffacbde2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">_RemminaPrefDialog::button_keyboard_auto_fit</a></div><div class="ttdeci">GtkButton * button_keyboard_auto_fit</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00092">remmina_pref_dialog.h:92</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a066bf2941261efad64c5942a69a6e33d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">_RemminaPrefDialog::label_terminal_background</a></div><div class="ttdeci">GtkLabel * label_terminal_background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00108">remmina_pref_dialog.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html"><div class="ttname"><a href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00046">remmina_pref_dialog.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a3fe278a66ed7fba91a944df3c60dd7b6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">_RemminaPrefDialog::button_term_cs</a></div><div class="ttdeci">GtkFileChooser * button_term_cs</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00134">remmina_pref_dialog.h:134</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a277ea20324585713697f7d9572b965f1"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">_RemminaPrefDialog::checkbutton_applet_light_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_light_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00087">remmina_pref_dialog.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a877c22a6809bb846cc6555c4100ef877"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">_RemminaPrefDialog::colorbutton_color0</a></div><div class="ttdeci">GtkColorButton * colorbutton_color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00118">remmina_pref_dialog.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a5e3df5e92bbf0aec0f317216de88681d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">_RemminaPrefDialog::comboboxtext_options_scale_quality</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_scale_quality</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00070">remmina_pref_dialog.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ac15ed49a7e4ab8926bf4385737e0382b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">_RemminaPrefDialog::entry_options_scroll</a></div><div class="ttdeci">GtkEntry * entry_options_scroll</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00079">remmina_pref_dialog.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a120e306368b8fc06841c2fc2d48778c5"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">_RemminaPrefDialog::checkbutton_appearance_show_tabs</a></div><div class="ttdeci">GtkCheckButton * checkbutton_appearance_show_tabs</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00063">remmina_pref_dialog.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a66b5ccfa48e93ed57dd5aae00039c39b"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">_RemminaPrefDialog::unlock_repassword</a></div><div class="ttdeci">GtkEntry * unlock_repassword</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00060">remmina_pref_dialog.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a956db17e48d1c446df7677d3e9f917e2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">_RemminaPrefDialog::colorbutton_foreground</a></div><div class="ttdeci">GtkColorButton * colorbutton_foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00107">remmina_pref_dialog.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_priv_html_ae835f35a6211b2858701e4a3be835f05"><div class="ttname"><a href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05">_RemminaPrefDialogPriv::resolutions_list</a></div><div class="ttdeci">GtkWidget * resolutions_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00043">remmina_pref_dialog.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a46e2af690d5d39c6d3ec2c07431d76a8"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">_RemminaPrefDialog::colorbutton_color11</a></div><div class="ttdeci">GtkColorButton * colorbutton_color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00129">remmina_pref_dialog.h:129</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6cf1e8aa7d474aacc471b625d6330826"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">_RemminaPrefDialog::button_keyboard_host_key</a></div><div class="ttdeci">GtkButton * button_keyboard_host_key</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00090">remmina_pref_dialog.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a4a8bc03207480e0e616794ea5efc71f6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">_RemminaPrefDialog::comboboxtext_appearance_tab_interface</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_tab_interface</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00069">remmina_pref_dialog.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_acaf49bcad1a8975b1ab0de2c241ff912"><div class="ttname"><a href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">_RemminaPrefDialog::checkbutton_applet_disable_tray</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_disable_tray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00086">remmina_pref_dialog.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a517186be14ab61d72d6212592b958972"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">_RemminaPrefDialog::comboboxtext_options_ssh_loglevel</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00071">remmina_pref_dialog.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a597cc3d6e631babe57df7a472cbb2876"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">_RemminaPrefDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00047">remmina_pref_dialog.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_priv_html"><div class="ttname"><a href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00042">remmina_pref_dialog.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a16f07e2dad152f37ebbabdba18346ff3"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">_RemminaPrefDialog::label_terminal_cursor_color</a></div><div class="ttdeci">GtkLabel * label_terminal_cursor_color</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00114">remmina_pref_dialog.h:114</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6fb085d3efced0a38d3d7d38e1eb5903"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903">_RemminaPrefDialog::button_options_resolutions</a></div><div class="ttdeci">GtkButton * button_options_resolutions</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00082">remmina_pref_dialog.h:82</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a19ba9bbbff353b8e36810d423e6f7e8f"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f">remmina_prefdiag_unlock_repwd_on_changed</a></div><div class="ttdeci">void remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00151">remmina_pref_dialog.c:151</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c">REMMINA_PREF_APPLET_TAB</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00142">remmina_pref_dialog.h:142</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a86e2ecb7e448ef661c2857de7b724061"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">_RemminaPrefDialog::comboboxtext_options_double_click</a></div><div class="ttdeci">GtkComboBox * comboboxtext_options_double_click</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00067">remmina_pref_dialog.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1138eed66b8fe0a2386ee07ec33557be"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">_RemminaPrefDialog::button_keyboard_minimize</a></div><div class="ttdeci">GtkButton * button_keyboard_minimize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00099">remmina_pref_dialog.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aad290cb37b80d5295452ad1fd4322acc"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">_RemminaPrefDialog::checkbutton_options_ssh_parseconfig</a></div><div class="ttdeci">GtkCheckButton * checkbutton_options_ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00073">remmina_pref_dialog.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad92dc760283fa996f40a976bcc3f3d2d"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">_RemminaPrefDialog::switch_options_deny_screenshot_clipboard</a></div><div class="ttdeci">GtkSwitch * switch_options_deny_screenshot_clipboard</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00055">remmina_pref_dialog.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aa6e591a542ea2a29a5a00e2bf411d2c6"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">_RemminaPrefDialog::checkbutton_applet_hide_totals</a></div><div class="ttdeci">GtkCheckButton * checkbutton_applet_hide_totals</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00085">remmina_pref_dialog.h:85</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ad9ea2466137b35ccef6896126954bc1a"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">_RemminaPrefDialog::colorbutton_color10</a></div><div class="ttdeci">GtkColorButton * colorbutton_color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00128">remmina_pref_dialog.h:128</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af145d83f411becab1a1f35787dd2196c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">_RemminaPrefDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00048">remmina_pref_dialog.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ae2c902d8ab3e2cb84eaec25d597afac8"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">_RemminaPrefDialog::button_keyboard_switch_tab_right</a></div><div class="ttdeci">GtkButton * button_keyboard_switch_tab_right</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00094">remmina_pref_dialog.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a917c214ab0662ebd06db3eb7f7c47bf2"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">_RemminaPrefDialog::comboboxtext_appearance_view_mode</a></div><div class="ttdeci">GtkComboBox * comboboxtext_appearance_view_mode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00068">remmina_pref_dialog.h:68</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adc48fc8abfc2c8e06fea5d42d9790ec9"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">_RemminaPrefDialog::button_keyboard_scaled</a></div><div class="ttdeci">GtkButton * button_keyboard_scaled</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00095">remmina_pref_dialog.h:95</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a1b6e2744506a9e396d8cbae0529356bb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">_RemminaPrefDialog::colorbutton_color8</a></div><div class="ttdeci">GtkColorButton * colorbutton_color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00126">remmina_pref_dialog.h:126</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a7aa4cc48f6f7ecf608f5fcf2b4147b18"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">_RemminaPrefDialog::switch_permit_send_stats</a></div><div class="ttdeci">GtkSwitch * switch_permit_send_stats</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00066">remmina_pref_dialog.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adda92d5335d281571b58a40f3ebe95d4"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">_RemminaPrefDialog::colorbutton_background</a></div><div class="ttdeci">GtkColorButton * colorbutton_background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00109">remmina_pref_dialog.h:109</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_af9cc0aee7b72d2b3da5a193b8e7b0171"><div class="ttname"><a href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">_RemminaPrefDialog::switch_security_use_master_password</a></div><div class="ttdeci">GtkSwitch * switch_security_use_master_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00057">remmina_pref_dialog.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a6bf0904ad661465e2a522b7dced372ab"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">_RemminaPrefDialog::colorbutton_cursor</a></div><div class="ttdeci">GtkColorButton * colorbutton_cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00117">remmina_pref_dialog.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_adf1125853e83c16e1ce9704c761d7b9c"><div class="ttname"><a href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">_RemminaPrefDialog::colorbutton_color7</a></div><div class="ttdeci">GtkColorButton * colorbutton_color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00125">remmina_pref_dialog.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a270f2b3596d5f836b0db47b21b049fcb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">_RemminaPrefDialog::priv</a></div><div class="ttdeci">RemminaPrefDialogPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00136">remmina_pref_dialog.h:136</a></div></div>
+<div class="ttc" id="remmina__pref__dialog_8h_html_a482168ebe847fb3d052f940e8b82a69a"><div class="ttname"><a href="remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a">remmina_pref_dialog_new</a></div><div class="ttdeci">G_BEGIN_DECLS GtkDialog * remmina_pref_dialog_new(gint default_tab, GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8c_source.html#l00613">remmina_pref_dialog.c:613</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a280cb6d6e959c7e395a887defde7a485"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">_RemminaPrefDialog::colorbutton_color9</a></div><div class="ttdeci">GtkColorButton * colorbutton_color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00127">remmina_pref_dialog.h:127</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_aca3d7c47a24dc2722496670937a57cbb"><div class="ttname"><a href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">_RemminaPrefDialog::label_terminal_bright_colors</a></div><div class="ttdeci">GtkLabel * label_terminal_bright_colors</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00116">remmina_pref_dialog.h:116</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a995f847743fb828f3400559cea4fff35"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">_RemminaPrefDialog::colorbutton_color12</a></div><div class="ttdeci">GtkColorButton * colorbutton_color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00130">remmina_pref_dialog.h:130</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_ab4c71aaab278901ae411d68abf97a123"><div class="ttname"><a href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">_RemminaPrefDialog::filechooserbutton_options_datadir_path</a></div><div class="ttdeci">GtkFileChooser * filechooserbutton_options_datadir_path</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00051">remmina_pref_dialog.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_pref_dialog_html_a8d88c38e27116711851bfb573e90b811"><div class="ttname"><a href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">_RemminaPrefDialog::colorbutton_color1</a></div><div class="ttdeci">GtkColorButton * colorbutton_color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref__dialog_8h_source.html#l00119">remmina_pref_dialog.h:119</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__pref__dialog_8h.html">remmina_pref_dialog.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__protocol__widget_8c.html b/docs/remmina__protocol__widget_8c.html
new file mode 100644
index 000000000..93f1ded12
--- /dev/null
+++ b/docs/remmina__protocol__widget_8c.html
@@ -0,0 +1,3290 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_protocol_widget.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__protocol__widget_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_protocol_widget.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__protocol__widget_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_mp_run_info.html">MpRunInfo</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a91d88c61dd84299369fe3c79e19821b1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">RemminaProtocolWidgetSignalData</a></td></tr>
+<tr class="separator:a91d88c61dd84299369fe3c79e19821b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a9275874ac61d3750aa677a36da714373"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> { <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>,
+<a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>,
+<a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a>
+ }</td></tr>
+<tr class="separator:a9275874ac61d3750aa677a36da714373"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a247c73c70d9c58427022a4dbcd638d32"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32">G_DEFINE_TYPE</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>, remmina_protocol_widget, GTK_TYPE_EVENT_BOX)</td></tr>
+<tr class="separator:a247c73c70d9c58427022a4dbcd638d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c125f58aa4fac0e4c88f293e4d4dd74"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74">remmina_protocol_widget_class_init</a> (<a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">RemminaProtocolWidgetClass</a> *klass)</td></tr>
+<tr class="separator:a8c125f58aa4fac0e4c88f293e4d4dd74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11480396cb379860d16d9d41ef91ecb1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget_close_all_tunnels</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a11480396cb379860d16d9d41ef91ecb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e54d9bb42d2d337527d3af657ef1e1f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget_destroy</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:a7e54d9bb42d2d337527d3af657ef1e1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a290eb68f0e86de1b7b82e2d98a1494d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a290eb68f0e86de1b7b82e2d98a1494d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fcec40aae330e115d1bae66aeefb3df"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df">remmina_protocol_widget_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a0fcec40aae330e115d1bae66aeefb3df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76ad91e7f8648699f71c466e203aa6dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real</a> (gpointer data)</td></tr>
+<tr class="separator:a76ad91e7f8648699f71c466e203aa6dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fb4c2252289e8e891376db6279ef8f5"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">cancel_open_connection_cb</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:a4fb4c2252289e8e891376db6279ef8f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6399c3828908e36ed6202b5599bd206b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6399c3828908e36ed6202b5599bd206b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69757e0c39fa9fcf31800f6375772016"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">conn_closed</a> (gpointer data)</td></tr>
+<tr class="separator:a69757e0c39fa9fcf31800f6375772016"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1cae52cad394f317c712eb4fd709d261"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1cae52cad394f317c712eb4fd709d261"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4a20ef0ff8cc86feeba345498179e48"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">conn_opened</a> (gpointer data)</td></tr>
+<tr class="separator:af4a20ef0ff8cc86feeba345498179e48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05b5edfc3d3d0dcff1745d1d35aaca5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a05b5edfc3d3d0dcff1745d1d35aaca5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8565f01f8b5a3f0ee4518bda5f923f9a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a> (gpointer data)</td></tr>
+<tr class="separator:a8565f01f8b5a3f0ee4518bda5f923f9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa88afa1e3f04974974a8be324b0a930e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa88afa1e3f04974974a8be324b0a930e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add3775989fb5ed7a7f1f7c9b5980a94e"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a> (gpointer data)</td></tr>
+<tr class="separator:add3775989fb5ed7a7f1f7c9b5980a94e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2551dd6f53480609596d2695040fba5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2551dd6f53480609596d2695040fba5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaf728bb767c1bbdda6a0d8dc3553565"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a> (gpointer data)</td></tr>
+<tr class="separator:aeaf728bb767c1bbdda6a0d8dc3553565"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9acf045c5a3eec5b7f748678dee0d3ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9acf045c5a3eec5b7f748678dee0d3ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa41324b7175c46bb42b978332db95d22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa41324b7175c46bb42b978332db95d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a480f842fac65440c367bf3c3d87d2601"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="memdesc:a480f842fac65440c367bf3c3d87d2601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the plugin accepts keystrokes. <a href="#a480f842fac65440c367bf3c3d87d2601">More...</a><br /></td></tr>
+<tr class="separator:a480f842fac65440c367bf3c3d87d2601"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affb2413c00f0681fe08f90523f7e1471"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkMenuItem *widget)</td></tr>
+<tr class="memdesc:affb2413c00f0681fe08f90523f7e1471"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send to the plugin some keystrokes. <a href="#affb2413c00f0681fe08f90523f7e1471">More...</a><br /></td></tr>
+<tr class="separator:affb2413c00f0681fe08f90523f7e1471"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ac13fc4a2653c40e0601183628c0ca"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td></tr>
+<tr class="separator:a57ac13fc4a2653c40e0601183628c0ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3e5a7f14aef4adb2e57d35e9c180b3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *signal_name)</td></tr>
+<tr class="separator:ac3e5a7f14aef4adb2e57d35e9c180b3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9b6a2c2665010ab09a6d9943f9850bd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af9b6a2c2665010ab09a6d9943f9850bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbe15328275677cb38bd8c8a2d5e039d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type)</td></tr>
+<tr class="separator:adbe15328275677cb38bd8c8a2d5e039d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4017a800d7803a40d606ffce2578509a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a4017a800d7803a40d606ffce2578509a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a630e96e5b914d60d678ae8eaad4cd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type, gint id)</td></tr>
+<tr class="separator:a6a630e96e5b914d60d678ae8eaad4cd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a605b69a9aa4393024369cc5070488692"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a605b69a9aa4393024369cc5070488692"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1caaa7bea6ef53e5c7e8109f3d0814e1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget_on_key_press</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1caaa7bea6ef53e5c7e8109f3d0814e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1f95eb1e31c05ae0bc4027496ceafb0"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget_on_key_release</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac1f95eb1e31c05ae0bc4027496ceafb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13e14fa81f7ca52942415a7caf5b932c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkWidget *widget)</td></tr>
+<tr class="separator:a13e14fa81f7ca52942415a7caf5b932c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aaadd752a3275a0a8e0018a3dd669f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> func)</td></tr>
+<tr class="separator:a5aaadd752a3275a0a8e0018a3dd669f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78b123eca6709bceeacda7d791a94bf1"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, const gchar *msg, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:a78b123eca6709bceeacda7d791a94bf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97cba8208a4348446159bf465b3233f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="separator:a97cba8208a4348446159bf465b3233f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99ba55ddcb17c9e87ca233fa83787227"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">cancel_init_tunnel_cb</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:a99ba55ddcb17c9e87ca233fa83787227"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5567a5c55d9a880d174faabafcd15fa3"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5567a5c55d9a880d174faabafcd15fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a93da80662ff18b93270ced59243ce3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">cancel_start_direct_tunnel_cb</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:a0a93da80662ff18b93270ced59243ce3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecd801fbe5399bbeb5832657bce193cb"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget_tunnel_destroy</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gpointer data)</td></tr>
+<tr class="separator:aecd801fbe5399bbeb5832657bce193cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d55210413d6a313478f81cf76ecf1b7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus)</td></tr>
+<tr class="memdesc:a9d55210413d6a313478f81cf76ecf1b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start an SSH tunnel if possible and return the host:port string. <a href="#a9d55210413d6a313478f81cf76ecf1b7">More...</a><br /></td></tr>
+<tr class="separator:a9d55210413d6a313478f81cf76ecf1b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeffe07c6412286d99ba04f05fe74aeac"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">cancel_start_reverse_tunnel_cb</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:aeffe07c6412286d99ba04f05fe74aeac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint local_port)</td></tr>
+<tr class="separator:aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12eddf3428a53201ee0a2ec422d2fa4a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean wait, const gchar *fmt,...)</td></tr>
+<tr class="separator:a12eddf3428a53201ee0a2ec422d2fa4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaa588b63800d3762b738fbbfd4a1736"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget_xport_tunnel_init_callback</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gpointer data)</td></tr>
+<tr class="separator:aeaa588b63800d3762b738fbbfd4a1736"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfac12e7a563dc06fb2f0c8307f40fee"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget_xport_tunnel_connect_callback</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gpointer data)</td></tr>
+<tr class="separator:adfac12e7a563dc06fb2f0c8307f40fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a450fbca7e27c952b6aaba6e33192051d"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget_xport_tunnel_disconnect_callback</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gpointer data)</td></tr>
+<tr class="separator:a450fbca7e27c952b6aaba6e33192051d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05f9694efc84de6273efa46d232b84f9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">cancel_connect_xport_cb</a> (void *cbdata, int btn)</td></tr>
+<tr class="separator:a05f9694efc84de6273efa46d232b84f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a172fa9cf2ce196c9846a3e47ea9036b4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func)</td></tr>
+<tr class="separator:a172fa9cf2ce196c9846a3e47ea9036b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15368afcbeb770f8cf25941bd49e7b54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint display)</td></tr>
+<tr class="separator:a15368afcbeb770f8cf25941bd49e7b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4c6435ef92e34a94270069ce1861907"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab4c6435ef92e34a94270069ce1861907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8df6a87e19b7751b26820ef4a668de9"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad8df6a87e19b7751b26820ef4a668de9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf355ea7103fc57a4cbc7b815cde2995"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaf355ea7103fc57a4cbc7b815cde2995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41b62f211a8a8e960bc80aa1ba6b0380"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint width)</td></tr>
+<tr class="separator:a41b62f211a8a8e960bc80aa1ba6b0380"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae609b351fff17c235251b0ba7c480da5"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae609b351fff17c235251b0ba7c480da5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd106cec729a80405c6097e4c662044"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint height)</td></tr>
+<tr class="separator:aadd106cec729a80405c6097e4c662044"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ec62969da54155e24edcb1d998f93f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5ec62969da54155e24edcb1d998f93f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6e2d00646e8268aa0e8bbe31b77db48"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode)</td></tr>
+<tr class="separator:ad6e2d00646e8268aa0e8bbe31b77db48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25bcb2ae99449624fed6f770218e3d25"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a25bcb2ae99449624fed6f770218e3d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b19dbe685e4465e7f06706270e120fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean expand)</td></tr>
+<tr class="separator:a0b19dbe685e4465e7f06706270e120fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab2f304822ccfd4979854ef1afd81771"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aab2f304822ccfd4979854ef1afd81771"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a508044024b303c286a0e643e44d85a29"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a508044024b303c286a0e643e44d85a29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95088334da86faf9520383629fff48af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *fmt,...)</td></tr>
+<tr class="separator:a95088334da86faf9520383629fff48af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2830f756dfc3d735b57b0c5753c429e3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2830f756dfc3d735b57b0c5753c429e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2506e80d482c34532d0e534856452069"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2506e80d482c34532d0e534856452069"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0b0a97022961c198c3343dd2433d7cb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a> (void *user_data, int button)</td></tr>
+<tr class="separator:aa0b0a97022961c198c3343dd2433d7cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9639b76ac0a92647ce08bdfe943d113"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget_dialog_mt_setup</a> (gpointer user_data)</td></tr>
+<tr class="separator:aa9639b76ac0a92647ce08bdfe943d113"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25797eafabe9d6f5729b56145abe1572"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a> (<a class="el" href="struct_mp_run_info.html">MpRunInfo</a> *mpri)</td></tr>
+<tr class="separator:a25797eafabe9d6f5729b56145abe1572"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a122e28e59acb89200937ff823b82ddaf"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">run_response_handler</a> (RemminaMessagePanel *mp, gint response_id, gpointer data)</td></tr>
+<tr class="separator:a122e28e59acb89200937ff823b82ddaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9abaedb8cc35838ef1444423a81507d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">run_unmap_handler</a> (RemminaMessagePanel *mp, gpointer data)</td></tr>
+<tr class="separator:ac9abaedb8cc35838ef1444423a81507d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b1e83afd68c2b7301fc4d6da6a8f6d8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">run_destroy_handler</a> (RemminaMessagePanel *mp, gpointer data)</td></tr>
+<tr class="separator:a7b1e83afd68c2b7301fc4d6da6a8f6d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a858e4756aa97ce424ccf12475c225c54"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a> (enum <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> dtype, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *strpasswordlabel)</td></tr>
+<tr class="separator:a858e4756aa97ce424ccf12475c225c54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9092c29f585fdabaf0ce7e865670053b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const char *msg)</td></tr>
+<tr class="separator:a9092c29f585fdabaf0ce7e865670053b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebc7c7d34c470081a52aa35d998ce868"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</td></tr>
+<tr class="separator:aebc7c7d34c470081a52aa35d998ce868"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad637ec849c497e4a0d4c723396aa6fba"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean want_domain, gboolean allow_password_saving)</td></tr>
+<tr class="separator:ad637ec849c497e4a0d4c723396aa6fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa674c14f3a46dd5eb6b53d6f8ce6bd31"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa674c14f3a46dd5eb6b53d6f8ce6bd31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a262d75d6b535bd8c623e607805db4084"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</td></tr>
+<tr class="separator:a262d75d6b535bd8c623e607805db4084"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf75fd4bac28a3d53da064b2905f23c1"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</td></tr>
+<tr class="separator:acf75fd4bac28a3d53da064b2905f23c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96159bd8e9d70c74967e666e2f188df0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a96159bd8e9d70c74967e666e2f188df0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc52d61f77327534286f57e563e0923"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a3fc52d61f77327534286f57e563e0923"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c15fa81642c52ef382e1dbe34ffb6ac"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7c15fa81642c52ef382e1dbe34ffb6ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ed3110b7b030bccd0ff9ed70e86da2d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9ed3110b7b030bccd0ff9ed70e86da2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9473da27fd10eb46ef8360f9ad4be86d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9473da27fd10eb46ef8360f9ad4be86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70aecb9af2ea35527e8d058d1d87a0d3"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a70aecb9af2ea35527e8d058d1d87a0d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9632c73b32531b7bea976e10204670b"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab9632c73b32531b7bea976e10204670b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08d312825fc0de9f9286279d99f763a1"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a08d312825fc0de9f9286279d99f763a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab863cc1442a992adfa323bc77ab88504"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab863cc1442a992adfa323bc77ab88504"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a278e13b53a4fdb65498e00e908edb98d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint port)</td></tr>
+<tr class="separator:a278e13b53a4fdb65498e00e908edb98d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ed85f4ea19e0660dbf46f4f3dc4b895"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7ed85f4ea19e0660dbf46f4f3dc4b895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a843c2455a10c9382aee454515f9e7f8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a843c2455a10c9382aee454515f9e7f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ef0523afadadc9984d53fb02ecc01ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8ef0523afadadc9984d53fb02ecc01ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04f0a11e50cdbd98ab80984fd5aca16d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget_chat_on_destroy</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a04f0a11e50cdbd98ab80984fd5aca16d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66263e6e7da79357ceb80d32b191d9f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *name, void(*on_send)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text), void(*on_destroy)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp))</td></tr>
+<tr class="separator:a66263e6e7da79357ceb80d32b191d9f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a3a9ba7422fc302b0b412ac771c9953"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4a3a9ba7422fc302b0b412ac771c9953"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2522242b3f39ee84ee8cf75170de0c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)</td></tr>
+<tr class="separator:ae2522242b3f39ee84ee8cf75170de0c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac705ffa194e3c3457e9a0a1bd6c79be8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ac705ffa194e3c3457e9a0a1bd6c79be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c2137462d3168e90c812f1ce75a6e62"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a> (void)</td></tr>
+<tr class="separator:a5c2137462d3168e90c812f1ce75a6e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bcd0d356c7215dc0f791c9744360705"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a> (GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action)</td></tr>
+<tr class="separator:a9bcd0d356c7215dc0f791c9744360705"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14684e3222e6afb1b43d77634a174767"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a14684e3222e6afb1b43d77634a174767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a2c2a41aeee8f3ef6481378a95c02c130"><td class="memItemLeft" align="right" valign="top">static guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a> [<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td></tr>
+<tr class="separator:a2c2a41aeee8f3ef6481378a95c02c130"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a91d88c61dd84299369fe3c79e19821b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91d88c61dd84299369fe3c79e19821b1">&#9670;&nbsp;</a></span>RemminaProtocolWidgetSignalData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a> <a class="el" href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">RemminaProtocolWidgetSignalData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a9275874ac61d3750aa677a36da714373"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9275874ac61d3750aa677a36da714373">&#9670;&nbsp;</a></span>panel_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c"></a>RPWDT_AUTH&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65"></a>RPWDT_QUESTIONYESNO&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed"></a>RPWDT_AUTHX509&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00104">104</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa0b0a97022961c198c3343dd2433d7cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa0b0a97022961c198c3343dd2433d7cb">&#9670;&nbsp;</a></span>authpanel_mt_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void authpanel_mt_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>button</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01228">1228</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a05f9694efc84de6273efa46d232b84f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05f9694efc84de6273efa46d232b84f9">&#9670;&nbsp;</a></span>cancel_connect_xport_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cancel_connect_xport_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01041">1041</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a99ba55ddcb17c9e87ca233fa83787227"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99ba55ddcb17c9e87ca233fa83787227">&#9670;&nbsp;</a></span>cancel_init_tunnel_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cancel_init_tunnel_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00729">729</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fb4c2252289e8e891376db6279ef8f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fb4c2252289e8e891376db6279ef8f5">&#9670;&nbsp;</a></span>cancel_open_connection_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cancel_open_connection_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00293">293</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a0a93da80662ff18b93270ced59243ce3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a93da80662ff18b93270ced59243ce3">&#9670;&nbsp;</a></span>cancel_start_direct_tunnel_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cancel_start_direct_tunnel_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00774">774</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aeffe07c6412286d99ba04f05fe74aeac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeffe07c6412286d99ba04f05fe74aeac">&#9670;&nbsp;</a></span>cancel_start_reverse_tunnel_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void cancel_start_reverse_tunnel_cb </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cbdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>btn</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00905">905</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a69757e0c39fa9fcf31800f6375772016"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69757e0c39fa9fcf31800f6375772016">&#9670;&nbsp;</a></span>conn_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean conn_closed </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00327">327</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="af4a20ef0ff8cc86feeba345498179e48"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4a20ef0ff8cc86feeba345498179e48">&#9670;&nbsp;</a></span>conn_opened()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean conn_opened </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00352">352</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aeaf728bb767c1bbdda6a0d8dc3553565"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeaf728bb767c1bbdda6a0d8dc3553565">&#9670;&nbsp;</a></span>desktop_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean desktop_resize </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00416">416</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a247c73c70d9c58427022a4dbcd638d32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a247c73c70d9c58427022a4dbcd638d32">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_protocol_widget&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_EVENT_BOX&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00110">110</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a605b69a9aa4393024369cc5070488692"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a605b69a9aa4393024369cc5070488692">&#9670;&nbsp;</a></span>remmina_protocol_widget_call_feature_by_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_call_feature_by_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00628">628</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a6a630e96e5b914d60d678ae8eaad4cd9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a630e96e5b914d60d678ae8eaad4cd9">&#9670;&nbsp;</a></span>remmina_protocol_widget_call_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_call_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00615">615</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a4a3a9ba7422fc302b0b412ac771c9953"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a3a9ba7422fc302b0b412ac771c9953">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01729">1729</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a04f0a11e50cdbd98ab80984fd5aca16d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04f0a11e50cdbd98ab80984fd5aca16d">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_on_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_chat_on_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01707">1707</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a66263e6e7da79357ceb80d32b191d9f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66263e6e7da79357ceb80d32b191d9f2">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)&#160;</td>
+ <td class="paramname"><em>on_send</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)&#160;</td>
+ <td class="paramname"><em>on_destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01713">1713</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae2522242b3f39ee84ee8cf75170de0c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2522242b3f39ee84ee8cf75170de0c0">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_receive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_receive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01736">1736</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a8c125f58aa4fac0e4c88f293e4d4dd74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c125f58aa4fac0e4c88f293e4d4dd74">&#9670;&nbsp;</a></span>remmina_protocol_widget_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">RemminaProtocolWidgetClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00129">129</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a11480396cb379860d16d9d41ef91ecb1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11480396cb379860d16d9d41ef91ecb1">&#9670;&nbsp;</a></span>remmina_protocol_widget_close_all_tunnels()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_close_all_tunnels </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00150">150</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa41324b7175c46bb42b978332db95d22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa41324b7175c46bb42b978332db95d22">&#9670;&nbsp;</a></span>remmina_protocol_widget_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00432">432</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9acf045c5a3eec5b7f748678dee0d3ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9acf045c5a3eec5b7f748678dee0d3ee">&#9670;&nbsp;</a></span>remmina_protocol_widget_desktop_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_desktop_resize </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00424">424</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7e54d9bb42d2d337527d3af657ef1e1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e54d9bb42d2d337527d3af657ef1e1f">&#9670;&nbsp;</a></span>remmina_protocol_widget_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00168">168</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a858e4756aa97ce424ccf12475c225c54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a858e4756aa97ce424ccf12475c225c54">&#9670;&nbsp;</a></span>remmina_protocol_widget_dialog()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static int remmina_protocol_widget_dialog </td>
+ <td>(</td>
+ <td class="paramtype">enum <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a>&#160;</td>
+ <td class="paramname"><em>dtype</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a>&#160;</td>
+ <td class="paramname"><em>pflags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>strpasswordlabel</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01337">1337</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9639b76ac0a92647ce08bdfe943d113"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9639b76ac0a92647ce08bdfe943d113">&#9670;&nbsp;</a></span>remmina_protocol_widget_dialog_mt_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_dialog_mt_setup </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01261">1261</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3e5a7f14aef4adb2e57d35e9c180b3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3e5a7f14aef4adb2e57d35e9c180b3b">&#9670;&nbsp;</a></span>remmina_protocol_widget_emit_signal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_emit_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>signal_name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00565">565</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9473da27fd10eb46ef8360f9ad4be86d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9473da27fd10eb46ef8360f9ad4be86d">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_cacert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_cacert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01556">1556</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a70aecb9af2ea35527e8d058d1d87a0d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70aecb9af2ea35527e8d058d1d87a0d3">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_cacrl()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_cacrl </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01565">1565</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab9632c73b32531b7bea976e10204670b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9632c73b32531b7bea976e10204670b">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_clientcert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_clientcert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01574">1574</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a08d312825fc0de9f9286279d99f763a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08d312825fc0de9f9286279d99f763a1">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_clientkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_clientkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01583">1583</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ec62969da54155e24edcb1d998f93f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ec62969da54155e24edcb1d998f93f7">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_current_scale_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> remmina_protocol_widget_get_current_scale_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01141">1141</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7c15fa81642c52ef382e1dbe34ffb6ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c15fa81642c52ef382e1dbe34ffb6ac">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_domain()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_domain </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01544">1544</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a508044024b303c286a0e643e44d85a29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a508044024b303c286a0e643e44d85a29">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_error_message()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_protocol_widget_get_error_message </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01172">1172</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a25bcb2ae99449624fed6f770218e3d25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25bcb2ae99449624fed6f770218e3d25">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_get_expand </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01153">1153</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="af9b6a2c2665010ab09a6d9943f9850bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9b6a2c2665010ab09a6d9943f9850bd">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_features()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>* remmina_protocol_widget_get_features </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00586">586</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2506e80d482c34532d0e534856452069"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2506e80d482c34532d0e534856452069">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_protocol_widget_get_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01204">1204</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae609b351fff17c235251b0ba7c480da5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae609b351fff17c235251b0ba7c480da5">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01129">1129</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fc52d61f77327534286f57e563e0923"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fc52d61f77327534286f57e563e0923">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01538">1538</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad8df6a87e19b7751b26820ef4a668de9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8df6a87e19b7751b26820ef4a668de9">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_profile_remote_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_profile_remote_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01109">1109</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4c6435ef92e34a94270069ce1861907"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4c6435ef92e34a94270069ce1861907">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_profile_remote_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_profile_remote_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01102">1102</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ed3110b7b030bccd0ff9ed70e86da2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ed3110b7b030bccd0ff9ed70e86da2d">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_savepassword()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_get_savepassword </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01550">1550</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a96159bd8e9d70c74967e666e2f188df0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96159bd8e9d70c74967e666e2f188df0">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_username()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_username </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01532">1532</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf355ea7103fc57a4cbc7b815cde2995"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf355ea7103fc57a4cbc7b815cde2995">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01117">1117</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a290eb68f0e86de1b7b82e2d98a1494d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a290eb68f0e86de1b7b82e2d98a1494d1">&#9670;&nbsp;</a></span>remmina_protocol_widget_grab_focus()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_grab_focus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00212">212</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aab2f304822ccfd4979854ef1afd81771"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab2f304822ccfd4979854ef1afd81771">&#9670;&nbsp;</a></span>remmina_protocol_widget_has_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_has_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01166">1166</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a0fcec40aae330e115d1bae66aeefb3df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0fcec40aae330e115d1bae66aeefb3df">&#9670;&nbsp;</a></span>remmina_protocol_widget_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_protocol_widget_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00225">225</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5567a5c55d9a880d174faabafcd15fa3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5567a5c55d9a880d174faabafcd15fa3">&#9670;&nbsp;</a></span>remmina_protocol_widget_init_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a>* remmina_protocol_widget_init_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00734">734</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2830f756dfc3d735b57b0c5753c429e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2830f756dfc3d735b57b0c5753c429e3">&#9670;&nbsp;</a></span>remmina_protocol_widget_is_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_is_closed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01198">1198</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a97cba8208a4348446159bf465b3233f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97cba8208a4348446159bf465b3233f5">&#9670;&nbsp;</a></span>remmina_protocol_widget_mpdestroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_mpdestroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00712">712</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a78b123eca6709bceeacda7d791a94bf1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78b123eca6709bceeacda7d791a94bf1">&#9670;&nbsp;</a></span>remmina_protocol_widget_mpprogress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_protocol_widget_mpprogress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00687">687</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5c2137462d3168e90c812f1ce75a6e62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c2137462d3168e90c812f1ce75a6e62">&#9670;&nbsp;</a></span>remmina_protocol_widget_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_protocol_widget_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01781">1781</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a1caaa7bea6ef53e5c7e8109f3d0814e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1caaa7bea6ef53e5c7e8109f3d0814e1">&#9670;&nbsp;</a></span>remmina_protocol_widget_on_key_press()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_on_key_press </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00657">657</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1f95eb1e31c05ae0bc4027496ceafb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1f95eb1e31c05ae0bc4027496ceafb0">&#9670;&nbsp;</a></span>remmina_protocol_widget_on_key_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_on_key_release </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00665">665</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a6399c3828908e36ed6202b5599bd206b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6399c3828908e36ed6202b5599bd206b">&#9670;&nbsp;</a></span>remmina_protocol_widget_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00300">300</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a76ad91e7f8648699f71c466e203aa6dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76ad91e7f8648699f71c466e203aa6dd">&#9670;&nbsp;</a></span>remmina_protocol_widget_open_connection_real()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_open_connection_real </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00238">238</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aebc7c7d34c470081a52aa35d998ce868"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebc7c7d34c470081a52aa35d998ce868">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_auth </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a>&#160;</td>
+ <td class="paramname"><em>pflags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password_prompt</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01419">1419</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad637ec849c497e4a0d4c723396aa6fba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad637ec849c497e4a0d4c723396aa6fba">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_authuserpwd_ssh_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_authuserpwd_ssh_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>want_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>allow_password_saving</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01427">1427</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa674c14f3a46dd5eb6b53d6f8ce6bd31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa674c14f3a46dd5eb6b53d6f8ce6bd31">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_authx509()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_authx509 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01481">1481</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="acf75fd4bac28a3d53da064b2905f23c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf75fd4bac28a3d53da064b2905f23c1">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_changed_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_changed_certificate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_fingerprint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>old_fingerprint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01510">1510</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ef0523afadadc9984d53fb02ecc01ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ef0523afadadc9984d53fb02ecc01ad">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_hide()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_hide </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01701">1701</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a262d75d6b535bd8c623e607805db4084"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a262d75d6b535bd8c623e607805db4084">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_new_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_new_certificate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fingerprint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01489">1489</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9092c29f585fdabaf0ce7e865670053b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9092c29f585fdabaf0ce7e865670053b">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_question_yesno()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_question_yesno </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>msg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01414">1414</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a843c2455a10c9382aee454515f9e7f8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a843c2455a10c9382aee454515f9e7f8b">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01695">1695</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a278e13b53a4fdb65498e00e908edb98d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a278e13b53a4fdb65498e00e908edb98d">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show_listen()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show_listen </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01646">1646</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7ed85f4ea19e0660dbf46f4f3dc4b895"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ed85f4ea19e0660dbf46f4f3dc4b895">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show_retry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show_retry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01674">1674</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a480f842fac65440c367bf3c3d87d2601"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a480f842fac65440c367bf3c3d87d2601">&#9670;&nbsp;</a></span>remmina_protocol_widget_plugin_receives_keystrokes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_plugin_receives_keystrokes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Check if the plugin accepts keystrokes. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00466">466</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a57ac13fc4a2653c40e0601183628c0ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57ac13fc4a2653c40e0601183628c0ca">&#9670;&nbsp;</a></span>remmina_protocol_widget_plugin_screenshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_plugin_screenshot </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *&#160;</td>
+ <td class="paramname"><em>rpsd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00555">555</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a4017a800d7803a40d606ffce2578509a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4017a800d7803a40d606ffce2578509a">&#9670;&nbsp;</a></span>remmina_protocol_widget_query_feature_by_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_query_feature_by_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00609">609</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="adbe15328275677cb38bd8c8a2d5e039d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adbe15328275677cb38bd8c8a2d5e039d">&#9670;&nbsp;</a></span>remmina_protocol_widget_query_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_query_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00592">592</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a13e14fa81f7ca52942415a7caf5b932c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13e14fa81f7ca52942415a7caf5b932c">&#9670;&nbsp;</a></span>remmina_protocol_widget_register_hostkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_register_hostkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00674">674</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab863cc1442a992adfa323bc77ab88504"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab863cc1442a992adfa323bc77ab88504">&#9670;&nbsp;</a></span>remmina_protocol_widget_save_cred()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_save_cred </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01592">1592</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9bcd0d356c7215dc0f791c9744360705"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9bcd0d356c7215dc0f791c9744360705">&#9670;&nbsp;</a></span>remmina_protocol_widget_send_keys_signals()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_send_keys_signals </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint *&#160;</td>
+ <td class="paramname"><em>keyvals</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>keyvals_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventType&#160;</td>
+ <td class="paramname"><em>action</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01790">1790</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="affb2413c00f0681fe08f90523f7e1471"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affb2413c00f0681fe08f90523f7e1471">&#9670;&nbsp;</a></span>remmina_protocol_widget_send_keystrokes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_send_keystrokes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Send to the plugin some keystrokes. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00474">474</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6e2d00646e8268aa0e8bbe31b77db48"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6e2d00646e8268aa0e8bbe31b77db48">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_current_scale_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_current_scale_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td>
+ <td class="paramname"><em>scalemode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01147">1147</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a15368afcbeb770f8cf25941bd49e7b54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15368afcbeb770f8cf25941bd49e7b54">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_display()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_display </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>display</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01089">1089</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a95088334da86faf9520383629fff48af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95088334da86faf9520383629fff48af">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01178">1178</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b19dbe685e4465e7f06706270e120fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b19dbe685e4465e7f06706270e120fa">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_expand </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>expand</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01159">1159</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aadd106cec729a80405c6097e4c662044"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadd106cec729a80405c6097e4c662044">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>height</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01135">1135</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5aaadd752a3275a0a8e0018a3dd669f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5aaadd752a3275a0a8e0018a3dd669f8">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_hostkey_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_hostkey_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00681">681</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a41b62f211a8a8e960bc80aa1ba6b0380"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41b62f211a8a8e960bc80aa1ba6b0380">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>width</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01123">1123</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac705ffa194e3c3457e9a0a1bd6c79be8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac705ffa194e3c3457e9a0a1bd6c79be8">&#9670;&nbsp;</a></span>remmina_protocol_widget_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_setup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01758">1758</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a1cae52cad394f317c712eb4fd709d261"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cae52cad394f317c712eb4fd709d261">&#9670;&nbsp;</a></span>remmina_protocol_widget_signal_connection_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_signal_connection_closed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00343">343</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a05b5edfc3d3d0dcff1745d1d35aaca5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05b5edfc3d3d0dcff1745d1d35aaca5c">&#9670;&nbsp;</a></span>remmina_protocol_widget_signal_connection_opened()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_signal_connection_opened </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00377">377</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a12eddf3428a53201ee0a2ec422d2fa4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12eddf3428a53201ee0a2ec422d2fa4a">&#9670;&nbsp;</a></span>remmina_protocol_widget_ssh_exec()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_ssh_exec </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>wait</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00942">942</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d55210413d6a313478f81cf76ecf1b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d55210413d6a313478f81cf76ecf1b7">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_direct_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_start_direct_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>port_plus</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start an SSH tunnel if possible and return the host:port string. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00816">816</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6d9f2f558fcd9e7fe58eefcde1c3c5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_reverse_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_start_reverse_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>local_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00912">912</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a172fa9cf2ce196c9846a3e47ea9036b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a172fa9cf2ce196c9846a3e47ea9036b4">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_xport_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_start_xport_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a>&#160;</td>
+ <td class="paramname"><em>init_func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01046">1046</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aecd801fbe5399bbeb5832657bce193cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecd801fbe5399bbeb5832657bce193cb">&#9670;&nbsp;</a></span>remmina_protocol_widget_tunnel_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_tunnel_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00780">780</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2551dd6f53480609596d2695040fba5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2551dd6f53480609596d2695040fba5d">&#9670;&nbsp;</a></span>remmina_protocol_widget_unlock_dynres()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_unlock_dynres </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00409">409</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa88afa1e3f04974974a8be324b0a930e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa88afa1e3f04974974a8be324b0a930e">&#9670;&nbsp;</a></span>remmina_protocol_widget_update_align()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_update_align </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00394">394</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a14684e3222e6afb1b43d77634a174767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14684e3222e6afb1b43d77634a174767">&#9670;&nbsp;</a></span>remmina_protocol_widget_update_remote_resolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_update_remote_resolution </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01829">1829</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="adfac12e7a563dc06fb2f0c8307f40fee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfac12e7a563dc06fb2f0c8307f40fee">&#9670;&nbsp;</a></span>remmina_protocol_widget_xport_tunnel_connect_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_xport_tunnel_connect_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01022">1022</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a450fbca7e27c952b6aaba6e33192051d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a450fbca7e27c952b6aaba6e33192051d">&#9670;&nbsp;</a></span>remmina_protocol_widget_xport_tunnel_disconnect_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_xport_tunnel_disconnect_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01028">1028</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aeaa588b63800d3762b738fbbfd4a1736"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeaa588b63800d3762b738fbbfd4a1736">&#9670;&nbsp;</a></span>remmina_protocol_widget_xport_tunnel_init_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_protocol_widget_xport_tunnel_init_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01006">1006</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7b1e83afd68c2b7301fc4d6da6a8f6d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b1e83afd68c2b7301fc4d6da6a8f6d8">&#9670;&nbsp;</a></span>run_destroy_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void run_destroy_handler </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01328">1328</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a122e28e59acb89200937ff823b82ddaf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a122e28e59acb89200937ff823b82ddaf">&#9670;&nbsp;</a></span>run_response_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void run_response_handler </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01312">1312</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac9abaedb8cc35838ef1444423a81507d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9abaedb8cc35838ef1444423a81507d">&#9670;&nbsp;</a></span>run_unmap_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void run_unmap_handler </td>
+ <td>(</td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01320">1320</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a25797eafabe9d6f5729b56145abe1572"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25797eafabe9d6f5729b56145abe1572">&#9670;&nbsp;</a></span>shutdown_loop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void shutdown_loop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="struct_mp_run_info.html">MpRunInfo</a> *&#160;</td>
+ <td class="paramname"><em>mpri</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01306">1306</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="add3775989fb5ed7a7f1f7c9b5980a94e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add3775989fb5ed7a7f1f7c9b5980a94e">&#9670;&nbsp;</a></span>unlock_dynres()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean unlock_dynres </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00401">401</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a8565f01f8b5a3f0ee4518bda5f923f9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8565f01f8b5a3f0ee4518bda5f923f9a">&#9670;&nbsp;</a></span>update_align()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean update_align </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00385">385</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a2c2a41aeee8f3ef6481378a95c02c130"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c2a41aeee8f3ef6481378a95c02c130">&#9670;&nbsp;</a></span>remmina_protocol_widget_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_protocol_widget_signals[<a class="el" href="remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00126">126</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__protocol__widget_8c.html">remmina_protocol_widget.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__protocol__widget_8c.js b/docs/remmina__protocol__widget_8c.js
new file mode 100644
index 000000000..bef23e5de
--- /dev/null
+++ b/docs/remmina__protocol__widget_8c.js
@@ -0,0 +1,112 @@
+var remmina__protocol__widget_8c =
+[
+ [ "_RemminaProtocolWidgetPriv", "struct___remmina_protocol_widget_priv.html", "struct___remmina_protocol_widget_priv" ],
+ [ "_RemminaProtocolWidgetSignalData", "struct___remmina_protocol_widget_signal_data.html", "struct___remmina_protocol_widget_signal_data" ],
+ [ "remmina_protocol_widget_dialog_mt_data_t", "structremmina__protocol__widget__dialog__mt__data__t.html", "structremmina__protocol__widget__dialog__mt__data__t" ],
+ [ "MpRunInfo", "struct_mp_run_info.html", "struct_mp_run_info" ],
+ [ "RemminaProtocolWidgetSignalData", "remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1", null ],
+ [ "panel_type", "remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373", [
+ [ "RPWDT_AUTH", "remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c", null ],
+ [ "RPWDT_QUESTIONYESNO", "remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65", null ],
+ [ "RPWDT_AUTHX509", "remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed", null ]
+ ] ],
+ [ "authpanel_mt_cb", "remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb", null ],
+ [ "cancel_connect_xport_cb", "remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9", null ],
+ [ "cancel_init_tunnel_cb", "remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227", null ],
+ [ "cancel_open_connection_cb", "remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5", null ],
+ [ "cancel_start_direct_tunnel_cb", "remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3", null ],
+ [ "cancel_start_reverse_tunnel_cb", "remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac", null ],
+ [ "conn_closed", "remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016", null ],
+ [ "conn_opened", "remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48", null ],
+ [ "desktop_resize", "remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565", null ],
+ [ "G_DEFINE_TYPE", "remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32", null ],
+ [ "remmina_protocol_widget_call_feature_by_ref", "remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692", null ],
+ [ "remmina_protocol_widget_call_feature_by_type", "remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9", null ],
+ [ "remmina_protocol_widget_chat_close", "remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953", null ],
+ [ "remmina_protocol_widget_chat_on_destroy", "remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d", null ],
+ [ "remmina_protocol_widget_chat_open", "remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2", null ],
+ [ "remmina_protocol_widget_chat_receive", "remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0", null ],
+ [ "remmina_protocol_widget_class_init", "remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74", null ],
+ [ "remmina_protocol_widget_close_all_tunnels", "remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1", null ],
+ [ "remmina_protocol_widget_close_connection", "remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22", null ],
+ [ "remmina_protocol_widget_desktop_resize", "remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee", null ],
+ [ "remmina_protocol_widget_destroy", "remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f", null ],
+ [ "remmina_protocol_widget_dialog", "remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54", null ],
+ [ "remmina_protocol_widget_dialog_mt_setup", "remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113", null ],
+ [ "remmina_protocol_widget_emit_signal", "remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b", null ],
+ [ "remmina_protocol_widget_get_cacert", "remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d", null ],
+ [ "remmina_protocol_widget_get_cacrl", "remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3", null ],
+ [ "remmina_protocol_widget_get_clientcert", "remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b", null ],
+ [ "remmina_protocol_widget_get_clientkey", "remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1", null ],
+ [ "remmina_protocol_widget_get_current_scale_mode", "remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7", null ],
+ [ "remmina_protocol_widget_get_domain", "remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac", null ],
+ [ "remmina_protocol_widget_get_error_message", "remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29", null ],
+ [ "remmina_protocol_widget_get_expand", "remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25", null ],
+ [ "remmina_protocol_widget_get_features", "remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd", null ],
+ [ "remmina_protocol_widget_get_file", "remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069", null ],
+ [ "remmina_protocol_widget_get_height", "remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5", null ],
+ [ "remmina_protocol_widget_get_password", "remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923", null ],
+ [ "remmina_protocol_widget_get_profile_remote_height", "remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9", null ],
+ [ "remmina_protocol_widget_get_profile_remote_width", "remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907", null ],
+ [ "remmina_protocol_widget_get_savepassword", "remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d", null ],
+ [ "remmina_protocol_widget_get_username", "remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0", null ],
+ [ "remmina_protocol_widget_get_width", "remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995", null ],
+ [ "remmina_protocol_widget_grab_focus", "remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1", null ],
+ [ "remmina_protocol_widget_has_error", "remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771", null ],
+ [ "remmina_protocol_widget_init", "remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df", null ],
+ [ "remmina_protocol_widget_init_tunnel", "remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3", null ],
+ [ "remmina_protocol_widget_is_closed", "remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3", null ],
+ [ "remmina_protocol_widget_mpdestroy", "remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5", null ],
+ [ "remmina_protocol_widget_mpprogress", "remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1", null ],
+ [ "remmina_protocol_widget_new", "remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62", null ],
+ [ "remmina_protocol_widget_on_key_press", "remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1", null ],
+ [ "remmina_protocol_widget_on_key_release", "remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0", null ],
+ [ "remmina_protocol_widget_open_connection", "remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b", null ],
+ [ "remmina_protocol_widget_open_connection_real", "remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd", null ],
+ [ "remmina_protocol_widget_panel_auth", "remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868", null ],
+ [ "remmina_protocol_widget_panel_authuserpwd_ssh_tunnel", "remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba", null ],
+ [ "remmina_protocol_widget_panel_authx509", "remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31", null ],
+ [ "remmina_protocol_widget_panel_changed_certificate", "remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1", null ],
+ [ "remmina_protocol_widget_panel_hide", "remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad", null ],
+ [ "remmina_protocol_widget_panel_new_certificate", "remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084", null ],
+ [ "remmina_protocol_widget_panel_question_yesno", "remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b", null ],
+ [ "remmina_protocol_widget_panel_show", "remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b", null ],
+ [ "remmina_protocol_widget_panel_show_listen", "remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d", null ],
+ [ "remmina_protocol_widget_panel_show_retry", "remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895", null ],
+ [ "remmina_protocol_widget_plugin_receives_keystrokes", "remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601", null ],
+ [ "remmina_protocol_widget_plugin_screenshot", "remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca", null ],
+ [ "remmina_protocol_widget_query_feature_by_ref", "remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a", null ],
+ [ "remmina_protocol_widget_query_feature_by_type", "remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d", null ],
+ [ "remmina_protocol_widget_register_hostkey", "remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c", null ],
+ [ "remmina_protocol_widget_save_cred", "remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504", null ],
+ [ "remmina_protocol_widget_send_keys_signals", "remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705", null ],
+ [ "remmina_protocol_widget_send_keystrokes", "remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471", null ],
+ [ "remmina_protocol_widget_set_current_scale_mode", "remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48", null ],
+ [ "remmina_protocol_widget_set_display", "remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54", null ],
+ [ "remmina_protocol_widget_set_error", "remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af", null ],
+ [ "remmina_protocol_widget_set_expand", "remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa", null ],
+ [ "remmina_protocol_widget_set_height", "remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044", null ],
+ [ "remmina_protocol_widget_set_hostkey_func", "remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8", null ],
+ [ "remmina_protocol_widget_set_width", "remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380", null ],
+ [ "remmina_protocol_widget_setup", "remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8", null ],
+ [ "remmina_protocol_widget_signal_connection_closed", "remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261", null ],
+ [ "remmina_protocol_widget_signal_connection_opened", "remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c", null ],
+ [ "remmina_protocol_widget_ssh_exec", "remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a", null ],
+ [ "remmina_protocol_widget_start_direct_tunnel", "remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7", null ],
+ [ "remmina_protocol_widget_start_reverse_tunnel", "remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c", null ],
+ [ "remmina_protocol_widget_start_xport_tunnel", "remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4", null ],
+ [ "remmina_protocol_widget_tunnel_destroy", "remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb", null ],
+ [ "remmina_protocol_widget_unlock_dynres", "remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d", null ],
+ [ "remmina_protocol_widget_update_align", "remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e", null ],
+ [ "remmina_protocol_widget_update_remote_resolution", "remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767", null ],
+ [ "remmina_protocol_widget_xport_tunnel_connect_callback", "remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee", null ],
+ [ "remmina_protocol_widget_xport_tunnel_disconnect_callback", "remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d", null ],
+ [ "remmina_protocol_widget_xport_tunnel_init_callback", "remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736", null ],
+ [ "run_destroy_handler", "remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8", null ],
+ [ "run_response_handler", "remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf", null ],
+ [ "run_unmap_handler", "remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d", null ],
+ [ "shutdown_loop", "remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572", null ],
+ [ "unlock_dynres", "remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e", null ],
+ [ "update_align", "remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a", null ],
+ [ "remmina_protocol_widget_signals", "remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__protocol__widget_8c_source.html b/docs/remmina__protocol__widget_8c_source.html
new file mode 100644
index 000000000..a24adf9cf
--- /dev/null
+++ b/docs/remmina__protocol__widget_8c_source.html
@@ -0,0 +1,381 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_protocol_widget.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__protocol__widget_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_protocol_widget.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__protocol__widget_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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtkx.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</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"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__chat__window_8h.html">remmina_chat_window.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__ext__exec_8h.html">remmina_ext_exec.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__plugin__manager_8h.html">remmina_plugin_manager.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__pref_8h.html">remmina_pref.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__protocol__widget_8h.html">remmina_protocol_widget.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__public_8h.html">remmina_public.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__ssh_8h.html">remmina_ssh.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__log_8h.html">remmina_log.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_WAYLAND</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkwayland.h&gt;</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html"> 62</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a> {</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec"> 63</a></span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> * <a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0"> 64</a></span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> * <a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d"> 65</a></span>&#160; <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a>;</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="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93"> 67</a></span>&#160; gint <a class="code" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380"> 68</a></span>&#160; gint <a class="code" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533"> 69</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c"> 70</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">scaler_expand</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d"> 72</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">has_error</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4"> 73</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">/* ssh_tunnels is an array of RemminaSSHTunnel*</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * the 1st one is the &quot;main&quot; tunnel, other tunnels are used for example in sftp commands */</span></div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116"> 76</a></span>&#160; GPtrArray * <a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211"> 77</a></span>&#160; <a class="code" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e"> 79</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6"> 81</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326"> 83</a></span>&#160; <a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</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"><a class="line" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10"> 85</a></span>&#160; gint <a class="code" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">profile_remote_width</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca"> 86</a></span>&#160; gint <a class="code" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">profile_remote_height</a>;</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"><a class="line" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483"> 88</a></span>&#160; RemminaMessagePanel * <a class="code" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640"> 89</a></span>&#160; RemminaMessagePanel * <a class="code" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b"> 90</a></span>&#160; RemminaMessagePanel * <a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">/* Data saved from the last message_panel when the user confirm */</span></div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885"> 93</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7"> 94</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f"> 95</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791"> 96</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">save_password</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e"> 98</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4"> 99</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05"> 100</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0"> 101</a></span>&#160; gchar * <a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;};</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"><a class="line" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373"> 104</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> {</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c"> 105</a></span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>,</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65"> 106</a></span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>,</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed"> 107</a></span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a></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;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32"> 110</a></span>&#160;<a class="code" href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>, remmina_protocol_widget, GTK_TYPE_EVENT_BOX)</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; CONNECT_SIGNAL,</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; DISCONNECT_SIGNAL,</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; DESKTOP_RESIZE_SIGNAL,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; UPDATE_ALIGN_SIGNAL,</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; UNLOCK_DYNRES_SIGNAL,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</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;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_signal_data.html"> 121</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a> {</div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a"> 122</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a">gp</a>;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada"> 123</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada">signal_name</a>;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;} <a class="code" href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">RemminaProtocolWidgetSignalData</a>;</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__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130"> 126</a></span>&#160;<span class="keyword">static</span> guint <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[<a class="code" href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a>] =</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;{ 0 };</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74"> 129</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74">remmina_protocol_widget_class_init</a>(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a> *klass)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[CONNECT_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;connect&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>, connect), NULL, NULL,</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[DISCONNECT_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;disconnect&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>, disconnect), NULL, NULL,</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[DESKTOP_RESIZE_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;desktop-resize&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>, <a class="code" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a>), NULL, NULL,</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[UPDATE_ALIGN_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;update-align&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>, <a class="code" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a>), NULL, NULL,</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a>[UNLOCK_DYNRES_SIGNAL] = g_signal_new(<span class="stringliteral">&quot;unlock-dynres&quot;</span>, G_TYPE_FROM_CLASS(klass),</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, G_STRUCT_OFFSET(<a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>, <a class="code" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a>), NULL, NULL,</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);</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__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1"> 150</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget_close_all_tunnels</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <span class="keywordtype">int</span> i;</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"> 155</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>) {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">for</span>(i = 0;i &lt; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len; i++) {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>((<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[i]);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; g_debug (<span class="stringliteral">&quot;LibSSH support turned off, no need to free SSH tunnel data&quot;</span>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#endif</span></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"> 164</span>&#160; g_ptr_array_set_size(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, 0);</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;</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"><a class="line" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f"> 168</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget_destroy</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gpointer data)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a>);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a> = NULL;</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; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a>);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a> = NULL;</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; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a>);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a> = NULL;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a>);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a> = NULL;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a>);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a> = NULL;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a>);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a> = NULL;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a>);</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a> = NULL;</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"> 193</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a>);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a> = NULL;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a>);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a> = NULL;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a> = NULL;</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; g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a> = NULL;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget_close_all_tunnels</a>(gp);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; g_ptr_array_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, TRUE);</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; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a> = NULL;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1"> 212</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; GtkWidget *child;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; child = gtk_bin_get_child(GTK_BIN(gp));</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; <span class="keywordflow">if</span> (child) {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gtk_widget_set_can_focus(child, TRUE);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; gtk_widget_grab_focus(child);</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;}</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__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df"> 225</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df">remmina_protocol_widget_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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="struct___remmina_protocol_widget_priv.html">RemminaProtocolWidgetPriv</a> *priv;</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; priv = g_new0(<a class="code" href="struct___remmina_protocol_widget_priv.html">RemminaProtocolWidgetPriv</a>, 1);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a> = priv;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a> = TRUE;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a> = g_ptr_array_new();</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"> 235</span>&#160; g_signal_connect(G_OBJECT(gp), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget_destroy</a>), NULL);</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;</div><div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd"> 238</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real</a>(gpointer data)</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = REMMINA_PROTOCOL_WIDGET(data);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; gint num_plugin;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; gint num_ssh;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a> = FALSE;</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; plugin = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">init</a>(gp);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">for</span> (num_plugin = 0, feature = (<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *)plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>; feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>; num_plugin++, feature++) {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; }</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; num_ssh = 0;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE))</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; num_ssh += 2;</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">if</span> (num_plugin + num_ssh == 0) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a> = NULL;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a> = g_new0(<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a>, num_plugin + num_ssh + 1);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; feature = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a>;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">if</span> (plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>) {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; memcpy(feature, plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>, <span class="keyword">sizeof</span>(<a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a>) * num_plugin);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; feature += num_plugin;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; }</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">if</span> (num_ssh) {</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> = <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a> = REMMINA_PROTOCOL_FEATURE_TOOL_SSH;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a> = _(<span class="stringliteral">&quot;Connect via SSH from a new terminal&quot;</span>);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a> = <span class="stringliteral">&quot;utilities-terminal&quot;</span>;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; feature++;</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; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> = <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a> = REMMINA_PROTOCOL_FEATURE_TOOL_SFTP;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a> = _(<span class="stringliteral">&quot;Open SFTP transfer…&quot;</span>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a> = <span class="stringliteral">&quot;folder-remote&quot;</span>;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; feature++;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; }</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> = <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span> (!plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">open_connection</a>(gp))</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(gp);</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;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5"> 293</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">cancel_open_connection_cb</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;{</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)cbdata;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(gp);</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"><a class="line" href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b"> 300</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;{</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; gchar *s;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keyword">const</span> gchar *name;</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="comment">/* Exec precommand before everything else */</span></div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(mp, _(<span class="stringliteral">&quot;Executing external commands…&quot;</span>), NULL, NULL);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</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; <a class="code" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;precommand&quot;</span>);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; name = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;name&quot;</span>);</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; s = g_strdup_printf(_(<span class="stringliteral">&quot;Connecting to \&quot;%s\&quot;…&quot;</span>), (name ? name : <span class="stringliteral">&quot;*&quot;</span>));</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; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(mp, s, <a class="code" href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">cancel_open_connection_cb</a>, gp);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; g_free(s);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a> = mp;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</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; <a class="code" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real</a>(gp);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;}</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016"> 327</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">conn_closed</a>(gpointer data)</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;{</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="comment">/* This will close all tunnels */</span></div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget_close_all_tunnels</a>(gp);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="comment">/* Exec postcommand */</span></div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <a class="code" href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;postcommand&quot;</span>);</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="comment">/* Notify listeners (usually rcw) that the connection is closed */</span></div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;disconnect&quot;</span>);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261"> 343</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <span class="comment">/* Plugin told us that it closed the connection,</span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="comment"> * add async event to main thread to complete our close tasks */</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a> = TRUE;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">conn_closed</a>, (gpointer)gp);</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"><a class="line" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48"> 352</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">conn_opened</a>(gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; guint i;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>) {</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">for</span>(i = 0;i &lt; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len; i++) {</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <a class="code" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a>((<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[i]);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a>) {</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a>);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a> = NULL;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a>) {</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a>);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a> = NULL;</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;connect&quot;</span>);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;}</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c"> 377</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <span class="comment">/* Plugin told us that it closed the connection,</span></div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;<span class="comment"> * add async event to main thread to complete our close tasks */</span></div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">conn_opened</a>, (gpointer)gp);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;}</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div><div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a"> 385</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a>(gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;update-align&quot;</span>);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;}</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e"> 394</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="comment">/* Called by the plugin to do updates on rcw */</span></div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a>, (gpointer)gp);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e"> 401</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a>(gpointer data)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;{</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;unlock-dynres&quot;</span>);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d"> 409</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;{</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="comment">/* Called by the plugin to do updates on rcw */</span></div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a>, (gpointer)gp);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565"> 416</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a>(gpointer data)</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;{</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;desktop-resize&quot;</span>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;}</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee"> 424</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <span class="comment">/* Called by the plugin to do updates on rcw */</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a>, (gpointer)gp);</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;</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22"> 432</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;{</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; TRACE_CALL(__func__);</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="comment">/* kindly ask the protocol plugin to close the connection.</span></div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="comment"> * Nothing else is done here. */</span></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; <span class="keywordflow">if</span> (!GTK_IS_WIDGET(gp))</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span>;</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; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>) {</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; gtk_widget_destroy(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a> = NULL;</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"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a>) {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="comment">/* Connection is already closed by the plugin, but</span></div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> * rcw is asking to close again (usually after an error panel)</span></div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), <span class="stringliteral">&quot;disconnect&quot;</span>);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">return</span>;</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"> 455</span>&#160; <span class="comment">/* Ask the plugin to close, async.</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> * The plugin will emit a &quot;disconnect&quot; signal on gp to call our</span></div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> * remmina_protocol_widget_on_disconnected() when done */</span></div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2">close_connection</a>(gp);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601"> 466</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;{</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">send_keystrokes</a> ? TRUE : FALSE;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;}</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471"> 474</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, GtkMenuItem *widget)</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;{</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; gchar *keystrokes = g_object_get_data(G_OBJECT(widget), <span class="stringliteral">&quot;keystrokes&quot;</span>);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; guint *keyvals;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; gint i;</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; GdkKeymap *keymap = gdk_keymap_get_for_display(gdk_display_get_default());</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; gchar *iter = keystrokes;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; gunichar character;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; guint keyval;</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; GdkKeymapKey *keys;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; gint n_keys;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="comment">/* Single keystroke replace */</span></div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keyword">typedef</span> <span class="keyword">struct </span>_KeystrokeReplace {</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; gchar * search;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; gchar * replace;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; guint keyval;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; } KeystrokeReplace;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="comment">/* Special characters to replace */</span></div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; KeystrokeReplace keystrokes_replaces[] =</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; {</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; { <span class="stringliteral">&quot;\\n&quot;</span>, <span class="stringliteral">&quot;\n&quot;</span>, GDK_KEY_Return },</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; { <span class="stringliteral">&quot;\\t&quot;</span>, <span class="stringliteral">&quot;\t&quot;</span>, GDK_KEY_Tab },</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; { <span class="stringliteral">&quot;\\b&quot;</span>, <span class="stringliteral">&quot;\b&quot;</span>, GDK_KEY_BackSpace },</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; { <span class="stringliteral">&quot;\\e&quot;</span>, <span class="stringliteral">&quot;\e&quot;</span>, GDK_KEY_Escape },</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; { <span class="stringliteral">&quot;\\\\&quot;</span>, <span class="stringliteral">&quot;\\&quot;</span>, GDK_KEY_backslash },</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; { NULL, NULL, 0 }</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; };</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="comment">/* Keystrokes can only be sent to plugins that accepts them */</span></div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a>(gp)) {</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="comment">/* Replace special characters */</span></div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keywordflow">for</span> (i = 0; keystrokes_replaces[i].replace; i++) {</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <a class="code" href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a>(keystrokes,</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; keystrokes_replaces[i].search,</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; keystrokes_replaces[i].replace);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; }</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; keyvals = (guint *)g_malloc(strlen(keystrokes));</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="comment">/* Process each character in the keystrokes */</span></div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; character = g_utf8_get_char_validated(iter, -1);</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">if</span> (character == 0)</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; keyval = gdk_unicode_to_keyval(character);</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <span class="comment">/* Replace all the special character with its keyval */</span></div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">for</span> (i = 0; keystrokes_replaces[i].replace; i++) {</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <span class="keywordflow">if</span> (character == keystrokes_replaces[i].replace[0]) {</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; keys = g_new0(GdkKeymapKey, 1);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; keyval = keystrokes_replaces[i].keyval;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="comment">/* A special character was generated, no keyval lookup needed */</span></div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; character = 0;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">break</span>;</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"> 527</span>&#160; <span class="comment">/* Decode character if it’s not a special character */</span></div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <span class="keywordflow">if</span> (character) {</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="comment">/* get keyval without modifications */</span></div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <span class="keywordflow">if</span> (!gdk_keymap_get_entries_for_keyval(keymap, keyval, &amp;keys, &amp;n_keys)) {</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; g_warning(<span class="stringliteral">&quot;keyval 0x%04x has no keycode!&quot;</span>, keyval);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; iter = g_utf8_find_next_char(iter, NULL);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; }</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; }</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="comment">/* Add modifier keys */</span></div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; n_keys = 0;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordflow">if</span> (keys-&gt;level &amp; 1)</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; keyvals[n_keys++] = GDK_KEY_Shift_L;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keywordflow">if</span> (keys-&gt;level &amp; 2)</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; keyvals[n_keys++] = GDK_KEY_Alt_R;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; keyvals[n_keys++] = keyval;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="comment">/* Send keystroke to the plugin */</span></div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">send_keystrokes</a>(gp, keyvals, n_keys);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; g_free(keys);</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="comment">/* Process next character in the keystrokes */</span></div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; iter = g_utf8_find_next_char(iter, NULL);</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; }</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; g_free(keyvals);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; }</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; g_free(keystrokes);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;}</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca"> 555</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> *rpsd)</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;{</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <span class="keywordflow">if</span> (!gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">get_plugin_screenshot</a>) {</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;plugin screenshot function is not implemented, using core Remmina functionality&quot;</span>);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; }</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">get_plugin_screenshot</a>(gp, rpsd);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b"> 565</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *signal_name)</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;{</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; TRACE_CALL(__func__);</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; g_print(<span class="stringliteral">&quot;Emitting signals should be used from the object itself, not from another object&quot;</span>);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <span class="keyword">raise</span>(SIGINT);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_PROTOCOLWIDGET_EMIT_SIGNAL;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a>.signal_name = signal_name;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a>.gp = gp;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; g_free(d);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; }</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; g_signal_emit_by_name(G_OBJECT(gp), signal_name);</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"><a class="line" href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd"> 586</a></span>&#160;<span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *<a class="code" href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a>;</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"><a class="line" href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d"> 592</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type)</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;{</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keywordflow">if</span> (type == <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a> &amp;&amp;</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE))</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="keywordflow">return</span> TRUE;</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">for</span> (feature = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>; feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>; feature++)</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> == type)</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;}</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;</div><div class="line"><a name="l00609"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a"> 609</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;{</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de">query_feature</a>(gp, feature);</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;</div><div class="line"><a name="l00615"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9"> 615</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type, gint <span class="keywordtype">id</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature;</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; <span class="keywordflow">for</span> (feature = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a>; feature &amp;&amp; feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>; feature++) {</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <span class="keywordflow">if</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a> == type &amp;&amp; (<span class="keywordtype">id</span> == 0 || feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a> == <span class="keywordtype">id</span>)) {</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(gp, feature);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; }</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;}</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692"> 628</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;{</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SSH:</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a> &amp;&amp; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len &gt; 0) {</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <a class="code" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>(</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;SSH&quot;</span>), NULL,</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[0], NULL);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; }</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SFTP:</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a> &amp;&amp; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len &gt; 0) {</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <a class="code" href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a>(</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;SFTP&quot;</span>), NULL,</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[0], NULL);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; }</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; }</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1">call_feature</a>(gp, feature);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;}</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;</div><div class="line"><a name="l00657"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1"> 657</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget_on_key_press</a>(GtkWidget *widget, GdkEventKey *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a>)</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a>(gp, event-&gt;keyval, FALSE);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;}</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0"> 665</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget_on_key_release</a>(GtkWidget *widget, GdkEventKey *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;{</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a>)</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a>(gp, event-&gt;keyval, TRUE);</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;}</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c"> 674</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, GtkWidget *widget)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;key-press-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget_on_key_press</a>), gp);</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;key-release-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget_on_key_release</a>), gp);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;}</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8"> 681</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> func)</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a> = func;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;}</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1"> 687</a></span>&#160;RemminaMessagePanel *<a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, <span class="keyword">const</span> gchar *msg, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;{</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_PROTOCOLWIDGET_MPPROGRESS;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.cnnobj = cnnobj;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.message = msg;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.response_callback = response_callback;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.response_callback_data = response_callback_data;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; mp = d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a>.ret_mp;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; g_free(d);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">return</span> mp;</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;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(mp, msg, response_callback, response_callback_data);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(cnnobj, mp);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="keywordflow">return</span> mp;</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;</div><div class="line"><a name="l00712"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5"> 712</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;{</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_PROTOCOLWIDGET_MPDESTROY;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a>.cnnobj = cnnobj;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a>.mp = mp;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; g_free(d);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; }</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(cnnobj, mp);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;}</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;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00729"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227"> 729</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">cancel_init_tunnel_cb</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;{</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; printf(<span class="stringliteral">&quot;Remmina: Cancelling an opening tunnel is not implemented\n&quot;</span>);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;}</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;</div><div class="line"><a name="l00734"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3"> 734</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>* <a class="code" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;{</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; gint ret;</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; gchar *msg;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; tunnel = <a class="code" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; g_debug (<span class="stringliteral">&quot;[RPW] %s creating SSH tunnel to \&quot;%s\&quot; via SSH…&quot;</span>, __func__, REMMINA_SSH(tunnel)-&gt;server);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; msg = g_strdup_printf(_(<span class="stringliteral">&quot;Connecting to \&quot;%s\&quot; via SSH…&quot;</span>), REMMINA_SSH(tunnel)-&gt;server);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; mp = <a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, msg, <a class="code" href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">cancel_init_tunnel_cb</a>, NULL);</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; g_free(msg);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(REMMINA_SSH(tunnel))) {</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;%s Cannot init SSH session with tunnel struct&quot;</span>, __func__);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; }</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; ret = <a class="code" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a>(REMMINA_SSH(tunnel), gp, gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;Tunnel auth returned %d&quot;</span>, ret);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>) {</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>)</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; }</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160;</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</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"> 768</span>&#160; <span class="keywordflow">return</span> tunnel;</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;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00774"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3"> 774</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">cancel_start_direct_tunnel_cb</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;{</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; printf(<span class="stringliteral">&quot;Remmina: Cancelling start_direct_tunnel is not implemented\n&quot;</span>);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;}</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb"> 780</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget_tunnel_destroy</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = REMMINA_PROTOCOL_WIDGET(data);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; guint idx;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; gboolean found;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160;<span class="preprocessor">#if GLIB_CHECK_VERSION(2,54,0)</span></div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; found = g_ptr_array_find(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, tunnel, &amp;idx);</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; found = FALSE;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="keywordflow">for</span>(i = 0;i &lt; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len; i++) {</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="keywordflow">if</span> ((<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[i] == tunnel) {</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; found = TRUE;</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; idx = i;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; }</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; printf(<span class="stringliteral">&quot;Tunnel %s found at idx = %d\n&quot;</span>, found ? <span class="stringliteral">&quot;yes&quot;</span>: <span class="stringliteral">&quot;not&quot;</span>, idx);</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; <span class="keywordflow">if</span> (found) {</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; g_debug(<span class="stringliteral">&quot;[RPW] tunnel with idx %u has been disconnected&quot;</span>, idx);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; g_ptr_array_remove(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, tunnel);</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">return</span> TRUE;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;}</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;</div><div class="line"><a name="l00816"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7"> 816</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus)</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;{</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keyword">const</span> gchar *server;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keyword">const</span> gchar *ssh_tunnel_server;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <span class="comment">//const gchar *proto;</span></div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; gchar *ssh_tunnel_host, *srv_host, *dest;</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; gint srv_port, ssh_tunnel_port;</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; g_debug (<span class="stringliteral">&quot;SSH tunnel initialization…&quot;</span>);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="comment">//proto = remmina_file_get_string(gp-&gt;priv-&gt;remmina_file, &quot;protocol&quot;);</span></div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; server = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; ssh_tunnel_server = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>);</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; <span class="keywordflow">if</span> (!server)</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">return</span> g_strdup(<span class="stringliteral">&quot;&quot;</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; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(server, default_port, &amp;srv_host, &amp;srv_port);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(ssh_tunnel_server, 22, &amp;ssh_tunnel_host, &amp;ssh_tunnel_port);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; g_debug (<span class="stringliteral">&quot;server: %s, port: %d&quot;</span>, srv_host, srv_port);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <span class="keywordflow">if</span> (port_plus &amp;&amp; srv_port &lt; 100)</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="comment">/* Protocols like VNC supports using instance number :0, :1, etc. as port number. */</span></div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; srv_port += default_port;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; gchar *msg;</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel;</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> (!<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE)) {</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; dest = g_strdup_printf(<span class="stringliteral">&quot;[%s]:%i&quot;</span>, srv_host, srv_port);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; <span class="keywordflow">return</span> dest;</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;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; tunnel = <a class="code" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a>(gp);</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; <span class="keywordflow">if</span> (!tunnel) {</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a> (<span class="stringliteral">&quot;%s remmina_protocol_widget_init_tunnel failed with error is %s&quot;</span>,</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; __func__, <a class="code" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>(gp));</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; }</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; msg = g_strdup_printf(_(<span class="stringliteral">&quot;Connecting to \&quot;%s\&quot; via SSH…&quot;</span>), server);</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; mp = <a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, msg, <a class="code" href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">cancel_start_direct_tunnel_cb</a>, NULL);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; g_free(msg);</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_loopback&quot;</span>, FALSE)) {</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; ssh_tunnel_host = NULL;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; srv_host = g_strdup(<span class="stringliteral">&quot;127.0.0.1&quot;</span>);</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; }</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160;</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; g_debug (<span class="stringliteral">&quot;%s: starting tunnel to: %s, port: %d&quot;</span>, __func__, ssh_tunnel_host, ssh_tunnel_port);</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a>(tunnel, srv_host, srv_port, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>)) {</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; }</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">destroy_func</a> = <a class="code" href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget_tunnel_destroy</a>;</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">destroy_func_callback_data</a> = (gpointer)gp;</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; g_ptr_array_add(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, tunnel);</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;127.0.0.1:%i&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a>);</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160;</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; dest = g_strdup_printf(<span class="stringliteral">&quot;[%s]:%i&quot;</span>, srv_host, srv_port);</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; g_free(srv_host);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; g_free(ssh_tunnel_host);</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; <span class="keywordflow">return</span> dest;</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160;}</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00905"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac"> 905</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">cancel_start_reverse_tunnel_cb</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</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; printf(<span class="stringliteral">&quot;Remmina: Cancelling start_reverse_tunnel is not implemented\n&quot;</span>);</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;</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"><a class="line" href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c"> 912</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint local_port)</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;{</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; gchar *msg;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE))</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <span class="keywordflow">if</span> (!(tunnel = <a class="code" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a>(gp)))</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160;</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; msg = g_strdup_printf(_(<span class="stringliteral">&quot;Awaiting incoming SSH connection on port %i…&quot;</span>), <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;listenport&quot;</span>, 0));</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; mp = <a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, msg, <a class="code" href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">cancel_start_reverse_tunnel_cb</a>, NULL);</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; g_free(msg);</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> (!<a class="code" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a>(tunnel, <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;listenport&quot;</span>, 0), local_port)) {</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; g_ptr_array_add(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, tunnel);</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160;</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00942"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a"> 942</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean wait, <span class="keyword">const</span> gchar *fmt, ...)</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160;{</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel;</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; ssh_channel channel;</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; gint status;</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; gboolean ret = FALSE;</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; gchar *cmd, *ptr;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; va_list args;</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len &lt; 1)</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; <span class="keywordflow">return</span> FALSE;</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; tunnel = (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>*)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[0];</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; if ((channel = ssh_channel_new(REMMINA_SSH(tunnel)-&gt;<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>)) == NULL)</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160;</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; va_start(args, fmt);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; cmd = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; va_end(args);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; <span class="keywordflow">if</span> (ssh_channel_open_session(channel) == SSH_OK &amp;&amp;</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; ssh_channel_request_exec(channel, cmd) == SSH_OK) {</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; <span class="keywordflow">if</span> (wait) {</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; ssh_channel_send_eof(channel);</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; status = ssh_channel_get_exit_status(channel);</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; ptr = strchr(cmd, <span class="charliteral">&#39; &#39;</span>);</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="keywordflow">if</span> (ptr) *ptr = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; <span class="keywordflow">switch</span> (status) {</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; ret = TRUE;</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; <span class="keywordflow">case</span> 127:</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel),</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; _(<span class="stringliteral">&quot;The \&quot;%s\&quot; command is not available on the SSH server.&quot;</span>), cmd);</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel),</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; _(<span class="stringliteral">&quot;Could not run the \&quot;%s\&quot; command on the SSH server (status = %i).&quot;</span>), cmd, status);</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; <span class="keywordflow">break</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; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; ret = TRUE;</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; }</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; <span class="comment">// TRANSLATORS: %s is a placeholder for an error message</span></div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not run command. %s&quot;</span>));</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; }</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; g_free(cmd);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; <span class="keywordflow">if</span> (wait)</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; ssh_channel_close(channel);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; ssh_channel_free(channel);</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; <span class="keywordflow">return</span> ret;</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;<span class="preprocessor">#else</span></div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;}</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l01006"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736"> 1006</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget_xport_tunnel_init_callback</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gpointer data)</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;{</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = REMMINA_PROTOCOL_WIDGET(data);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; gchar *server;</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; gint port;</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; gboolean ret;</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>), 177, &amp;server, &amp;port);</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; ret = ((<a class="code" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a>)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a>)(gp,</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a>, (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a> ? <span class="stringliteral">&quot;localhost&quot;</span> : server), port);</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; g_free(server);</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;}</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;</div><div class="line"><a name="l01022"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee"> 1022</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget_xport_tunnel_connect_callback</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gpointer data)</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;{</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;}</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;</div><div class="line"><a name="l01028"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d"> 1028</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget_xport_tunnel_disconnect_callback</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gpointer data)</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;{</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = REMMINA_PROTOCOL_WIDGET(data);</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; <span class="keywordflow">if</span> (REMMINA_SSH(tunnel)-&gt;error)</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; IDLE_ADD((GSourceFunc)<a class="code" href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>, gp);</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <span class="keywordflow">return</span> TRUE;</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l01041"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9"> 1041</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">cancel_connect_xport_cb</a>(<span class="keywordtype">void</span> *cbdata, <span class="keywordtype">int</span> btn)</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; printf(<span class="stringliteral">&quot;Remmina: Cancelling an XPort connection is not implemented\n&quot;</span>);</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="preprocessor">#endif</span></div><div class="line"><a name="l01046"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4"> 1046</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a>)</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;{</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; gboolean bindlocalhost;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; gchar *server;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; gchar *msg;</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>* tunnel;</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; <span class="keywordflow">if</span> (!(tunnel = <a class="code" href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a>(gp))) <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; msg = g_strdup_printf(_(<span class="stringliteral">&quot;Connecting to %s via SSH…&quot;</span>), <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; mp = <a class="code" href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, msg, <a class="code" href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">cancel_connect_xport_cb</a>, NULL);</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; g_free(msg);</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a> = <a class="code" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a>;</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a> = <a class="code" href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget_xport_tunnel_init_callback</a>;</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a> = <a class="code" href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget_xport_tunnel_connect_callback</a>;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a> = <a class="code" href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget_xport_tunnel_disconnect_callback</a>;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a> = gp;</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; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;server&quot;</span>), 0, &amp;server, NULL);</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; bindlocalhost = (g_strcmp0(REMMINA_SSH(tunnel)-&gt;server, server) == 0);</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; g_free(server);</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a>(tunnel, bindlocalhost)) {</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, <span class="stringliteral">&quot;Could not open channel, %s&quot;</span>,</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; ssh_get_error(REMMINA_SSH(tunnel)-&gt;<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>));</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(tunnel);</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160; }</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; <a class="code" href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; g_ptr_array_add(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>, tunnel);</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l01089"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54"> 1089</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint display)</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"> 1091</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>* tunnel;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;len &lt; 1)</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; tunnel = (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a>-&gt;pdata[0];</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; if (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>) g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>);</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a> = g_strdup_printf(<span class="stringliteral">&quot;unix:%i&quot;</span>, display);</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l01102"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907"> 1102</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;{</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; <span class="comment">/* Returns the width of remote desktop as chosen by the user profile */</span></div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">profile_remote_width</a>;</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;}</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;</div><div class="line"><a name="l01109"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9"> 1109</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; <span class="comment">/* Returns the height of remote desktop as chosen by the user profile */</span></div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">profile_remote_height</a>;</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"> 1115</span>&#160;</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"><a class="line" href="remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995"> 1117</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;{</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a>;</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;</div><div class="line"><a name="l01123"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380"> 1123</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint <a class="code" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a> = <a class="code" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a>;</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;</div><div class="line"><a name="l01129"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5"> 1129</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a>;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;}</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;</div><div class="line"><a name="l01135"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044"> 1135</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint <a class="code" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a> = <a class="code" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a>;</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;</div><div class="line"><a name="l01141"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7"> 1141</a></span>&#160;<a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 1143</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a>;</div><div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48"> 1147</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a>)</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;{</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a> = <a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a>;</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25"> 1153</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;{</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">scaler_expand</a>;</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"> 1158</span>&#160;</div><div class="line"><a name="l01159"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa"> 1159</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean expand)</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"> 1161</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">scaler_expand</a> = expand;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;}</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;</div><div class="line"><a name="l01166"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771"> 1166</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;{</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">has_error</a>;</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29"> 1172</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;{</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a>;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;}</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;</div><div class="line"><a name="l01178"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af"> 1178</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *fmt, ...)</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;{</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; va_list args;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a>) g_free(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a>);</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> (fmt == NULL) {</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">has_error</a> = FALSE;</div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a> = NULL;</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; }</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; va_start(args, fmt);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a> = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; va_end(args);</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">has_error</a> = TRUE;</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;}</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3"> 1198</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</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__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069"> 1204</a></span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>;</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;</div><div class="line"><a name="l01210"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html"> 1210</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> {</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160; <span class="comment">/* Input data */</span></div><div class="line"><a name="l01212"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a"> 1212</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01213"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74"> 1213</a></span>&#160; gchar * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a>;</div><div class="line"><a name="l01214"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28"> 1214</a></span>&#160; gchar * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a>;</div><div class="line"><a name="l01215"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850"> 1215</a></span>&#160; gchar * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a>;</div><div class="line"><a name="l01216"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361"> 1216</a></span>&#160; gchar * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a>;</div><div class="line"><a name="l01217"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544"> 1217</a></span>&#160; gchar * <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">strpasswordlabel</a>;</div><div class="line"><a name="l01218"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7"> 1218</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> dtype;</div><div class="line"><a name="l01219"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8"> 1219</a></span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a>;</div><div class="line"><a name="l01220"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f"> 1220</a></span>&#160; gboolean <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">called_from_subthread</a>;</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; <span class="comment">/* Running status */</span></div><div class="line"><a name="l01222"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf"> 1222</a></span>&#160; pthread_mutex_t <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>;</div><div class="line"><a name="l01223"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda"> 1223</a></span>&#160; pthread_cond_t <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a>;</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; <span class="comment">/* Output/retval */</span></div><div class="line"><a name="l01225"></a><span class="lineno"><a class="line" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5"> 1225</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a>;</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__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb"> 1228</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a>(<span class="keywordtype">void</span> *user_data, <span class="keywordtype">int</span> button)</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; <span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *d = (<span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *)user_data;</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; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a> = button;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; <span class="keywordflow">if</span> (button == GTK_RESPONSE_OK) {</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> == <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>) {</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a> = <a class="code" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a> = <a class="code" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a>);</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a> = <a class="code" href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a>);</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">save_password</a> = <a class="code" href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>);</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> == <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a>) {</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a> = <a class="code" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a>);</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a> = <a class="code" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a>);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a> = <a class="code" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a>);</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a> = <a class="code" href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a>);</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; }</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; }</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">called_from_subthread</a>) {</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; <span class="comment">/* Hide and destroy message panel, we can do it now because we are on the main thread */</span></div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>);</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; <span class="comment">/* Awake the locked subthread, when called from subthread */</span></div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; pthread_mutex_lock(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>);</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; pthread_cond_signal(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a>);</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; pthread_mutex_unlock(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>);</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; <span class="comment">/* Signal completion, when called from main thread. Message panel will be destroyed by the caller */</span></div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; <a class="code" href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>, button);</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"> 1260</span>&#160;</div><div class="line"><a name="l01261"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113"> 1261</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget_dialog_mt_setup</a>(gpointer user_data)</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"> 1263</span>&#160; <span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *d = (<span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *)user_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; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>;</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; <span class="keyword">const</span> gchar *s;</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160; <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> == <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>) {</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; <a class="code" href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a>(mp, <a class="code" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a>, d, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">strpasswordlabel</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a>);</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; <a class="code" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a>);</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a> &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a>)</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160; <a class="code" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a>);</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; <a class="code" href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a>);</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a> &amp; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>)</div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160; <a class="code" href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a>(mp, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>, (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a> == NULL || d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a>[0] == 0) ? FALSE: TRUE);</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> == <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>) {</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160; <a class="code" href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a>(mp, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a>, <a class="code" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a>, d);</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> == <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a>) {</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; <a class="code" href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a>(mp, <a class="code" href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a>, d);</div><div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacert&quot;</span>)) != NULL)</div><div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>&#160; <a class="code" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a>, s);</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacrl&quot;</span>)) != NULL)</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <a class="code" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a>, s);</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientcert&quot;</span>)) != NULL)</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; <a class="code" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a>, s);</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; <span class="keywordflow">if</span> ((s = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientkey&quot;</span>)) != NULL)</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160; <a class="code" href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a>(mp, <a class="code" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a>, s);</div><div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160; }</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; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a> = mp;</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</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; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;}</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"><a class="line" href="struct_mp_run_info.html"> 1299</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l01300"></a><span class="lineno"><a class="line" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5"> 1300</a></span>&#160; RemminaMessagePanel * <a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>;</div><div class="line"><a name="l01301"></a><span class="lineno"><a class="line" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079"> 1301</a></span>&#160; GMainLoop * <a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a>;</div><div class="line"><a name="l01302"></a><span class="lineno"><a class="line" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904"> 1302</a></span>&#160; gint <a class="code" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a>;</div><div class="line"><a name="l01303"></a><span class="lineno"><a class="line" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91"> 1303</a></span>&#160; gboolean <a class="code" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">destroyed</a>;</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160;} <a class="code" href="struct_mp_run_info.html">MpRunInfo</a>;</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__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572"> 1306</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a>(<a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *mpri)</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; <span class="keywordflow">if</span> (g_main_loop_is_running(mpri-&gt;<a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a>))</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160; g_main_loop_quit(mpri-&gt;<a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</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__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf"> 1312</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">run_response_handler</a>(RemminaMessagePanel *mp, gint response_id, gpointer data)</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; <a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *mpri = (<a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *)data;</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160;</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; mpri-&gt;<a class="code" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a> = response_id;</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a>(mpri);</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160;}</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160;</div><div class="line"><a name="l01320"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d"> 1320</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">run_unmap_handler</a>(RemminaMessagePanel *mp, gpointer data)</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160;{</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; <a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *mpri = (<a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *)data;</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; mpri-&gt;<a class="code" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a> = GTK_RESPONSE_CANCEL;</div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a>(mpri);</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"> 1327</span>&#160;</div><div class="line"><a name="l01328"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8"> 1328</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">run_destroy_handler</a>(RemminaMessagePanel *mp, gpointer data)</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;{</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; <a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *mpri = (<a class="code" href="struct_mp_run_info.html">MpRunInfo</a> *)data;</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; mpri-&gt;<a class="code" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">destroyed</a> = TRUE;</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; mpri-&gt;<a class="code" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a> = GTK_RESPONSE_CANCEL;</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a>(mpri);</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;</div><div class="line"><a name="l01337"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54"> 1337</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<span class="keyword">enum</span> <a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> dtype, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags,</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <span class="keyword">const</span> gchar *title, <span class="keyword">const</span> gchar *default_username, <span class="keyword">const</span> gchar *default_password, <span class="keyword">const</span> gchar *default_domain,</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; <span class="keyword">const</span> gchar *strpasswordlabel)</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; TRACE_CALL(__func__);</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; <span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *d = (<span class="keyword">struct </span><a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a> *)g_malloc(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a>));</div><div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160; <span class="keywordtype">int</span> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a>;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a> = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a> = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a>;</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a> = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a>;</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a> = g_strdup(title);</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">strpasswordlabel</a> = g_strdup(strpasswordlabel);</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a> = g_strdup(default_username);</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a> = g_strdup(default_password);</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a> = g_strdup(default_domain);</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">called_from_subthread</a> = 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="keywordflow">if</span> (<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; <span class="comment">/* Run the MessagePanel in main thread, in a very similar way of gtk_dialog_run() */</span></div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; <a class="code" href="struct_mp_run_info.html">MpRunInfo</a> mpri = { NULL, NULL, GTK_RESPONSE_CANCEL, FALSE };</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; gulong unmap_handler;</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; gulong destroy_handler;</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; gulong response_handler;</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; <a class="code" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget_dialog_mt_setup</a>(d);</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160;</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a> = d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>;</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; <span class="keywordflow">if</span> (!gtk_widget_get_visible(GTK_WIDGET(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>)))</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; gtk_widget_show(GTK_WIDGET(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>));</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; response_handler = g_signal_connect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">run_response_handler</a>), &amp;mpri);</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; unmap_handler = g_signal_connect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, <span class="stringliteral">&quot;unmap&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">run_unmap_handler</a>), &amp;mpri);</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; destroy_handler = g_signal_connect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">run_destroy_handler</a>), &amp;mpri);</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160; g_object_ref(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>);</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; mpri.<a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a> = g_main_loop_new(NULL, FALSE);</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160; g_main_loop_run(mpri.<a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a>);</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160; g_main_loop_unref(mpri.<a class="code" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a>);</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; <span class="keywordflow">if</span> (!mpri.<a class="code" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">destroyed</a>) {</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; g_signal_handler_disconnect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, response_handler);</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160; g_signal_handler_disconnect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, destroy_handler);</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160; g_signal_handler_disconnect(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>, unmap_handler);</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; g_object_unref(mpri.<a class="code" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a>);</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160;</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <a class="code" href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a>(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a>);</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; rcbutton = mpri.<a class="code" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a>;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">called_from_subthread</a> = TRUE;</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; <span class="comment">// pthread_cleanup_push(ptcleanup, (void*)d);</span></div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; pthread_cond_init(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a>, NULL);</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160; pthread_mutex_init(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>, NULL);</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; g_idle_add(<a class="code" href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget_dialog_mt_setup</a>, d);</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; pthread_mutex_lock(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>);</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; pthread_cond_wait(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a>, &amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>);</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; <span class="comment">// pthread_cleanup_pop(0);</span></div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; pthread_mutex_destroy(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a>);</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; pthread_cond_destroy(&amp;d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a>);</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"> 1402</span>&#160; rcbutton = d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a>;</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;</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; g_free(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a>);</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; g_free(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">strpasswordlabel</a>);</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; g_free(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a>);</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; g_free(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a>);</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; g_free(d-&gt;<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a>);</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; g_free(d);</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; <span class="keywordflow">return</span> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a>;</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;}</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;</div><div class="line"><a name="l01414"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b"> 1414</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg)</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; <span class="keywordflow">return</span> <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>, gp, 0, msg, NULL, NULL, NULL, NULL);</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__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868"> 1419</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a>,</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a>, <span class="keyword">const</span> gchar *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a>, <span class="keyword">const</span> gchar *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a>, <span class="keyword">const</span> gchar *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a>, <span class="keyword">const</span> gchar *password_prompt)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>, gp, pflags, title, default_username,</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160; default_password, default_domain, password_prompt == NULL ? _(<span class="stringliteral">&quot;Password&quot;</span>) : password_prompt);</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba"> 1427</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, gboolean want_domain, gboolean allow_password_saving)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a>;</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>;</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a>, *<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a>;</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; pflags = <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a>;</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a>(remminafile) != NULL &amp;&amp;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; !remminafile-&gt;prevent_saving &amp;&amp; allow_password_saving)</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; pflags |= <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; username = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span>);</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; password = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span>);</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a>, gp, pflags, _(<span class="stringliteral">&quot;Type in SSH username and password.&quot;</span>), username,</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; password, NULL, _(<span class="stringliteral">&quot;Password&quot;</span>));</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;<span class="comment">/*</span></div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;<span class="comment"> * gint remmina_protocol_widget_panel_authpwd(RemminaProtocolWidget* gp, RemminaAuthpwdType authpwd_type, gboolean allow_password_saving)</span></div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;<span class="comment"> * {</span></div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;<span class="comment"> * TRACE_CALL(__func__);</span></div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160;<span class="comment"> * unsigned pflags;</span></div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;<span class="comment"> * RemminaFile* remminafile = gp-&gt;priv-&gt;remmina_file;</span></div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;<span class="comment"> * char *password_prompt;</span></div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;<span class="comment"> * int rc;</span></div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;<span class="comment"> * pflags = 0;</span></div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;<span class="comment"> * if (remmina_file_get_filename(remminafile) != NULL &amp;&amp;</span></div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;<span class="comment"> * !remminafile-&gt;prevent_saving &amp;&amp; allow_password_saving)</span></div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;<span class="comment"> * pflags |= REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD;</span></div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;<span class="comment"> * switch (authpwd_type) {</span></div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160;<span class="comment"> * case REMMINA_AUTHPWD_TYPE_PROTOCOL:</span></div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;<span class="comment"> * password_prompt = g_strdup_printf(_(&quot;%s password&quot;), remmina_file_get_string(remminafile, &quot;protocol&quot;));</span></div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160;<span class="comment"> * break;</span></div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;<span class="comment"> * case REMMINA_AUTHPWD_TYPE_SSH_PWD:</span></div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160;<span class="comment"> * password_prompt = g_strdup(_(&quot;SSH password&quot;));</span></div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;<span class="comment"> * break;</span></div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;<span class="comment"> * case REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY:</span></div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;<span class="comment"> * password_prompt = g_strdup(_(&quot;SSH private key passphrase&quot;));</span></div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;<span class="comment"> * break;</span></div><div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160;<span class="comment"> * default:</span></div><div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;<span class="comment"> * password_prompt = g_strdup(_(&quot;Password&quot;));</span></div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;<span class="comment"> * break;</span></div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;<span class="comment"> * }</span></div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;<span class="comment"> * rc = remmina_protocol_widget_dialog(RPWDT_AUTH, gp, pflags, password_prompt);</span></div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;<span class="comment"> * g_free(password_prompt);</span></div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160;<span class="comment"> * return rc;</span></div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;<span class="comment"> * }</span></div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01481"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31"> 1481</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</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> <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a>, gp, 0, NULL, NULL, NULL, NULL, NULL);</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"> 1488</span>&#160;</div><div class="line"><a name="l01489"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084"> 1489</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *fingerprint)</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160;{</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; gchar *s;</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>&#160; <span class="keywordtype">int</span> rc;</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; <span class="comment">// For markup see https://developer.gnome.org/pygtk/stable/pango-markup-language.html</span></div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160; s = g_strdup_printf(</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160; <span class="stringliteral">&quot;&lt;big&gt;%s&lt;/big&gt;\n\n%s %s\n%s %s\n%s %s\n\n&lt;big&gt;%s&lt;/big&gt;&quot;</span>,</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; _(<span class="stringliteral">&quot;Certificate details:&quot;</span>),</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; _(<span class="stringliteral">&quot;Subject:&quot;</span>), subject,</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; _(<span class="stringliteral">&quot;Issuer:&quot;</span>), issuer,</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; _(<span class="stringliteral">&quot;Fingerprint:&quot;</span>), fingerprint,</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; _(<span class="stringliteral">&quot;Accept certificate?&quot;</span>));</div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; rc = <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>, gp, 0, s, NULL, NULL, NULL, NULL);</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; g_free(s);</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160;</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; <span class="comment">/* For compatibility with plugin API: the plugin expects GTK_RESPONSE_OK when user confirms new cert */</span></div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; <span class="keywordflow">return</span> rc == GTK_RESPONSE_YES ? GTK_RESPONSE_OK : rc;</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"><a class="line" href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1"> 1510</a></span>&#160;gint <a class="code" href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *new_fingerprint, <span class="keyword">const</span> gchar *old_fingerprint)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; gchar *s;</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; <span class="keywordtype">int</span> rc;</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; <span class="comment">// For markup see https://developer.gnome.org/pygtk/stable/pango-markup-language.html</span></div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; s = g_strdup_printf(</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; <span class="stringliteral">&quot;&lt;big&gt;%s&lt;/big&gt;\n\n%s %s\n%s %s\n%s %s\n%s %s\n\n&lt;big&gt;%s&lt;/big&gt;&quot;</span>,</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; _(<span class="stringliteral">&quot;The certificate changed! Details:&quot;</span>),</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; _(<span class="stringliteral">&quot;Subject:&quot;</span>), subject,</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; _(<span class="stringliteral">&quot;Issuer:&quot;</span>), issuer,</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; _(<span class="stringliteral">&quot;Old fingerprint:&quot;</span>), old_fingerprint,</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; _(<span class="stringliteral">&quot;New fingerprint:&quot;</span>), new_fingerprint,</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; _(<span class="stringliteral">&quot;Accept changed certificate?&quot;</span>));</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; rc = <a class="code" href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a>(<a class="code" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a>, gp, 0, s, NULL, NULL, NULL, NULL);</div><div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; g_free(s);</div><div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160;</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; <span class="comment">/* For compatibility with plugin API: The plugin expects GTK_RESPONSE_OK when user confirms new cert */</span></div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160; <span class="keywordflow">return</span> rc == GTK_RESPONSE_YES ? GTK_RESPONSE_OK : rc;</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;</div><div class="line"><a name="l01532"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0"> 1532</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; <span class="keywordflow">return</span> g_strdup(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a>);</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923"> 1538</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; <span class="keywordflow">return</span> g_strdup(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a>);</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__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac"> 1544</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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> g_strdup(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a>);</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"><a class="line" href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d"> 1550</a></span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; <span class="keywordflow">return</span> gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">save_password</a>;</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;</div><div class="line"><a name="l01556"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d"> 1556</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; gchar *s;</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a>;</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; <span class="keywordflow">return</span> s &amp;&amp; s[0] ? g_strdup(s) : NULL;</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;}</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"><a class="line" href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3"> 1565</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;{</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; gchar *s;</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a>;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; <span class="keywordflow">return</span> s &amp;&amp; s[0] ? g_strdup(s) : NULL;</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;}</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160;</div><div class="line"><a name="l01574"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b"> 1574</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; gchar *s;</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a>;</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; <span class="keywordflow">return</span> s &amp;&amp; s[0] ? g_strdup(s) : NULL;</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;</div><div class="line"><a name="l01583"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1"> 1583</a></span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; gchar *s;</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a>;</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; <span class="keywordflow">return</span> s &amp;&amp; s[0] ? g_strdup(s) : NULL;</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;}</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;</div><div class="line"><a name="l01592"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504"> 1592</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</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; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>;</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160; gchar *s;</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160; gboolean save = FALSE;</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160;</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_INIT_SAVE_CRED;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">init_save_creds</a>.gp = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; g_free(d);</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; }</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">/* Save username and certificates if any; save the password if it’s requested to do so */</span></div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a>;</div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; <span class="keywordflow">if</span> (s &amp;&amp; s[0]) {</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, s);</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; save = 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; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a>;</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; <span class="keywordflow">if</span> (s &amp;&amp; s[0]) {</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;cacert&quot;</span>, s);</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; save = TRUE;</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; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a>;</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160; <span class="keywordflow">if</span> (s &amp;&amp; s[0]) {</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;cacrl&quot;</span>, s);</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160; save = TRUE;</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; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a>;</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160; <span class="keywordflow">if</span> (s &amp;&amp; s[0]) {</div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;clientcert&quot;</span>, s);</div><div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160; save = TRUE;</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; s = gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a>;</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160; <span class="keywordflow">if</span> (s &amp;&amp; s[0]) {</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;clientkey&quot;</span>, s);</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160; save = TRUE;</div><div class="line"><a name="l01636"></a><span class="lineno"> 1636</span>&#160; }</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">save_password</a>) {</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a>);</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160; save = TRUE;</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160; }</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; <span class="keywordflow">if</span> (save)</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; <a class="code" href="remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7">remmina_file_save</a>(remminafile);</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160;}</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160;</div><div class="line"><a name="l01646"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d"> 1646</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, gint port)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160; gchar *s;</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a>.gp = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a>.port = port;</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; g_free(d);</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160; }</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160; s = g_strdup_printf(</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160; _(<span class="stringliteral">&quot;Listening on port %i for an incoming %s connection…&quot;</span>), port,</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;protocol&quot;</span>));</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160; <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(mp, s, NULL, NULL);</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; g_free(s);</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a> = mp;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;}</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;</div><div class="line"><a name="l01674"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895"> 1674</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;{</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; RemminaMessagePanel *mp;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_PROTOCOLWIDGET_MPSHOWRETRY;</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">protocolwidget_mpshowretry</a>.gp = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; g_free(d);</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; }</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160; mp = <a class="code" href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a>();</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <a class="code" href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a>(mp, _(<span class="stringliteral">&quot;Could not authenticate, attempting reconnection…&quot;</span>), NULL, NULL);</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; <a class="code" href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, mp);</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160;}</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160;</div><div class="line"><a name="l01695"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b"> 1695</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;{</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160; printf(<span class="stringliteral">&quot;Remmina: The %s function is not implemented, and is left here only for plugin API compatibility.\n&quot;</span>, __func__);</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;}</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;</div><div class="line"><a name="l01701"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad"> 1701</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;{</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; printf(<span class="stringliteral">&quot;Remmina: The %s function is not implemented, and is left here only for plugin API compatibility.\n&quot;</span>, __func__);</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160;}</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;</div><div class="line"><a name="l01707"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d"> 1707</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget_chat_on_destroy</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a> = NULL;</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160;}</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;</div><div class="line"><a name="l01713"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2"> 1713</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>, <span class="keyword">const</span> gchar *name,</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160; <span class="keywordtype">void</span> (*on_send)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text), <span class="keywordtype">void</span> (*on_destroy)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp))</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"> 1716</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>) {</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160; gtk_window_present(GTK_WINDOW(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>));</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a> = <a class="code" href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a>(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(gp))), name);</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; g_signal_connect_swapped(G_OBJECT(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>), <span class="stringliteral">&quot;send&quot;</span>, G_CALLBACK(on_send), gp);</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160; g_signal_connect_swapped(G_OBJECT(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>), <span class="stringliteral">&quot;destroy&quot;</span>,</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; G_CALLBACK(<a class="code" href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget_chat_on_destroy</a>), gp);</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; g_signal_connect_swapped(G_OBJECT(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(on_destroy), gp);</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; gtk_widget_show(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_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"> 1728</span>&#160;</div><div class="line"><a name="l01729"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953"> 1729</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160;{</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>)</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160; gtk_widget_destroy(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>);</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"> 1735</span>&#160;</div><div class="line"><a name="l01736"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0"> 1736</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160; <span class="comment">/* This function can be called from a non main thread */</span></div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160;</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160; <span class="keywordflow">if</span> (gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>) {</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_CHAT_RECEIVE;</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a>.gp = <a class="code" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a>;</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a>.text = text;</div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160; g_free(d);</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; }</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; <a class="code" href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a>(REMMINA_CHAT_WINDOW(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>), _(<span class="stringliteral">&quot;Server&quot;</span>), text);</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160; gtk_window_present(GTK_WINDOW(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a>));</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="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;</div><div class="line"><a name="l01758"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8"> 1758</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *cnnobj)</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;{</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160; <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>;</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a> = remminafile;</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a> = cnnobj;</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160; <span class="comment">/* Locate the protocol plugin */</span></div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160; plugin = (<a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> *)<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>,</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160; <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="l01768"></a><span class="lineno"> 1768</span>&#160;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160; <span class="keywordflow">if</span> (!plugin || !plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">init</a> || !plugin-&gt;<a class="code" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">open_connection</a>) {</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160; <a class="code" href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(gp, _(<span class="stringliteral">&quot;Install the %s protocol plugin first.&quot;</span>),</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160; <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="l01772"></a><span class="lineno"> 1772</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a> = NULL;</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160; }</div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a> = <a class="code" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a>;</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160;</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a> = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;scale&quot;</span>, FALSE);</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">scaler_expand</a> = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;scaler_expand&quot;</span>, FALSE);</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;}</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;</div><div class="line"><a name="l01781"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62"> 1781</a></span>&#160;GtkWidget *<a class="code" href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160;{</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160; <span class="keywordflow">return</span> GTK_WIDGET(g_object_new(REMMINA_TYPE_PROTOCOL_WIDGET, NULL));</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160;}</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160;</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160;<span class="comment">/* Send one or more keystrokes to a specific widget by firing key-press and</span></div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160;<span class="comment"> * key-release events.</span></div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160;<span class="comment"> * GdkEventType action can be GDK_KEY_PRESS or GDK_KEY_RELEASE or both to</span></div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160;<span class="comment"> * press the keys and release them in reversed order. */</span></div><div class="line"><a name="l01790"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705"> 1790</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a>(GtkWidget *widget, <span class="keyword">const</span> guint *keyvals, <span class="keywordtype">int</span> keyvals_length, GdkEventType action)</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160;{</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160; GdkEventKey event;</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160; gboolean result;</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160; GdkKeymap *keymap = gdk_keymap_get_for_display(gdk_display_get_default());</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160; <span class="keyword">event</span>.window = gtk_widget_get_window(widget);</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160; <span class="keyword">event</span>.send_event = TRUE;</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160; <span class="keyword">event</span>.time = GDK_CURRENT_TIME;</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160; <span class="keyword">event</span>.state = 0;</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160; <span class="keyword">event</span>.length = 0;</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160; <span class="keyword">event</span>.string = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160; <span class="keyword">event</span>.group = 0;</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160;</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160; <span class="keywordflow">if</span> (action &amp; GDK_KEY_PRESS) {</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160; <span class="comment">/* Press the requested buttons */</span></div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160; <span class="keyword">event</span>.type = GDK_KEY_PRESS;</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; keyvals_length; i++) {</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160; <span class="keyword">event</span>.keyval = keyvals[i];</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160; <span class="keyword">event</span>.hardware_keycode = <a class="code" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a>(keymap, event.keyval);</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160; <span class="keyword">event</span>.is_modifier = (int)<a class="code" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a>(keymap, event.hardware_keycode);</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160; g_signal_emit_by_name(G_OBJECT(widget), <span class="stringliteral">&quot;key-press-event&quot;</span>, &amp;event, &amp;result);</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160; }</div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160; }</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160; <span class="keywordflow">if</span> (action &amp; GDK_KEY_RELEASE) {</div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160; <span class="comment">/* Release the requested buttons in reverse order */</span></div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160; <span class="keyword">event</span>.type = GDK_KEY_RELEASE;</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160; <span class="keywordflow">for</span> (i = (keyvals_length - 1); i &gt;= 0; i--) {</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160; <span class="keyword">event</span>.keyval = keyvals[i];</div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160; <span class="keyword">event</span>.hardware_keycode = <a class="code" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a>(keymap, event.keyval);</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160; <span class="keyword">event</span>.is_modifier = (int)<a class="code" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a>(keymap, event.hardware_keycode);</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160; g_signal_emit_by_name(G_OBJECT(widget), <span class="stringliteral">&quot;key-release-event&quot;</span>, &amp;event, &amp;result);</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160; }</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160; }</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160;}</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160;</div><div class="line"><a name="l01829"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767"> 1829</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;{</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160; GdkRectangle rect;</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160; gint w, h;</div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160; gint wfile, hfile;</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a> res_mode;</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a>;</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160;</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160; <a class="code" href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, &amp;rect);</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160;</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160; <span class="comment">/* Integrity check: check that we have a cnnwin visible and get t */</span></div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160;</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160; res_mode = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;resolution_mode&quot;</span>, <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a>);</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160; scalemode = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;scale&quot;</span>, <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>);</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160; wfile = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;resolution_width&quot;</span>, -1);</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160; hfile = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a>, <span class="stringliteral">&quot;resolution_height&quot;</span>, -1);</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160; <span class="comment">/* If resolution_mode is non-existent (-1), then we try to calculate it</span></div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;<span class="comment"> * as we did before having resolution_mode */</span></div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160; <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a>) {</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; <span class="keywordflow">if</span> (wfile &lt;= 0 || hfile &lt;= 0)</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a>;</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160; res_mode = <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a>;</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160; }</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160;</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160; <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a> || scalemode == <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a>) {</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160; <span class="comment">/* Use internal window size as remote desktop size */</span></div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; GtkAllocation al;</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; gtk_widget_get_allocation(GTK_WIDGET(gp), &amp;al);</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160; w = al.width;</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; h = al.height;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160; <span class="keywordflow">if</span> (w &lt; 10) {</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160; printf(<span class="stringliteral">&quot;Remmina warning: %s RemminaProtocolWidget w=%d h=%d are too small, adjusting to 640x480\n&quot;</span>, __func__, w, h);</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160; w = 640;</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160; h = 480;</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160; }</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; <span class="comment">/* Due to approximations while GTK calculates scaling, (w x h) may exceed our monitor geometry</span></div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160;<span class="comment"> * Adjust to fit. */</span></div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160; <span class="keywordflow">if</span> (w &gt; rect.width)</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160; w = rect.width;</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160; <span class="keywordflow">if</span> (h &gt; rect.height)</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160; h = rect.height;</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (res_mode == <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a>) {</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160; w = rect.width;</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160; h = rect.height;</div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160; w = wfile;</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160; h = hfile;</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160; }</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">profile_remote_width</a> = w;</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160; gp-&gt;<a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>-&gt;<a class="code" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">profile_remote_height</a> = h;</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;}</div><div class="ttc" id="remmina__protocol__widget_8c_html_a25bcb2ae99449624fed6f770218e3d25"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01153">remmina_protocol_widget.c:1153</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00143">remmina_ssh.h:143</a></div></div>
+<div class="ttc" id="struct_mp_run_info_html_a5c8cb7c26289f2afa4fcd87fced6bb91"><div class="ttname"><a href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">MpRunInfo::destroyed</a></div><div class="ttdeci">gboolean destroyed</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01303">remmina_protocol_widget.c:1303</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aeaf728bb767c1bbdda6a0d8dc3553565"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a></div><div class="ttdeci">static gboolean desktop_resize(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00416">remmina_protocol_widget.c:416</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a843c2455a10c9382aee454515f9e7f8b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01695">remmina_protocol_widget.c:1695</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6">REMMINA_MESSAGE_PANEL_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00053">remmina_message_panel.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_aac57e5a1ac6fc21f95e0fb3e70745cf4"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">_RemminaProtocolWidgetPriv::error_message</a></div><div class="ttdeci">gchar * error_message</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00073">remmina_protocol_widget.c:73</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a508044024b303c286a0e643e44d85a29"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a></div><div class="ttdeci">const gchar * remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01172">remmina_protocol_widget.c:1172</a></div></div>
+<div class="ttc" id="remmina__chat__window_8h_html"><div class="ttname"><a href="remmina__chat__window_8h.html">remmina_chat_window.h</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a95088334da86faf9520383629fff48af"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a></div><div class="ttdeci">void remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01178">remmina_protocol_widget.c:1178</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a006867628dec1d7b23404a690c967f4e"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">_RemminaProtocolWidgetPriv::chat_window</a></div><div class="ttdeci">GtkWidget * chat_window</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00079">remmina_protocol_widget.c:79</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acf69725720378340e1a51c87e7638a7f"><div class="ttname"><a href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth_gui(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_adbe15328275677cb38bd8c8a2d5e039d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00592">remmina_protocol_widget.c:592</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_af9b6a2c2665010ab09a6d9943f9850bd"><div class="ttname"><a href="remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a></div><div class="ttdeci">const RemminaProtocolFeature * remmina_protocol_widget_get_features(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00586">remmina_protocol_widget.c:586</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a91d88c61dd84299369fe3c79e19821b1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1">RemminaProtocolWidgetSignalData</a></div><div class="ttdeci">struct _RemminaProtocolWidgetSignalData RemminaProtocolWidgetSignalData</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a8ef0523afadadc9984d53fb02ecc01ad"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a></div><div class="ttdeci">void remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01701">remmina_protocol_widget.c:1701</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_add3775989fb5ed7a7f1f7c9b5980a94e"><div class="ttname"><a href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a></div><div class="ttdeci">static gboolean unlock_dynres(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00401">remmina_protocol_widget.c:401</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a1caaa7bea6ef53e5c7e8109f3d0814e1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1">remmina_protocol_widget_on_key_press</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_on_key_press(GtkWidget *widget, GdkEventKey *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00657">remmina_protocol_widget.c:657</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_af670e0b0960c3e71e9f0b8b797ef9c28"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">_RemminaSSHTunnel::remotedisplay</a></div><div class="ttdeci">gint remotedisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00168">remmina_ssh.h:168</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#l00816">remmina_protocol_widget.c:816</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a1e1f1bfaec497b1365ea70ebe795d778"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">_RemminaSSHTunnel::destroy_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback destroy_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00177">remmina_ssh.h:177</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a4017a800d7803a40d606ffce2578509a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00609">remmina_protocol_widget.c:609</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae47c8270267b02b9c0ff5b36074101c2"><div class="ttname"><a href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_reverse(RemminaSSHTunnel *tunnel, gint port, gint local_port)</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_ae3feb5e5dad00109813fac890d913885"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">_RemminaProtocolWidgetPriv::username</a></div><div class="ttdeci">gchar * username</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00093">remmina_protocol_widget.c:93</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae2cec8bc8216154388727b7e35200667"><div class="ttname"><a href="remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667">remmina_message_panel_setup_auth</a></div><div class="ttdeci">void remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00283">remmina_message_panel.c:283</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a4908abc6c70c59c42e2757aecaa25cf1"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1">_RemminaProtocolPlugin::call_feature</a></div><div class="ttdeci">void(* call_feature)(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00079">plugin.h:79</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7e54d9bb42d2d337527d3af657ef1e1f"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f">remmina_protocol_widget_destroy</a></div><div class="ttdeci">static void remmina_protocol_widget_destroy(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00168">remmina_protocol_widget.c:168</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa9639b76ac0a92647ce08bdfe943d113"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113">remmina_protocol_widget_dialog_mt_setup</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_dialog_mt_setup(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01261">remmina_protocol_widget.c:1261</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_signal_data_html_a7a8b9ad6fdff86250a5eef649693d64a"><div class="ttname"><a href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a">_RemminaProtocolWidgetSignalData::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00122">remmina_protocol_widget.c:122</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ae5b1825b5d4e56ecc2f25c28bb042c32"><div class="ttname"><a href="remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32">remmina_message_panel_setup_question</a></div><div class="ttdeci">void remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00214">remmina_message_panel.c:214</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#l01736">remmina_protocol_widget.c:1736</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ab89dba73bc6832c6c5061a0d8bd0fbb4"><div class="ttname"><a href="remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4">remmina_message_panel_field_get_filename</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00776">remmina_message_panel.c:776</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#l01117">remmina_protocol_widget.c:1117</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00120">types.h:120</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab4c6435ef92e34a94270069ce1861907"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01102">remmina_protocol_widget.c:1102</a></div></div>
+<div class="ttc" id="rcw_8c_html_a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce"><div class="ttname"><a href="rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce">LAST_SIGNAL</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00173">rcw.c:173</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aebc7c7d34c470081a52aa35d998ce868"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01419">remmina_protocol_widget.c:1419</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_signal_data_html_a2dfdc85f32d5eeed1d183088ac2a4ada"><div class="ttname"><a href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada">_RemminaProtocolWidgetSignalData::signal_name</a></div><div class="ttdeci">const gchar * signal_name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00123">remmina_protocol_widget.c:123</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab863cc1442a992adfa323bc77ab88504"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a></div><div class="ttdeci">void remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01592">remmina_protocol_widget.c:1592</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_ad1e4f3a0f64cd98e301044b6c38a1f1d"><div class="ttname"><a href="remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d">remmina_file_get_filename</a></div><div class="ttdeci">const gchar * remmina_file_get_filename(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00184">remmina_file.c:184</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_adfac12e7a563dc06fb2f0c8307f40fee"><div class="ttname"><a href="remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee">remmina_protocol_widget_xport_tunnel_connect_callback</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_xport_tunnel_connect_callback(RemminaSSHTunnel *tunnel, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01022">remmina_protocol_widget.c:1022</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9ed3110b7b030bccd0ff9ed70e86da2d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01550">remmina_protocol_widget.c:1550</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a92d8a08aba2743f081e22f39fcaf0df8"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">remmina_protocol_widget_dialog_mt_data_t::pflags</a></div><div class="ttdeci">RemminaMessagePanelFlags pflags</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01219">remmina_protocol_widget.c:1219</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a">REMMINA_MESSAGE_PANEL_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00054">remmina_message_panel.h:54</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aab2f304822ccfd4979854ef1afd81771"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a></div><div class="ttdeci">gboolean remmina_protocol_widget_has_error(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01166">remmina_protocol_widget.c:1166</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_aefee02ed8a8fe629eda81151fc8fcc4c"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">remmina_masterthread_exec_data::protocolwidget_emit_signal</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@18 protocolwidget_emit_signal</div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a81eb96409c1543bcf2d9474d4d89907f"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">remmina_protocol_widget_dialog_mt_data_t::called_from_subthread</a></div><div class="ttdeci">gboolean called_from_subthread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01220">remmina_protocol_widget.c:1220</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a3f67e6ca406ec87db6ae6a3582770c74"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">remmina_protocol_widget_dialog_mt_data_t::title</a></div><div class="ttdeci">gchar * title</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01213">remmina_protocol_widget.c:1213</a></div></div>
+<div class="ttc" id="struct_mp_run_info_html"><div class="ttname"><a href="struct_mp_run_info.html">MpRunInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01299">remmina_protocol_widget.c:1299</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a13e14fa81f7ca52942415a7caf5b932c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a></div><div class="ttdeci">void remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00674">remmina_protocol_widget.c:674</a></div></div>
+<div class="ttc" id="rcw_8c_html_ac5eda3a29c88ac88d80b5775e39ffcb4"><div class="ttname"><a href="rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4">rco_show_message_panel</a></div><div class="ttdeci">void rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Each cnnobj-&gt;page can have more than one RemminaMessagePanel, but 0 or 1 are visible. </div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04107">rcw.c:4107</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00912">remmina_protocol_widget.c:912</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a37bd29fa334e378eff4367d61ee59e05"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">_RemminaProtocolWidgetPriv::clientcert</a></div><div class="ttdeci">gchar * clientcert</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00100">remmina_protocol_widget.c:100</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7c15fa81642c52ef382e1dbe34ffb6ac"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01544">remmina_protocol_widget.c:1544</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac1f95eb1e31c05ae0bc4027496ceafb0"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0">remmina_protocol_widget_on_key_release</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_on_key_release(GtkWidget *widget, GdkEventKey *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00665">remmina_protocol_widget.c:665</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a25797eafabe9d6f5729b56145abe1572"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572">shutdown_loop</a></div><div class="ttdeci">static void shutdown_loop(MpRunInfo *mpri)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01306">remmina_protocol_widget.c:1306</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a33ae9b7cd8cb3dcd85223017dfd13795"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">_RemminaSSHTunnel::destroy_func_callback_data</a></div><div class="ttdeci">gpointer destroy_func_callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00178">remmina_ssh.h:178</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a52a0986eaf54c9e606ce9cdf8bb57e60"><div class="ttname"><a href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a></div><div class="ttdeci">RemminaFile * remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00711">remmina_file.c:711</a></div></div>
+<div class="ttc" id="rcw_8c_html_ad3c2fe67b137c757bd21b79ad5dcc5ff"><div class="ttname"><a href="rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff">rcw_open_from_file_full</a></div><div class="ttdeci">GtkWidget * rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l03898">rcw.c:3898</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_ac10f450f856ca7d9c0b6896261e9c407"><div class="ttname"><a href="remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407">remmina_message_panel_setup_auth_x509</a></div><div class="ttdeci">void remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00481">remmina_message_panel.c:481</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a858e4756aa97ce424ccf12475c225c54"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54">remmina_protocol_widget_dialog</a></div><div class="ttdeci">static int remmina_protocol_widget_dialog(enum panel_type dtype, RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *strpasswordlabel)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01337">remmina_protocol_widget.c:1337</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a122e28e59acb89200937ff823b82ddaf"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf">run_response_handler</a></div><div class="ttdeci">static void run_response_handler(RemminaMessagePanel *mp, gint response_id, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01312">remmina_protocol_widget.c:1312</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aeaa588b63800d3762b738fbbfd4a1736"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736">remmina_protocol_widget_xport_tunnel_init_callback</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_xport_tunnel_init_callback(RemminaSSHTunnel *tunnel, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01006">remmina_protocol_widget.c:1006</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a3d9e2f2eb2594411e6fe63cde443dfb2"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">_RemminaProtocolPlugin::init</a></div><div class="ttdeci">void(* init)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00075">plugin.h:75</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a99ba55ddcb17c9e87ca233fa83787227"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227">cancel_init_tunnel_cb</a></div><div class="ttdeci">static void cancel_init_tunnel_cb(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00729">remmina_protocol_widget.c:729</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac705ffa194e3c3457e9a0a1bd6c79be8"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a></div><div class="ttdeci">void remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01758">remmina_protocol_widget.c:1758</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed">RPWDT_AUTHX509</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00107">remmina_protocol_widget.c:107</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a70cdb4f879e8bb26b23d05cbbe685640"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">_RemminaProtocolWidgetPriv::listen_message_panel</a></div><div class="ttdeci">RemminaMessagePanel * listen_message_panel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00089">remmina_protocol_widget.c:89</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5567a5c55d9a880d174faabafcd15fa3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3">remmina_protocol_widget_init_tunnel</a></div><div class="ttdeci">static RemminaSSHTunnel * remmina_protocol_widget_init_tunnel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00734">remmina_protocol_widget.c:734</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_afa1a3a21c504b386cecfb42d1c9e6bff"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">_RemminaProtocolPlugin::features</a></div><div class="ttdeci">const RemminaProtocolFeature * features</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00073">plugin.h:73</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a7efb3ca6b61f2eda0dbad7ad9bc6d09b"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">remmina_masterthread_exec_data::protocolwidget_mpdestroy</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@20 protocolwidget_mpdestroy</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a1d7cf2572439242b4f70e97b7f71405f"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">_RemminaProtocolWidgetPriv::domain</a></div><div class="ttdeci">gchar * domain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00095">remmina_protocol_widget.c:95</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct_mp_run_info_html_acbbf3faafdfa1a05fd787730d1668079"><div class="ttname"><a href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">MpRunInfo::loop</a></div><div class="ttdeci">GMainLoop * loop</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01301">remmina_protocol_widget.c:1301</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01210">remmina_protocol_widget.c:1210</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9473da27fd10eb46ef8360f9ad4be86d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01556">remmina_protocol_widget.c:1556</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a6a630e96e5b914d60d678ae8eaad4cd9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00615">remmina_protocol_widget.c:615</a></div></div>
+<div class="ttc" id="rcw_8c_html_a96e821dc68caa7f3380a513eb47aead7"><div class="ttname"><a href="rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7">rco_destroy_message_panel</a></div><div class="ttdeci">void rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdoc">Deletes a RemminaMessagePanel from the current cnnobj and if it was visible, make visible the last re...</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l04060">rcw.c:4060</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00108">remmina_ssh.h:108</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5aaadd752a3275a0a8e0018a3dd669f8"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a></div><div class="ttdeci">void remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00681">remmina_protocol_widget.c:681</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html"><div class="ttname"><a href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00152">rcw.c:152</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6fa916d3736cb8e2a0e6541f608c209b"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">_RemminaSSHTunnel::bindlocalhost</a></div><div class="ttdeci">gboolean bindlocalhost</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00169">remmina_ssh.h:169</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ae609b351fff17c235251b0ba7c480da5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01129">remmina_protocol_widget.c:1129</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5ec62969da54155e24edcb1d998f93f7"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01141">remmina_protocol_widget.c:1141</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa88afa1e3f04974974a8be324b0a930e"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a></div><div class="ttdeci">void remmina_protocol_widget_update_align(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00394">remmina_protocol_widget.c:394</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad6e2d00646e8268aa0e8bbe31b77db48"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a></div><div class="ttdeci">void remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01147">remmina_protocol_widget.c:1147</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_signal_data_html"><div class="ttname"><a href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00121">remmina_protocol_widget.c:121</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_af4a20ef0ff8cc86feeba345498179e48"><div class="ttname"><a href="remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48">conn_opened</a></div><div class="ttdeci">static gboolean conn_opened(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00352">remmina_protocol_widget.c:352</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3">REMMINA_MESSAGE_PANEL_CLIENTKEYFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00060">remmina_message_panel.h:60</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa674c14f3a46dd5eb6b53d6f8ce6bd31"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01481">remmina_protocol_widget.c:1481</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a384e675528400649161ea3ea41292020"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">remmina_masterthread_exec_data::chat_receive</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@14 chat_receive</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a4fb4c2252289e8e891376db6279ef8f5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5">cancel_open_connection_cb</a></div><div class="ttdeci">static void cancel_open_connection_cb(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00293">remmina_protocol_widget.c:293</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_ad2e965f3997d21a1e08d365c74e615bd"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">_RemminaProtocolPlugin::open_connection</a></div><div class="ttdeci">gboolean(* open_connection)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00076">plugin.h:76</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a0e20944d484c95036eeb6b5d7775c901"><div class="ttname"><a href="remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901">remmina_message_panel_field_set_string</a></div><div class="ttdeci">void remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00688">remmina_message_panel.c:688</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_aac83645c5474683d37a9a61fcd640b7a"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">remmina_protocol_widget_dialog_mt_data_t::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01212">remmina_protocol_widget.c:1212</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a2381772c96a26aafc98d347d210dbfe0"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">_RemminaProtocolWidgetPriv::plugin</a></div><div class="ttdeci">RemminaProtocolPlugin * plugin</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00064">remmina_protocol_widget.c:64</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac9abaedb8cc35838ef1444423a81507d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d">run_unmap_handler</a></div><div class="ttdeci">static void run_unmap_handler(RemminaMessagePanel *mp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01320">remmina_protocol_widget.c:1320</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a29b8f44a7f4514422d3a5e04e0b8f0b5"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">remmina_protocol_widget_dialog_mt_data_t::rcbutton</a></div><div class="ttdeci">int rcbutton</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01225">remmina_protocol_widget.c:1225</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a69757e0c39fa9fcf31800f6375772016"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016">conn_closed</a></div><div class="ttdeci">static gboolean conn_closed(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00327">remmina_protocol_widget.c:327</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25">REMMINA_MESSAGE_PANEL_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00052">remmina_message_panel.h:52</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7">REMMINA_MESSAGE_PANEL_CACERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00057">remmina_message_panel.h:57</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a15368afcbeb770f8cf25941bd49e7b54"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a></div><div class="ttdeci">void remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01089">remmina_protocol_widget.c:1089</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78a"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a></div><div class="ttdeci">RemminaProtocolWidgetResolutionMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00123">types.h:123</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_af72272c7e2f45d61130ab4e57eb86380"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">_RemminaProtocolWidgetPriv::height</a></div><div class="ttdeci">gint height</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00068">remmina_protocol_widget.c:68</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a41b62f211a8a8e960bc80aa1ba6b0380"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a></div><div class="ttdeci">void remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01123">remmina_protocol_widget.c:1123</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a19fed9a85494d40d3f2ae2ae1d1bc18c"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">_RemminaSSHTunnel::disconnect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback disconnect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00174">remmina_ssh.h:174</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_af9db6b4306852214f3dc2cdc06a635b4"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">_RemminaProtocolWidgetPriv::cacrl</a></div><div class="ttdeci">gchar * cacrl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00099">remmina_protocol_widget.c:99</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a6399c3828908e36ed6202b5599bd206b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a></div><div class="ttdeci">void remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00300">remmina_protocol_widget.c:300</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_aca49dce014d8471be0d3cfe29cc7a35d"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">_RemminaProtocolWidgetPriv::features</a></div><div class="ttdeci">RemminaProtocolFeature * features</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00065">remmina_protocol_widget.c:65</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a72561ca7477a62e8c7234409205e6544"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">remmina_protocol_widget_dialog_mt_data_t::strpasswordlabel</a></div><div class="ttdeci">gchar * strpasswordlabel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01217">remmina_protocol_widget.c:1217</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a8d7d9b3c8050545469b1af9a35b043a2"><div class="ttname"><a href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a></div><div class="ttdeci">gchar * remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00682">remmina_public.c:682</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8c_html_a7c81795162a70d06294fdf935ea210d7"><div class="ttname"><a href="remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7">remmina_ext_exec_new</a></div><div class="ttdeci">GtkDialog * remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ext__exec_8c_source.html#l00066">remmina_ext_exec.c:66</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_affb2413c00f0681fe08f90523f7e1471"><div class="ttname"><a href="remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a></div><div class="ttdeci">void remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget)</div><div class="ttdoc">Send to the plugin some keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00474">remmina_protocol_widget.c:474</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00126">types.h:126</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a278e13b53a4fdb65498e00e908edb98d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01646">remmina_protocol_widget.c:1646</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aeffe07c6412286d99ba04f05fe74aeac"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac">cancel_start_reverse_tunnel_cb</a></div><div class="ttdeci">static void cancel_start_reverse_tunnel_cb(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00905">remmina_protocol_widget.c:905</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a7c8675e38544a9c393b560b31d165791"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">_RemminaProtocolWidgetPriv::save_password</a></div><div class="ttdeci">gboolean save_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00096">remmina_protocol_widget.c:96</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a></div><div class="ttdeci">RemminaMessagePanelFlags</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00131">types.h:131</a></div></div>
+<div class="ttc" id="remmina__ext__exec_8h_html"><div class="ttname"><a href="remmina__ext__exec_8h.html">remmina_ext_exec.h</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_aec9dcd96d0148fec9cdc9e94cc8dc1ff"><div class="ttname"><a href="remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff">remmina_message_panel_field_set_filename</a></div><div class="ttdeci">void remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00759">remmina_message_panel.c:759</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__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<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#l00343">remmina_protocol_widget.c:343</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a5c2137462d3168e90c812f1ce75a6e62"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a></div><div class="ttdeci">GtkWidget * remmina_protocol_widget_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01781">remmina_protocol_widget.c:1781</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2c2a41aeee8f3ef6481378a95c02c130"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130">remmina_protocol_widget_signals</a></div><div class="ttdeci">static guint remmina_protocol_widget_signals[LAST_SIGNAL]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00126">remmina_protocol_widget.c:126</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_aaab2e0d0706684150d0ee572e2490a10"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">_RemminaProtocolWidgetPriv::profile_remote_width</a></div><div class="ttdeci">gint profile_remote_width</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00085">remmina_protocol_widget.c:85</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#l00424">remmina_protocol_widget.c:424</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a175c6dbec04bf34e3f2a5bd791d2d336"><div class="ttname"><a href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></div><div class="ttdeci">static SoupSession * session</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00077">rmnews.c:77</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_widget_priv_html_a6a24677077c069fbbb1f17e747530e1b"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">_RemminaProtocolWidgetPriv::auth_message_panel</a></div><div class="ttdeci">RemminaMessagePanel * auth_message_panel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00090">remmina_protocol_widget.c:90</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#l00057">types.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a0f1ee4a3ddb7afe518588dce3046f5ec"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">_RemminaProtocolWidgetPriv::remmina_file</a></div><div class="ttdeci">RemminaFile * remmina_file</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00063">remmina_protocol_widget.c:63</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a277fd3954a4f89c6ddddd68f4ffb5116"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">_RemminaProtocolWidgetPriv::ssh_tunnels</a></div><div class="ttdeci">GPtrArray * ssh_tunnels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00076">remmina_protocol_widget.c:76</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9092c29f585fdabaf0ce7e865670053b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01414">remmina_protocol_widget.c:1414</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a92bb5524267ad4fe682fc07f778500d7"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">_RemminaProtocolPlugin::send_keystrokes</a></div><div class="ttdeci">void(* send_keystrokes)(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00080">plugin.h:80</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c">RPWDT_AUTH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00105">remmina_protocol_widget.c:105</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_acf75fd4bac28a3d53da064b2905f23c1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01510">remmina_protocol_widget.c:1510</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a93da102535413a0b3b1b740b582444ca"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">_RemminaProtocolWidgetPriv::profile_remote_height</a></div><div class="ttdeci">gint profile_remote_height</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00086">remmina_protocol_widget.c:86</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00127">types.h:127</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ab9632c73b32531b7bea976e10204670b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01574">remmina_protocol_widget.c:1574</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a97cba8208a4348446159bf465b3233f5"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a></div><div class="ttdeci">void remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00712">remmina_protocol_widget.c:712</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_abc556f0a4335083436f6e19c204fa553"><div class="ttname"><a href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a></div><div class="ttdeci">void remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00145">remmina_ssh.c:145</a></div></div>
+<div class="ttc" id="struct_mp_run_info_html_a5c72860dd91def572bad1443e2c188a5"><div class="ttname"><a href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">MpRunInfo::mp</a></div><div class="ttdeci">RemminaMessagePanel * mp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01300">remmina_protocol_widget.c:1300</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a05f9694efc84de6273efa46d232b84f9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9">cancel_connect_xport_cb</a></div><div class="ttdeci">static void cancel_connect_xport_cb(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01041">remmina_protocol_widget.c:1041</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aba49db2ced40e21e8adfad69dcfda2c4"><div class="ttname"><a href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_xport(RemminaSSHTunnel *tunnel, gboolean bindlocalhost)</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2551dd6f53480609596d2695040fba5d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a></div><div class="ttdeci">void remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00409">remmina_protocol_widget.c:409</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_abf04fd329ab77bbd4f6aa1cb1eaa349d"><div class="ttname"><a href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a></div><div class="ttdeci">RemminaSSHTunnel * remmina_ssh_tunnel_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_a18a9b0b9c8e619b3bdee881d7601f6d6"><div class="ttname"><a href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">_RemminaProtocolWidget::priv</a></div><div class="ttdeci">RemminaProtocolWidgetPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00060">remmina_protocol_widget.h:60</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a0fcec40aae330e115d1bae66aeefb3df"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df">remmina_protocol_widget_init</a></div><div class="ttdeci">static void remmina_protocol_widget_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00225">remmina_protocol_widget.c:225</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa0b0a97022961c198c3343dd2433d7cb"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb">authpanel_mt_cb</a></div><div class="ttdeci">static void authpanel_mt_cb(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01228">remmina_protocol_widget.c:1228</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a78b123eca6709bceeacda7d791a94bf1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a></div><div class="ttdeci">RemminaMessagePanel * remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00687">remmina_protocol_widget.c:687</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a8066492c4a0181f1b39b2fb2098fb56d"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">_RemminaSSHTunnel::init_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback init_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00172">remmina_ssh.h:172</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab89fba118812616a3e47504cfe4f3390"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a></div><div class="ttdeci">gboolean(* RemminaHostkeyFunc)(RemminaProtocolWidget *gp, guint keyval, gboolean release)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00113">remmina_protocol_widget.h:113</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a247c73c70d9c58427022a4dbcd638d32"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaProtocolWidget, remmina_protocol_widget, GTK_TYPE_EVENT_BOX)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00110">remmina_protocol_widget.c:110</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7ed85f4ea19e0660dbf46f4f3dc4b895"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01674">remmina_protocol_widget.c:1674</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a94ef3b8e64d6ced7cd639b7917026f4c"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">_RemminaProtocolWidgetPriv::scaler_expand</a></div><div class="ttdeci">gboolean scaler_expand</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00070">remmina_protocol_widget.c:70</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a67a48217d44350e028ed95b1b55f0b0f"><div class="ttname"><a href="remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f">remmina_message_panel_field_set_switch</a></div><div class="ttdeci">void remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00722">remmina_message_panel.c:722</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6f2cd8a2535e180e7bd428e84030ffb6"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">_RemminaSSHTunnel::callback_data</a></div><div class="ttdeci">gpointer callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00175">remmina_ssh.h:175</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_aae1dfb6ff52460c80a3adf80d4934f67"><div class="ttname"><a href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">_RemminaProtocolWidget::cnnobj</a></div><div class="ttdeci">RemminaConnectionObject * cnnobj</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00059">remmina_protocol_widget.h:59</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a14684e3222e6afb1b43d77634a174767"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a></div><div class="ttdeci">void remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01829">remmina_protocol_widget.c:1829</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a6dd7314100e35804a8081e9837bd9304"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">remmina_masterthread_exec_data::init_save_creds</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@13 init_save_creds</div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_abaf33a2c9ab6bcd73ba02bfe942a26a1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">remmina_masterthread_exec_data::protocolwidget_mpshowretry</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@21 protocolwidget_mpshowretry</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a262d75d6b535bd8c623e607805db4084"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01489">remmina_protocol_widget.c:1489</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aa41324b7175c46bb42b978332db95d22"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a></div><div class="ttdeci">void remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00432">remmina_protocol_widget.c:432</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a57ac13fc4a2653c40e0601183628c0ca"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00555">remmina_protocol_widget.c:555</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae9f52b1a3a545acae8c93007e20ec909"><div class="ttname"><a href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a></div><div class="ttdeci">void remmina_ssh_tunnel_cancel_accept(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a290eb68f0e86de1b7b82e2d98a1494d1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a></div><div class="ttdeci">void remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00212">remmina_protocol_widget.c:212</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a708ea5b5a9d1f5dcc5ab5bfb3d1a8483"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">_RemminaProtocolWidgetPriv::connect_message_panel</a></div><div class="ttdeci">RemminaMessagePanel * connect_message_panel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00088">remmina_protocol_widget.c:88</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7">REMMINA_MESSAGE_PANEL_CLIENTCERTFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00059">remmina_message_panel.h:59</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a12eddf3428a53201ee0a2ec422d2fa4a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a></div><div class="ttdeci">gboolean remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00942">remmina_protocol_widget.c:942</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a70aecb9af2ea35527e8d058d1d87a0d3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01565">remmina_protocol_widget.c:1565</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a14655c577c6f070ee28f4211baf05361"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">remmina_protocol_widget_dialog_mt_data_t::default_domain</a></div><div class="ttdeci">gchar * default_domain</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01216">remmina_protocol_widget.c:1216</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a223f8dd7a678bcec2ece40a2d8f7ea06"><div class="ttname"><a href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a></div><div class="ttdeci">void remmina_ssh_tunnel_free(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65">RPWDT_QUESTIONYESNO</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00106">remmina_protocol_widget.c:106</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00125">types.h:125</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a2c5f3bd1f990157bef034920db49dc6e"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">_RemminaProtocolWidgetPriv::cacert</a></div><div class="ttdeci">gchar * cacert</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00098">remmina_protocol_widget.c:98</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a11480396cb379860d16d9d41ef91ecb1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1">remmina_protocol_widget_close_all_tunnels</a></div><div class="ttdeci">static void remmina_protocol_widget_close_all_tunnels(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00150">remmina_protocol_widget.c:150</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a04f0a11e50cdbd98ab80984fd5aca16d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d">remmina_protocol_widget_chat_on_destroy</a></div><div class="ttdeci">static void remmina_protocol_widget_chat_on_destroy(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01707">remmina_protocol_widget.c:1707</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a450fbca7e27c952b6aaba6e33192051d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d">remmina_protocol_widget_xport_tunnel_disconnect_callback</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_xport_tunnel_disconnect_callback(RemminaSSHTunnel *tunnel, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01028">remmina_protocol_widget.c:1028</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></div><div class="ttdeci">RemminaProtocolFeatureType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00043">types.h:43</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aadd106cec729a80405c6097e4c662044"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a></div><div class="ttdeci">void remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01135">remmina_protocol_widget.c:1135</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_ad4b21147a7592bf689c9f761d9e4fdc2"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2">_RemminaProtocolPlugin::close_connection</a></div><div class="ttdeci">gboolean(* close_connection)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00077">plugin.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_class_html"><div class="ttname"><a href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00063">remmina_protocol_widget.h:63</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2923c94c1caf1ac4a7eb48361d2670a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a></div><div class="ttdeci">void(* RemminaMessagePanelCallback)(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00065">remmina_message_panel.h:65</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ac3e5a7f14aef4adb2e57d35e9c180b3b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a></div><div class="ttdeci">void remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00565">remmina_protocol_widget.c:565</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a44054d029d4615092ae8a2ee1bf81db4"><div class="ttname"><a href="remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4">remmina_message_panel_field_get_string</a></div><div class="ttdeci">gchar * remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00704">remmina_message_panel.c:704</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00118">types.h:118</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a633088cf0d1767a3c85852c1d4c625b6"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">remmina_masterthread_exec_data::protocolwidget_mpprogress</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@19 protocolwidget_mpprogress</div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2830f756dfc3d735b57b0c5753c429e3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a></div><div class="ttdeci">gboolean remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01198">remmina_protocol_widget.c:1198</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a08d312825fc0de9f9286279d99f763a1"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01583">remmina_protocol_widget.c:1583</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aa7ac5ec9d95867734619583a2049e952"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">_RemminaProtocolFeature::opt1</a></div><div class="ttdeci">gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00059">types.h:59</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a7b1e83afd68c2b7301fc4d6da6a8f6d8"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8">run_destroy_handler</a></div><div class="ttdeci">static void run_destroy_handler(RemminaMessagePanel *mp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01328">remmina_protocol_widget.c:1328</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_afae4072b7d8b54392ec08da7d6ead620"><div class="ttname"><a href="remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620">remmina_message_panel_setup_progress</a></div><div class="ttdeci">void remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00128">remmina_message_panel.c:128</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_aa37ce53d4329aaaa7c4059c60882a533"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">_RemminaProtocolWidgetPriv::scalemode</a></div><div class="ttdeci">RemminaScaleMode scalemode</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00069">remmina_protocol_widget.c:69</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00134">types.h:134</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a172fa9cf2ce196c9846a3e47ea9036b4"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01046">remmina_protocol_widget.c:1046</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a605b69a9aa4393024369cc5070488692"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00628">remmina_protocol_widget.c:628</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a3ecf120415414844ebcf07a1c86e9cdf"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">remmina_protocol_widget_dialog_mt_data_t::pt_mutex</a></div><div class="ttdeci">pthread_mutex_t pt_mutex</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01222">remmina_protocol_widget.c:1222</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9275874ac61d3750aa677a36da714373"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a></div><div class="ttdeci">panel_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00104">remmina_protocol_widget.c:104</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aa49520ac95b505c111abfb7f3b7c55de"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de">_RemminaProtocolPlugin::query_feature</a></div><div class="ttdeci">gboolean(* query_feature)(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00078">plugin.h:78</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aecd801fbe5399bbeb5832657bce193cb"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb">remmina_protocol_widget_tunnel_destroy</a></div><div class="ttdeci">static gboolean remmina_protocol_widget_tunnel_destroy(RemminaSSHTunnel *tunnel, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00780">remmina_protocol_widget.c:780</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#l00359">remmina_plugin_manager.c:359</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a650c926c67ed4ec841cf8553d6454850"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">remmina_protocol_widget_dialog_mt_data_t::default_password</a></div><div class="ttdeci">gchar * default_password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01215">remmina_protocol_widget.c:1215</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a05b5edfc3d3d0dcff1745d1d35aaca5c"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a></div><div class="ttdeci">void remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00377">remmina_protocol_widget.c:377</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779"><div class="ttname"><a href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779">REMMINA_MESSAGE_PANEL_CACRLFILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00058">remmina_message_panel.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aab44850c13a7e5e20a02603ae173d53d"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">_RemminaProtocolFeature::opt2</a></div><div class="ttdeci">gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00060">types.h:60</a></div></div>
+<div class="ttc" id="struct_mp_run_info_html_acb8e8aaf721611a761541a325e2a5904"><div class="ttname"><a href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">MpRunInfo::response</a></div><div class="ttdeci">gint response</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01302">remmina_protocol_widget.c:1302</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad8df6a87e19b7751b26820ef4a668de9"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01109">remmina_protocol_widget.c:1109</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__public_8c_html_a95f1d68c7ab3e2a6b158db45f63538fb"><div class="ttname"><a href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a></div><div class="ttdeci">guint16 remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00549">remmina_public.c:549</a></div></div>
+<div class="ttc" id="types_8h_html_a1ace68e95e55a30fcf8b991f52332501"><div class="ttname"><a href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a></div><div class="ttdeci">gpointer RemminaTunnelInitFunc</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00075">types.h:75</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_ac613cf4b362b9dfc25e66f9d265e9326"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">_RemminaProtocolWidgetPriv::hostkey_func</a></div><div class="ttdeci">RemminaHostkeyFunc hostkey_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00083">remmina_protocol_widget.c:83</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_ad9460e6c8e837ce941568d74499e0b28"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">remmina_protocol_widget_dialog_mt_data_t::default_username</a></div><div class="ttdeci">gchar * default_username</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01214">remmina_protocol_widget.c:1214</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a3fc52d61f77327534286f57e563e0923"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_password(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01538">remmina_protocol_widget.c:1538</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a1fac51670815da6a72700a10866c179a"><div class="ttname"><a href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a></div><div class="ttdeci">gboolean remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00564">remmina_public.c:564</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a13fd74ca385ce7f7a4d6094a65bd17f7"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">remmina_protocol_widget_dialog_mt_data_t::dtype</a></div><div class="ttdeci">enum panel_type dtype</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01218">remmina_protocol_widget.c:1218</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a11a8aa051088d48b389c8385d03a65f7"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">_RemminaProtocolWidgetPriv::password</a></div><div class="ttdeci">gchar * password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00094">remmina_protocol_widget.c:94</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af348bb968fd98ba269c4e253750e2400"><div class="ttname"><a href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">_RemminaPref::sshtunnel_port</a></div><div class="ttdeci">gint sshtunnel_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00145">remmina_pref.h:145</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_ad637ec849c497e4a0d4c723396aa6fba"><div class="ttname"><a href="remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01427">remmina_protocol_widget.c:1427</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a0a93da80662ff18b93270ced59243ce3"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3">cancel_start_direct_tunnel_cb</a></div><div class="ttdeci">static void cancel_start_direct_tunnel_cb(void *cbdata, int btn)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00774">remmina_protocol_widget.c:774</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a8565f01f8b5a3f0ee4518bda5f923f9a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a></div><div class="ttdeci">static gboolean update_align(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00385">remmina_protocol_widget.c:385</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_ad4778e62aa78baace7d46fb1c4a475c4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">_RemminaProtocolPlugin::get_plugin_screenshot</a></div><div class="ttdeci">gboolean(* get_plugin_screenshot)(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00081">plugin.h:81</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a0b19dbe685e4465e7f06706270e120fa"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a></div><div class="ttdeci">void remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01159">remmina_protocol_widget.c:1159</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a80bc2fcb39c236da739593c2134c73fa"><div class="ttname"><a href="remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa">remmina_message_panel_field_get_switch_state</a></div><div class="ttdeci">gboolean remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00740">remmina_message_panel.c:740</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a75d5f7d146f04132de722d0b7d09bb7d"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">_RemminaProtocolWidgetPriv::has_error</a></div><div class="ttdeci">gboolean has_error</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00072">remmina_protocol_widget.c:72</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#l00561">remmina_file.c:561</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a8c125f58aa4fac0e4c88f293e4d4dd74"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74">remmina_protocol_widget_class_init</a></div><div class="ttdeci">static void remmina_protocol_widget_class_init(RemminaProtocolWidgetClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00129">remmina_protocol_widget.c:129</a></div></div>
+<div class="ttc" id="rcw_8c_html_aee06df544a91184cba1fe77c6991065a"><div class="ttname"><a href="rcw_8c.html#aee06df544a91184cba1fe77c6991065a">rco_get_monitor_geometry</a></div><div class="ttdeci">void rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz)</div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00960">rcw.c:960</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_ae76f074f8613e3f3b01c26eb3ce194f0"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">_RemminaProtocolWidgetPriv::clientkey</a></div><div class="ttdeci">gchar * clientkey</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00101">remmina_protocol_widget.c:101</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a480f842fac65440c367bf3c3d87d2601"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp)</div><div class="ttdoc">Check if the plugin accepts keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00466">remmina_protocol_widget.c:466</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00062">remmina_protocol_widget.c:62</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9bcd0d356c7215dc0f791c9744360705"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a></div><div class="ttdeci">void remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01790">remmina_protocol_widget.c:1790</a></div></div>
+<div class="ttc" id="structremmina__protocol__widget__dialog__mt__data__t_html_a9ee011a8e1d09de188018e634aa2bbda"><div class="ttname"><a href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">remmina_protocol_widget_dialog_mt_data_t::pt_cond</a></div><div class="ttdeci">pthread_cond_t pt_cond</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01223">remmina_protocol_widget.c:1223</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a1f3297263703b4259c1c9607d710995d"><div class="ttname"><a href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a></div><div class="ttdeci">void remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00155">remmina_ssh.c:155</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a45724aed5474dd741563ffbf89237022"><div class="ttname"><a href="remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022">remmina_chat_window_receive</a></div><div class="ttdeci">void remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00251">remmina_chat_window.c:251</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a4a3a9ba7422fc302b0b412ac771c9953"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a></div><div class="ttdeci">void remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01729">remmina_protocol_widget.c:1729</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_adc8b77823386e00e610527d6b0b61149"><div class="ttname"><a href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a></div><div class="ttdeci">void remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00333">remmina_public.c:333</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00124">types.h:124</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a52b3f47eac79f2781ba81d61505f4f53"><div class="ttname"><a href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_open(RemminaSSHTunnel *tunnel, const gchar *host, gint port, gint local_port)</div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a96c5eaa302251a13d318bd7d13ed0c95"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">remmina_masterthread_exec_data::protocolwidget_panelshowlisten</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@22 protocolwidget_panelshowlisten</div></div>
+<div class="ttc" id="remmina__chat__window_8c_html_a5e4fa655fddf361fed13bbd759bea24f"><div class="ttname"><a href="remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f">remmina_chat_window_new</a></div><div class="ttdeci">GtkWidget * remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__chat__window_8c_source.html#l00160">remmina_chat_window.c:160</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a76ad91e7f8648699f71c466e203aa6dd"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real</a></div><div class="ttdeci">void remmina_protocol_widget_open_connection_real(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00238">remmina_protocol_widget.c:238</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a2506e80d482c34532d0e534856452069"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a></div><div class="ttdeci">RemminaFile * remmina_protocol_widget_get_file(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01204">remmina_protocol_widget.c:1204</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a5cbea00dcc608759fcf66186e6afde93"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">_RemminaProtocolWidgetPriv::width</a></div><div class="ttdeci">gint width</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00067">remmina_protocol_widget.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a071153b511500c3faa6804ebd76aeba1"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">_RemminaSSHTunnel::localdisplay</a></div><div class="ttdeci">gchar * localdisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00170">remmina_ssh.h:170</a></div></div>
+<div class="ttc" id="types_8h_html_afae2f546eaf9ef8a816a804e830055bf"><div class="ttname"><a href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a></div><div class="ttdeci">gboolean(* RemminaXPortTunnelInitFunc)(RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00076">types.h:76</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_af7db7b9f49fe6b83b17471116d363d40"><div class="ttname"><a href="remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40">remmina_message_panel_response</a></div><div class="ttdeci">void remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00794">remmina_message_panel.c:794</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a66263e6e7da79357ceb80d32b191d9f2"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a></div><div class="ttdeci">void remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp))</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01713">remmina_protocol_widget.c:1713</a></div></div>
+<div class="ttc" id="remmina__message__panel_8c_html_a7015155d2b1db3e74de4d4d5ef7cca55"><div class="ttname"><a href="remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55">remmina_message_panel_new</a></div><div class="ttdeci">RemminaMessagePanel * remmina_message_panel_new()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8c_source.html#l00088">remmina_message_panel.c:88</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a41a28954660d2d3816630e2ef9bb4211"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">_RemminaProtocolWidgetPriv::init_func</a></div><div class="ttdeci">RemminaTunnelInitFunc init_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00077">remmina_protocol_widget.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_aa904bb1d9f643f6fde2b0eea4a8b1660"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">_RemminaSSHTunnel::connect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback connect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00173">remmina_ssh.h:173</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a96159bd8e9d70c74967e666e2f188df0"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_username(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01532">remmina_protocol_widget.c:1532</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html_a8700f21cfca6167fc9c4abe37c2d99b6"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">_RemminaProtocolWidgetPriv::closed</a></div><div class="ttdeci">gboolean closed</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00081">remmina_protocol_widget.c:81</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__protocol__widget_8c.html">remmina_protocol_widget.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__protocol__widget_8h.html b/docs/remmina__protocol__widget_8h.html
new file mode 100644
index 000000000..a9e56daa0
--- /dev/null
+++ b/docs/remmina__protocol__widget_8h.html
@@ -0,0 +1,2130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_protocol_widget.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__protocol__widget_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_protocol_widget.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__protocol__widget_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:af0c9f34cf823d03994aacc083d832c19"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">RemminaProtocolWidgetPriv</a></td></tr>
+<tr class="separator:af0c9f34cf823d03994aacc083d832c19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab89fba118812616a3e47504cfe4f3390"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release)</td></tr>
+<tr class="separator:ab89fba118812616a3e47504cfe4f3390"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aca61c93aaf5f3cbc2046c8267bb84a2e"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e">remmina_protocol_widget_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:aca61c93aaf5f3cbc2046c8267bb84a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c2137462d3168e90c812f1ce75a6e62"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a> (void)</td></tr>
+<tr class="separator:a5c2137462d3168e90c812f1ce75a6e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac705ffa194e3c3457e9a0a1bd6c79be8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj)</td></tr>
+<tr class="separator:ac705ffa194e3c3457e9a0a1bd6c79be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf355ea7103fc57a4cbc7b815cde2995"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaf355ea7103fc57a4cbc7b815cde2995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41b62f211a8a8e960bc80aa1ba6b0380"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint width)</td></tr>
+<tr class="separator:a41b62f211a8a8e960bc80aa1ba6b0380"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae609b351fff17c235251b0ba7c480da5"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae609b351fff17c235251b0ba7c480da5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd106cec729a80405c6097e4c662044"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint height)</td></tr>
+<tr class="separator:aadd106cec729a80405c6097e4c662044"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4c6435ef92e34a94270069ce1861907"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab4c6435ef92e34a94270069ce1861907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8df6a87e19b7751b26820ef4a668de9"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad8df6a87e19b7751b26820ef4a668de9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ec62969da54155e24edcb1d998f93f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5ec62969da54155e24edcb1d998f93f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6e2d00646e8268aa0e8bbe31b77db48"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode)</td></tr>
+<tr class="separator:ad6e2d00646e8268aa0e8bbe31b77db48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25bcb2ae99449624fed6f770218e3d25"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a25bcb2ae99449624fed6f770218e3d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b19dbe685e4465e7f06706270e120fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean expand)</td></tr>
+<tr class="separator:a0b19dbe685e4465e7f06706270e120fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab2f304822ccfd4979854ef1afd81771"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aab2f304822ccfd4979854ef1afd81771"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a508044024b303c286a0e643e44d85a29"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a508044024b303c286a0e643e44d85a29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95088334da86faf9520383629fff48af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *fmt,...)</td></tr>
+<tr class="separator:a95088334da86faf9520383629fff48af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2830f756dfc3d735b57b0c5753c429e3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2830f756dfc3d735b57b0c5753c429e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2506e80d482c34532d0e534856452069"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2506e80d482c34532d0e534856452069"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6399c3828908e36ed6202b5599bd206b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6399c3828908e36ed6202b5599bd206b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa41324b7175c46bb42b978332db95d22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa41324b7175c46bb42b978332db95d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1cae52cad394f317c712eb4fd709d261"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1cae52cad394f317c712eb4fd709d261"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05b5edfc3d3d0dcff1745d1d35aaca5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a05b5edfc3d3d0dcff1745d1d35aaca5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa88afa1e3f04974974a8be324b0a930e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa88afa1e3f04974974a8be324b0a930e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2551dd6f53480609596d2695040fba5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2551dd6f53480609596d2695040fba5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9acf045c5a3eec5b7f748678dee0d3ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9acf045c5a3eec5b7f748678dee0d3ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a290eb68f0e86de1b7b82e2d98a1494d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a290eb68f0e86de1b7b82e2d98a1494d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9b6a2c2665010ab09a6d9943f9850bd"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af9b6a2c2665010ab09a6d9943f9850bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbe15328275677cb38bd8c8a2d5e039d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type)</td></tr>
+<tr class="separator:adbe15328275677cb38bd8c8a2d5e039d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4017a800d7803a40d606ffce2578509a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a4017a800d7803a40d606ffce2578509a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a630e96e5b914d60d678ae8eaad4cd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type, gint id)</td></tr>
+<tr class="separator:a6a630e96e5b914d60d678ae8eaad4cd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a605b69a9aa4393024369cc5070488692"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a605b69a9aa4393024369cc5070488692"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3e5a7f14aef4adb2e57d35e9c180b3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *signal_name)</td></tr>
+<tr class="separator:ac3e5a7f14aef4adb2e57d35e9c180b3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13e14fa81f7ca52942415a7caf5b932c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkWidget *widget)</td></tr>
+<tr class="separator:a13e14fa81f7ca52942415a7caf5b932c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aaadd752a3275a0a8e0018a3dd669f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> func)</td></tr>
+<tr class="separator:a5aaadd752a3275a0a8e0018a3dd669f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12eddf3428a53201ee0a2ec422d2fa4a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean wait, const gchar *fmt,...)</td></tr>
+<tr class="separator:a12eddf3428a53201ee0a2ec422d2fa4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d55210413d6a313478f81cf76ecf1b7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus)</td></tr>
+<tr class="memdesc:a9d55210413d6a313478f81cf76ecf1b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start an SSH tunnel if possible and return the host:port string. <a href="#a9d55210413d6a313478f81cf76ecf1b7">More...</a><br /></td></tr>
+<tr class="separator:a9d55210413d6a313478f81cf76ecf1b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint local_port)</td></tr>
+<tr class="separator:aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a172fa9cf2ce196c9846a3e47ea9036b4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func)</td></tr>
+<tr class="separator:a172fa9cf2ce196c9846a3e47ea9036b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15368afcbeb770f8cf25941bd49e7b54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint display)</td></tr>
+<tr class="separator:a15368afcbeb770f8cf25941bd49e7b54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad637ec849c497e4a0d4c723396aa6fba"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean want_domain, gboolean allow_password_saving)</td></tr>
+<tr class="separator:ad637ec849c497e4a0d4c723396aa6fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebc7c7d34c470081a52aa35d998ce868"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</td></tr>
+<tr class="separator:aebc7c7d34c470081a52aa35d998ce868"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a262d75d6b535bd8c623e607805db4084"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</td></tr>
+<tr class="separator:a262d75d6b535bd8c623e607805db4084"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf75fd4bac28a3d53da064b2905f23c1"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</td></tr>
+<tr class="separator:acf75fd4bac28a3d53da064b2905f23c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9092c29f585fdabaf0ce7e865670053b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const char *msg)</td></tr>
+<tr class="separator:a9092c29f585fdabaf0ce7e865670053b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a843c2455a10c9382aee454515f9e7f8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a843c2455a10c9382aee454515f9e7f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ef0523afadadc9984d53fb02ecc01ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8ef0523afadadc9984d53fb02ecc01ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78069d2e4c2773685126fc3127b26dae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae">remmina_protocol_widget_panel_destroy</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a78069d2e4c2773685126fc3127b26dae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa674c14f3a46dd5eb6b53d6f8ce6bd31"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa674c14f3a46dd5eb6b53d6f8ce6bd31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a278e13b53a4fdb65498e00e908edb98d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint port)</td></tr>
+<tr class="separator:a278e13b53a4fdb65498e00e908edb98d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ed85f4ea19e0660dbf46f4f3dc4b895"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7ed85f4ea19e0660dbf46f4f3dc4b895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab863cc1442a992adfa323bc77ab88504"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab863cc1442a992adfa323bc77ab88504"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96159bd8e9d70c74967e666e2f188df0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a96159bd8e9d70c74967e666e2f188df0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc52d61f77327534286f57e563e0923"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a3fc52d61f77327534286f57e563e0923"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c15fa81642c52ef382e1dbe34ffb6ac"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7c15fa81642c52ef382e1dbe34ffb6ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ed3110b7b030bccd0ff9ed70e86da2d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9ed3110b7b030bccd0ff9ed70e86da2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9473da27fd10eb46ef8360f9ad4be86d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9473da27fd10eb46ef8360f9ad4be86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70aecb9af2ea35527e8d058d1d87a0d3"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a70aecb9af2ea35527e8d058d1d87a0d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9632c73b32531b7bea976e10204670b"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab9632c73b32531b7bea976e10204670b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08d312825fc0de9f9286279d99f763a1"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a08d312825fc0de9f9286279d99f763a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66263e6e7da79357ceb80d32b191d9f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *name, void(*on_send)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text), void(*on_destroy)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp))</td></tr>
+<tr class="separator:a66263e6e7da79357ceb80d32b191d9f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a3a9ba7422fc302b0b412ac771c9953"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4a3a9ba7422fc302b0b412ac771c9953"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2522242b3f39ee84ee8cf75170de0c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)</td></tr>
+<tr class="separator:ae2522242b3f39ee84ee8cf75170de0c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bcd0d356c7215dc0f791c9744360705"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a> (GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action)</td></tr>
+<tr class="separator:a9bcd0d356c7215dc0f791c9744360705"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a480f842fac65440c367bf3c3d87d2601"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="memdesc:a480f842fac65440c367bf3c3d87d2601"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the plugin accepts keystrokes. <a href="#a480f842fac65440c367bf3c3d87d2601">More...</a><br /></td></tr>
+<tr class="separator:a480f842fac65440c367bf3c3d87d2601"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affb2413c00f0681fe08f90523f7e1471"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkMenuItem *widget)</td></tr>
+<tr class="memdesc:affb2413c00f0681fe08f90523f7e1471"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send to the plugin some keystrokes. <a href="#affb2413c00f0681fe08f90523f7e1471">More...</a><br /></td></tr>
+<tr class="separator:affb2413c00f0681fe08f90523f7e1471"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ac13fc4a2653c40e0601183628c0ca"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td></tr>
+<tr class="separator:a57ac13fc4a2653c40e0601183628c0ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14684e3222e6afb1b43d77634a174767"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a14684e3222e6afb1b43d77634a174767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78b123eca6709bceeacda7d791a94bf1"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, const gchar *msg, <a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data)</td></tr>
+<tr class="separator:a78b123eca6709bceeacda7d791a94bf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97cba8208a4348446159bf465b3233f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a> (<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *cnnobj, RemminaMessagePanel *mp)</td></tr>
+<tr class="separator:a97cba8208a4348446159bf465b3233f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ab89fba118812616a3e47504cfe4f3390"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab89fba118812616a3e47504cfe4f3390">&#9670;&nbsp;</a></span>RemminaHostkeyFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gboolean(* RemminaHostkeyFunc) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00113">113</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="af0c9f34cf823d03994aacc083d832c19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0c9f34cf823d03994aacc083d832c19">&#9670;&nbsp;</a></span>RemminaProtocolWidgetPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a> <a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">RemminaProtocolWidgetPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a605b69a9aa4393024369cc5070488692"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a605b69a9aa4393024369cc5070488692">&#9670;&nbsp;</a></span>remmina_protocol_widget_call_feature_by_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_call_feature_by_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00628">628</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a6a630e96e5b914d60d678ae8eaad4cd9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a630e96e5b914d60d678ae8eaad4cd9">&#9670;&nbsp;</a></span>remmina_protocol_widget_call_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_call_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00615">615</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a4a3a9ba7422fc302b0b412ac771c9953"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a3a9ba7422fc302b0b412ac771c9953">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_close()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01729">1729</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a66263e6e7da79357ceb80d32b191d9f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66263e6e7da79357ceb80d32b191d9f2">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)&#160;</td>
+ <td class="paramname"><em>on_send</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)&#160;</td>
+ <td class="paramname"><em>on_destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01713">1713</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae2522242b3f39ee84ee8cf75170de0c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2522242b3f39ee84ee8cf75170de0c0">&#9670;&nbsp;</a></span>remmina_protocol_widget_chat_receive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_chat_receive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01736">1736</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa41324b7175c46bb42b978332db95d22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa41324b7175c46bb42b978332db95d22">&#9670;&nbsp;</a></span>remmina_protocol_widget_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00432">432</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9acf045c5a3eec5b7f748678dee0d3ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9acf045c5a3eec5b7f748678dee0d3ee">&#9670;&nbsp;</a></span>remmina_protocol_widget_desktop_resize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_desktop_resize </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00424">424</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac3e5a7f14aef4adb2e57d35e9c180b3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3e5a7f14aef4adb2e57d35e9c180b3b">&#9670;&nbsp;</a></span>remmina_protocol_widget_emit_signal()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_emit_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>signal_name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00565">565</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9473da27fd10eb46ef8360f9ad4be86d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9473da27fd10eb46ef8360f9ad4be86d">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_cacert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_cacert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01556">1556</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a70aecb9af2ea35527e8d058d1d87a0d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70aecb9af2ea35527e8d058d1d87a0d3">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_cacrl()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_cacrl </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01565">1565</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab9632c73b32531b7bea976e10204670b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9632c73b32531b7bea976e10204670b">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_clientcert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_clientcert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01574">1574</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a08d312825fc0de9f9286279d99f763a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08d312825fc0de9f9286279d99f763a1">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_clientkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_clientkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01583">1583</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ec62969da54155e24edcb1d998f93f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ec62969da54155e24edcb1d998f93f7">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_current_scale_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> remmina_protocol_widget_get_current_scale_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01141">1141</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7c15fa81642c52ef382e1dbe34ffb6ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c15fa81642c52ef382e1dbe34ffb6ac">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_domain()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_domain </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01544">1544</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a508044024b303c286a0e643e44d85a29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a508044024b303c286a0e643e44d85a29">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_error_message()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_protocol_widget_get_error_message </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01172">1172</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a25bcb2ae99449624fed6f770218e3d25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25bcb2ae99449624fed6f770218e3d25">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_get_expand </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01153">1153</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="af9b6a2c2665010ab09a6d9943f9850bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9b6a2c2665010ab09a6d9943f9850bd">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_features()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>* remmina_protocol_widget_get_features </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00586">586</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2506e80d482c34532d0e534856452069"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2506e80d482c34532d0e534856452069">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_protocol_widget_get_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01204">1204</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae609b351fff17c235251b0ba7c480da5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae609b351fff17c235251b0ba7c480da5">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01129">1129</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fc52d61f77327534286f57e563e0923"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fc52d61f77327534286f57e563e0923">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01538">1538</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad8df6a87e19b7751b26820ef4a668de9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8df6a87e19b7751b26820ef4a668de9">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_profile_remote_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_profile_remote_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01109">1109</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4c6435ef92e34a94270069ce1861907"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4c6435ef92e34a94270069ce1861907">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_profile_remote_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_profile_remote_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01102">1102</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ed3110b7b030bccd0ff9ed70e86da2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ed3110b7b030bccd0ff9ed70e86da2d">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_savepassword()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_get_savepassword </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01550">1550</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aca61c93aaf5f3cbc2046c8267bb84a2e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca61c93aaf5f3cbc2046c8267bb84a2e">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_protocol_widget_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a96159bd8e9d70c74967e666e2f188df0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96159bd8e9d70c74967e666e2f188df0">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_username()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_get_username </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01532">1532</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf355ea7103fc57a4cbc7b815cde2995"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf355ea7103fc57a4cbc7b815cde2995">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_get_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01117">1117</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a290eb68f0e86de1b7b82e2d98a1494d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a290eb68f0e86de1b7b82e2d98a1494d1">&#9670;&nbsp;</a></span>remmina_protocol_widget_grab_focus()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_grab_focus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00212">212</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aab2f304822ccfd4979854ef1afd81771"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab2f304822ccfd4979854ef1afd81771">&#9670;&nbsp;</a></span>remmina_protocol_widget_has_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_has_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01166">1166</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2830f756dfc3d735b57b0c5753c429e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2830f756dfc3d735b57b0c5753c429e3">&#9670;&nbsp;</a></span>remmina_protocol_widget_is_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_is_closed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01198">1198</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a97cba8208a4348446159bf465b3233f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97cba8208a4348446159bf465b3233f5">&#9670;&nbsp;</a></span>remmina_protocol_widget_mpdestroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_mpdestroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">RemminaMessagePanel *&#160;</td>
+ <td class="paramname"><em>mp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00712">712</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a78b123eca6709bceeacda7d791a94bf1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78b123eca6709bceeacda7d791a94bf1">&#9670;&nbsp;</a></span>remmina_protocol_widget_mpprogress()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_protocol_widget_mpprogress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td>
+ <td class="paramname"><em>response_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>response_callback_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00687">687</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5c2137462d3168e90c812f1ce75a6e62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c2137462d3168e90c812f1ce75a6e62">&#9670;&nbsp;</a></span>remmina_protocol_widget_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_protocol_widget_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01781">1781</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a6399c3828908e36ed6202b5599bd206b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6399c3828908e36ed6202b5599bd206b">&#9670;&nbsp;</a></span>remmina_protocol_widget_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00300">300</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aebc7c7d34c470081a52aa35d998ce868"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebc7c7d34c470081a52aa35d998ce868">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_auth </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a>&#160;</td>
+ <td class="paramname"><em>pflags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_username</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>default_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password_prompt</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01419">1419</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad637ec849c497e4a0d4c723396aa6fba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad637ec849c497e4a0d4c723396aa6fba">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_authuserpwd_ssh_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_authuserpwd_ssh_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>want_domain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>allow_password_saving</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01427">1427</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa674c14f3a46dd5eb6b53d6f8ce6bd31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa674c14f3a46dd5eb6b53d6f8ce6bd31">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_authx509()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_authx509 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01481">1481</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="acf75fd4bac28a3d53da064b2905f23c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf75fd4bac28a3d53da064b2905f23c1">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_changed_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_changed_certificate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_fingerprint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>old_fingerprint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01510">1510</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a78069d2e4c2773685126fc3127b26dae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78069d2e4c2773685126fc3127b26dae">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a8ef0523afadadc9984d53fb02ecc01ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ef0523afadadc9984d53fb02ecc01ad">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_hide()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_hide </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01701">1701</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a262d75d6b535bd8c623e607805db4084"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a262d75d6b535bd8c623e607805db4084">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_new_certificate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_new_certificate </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subject</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>issuer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fingerprint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01489">1489</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9092c29f585fdabaf0ce7e865670053b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9092c29f585fdabaf0ce7e865670053b">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_question_yesno()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_protocol_widget_panel_question_yesno </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>msg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01414">1414</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a843c2455a10c9382aee454515f9e7f8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a843c2455a10c9382aee454515f9e7f8b">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01695">1695</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a278e13b53a4fdb65498e00e908edb98d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a278e13b53a4fdb65498e00e908edb98d">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show_listen()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show_listen </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01646">1646</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7ed85f4ea19e0660dbf46f4f3dc4b895"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ed85f4ea19e0660dbf46f4f3dc4b895">&#9670;&nbsp;</a></span>remmina_protocol_widget_panel_show_retry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_panel_show_retry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01674">1674</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a480f842fac65440c367bf3c3d87d2601"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a480f842fac65440c367bf3c3d87d2601">&#9670;&nbsp;</a></span>remmina_protocol_widget_plugin_receives_keystrokes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_plugin_receives_keystrokes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Check if the plugin accepts keystrokes. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00466">466</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a57ac13fc4a2653c40e0601183628c0ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57ac13fc4a2653c40e0601183628c0ca">&#9670;&nbsp;</a></span>remmina_protocol_widget_plugin_screenshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_plugin_screenshot </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *&#160;</td>
+ <td class="paramname"><em>rpsd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00555">555</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a4017a800d7803a40d606ffce2578509a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4017a800d7803a40d606ffce2578509a">&#9670;&nbsp;</a></span>remmina_protocol_widget_query_feature_by_ref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_query_feature_by_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00609">609</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="adbe15328275677cb38bd8c8a2d5e039d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adbe15328275677cb38bd8c8a2d5e039d">&#9670;&nbsp;</a></span>remmina_protocol_widget_query_feature_by_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_query_feature_by_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00592">592</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a13e14fa81f7ca52942415a7caf5b932c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13e14fa81f7ca52942415a7caf5b932c">&#9670;&nbsp;</a></span>remmina_protocol_widget_register_hostkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_register_hostkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00674">674</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ab863cc1442a992adfa323bc77ab88504"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab863cc1442a992adfa323bc77ab88504">&#9670;&nbsp;</a></span>remmina_protocol_widget_save_cred()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_save_cred </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01592">1592</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9bcd0d356c7215dc0f791c9744360705"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9bcd0d356c7215dc0f791c9744360705">&#9670;&nbsp;</a></span>remmina_protocol_widget_send_keys_signals()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_send_keys_signals </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint *&#160;</td>
+ <td class="paramname"><em>keyvals</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>keyvals_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventType&#160;</td>
+ <td class="paramname"><em>action</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01790">1790</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="affb2413c00f0681fe08f90523f7e1471"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affb2413c00f0681fe08f90523f7e1471">&#9670;&nbsp;</a></span>remmina_protocol_widget_send_keystrokes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_send_keystrokes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>widget</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Send to the plugin some keystrokes. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00474">474</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6e2d00646e8268aa0e8bbe31b77db48"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6e2d00646e8268aa0e8bbe31b77db48">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_current_scale_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_current_scale_mode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td>
+ <td class="paramname"><em>scalemode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01147">1147</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a15368afcbeb770f8cf25941bd49e7b54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15368afcbeb770f8cf25941bd49e7b54">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_display()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_display </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>display</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01089">1089</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a95088334da86faf9520383629fff48af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95088334da86faf9520383629fff48af">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01178">1178</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a0b19dbe685e4465e7f06706270e120fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b19dbe685e4465e7f06706270e120fa">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_expand()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_expand </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>expand</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01159">1159</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aadd106cec729a80405c6097e4c662044"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadd106cec729a80405c6097e4c662044">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_height </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>height</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01135">1135</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5aaadd752a3275a0a8e0018a3dd669f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5aaadd752a3275a0a8e0018a3dd669f8">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_hostkey_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_hostkey_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00681">681</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a41b62f211a8a8e960bc80aa1ba6b0380"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41b62f211a8a8e960bc80aa1ba6b0380">&#9670;&nbsp;</a></span>remmina_protocol_widget_set_width()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_set_width </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>width</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01123">1123</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac705ffa194e3c3457e9a0a1bd6c79be8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac705ffa194e3c3457e9a0a1bd6c79be8">&#9670;&nbsp;</a></span>remmina_protocol_widget_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_setup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td>
+ <td class="paramname"><em>cnnobj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01758">1758</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a1cae52cad394f317c712eb4fd709d261"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1cae52cad394f317c712eb4fd709d261">&#9670;&nbsp;</a></span>remmina_protocol_widget_signal_connection_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_signal_connection_closed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00343">343</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a05b5edfc3d3d0dcff1745d1d35aaca5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05b5edfc3d3d0dcff1745d1d35aaca5c">&#9670;&nbsp;</a></span>remmina_protocol_widget_signal_connection_opened()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_signal_connection_opened </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00377">377</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a12eddf3428a53201ee0a2ec422d2fa4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12eddf3428a53201ee0a2ec422d2fa4a">&#9670;&nbsp;</a></span>remmina_protocol_widget_ssh_exec()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_ssh_exec </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>wait</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00942">942</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d55210413d6a313478f81cf76ecf1b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d55210413d6a313478f81cf76ecf1b7">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_direct_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_start_direct_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>default_port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>port_plus</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start an SSH tunnel if possible and return the host:port string. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00816">816</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6d9f2f558fcd9e7fe58eefcde1c3c5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_reverse_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_start_reverse_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>local_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00912">912</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a172fa9cf2ce196c9846a3e47ea9036b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a172fa9cf2ce196c9846a3e47ea9036b4">&#9670;&nbsp;</a></span>remmina_protocol_widget_start_xport_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_start_xport_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a>&#160;</td>
+ <td class="paramname"><em>init_func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01046">1046</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2551dd6f53480609596d2695040fba5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2551dd6f53480609596d2695040fba5d">&#9670;&nbsp;</a></span>remmina_protocol_widget_unlock_dynres()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_unlock_dynres </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00409">409</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa88afa1e3f04974974a8be324b0a930e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa88afa1e3f04974974a8be324b0a930e">&#9670;&nbsp;</a></span>remmina_protocol_widget_update_align()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_update_align </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00394">394</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a14684e3222e6afb1b43d77634a174767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14684e3222e6afb1b43d77634a174767">&#9670;&nbsp;</a></span>remmina_protocol_widget_update_remote_resolution()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_protocol_widget_update_remote_resolution </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01829">1829</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__protocol__widget_8h.js b/docs/remmina__protocol__widget_8h.js
new file mode 100644
index 000000000..25e9d9c6d
--- /dev/null
+++ b/docs/remmina__protocol__widget_8h.js
@@ -0,0 +1,76 @@
+var remmina__protocol__widget_8h =
+[
+ [ "_RemminaProtocolWidget", "struct___remmina_protocol_widget.html", "struct___remmina_protocol_widget" ],
+ [ "_RemminaProtocolWidgetClass", "struct___remmina_protocol_widget_class.html", "struct___remmina_protocol_widget_class" ],
+ [ "RemminaHostkeyFunc", "remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390", null ],
+ [ "RemminaProtocolWidgetPriv", "remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19", null ],
+ [ "remmina_protocol_widget_call_feature_by_ref", "remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692", null ],
+ [ "remmina_protocol_widget_call_feature_by_type", "remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9", null ],
+ [ "remmina_protocol_widget_chat_close", "remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953", null ],
+ [ "remmina_protocol_widget_chat_open", "remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2", null ],
+ [ "remmina_protocol_widget_chat_receive", "remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0", null ],
+ [ "remmina_protocol_widget_close_connection", "remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22", null ],
+ [ "remmina_protocol_widget_desktop_resize", "remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee", null ],
+ [ "remmina_protocol_widget_emit_signal", "remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b", null ],
+ [ "remmina_protocol_widget_get_cacert", "remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d", null ],
+ [ "remmina_protocol_widget_get_cacrl", "remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3", null ],
+ [ "remmina_protocol_widget_get_clientcert", "remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b", null ],
+ [ "remmina_protocol_widget_get_clientkey", "remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1", null ],
+ [ "remmina_protocol_widget_get_current_scale_mode", "remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7", null ],
+ [ "remmina_protocol_widget_get_domain", "remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac", null ],
+ [ "remmina_protocol_widget_get_error_message", "remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29", null ],
+ [ "remmina_protocol_widget_get_expand", "remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25", null ],
+ [ "remmina_protocol_widget_get_features", "remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd", null ],
+ [ "remmina_protocol_widget_get_file", "remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069", null ],
+ [ "remmina_protocol_widget_get_height", "remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5", null ],
+ [ "remmina_protocol_widget_get_password", "remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923", null ],
+ [ "remmina_protocol_widget_get_profile_remote_height", "remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9", null ],
+ [ "remmina_protocol_widget_get_profile_remote_width", "remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907", null ],
+ [ "remmina_protocol_widget_get_savepassword", "remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d", null ],
+ [ "remmina_protocol_widget_get_type", "remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e", null ],
+ [ "remmina_protocol_widget_get_username", "remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0", null ],
+ [ "remmina_protocol_widget_get_width", "remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995", null ],
+ [ "remmina_protocol_widget_grab_focus", "remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1", null ],
+ [ "remmina_protocol_widget_has_error", "remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771", null ],
+ [ "remmina_protocol_widget_is_closed", "remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3", null ],
+ [ "remmina_protocol_widget_mpdestroy", "remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5", null ],
+ [ "remmina_protocol_widget_mpprogress", "remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1", null ],
+ [ "remmina_protocol_widget_new", "remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62", null ],
+ [ "remmina_protocol_widget_open_connection", "remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b", null ],
+ [ "remmina_protocol_widget_panel_auth", "remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868", null ],
+ [ "remmina_protocol_widget_panel_authuserpwd_ssh_tunnel", "remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba", null ],
+ [ "remmina_protocol_widget_panel_authx509", "remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31", null ],
+ [ "remmina_protocol_widget_panel_changed_certificate", "remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1", null ],
+ [ "remmina_protocol_widget_panel_destroy", "remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae", null ],
+ [ "remmina_protocol_widget_panel_hide", "remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad", null ],
+ [ "remmina_protocol_widget_panel_new_certificate", "remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084", null ],
+ [ "remmina_protocol_widget_panel_question_yesno", "remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b", null ],
+ [ "remmina_protocol_widget_panel_show", "remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b", null ],
+ [ "remmina_protocol_widget_panel_show_listen", "remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d", null ],
+ [ "remmina_protocol_widget_panel_show_retry", "remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895", null ],
+ [ "remmina_protocol_widget_plugin_receives_keystrokes", "remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601", null ],
+ [ "remmina_protocol_widget_plugin_screenshot", "remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca", null ],
+ [ "remmina_protocol_widget_query_feature_by_ref", "remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a", null ],
+ [ "remmina_protocol_widget_query_feature_by_type", "remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d", null ],
+ [ "remmina_protocol_widget_register_hostkey", "remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c", null ],
+ [ "remmina_protocol_widget_save_cred", "remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504", null ],
+ [ "remmina_protocol_widget_send_keys_signals", "remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705", null ],
+ [ "remmina_protocol_widget_send_keystrokes", "remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471", null ],
+ [ "remmina_protocol_widget_set_current_scale_mode", "remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48", null ],
+ [ "remmina_protocol_widget_set_display", "remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54", null ],
+ [ "remmina_protocol_widget_set_error", "remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af", null ],
+ [ "remmina_protocol_widget_set_expand", "remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa", null ],
+ [ "remmina_protocol_widget_set_height", "remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044", null ],
+ [ "remmina_protocol_widget_set_hostkey_func", "remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8", null ],
+ [ "remmina_protocol_widget_set_width", "remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380", null ],
+ [ "remmina_protocol_widget_setup", "remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8", null ],
+ [ "remmina_protocol_widget_signal_connection_closed", "remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261", null ],
+ [ "remmina_protocol_widget_signal_connection_opened", "remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c", null ],
+ [ "remmina_protocol_widget_ssh_exec", "remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a", null ],
+ [ "remmina_protocol_widget_start_direct_tunnel", "remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7", null ],
+ [ "remmina_protocol_widget_start_reverse_tunnel", "remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c", null ],
+ [ "remmina_protocol_widget_start_xport_tunnel", "remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4", null ],
+ [ "remmina_protocol_widget_unlock_dynres", "remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d", null ],
+ [ "remmina_protocol_widget_update_align", "remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e", null ],
+ [ "remmina_protocol_widget_update_remote_resolution", "remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__protocol__widget_8h_source.html b/docs/remmina__protocol__widget_8h_source.html
new file mode 100644
index 000000000..02e020f4a
--- /dev/null
+++ b/docs/remmina__protocol__widget_8h_source.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_protocol_widget.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__protocol__widget_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_protocol_widget.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__protocol__widget_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="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__ssh_8h.html">remmina_ssh.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_FEATURE_TOOL_SSH -1</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_FEATURE_TOOL_SFTP -2</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">#define REMMINA_TYPE_PROTOCOL_WIDGET (remmina_protocol_widget_get_type())</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_PROTOCOL_WIDGET, RemminaProtocolWidget))</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_PROTOCOL_WIDGET, RemminaProtocolWidgetClass))</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define REMMINA_IS_PROTOCOL_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_PROTOCOL_WIDGET))</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define REMMINA_IS_PROTOCOL_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_PROTOCOL_WIDGET))</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_PROTOCOL_WIDGET, RemminaProtocolWidgetClass))</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19"> 55</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a> <a class="code" href="struct___remmina_protocol_widget_priv.html">RemminaProtocolWidgetPriv</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget.html"> 57</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a> {</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc"> 58</a></span>&#160; GtkEventBox <a class="code" href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc">event_box</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67"> 59</a></span>&#160; <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> * <a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6"> 60</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget_priv.html">RemminaProtocolWidgetPriv</a> * <a class="code" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html"> 63</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a> {</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2"> 64</a></span>&#160; GtkEventBoxClass <a class="code" href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2">parent_class</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760"> 66</a></span>&#160; void (*connect)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213"> 67</a></span>&#160; void (*disconnect)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b"> 68</a></span>&#160; void (*<a class="code" href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a>)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99"> 69</a></span>&#160; void (*<a class="code" href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a>)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3"> 70</a></span>&#160; void (*<a class="code" href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a>)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;};</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;GType <a class="code" href="remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e">remmina_protocol_widget_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;GtkWidget *<a class="code" href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, <a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995">remmina_protocol_widget_get_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint width);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint height);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</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;<a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> <a class="code" href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> scalemode);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean expand);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *<a class="code" href="remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</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="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261">remmina_protocol_widget_signal_connection_closed</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee">remmina_protocol_widget_desktop_resize</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *<a class="code" href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> type, gint <span class="keywordtype">id</span>);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment">/* Provide thread-safe way to emit signals */</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *signal_name);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, GtkWidget *widget);</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"><a class="line" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390"> 113</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, guint keyval, gboolean release);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> func);</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;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean wait, <span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* Start a SSH tunnel if it’s enabled. Returns a newly allocated string indicating:</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> * 1. The actual destination (host:port) if SSH tunnel is disable</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> * 2. The tunnel local destination (127.0.0.1:port) if SSH tunnel is enabled</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7">remmina_protocol_widget_start_direct_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint local_port);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint display);</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="comment">/* Extension for remmina_protocol_widget_panel_authuserpwd() not currently exported to plugins */</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean want_domain, gboolean allow_password_saving);</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="comment">/* Dialog panel API used by the plugins */</span></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;gint <a class="code" href="remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, <span class="keyword">const</span> gchar *title, <span class="keyword">const</span> gchar *default_username, <span class="keyword">const</span> gchar *default_password, <span class="keyword">const</span> gchar *default_domain, <span class="keyword">const</span> gchar *password_prompt);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *fingerprint);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *subject, <span class="keyword">const</span> gchar *issuer, <span class="keyword">const</span> gchar *new_fingerprint, <span class="keyword">const</span> gchar *old_fingerprint);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae">remmina_protocol_widget_panel_destroy</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;gint <a class="code" href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint port);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;gchar *<a class="code" href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</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;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *name, <span class="keywordtype">void</span> (*on_send)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text), <span class="keywordtype">void</span> (*on_destroy)(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp));</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0">remmina_protocol_widget_chat_receive</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> gchar *text);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a>(GtkWidget *widget, <span class="keyword">const</span> guint *keyvals, <span class="keywordtype">int</span> keyvals_length, GdkEventType action);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment">/* Check if the plugin accepts keystrokes */</span></div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">/* Send to the plugin some keystrokes */</span></div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, GtkMenuItem *widget);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">/* Take screenshot of plugin */</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;gboolean <a class="code" href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> *rpsd);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">/* Functions to support execution of GTK code on master thread */</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;RemminaMessagePanel *<a class="code" href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, <span class="keyword">const</span> gchar *msg, <a class="code" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> response_callback, gpointer response_callback_data);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a>(<a class="code" href="struct___remmina_connection_object.html">RemminaConnectionObject</a> *<a class="code" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a>, RemminaMessagePanel *mp);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</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;G_END_DECLS</div><div class="ttc" id="remmina__protocol__widget_8h_html_a9d55210413d6a313478f81cf76ecf1b7"><div class="ttname"><a href="remmina__protocol__widget_8h.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#l00816">remmina_protocol_widget.c:816</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aeaf728bb767c1bbdda6a0d8dc3553565"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565">desktop_resize</a></div><div class="ttdeci">static gboolean desktop_resize(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00416">remmina_protocol_widget.c:416</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_class_html_aa6b1be03dfc5554195f6fbc9bb4f50f2"><div class="ttname"><a href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2">_RemminaProtocolWidgetClass::parent_class</a></div><div class="ttdeci">GtkEventBoxClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00064">remmina_protocol_widget.h:64</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a262d75d6b535bd8c623e607805db4084"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084">remmina_protocol_widget_panel_new_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01489">remmina_protocol_widget.c:1489</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a290eb68f0e86de1b7b82e2d98a1494d1"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1">remmina_protocol_widget_grab_focus</a></div><div class="ttdeci">void remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00212">remmina_protocol_widget.c:212</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a1cae52cad394f317c712eb4fd709d261"><div class="ttname"><a href="remmina__protocol__widget_8h.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#l00343">remmina_protocol_widget.c:343</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_add3775989fb5ed7a7f1f7c9b5980a94e"><div class="ttname"><a href="remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e">unlock_dynres</a></div><div class="ttdeci">static gboolean unlock_dynres(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00401">remmina_protocol_widget.c:401</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a9ed3110b7b030bccd0ff9ed70e86da2d"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01550">remmina_protocol_widget.c:1550</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a08d312825fc0de9f9286279d99f763a1"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1">remmina_protocol_widget_get_clientkey</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01583">remmina_protocol_widget.c:1583</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a4a3a9ba7422fc302b0b412ac771c9953"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953">remmina_protocol_widget_chat_close</a></div><div class="ttdeci">void remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01729">remmina_protocol_widget.c:1729</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a5ec62969da54155e24edcb1d998f93f7"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7">remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01141">remmina_protocol_widget.c:1141</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ad637ec849c497e4a0d4c723396aa6fba"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba">remmina_protocol_widget_panel_authuserpwd_ssh_tunnel</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01427">remmina_protocol_widget.c:1427</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ae2522242b3f39ee84ee8cf75170de0c0"><div class="ttname"><a href="remmina__protocol__widget_8h.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#l01736">remmina_protocol_widget.c:1736</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a12eddf3428a53201ee0a2ec422d2fa4a"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a">remmina_protocol_widget_ssh_exec</a></div><div class="ttdeci">gboolean remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00942">remmina_protocol_widget.c:942</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a843c2455a10c9382aee454515f9e7f8b"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b">remmina_protocol_widget_panel_show</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01695">remmina_protocol_widget.c:1695</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab863cc1442a992adfa323bc77ab88504"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504">remmina_protocol_widget_save_cred</a></div><div class="ttdeci">void remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01592">remmina_protocol_widget.c:1592</a></div></div>
+<div class="ttc" id="struct___remmina_connection_object_html"><div class="ttname"><a href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></div><div class="ttdef"><b>Definition:</b> <a href="rcw_8c_source.html#l00152">rcw.c:152</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a2830f756dfc3d735b57b0c5753c429e3"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3">remmina_protocol_widget_is_closed</a></div><div class="ttdeci">gboolean remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01198">remmina_protocol_widget.c:1198</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aa6d9f2f558fcd9e7fe58eefcde1c3c5c"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c">remmina_protocol_widget_start_reverse_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00912">remmina_protocol_widget.c:912</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a4017a800d7803a40d606ffce2578509a"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a">remmina_protocol_widget_query_feature_by_ref</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00609">remmina_protocol_widget.c:609</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ae609b351fff17c235251b0ba7c480da5"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5">remmina_protocol_widget_get_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01129">remmina_protocol_widget.c:1129</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a13e14fa81f7ca52942415a7caf5b932c"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c">remmina_protocol_widget_register_hostkey</a></div><div class="ttdeci">void remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00674">remmina_protocol_widget.c:674</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a97cba8208a4348446159bf465b3233f5"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5">remmina_protocol_widget_mpdestroy</a></div><div class="ttdeci">void remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00712">remmina_protocol_widget.c:712</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a9473da27fd10eb46ef8360f9ad4be86d"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d">remmina_protocol_widget_get_cacert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01556">remmina_protocol_widget.c:1556</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a5c2137462d3168e90c812f1ce75a6e62"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62">remmina_protocol_widget_new</a></div><div class="ttdeci">GtkWidget * remmina_protocol_widget_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01781">remmina_protocol_widget.c:1781</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a></div><div class="ttdeci">RemminaMessagePanelFlags</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00131">types.h:131</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ac705ffa194e3c3457e9a0a1bd6c79be8"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8">remmina_protocol_widget_setup</a></div><div class="ttdeci">void remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01758">remmina_protocol_widget.c:1758</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_affb2413c00f0681fe08f90523f7e1471"><div class="ttname"><a href="remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471">remmina_protocol_widget_send_keystrokes</a></div><div class="ttdeci">void remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget)</div><div class="ttdoc">Send to the plugin some keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00474">remmina_protocol_widget.c:474</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a480f842fac65440c367bf3c3d87d2601"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601">remmina_protocol_widget_plugin_receives_keystrokes</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp)</div><div class="ttdoc">Check if the plugin accepts keystrokes. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00466">remmina_protocol_widget.c:466</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a78069d2e4c2773685126fc3127b26dae"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae">remmina_protocol_widget_panel_destroy</a></div><div class="ttdeci">void remmina_protocol_widget_panel_destroy(RemminaProtocolWidget *gp)</div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a172fa9cf2ce196c9846a3e47ea9036b4"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4">remmina_protocol_widget_start_xport_tunnel</a></div><div class="ttdeci">gboolean remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01046">remmina_protocol_widget.c:1046</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ad6e2d00646e8268aa0e8bbe31b77db48"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48">remmina_protocol_widget_set_current_scale_mode</a></div><div class="ttdeci">void remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01147">remmina_protocol_widget.c:1147</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a9acf045c5a3eec5b7f748678dee0d3ee"><div class="ttname"><a href="remmina__protocol__widget_8h.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#l00424">remmina_protocol_widget.c:424</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_a18a9b0b9c8e619b3bdee881d7601f6d6"><div class="ttname"><a href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">_RemminaProtocolWidget::priv</a></div><div class="ttdeci">RemminaProtocolWidgetPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00060">remmina_protocol_widget.h:60</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aab2f304822ccfd4979854ef1afd81771"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771">remmina_protocol_widget_has_error</a></div><div class="ttdeci">gboolean remmina_protocol_widget_has_error(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01166">remmina_protocol_widget.c:1166</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab89fba118812616a3e47504cfe4f3390"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a></div><div class="ttdeci">gboolean(* RemminaHostkeyFunc)(RemminaProtocolWidget *gp, guint keyval, gboolean release)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00113">remmina_protocol_widget.h:113</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a278e13b53a4fdb65498e00e908edb98d"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d">remmina_protocol_widget_panel_show_listen</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01646">remmina_protocol_widget.c:1646</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a57ac13fc4a2653c40e0601183628c0ca"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca">remmina_protocol_widget_plugin_screenshot</a></div><div class="ttdeci">gboolean remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00555">remmina_protocol_widget.c:555</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_a95ded9fdbd7d1180d9172c9a1eeb9bfc"><div class="ttname"><a href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc">_RemminaProtocolWidget::event_box</a></div><div class="ttdeci">GtkEventBox event_box</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00058">remmina_protocol_widget.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html_aae1dfb6ff52460c80a3adf80d4934f67"><div class="ttname"><a href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">_RemminaProtocolWidget::cnnobj</a></div><div class="ttdeci">RemminaConnectionObject * cnnobj</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00059">remmina_protocol_widget.h:59</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a70aecb9af2ea35527e8d058d1d87a0d3"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3">remmina_protocol_widget_get_cacrl</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01565">remmina_protocol_widget.c:1565</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a508044024b303c286a0e643e44d85a29"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29">remmina_protocol_widget_get_error_message</a></div><div class="ttdeci">const gchar * remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01172">remmina_protocol_widget.c:1172</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aadd106cec729a80405c6097e4c662044"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044">remmina_protocol_widget_set_height</a></div><div class="ttdeci">void remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01135">remmina_protocol_widget.c:1135</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a9092c29f585fdabaf0ce7e865670053b"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01414">remmina_protocol_widget.c:1414</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ad8df6a87e19b7751b26820ef4a668de9"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9">remmina_protocol_widget_get_profile_remote_height</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01109">remmina_protocol_widget.c:1109</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a8ef0523afadadc9984d53fb02ecc01ad"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad">remmina_protocol_widget_panel_hide</a></div><div class="ttdeci">void remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01701">remmina_protocol_widget.c:1701</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab9632c73b32531b7bea976e10204670b"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b">remmina_protocol_widget_get_clientcert</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01574">remmina_protocol_widget.c:1574</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></div><div class="ttdeci">RemminaProtocolFeatureType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00043">types.h:43</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a3fc52d61f77327534286f57e563e0923"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_password(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01538">remmina_protocol_widget.c:1538</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_class_html"><div class="ttname"><a href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00063">remmina_protocol_widget.h:63</a></div></div>
+<div class="ttc" id="remmina__message__panel_8h_html_ae2923c94c1caf1ac4a7eb48361d2670a"><div class="ttname"><a href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a></div><div class="ttdeci">void(* RemminaMessagePanelCallback)(void *user_data, int button)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__message__panel_8h_source.html#l00065">remmina_message_panel.h:65</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aca61c93aaf5f3cbc2046c8267bb84a2e"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e">remmina_protocol_widget_get_type</a></div><div class="ttdeci">GType remmina_protocol_widget_get_type(void) G_GNUC_CONST</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="remmina__protocol__widget_8h_html_a0b19dbe685e4465e7f06706270e120fa"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa">remmina_protocol_widget_set_expand</a></div><div class="ttdeci">void remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01159">remmina_protocol_widget.c:1159</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a05b5edfc3d3d0dcff1745d1d35aaca5c"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c">remmina_protocol_widget_signal_connection_opened</a></div><div class="ttdeci">void remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00377">remmina_protocol_widget.c:377</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ac3e5a7f14aef4adb2e57d35e9c180b3b"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b">remmina_protocol_widget_emit_signal</a></div><div class="ttdeci">void remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00565">remmina_protocol_widget.c:565</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aa674c14f3a46dd5eb6b53d6f8ce6bd31"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31">remmina_protocol_widget_panel_authx509</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01481">remmina_protocol_widget.c:1481</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aa41324b7175c46bb42b978332db95d22"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22">remmina_protocol_widget_close_connection</a></div><div class="ttdeci">void remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00432">remmina_protocol_widget.c:432</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a7c15fa81642c52ef382e1dbe34ffb6ac"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac">remmina_protocol_widget_get_domain</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01544">remmina_protocol_widget.c:1544</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a96159bd8e9d70c74967e666e2f188df0"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0">remmina_protocol_widget_get_username</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_username(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01532">remmina_protocol_widget.c:1532</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a2551dd6f53480609596d2695040fba5d"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d">remmina_protocol_widget_unlock_dynres</a></div><div class="ttdeci">void remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00409">remmina_protocol_widget.c:409</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a15368afcbeb770f8cf25941bd49e7b54"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54">remmina_protocol_widget_set_display</a></div><div class="ttdeci">void remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01089">remmina_protocol_widget.c:1089</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a78b123eca6709bceeacda7d791a94bf1"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1">remmina_protocol_widget_mpprogress</a></div><div class="ttdeci">RemminaMessagePanel * remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00687">remmina_protocol_widget.c:687</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a605b69a9aa4393024369cc5070488692"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692">remmina_protocol_widget_call_feature_by_ref</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00628">remmina_protocol_widget.c:628</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a7ed85f4ea19e0660dbf46f4f3dc4b895"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895">remmina_protocol_widget_panel_show_retry</a></div><div class="ttdeci">void remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01674">remmina_protocol_widget.c:1674</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a95088334da86faf9520383629fff48af"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af">remmina_protocol_widget_set_error</a></div><div class="ttdeci">void remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01178">remmina_protocol_widget.c:1178</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a8565f01f8b5a3f0ee4518bda5f923f9a"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a">update_align</a></div><div class="ttdeci">static gboolean update_align(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00385">remmina_protocol_widget.c:385</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a14684e3222e6afb1b43d77634a174767"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767">remmina_protocol_widget_update_remote_resolution</a></div><div class="ttdeci">void remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01829">remmina_protocol_widget.c:1829</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a9bcd0d356c7215dc0f791c9744360705"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705">remmina_protocol_widget_send_keys_signals</a></div><div class="ttdeci">void remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01790">remmina_protocol_widget.c:1790</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a6a630e96e5b914d60d678ae8eaad4cd9"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9">remmina_protocol_widget_call_feature_by_type</a></div><div class="ttdeci">void remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00615">remmina_protocol_widget.c:615</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a5aaadd752a3275a0a8e0018a3dd669f8"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8">remmina_protocol_widget_set_hostkey_func</a></div><div class="ttdeci">void remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00681">remmina_protocol_widget.c:681</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aaf355ea7103fc57a4cbc7b815cde2995"><div class="ttname"><a href="remmina__protocol__widget_8h.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#l01117">remmina_protocol_widget.c:1117</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_priv_html"><div class="ttname"><a href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00062">remmina_protocol_widget.c:62</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aa88afa1e3f04974974a8be324b0a930e"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e">remmina_protocol_widget_update_align</a></div><div class="ttdeci">void remmina_protocol_widget_update_align(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00394">remmina_protocol_widget.c:394</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_aebc7c7d34c470081a52aa35d998ce868"><div class="ttname"><a href="remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01419">remmina_protocol_widget.c:1419</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_adbe15328275677cb38bd8c8a2d5e039d"><div class="ttname"><a href="remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d">remmina_protocol_widget_query_feature_by_type</a></div><div class="ttdeci">gboolean remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00592">remmina_protocol_widget.c:592</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a66263e6e7da79357ceb80d32b191d9f2"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2">remmina_protocol_widget_chat_open</a></div><div class="ttdeci">void remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp))</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01713">remmina_protocol_widget.c:1713</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_af9b6a2c2665010ab09a6d9943f9850bd"><div class="ttname"><a href="remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd">remmina_protocol_widget_get_features</a></div><div class="ttdeci">const RemminaProtocolFeature * remmina_protocol_widget_get_features(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00586">remmina_protocol_widget.c:586</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_acf75fd4bac28a3d53da064b2905f23c1"><div class="ttname"><a href="remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1">remmina_protocol_widget_panel_changed_certificate</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01510">remmina_protocol_widget.c:1510</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="types_8h_html_afae2f546eaf9ef8a816a804e830055bf"><div class="ttname"><a href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a></div><div class="ttdeci">gboolean(* RemminaXPortTunnelInitFunc)(RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00076">types.h:76</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a25bcb2ae99449624fed6f770218e3d25"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25">remmina_protocol_widget_get_expand</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01153">remmina_protocol_widget.c:1153</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__protocol__widget_8h_html_a2506e80d482c34532d0e534856452069"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069">remmina_protocol_widget_get_file</a></div><div class="ttdeci">RemminaFile * remmina_protocol_widget_get_file(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01204">remmina_protocol_widget.c:1204</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a41b62f211a8a8e960bc80aa1ba6b0380"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380">remmina_protocol_widget_set_width</a></div><div class="ttdeci">void remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01123">remmina_protocol_widget.c:1123</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_ab4c6435ef92e34a94270069ce1861907"><div class="ttname"><a href="remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907">remmina_protocol_widget_get_profile_remote_width</a></div><div class="ttdeci">gint remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01102">remmina_protocol_widget.c:1102</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html_a6399c3828908e36ed6202b5599bd206b"><div class="ttname"><a href="remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b">remmina_protocol_widget_open_connection</a></div><div class="ttdeci">void remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l00300">remmina_protocol_widget.c:300</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__public_8c.html b/docs/remmina__public_8c.html
new file mode 100644
index 000000000..c7146daa4
--- /dev/null
+++ b/docs/remmina__public_8c.html
@@ -0,0 +1,976 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_public.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__public_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_public.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__public_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9ec86f1e9caea5ebc867a90230d6b51a"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a> (const gchar *text, const gchar *def, gboolean descending)</td></tr>
+<tr class="separator:a9ec86f1e9caea5ebc867a90230d6b51a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3796b536244067e9a85923b1cefa6cde"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a> (const gchar *text, const gchar *def, const gchar *empty_choice)</td></tr>
+<tr class="separator:a3796b536244067e9a85923b1cefa6cde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5eacff7c9dab7457dd65525d01047f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a> (GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice)</td></tr>
+<tr class="separator:aa5eacff7c9dab7457dd65525d01047f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a593956dfe89aba3242a5c264a681f"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a> (gboolean use_icon)</td></tr>
+<tr class="separator:ab4a593956dfe89aba3242a5c264a681f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a616258d3226ec1f1ecee6ce18aba535b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a> (const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain)</td></tr>
+<tr class="separator:a616258d3226ec1f1ecee6ce18aba535b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1feef5a6d19225b8fcbfd0f9555306b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a> (const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain)</td></tr>
+<tr class="separator:ad1feef5a6d19225b8fcbfd0f9555306b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9c70a727bfeb32730b98ce5cf7a3739"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a> (GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols)</td></tr>
+<tr class="separator:af9c70a727bfeb32730b98ce5cf7a3739"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1679d83834c8409f23e00c555d677fb"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a> (GtkComboBox *combo)</td></tr>
+<tr class="separator:af1679d83834c8409f23e00c555d677fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92025b5f6512955f9c29608b5451a12c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a> (GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</td></tr>
+<tr class="separator:a92025b5f6512955f9c29608b5451a12c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86940733e5b9cf77b276084e437dcac0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a> (const gchar *path1, const gchar *path2)</td></tr>
+<tr class="separator:a86940733e5b9cf77b276084e437dcac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8b77823386e00e610527d6b0b61149"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a> (const gchar *server, gint defaultport, gchar **host, gint *port)</td></tr>
+<tr class="separator:adc8b77823386e00e610527d6b0b61149"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12ba081432e5f32cf8287231d4779ecf"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a> (const gchar *display, gchar **msg)</td></tr>
+<tr class="separator:a12ba081432e5f32cf8287231d4779ecf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52656bbe00a83068f36337f449bdc767"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a> (const gchar *disp)</td></tr>
+<tr class="separator:a52656bbe00a83068f36337f449bdc767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ff5e5c4dabc3fb001125a6da14ad758"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a> (GdkScreen *screen)</td></tr>
+<tr class="separator:a7ff5e5c4dabc3fb001125a6da14ad758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c0688cfe4ec55f8b563943aab570b25"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a> (GtkWindow *gtkwindow)</td></tr>
+<tr class="separator:a9c0688cfe4ec55f8b563943aab570b25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95f1d68c7ab3e2a6b158db45f63538fb"><td class="memItemLeft" align="right" valign="top">guint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a> (GdkKeymap *keymap, guint keyval)</td></tr>
+<tr class="separator:a95f1d68c7ab3e2a6b158db45f63538fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fac51670815da6a72700a10866c179a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a> (GdkKeymap *keymap, guint16 keycode)</td></tr>
+<tr class="separator:a1fac51670815da6a72700a10866c179a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3031598a6e4f67d1519d8e5afba7da41"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a> (gchar *filename)</td></tr>
+<tr class="separator:a3031598a6e4f67d1519d8e5afba7da41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0f480277a5929212d389b4bcdd56912"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a> (GtkWidget *widget, GtkContainer *container)</td></tr>
+<tr class="separator:ac0f480277a5929212d389b4bcdd56912"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a098786d3aa6991aeba43a61e29d534d0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a> (const gchar *new_str, gchar **error)</td></tr>
+<tr class="separator:a098786d3aa6991aeba43a61e29d534d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a893f0cfe2d694ab700975f4f427ee2f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a> (const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</td></tr>
+<tr class="separator:a893f0cfe2d694ab700975f4f427ee2f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea7547abe3a67e6126addc9ed91af640"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a> (const gchar *string, const gchar *search, const gchar *replacement)</td></tr>
+<tr class="separator:aea7547abe3a67e6126addc9ed91af640"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d7d9b3c8050545469b1af9a35b043a2"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a> (gchar *string, const gchar *search, const gchar *replacement)</td></tr>
+<tr class="separator:a8d7d9b3c8050545469b1af9a35b043a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf3fdb980c24cd06965b85ebcdd79173"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a> (const char *resolution_string, int *w, int *h)</td></tr>
+<tr class="separator:aaf3fdb980c24cd06965b85ebcdd79173"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7c29f17323086e08ac56e1636fd41c3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a> (guint major, guint minor, guint micro)</td></tr>
+<tr class="separator:ad7c29f17323086e08ac56e1636fd41c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad7c29f17323086e08ac56e1636fd41c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7c29f17323086e08ac56e1636fd41c3">&#9670;&nbsp;</a></span>remmina_gtk_check_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_gtk_check_version </td>
+ <td>(</td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>major</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>minor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>micro</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00706">706</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a86940733e5b9cf77b276084e437dcac0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86940733e5b9cf77b276084e437dcac0">&#9670;&nbsp;</a></span>remmina_public_combine_path()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_combine_path </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00323">323</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="af1679d83834c8409f23e00c555d677fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1679d83834c8409f23e00c555d677fb">&#9670;&nbsp;</a></span>remmina_public_combo_get_active_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_combo_get_active_text </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>combo</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00266">266</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4a593956dfe89aba3242a5c264a681f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4a593956dfe89aba3242a5c264a681f">&#9670;&nbsp;</a></span>remmina_public_create_combo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00175">175</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ec86f1e9caea5ebc867a90230d6b51a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ec86f1e9caea5ebc867a90230d6b51a">&#9670;&nbsp;</a></span>remmina_public_create_combo_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_entry </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>descending</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a616258d3226ec1f1ecee6ce18aba535b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a616258d3226ec1f1ecee6ce18aba535b">&#9670;&nbsp;</a></span>remmina_public_create_combo_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_map </td>
+ <td>(</td>
+ <td class="paramtype">const gpointer *&#160;</td>
+ <td class="paramname"><em>key_value_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00205">205</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ad1feef5a6d19225b8fcbfd0f9555306b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1feef5a6d19225b8fcbfd0f9555306b">&#9670;&nbsp;</a></span>remmina_public_create_combo_mapint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_mapint </td>
+ <td>(</td>
+ <td class="paramtype">const gpointer *&#160;</td>
+ <td class="paramname"><em>key_value_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00237">237</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a3796b536244067e9a85923b1cefa6cde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3796b536244067e9a85923b1cefa6cde">&#9670;&nbsp;</a></span>remmina_public_create_combo_text_d()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_text_d </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>empty_choice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="af9c70a727bfeb32730b98ce5cf7a3739"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9c70a727bfeb32730b98ce5cf7a3739">&#9670;&nbsp;</a></span>remmina_public_create_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_create_group </td>
+ <td>(</td>
+ <td class="paramtype">GtkGrid *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>rows</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>cols</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00245">245</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a7ff5e5c4dabc3fb001125a6da14ad758"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ff5e5c4dabc3fb001125a6da14ad758">&#9670;&nbsp;</a></span>remmina_public_get_current_workspace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_public_get_current_workspace </td>
+ <td>(</td>
+ <td class="paramtype">GdkScreen *&#160;</td>
+ <td class="paramname"><em>screen</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00444">444</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a95f1d68c7ab3e2a6b158db45f63538fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95f1d68c7ab3e2a6b158db45f63538fb">&#9670;&nbsp;</a></span>remmina_public_get_keycode_for_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint16 remmina_public_get_keycode_for_keyval </td>
+ <td>(</td>
+ <td class="paramtype">GdkKeymap *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00549">549</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a1fac51670815da6a72700a10866c179a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1fac51670815da6a72700a10866c179a">&#9670;&nbsp;</a></span>remmina_public_get_modifier_for_keycode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_get_modifier_for_keycode </td>
+ <td>(</td>
+ <td class="paramtype">GdkKeymap *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint16&#160;</td>
+ <td class="paramname"><em>keycode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00564">564</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="adc8b77823386e00e610527d6b0b61149"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8b77823386e00e610527d6b0b61149">&#9670;&nbsp;</a></span>remmina_public_get_server_port()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_get_server_port </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>defaultport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00333">333</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a9c0688cfe4ec55f8b563943aab570b25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c0688cfe4ec55f8b563943aab570b25">&#9670;&nbsp;</a></span>remmina_public_get_window_workspace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_public_get_window_workspace </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>gtkwindow</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00495">495</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a12ba081432e5f32cf8287231d4779ecf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12ba081432e5f32cf8287231d4779ecf">&#9670;&nbsp;</a></span>remmina_public_get_xauth_cookie()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_get_xauth_cookie </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>display</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>msg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00379">379</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a3031598a6e4f67d1519d8e5afba7da41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3031598a6e4f67d1519d8e5afba7da41">&#9670;&nbsp;</a></span>remmina_public_gtk_builder_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* remmina_public_gtk_builder_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00576">576</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ac0f480277a5929212d389b4bcdd56912"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0f480277a5929212d389b4bcdd56912">&#9670;&nbsp;</a></span>remmina_public_gtk_widget_reparent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_gtk_widget_reparent </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkContainer *&#160;</td>
+ <td class="paramname"><em>container</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00593">593</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aa5eacff7c9dab7457dd65525d01047f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5eacff7c9dab7457dd65525d01047f8">&#9670;&nbsp;</a></span>remmina_public_load_combo_text_d()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_load_combo_text_d </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>combo</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>empty_choice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00130">130</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a52656bbe00a83068f36337f449bdc767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52656bbe00a83068f36337f449bdc767">&#9670;&nbsp;</a></span>remmina_public_open_xdisplay()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_public_open_xdisplay </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>disp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00410">410</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a92025b5f6512955f9c29608b5451a12c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92025b5f6512955f9c29608b5451a12c">&#9670;&nbsp;</a></span>remmina_public_popup_position()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_popup_position </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenu *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean *&#160;</td>
+ <td class="paramname"><em>push_in</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00287">287</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a098786d3aa6991aeba43a61e29d534d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a098786d3aa6991aeba43a61e29d534d0">&#9670;&nbsp;</a></span>remmina_public_resolution_validation_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_resolution_validation_func </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>error</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00603">603</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a893f0cfe2d694ab700975f4f427ee2f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a893f0cfe2d694ab700975f4f427ee2f6">&#9670;&nbsp;</a></span>remmina_public_send_notification()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_send_notification </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00644">644</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf3fdb980c24cd06965b85ebcdd79173"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf3fdb980c24cd06965b85ebcdd79173">&#9670;&nbsp;</a></span>remmina_public_split_resolution_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_public_split_resolution_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>resolution_string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00691">691</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aea7547abe3a67e6126addc9ed91af640"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea7547abe3a67e6126addc9ed91af640">&#9670;&nbsp;</a></span>remmina_public_str_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_str_replace </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>search</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replacement</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00659">659</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a8d7d9b3c8050545469b1af9a35b043a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d7d9b3c8050545469b1af9a35b043a2">&#9670;&nbsp;</a></span>remmina_public_str_replace_in_place()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_str_replace_in_place </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>search</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replacement</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00682">682</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__public_8c.html">remmina_public.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__public_8c.js b/docs/remmina__public_8c.js
new file mode 100644
index 000000000..99339f731
--- /dev/null
+++ b/docs/remmina__public_8c.js
@@ -0,0 +1,28 @@
+var remmina__public_8c =
+[
+ [ "remmina_gtk_check_version", "remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3", null ],
+ [ "remmina_public_combine_path", "remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0", null ],
+ [ "remmina_public_combo_get_active_text", "remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb", null ],
+ [ "remmina_public_create_combo", "remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f", null ],
+ [ "remmina_public_create_combo_entry", "remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a", null ],
+ [ "remmina_public_create_combo_map", "remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b", null ],
+ [ "remmina_public_create_combo_mapint", "remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b", null ],
+ [ "remmina_public_create_combo_text_d", "remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde", null ],
+ [ "remmina_public_create_group", "remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739", null ],
+ [ "remmina_public_get_current_workspace", "remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758", null ],
+ [ "remmina_public_get_keycode_for_keyval", "remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb", null ],
+ [ "remmina_public_get_modifier_for_keycode", "remmina__public_8c.html#a1fac51670815da6a72700a10866c179a", null ],
+ [ "remmina_public_get_server_port", "remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149", null ],
+ [ "remmina_public_get_window_workspace", "remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25", null ],
+ [ "remmina_public_get_xauth_cookie", "remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf", null ],
+ [ "remmina_public_gtk_builder_new_from_file", "remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41", null ],
+ [ "remmina_public_gtk_widget_reparent", "remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912", null ],
+ [ "remmina_public_load_combo_text_d", "remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8", null ],
+ [ "remmina_public_open_xdisplay", "remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767", null ],
+ [ "remmina_public_popup_position", "remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c", null ],
+ [ "remmina_public_resolution_validation_func", "remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0", null ],
+ [ "remmina_public_send_notification", "remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6", null ],
+ [ "remmina_public_split_resolution_string", "remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173", null ],
+ [ "remmina_public_str_replace", "remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640", null ],
+ [ "remmina_public_str_replace_in_place", "remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__public_8c_source.html b/docs/remmina__public_8c_source.html
new file mode 100644
index 000000000..efbc49119
--- /dev/null
+++ b/docs/remmina__public_8c_source.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_public.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__public_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_public.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__public_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-2020 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 &lt;gtk/gtk.h&gt;</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 &lt;string.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifdef HAVE_NETDB_H</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;netdb.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#ifdef HAVE_SYS_SOCKET_H</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;sys/socket.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#ifdef HAVE_SYS_UN_H</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &lt;sys/un.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#include &lt;X11/Xlib.h&gt;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &lt;X11/Xutil.h&gt;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &lt;X11/Xatom.h&gt;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif</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__public_8h.html">remmina_public.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__trace__calls_8h.html">remmina/remmina_trace_calls.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;GtkWidget*</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168"> 62</a></span>&#160;<a class="code" href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, gboolean descending)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; GtkWidget *combo;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; gboolean found;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; gchar *buf, *ptr1, *ptr2;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; gint i;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; combo = gtk_combo_box_text_new_with_entry();</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; found = FALSE;</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="keywordflow">if</span> (text &amp;&amp; text[0] != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; buf = g_strdup(text);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; ptr1 = buf;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; i = 0;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">while</span> (ptr1 &amp;&amp; *ptr1 != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; ptr2 = strchr(ptr1, CHAR_DELIMITOR);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (ptr2)</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; *ptr2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (descending) {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; gtk_combo_box_text_prepend_text(GTK_COMBO_BOX_TEXT(combo), ptr1);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (!found &amp;&amp; g_strcmp0(ptr1, def) == 0) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(combo), 0);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; found = TRUE;</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(combo), ptr1);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (!found &amp;&amp; g_strcmp0(ptr1, def) == 0) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(combo), i);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; found = TRUE;</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"> 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"> 96</span>&#160; ptr1 = ptr2;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; i++;</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;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; g_free(buf);</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;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">if</span> (!found &amp;&amp; def &amp;&amp; def[0] != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; gtk_entry_set_text(GTK_ENTRY(gtk_bin_get_child(GTK_BIN(combo))), def);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</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="keywordflow">return</span> combo;</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;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;GtkWidget*</div><div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde"> 111</a></span>&#160;<a class="code" href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, <span class="keyword">const</span> gchar *empty_choice)</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; GtkWidget *combo;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; GtkCellRenderer *text_renderer;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; combo = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store));</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; text_renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; gtk_cell_layout_pack_end(GTK_CELL_LAYOUT(combo), text_renderer, TRUE);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(combo), text_renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</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; <a class="code" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a>(combo, text, def, empty_choice);</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="keywordflow">return</span> combo;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;}</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"><a class="line" href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8"> 130</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a>(GtkWidget *combo, <span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, <span class="keyword">const</span> gchar *empty_choice)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;{</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gint i;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gchar *buf, *ptr1, *ptr2;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; store = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(combo)));</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; gtk_list_store_clear(store);</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; i = 0;</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; <span class="keywordflow">if</span> (empty_choice) {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gtk_list_store_set(store, &amp;iter, 0, <span class="stringliteral">&quot;&quot;</span>, 1, empty_choice, -1);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(combo), i);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; i++;</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"> 150</span>&#160; <span class="keywordflow">if</span> (text == NULL || text[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">return</span>;</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; buf = g_strdup(text);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; ptr1 = buf;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">while</span> (ptr1 &amp;&amp; *ptr1 != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; ptr2 = strchr(ptr1, CHAR_DELIMITOR);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordflow">if</span> (ptr2)</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; *ptr2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gtk_list_store_set(store, &amp;iter, 0, ptr1, 1, ptr1, -1);</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="keywordflow">if</span> (i == 0 || g_strcmp0(ptr1, def) == 0) {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(combo), i);</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;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; i++;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; ptr1 = ptr2;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; g_free(buf);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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;GtkWidget*</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f"> 175</a></span>&#160;<a class="code" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a>(gboolean use_icon)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; GtkWidget *combo;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; GtkCellRenderer *renderer;</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; <span class="keywordflow">if</span> (use_icon) {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; store = gtk_list_store_new(3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; combo = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store));</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; gtk_widget_set_hexpand(combo, TRUE);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">if</span> (use_icon) {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; renderer = gtk_cell_renderer_pixbuf_new();</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo), renderer, FALSE);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(combo), renderer, <span class="stringliteral">&quot;icon-name&quot;</span>, 2);</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; renderer = gtk_cell_renderer_text_new();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo), renderer, TRUE);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; gtk_cell_layout_add_attribute(GTK_CELL_LAYOUT(combo), renderer, <span class="stringliteral">&quot;text&quot;</span>, 1);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (use_icon)</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_object_set(G_OBJECT(renderer), <span class="stringliteral">&quot;xpad&quot;</span>, 5, NULL);</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; <span class="keywordflow">return</span> combo;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;}</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;GtkWidget*</div><div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b"> 205</a></span>&#160;<a class="code" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a>(<span class="keyword">const</span> gpointer *key_value_list, <span class="keyword">const</span> gchar *def, gboolean use_icon, <span class="keyword">const</span> gchar *domain)</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;{</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; gint i;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; GtkWidget *combo;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; GtkListStore *store;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; GtkTreeIter iter;</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; combo = <a class="code" href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a>(use_icon);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; store = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(combo)));</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">for</span> (i = 0; key_value_list[i]; i += (use_icon ? 3 : 2)) {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; gtk_list_store_append(store, &amp;iter);</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; gtk_list_store_set(</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; store,</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; &amp;iter,</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; 0,</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; key_value_list[i],</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; 1,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; key_value_list[i + 1] &amp;&amp; ((<span class="keywordtype">char</span>*)key_value_list[i + 1])[0] ?</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; g_dgettext(domain, key_value_list[i + 1]) : <span class="stringliteral">&quot;&quot;</span>, -1);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">if</span> (use_icon) {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; gtk_list_store_set(store, &amp;iter, 2, key_value_list[i + 2], -1);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; }</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">if</span> (i == 0 || g_strcmp0(key_value_list[i], def) == 0) {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; gtk_combo_box_set_active(GTK_COMBO_BOX(combo), i / (use_icon ? 3 : 2));</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; }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span> combo;</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"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;GtkWidget*</div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b"> 237</a></span>&#160;<a class="code" href="remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a>(<span class="keyword">const</span> gpointer *key_value_list, gint def, gboolean use_icon, <span class="keyword">const</span> gchar *domain)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; gchar buf[20];</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;%i&quot;</span>, def);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a>(key_value_list, buf, use_icon, domain);</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="l00245"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739"> 245</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a>(GtkGrid *grid, <span class="keyword">const</span> gchar *group, gint row, gint rows, gint cols)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;{</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gchar *str;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; widget = gtk_label_new(NULL);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; str = g_markup_printf_escaped(<span class="stringliteral">&quot;&lt;b&gt;%s&lt;/b&gt;&quot;</span>, group);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; gtk_label_set_markup(GTK_LABEL(widget), str);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; g_free(str);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row, 1, 2);</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; widget = gtk_label_new(NULL);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gtk_grid_attach(GTK_GRID(grid), widget, 0, row + 1, 1, 1);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;}</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;gchar*</div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb"> 266</a></span>&#160;<a class="code" href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GtkComboBox *combo)</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;{</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; GtkTreeModel *model;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; gchar *s;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (GTK_IS_COMBO_BOX_TEXT(combo)) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">return</span> gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(combo));</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">if</span> (!gtk_combo_box_get_active_iter(combo, &amp;iter))</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">return</span> NULL;</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; model = gtk_combo_box_get_model(combo);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; gtk_tree_model_get(model, &amp;iter, 0, &amp;s, -1);</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">return</span> s;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;}</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="preprocessor">#if !GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c"> 287</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;{</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; gint tx, ty;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; GtkAllocation allocation;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; widget = GTK_WIDGET(user_data);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (gtk_widget_get_window(widget) == NULL) {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; *x = 0;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; *y = 0;</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; *push_in = TRUE;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; gdk_window_get_origin(gtk_widget_get_window(widget), &amp;tx, &amp;ty);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; gtk_widget_get_allocation(widget, &amp;allocation);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="comment">/* I’m unsure why the author made the check about a GdkWindow inside the</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="comment"> * widget argument. This function generally is called passing by a ToolButton</span></div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="comment"> * which hasn’t any GdkWindow, therefore the positioning is wrong</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="comment"> * I think the gtk_widget_get_has_window() check should be removed</span></div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"> * While leaving the previous check intact I’m checking also if the provided</span></div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="comment"> * widget is a GtkToggleToolButton and position the menu accordingly. */</span></div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">if</span> (gtk_widget_get_has_window(widget) ||</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; g_strcmp0(gtk_widget_get_name(widget), <span class="stringliteral">&quot;GtkToggleToolButton&quot;</span>) == 0) {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; tx += allocation.x;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; ty += allocation.y;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; *x = tx;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; *y = ty + allocation.height - 1;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; *push_in = TRUE;</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="preprocessor">#endif</span></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"> 322</span>&#160;gchar*</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0"> 323</a></span>&#160;<a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(<span class="keyword">const</span> gchar *path1, <span class="keyword">const</span> gchar *path2)</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; <span class="keywordflow">if</span> (!path1 || path1[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">return</span> g_strdup(path2);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">if</span> (path1[strlen(path1) - 1] == <span class="charliteral">&#39;/&#39;</span>)</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;%s%s&quot;</span>, path1, path2);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;%s/%s&quot;</span>, path1, path2);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;}</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"><a class="line" href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149"> 333</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(<span class="keyword">const</span> gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;{</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; gchar *str, *ptr, *ptr2;</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; str = g_strdup(server);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">if</span> (str) {</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="comment">/* [server]:port format */</span></div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; ptr = strchr(str, <span class="charliteral">&#39;[&#39;</span>);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">if</span> (ptr) {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; ptr++;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; ptr2 = strchr(ptr, <span class="charliteral">&#39;]&#39;</span>);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">if</span> (ptr2) {</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; *ptr2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">if</span> (*ptr2 == <span class="charliteral">&#39;:&#39;</span>)</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; defaultport = atoi(ptr2 + 1);</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; <span class="keywordflow">if</span> (host)</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; *host = g_strdup(ptr);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span> (port)</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; *port = defaultport;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; g_free(str);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</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; <span class="comment">/* server:port format, IPv6 cannot use this format */</span></div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; ptr = strchr(str, <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keywordflow">if</span> (ptr) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; ptr2 = strchr(ptr + 1, <span class="charliteral">&#39;:&#39;</span>);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">if</span> (ptr2 == NULL) {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; *ptr++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; defaultport = atoi(ptr);</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; <span class="comment">/* More than one &#39;:&#39; means this is IPv6 address. Treat it as a whole address */</span></div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }</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;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (host)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; *host = str;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; g_free(str);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">if</span> (port)</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; *port = defaultport;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;}</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"><a class="line" href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf"> 379</a></span>&#160;gboolean <a class="code" href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a>(<span class="keyword">const</span> gchar *display, gchar **msg)</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;{</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; gchar buf[200];</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; gchar *out = NULL;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; gchar *ptr;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; gboolean ret;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">if</span> (!display)</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; display = gdk_display_get_name(gdk_display_get_default());</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; g_snprintf(buf, <span class="keyword">sizeof</span>(buf), <span class="stringliteral">&quot;xauth list %s&quot;</span>, display);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; ret = g_spawn_command_line_sync(buf, &amp;out, NULL, NULL, &amp;error);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> ((ptr = g_strrstr(out, <span class="stringliteral">&quot;MIT-MAGIC-COOKIE-1&quot;</span>)) == NULL) {</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; *msg = g_strdup_printf(<span class="stringliteral">&quot;xauth returns %s&quot;</span>, out);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; ret = FALSE;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; ptr += 19;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">while</span> (*ptr == <span class="charliteral">&#39; &#39;</span>)</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; ptr++;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; *msg = g_strndup(ptr, 32);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; }</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; g_free(out);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; *msg = g_strdup(error-&gt;message);</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"> 407</span>&#160; <span class="keywordflow">return</span> ret;</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;</div><div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767"> 410</a></span>&#160;gint <a class="code" href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a>(<span class="keyword">const</span> gchar *disp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; gchar *display;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; gchar *ptr;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; gint port;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keyword">struct </span>sockaddr_un addr;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gint sock = -1;</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; display = g_strdup(disp);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; ptr = g_strrstr(display, <span class="stringliteral">&quot;:&quot;</span>);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">if</span> (ptr) {</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; *ptr++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="comment">/* Assume you are using a local display… might need to implement remote display in the future */</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">if</span> (display[0] == <span class="charliteral">&#39;\0&#39;</span> || strcmp(display, <span class="stringliteral">&quot;unix&quot;</span>) == 0) {</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; port = atoi(ptr);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; sock = socket(AF_UNIX, SOCK_STREAM, 0);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (sock &gt;= 0) {</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; memset(&amp;addr, 0, <span class="keyword">sizeof</span>(addr));</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; addr.sun_family = AF_UNIX;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; snprintf(addr.sun_path, <span class="keyword">sizeof</span>(addr.sun_path), X_UNIX_SOCKET, port);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">if</span> (connect(sock, (<span class="keyword">struct</span> sockaddr *)&amp;addr, <span class="keyword">sizeof</span>(addr)) == -1) {</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; close(sock);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; sock = -1;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</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; }</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; }</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(display);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">return</span> sock;</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;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment">/* This function was copied from GEdit (gedit-utils.c). */</span></div><div class="line"><a name="l00444"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758"> 444</a></span>&#160;guint <a class="code" href="remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a>(GdkScreen *screen)</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"> 446</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 10, 0)</span></div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; g_return_val_if_fail(GDK_IS_SCREEN(screen), 0);</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">if</span> (GDK_IS_X11_DISPLAY(gdk_screen_get_display(screen)))</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; <span class="keywordflow">return</span> gdk_x11_screen_get_current_desktop(screen);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">return</span> 0;</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"> 455</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; GdkWindow *root_win;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; Atom type;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gint format;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; gulong nitems;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; gulong bytes_after;</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; guint *current_desktop;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; gint err, result;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; guint ret = 0;</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; g_return_val_if_fail(GDK_IS_SCREEN(screen), 0);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; root_win = gdk_screen_get_root_window(screen);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; display = gdk_screen_get_display(screen);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; gdk_error_trap_push();</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; result = XGetWindowProperty(GDK_DISPLAY_XDISPLAY(display), GDK_WINDOW_XID(root_win),</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; gdk_x11_get_xatom_by_name_for_display(display, <span class="stringliteral">&quot;_NET_CURRENT_DESKTOP&quot;</span>),</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; 0, G_MAXLONG, False, XA_CARDINAL, &amp;type, &amp;format, &amp;nitems,</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; &amp;bytes_after, (gpointer) &amp; current_desktop);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; err = gdk_error_trap_pop();</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; <span class="keywordflow">if</span> (err != Success || result != Success)</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordflow">return</span> ret;</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; <span class="keywordflow">if</span> (type == XA_CARDINAL &amp;&amp; format == 32 &amp;&amp; nitems &gt; 0)</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; ret = current_desktop[0];</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; XFree(current_desktop);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="comment">/* FIXME: on mac etc proably there are native APIs</span></div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="comment"> * to get the current workspace etc */</span></div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="comment">/* This function was copied from GEdit (gedit-utils.c). */</span></div><div class="line"><a name="l00495"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25"> 495</a></span>&#160;guint <a class="code" href="remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a>(GtkWindow *gtkwindow)</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;{</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 10, 0)</span></div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; GdkWindow *window;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; g_return_val_if_fail(GTK_IS_WINDOW(gtkwindow), 0);</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; g_return_val_if_fail(gtk_widget_get_realized(GTK_WIDGET(gtkwindow)), 0);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; window = gtk_widget_get_window(GTK_WIDGET(gtkwindow));</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordflow">if</span> (GDK_IS_X11_DISPLAY(gdk_window_get_display(window)))</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keywordflow">return</span> gdk_x11_window_get_desktop(window);</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; GdkWindow *window;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; Atom type;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; gint format;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; gulong nitems;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gulong bytes_after;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; guint *workspace;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; gint err, result;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; guint ret = 0;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; g_return_val_if_fail(GTK_IS_WINDOW(gtkwindow), 0);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; g_return_val_if_fail(gtk_widget_get_realized(GTK_WIDGET(gtkwindow)), 0);</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; window = gtk_widget_get_window(GTK_WIDGET(gtkwindow));</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; display = gdk_window_get_display(window);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; gdk_error_trap_push();</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; result = XGetWindowProperty(GDK_DISPLAY_XDISPLAY(display), GDK_WINDOW_XID(window),</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; gdk_x11_get_xatom_by_name_for_display(display, <span class="stringliteral">&quot;_NET_WM_DESKTOP&quot;</span>),</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; 0, G_MAXLONG, False, XA_CARDINAL, &amp;type, &amp;format, &amp;nitems,</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; &amp;bytes_after, (gpointer) &amp; workspace);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; err = gdk_error_trap_pop();</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">if</span> (err != Success || result != Success)</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <span class="keywordflow">if</span> (type == XA_CARDINAL &amp;&amp; format == 32 &amp;&amp; nitems &gt; 0)</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; ret = workspace[0];</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; XFree(workspace);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="comment">/* FIXME: on mac etc proably there are native APIs</span></div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;<span class="comment"> * to get the current workspace etc */</span></div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;}</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="comment">/* Find hardware keycode for the requested keyval */</span></div><div class="line"><a name="l00549"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb"> 549</a></span>&#160;guint16 <a class="code" href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a>(GdkKeymap *keymap, guint keyval)</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;{</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; GdkKeymapKey *keys = NULL;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gint length = 0;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; guint16 keycode = 0;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">if</span> (gdk_keymap_get_entries_for_keyval(keymap, keyval, &amp;keys, &amp;length)) {</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; keycode = keys[0].keycode;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; g_free(keys);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; }</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">return</span> keycode;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;}</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">/* Check if the requested keycode is a key modifier */</span></div><div class="line"><a name="l00564"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a"> 564</a></span>&#160;gboolean <a class="code" href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a>(GdkKeymap *keymap, guint16 keycode)</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;{</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; g_return_val_if_fail(keycode &gt; 0, FALSE);</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">return</span> gdk_x11_keymap_key_is_modifier(keymap, keycode);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="comment">/* Load a GtkBuilder object from a filename */</span></div><div class="line"><a name="l00576"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41"> 576</a></span>&#160;GtkBuilder* <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(gchar *filename)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; GError *err = NULL;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gchar *ui_path = g_strconcat(REMMINA_RUNTIME_UIDIR, G_DIR_SEPARATOR_S, filename, NULL);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; GtkBuilder *builder = gtk_builder_new();</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gtk_builder_add_from_file(builder, ui_path, &amp;err);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">if</span> (err != NULL) {</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; g_print(<span class="stringliteral">&quot;Error adding build from file. Error: %s&quot;</span>, err-&gt;message);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; g_error_free(err);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; }</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; g_free(ui_path);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">return</span> builder;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;}</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;<span class="comment">/* Change parent container for a widget</span></div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;<span class="comment"> * If possible use this function instead of the deprecated gtk_widget_reparent */</span></div><div class="line"><a name="l00593"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912"> 593</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a>(GtkWidget *widget, GtkContainer *container)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; g_object_ref(widget);</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; gtk_container_remove(GTK_CONTAINER(gtk_widget_get_parent(widget)), widget);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; gtk_container_add(container, widget);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; g_object_unref(widget);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;}</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;<span class="comment">/* Validate the inserted value for a new resolution */</span></div><div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0"> 603</a></span>&#160;gboolean <a class="code" href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a>(<span class="keyword">const</span> gchar *new_str, gchar **error)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; gint i;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; gint width, height;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; gboolean splitted;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; gboolean result;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; width = 0;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; height = 0;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; splitted = FALSE;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; result = TRUE;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">for</span> (i = 0; new_str[i] != <span class="charliteral">&#39;\0&#39;</span>; i++) {</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="keywordflow">if</span> (new_str[i] == <span class="charliteral">&#39;x&#39;</span>) {</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordflow">if</span> (splitted) {</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; result = FALSE;</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; }</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; splitted = TRUE;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; }</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordflow">if</span> (new_str[i] &lt; <span class="charliteral">&#39;0&#39;</span> || new_str[i] &gt; <span class="charliteral">&#39;9&#39;</span>) {</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; result = FALSE;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; }</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">if</span> (splitted) {</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; height = 1;</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; width = 1;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; }</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; }</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="keywordflow">if</span> (width == 0 || height == 0)</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; result = FALSE;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">if</span> (!result)</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; *error = g_strdup(_(<span class="stringliteral">&quot;Please enter format &#39;widthxheight&#39;.&quot;</span>));</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;}</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;<span class="comment">/* Used to send desktop notifications */</span></div><div class="line"><a name="l00644"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6"> 644</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a>(<span class="keyword">const</span> gchar *notification_id,</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keyword">const</span> gchar *notification_title, <span class="keyword">const</span> gchar *notification_message)</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;{</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; GNotification *notification = g_notification_new(notification_title);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; g_notification_set_body(notification, notification_message);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;<span class="preprocessor">#if GLIB_CHECK_VERSION(2, 42, 0)</span></div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; g_notification_set_priority(notification, G_NOTIFICATION_PRIORITY_NORMAL);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; g_application_send_notification(g_application_get_default(), notification_id, notification);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; g_object_unref(notification);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;}</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;<span class="comment">/* Replaces all occurrences of search in a new copy of string by replacement. */</span></div><div class="line"><a name="l00659"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640"> 659</a></span>&#160;gchar* <a class="code" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a>(<span class="keyword">const</span> gchar *<span class="keywordtype">string</span>, <span class="keyword">const</span> gchar *search, <span class="keyword">const</span> gchar *replacement)</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;{</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; gchar *str, **arr;</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; g_return_val_if_fail(<span class="keywordtype">string</span> != NULL, NULL);</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; g_return_val_if_fail(search != NULL, NULL);</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <span class="keywordflow">if</span> (replacement == NULL)</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; replacement = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; arr = g_strsplit(<span class="keywordtype">string</span>, search, -1);</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">if</span> (arr != NULL &amp;&amp; arr[0] != NULL)</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; str = g_strjoinv(replacement, arr);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; str = g_strdup(<span class="keywordtype">string</span>);</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; g_strfreev(arr);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordflow">return</span> str;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;}</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="comment">/* Replaces all occurrences of search in a new copy of string by replacement</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;<span class="comment"> * and overwrites the original string */</span></div><div class="line"><a name="l00682"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2"> 682</a></span>&#160;gchar* <a class="code" href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a>(gchar *<span class="keywordtype">string</span>, <span class="keyword">const</span> gchar *search, <span class="keyword">const</span> gchar *replacement)</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;{</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; gchar *new_string = <a class="code" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a>(<span class="keywordtype">string</span>, search, replacement);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; g_free(<span class="keywordtype">string</span>);</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <span class="keywordtype">string</span> = g_strdup(new_string);</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">return</span> string;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;}</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173"> 691</a></span>&#160;<span class="keywordtype">int</span> <a class="code" href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *resolution_string, <span class="keywordtype">int</span> *w, <span class="keywordtype">int</span> *h)</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;{</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordtype">int</span> lw, lh;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keywordflow">if</span> (resolution_string == NULL || resolution_string[0] == 0)</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keywordflow">if</span> (sscanf(resolution_string, <span class="stringliteral">&quot;%dx%d&quot;</span>, &amp;lw, &amp;lh) != 2)</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; *w = lw;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; *h = lh;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;}</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;<span class="comment">/* Return TRUE if current gtk version library in use is greater or equal than</span></div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;<span class="comment"> * the required major.minor.micro */</span></div><div class="line"><a name="l00706"></a><span class="lineno"><a class="line" href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3"> 706</a></span>&#160;gboolean <a class="code" href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a>(guint major, guint minor, guint micro)</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; guint rtmajor, rtminor, rtmicro;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; rtmajor = gtk_get_major_version();</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="keywordflow">if</span> (rtmajor &gt; major) {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (rtmajor == major) {</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; rtminor = gtk_get_minor_version();</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">if</span> (rtminor &gt; minor) {</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (rtminor == minor) {</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; rtmicro = gtk_get_micro_version();</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordflow">if</span> (rtmicro &gt;= micro) {</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; }</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; }</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; }</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;}</div><div class="ttc" id="remmina__public_8c_html_af9c70a727bfeb32730b98ce5cf7a3739"><div class="ttname"><a href="remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a></div><div class="ttdeci">void remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00245">remmina_public.c:245</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ac0f480277a5929212d389b4bcdd56912"><div class="ttname"><a href="remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a></div><div class="ttdeci">void remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00593">remmina_public.c:593</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a9ec86f1e9caea5ebc867a90230d6b51a"><div class="ttname"><a href="remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a">remmina_public_create_combo_entry</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00062">remmina_public.c:62</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a893f0cfe2d694ab700975f4f427ee2f6"><div class="ttname"><a href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a></div><div class="ttdeci">void remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00644">remmina_public.c:644</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a9c0688cfe4ec55f8b563943aab570b25"><div class="ttname"><a href="remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a></div><div class="ttdeci">guint remmina_public_get_window_workspace(GtkWindow *gtkwindow)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00495">remmina_public.c:495</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_af1679d83834c8409f23e00c555d677fb"><div class="ttname"><a href="remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a></div><div class="ttdeci">gchar * remmina_public_combo_get_active_text(GtkComboBox *combo)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00266">remmina_public.c:266</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a098786d3aa6991aeba43a61e29d534d0"><div class="ttname"><a href="remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a></div><div class="ttdeci">gboolean remmina_public_resolution_validation_func(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00603">remmina_public.c:603</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aaf3fdb980c24cd06965b85ebcdd79173"><div class="ttname"><a href="remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a></div><div class="ttdeci">int remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00691">remmina_public.c:691</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a86940733e5b9cf77b276084e437dcac0"><div class="ttname"><a href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a></div><div class="ttdeci">gchar * remmina_public_combine_path(const gchar *path1, const gchar *path2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00323">remmina_public.c:323</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a8d7d9b3c8050545469b1af9a35b043a2"><div class="ttname"><a href="remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a></div><div class="ttdeci">gchar * remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00682">remmina_public.c:682</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a616258d3226ec1f1ecee6ce18aba535b"><div class="ttname"><a href="remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00205">remmina_public.c:205</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a7ff5e5c4dabc3fb001125a6da14ad758"><div class="ttname"><a href="remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a></div><div class="ttdeci">guint remmina_public_get_current_workspace(GdkScreen *screen)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00444">remmina_public.c:444</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__public_8c_html_a3796b536244067e9a85923b1cefa6cde"><div class="ttname"><a href="remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00111">remmina_public.c:111</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ab4a593956dfe89aba3242a5c264a681f"><div class="ttname"><a href="remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo(gboolean use_icon)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00175">remmina_public.c:175</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a92025b5f6512955f9c29608b5451a12c"><div class="ttname"><a href="remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a></div><div class="ttdeci">void remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00287">remmina_public.c:287</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aea7547abe3a67e6126addc9ed91af640"><div class="ttname"><a href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a></div><div class="ttdeci">gchar * remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00659">remmina_public.c:659</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ad7c29f17323086e08ac56e1636fd41c3"><div class="ttname"><a href="remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a></div><div class="ttdeci">gboolean remmina_gtk_check_version(guint major, guint minor, guint micro)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00706">remmina_public.c:706</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a52656bbe00a83068f36337f449bdc767"><div class="ttname"><a href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a></div><div class="ttdeci">gint remmina_public_open_xdisplay(const gchar *disp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00410">remmina_public.c:410</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a95f1d68c7ab3e2a6b158db45f63538fb"><div class="ttname"><a href="remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a></div><div class="ttdeci">guint16 remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00549">remmina_public.c:549</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a12ba081432e5f32cf8287231d4779ecf"><div class="ttname"><a href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a></div><div class="ttdeci">gboolean remmina_public_get_xauth_cookie(const gchar *display, gchar **msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00379">remmina_public.c:379</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a1fac51670815da6a72700a10866c179a"><div class="ttname"><a href="remmina__public_8c.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a></div><div class="ttdeci">gboolean remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00564">remmina_public.c:564</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_adc8b77823386e00e610527d6b0b61149"><div class="ttname"><a href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a></div><div class="ttdeci">void remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00333">remmina_public.c:333</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aa5eacff7c9dab7457dd65525d01047f8"><div class="ttname"><a href="remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a></div><div class="ttdeci">void remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00130">remmina_public.c:130</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_ad1feef5a6d19225b8fcbfd0f9555306b"><div class="ttname"><a href="remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00237">remmina_public.c:237</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__public_8c.html">remmina_public.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__public_8h.html b/docs/remmina__public_8h.html
new file mode 100644
index 000000000..37d27163e
--- /dev/null
+++ b/docs/remmina__public_8h.html
@@ -0,0 +1,976 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_public.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__public_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_public.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__public_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab28356392468fbd147814f09cda6e168"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168">remmina_public_create_combo_entry</a> (const gchar *text, const gchar *def, gboolean descending)</td></tr>
+<tr class="separator:ab28356392468fbd147814f09cda6e168"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3796b536244067e9a85923b1cefa6cde"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a> (const gchar *text, const gchar *def, const gchar *empty_choice)</td></tr>
+<tr class="separator:a3796b536244067e9a85923b1cefa6cde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5eacff7c9dab7457dd65525d01047f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a> (GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice)</td></tr>
+<tr class="separator:aa5eacff7c9dab7457dd65525d01047f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a593956dfe89aba3242a5c264a681f"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a> (gboolean use_icon)</td></tr>
+<tr class="separator:ab4a593956dfe89aba3242a5c264a681f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a616258d3226ec1f1ecee6ce18aba535b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a> (const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain)</td></tr>
+<tr class="separator:a616258d3226ec1f1ecee6ce18aba535b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1feef5a6d19225b8fcbfd0f9555306b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a> (const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain)</td></tr>
+<tr class="separator:ad1feef5a6d19225b8fcbfd0f9555306b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9c70a727bfeb32730b98ce5cf7a3739"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a> (GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols)</td></tr>
+<tr class="separator:af9c70a727bfeb32730b98ce5cf7a3739"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1679d83834c8409f23e00c555d677fb"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a> (GtkComboBox *combo)</td></tr>
+<tr class="separator:af1679d83834c8409f23e00c555d677fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92025b5f6512955f9c29608b5451a12c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a> (GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</td></tr>
+<tr class="separator:a92025b5f6512955f9c29608b5451a12c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86940733e5b9cf77b276084e437dcac0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a> (const gchar *path1, const gchar *path2)</td></tr>
+<tr class="separator:a86940733e5b9cf77b276084e437dcac0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8b77823386e00e610527d6b0b61149"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a> (const gchar *server, gint defaultport, gchar **host, gint *port)</td></tr>
+<tr class="separator:adc8b77823386e00e610527d6b0b61149"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12ba081432e5f32cf8287231d4779ecf"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a> (const gchar *display, gchar **msg)</td></tr>
+<tr class="separator:a12ba081432e5f32cf8287231d4779ecf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52656bbe00a83068f36337f449bdc767"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a> (const gchar *disp)</td></tr>
+<tr class="separator:a52656bbe00a83068f36337f449bdc767"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ff5e5c4dabc3fb001125a6da14ad758"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a> (GdkScreen *screen)</td></tr>
+<tr class="separator:a7ff5e5c4dabc3fb001125a6da14ad758"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c0688cfe4ec55f8b563943aab570b25"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a> (GtkWindow *gtkwindow)</td></tr>
+<tr class="separator:a9c0688cfe4ec55f8b563943aab570b25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95f1d68c7ab3e2a6b158db45f63538fb"><td class="memItemLeft" align="right" valign="top">guint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a> (GdkKeymap *keymap, guint keyval)</td></tr>
+<tr class="separator:a95f1d68c7ab3e2a6b158db45f63538fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fac51670815da6a72700a10866c179a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a> (GdkKeymap *keymap, guint16 keycode)</td></tr>
+<tr class="separator:a1fac51670815da6a72700a10866c179a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3031598a6e4f67d1519d8e5afba7da41"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a> (gchar *filename)</td></tr>
+<tr class="separator:a3031598a6e4f67d1519d8e5afba7da41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0f480277a5929212d389b4bcdd56912"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a> (GtkWidget *widget, GtkContainer *container)</td></tr>
+<tr class="separator:ac0f480277a5929212d389b4bcdd56912"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a893f0cfe2d694ab700975f4f427ee2f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a> (const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</td></tr>
+<tr class="separator:a893f0cfe2d694ab700975f4f427ee2f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a098786d3aa6991aeba43a61e29d534d0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a> (const gchar *new_str, gchar **error)</td></tr>
+<tr class="separator:a098786d3aa6991aeba43a61e29d534d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea7547abe3a67e6126addc9ed91af640"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a> (const gchar *string, const gchar *search, const gchar *replacement)</td></tr>
+<tr class="separator:aea7547abe3a67e6126addc9ed91af640"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d7d9b3c8050545469b1af9a35b043a2"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a> (gchar *string, const gchar *search, const gchar *replacement)</td></tr>
+<tr class="separator:a8d7d9b3c8050545469b1af9a35b043a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf3fdb980c24cd06965b85ebcdd79173"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a> (const char *resolution_string, int *w, int *h)</td></tr>
+<tr class="separator:aaf3fdb980c24cd06965b85ebcdd79173"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7c29f17323086e08ac56e1636fd41c3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a> (guint major, guint minor, guint micro)</td></tr>
+<tr class="separator:ad7c29f17323086e08ac56e1636fd41c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad7c29f17323086e08ac56e1636fd41c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7c29f17323086e08ac56e1636fd41c3">&#9670;&nbsp;</a></span>remmina_gtk_check_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_gtk_check_version </td>
+ <td>(</td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>major</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>minor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>micro</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00706">706</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a86940733e5b9cf77b276084e437dcac0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86940733e5b9cf77b276084e437dcac0">&#9670;&nbsp;</a></span>remmina_public_combine_path()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_combine_path </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00323">323</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="af1679d83834c8409f23e00c555d677fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1679d83834c8409f23e00c555d677fb">&#9670;&nbsp;</a></span>remmina_public_combo_get_active_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_combo_get_active_text </td>
+ <td>(</td>
+ <td class="paramtype">GtkComboBox *&#160;</td>
+ <td class="paramname"><em>combo</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00266">266</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4a593956dfe89aba3242a5c264a681f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4a593956dfe89aba3242a5c264a681f">&#9670;&nbsp;</a></span>remmina_public_create_combo()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00175">175</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ab28356392468fbd147814f09cda6e168"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab28356392468fbd147814f09cda6e168">&#9670;&nbsp;</a></span>remmina_public_create_combo_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS GtkWidget* remmina_public_create_combo_entry </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>descending</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a616258d3226ec1f1ecee6ce18aba535b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a616258d3226ec1f1ecee6ce18aba535b">&#9670;&nbsp;</a></span>remmina_public_create_combo_map()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_map </td>
+ <td>(</td>
+ <td class="paramtype">const gpointer *&#160;</td>
+ <td class="paramname"><em>key_value_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00205">205</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ad1feef5a6d19225b8fcbfd0f9555306b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1feef5a6d19225b8fcbfd0f9555306b">&#9670;&nbsp;</a></span>remmina_public_create_combo_mapint()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_mapint </td>
+ <td>(</td>
+ <td class="paramtype">const gpointer *&#160;</td>
+ <td class="paramname"><em>key_value_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>use_icon</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>domain</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00237">237</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a3796b536244067e9a85923b1cefa6cde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3796b536244067e9a85923b1cefa6cde">&#9670;&nbsp;</a></span>remmina_public_create_combo_text_d()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_public_create_combo_text_d </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>empty_choice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="af9c70a727bfeb32730b98ce5cf7a3739"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9c70a727bfeb32730b98ce5cf7a3739">&#9670;&nbsp;</a></span>remmina_public_create_group()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_create_group </td>
+ <td>(</td>
+ <td class="paramtype">GtkGrid *&#160;</td>
+ <td class="paramname"><em>grid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>group</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>rows</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>cols</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00245">245</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a7ff5e5c4dabc3fb001125a6da14ad758"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ff5e5c4dabc3fb001125a6da14ad758">&#9670;&nbsp;</a></span>remmina_public_get_current_workspace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_public_get_current_workspace </td>
+ <td>(</td>
+ <td class="paramtype">GdkScreen *&#160;</td>
+ <td class="paramname"><em>screen</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00444">444</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a95f1d68c7ab3e2a6b158db45f63538fb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95f1d68c7ab3e2a6b158db45f63538fb">&#9670;&nbsp;</a></span>remmina_public_get_keycode_for_keyval()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint16 remmina_public_get_keycode_for_keyval </td>
+ <td>(</td>
+ <td class="paramtype">GdkKeymap *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>keyval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00549">549</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a1fac51670815da6a72700a10866c179a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1fac51670815da6a72700a10866c179a">&#9670;&nbsp;</a></span>remmina_public_get_modifier_for_keycode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_get_modifier_for_keycode </td>
+ <td>(</td>
+ <td class="paramtype">GdkKeymap *&#160;</td>
+ <td class="paramname"><em>keymap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint16&#160;</td>
+ <td class="paramname"><em>keycode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00564">564</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="adc8b77823386e00e610527d6b0b61149"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8b77823386e00e610527d6b0b61149">&#9670;&nbsp;</a></span>remmina_public_get_server_port()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_get_server_port </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>defaultport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00333">333</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a9c0688cfe4ec55f8b563943aab570b25"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c0688cfe4ec55f8b563943aab570b25">&#9670;&nbsp;</a></span>remmina_public_get_window_workspace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_public_get_window_workspace </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>gtkwindow</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00495">495</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a12ba081432e5f32cf8287231d4779ecf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a12ba081432e5f32cf8287231d4779ecf">&#9670;&nbsp;</a></span>remmina_public_get_xauth_cookie()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_get_xauth_cookie </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>display</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>msg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00379">379</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a3031598a6e4f67d1519d8e5afba7da41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3031598a6e4f67d1519d8e5afba7da41">&#9670;&nbsp;</a></span>remmina_public_gtk_builder_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* remmina_public_gtk_builder_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00576">576</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="ac0f480277a5929212d389b4bcdd56912"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0f480277a5929212d389b4bcdd56912">&#9670;&nbsp;</a></span>remmina_public_gtk_widget_reparent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_gtk_widget_reparent </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkContainer *&#160;</td>
+ <td class="paramname"><em>container</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00593">593</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aa5eacff7c9dab7457dd65525d01047f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5eacff7c9dab7457dd65525d01047f8">&#9670;&nbsp;</a></span>remmina_public_load_combo_text_d()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_load_combo_text_d </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>combo</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>def</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>empty_choice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00130">130</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a52656bbe00a83068f36337f449bdc767"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52656bbe00a83068f36337f449bdc767">&#9670;&nbsp;</a></span>remmina_public_open_xdisplay()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_public_open_xdisplay </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>disp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00410">410</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a92025b5f6512955f9c29608b5451a12c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92025b5f6512955f9c29608b5451a12c">&#9670;&nbsp;</a></span>remmina_public_popup_position()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_popup_position </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenu *&#160;</td>
+ <td class="paramname"><em>menu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean *&#160;</td>
+ <td class="paramname"><em>push_in</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00287">287</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a098786d3aa6991aeba43a61e29d534d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a098786d3aa6991aeba43a61e29d534d0">&#9670;&nbsp;</a></span>remmina_public_resolution_validation_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_public_resolution_validation_func </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar **&#160;</td>
+ <td class="paramname"><em>error</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00603">603</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a893f0cfe2d694ab700975f4f427ee2f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a893f0cfe2d694ab700975f4f427ee2f6">&#9670;&nbsp;</a></span>remmina_public_send_notification()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_public_send_notification </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00644">644</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aaf3fdb980c24cd06965b85ebcdd79173"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaf3fdb980c24cd06965b85ebcdd79173">&#9670;&nbsp;</a></span>remmina_public_split_resolution_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_public_split_resolution_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>resolution_string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00691">691</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="aea7547abe3a67e6126addc9ed91af640"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea7547abe3a67e6126addc9ed91af640">&#9670;&nbsp;</a></span>remmina_public_str_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_str_replace </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>search</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replacement</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00659">659</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+<a id="a8d7d9b3c8050545469b1af9a35b043a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d7d9b3c8050545469b1af9a35b043a2">&#9670;&nbsp;</a></span>remmina_public_str_replace_in_place()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_public_str_replace_in_place </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>search</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replacement</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__public_8c_source.html#l00682">682</a> of file <a class="el" href="remmina__public_8c_source.html">remmina_public.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__public_8h.html">remmina_public.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__public_8h.js b/docs/remmina__public_8h.js
new file mode 100644
index 000000000..533700ab5
--- /dev/null
+++ b/docs/remmina__public_8h.js
@@ -0,0 +1,28 @@
+var remmina__public_8h =
+[
+ [ "remmina_gtk_check_version", "remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3", null ],
+ [ "remmina_public_combine_path", "remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0", null ],
+ [ "remmina_public_combo_get_active_text", "remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb", null ],
+ [ "remmina_public_create_combo", "remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f", null ],
+ [ "remmina_public_create_combo_entry", "remmina__public_8h.html#ab28356392468fbd147814f09cda6e168", null ],
+ [ "remmina_public_create_combo_map", "remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b", null ],
+ [ "remmina_public_create_combo_mapint", "remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b", null ],
+ [ "remmina_public_create_combo_text_d", "remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde", null ],
+ [ "remmina_public_create_group", "remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739", null ],
+ [ "remmina_public_get_current_workspace", "remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758", null ],
+ [ "remmina_public_get_keycode_for_keyval", "remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb", null ],
+ [ "remmina_public_get_modifier_for_keycode", "remmina__public_8h.html#a1fac51670815da6a72700a10866c179a", null ],
+ [ "remmina_public_get_server_port", "remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149", null ],
+ [ "remmina_public_get_window_workspace", "remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25", null ],
+ [ "remmina_public_get_xauth_cookie", "remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf", null ],
+ [ "remmina_public_gtk_builder_new_from_file", "remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41", null ],
+ [ "remmina_public_gtk_widget_reparent", "remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912", null ],
+ [ "remmina_public_load_combo_text_d", "remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8", null ],
+ [ "remmina_public_open_xdisplay", "remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767", null ],
+ [ "remmina_public_popup_position", "remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c", null ],
+ [ "remmina_public_resolution_validation_func", "remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0", null ],
+ [ "remmina_public_send_notification", "remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6", null ],
+ [ "remmina_public_split_resolution_string", "remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173", null ],
+ [ "remmina_public_str_replace", "remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640", null ],
+ [ "remmina_public_str_replace_in_place", "remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__public_8h_source.html b/docs/remmina__public_8h_source.html
new file mode 100644
index 000000000..248895c34
--- /dev/null
+++ b/docs/remmina__public_8h_source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_public.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__public_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_public.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__public_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define IDLE_ADD gdk_threads_add_idle</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define TIMEOUT_ADD gdk_threads_add_timeout</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define CANCEL_ASYNC pthread_setcanceltype(PTHREAD_CANCEL_ASYNCHRONOUS, NULL); pthread_testcancel();</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define CANCEL_DEFER pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL);</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"> 46</span>&#160;<span class="preprocessor">#define THREADS_ENTER _Pragma(&quot;GCC error \&quot;THREADS_ENTER has been deprecated in Remmina 1.2\&quot;&quot;)</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define THREADS_LEAVE _Pragma(&quot;GCC error \&quot;THREADS_LEAVE has been deprecated in Remmina 1.2\&quot;&quot;)</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define MAX_PATH_LEN 255</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define MAX_X_DISPLAY_NUMBER 99</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define X_UNIX_SOCKET &quot;/tmp/.X11-unix/X%d&quot;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define CHAR_DELIMITOR &#39;,&#39;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define STRING_DELIMITOR &quot;,&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define STRING_DELIMITOR2 &quot;§&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">#define MOUSE_BUTTON_LEFT 1</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#define MOUSE_BUTTON_MIDDLE 2</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#define MOUSE_BUTTON_RIGHT 3</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Bind a template widget to its class member and callback */</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#define BIND_TEMPLATE_CHILD(wc, type, action, callback) \</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"> gtk_widget_class_bind_template_child(wc, type, action); \</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> gtk_widget_class_bind_template_callback(wc, callback);</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/* items is separated by STRING_DELIMTOR */</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;GtkWidget *<a class="code" href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168">remmina_public_create_combo_entry</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, gboolean descending);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;GtkWidget *<a class="code" href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, <span class="keyword">const</span> gchar *empty_choice);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a>(GtkWidget *combo, <span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gchar *def, <span class="keyword">const</span> gchar *empty_choice);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;GtkWidget *<a class="code" href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a>(gboolean use_icon);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;GtkWidget *<a class="code" href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a>(<span class="keyword">const</span> gpointer *key_value_list, <span class="keyword">const</span> gchar *def, gboolean use_icon, <span class="keyword">const</span> gchar *domain);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;GtkWidget *<a class="code" href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a>(<span class="keyword">const</span> gpointer *key_value_list, gint def, gboolean use_icon, <span class="keyword">const</span> gchar *domain);</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"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a>(GtkGrid *grid, <span class="keyword">const</span> gchar *group, gint row, gint rows, gint cols);</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;gchar *<a class="code" href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a>(GtkComboBox *combo);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#if !GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* A function for gtk_menu_popup to get the position right below the widget specified by user_data */</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a>(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* Combine two paths into one by correctly handling trailing slash. Return newly allocated string */</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;gchar *<a class="code" href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(<span class="keyword">const</span> gchar *path1, <span class="keyword">const</span> gchar *path2);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Parse a server entry with server name and port */</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(<span class="keyword">const</span> gchar *server, gint defaultport, gchar **host, gint *port);</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">/* X */</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;gboolean <a class="code" href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a>(<span class="keyword">const</span> gchar *display, gchar **msg);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;gint <a class="code" href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a>(<span class="keyword">const</span> gchar *disp);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;guint <a class="code" href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a>(GdkScreen *screen);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;guint <a class="code" href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a>(GtkWindow *gtkwindow);</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="comment">/* Find hardware keycode for the requested keyval */</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;guint16 <a class="code" href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a>(GdkKeymap *keymap, guint keyval);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">/* Check if the requested keycode is a key modifier */</span></div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;gboolean <a class="code" href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a>(GdkKeymap *keymap, guint16 keycode);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* Load a GtkBuilder object from a filename */</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;GtkBuilder *<a class="code" href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(gchar *filename);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment">/* Change parent container for a widget */</span></div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a>(GtkWidget *widget, GtkContainer *container);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">/* Used to send desktop notifications */</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a>(<span class="keyword">const</span> gchar *notification_id, <span class="keyword">const</span> gchar *notification_title, <span class="keyword">const</span> gchar *notification_message);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment">/* Validate the inserted value for a new resolution */</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;gboolean <a class="code" href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a>(<span class="keyword">const</span> gchar *new_str, gchar **error);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment">/* Replaces all occurrences of search in a new copy of string by replacement. */</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;gchar *<a class="code" href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a>(<span class="keyword">const</span> gchar *<span class="keywordtype">string</span>, <span class="keyword">const</span> gchar *search, <span class="keyword">const</span> gchar *replacement);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment">/* Replaces all occurrences of search in a new copy of string by replacement</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> * and overwrites the original string */</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;gchar *<a class="code" href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a>(gchar *<span class="keywordtype">string</span>, <span class="keyword">const</span> gchar *search, <span class="keyword">const</span> gchar *replacement);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">int</span> <a class="code" href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *resolution_string, <span class="keywordtype">int</span> *w, <span class="keywordtype">int</span> *h);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;gboolean <a class="code" href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a>(guint major, guint minor, guint micro);</div><div class="ttc" id="remmina__public_8h_html_ad1feef5a6d19225b8fcbfd0f9555306b"><div class="ttname"><a href="remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b">remmina_public_create_combo_mapint</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00237">remmina_public.c:237</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a893f0cfe2d694ab700975f4f427ee2f6"><div class="ttname"><a href="remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a></div><div class="ttdeci">void remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00644">remmina_public.c:644</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_af1679d83834c8409f23e00c555d677fb"><div class="ttname"><a href="remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb">remmina_public_combo_get_active_text</a></div><div class="ttdeci">gchar * remmina_public_combo_get_active_text(GtkComboBox *combo)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00266">remmina_public.c:266</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a12ba081432e5f32cf8287231d4779ecf"><div class="ttname"><a href="remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a></div><div class="ttdeci">gboolean remmina_public_get_xauth_cookie(const gchar *display, gchar **msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00379">remmina_public.c:379</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_ad7c29f17323086e08ac56e1636fd41c3"><div class="ttname"><a href="remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3">remmina_gtk_check_version</a></div><div class="ttdeci">gboolean remmina_gtk_check_version(guint major, guint minor, guint micro)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00706">remmina_public.c:706</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a86940733e5b9cf77b276084e437dcac0"><div class="ttname"><a href="remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a></div><div class="ttdeci">gchar * remmina_public_combine_path(const gchar *path1, const gchar *path2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00323">remmina_public.c:323</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_af9c70a727bfeb32730b98ce5cf7a3739"><div class="ttname"><a href="remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739">remmina_public_create_group</a></div><div class="ttdeci">void remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00245">remmina_public.c:245</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a7ff5e5c4dabc3fb001125a6da14ad758"><div class="ttname"><a href="remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758">remmina_public_get_current_workspace</a></div><div class="ttdeci">guint remmina_public_get_current_workspace(GdkScreen *screen)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00444">remmina_public.c:444</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_adc8b77823386e00e610527d6b0b61149"><div class="ttname"><a href="remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a></div><div class="ttdeci">void remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00333">remmina_public.c:333</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_ab28356392468fbd147814f09cda6e168"><div class="ttname"><a href="remmina__public_8h.html#ab28356392468fbd147814f09cda6e168">remmina_public_create_combo_entry</a></div><div class="ttdeci">G_BEGIN_DECLS GtkWidget * remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00062">remmina_public.c:62</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a8d7d9b3c8050545469b1af9a35b043a2"><div class="ttname"><a href="remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2">remmina_public_str_replace_in_place</a></div><div class="ttdeci">gchar * remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00682">remmina_public.c:682</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a9c0688cfe4ec55f8b563943aab570b25"><div class="ttname"><a href="remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25">remmina_public_get_window_workspace</a></div><div class="ttdeci">guint remmina_public_get_window_workspace(GtkWindow *gtkwindow)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00495">remmina_public.c:495</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_ab4a593956dfe89aba3242a5c264a681f"><div class="ttname"><a href="remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f">remmina_public_create_combo</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo(gboolean use_icon)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00175">remmina_public.c:175</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_aea7547abe3a67e6126addc9ed91af640"><div class="ttname"><a href="remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a></div><div class="ttdeci">gchar * remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00659">remmina_public.c:659</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_aa5eacff7c9dab7457dd65525d01047f8"><div class="ttname"><a href="remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8">remmina_public_load_combo_text_d</a></div><div class="ttdeci">void remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00130">remmina_public.c:130</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a616258d3226ec1f1ecee6ce18aba535b"><div class="ttname"><a href="remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b">remmina_public_create_combo_map</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00205">remmina_public.c:205</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a3796b536244067e9a85923b1cefa6cde"><div class="ttname"><a href="remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde">remmina_public_create_combo_text_d</a></div><div class="ttdeci">GtkWidget * remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00111">remmina_public.c:111</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a52656bbe00a83068f36337f449bdc767"><div class="ttname"><a href="remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a></div><div class="ttdeci">gint remmina_public_open_xdisplay(const gchar *disp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00410">remmina_public.c:410</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a098786d3aa6991aeba43a61e29d534d0"><div class="ttname"><a href="remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0">remmina_public_resolution_validation_func</a></div><div class="ttdeci">gboolean remmina_public_resolution_validation_func(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00603">remmina_public.c:603</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a95f1d68c7ab3e2a6b158db45f63538fb"><div class="ttname"><a href="remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb">remmina_public_get_keycode_for_keyval</a></div><div class="ttdeci">guint16 remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00549">remmina_public.c:549</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a1fac51670815da6a72700a10866c179a"><div class="ttname"><a href="remmina__public_8h.html#a1fac51670815da6a72700a10866c179a">remmina_public_get_modifier_for_keycode</a></div><div class="ttdeci">gboolean remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00564">remmina_public.c:564</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_a92025b5f6512955f9c29608b5451a12c"><div class="ttname"><a href="remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c">remmina_public_popup_position</a></div><div class="ttdeci">void remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00287">remmina_public.c:287</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_aaf3fdb980c24cd06965b85ebcdd79173"><div class="ttname"><a href="remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173">remmina_public_split_resolution_string</a></div><div class="ttdeci">int remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00691">remmina_public.c:691</a></div></div>
+<div class="ttc" id="remmina__public_8h_html_ac0f480277a5929212d389b4bcdd56912"><div class="ttname"><a href="remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912">remmina_public_gtk_widget_reparent</a></div><div class="ttdeci">void remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00593">remmina_public.c:593</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__public_8h.html">remmina_public.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scheduler_8c.html b/docs/remmina__scheduler_8c.html
new file mode 100644
index 000000000..6a721c543
--- /dev/null
+++ b/docs/remmina__scheduler_8c.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scheduler.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scheduler_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_scheduler.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__scheduler_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abdee2f0b202662d50de1f6e5835f81f1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler_periodic_check</a> (gpointer user_data)</td></tr>
+<tr class="separator:abdee2f0b202662d50de1f6e5835f81f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ee49eb86004b98070d1514c2612251a"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a> (GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</td></tr>
+<tr class="separator:a8ee49eb86004b98070d1514c2612251a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ec9e251c8905474dc8581fe7729839b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b">remmina_schedluer_remove</a> (void *s)</td></tr>
+<tr class="separator:a7ec9e251c8905474dc8581fe7729839b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7ec9e251c8905474dc8581fe7729839b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ec9e251c8905474dc8581fe7729839b">&#9670;&nbsp;</a></span>remmina_schedluer_remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_schedluer_remove </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8c_source.html#l00084">84</a> of file <a class="el" href="remmina__scheduler_8c_source.html">remmina_scheduler.c</a>.</p>
+
+</div>
+</div>
+<a id="abdee2f0b202662d50de1f6e5835f81f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abdee2f0b202662d50de1f6e5835f81f1">&#9670;&nbsp;</a></span>remmina_scheduler_periodic_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_scheduler_periodic_check </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8c_source.html#l00043">43</a> of file <a class="el" href="remmina__scheduler_8c_source.html">remmina_scheduler.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ee49eb86004b98070d1514c2612251a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ee49eb86004b98070d1514c2612251a">&#9670;&nbsp;</a></span>remmina_scheduler_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* remmina_scheduler_setup </td>
+ <td>(</td>
+ <td class="paramtype">GSourceFunc&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>cb_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>first_interval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>interval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__scheduler_8c_source.html">remmina_scheduler.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scheduler_8c.html">remmina_scheduler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scheduler_8c.js b/docs/remmina__scheduler_8c.js
new file mode 100644
index 000000000..d789e85ae
--- /dev/null
+++ b/docs/remmina__scheduler_8c.js
@@ -0,0 +1,6 @@
+var remmina__scheduler_8c =
+[
+ [ "remmina_schedluer_remove", "remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b", null ],
+ [ "remmina_scheduler_periodic_check", "remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1", null ],
+ [ "remmina_scheduler_setup", "remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__scheduler_8c_source.html b/docs/remmina__scheduler_8c_source.html
new file mode 100644
index 000000000..f433d5a7b
--- /dev/null
+++ b/docs/remmina__scheduler_8c_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scheduler.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scheduler_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_scheduler.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__scheduler_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__scheduler_8h.html">remmina_scheduler.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1"> 43</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler_periodic_check</a>(gpointer user_data)</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="structrs_sched_data.html">rsSchedData</a> *rssd = (<a class="code" href="structrs_sched_data.html">rsSchedData</a> *)user_data;</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; rssd-&gt;<a class="code" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">count</a>++;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">if</span> (rssd-&gt;<a class="code" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">cb_func_ptr</a>(rssd-&gt;<a class="code" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">cb_func_data</a>) == G_SOURCE_REMOVE) {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; g_free(rssd);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">if</span> (rssd-&gt;<a class="code" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">count</a> &lt;= 1) {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">source</a> = g_timeout_add_full(G_PRIORITY_LOW,</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">interval</a>,</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler_periodic_check</a>,</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; rssd,</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; NULL);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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="keywordflow">return</span> G_SOURCE_CONTINUE;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6"> 64</a></span>&#160;<span class="keywordtype">void</span> *<a class="code" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a>(GSourceFunc cb,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; gpointer cb_data,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; guint first_interval,</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; guint interval)</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; <a class="code" href="structrs_sched_data.html">rsSchedData</a> *rssd;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; rssd = g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structrs_sched_data.html">rsSchedData</a>));</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">cb_func_ptr</a> = cb;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">cb_func_data</a> = cb_data;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">interval</a> = interval;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">count</a> = 0;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; rssd-&gt;<a class="code" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">source</a> = g_timeout_add_full(G_PRIORITY_LOW,</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; first_interval,</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler_periodic_check</a>,</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; rssd,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; NULL);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">void</span> *)rssd;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;}</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b"> 84</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b">remmina_schedluer_remove</a>(<span class="keywordtype">void</span> *s)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="structrs_sched_data.html">rsSchedData</a> *rssd = (<a class="code" href="structrs_sched_data.html">rsSchedData</a> *)s;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; g_source_remove(rssd-&gt;<a class="code" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">source</a>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; g_free(rssd);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;}</div><div class="ttc" id="structrs_sched_data_html_a34966a9585c2e38ec36b3ea41517356f"><div class="ttname"><a href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">rsSchedData::interval</a></div><div class="ttdeci">guint interval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00040">remmina_scheduler.h:40</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_aa3dd8912a9d32cb7e5600caea5cc2646"><div class="ttname"><a href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">rsSchedData::cb_func_ptr</a></div><div class="ttdeci">GSourceFunc cb_func_ptr</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00038">remmina_scheduler.h:38</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a758a3750f1e3d5e412daf35344f47688"><div class="ttname"><a href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">rsSchedData::source</a></div><div class="ttdeci">guint source</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00041">remmina_scheduler.h:41</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="structrs_sched_data_html"><div class="ttname"><a href="structrs_sched_data.html">rsSchedData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00037">remmina_scheduler.h:37</a></div></div>
+<div class="ttc" id="remmina__scheduler_8c_html_a8ee49eb86004b98070d1514c2612251a"><div class="ttname"><a href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a></div><div class="ttdeci">void * remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00064">remmina_scheduler.c:64</a></div></div>
+<div class="ttc" id="remmina__scheduler_8h_html"><div class="ttname"><a href="remmina__scheduler_8h.html">remmina_scheduler.h</a></div></div>
+<div class="ttc" id="remmina__scheduler_8c_html_abdee2f0b202662d50de1f6e5835f81f1"><div class="ttname"><a href="remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1">remmina_scheduler_periodic_check</a></div><div class="ttdeci">static gboolean remmina_scheduler_periodic_check(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00043">remmina_scheduler.c:43</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a6f5ced4584fcb4e1f6379249ef967a6b"><div class="ttname"><a href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">rsSchedData::cb_func_data</a></div><div class="ttdeci">gpointer cb_func_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00039">remmina_scheduler.h:39</a></div></div>
+<div class="ttc" id="remmina__scheduler_8c_html_a7ec9e251c8905474dc8581fe7729839b"><div class="ttname"><a href="remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b">remmina_schedluer_remove</a></div><div class="ttdeci">void remmina_schedluer_remove(void *s)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00084">remmina_scheduler.c:84</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a1747344f64896feb08c863ec2cf2528e"><div class="ttname"><a href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">rsSchedData::count</a></div><div class="ttdeci">guint count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00042">remmina_scheduler.h:42</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scheduler_8c.html">remmina_scheduler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scheduler_8h.html b/docs/remmina__scheduler_8h.html
new file mode 100644
index 000000000..2c8ff8bf0
--- /dev/null
+++ b/docs/remmina__scheduler_8h.html
@@ -0,0 +1,160 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scheduler.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scheduler_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_scheduler.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__scheduler_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html">rsSchedData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5d69b073538851d85534b3090cf75da6"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6">remmina_scheduler_setup</a> (GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</td></tr>
+<tr class="separator:a5d69b073538851d85534b3090cf75da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a5d69b073538851d85534b3090cf75da6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d69b073538851d85534b3090cf75da6">&#9670;&nbsp;</a></span>remmina_scheduler_setup()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void* remmina_scheduler_setup </td>
+ <td>(</td>
+ <td class="paramtype">GSourceFunc&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>cb_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>first_interval</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>interval</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__scheduler_8c_source.html">remmina_scheduler.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scheduler_8h.html">remmina_scheduler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scheduler_8h.js b/docs/remmina__scheduler_8h.js
new file mode 100644
index 000000000..2a5cd74df
--- /dev/null
+++ b/docs/remmina__scheduler_8h.js
@@ -0,0 +1,5 @@
+var remmina__scheduler_8h =
+[
+ [ "rsSchedData", "structrs_sched_data.html", "structrs_sched_data" ],
+ [ "remmina_scheduler_setup", "remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__scheduler_8h_source.html b/docs/remmina__scheduler_8h_source.html
new file mode 100644
index 000000000..fa1035bb4
--- /dev/null
+++ b/docs/remmina__scheduler_8h_source.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scheduler.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scheduler_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_scheduler.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__scheduler_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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"><a class="line" href="structrs_sched_data.html"> 37</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646"> 38</a></span>&#160; GSourceFunc <a class="code" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">cb_func_ptr</a>;</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b"> 39</a></span>&#160; gpointer <a class="code" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">cb_func_data</a>;</div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f"> 40</a></span>&#160; guint <a class="code" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">interval</a>;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688"> 41</a></span>&#160; guint <a class="code" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">source</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e"> 42</a></span>&#160; guint <a class="code" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">count</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;} <a class="code" href="structrs_sched_data.html">rsSchedData</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6">remmina_scheduler_setup</a>(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;G_END_DECLS</div><div class="ttc" id="structrs_sched_data_html_a34966a9585c2e38ec36b3ea41517356f"><div class="ttname"><a href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">rsSchedData::interval</a></div><div class="ttdeci">guint interval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00040">remmina_scheduler.h:40</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_aa3dd8912a9d32cb7e5600caea5cc2646"><div class="ttname"><a href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">rsSchedData::cb_func_ptr</a></div><div class="ttdeci">GSourceFunc cb_func_ptr</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00038">remmina_scheduler.h:38</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a758a3750f1e3d5e412daf35344f47688"><div class="ttname"><a href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">rsSchedData::source</a></div><div class="ttdeci">guint source</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00041">remmina_scheduler.h:41</a></div></div>
+<div class="ttc" id="structrs_sched_data_html"><div class="ttname"><a href="structrs_sched_data.html">rsSchedData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00037">remmina_scheduler.h:37</a></div></div>
+<div class="ttc" id="remmina__scheduler_8h_html_a5d69b073538851d85534b3090cf75da6"><div class="ttname"><a href="remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6">remmina_scheduler_setup</a></div><div class="ttdeci">G_BEGIN_DECLS void * remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00064">remmina_scheduler.c:64</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a6f5ced4584fcb4e1f6379249ef967a6b"><div class="ttname"><a href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">rsSchedData::cb_func_data</a></div><div class="ttdeci">gpointer cb_func_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00039">remmina_scheduler.h:39</a></div></div>
+<div class="ttc" id="structrs_sched_data_html_a1747344f64896feb08c863ec2cf2528e"><div class="ttname"><a href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">rsSchedData::count</a></div><div class="ttdeci">guint count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8h_source.html#l00042">remmina_scheduler.h:42</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scheduler_8h.html">remmina_scheduler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scrolled__viewport_8c.html b/docs/remmina__scrolled__viewport_8c.html
new file mode 100644
index 000000000..b2edbb407
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8c.html
@@ -0,0 +1,460 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scrolled_viewport.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scrolled__viewport_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_scrolled_viewport.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__scrolled__viewport_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad01fdfbbca6cbe5328f5fbdac7885a1d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d">G_DEFINE_TYPE</a> (<a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a>, remmina_scrolled_viewport, GTK_TYPE_EVENT_BOX)</td></tr>
+<tr class="separator:ad01fdfbbca6cbe5328f5fbdac7885a1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93b878c7daeeaf0d90e6795921e21ca0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport_get_preferred_height</a> (GtkWidget *widget, gint *minimum_height, gint *natural_height)</td></tr>
+<tr class="separator:a93b878c7daeeaf0d90e6795921e21ca0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6821a1bbe2dbd787512236a68493b4f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport_motion_timeout</a> (gpointer data)</td></tr>
+<tr class="separator:ab6821a1bbe2dbd787512236a68493b4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06419d58d2ab93bc593ead674eb7cb5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport_enter</a> (GtkWidget *widget, GdkEventCrossing *event, gpointer data)</td></tr>
+<tr class="separator:ac06419d58d2ab93bc593ead674eb7cb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d6732462f9ec91d0c00e96bd0c3692e"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport_leave</a> (GtkWidget *widget, GdkEventCrossing *event, gpointer data)</td></tr>
+<tr class="separator:a9d6732462f9ec91d0c00e96bd0c3692e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4125a8458ff5e18fb10be420921e01c7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport_destroy</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a4125a8458ff5e18fb10be420921e01c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9efdaaa5d040cbad9f03bd2100caf011"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011">remmina_scrolled_viewport_class_init</a> (<a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a> *klass)</td></tr>
+<tr class="separator:a9efdaaa5d040cbad9f03bd2100caf011"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c516b192a3a2f00b6f2185bf0f7bd9b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b">remmina_scrolled_viewport_init</a> (<a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *gsv)</td></tr>
+<tr class="separator:a9c516b192a3a2f00b6f2185bf0f7bd9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ba56f429a9c1ec05b093f5f78be692c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a> (<a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *gsv)</td></tr>
+<tr class="separator:a0ba56f429a9c1ec05b093f5f78be692c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadfe00c3960eab12d17bdb47495dd1ee"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a> (void)</td></tr>
+<tr class="separator:aadfe00c3960eab12d17bdb47495dd1ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad01fdfbbca6cbe5328f5fbdac7885a1d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad01fdfbbca6cbe5328f5fbdac7885a1d">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_scrolled_viewport&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTK_TYPE_EVENT_BOX&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00043">43</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a9efdaaa5d040cbad9f03bd2100caf011"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9efdaaa5d040cbad9f03bd2100caf011">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_scrolled_viewport_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00158">158</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a4125a8458ff5e18fb10be420921e01c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4125a8458ff5e18fb10be420921e01c7">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_scrolled_viewport_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00152">152</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="ac06419d58d2ab93bc593ead674eb7cb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac06419d58d2ab93bc593ead674eb7cb5">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_enter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_scrolled_viewport_enter </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00136">136</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a93b878c7daeeaf0d90e6795921e21ca0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93b878c7daeeaf0d90e6795921e21ca0">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_get_preferred_height()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_scrolled_viewport_get_preferred_height </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>minimum_height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>natural_height</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a9c516b192a3a2f00b6f2185bf0f7bd9b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c516b192a3a2f00b6f2185bf0f7bd9b">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_scrolled_viewport_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *&#160;</td>
+ <td class="paramname"><em>gsv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00169">169</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d6732462f9ec91d0c00e96bd0c3692e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d6732462f9ec91d0c00e96bd0c3692e">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_leave()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_scrolled_viewport_leave </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventCrossing *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00143">143</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="ab6821a1bbe2dbd787512236a68493b4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6821a1bbe2dbd787512236a68493b4f">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_motion_timeout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_scrolled_viewport_motion_timeout </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="aadfe00c3960eab12d17bdb47495dd1ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadfe00c3960eab12d17bdb47495dd1ee">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_scrolled_viewport_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00185">185</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a0ba56f429a9c1ec05b093f5f78be692c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ba56f429a9c1ec05b093f5f78be692c">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_remove_motion()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_scrolled_viewport_remove_motion </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *&#160;</td>
+ <td class="paramname"><em>gsv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00174">174</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scrolled__viewport_8c.html">remmina_scrolled_viewport.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scrolled__viewport_8c.js b/docs/remmina__scrolled__viewport_8c.js
new file mode 100644
index 000000000..febe490eb
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8c.js
@@ -0,0 +1,13 @@
+var remmina__scrolled__viewport_8c =
+[
+ [ "G_DEFINE_TYPE", "remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d", null ],
+ [ "remmina_scrolled_viewport_class_init", "remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011", null ],
+ [ "remmina_scrolled_viewport_destroy", "remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7", null ],
+ [ "remmina_scrolled_viewport_enter", "remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5", null ],
+ [ "remmina_scrolled_viewport_get_preferred_height", "remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0", null ],
+ [ "remmina_scrolled_viewport_init", "remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b", null ],
+ [ "remmina_scrolled_viewport_leave", "remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e", null ],
+ [ "remmina_scrolled_viewport_motion_timeout", "remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f", null ],
+ [ "remmina_scrolled_viewport_new", "remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee", null ],
+ [ "remmina_scrolled_viewport_remove_motion", "remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__scrolled__viewport_8c_source.html b/docs/remmina__scrolled__viewport_8c_source.html
new file mode 100644
index 000000000..3971183de
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8c_source.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scrolled_viewport.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scrolled__viewport_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_scrolled_viewport.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__scrolled__viewport_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 - 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-2020 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 &lt;gtk/gtk.h&gt;</span></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 &quot;<a class="code" href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d"> 43</a></span>&#160;<a class="code" href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d">G_DEFINE_TYPE</a>( <a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a>, remmina_scrolled_viewport, GTK_TYPE_EVENT_BOX)</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> remmina_scrolled_viewport_get_preferred_width(GtkWidget* widget, gint* minimum_width, gint* natural_width)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">/* Just return a fake small size, so gtk_window_fullscreen() will not fail</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> * because our content is too big*/</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">if</span> (minimum_width != NULL) *minimum_width = 100;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">if</span> (natural_width != NULL) *natural_width = 100;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0"> 54</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport_get_preferred_height</a>(GtkWidget* widget, gint* minimum_height, gint* natural_height)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;{</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* Just return a fake small size, so gtk_window_fullscreen() will not fail</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> * because our content is too big*/</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (minimum_height != NULL) *minimum_height = 100;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (natural_height != NULL) *natural_height = 100;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;}</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Event handler when mouse move on borders */</span></div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f"> 64</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport_motion_timeout</a>(gpointer data)</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; GtkWidget *child;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; GdkDisplay *display;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; GdkSeat *seat;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; GdkDeviceManager *device_manager;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; GdkDevice *pointer;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; GdkScreen *screen;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; GdkWindow *gsvwin;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; gint x, y, mx, my, w, h, rootx, rooty;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; GtkAdjustment *adj;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; gdouble value;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (!REMMINA_IS_SCROLLED_VIEWPORT(data))</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_BIN(data))</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; gsv = REMMINA_SCROLLED_VIEWPORT(data);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (!gsv || !gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a>)</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; child = gtk_bin_get_child(GTK_BIN(gsv));</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (!GTK_IS_VIEWPORT(child))</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> FALSE;</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; gsvwin = gtk_widget_get_window(GTK_WIDGET(gsv));</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span> (!gsv)</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; display = gdk_display_get_default();</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (!display)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 20, 0)</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; seat = gdk_display_get_default_seat(display);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; pointer = gdk_seat_get_pointer(seat);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; device_manager = gdk_display_get_device_manager(display);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; pointer = gdk_device_manager_get_client_pointer(device_manager);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; gdk_device_get_position(pointer, &amp;screen, &amp;x, &amp;y);</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; w = gdk_window_get_width(gsvwin) + SCROLL_BORDER_SIZE; <span class="comment">// Add 2px of black scroll border</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; h = gdk_window_get_height(gsvwin) + SCROLL_BORDER_SIZE; <span class="comment">// Add 2px of black scroll border</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; gdk_window_get_root_origin(gsvwin, &amp;rootx, &amp;rooty );</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; x -= rootx;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; y -= rooty;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; mx = (x &lt;= 0 ? -1 : (x &gt;= w - 1 ? 1 : 0));</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; my = (y &lt;= 0 ? -1 : (y &gt;= h - 1 ? 1 : 0));</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span> (mx != 0) {</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; gint step = MAX(10, MIN(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a>, w / 5));</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; adj = gtk_scrollable_get_hadjustment(GTK_SCROLLABLE(child));</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; value = gtk_adjustment_get_value(GTK_ADJUSTMENT(adj)) + (gdouble)(mx * step);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; value = MAX(0, MIN(value, gtk_adjustment_get_upper(GTK_ADJUSTMENT(adj)) - (gdouble)w + 2.0));</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gtk_adjustment_set_value(GTK_ADJUSTMENT(adj), value);</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"> 126</span>&#160; <span class="keywordflow">if</span> (my != 0) {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; gint step = MAX(10, MIN(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a>, h / 5));</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; adj = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE(child));</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; value = gtk_adjustment_get_value(GTK_ADJUSTMENT(adj)) + (gdouble)(my * step);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; value = MAX(0, MIN(value, gtk_adjustment_get_upper(GTK_ADJUSTMENT(adj)) - (gdouble)h + 2.0));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; gtk_adjustment_set_value(GTK_ADJUSTMENT(adj), value);</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="keywordflow">return</span> TRUE;</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="l00136"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5"> 136</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport_enter</a>(GtkWidget *widget, GdkEventCrossing *event, gpointer data)</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;{</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a>(REMMINA_SCROLLED_VIEWPORT(widget));</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;}</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"><a class="line" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e"> 143</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport_leave</a>(GtkWidget *widget, GdkEventCrossing *event, gpointer data)</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;{</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv = REMMINA_SCROLLED_VIEWPORT(widget);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a> = TRUE;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a> = g_timeout_add(20, <a class="code" href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport_motion_timeout</a>, gsv);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;}</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"><a class="line" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7"> 152</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport_destroy</a>(GtkWidget *widget, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a>(REMMINA_SCROLLED_VIEWPORT(widget));</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;</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011"> 158</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011">remmina_scrolled_viewport_class_init</a>(<a class="code" href="struct___remmina_scrolled_viewport_class.html">RemminaScrolledViewportClass</a> *klass)</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;{</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; GtkWidgetClass *widget_class;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; widget_class = (GtkWidgetClass*)klass;</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"> 164</span>&#160; widget_class-&gt;get_preferred_width = remmina_scrolled_viewport_get_preferred_width;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; widget_class-&gt;get_preferred_height = <a class="code" href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport_get_preferred_height</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</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;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b"> 169</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b">remmina_scrolled_viewport_init</a>(<a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;{</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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"><a class="line" href="remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c"> 174</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a>(<a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span> (gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a>) {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a> = FALSE;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; g_source_remove(gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a>);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a> = 0;</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;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;GtkWidget*</div><div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee"> 185</a></span>&#160;<a class="code" href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; gsv = REMMINA_SCROLLED_VIEWPORT(g_object_new(REMMINA_TYPE_SCROLLED_VIEWPORT, NULL));</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; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a> = FALSE;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; gsv-&gt;<a class="code" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a> = 0;</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; gtk_widget_set_size_request(GTK_WIDGET(gsv), 1, 1);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gtk_widget_add_events(GTK_WIDGET(gsv), GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; g_signal_connect(G_OBJECT(gsv), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport_destroy</a>), NULL);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; g_signal_connect(G_OBJECT(gsv), <span class="stringliteral">&quot;enter-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport_enter</a>), NULL);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_signal_connect(G_OBJECT(gsv), <span class="stringliteral">&quot;leave-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport_leave</a>), NULL);</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; <span class="keywordflow">return</span> GTK_WIDGET(gsv);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;}</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div><div class="ttc" id="remmina__scrolled__viewport_8c_html_ab6821a1bbe2dbd787512236a68493b4f"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f">remmina_scrolled_viewport_motion_timeout</a></div><div class="ttdeci">static gboolean remmina_scrolled_viewport_motion_timeout(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00064">remmina_scrolled_viewport.c:64</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_a9efdaaa5d040cbad9f03bd2100caf011"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011">remmina_scrolled_viewport_class_init</a></div><div class="ttdeci">static void remmina_scrolled_viewport_class_init(RemminaScrolledViewportClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00158">remmina_scrolled_viewport.c:158</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#l00174">remmina_scrolled_viewport.c:174</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html_add486b5b8eb2bfe130e94e2a7a1275af"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">_RemminaScrolledViewport::viewport_motion</a></div><div class="ttdeci">gboolean viewport_motion</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00057">remmina_scrolled_viewport.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a65a1f2b90d033425fd0c041fccae320c"><div class="ttname"><a href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">_RemminaPref::auto_scroll_step</a></div><div class="ttdeci">gint auto_scroll_step</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00125">remmina_pref.h:125</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00053">remmina_scrolled_viewport.h:53</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_a9c516b192a3a2f00b6f2185bf0f7bd9b"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b">remmina_scrolled_viewport_init</a></div><div class="ttdeci">static void remmina_scrolled_viewport_init(RemminaScrolledViewport *gsv)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00169">remmina_scrolled_viewport.c:169</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_a4125a8458ff5e18fb10be420921e01c7"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7">remmina_scrolled_viewport_destroy</a></div><div class="ttdeci">static void remmina_scrolled_viewport_destroy(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00152">remmina_scrolled_viewport.c:152</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_a9d6732462f9ec91d0c00e96bd0c3692e"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e">remmina_scrolled_viewport_leave</a></div><div class="ttdeci">static gboolean remmina_scrolled_viewport_leave(GtkWidget *widget, GdkEventCrossing *event, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00143">remmina_scrolled_viewport.c:143</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_aadfe00c3960eab12d17bdb47495dd1ee"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a></div><div class="ttdeci">GtkWidget * remmina_scrolled_viewport_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00185">remmina_scrolled_viewport.c:185</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_ac06419d58d2ab93bc593ead674eb7cb5"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5">remmina_scrolled_viewport_enter</a></div><div class="ttdeci">static gboolean remmina_scrolled_viewport_enter(GtkWidget *widget, GdkEventCrossing *event, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00136">remmina_scrolled_viewport.c:136</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_a93b878c7daeeaf0d90e6795921e21ca0"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0">remmina_scrolled_viewport_get_preferred_height</a></div><div class="ttdeci">static void remmina_scrolled_viewport_get_preferred_height(GtkWidget *widget, gint *minimum_height, gint *natural_height)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00054">remmina_scrolled_viewport.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_class_html"><div class="ttname"><a href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00061">remmina_scrolled_viewport.h:61</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#l00073">rcw.c:73</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="struct___remmina_scrolled_viewport_html_aed56f5dfabf67c663eeddbe154734966"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">_RemminaScrolledViewport::viewport_motion_handler</a></div><div class="ttdeci">guint viewport_motion_handler</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00058">remmina_scrolled_viewport.h:58</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8c_html_ad01fdfbbca6cbe5328f5fbdac7885a1d"><div class="ttname"><a href="remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaScrolledViewport, remmina_scrolled_viewport, GTK_TYPE_EVENT_BOX)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00043">remmina_scrolled_viewport.c:43</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scrolled__viewport_8c.html">remmina_scrolled_viewport.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scrolled__viewport_8h.html b/docs/remmina__scrolled__viewport_8h.html
new file mode 100644
index 000000000..cdcdb33be
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8h.html
@@ -0,0 +1,219 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scrolled_viewport.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scrolled__viewport_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_scrolled_viewport.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__scrolled__viewport_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a6780b29de78ebf1320efd4726a48080f"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a></td></tr>
+<tr class="separator:a6780b29de78ebf1320efd4726a48080f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b7419b88e9d80b9b28effc5ddbbf036"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a></td></tr>
+<tr class="separator:a9b7419b88e9d80b9b28effc5ddbbf036"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a233033bbbbeb18a654ca3610ab319312"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312">remmina_scrolled_viewport_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:a233033bbbbeb18a654ca3610ab319312"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadfe00c3960eab12d17bdb47495dd1ee"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a> (void)</td></tr>
+<tr class="separator:aadfe00c3960eab12d17bdb47495dd1ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ba56f429a9c1ec05b093f5f78be692c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a> (<a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *gsv)</td></tr>
+<tr class="separator:a0ba56f429a9c1ec05b093f5f78be692c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a6780b29de78ebf1320efd4726a48080f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6780b29de78ebf1320efd4726a48080f">&#9670;&nbsp;</a></span>RemminaScrolledViewport</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a> <a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a9b7419b88e9d80b9b28effc5ddbbf036"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b7419b88e9d80b9b28effc5ddbbf036">&#9670;&nbsp;</a></span>RemminaScrolledViewportClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a> <a class="el" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a233033bbbbeb18a654ca3610ab319312"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a233033bbbbeb18a654ca3610ab319312">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_scrolled_viewport_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aadfe00c3960eab12d17bdb47495dd1ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadfe00c3960eab12d17bdb47495dd1ee">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_scrolled_viewport_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00185">185</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+<a id="a0ba56f429a9c1ec05b093f5f78be692c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ba56f429a9c1ec05b093f5f78be692c">&#9670;&nbsp;</a></span>remmina_scrolled_viewport_remove_motion()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_scrolled_viewport_remove_motion </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a> *&#160;</td>
+ <td class="paramname"><em>gsv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8c_source.html#l00174">174</a> of file <a class="el" href="remmina__scrolled__viewport_8c_source.html">remmina_scrolled_viewport.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__scrolled__viewport_8h.js b/docs/remmina__scrolled__viewport_8h.js
new file mode 100644
index 000000000..c75b3c685
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8h.js
@@ -0,0 +1,10 @@
+var remmina__scrolled__viewport_8h =
+[
+ [ "_RemminaScrolledViewport", "struct___remmina_scrolled_viewport.html", "struct___remmina_scrolled_viewport" ],
+ [ "_RemminaScrolledViewportClass", "struct___remmina_scrolled_viewport_class.html", "struct___remmina_scrolled_viewport_class" ],
+ [ "RemminaScrolledViewport", "remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f", null ],
+ [ "RemminaScrolledViewportClass", "remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036", null ],
+ [ "remmina_scrolled_viewport_get_type", "remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312", null ],
+ [ "remmina_scrolled_viewport_new", "remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee", null ],
+ [ "remmina_scrolled_viewport_remove_motion", "remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__scrolled__viewport_8h_source.html b/docs/remmina__scrolled__viewport_8h_source.html
new file mode 100644
index 000000000..ad455db47
--- /dev/null
+++ b/docs/remmina__scrolled__viewport_8h_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_scrolled_viewport.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__scrolled__viewport_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_scrolled_viewport.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__scrolled__viewport_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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">#define REMMINA_TYPE_SCROLLED_VIEWPORT \</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"> (remmina_scrolled_viewport_get_type())</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_SCROLLED_VIEWPORT(obj) \</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_SCROLLED_VIEWPORT, RemminaScrolledViewport))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_SCROLLED_VIEWPORT_CLASS(klass) \</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_SCROLLED_VIEWPORT, RemminaScrolledViewportClass))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_IS_SCROLLED_VIEWPORT(obj) \</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_SCROLLED_VIEWPORT))</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define REMMINA_IS_SCROLLED_VIEWPORT_CLASS(klass) \</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_SCROLLED_VIEWPORT))</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define REMMINA_SCROLLED_VIEWPORT_GET_CLASS(obj) \</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"> (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_SCROLLED_VIEWPORT, RemminaScrolledViewportClass))</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_scrolled_viewport.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a> {</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded"> 54</a></span>&#160; GtkEventBox <a class="code" href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded">event_box</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">/* Motion activates in Viewport Fullscreen mode */</span></div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af"> 57</a></span>&#160; gboolean <a class="code" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966"> 58</a></span>&#160; guint <a class="code" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a>;</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"><a class="line" href="struct___remmina_scrolled_viewport_class.html"> 61</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a> {</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f"> 62</a></span>&#160; GtkEventBoxClass <a class="code" href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f">parent_class</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;} <a class="code" href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;GType <a class="code" href="remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312">remmina_scrolled_viewport_get_type</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;G_GNUC_CONST;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;GtkWidget *<a class="code" href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c">remmina_scrolled_viewport_remove_motion</a>(<a class="code" href="struct___remmina_scrolled_viewport.html">RemminaScrolledViewport</a> *gsv);</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 SCROLL_BORDER_SIZE 1</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;G_END_DECLS</div><div class="ttc" id="remmina__scrolled__viewport_8h_html_a0ba56f429a9c1ec05b093f5f78be692c"><div class="ttname"><a href="remmina__scrolled__viewport_8h.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#l00174">remmina_scrolled_viewport.c:174</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html_a233033bbbbeb18a654ca3610ab319312"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312">remmina_scrolled_viewport_get_type</a></div><div class="ttdeci">GType remmina_scrolled_viewport_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html_add486b5b8eb2bfe130e94e2a7a1275af"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">_RemminaScrolledViewport::viewport_motion</a></div><div class="ttdeci">gboolean viewport_motion</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00057">remmina_scrolled_viewport.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00053">remmina_scrolled_viewport.h:53</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html_aadfe00c3960eab12d17bdb47495dd1ee"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee">remmina_scrolled_viewport_new</a></div><div class="ttdeci">GtkWidget * remmina_scrolled_viewport_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8c_source.html#l00185">remmina_scrolled_viewport.c:185</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html_a43804d9cf3852c56c18298a0ed312ded"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded">_RemminaScrolledViewport::event_box</a></div><div class="ttdeci">GtkEventBox event_box</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00054">remmina_scrolled_viewport.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_class_html"><div class="ttname"><a href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00061">remmina_scrolled_viewport.h:61</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html_a6780b29de78ebf1320efd4726a48080f"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f">RemminaScrolledViewport</a></div><div class="ttdeci">struct _RemminaScrolledViewport RemminaScrolledViewport</div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_html_aed56f5dfabf67c663eeddbe154734966"><div class="ttname"><a href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">_RemminaScrolledViewport::viewport_motion_handler</a></div><div class="ttdeci">guint viewport_motion_handler</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00058">remmina_scrolled_viewport.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_scrolled_viewport_class_html_ac5111bf98051e086d39385fb7e9d314f"><div class="ttname"><a href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f">_RemminaScrolledViewportClass::parent_class</a></div><div class="ttdeci">GtkEventBoxClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scrolled__viewport_8h_source.html#l00062">remmina_scrolled_viewport.h:62</a></div></div>
+<div class="ttc" id="remmina__scrolled__viewport_8h_html_a9b7419b88e9d80b9b28effc5ddbbf036"><div class="ttname"><a href="remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036">RemminaScrolledViewportClass</a></div><div class="ttdeci">struct _RemminaScrolledViewportClass RemminaScrolledViewportClass</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__scrolled__viewport_8h.html">remmina_scrolled_viewport.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__client_8c.html b/docs/remmina__sftp__client_8c.html
new file mode 100644
index 000000000..0cba5d213
--- /dev/null
+++ b/docs/remmina__sftp__client_8c.html
@@ -0,0 +1,1092 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_client.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__client_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sftp_client.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sftp__client_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa43b65303f43a0658201bf8f27e232f8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8">G_DEFINE_TYPE</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>, remmina_sftp_client, REMMINA_TYPE_FTP_CLIENT)</td></tr>
+<tr class="separator:aa43b65303f43a0658201bf8f27e232f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae87948f1c87c6eb6b16664665cac9a2c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client_refresh</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client)</td></tr>
+<tr class="separator:ae87948f1c87c6eb6b16664665cac9a2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96c70def014ba9a0a7177d7efc1da830"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:a96c70def014ba9a0a7177d7efc1da830"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6088c2a389358dcda0a65e1984b456fa"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *error_format,...)</td></tr>
+<tr class="separator:a6088c2a389358dcda0a65e1984b456fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a313b03e3a3718a3ccd5dc35d7123e112"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client_thread_set_finish</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task)</td></tr>
+<tr class="separator:a313b03e3a3718a3ccd5dc35d7123e112"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac063368992734eda25c7632e5af7ef05"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client_thread_get_task</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client)</td></tr>
+<tr class="separator:ac063368992734eda25c7632e5af7ef05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b25ac5d22898d2e8a16d8d62bb62ae4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client_thread_download_file</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *remote_path, const gchar *local_path, guint64 *donesize)</td></tr>
+<tr class="separator:a7b25ac5d22898d2e8a16d8d62bb62ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcbfd655b050ff016dedfe177c9e0dee"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client_thread_recursive_dir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *rootdir_path, const gchar *subdir_path, GPtrArray *array)</td></tr>
+<tr class="separator:adcbfd655b050ff016dedfe177c9e0dee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7313e39f8344821d578a23ef1308aa5c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client_thread_recursive_localdir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *rootdir_path, const gchar *subdir_path, GPtrArray *array)</td></tr>
+<tr class="separator:a7313e39f8344821d578a23ef1308aa5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fc3715741ac2e3dcea0efd5a74a3cf3"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client_thread_mkdir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *path)</td></tr>
+<tr class="separator:a4fc3715741ac2e3dcea0efd5a74a3cf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a989f55fb6d44337caba7bbf98e93f3ce"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client_thread_upload_file</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp, <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *task, const gchar *remote_path, const gchar *local_path, guint64 *donesize)</td></tr>
+<tr class="separator:a989f55fb6d44337caba7bbf98e93f3ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea3e3b72fb51d466fee78af11234d7b7"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client_thread_main</a> (gpointer data)</td></tr>
+<tr class="separator:aea3e3b72fb51d466fee78af11234d7b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a396c50263fbc60962481655bdb7b24f2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client_destroy</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, gpointer data)</td></tr>
+<tr class="separator:a396c50263fbc60962481655bdb7b24f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ff0c0ad7c9b5201a90020953b3bd31"><td class="memItemLeft" align="right" valign="top">static sftp_dir&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client_sftp_session_opendir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, const gchar *dir)</td></tr>
+<tr class="separator:a57ff0c0ad7c9b5201a90020953b3bd31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d87ea9dbecdeba8ddcf17a7ab1b783c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client_sftp_session_closedir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, sftp_dir sftpdir)</td></tr>
+<tr class="separator:a3d87ea9dbecdeba8ddcf17a7ab1b783c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a476effba1e0cf529dab3f75a501341ea"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client_on_opendir</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, gchar *dir, gpointer data)</td></tr>
+<tr class="separator:a476effba1e0cf529dab3f75a501341ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a788420fb944ee5059cbc53f8648e9636"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client_on_newtask</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, gpointer data)</td></tr>
+<tr class="separator:a788420fb944ee5059cbc53f8648e9636"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2d75d3cee69addbb691a85ac864db0f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client_on_canceltask</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, gint taskid, gpointer data)</td></tr>
+<tr class="separator:ad2d75d3cee69addbb691a85ac864db0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a7129a1bf066b4aa5106c9599a84a6b"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client_on_deletefile</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, gint type, gchar *name, gpointer data)</td></tr>
+<tr class="separator:a0a7129a1bf066b4aa5106c9599a84a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52b86e14d8abd0a5b6ddeb464a22a5f0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0">remmina_sftp_client_init</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client)</td></tr>
+<tr class="separator:a52b86e14d8abd0a5b6ddeb464a22a5f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a138904893cb9c7f6535b8dfc7ba17e33"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, const gchar *path)</td></tr>
+<tr class="separator:a138904893cb9c7f6535b8dfc7ba17e33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2b4d83fed9c42029fee134684601aba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client_new</a> (void)</td></tr>
+<tr class="separator:ac2b4d83fed9c42029fee134684601aba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fb6d25e4676b2fa574f958a5ba271a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp)</td></tr>
+<tr class="separator:a9fb6d25e4676b2fa574f958a5ba271a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aa43b65303f43a0658201bf8f27e232f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa43b65303f43a0658201bf8f27e232f8">&#9670;&nbsp;</a></span>G_DEFINE_TYPE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">remmina_sftp_client&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">REMMINA_TYPE_FTP_CLIENT&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a138904893cb9c7f6535b8dfc7ba17e33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a138904893cb9c7f6535b8dfc7ba17e33">&#9670;&nbsp;</a></span>remmina_sftp_client_confirm_resume()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_sftp_client_confirm_resume </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00906">906</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a396c50263fbc60962481655bdb7b24f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a396c50263fbc60962481655bdb7b24f2">&#9670;&nbsp;</a></span>remmina_sftp_client_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00671">671</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a52b86e14d8abd0a5b6ddeb464a22a5f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52b86e14d8abd0a5b6ddeb464a22a5f0">&#9670;&nbsp;</a></span>remmina_sftp_client_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00867">867</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ac2b4d83fed9c42029fee134684601aba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2b4d83fed9c42029fee134684601aba">&#9670;&nbsp;</a></span>remmina_sftp_client_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>* remmina_sftp_client_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00978">978</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ad2d75d3cee69addbb691a85ac864db0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2d75d3cee69addbb691a85ac864db0f">&#9670;&nbsp;</a></span>remmina_sftp_client_on_canceltask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_on_canceltask </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>taskid</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00813">813</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a0a7129a1bf066b4aa5106c9599a84a6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a7129a1bf066b4aa5106c9599a84a6b">&#9670;&nbsp;</a></span>remmina_sftp_client_on_deletefile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_on_deletefile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00835">835</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a788420fb944ee5059cbc53f8648e9636"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a788420fb944ee5059cbc53f8648e9636">&#9670;&nbsp;</a></span>remmina_sftp_client_on_newtask()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_on_newtask </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00803">803</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a476effba1e0cf529dab3f75a501341ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a476effba1e0cf529dab3f75a501341ea">&#9670;&nbsp;</a></span>remmina_sftp_client_on_opendir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_on_opendir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>dir</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00726">726</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a9fb6d25e4676b2fa574f958a5ba271a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fb6d25e4676b2fa574f958a5ba271a1">&#9670;&nbsp;</a></span>remmina_sftp_client_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sftp_client_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00985">985</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ae87948f1c87c6eb6b16664665cac9a2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae87948f1c87c6eb6b16664665cac9a2c">&#9670;&nbsp;</a></span>remmina_sftp_client_refresh()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_refresh </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00889">889</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d87ea9dbecdeba8ddcf17a7ab1b783c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d87ea9dbecdeba8ddcf17a7ab1b783c">&#9670;&nbsp;</a></span>remmina_sftp_client_sftp_session_closedir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_sftp_session_closedir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">sftp_dir&#160;</td>
+ <td class="paramname"><em>sftpdir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00708">708</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a57ff0c0ad7c9b5201a90020953b3bd31"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57ff0c0ad7c9b5201a90020953b3bd31">&#9670;&nbsp;</a></span>remmina_sftp_client_sftp_session_opendir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static sftp_dir remmina_sftp_client_sftp_session_opendir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dir</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00688">688</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a7b25ac5d22898d2e8a16d8d62bb62ae4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b25ac5d22898d2e8a16d8d62bb62ae4">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_download_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_download_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>remote_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>local_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint64 *&#160;</td>
+ <td class="paramname"><em>donesize</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00152">152</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ac063368992734eda25c7632e5af7ef05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac063368992734eda25c7632e5af7ef05">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_get_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>* remmina_sftp_client_thread_get_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00133">133</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="aea3e3b72fb51d466fee78af11234d7b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea3e3b72fb51d466fee78af11234d7b7">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_sftp_client_thread_main </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00493">493</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fc3715741ac2e3dcea0efd5a74a3cf3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fc3715741ac2e3dcea0efd5a74a3cf3">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_mkdir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_mkdir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00374">374</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="adcbfd655b050ff016dedfe177c9e0dee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcbfd655b050ff016dedfe177c9e0dee">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_recursive_dir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_recursive_dir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>rootdir_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subdir_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GPtrArray *&#160;</td>
+ <td class="paramname"><em>array</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00258">258</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a7313e39f8344821d578a23ef1308aa5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7313e39f8344821d578a23ef1308aa5c">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_recursive_localdir()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_recursive_localdir </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>rootdir_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>subdir_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GPtrArray *&#160;</td>
+ <td class="paramname"><em>array</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00329">329</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a6088c2a389358dcda0a65e1984b456fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6088c2a389358dcda0a65e1984b456fa">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_thread_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>error_format</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00103">103</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a313b03e3a3718a3ccd5dc35d7123e112"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a313b03e3a3718a3ccd5dc35d7123e112">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_set_finish()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_sftp_client_thread_set_finish </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a96c70def014ba9a0a7177d7efc1da830"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96c70def014ba9a0a7177d7efc1da830">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_update_task()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_update_task </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00092">92</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a989f55fb6d44337caba7bbf98e93f3ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a989f55fb6d44337caba7bbf98e93f3ce">&#9670;&nbsp;</a></span>remmina_sftp_client_thread_upload_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_sftp_client_thread_upload_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>remote_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>local_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint64 *&#160;</td>
+ <td class="paramname"><em>donesize</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00393">393</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__client_8c.html">remmina_sftp_client.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__client_8c.js b/docs/remmina__sftp__client_8c.js
new file mode 100644
index 000000000..ce229787a
--- /dev/null
+++ b/docs/remmina__sftp__client_8c.js
@@ -0,0 +1,26 @@
+var remmina__sftp__client_8c =
+[
+ [ "G_DEFINE_TYPE", "remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8", null ],
+ [ "remmina_sftp_client_confirm_resume", "remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33", null ],
+ [ "remmina_sftp_client_destroy", "remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2", null ],
+ [ "remmina_sftp_client_init", "remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0", null ],
+ [ "remmina_sftp_client_new", "remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba", null ],
+ [ "remmina_sftp_client_on_canceltask", "remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f", null ],
+ [ "remmina_sftp_client_on_deletefile", "remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b", null ],
+ [ "remmina_sftp_client_on_newtask", "remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636", null ],
+ [ "remmina_sftp_client_on_opendir", "remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea", null ],
+ [ "remmina_sftp_client_open", "remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1", null ],
+ [ "remmina_sftp_client_refresh", "remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c", null ],
+ [ "remmina_sftp_client_sftp_session_closedir", "remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c", null ],
+ [ "remmina_sftp_client_sftp_session_opendir", "remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31", null ],
+ [ "remmina_sftp_client_thread_download_file", "remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4", null ],
+ [ "remmina_sftp_client_thread_get_task", "remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05", null ],
+ [ "remmina_sftp_client_thread_main", "remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7", null ],
+ [ "remmina_sftp_client_thread_mkdir", "remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3", null ],
+ [ "remmina_sftp_client_thread_recursive_dir", "remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee", null ],
+ [ "remmina_sftp_client_thread_recursive_localdir", "remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c", null ],
+ [ "remmina_sftp_client_thread_set_error", "remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa", null ],
+ [ "remmina_sftp_client_thread_set_finish", "remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112", null ],
+ [ "remmina_sftp_client_thread_update_task", "remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830", null ],
+ [ "remmina_sftp_client_thread_upload_file", "remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sftp__client_8c_source.html b/docs/remmina__sftp__client_8c_source.html
new file mode 100644
index 000000000..46bd3b97c
--- /dev/null
+++ b/docs/remmina__sftp__client_8c_source.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_client.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__client_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sftp_client.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sftp__client_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-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-2020 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">#define _FILE_OFFSET_BITS 64</span></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;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</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;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef HAVE_FCNTL_H</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</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__pref_8h.html">remmina_pref.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__ssh_8h.html">remmina_ssh.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__sftp__client_8h.html">remmina_sftp_client.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__sftp__plugin_8h.html">remmina_sftp_plugin.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__masterthread__exec_8h.html">remmina_masterthread_exec.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8"> 58</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8">G_DEFINE_TYPE</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a>, remmina_sftp_client, REMMINA_TYPE_FTP_CLIENT)</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#define SET_CURSOR(cur) \</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"> if (GDK_IS_WINDOW(gtk_widget_get_window(GTK_WIDGET(client)))) \</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"> gdk_window_set_cursor(gtk_widget_get_window(GTK_WIDGET(client)), cur); \</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;remmina_sftp_client_class_init(<a class="code" href="struct___remmina_s_f_t_p_client_class.html">RemminaSFTPClientClass</a> *klass)</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;}</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#define GET_SFTPATTR_TYPE(a, type) \</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"> if (a-&gt;type == 0) \</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"> type = ((a-&gt;permissions &amp; 040000) ? REMMINA_FTP_FILE_TYPE_DIR : REMMINA_FTP_FILE_TYPE_FILE); \</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"> } \</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"> else \</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"> type = (a-&gt;type == SSH_FILEXFER_TYPE_DIRECTORY ? REMMINA_FTP_FILE_TYPE_DIR : REMMINA_FTP_FILE_TYPE_FILE); \</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* ------------------------ The Task Thread routines ----------------------------- */</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client_refresh</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client);</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="preprocessor">#define THREAD_CHECK_EXIT \</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"> (!client-&gt;taskid || client-&gt;thread_abort)</span></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"> 89</span>&#160;</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;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830"> 92</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task)</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"> 94</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a>(REMMINA_FTP_CLIENT(client), task);</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="keywordflow">return</span> TRUE;</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;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa"> 103</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task, <span class="keyword">const</span> gchar *error_format, ...)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; va_list args;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a> = <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a>;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a>);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span> (error_format) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; va_start(args, error_format);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a> = g_strdup_vprintf(error_format, args);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; va_end(args);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a> = NULL;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(client, task);</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;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112"> 122</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client_thread_set_finish</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task)</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;{</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a> = <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a>;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; g_free(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a> = NULL;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(client, task);</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;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05"> 133</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client_thread_get_task</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a>) <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; task = <a class="code" href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a>(REMMINA_FTP_CLIENT(client));</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (task) {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> = task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">taskid</a>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a> = <a class="code" href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a>(REMMINA_FTP_CLIENT(client), task);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</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; <span class="keywordflow">return</span> task;</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4"> 152</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client_thread_download_file</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task,</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">const</span> gchar *remote_path, <span class="keyword">const</span> gchar *local_path, guint64 *donesize)</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"> 155</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; sftp_file remote_file;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; FILE *local_file;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; gchar *tmp;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gchar buf[20480];</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; gint len;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gint response;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; uint64_t size;</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"> 164</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">return</span> FALSE;</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; <span class="comment">/* Ensure local dir exists */</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; g_strlcpy(buf, local_path, <span class="keyword">sizeof</span>(buf));</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; tmp = g_strrstr(buf, <span class="stringliteral">&quot;/&quot;</span>);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (tmp &amp;&amp; tmp != buf) {</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; *tmp = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span> (g_mkdir_with_parents(buf, 0755) &lt; 0) {</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is a directory path</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the folder \&quot;%s\&quot;.&quot;</span>), buf);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">return</span> 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; }</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; local_file = g_fopen(local_path, <span class="stringliteral">&quot;ab&quot;</span>);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">if</span> (!local_file) {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is a file path</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the file \&quot;%s\&quot;.&quot;</span>), local_path);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; fseeko(local_file, 0, SEEK_END);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; size = ftello(local_file);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (size &gt; 0) {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; response = <a class="code" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a>(client, local_path);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">switch</span> (response) {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">case</span> GTK_RESPONSE_CANCEL:</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">case</span> GTK_RESPONSE_DELETE_EVENT:</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; fclose(local_file);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, NULL);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">return</span> FALSE;</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">case</span> GTK_RESPONSE_ACCEPT:</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; fclose(local_file);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; local_file = g_fopen(local_path, <span class="stringliteral">&quot;wb&quot;</span>);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">if</span> (!local_file) {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is a file path</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the file \&quot;%s\&quot;.&quot;</span>), local_path);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; }</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; size = 0;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> GTK_RESPONSE_APPLY:</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; }</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;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(sftp), remote_path);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; remote_file = sftp_open(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp, O_RDONLY, 0);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; g_free(tmp);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (!remote_file) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; fclose(local_file);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="comment">// TRANSLATORS: The placeholders %s are a file path, and an error message.</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not open the file \&quot;%s\&quot; on the server. %s&quot;</span>),</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</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"> 225</span>&#160; <span class="keywordflow">if</span> (size &gt; 0) {</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">if</span> (sftp_seek64(remote_file, size) &lt; 0) {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; fclose(local_file);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, <span class="stringliteral">&quot;Could not download the file \&quot;%s\&quot;. %s&quot;</span>,</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; *donesize = size;</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"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">while</span> (!THREAD_CHECK_EXIT &amp;&amp; (len = sftp_read(remote_file, buf, <span class="keyword">sizeof</span>(buf))) &gt; 0) {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">break</span>;</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> (fwrite(buf, 1, len, local_file) &lt; len) {</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; fclose(local_file);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not save the file \&quot;%s\&quot;.&quot;</span>), local_path);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; *donesize += (guint64)len;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">donesize</a> = (gfloat)(*donesize);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(client, task)) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</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; sftp_close(remote_file);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; fclose(local_file);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee"> 258</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client_thread_recursive_dir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task,</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keyword">const</span> gchar *rootdir_path, <span class="keyword">const</span> gchar *subdir_path, GPtrArray *array)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; sftp_dir sftpdir;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; sftp_attributes sftpattr;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; gchar *tmp;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gchar *dir_path;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; gchar *file_path;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; gint type;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; gboolean ret = TRUE;</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="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">return</span> FALSE;</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"> 272</span>&#160; <span class="keywordflow">if</span> (subdir_path)</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; dir_path = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(rootdir_path, subdir_path);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; dir_path = g_strdup(rootdir_path);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(sftp), dir_path);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; sftpdir = sftp_opendir(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp);</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; g_free(tmp);</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; <span class="keywordflow">if</span> (!sftpdir) {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not open the folder \&quot;%s\&quot;. %s&quot;</span>),</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; dir_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; g_free(dir_path);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; g_free(dir_path);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">while</span> ((sftpattr = sftp_readdir(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, sftpdir))) {</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(sftpattr-&gt;name, <span class="stringliteral">&quot;.&quot;</span>) != 0 &amp;&amp;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; g_strcmp0(sftpattr-&gt;name, <span class="stringliteral">&quot;..&quot;</span>) != 0) {</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; GET_SFTPATTR_TYPE(sftpattr, type);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a>(REMMINA_SSH(sftp), sftpattr-&gt;name);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">if</span> (subdir_path) {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; file_path = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(subdir_path, tmp);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; g_free(tmp);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; file_path = tmp;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">if</span> (type == <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>) {</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client_thread_recursive_dir</a>(client, sftp, task, rootdir_path, file_path, array);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; g_free(file_path);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordflow">if</span> (!ret) {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; sftp_attributes_free(sftpattr);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">size</a> += (gfloat)sftpattr-&gt;size;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; g_ptr_array_add(array, file_path);</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; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(client, task)) {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; sftp_attributes_free(sftpattr);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">break</span>;</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; sftp_attributes_free(sftpattr);</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; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; }</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; sftp_closedir(sftpdir);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;}</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c"> 329</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client_thread_recursive_localdir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task,</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keyword">const</span> gchar *rootdir_path, <span class="keyword">const</span> gchar *subdir_path, GPtrArray *array)</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;{</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; GDir *dir;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; gchar *path;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keyword">const</span> gchar *name;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; gchar *relpath;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gchar *abspath;</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keyword">struct </span>stat st;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; gboolean ret = TRUE;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; path = g_build_filename(rootdir_path, subdir_path, NULL);</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; dir = g_dir_open(path, 0, NULL);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">if</span> (dir == NULL) {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; g_free(path);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; }</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordflow">while</span> ((name = g_dir_read_name(dir)) != NULL) {</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) {</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; ret = FALSE;</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">break</span>;</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">if</span> (g_strcmp0(name, <span class="stringliteral">&quot;.&quot;</span>) == 0 || g_strcmp0(name, <span class="stringliteral">&quot;..&quot;</span>) == 0) <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; abspath = g_build_filename(path, name, NULL);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">if</span> (g_stat(abspath, &amp;st) &lt; 0) {</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; g_free(abspath);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; }</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; relpath = g_build_filename(subdir_path ? subdir_path : <span class="stringliteral">&quot;&quot;</span>, name, NULL);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; g_ptr_array_add(array, relpath);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">if</span> (g_file_test(abspath, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client_thread_recursive_localdir</a>(client, task, rootdir_path, relpath, array);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (!ret) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">size</a> += (gfloat)st.st_size;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; }</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; g_free(abspath);</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"> 368</span>&#160; g_free(path);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; g_dir_close(dir);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;}</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00374"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3"> 374</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client_thread_mkdir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task, <span class="keyword">const</span> gchar *path)</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;{</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; sftp_attributes sftpattr;</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; sftpattr = sftp_stat(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, path);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">if</span> (sftpattr != NULL) {</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; sftp_attributes_free(sftpattr);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; }</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordflow">if</span> (sftp_mkdir(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, path, 0755) &lt; 0) {</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the folder \&quot;%s\&quot; on the server. %s&quot;</span>),</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;}</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00393"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce"> 393</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client_thread_upload_file</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp, <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task,</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keyword">const</span> gchar *remote_path, <span class="keyword">const</span> gchar *local_path, guint64 *donesize)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; sftp_file remote_file;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; FILE *local_file;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; gchar *tmp;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; gchar buf[20480];</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; gint len;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; sftp_attributes attr;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; gint response;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; uint64_t size;</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; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(sftp), remote_path);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; remote_file = sftp_open(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp, O_WRONLY | O_CREAT, 0644);</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; g_free(tmp);</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">if</span> (!remote_file) {</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the file \&quot;%s\&quot; on the server. %s&quot;</span>),</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 417</span>&#160; attr = sftp_fstat(remote_file);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; size = attr-&gt;size;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; sftp_attributes_free(attr);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (size &gt; 0) {</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; response = <a class="code" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a>(client, remote_path);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">switch</span> (response) {</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">case</span> GTK_RESPONSE_CANCEL:</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">case</span> GTK_RESPONSE_DELETE_EVENT:</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, NULL);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">case</span> GTK_RESPONSE_ACCEPT:</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(sftp), remote_path);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; remote_file = sftp_open(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp, O_WRONLY | O_CREAT | O_TRUNC, 0644);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; g_free(tmp);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordflow">if</span> (!remote_file) {</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not create the file \&quot;%s\&quot; on the server. %s&quot;</span>),</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">return</span> FALSE;</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; size = 0;</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">case</span> GTK_RESPONSE_APPLY:</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (sftp_seek64(remote_file, size) &lt; 0) {</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, <span class="stringliteral">&quot;Could not download the file \&quot;%s\&quot;. %s&quot;</span>,</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; }</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">break</span>;</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; }</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; local_file = g_fopen(local_path, <span class="stringliteral">&quot;rb&quot;</span>);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">if</span> (!local_file) {</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not open the file \&quot;%s\&quot;.&quot;</span>), local_path);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; }</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <span class="keywordflow">if</span> (size &gt; 0) {</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordflow">if</span> (fseeko(local_file, size, SEEK_SET) &lt; 0) {</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; fclose(local_file);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, <span class="stringliteral">&quot;Could not find the local file \&quot;%s\&quot;.&quot;</span>, local_path);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <span class="keywordflow">return</span> FALSE;</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; *donesize = size;</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;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordflow">while</span> (!THREAD_CHECK_EXIT &amp;&amp; (len = fread(buf, 1, <span class="keyword">sizeof</span>(buf), local_file)) &gt; 0) {</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordflow">if</span> (sftp_write(remote_file, buf, len) &lt; len) {</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; fclose(local_file);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, _(<span class="stringliteral">&quot;Could not write to the file \&quot;%s\&quot; on the server. %s&quot;</span>),</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; remote_path, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; *donesize += (guint64)len;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">donesize</a> = (gfloat)(*donesize);</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; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a>(client, task)) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; }</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; sftp_close(remote_file);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; fclose(local_file);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l00493"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7"> 493</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client_thread_main</a>(gpointer data)</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;{</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client = REMMINA_SFTP_CLIENT(data);</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp = NULL;</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="struct___remmina_f_t_p_task.html">RemminaFTPTask</a> *task;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; gchar *remote, *local;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; guint64 size;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; GPtrArray *array;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; gint i;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; gchar *remote_file, *local_file;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; gboolean ret;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; gchar *refreshdir = NULL;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; gchar *tmp;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; gboolean refresh = FALSE;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; gchar *host;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordtype">int</span> port;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; task = <a class="code" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client_thread_get_task</a>(client);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">while</span> (task) {</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; size = 0;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">if</span> (!sftp) {</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; sftp = <a class="code" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a>(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>));</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; <span class="comment">/* we may need to open a new tunnel too */</span></div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; host = NULL;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; port = 0;</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a>(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">gp</a>, &amp;host, &amp;port))</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; (REMMINA_SSH(sftp))-&gt;tunnel_entrance_host = host;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; (REMMINA_SSH(sftp))-&gt;tunnel_entrance_port = port;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="comment">/* Open a new connection for this subcommand */</span></div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; g_debug(<span class="stringliteral">&quot;[SFTPCLI] %s opening ssh session to %s:%d&quot;</span>, __func__, host, port);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(REMMINA_SSH(sftp))) {</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; g_debug(<span class="stringliteral">&quot;[SFTPCLI] remmina_ssh_init_session returned error %s\n&quot;</span>, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(task);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; }</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; <span class="keywordflow">if</span> (<a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(REMMINA_SSH(sftp), REMMINA_SSH(sftp)-&gt;password, client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">gp</a>, NULL) != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>) {</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; g_debug(<span class="stringliteral">&quot;[SFTPCLI] remmina_ssh_auth returned error %s\n&quot;</span>, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(task);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; }</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a>(sftp)) {</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; g_debug(<span class="stringliteral">&quot;[SFTPCLI] remmina_sftp_open returned error %s\n&quot;</span>, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a>(client, task, (REMMINA_SSH(sftp))-&gt;error);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(task);</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; }</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; }</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; remote = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">remotedir</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">name</a>);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; local = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">localdir</a>, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">name</a>);</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">switch</span> (task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">tasktype</a>) {</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a>:</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keywordflow">switch</span> (task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">type</a>) {</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>:</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client_thread_download_file</a>(client, sftp, task,</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; remote, local, &amp;size);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>:</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; array = g_ptr_array_new();</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client_thread_recursive_dir</a>(client, sftp, task, remote, NULL, array);</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; array-&gt;len; i++) {</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) {</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; ret = FALSE;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <span class="keywordflow">break</span>;</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; remote_file = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(remote, (gchar *)g_ptr_array_index(array, i));</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; local_file = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(local, (gchar *)g_ptr_array_index(array, i));</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client_thread_download_file</a>(client, sftp, task,</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; remote_file, local_file, &amp;size);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; g_free(remote_file);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; g_free(local_file);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">if</span> (!ret) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; }</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; g_ptr_array_foreach(array, (GFunc)g_free, NULL);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; g_ptr_array_free(array, TRUE);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; ret = 0;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keywordflow">break</span>;</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; <span class="keywordflow">if</span> (ret)</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client_thread_set_finish</a>(client, task);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a>:</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">switch</span> (task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">type</a>) {</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>:</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client_thread_upload_file</a>(client, sftp, task,</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; remote, local, &amp;size);</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>:</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client_thread_mkdir</a>(client, sftp, task, remote);</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">if</span> (!ret) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; array = g_ptr_array_new();</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client_thread_recursive_localdir</a>(client, task, local, NULL, array);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; array-&gt;len; i++) {</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordflow">if</span> (THREAD_CHECK_EXIT) {</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; ret = FALSE;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; }</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; remote_file = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(remote, (gchar *)g_ptr_array_index(array, i));</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; local_file = g_build_filename(local, (gchar *)g_ptr_array_index(array, i), NULL);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="keywordflow">if</span> (g_file_test(local_file, G_FILE_TEST_IS_DIR))</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client_thread_mkdir</a>(client, sftp, task, remote_file);</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; ret = <a class="code" href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client_thread_upload_file</a>(client, sftp, task,</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; remote_file, local_file, &amp;size);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; g_free(remote_file);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; g_free(local_file);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordflow">if</span> (!ret) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; }</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; g_ptr_array_foreach(array, (GFunc)g_free, NULL);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; g_ptr_array_free(array, TRUE);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; ret = 0;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; }</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client_thread_set_finish</a>(client, task);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; tmp = <a class="code" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a>(REMMINA_FTP_CLIENT(client));</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(tmp, task-&gt;<a class="code" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">remotedir</a>) == 0) {</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; refresh = TRUE;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; g_free(refreshdir);</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; refreshdir = tmp;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; g_free(tmp);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; }</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; }</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">break</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;</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; g_free(remote);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; g_free(local);</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; <a class="code" href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a>(task);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> = 0;</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; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a>) <span class="keywordflow">break</span>;</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; task = <a class="code" href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client_thread_get_task</a>(client);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; }</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <span class="keywordflow">if</span> (sftp)</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <a class="code" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a>(sftp);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">if</span> (!client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a> &amp;&amp; refresh) {</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; tmp = <a class="code" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a>(REMMINA_FTP_CLIENT(client));</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(tmp, refreshdir) == 0)</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; IDLE_ADD((GSourceFunc)remmina_sftp_client_refresh, client);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; g_free(tmp);</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; g_free(refreshdir);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a> = 0;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;}</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;<span class="comment">/* ------------------------ The SFTP Client routines ----------------------------- */</span></div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00671"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2"> 671</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client_destroy</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, gpointer data)</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;{</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>) {</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a>(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>);</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a> = NULL;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; }</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a> = TRUE;</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; <span class="comment">/* We will wait for the thread to quit itself, and hopefully the thread is handling things correctly */</span></div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">while</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a>) {</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="comment">/* gdk_threads_leave (); */</span></div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; sleep(1);</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="comment">/* gdk_threads_enter (); */</span></div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; }</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;}</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;<span class="keyword">static</span> sftp_dir</div><div class="line"><a name="l00688"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31"> 688</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client_sftp_session_opendir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <span class="keyword">const</span> gchar *dir)</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;{</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; sftp_dir sftpdir;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; sftpdir = sftp_opendir(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, (gchar *)dir);</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keywordflow">if</span> (!sftpdir) {</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))),</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; _(<span class="stringliteral">&quot;Could not open the folder \&quot;%s\&quot;. %s&quot;</span>), dir,</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; <span class="keywordflow">return</span> NULL;</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; <span class="keywordflow">return</span> sftpdir;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;}</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00708"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c"> 708</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client_sftp_session_closedir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, sftp_dir sftpdir)</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;{</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">if</span> (!sftp_dir_eof(sftpdir)) {</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))),</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; _(<span class="stringliteral">&quot;Could not read from the folder. %s&quot;</span>), ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; }</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; sftp_closedir(sftpdir);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;}</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00726"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea"> 726</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client_on_opendir</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, gchar *dir, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; sftp_dir sftpdir;</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; sftp_attributes sftpattr;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; gchar *newdir;</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; gchar *newdir_conv;</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; gchar *tmp;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; gint type;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a> == NULL) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <span class="keywordflow">if</span> (!dir || dir[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; newdir = g_strdup(<span class="stringliteral">&quot;.&quot;</span>);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (dir[0] == <span class="charliteral">&#39;/&#39;</span>) {</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; newdir = g_strdup(dir);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; tmp = <a class="code" href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a>(REMMINA_FTP_CLIENT(client));</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keywordflow">if</span> (tmp) {</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; newdir = <a class="code" href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a>(tmp, dir);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; g_free(tmp);</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; newdir = g_strdup_printf(<span class="stringliteral">&quot;./%s&quot;</span>, dir);</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; }</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; }</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>), newdir);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; newdir_conv = sftp_canonicalize_path(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; g_free(tmp);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; g_free(newdir);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; newdir = <a class="code" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a>(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>), newdir_conv);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <span class="keywordflow">if</span> (!newdir) {</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; dialog = gtk_message_dialog_new(NULL,</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; _(<span class="stringliteral">&quot;Could not open the folder \&quot;%s\&quot;. %s&quot;</span>), dir,</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; gtk_widget_show(dialog);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</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="l00765"></a><span class="lineno"> 765</span>&#160; g_free(newdir_conv);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <span class="keywordflow">return</span>;</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"> 768</span>&#160;</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; sftpdir = <a class="code" href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client_sftp_session_opendir</a>(client, newdir_conv);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; g_free(newdir_conv);</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <span class="keywordflow">if</span> (!sftpdir) {</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; g_free(newdir);</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; }</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a>(REMMINA_FTP_CLIENT(client));</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keywordflow">while</span> ((sftpattr = sftp_readdir(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, sftpdir))) {</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(sftpattr-&gt;name, <span class="stringliteral">&quot;.&quot;</span>) != 0 &amp;&amp;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; g_strcmp0(sftpattr-&gt;name, <span class="stringliteral">&quot;..&quot;</span>) != 0) {</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; GET_SFTPATTR_TYPE(sftpattr, type);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a>(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>), sftpattr-&gt;name);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a>(REMMINA_FTP_CLIENT(client),</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a>, type,</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a>, tmp,</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a>, (gfloat)sftpattr-&gt;size,</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a>, sftpattr-&gt;owner,</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a>, sftpattr-&gt;group,</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; <a class="code" href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a>, sftpattr-&gt;permissions,</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; -1);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; g_free(tmp);</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; }</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; sftp_attributes_free(sftpattr);</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"> 796</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client_sftp_session_closedir</a>(client, sftpdir);</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; <a class="code" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a>(REMMINA_FTP_CLIENT(client), newdir);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; g_free(newdir);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;}</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;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00803"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636"> 803</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client_on_newtask</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, gpointer data)</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"> 805</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a>) <span class="keywordflow">return</span>;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a>, NULL, <a class="code" href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client_thread_main</a>, client))</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a> = 0;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;}</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00813"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f"> 813</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client_on_canceltask</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, gint taskid, gpointer data)</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160;{</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; gint ret;</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="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> != taskid) <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))),</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; _(<span class="stringliteral">&quot;Are you sure you want to cancel the file transfer in progress?&quot;</span>));</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; ret = gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_YES) {</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <span class="comment">/* Make sure we are still handling the same task before we clear the flag */</span></div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">if</span> (client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> == taskid) client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> = 0;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; }</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160;}</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="keyword">static</span> gboolean</div><div class="line"><a name="l00835"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b"> 835</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client_on_deletefile</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, gint type, gchar *name, gpointer data)</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160;{</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; gint ret = 0;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; gchar *tmp;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; tmp = <a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>), name);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">switch</span> (type) {</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a>:</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; ret = sftp_rmdir(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp);</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a>:</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; ret = sftp_unlink(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>, tmp);</div><div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; }</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; g_free(tmp);</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">if</span> (ret != 0) {</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))),</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; _(<span class="stringliteral">&quot;Could not delete \&quot;%s\&quot;. %s&quot;</span>),</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; name, ssh_get_error(REMMINA_SSH(client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>)-&gt;session));</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;}</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00867"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0"> 867</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0">remmina_sftp_client_init</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a> = NULL;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a> = 0;</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a> = 0;</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a> = FALSE;</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <span class="comment">/* Setup the internal signals */</span></div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;destroy&quot;</span>,</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; G_CALLBACK(<a class="code" href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client_destroy</a>), NULL);</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;open-dir&quot;</span>,</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; G_CALLBACK(<a class="code" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client_on_opendir</a>), NULL);</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;new-task&quot;</span>,</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; G_CALLBACK(<a class="code" href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client_on_newtask</a>), NULL);</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;cancel-task&quot;</span>,</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; G_CALLBACK(<a class="code" href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client_on_canceltask</a>), NULL);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; g_signal_connect(G_OBJECT(client), <span class="stringliteral">&quot;delete-file&quot;</span>,</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; G_CALLBACK(<a class="code" href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client_on_deletefile</a>), NULL);</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;}</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160;</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00889"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c"> 889</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client_refresh</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client)</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"> 891</span>&#160; TRACE_CALL(__func__);</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; GdkDisplay *display = gdk_display_get_default();</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160;</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; SET_CURSOR(gdk_cursor_new_for_display(display, GDK_WATCH));</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; gdk_display_flush(display);</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160;</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client_on_opendir</a>(client, <span class="stringliteral">&quot;.&quot;</span>, NULL);</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; SET_CURSOR(NULL);</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;}</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;gint</div><div class="line"><a name="l00906"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33"> 906</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <span class="keyword">const</span> gchar *path)</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; TRACE_CALL(__func__);</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"> 910</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; gint response;</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; GtkWidget *vbox;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; <span class="keyword">const</span> gchar *filename;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; <span class="comment">/* Always reply ACCEPT if overwrite_all was already set */</span></div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a>(REMMINA_FTP_CLIENT(client)))</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; <span class="keywordflow">return</span> GTK_RESPONSE_ACCEPT;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; gint retval;</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_SFTP_CLIENT_CONFIRM_RESUME;</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.client = client;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.path = path;</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; retval = d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a>.retval;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; g_free(d);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; <span class="keywordflow">return</span> retval;</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; filename = strrchr(path, <span class="charliteral">&#39;/&#39;</span>);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; filename = filename ? filename + 1 : path;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160;</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; dialog = gtk_dialog_new_with_buttons(_(<span class="stringliteral">&quot;The file exists already&quot;</span>),</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(client))),</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; _(<span class="stringliteral">&quot;Resume&quot;</span>), GTK_RESPONSE_APPLY,</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; _(<span class="stringliteral">&quot;Overwrite&quot;</span>), GTK_RESPONSE_ACCEPT,</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; _(<span class="stringliteral">&quot;_Cancel&quot;</span>), GTK_RESPONSE_CANCEL,</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; NULL);</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; gtk_container_set_border_width(GTK_CONTAINER(dialog), 4);</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160;</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 4);</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; hbox, TRUE, TRUE, 4);</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; widget = gtk_image_new_from_icon_name(<span class="stringliteral">&quot;dialog-question&quot;</span>, GTK_ICON_SIZE_DIALOG);</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), widget, TRUE, TRUE, 4);</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; vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 4);</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; gtk_widget_show(vbox);</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 4);</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160;</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; widget = gtk_label_new(_(<span class="stringliteral">&quot;The following file already exists in the target folder:&quot;</span>));</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), widget, TRUE, TRUE, 4);</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; widget = gtk_label_new(filename);</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; gtk_widget_set_halign(GTK_WIDGET(widget), GTK_ALIGN_START);</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; gtk_widget_set_valign(GTK_WIDGET(widget), GTK_ALIGN_CENTER);</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; gtk_box_pack_start(GTK_BOX(vbox), widget, TRUE, TRUE, 4);</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; response = gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <span class="keywordflow">return</span> response;</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"> 977</span>&#160;<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *</div><div class="line"><a name="l00978"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d"> 978</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160;{</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; <span class="keywordflow">return</span> REMMINA_SFTP_CLIENT(g_object_new(REMMINA_TYPE_SFTP_CLIENT, NULL));</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160;}</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00985"></a><span class="lineno"><a class="line" href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1"> 985</a></span>&#160;<a class="code" href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *client, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; client-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a> = sftp;</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160;</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; g_idle_add((GSourceFunc)remmina_sftp_client_refresh, client);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160;}</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="comment">/*</span></div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;<span class="comment">GtkWidget *</span></div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160;<span class="comment">remmina_sftp_client_new_init(RemminaSFTP *sftp)</span></div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160;<span class="comment">{</span></div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160;<span class="comment"> TRACE_CALL(__func__);</span></div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160;<span class="comment"> GdkDisplay *display;</span></div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;<span class="comment"> GtkWidget *client;</span></div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;<span class="comment"> GtkWidget *dialog;</span></div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;<span class="comment"> display = gdk_display_get_default();</span></div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160;<span class="comment"> client = remmina_sftp_client_new();</span></div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;<span class="comment"> SET_CURSOR(gdk_cursor_new_for_display(display, GDK_WATCH));</span></div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;<span class="comment"> gdk_display_flush(display);</span></div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;<span class="comment"> if (!remmina_ssh_init_session(REMMINA_SSH(sftp)) ||</span></div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;<span class="comment"> remmina_ssh_auth(REMMINA_SSH(sftp), NULL, NULL, NULL) != REMMINA_SSH_AUTH_SUCCESS ||</span></div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;<span class="comment"> !remmina_sftp_open(sftp)) {</span></div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;<span class="comment"> dialog = gtk_message_dialog_new(GTK_WINDOW(gtk_widget_get_toplevel(client)),</span></div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;<span class="comment"> GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</span></div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160;<span class="comment"> (REMMINA_SSH(sftp))-&gt;error, NULL);</span></div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;<span class="comment"> gtk_dialog_run(GTK_DIALOG(dialog));</span></div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;<span class="comment"> gtk_widget_destroy(dialog);</span></div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;<span class="comment"> gtk_widget_destroy(client);</span></div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;<span class="comment"> return NULL;</span></div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;<span class="comment"> }</span></div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;<span class="comment"> SET_CURSOR(NULL);</span></div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;<span class="comment"></span></div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;<span class="comment"> g_idle_add((GSourceFunc)remmina_sftp_client_refresh, client);</span></div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;<span class="comment"> return client;</span></div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;<span class="comment">}</span></div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160;<span class="comment">*/</span></div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50">REMMINA_FTP_FILE_COLUMN_GROUP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00077">remmina_ftp_client.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a0f55ef18c144344076af038501f36840"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">_RemminaFTPTask::taskid</a></div><div class="ttdeci">gint taskid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00113">remmina_ftp_client.h:113</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a7421d54c8a4a95b6b92de16779d91917"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a></div><div class="ttdeci">gboolean remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00066">remmina_sftp_plugin.c:66</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b">REMMINA_FTP_FILE_COLUMN_TYPE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00073">remmina_ftp_client.h:73</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a396c50263fbc60962481655bdb7b24f2"><div class="ttname"><a href="remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2">remmina_sftp_client_destroy</a></div><div class="ttdeci">static void remmina_sftp_client_destroy(RemminaSFTPClient *client, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00671">remmina_sftp_client.c:671</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7">REMMINA_FTP_TASK_STATUS_RUN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00089">remmina_ftp_client.h:89</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aeccf94afb57bcad37b4241d45fcb3fea"><div class="ttname"><a href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a></div><div class="ttdeci">gchar * remmina_ssh_unconvert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e">REMMINA_FTP_FILE_COLUMN_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00075">remmina_ftp_client.h:75</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a476effba1e0cf529dab3f75a501341ea"><div class="ttname"><a href="remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea">remmina_sftp_client_on_opendir</a></div><div class="ttdeci">static void remmina_sftp_client_on_opendir(RemminaSFTPClient *client, gchar *dir, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00726">remmina_sftp_client.c:726</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a138904893cb9c7f6535b8dfc7ba17e33"><div class="ttname"><a href="remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a></div><div class="ttdeci">gint remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00906">remmina_sftp_client.c:906</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html"><div class="ttname"><a href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00222">remmina_ssh.h:222</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html"><div class="ttname"><a href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a6088c2a389358dcda0a65e1984b456fa"><div class="ttname"><a href="remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa">remmina_sftp_client_thread_set_error</a></div><div class="ttdeci">static void remmina_sftp_client_thread_set_error(RemminaSFTPClient *client, RemminaFTPTask *task, const gchar *error_format,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00103">remmina_sftp_client.c:103</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html_adef92bcfa7b9a86debf0531d0239a5df"><div class="ttname"><a href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">_RemminaSFTP::sftp_sess</a></div><div class="ttdeci">sftp_session sftp_sess</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00225">remmina_ssh.h:225</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a9af7875a6abd79732abd2346371f8fc9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">_RemminaFTPTask::type</a></div><div class="ttdeci">gint type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00111">remmina_ftp_client.h:111</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a989f55fb6d44337caba7bbf98e93f3ce"><div class="ttname"><a href="remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce">remmina_sftp_client_thread_upload_file</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_upload_file(RemminaSFTPClient *client, RemminaSFTP *sftp, RemminaFTPTask *task, const gchar *remote_path, const gchar *local_path, guint64 *donesize)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00393">remmina_sftp_client.c:393</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a7313e39f8344821d578a23ef1308aa5c"><div class="ttname"><a href="remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c">remmina_sftp_client_thread_recursive_localdir</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_recursive_localdir(RemminaSFTPClient *client, RemminaFTPTask *task, const gchar *rootdir_path, const gchar *subdir_path, GPtrArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00329">remmina_sftp_client.c:329</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a709bf3bb81fba206dac478d08d42aadc"><div class="ttname"><a href="remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc">remmina_ftp_client_get_dir</a></div><div class="ttdeci">gchar * remmina_ftp_client_get_dir(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01144">remmina_ftp_client.c:1144</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a52b86e14d8abd0a5b6ddeb464a22a5f0"><div class="ttname"><a href="remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0">remmina_sftp_client_init</a></div><div class="ttdeci">static void remmina_sftp_client_init(RemminaSFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00867">remmina_sftp_client.c:867</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_ad6c612bb5172905eb63bfd5b672e1875"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">_RemminaSFTPClient::thread_abort</a></div><div class="ttdeci">gboolean thread_abort</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00063">remmina_sftp_client.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_ac2b00cace6fd885736792664843be667"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">_RemminaFTPTask::tooltip</a></div><div class="ttdeci">gchar * tooltip</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00122">remmina_ftp_client.h:122</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a33e4993b60c36eae89a6a0a943d28141"><div class="ttname"><a href="remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141">remmina_ftp_client_get_waiting_task</a></div><div class="ttdeci">RemminaFTPTask * remmina_ftp_client_get_waiting_task(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01153">remmina_ftp_client.c:1153</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a788420fb944ee5059cbc53f8648e9636"><div class="ttname"><a href="remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636">remmina_sftp_client_on_newtask</a></div><div class="ttdeci">static void remmina_sftp_client_on_newtask(RemminaSFTPClient *client, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00803">remmina_sftp_client.c:803</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a313b03e3a3718a3ccd5dc35d7123e112"><div class="ttname"><a href="remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112">remmina_sftp_client_thread_set_finish</a></div><div class="ttdeci">static void remmina_sftp_client_thread_set_finish(RemminaSFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00122">remmina_sftp_client.c:122</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a6c056e13ab45261dc4f07720910f3270"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">_RemminaSFTPClient::taskid</a></div><div class="ttdeci">gint taskid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00062">remmina_sftp_client.h:62</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ad96358f40ab056c91f796ddda886a1dd"><div class="ttname"><a href="remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd">remmina_ftp_client_update_task</a></div><div class="ttdeci">void remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01197">remmina_ftp_client.c:1197</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a86940733e5b9cf77b276084e437dcac0"><div class="ttname"><a href="remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0">remmina_public_combine_path</a></div><div class="ttdeci">gchar * remmina_public_combine_path(const gchar *path1, const gchar *path2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00323">remmina_public.c:323</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_ac2b4d83fed9c42029fee134684601aba"><div class="ttname"><a href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client_new</a></div><div class="ttdeci">RemminaSFTPClient * remmina_sftp_client_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00978">remmina_sftp_client.c:978</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a96c70def014ba9a0a7177d7efc1da830"><div class="ttname"><a href="remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830">remmina_sftp_client_thread_update_task</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_update_task(RemminaSFTPClient *client, RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00092">remmina_sftp_client.c:92</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a20d0575c04eb24553aeba7d0316e7a2e"><div class="ttname"><a href="remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e">remmina_ftp_client_get_overwrite_status</a></div><div class="ttdeci">gboolean remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00834">remmina_ftp_client.c:834</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d">REMMINA_FTP_TASK_TYPE_DOWNLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a9fb6d25e4676b2fa574f958a5ba271a1"><div class="ttname"><a href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a></div><div class="ttdeci">void remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00985">remmina_sftp_client.c:985</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c">REMMINA_FTP_TASK_STATUS_ERROR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00091">remmina_ftp_client.h:91</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24"><div class="ttname"><a href="remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24">REMMINA_FTP_TASK_TYPE_UPLOAD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00084">remmina_ftp_client.h:84</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__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2">REMMINA_FTP_FILE_COLUMN_PERMISSION</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00078">remmina_ftp_client.h:78</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_aa43b65303f43a0658201bf8f27e232f8"><div class="ttname"><a href="remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8">G_DEFINE_TYPE</a></div><div class="ttdeci">G_DEFINE_TYPE(RemminaSFTPClient, remmina_sftp_client, REMMINA_TYPE_FTP_CLIENT)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00058">remmina_sftp_client.c:58</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a659de1105971e3fda3d44d089277d6a7"><div class="ttname"><a href="remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7">remmina_ftp_task_free</a></div><div class="ttdeci">void remmina_ftp_task_free(RemminaFTPTask *task)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01228">remmina_ftp_client.c:1228</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a2e39a69f60d38b46bc603df0ae368aed"><div class="ttname"><a href="remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed">remmina_ftp_client_add_file</a></div><div class="ttdeci">void remmina_ftp_client_add_file(RemminaFTPClient *client,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01086">remmina_ftp_client.c:1086</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a3d87ea9dbecdeba8ddcf17a7ab1b783c"><div class="ttname"><a href="remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c">remmina_sftp_client_sftp_session_closedir</a></div><div class="ttdeci">static gboolean remmina_sftp_client_sftp_session_closedir(RemminaSFTPClient *client, sftp_dir sftpdir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00708">remmina_sftp_client.c:708</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c">REMMINA_FTP_FILE_COLUMN_USER</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00076">remmina_ftp_client.h:76</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a1ef77e687209d258ec576c31614ea60f"><div class="ttname"><a href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a></div><div class="ttdeci">void remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01113">remmina_ftp_client.c:1113</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96"><div class="ttname"><a href="remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96">REMMINA_FTP_FILE_COLUMN_NAME</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00074">remmina_ftp_client.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00056">remmina_sftp_client.h:56</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a0a7129a1bf066b4aa5106c9599a84a6b"><div class="ttname"><a href="remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b">remmina_sftp_client_on_deletefile</a></div><div class="ttdeci">static gboolean remmina_sftp_client_on_deletefile(RemminaSFTPClient *client, gint type, gchar *name, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00835">remmina_sftp_client.c:835</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a7b25ac5d22898d2e8a16d8d62bb62ae4"><div class="ttname"><a href="remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4">remmina_sftp_client_thread_download_file</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_download_file(RemminaSFTPClient *client, RemminaSFTP *sftp, RemminaFTPTask *task, const gchar *remote_path, const gchar *local_path, guint64 *donesize)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00152">remmina_sftp_client.c:152</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a179a26ffe6977ede5aa084619e29eba9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">_RemminaFTPTask::localdir</a></div><div class="ttdeci">gchar * localdir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00116">remmina_ftp_client.h:116</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5">REMMINA_FTP_FILE_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html"><div class="ttname"><a href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00109">remmina_ftp_client.h:109</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a95d95acad60636dd6c45ca93620d1f5b"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">_RemminaSFTPClient::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00061">remmina_sftp_client.h:61</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1500d65d1f0751812f237c1cb4d15188"><div class="ttname"><a href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a210a60fe2706ad22adce6ea8f16e4bce"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">_RemminaFTPTask::tasktype</a></div><div class="ttdeci">gint tasktype</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00114">remmina_ftp_client.h:114</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a94ca25645f970c7eb2a78b0234c60077"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">remmina_masterthread_exec_data::sftp_client_confirm_resume</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@23 sftp_client_confirm_resume</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a8facf6f7974c51e238abd7096c729307"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">_RemminaFTPTask::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00112">remmina_ftp_client.h:112</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</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__sftp__client_8c_html_ac063368992734eda25c7632e5af7ef05"><div class="ttname"><a href="remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05">remmina_sftp_client_thread_get_task</a></div><div class="ttdeci">static RemminaFTPTask * remmina_sftp_client_thread_get_task(RemminaSFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00133">remmina_sftp_client.c:133</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_ae87948f1c87c6eb6b16664665cac9a2c"><div class="ttname"><a href="remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c">remmina_sftp_client_refresh</a></div><div class="ttdeci">static gboolean remmina_sftp_client_refresh(RemminaSFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00889">remmina_sftp_client.c:889</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a09bd4aee40b6e8d6ba8ffaa84dc95330"><div class="ttname"><a href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a></div><div class="ttdeci">gchar * remmina_ssh_convert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_af749de0df07992d5b1f30cc32c3556cc"><div class="ttname"><a href="remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc">remmina_ftp_client_clear_file_list</a></div><div class="ttdeci">void remmina_ftp_client_clear_file_list(RemminaFTPClient *client)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01077">remmina_ftp_client.c:1077</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1e09b32044c240a7dce0ad8afcbf0ff2"><div class="ttname"><a href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a></div><div class="ttdeci">gboolean remmina_sftp_open(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aec622571acc15e022f458efffcc275b0"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">_RemminaFTPTask::donesize</a></div><div class="ttdeci">gfloat donesize</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00121">remmina_ftp_client.h:121</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a48fdf499ca63ec9f1f7e9af86f19a3f7"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">_RemminaFTPTask::size</a></div><div class="ttdeci">gfloat size</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00119">remmina_ftp_client.h:119</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_aea3e3b72fb51d466fee78af11234d7b7"><div class="ttname"><a href="remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7">remmina_sftp_client_thread_main</a></div><div class="ttdeci">static gpointer remmina_sftp_client_thread_main(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00493">remmina_sftp_client.c:493</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8h_html"><div class="ttname"><a href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aaaf171c31b73f06f1026239253d9f6b9"><div class="ttname"><a href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a></div><div class="ttdeci">void remmina_sftp_free(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_adcbfd655b050ff016dedfe177c9e0dee"><div class="ttname"><a href="remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee">remmina_sftp_client_thread_recursive_dir</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_recursive_dir(RemminaSFTPClient *client, RemminaSFTP *sftp, RemminaFTPTask *task, const gchar *rootdir_path, const gchar *subdir_path, GPtrArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00258">remmina_sftp_client.c:258</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0"><div class="ttname"><a href="remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0">REMMINA_FTP_FILE_TYPE_DIR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00069">remmina_ftp_client.h:69</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a4fc3715741ac2e3dcea0efd5a74a3cf3"><div class="ttname"><a href="remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3">remmina_sftp_client_thread_mkdir</a></div><div class="ttdeci">static gboolean remmina_sftp_client_thread_mkdir(RemminaSFTPClient *client, RemminaSFTP *sftp, RemminaFTPTask *task, const gchar *path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00374">remmina_sftp_client.c:374</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html_a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca"><div class="ttname"><a href="remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca">REMMINA_FTP_TASK_STATUS_FINISH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00090">remmina_ftp_client.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_ab74654f5e47c939e1098c183a582023c"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">_RemminaSFTPClient::sftp</a></div><div class="ttdeci">RemminaSFTP * sftp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00059">remmina_sftp_client.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a1f66c9db34816532a1c12de30c57f210"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">_RemminaSFTPClient::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00064">remmina_sftp_client.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_a6985d2da0ed09c6b69c6360091d5b6c9"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">_RemminaFTPTask::status</a></div><div class="ttdeci">gint status</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00120">remmina_ftp_client.h:120</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a57ff0c0ad7c9b5201a90020953b3bd31"><div class="ttname"><a href="remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31">remmina_sftp_client_sftp_session_opendir</a></div><div class="ttdeci">static sftp_dir remmina_sftp_client_sftp_session_opendir(RemminaSFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00688">remmina_sftp_client.c:688</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_class_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00068">remmina_sftp_client.h:68</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_task_html_aff3ca859a6687076313869aeb569dd87"><div class="ttname"><a href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">_RemminaFTPTask::remotedir</a></div><div class="ttdeci">gchar * remotedir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00115">remmina_ftp_client.h:115</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_aad84c6609cb431d48121ae5e0902441b"><div class="ttname"><a href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00336">remmina_ssh.c:336</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_ad2d75d3cee69addbb691a85ac864db0f"><div class="ttname"><a href="remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f">remmina_sftp_client_on_canceltask</a></div><div class="ttdeci">static gboolean remmina_sftp_client_on_canceltask(RemminaSFTPClient *client, gint taskid, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00813">remmina_sftp_client.c:813</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__client_8c.html">remmina_sftp_client.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__client_8h.html b/docs/remmina__sftp__client_8h.html
new file mode 100644
index 000000000..1dcb85bd4
--- /dev/null
+++ b/docs/remmina__sftp__client_8h.html
@@ -0,0 +1,260 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_client.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__client_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sftp_client.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sftp__client_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ae8f4eac867cf601e2eaf1e86f60726e6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a></td></tr>
+<tr class="separator:ae8f4eac867cf601e2eaf1e86f60726e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac88f745b57a5e415ce3f8bf7c7a32492"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">RemminaSFTPClientClass</a></td></tr>
+<tr class="separator:ac88f745b57a5e415ce3f8bf7c7a32492"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acc0b1ad0ee4ba202095b0ec1e961555d"><td class="memItemLeft" align="right" valign="top">GType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d">remmina_sftp_client_get_type</a> (void) G_GNUC_CONST</td></tr>
+<tr class="separator:acc0b1ad0ee4ba202095b0ec1e961555d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a3d678ad99a04a8b6aa3d958d60dc7d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d">remmina_sftp_client_new</a> ()</td></tr>
+<tr class="separator:a0a3d678ad99a04a8b6aa3d958d60dc7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fb6d25e4676b2fa574f958a5ba271a1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp)</td></tr>
+<tr class="separator:a9fb6d25e4676b2fa574f958a5ba271a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a138904893cb9c7f6535b8dfc7ba17e33"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a> (<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *client, const gchar *path)</td></tr>
+<tr class="separator:a138904893cb9c7f6535b8dfc7ba17e33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ae8f4eac867cf601e2eaf1e86f60726e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8f4eac867cf601e2eaf1e86f60726e6">&#9670;&nbsp;</a></span>RemminaSFTPClient</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a> <a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac88f745b57a5e415ce3f8bf7c7a32492"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac88f745b57a5e415ce3f8bf7c7a32492">&#9670;&nbsp;</a></span>RemminaSFTPClientClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a> <a class="el" href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">RemminaSFTPClientClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a138904893cb9c7f6535b8dfc7ba17e33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a138904893cb9c7f6535b8dfc7ba17e33">&#9670;&nbsp;</a></span>remmina_sftp_client_confirm_resume()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_sftp_client_confirm_resume </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00906">906</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="acc0b1ad0ee4ba202095b0ec1e961555d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc0b1ad0ee4ba202095b0ec1e961555d">&#9670;&nbsp;</a></span>remmina_sftp_client_get_type()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GType remmina_sftp_client_get_type </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a0a3d678ad99a04a8b6aa3d958d60dc7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a3d678ad99a04a8b6aa3d958d60dc7d">&#9670;&nbsp;</a></span>remmina_sftp_client_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>* remmina_sftp_client_new </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00978">978</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="a9fb6d25e4676b2fa574f958a5ba271a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fb6d25e4676b2fa574f958a5ba271a1">&#9670;&nbsp;</a></span>remmina_sftp_client_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sftp_client_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td>
+ <td class="paramname"><em>client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8c_source.html#l00985">985</a> of file <a class="el" href="remmina__sftp__client_8c_source.html">remmina_sftp_client.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__client_8h.js b/docs/remmina__sftp__client_8h.js
new file mode 100644
index 000000000..f03757fed
--- /dev/null
+++ b/docs/remmina__sftp__client_8h.js
@@ -0,0 +1,11 @@
+var remmina__sftp__client_8h =
+[
+ [ "_RemminaSFTPClient", "struct___remmina_s_f_t_p_client.html", "struct___remmina_s_f_t_p_client" ],
+ [ "_RemminaSFTPClientClass", "struct___remmina_s_f_t_p_client_class.html", "struct___remmina_s_f_t_p_client_class" ],
+ [ "RemminaSFTPClient", "remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6", null ],
+ [ "RemminaSFTPClientClass", "remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492", null ],
+ [ "remmina_sftp_client_confirm_resume", "remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33", null ],
+ [ "remmina_sftp_client_get_type", "remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d", null ],
+ [ "remmina_sftp_client_new", "remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d", null ],
+ [ "remmina_sftp_client_open", "remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sftp__client_8h_source.html b/docs/remmina__sftp__client_8h_source.html
new file mode 100644
index 000000000..814a0c3ad
--- /dev/null
+++ b/docs/remmina__sftp__client_8h_source.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_client.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__client_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sftp_client.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sftp__client_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-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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</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="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__ftp__client_8h.html">remmina_ftp_client.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__ssh_8h.html">remmina_ssh.h</a>&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define REMMINA_TYPE_SFTP_CLIENT (remmina_sftp_client_get_type())</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define REMMINA_SFTP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_SFTP_CLIENT, RemminaSFTPClient))</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define REMMINA_SFTP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), REMMINA_TYPE_SFTP_CLIENT, RemminaSFTPClientClass))</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define REMMINA_IS_SFTP_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_SFTP_CLIENT))</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define REMMINA_IS_SFTP_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), REMMINA_TYPE_SFTP_CLIENT))</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define REMMINA_SFTP_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_SFTP_CLIENT, RemminaSFTPClientClass))</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client.html"> 56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a> {</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1"> 57</a></span>&#160; <a class="code" href="struct___remmina_f_t_p_client.html">RemminaFTPClient</a> <a class="code" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">client</a>;</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"><a class="line" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c"> 59</a></span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> * <a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>;</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"><a class="line" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b"> 61</a></span>&#160; pthread_t <a class="code" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270"> 62</a></span>&#160; gint <a class="code" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875"> 63</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210"> 64</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">gp</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client_class.html"> 68</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a> {</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d"> 69</a></span>&#160; <a class="code" href="struct___remmina_f_t_p_client_class.html">RemminaFTPClientClass</a> <a class="code" href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d">parent_class</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;} <a class="code" href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">RemminaSFTPClientClass</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;GType <a class="code" href="remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d">remmina_sftp_client_get_type</a>(<span class="keywordtype">void</span>) G_GNUC_CONST;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *<a class="code" href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d">remmina_sftp_client_new</a>();</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *<a class="code" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">client</a>, <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *<a class="code" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a>);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;gint <a class="code" href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a>(<a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> *<a class="code" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">client</a>, <span class="keyword">const</span> gchar *path);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;G_END_DECLS</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_LIBSSH */</span><span class="preprocessor"></span></div><div class="ttc" id="remmina__sftp__client_8h_html_acc0b1ad0ee4ba202095b0ec1e961555d"><div class="ttname"><a href="remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d">remmina_sftp_client_get_type</a></div><div class="ttdeci">GType remmina_sftp_client_get_type(void) G_GNUC_CONST</div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html"><div class="ttname"><a href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00222">remmina_ssh.h:222</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00050">remmina_ftp_client.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_f_t_p_client_class_html"><div class="ttname"><a href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8h_source.html#l00056">remmina_ftp_client.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_ad6c612bb5172905eb63bfd5b672e1875"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">_RemminaSFTPClient::thread_abort</a></div><div class="ttdeci">gboolean thread_abort</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00063">remmina_sftp_client.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a6c056e13ab45261dc4f07720910f3270"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">_RemminaSFTPClient::taskid</a></div><div class="ttdeci">gint taskid</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00062">remmina_sftp_client.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_class_html_ac7786b1cfca2fcc92c85f10e4939f80d"><div class="ttname"><a href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d">_RemminaSFTPClientClass::parent_class</a></div><div class="ttdeci">RemminaFTPClientClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00069">remmina_sftp_client.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html_ae8f4eac867cf601e2eaf1e86f60726e6"><div class="ttname"><a href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a></div><div class="ttdeci">struct _RemminaSFTPClient RemminaSFTPClient</div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00056">remmina_sftp_client.h:56</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html_ac88f745b57a5e415ce3f8bf7c7a32492"><div class="ttname"><a href="remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492">RemminaSFTPClientClass</a></div><div class="ttdeci">struct _RemminaSFTPClientClass RemminaSFTPClientClass</div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html_a9fb6d25e4676b2fa574f958a5ba271a1"><div class="ttname"><a href="remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a></div><div class="ttdeci">void remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00985">remmina_sftp_client.c:985</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a95d95acad60636dd6c45ca93620d1f5b"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">_RemminaSFTPClient::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00061">remmina_sftp_client.h:61</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8h_html"><div class="ttname"><a href="remmina__ftp__client_8h.html">remmina_ftp_client.h</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html_a138904893cb9c7f6535b8dfc7ba17e33"><div class="ttname"><a href="remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33">remmina_sftp_client_confirm_resume</a></div><div class="ttdeci">gint remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00906">remmina_sftp_client.c:906</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a42cfd0524388c2c05ea4b926dbe966e1"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">_RemminaSFTPClient::client</a></div><div class="ttdeci">RemminaFTPClient client</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00057">remmina_sftp_client.h:57</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html_a0a3d678ad99a04a8b6aa3d958d60dc7d"><div class="ttname"><a href="remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d">remmina_sftp_client_new</a></div><div class="ttdeci">RemminaSFTPClient * remmina_sftp_client_new()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00978">remmina_sftp_client.c:978</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_ab74654f5e47c939e1098c183a582023c"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">_RemminaSFTPClient::sftp</a></div><div class="ttdeci">RemminaSFTP * sftp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00059">remmina_sftp_client.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a1f66c9db34816532a1c12de30c57f210"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">_RemminaSFTPClient::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00064">remmina_sftp_client.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_class_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00068">remmina_sftp_client.h:68</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__plugin_8c.html b/docs/remmina__sftp__plugin_8c.html
new file mode 100644
index 000000000..d3064c7ac
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8c.html
@@ -0,0 +1,594 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sftp_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sftp__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a74773791c4dac6cfda77f16a905699e2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">RemminaPluginSftpData</a></td></tr>
+<tr class="separator:a74773791c4dac6cfda77f16a905699e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7421d54c8a4a95b6b92de16779d91917"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, char **phost, int *pport)</td></tr>
+<tr class="separator:a7421d54c8a4a95b6b92de16779d91917"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab524c406d78b2e32a339884fbdae56a9"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_plugin_sftp_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:ab524c406d78b2e32a339884fbdae56a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abed4b9ee1509eb888b9d767b89d9fdb6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_plugin_sftp_client_on_realize</a> (GtkWidget *widget, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:abed4b9ee1509eb888b9d767b89d9fdb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3a2916593de087ed150cd9e00e4b543"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa3a2916593de087ed150cd9e00e4b543"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0553d8f4834a1865e3640ec4180e63c4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a0553d8f4834a1865e3640ec4180e63c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc468c14d98ace55509ad2b8fb502e3a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acc468c14d98ace55509ad2b8fb502e3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd7099f5655a134c598ef95564254323"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:abd7099f5655a134c598ef95564254323"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d16ecc8e6e653a678e7f93b033e5863"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a8d16ecc8e6e653a678e7f93b033e5863"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14a447ab8a10b109967d92c8d2db0ff9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a> (void)</td></tr>
+<tr class="separator:a14a447ab8a10b109967d92c8d2db0ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab69dae8eb9c3744fcf53a0f482b18f19"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a> []</td></tr>
+<tr class="separator:ab69dae8eb9c3744fcf53a0f482b18f19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a924786df34d61d90471f38dfd37aa855"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a> []</td></tr>
+<tr class="separator:a924786df34d61d90471f38dfd37aa855"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a999de1dbe291169ccc33dffa123a1315"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a> []</td></tr>
+<tr class="separator:a999de1dbe291169ccc33dffa123a1315"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a464296b351cd89c358ec77f521c8f7ab"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab">remmina_plugin_sftp</a></td></tr>
+<tr class="separator:a464296b351cd89c358ec77f521c8f7ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a74773791c4dac6cfda77f16a905699e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74773791c4dac6cfda77f16a905699e2">&#9670;&nbsp;</a></span>RemminaPluginSftpData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a> <a class="el" href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">RemminaPluginSftpData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a8d16ecc8e6e653a678e7f93b033e5863"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d16ecc8e6e653a678e7f93b033e5863">&#9670;&nbsp;</a></span>remmina_plugin_sftp_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_sftp_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00259">259</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="abed4b9ee1509eb888b9d767b89d9fdb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abed4b9ee1509eb888b9d767b89d9fdb6">&#9670;&nbsp;</a></span>remmina_plugin_sftp_client_on_realize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_sftp_client_on_realize </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00168">168</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acc468c14d98ace55509ad2b8fb502e3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc468c14d98ace55509ad2b8fb502e3a">&#9670;&nbsp;</a></span>remmina_plugin_sftp_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_sftp_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00229">229</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3a2916593de087ed150cd9e00e4b543"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3a2916593de087ed150cd9e00e4b543">&#9670;&nbsp;</a></span>remmina_plugin_sftp_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_sftp_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00178">178</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab524c406d78b2e32a339884fbdae56a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab524c406d78b2e32a339884fbdae56a9">&#9670;&nbsp;</a></span>remmina_plugin_sftp_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_plugin_sftp_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00082">82</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0553d8f4834a1865e3640ec4180e63c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0553d8f4834a1865e3640ec4180e63c4">&#9670;&nbsp;</a></span>remmina_plugin_sftp_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_sftp_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00208">208</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="abd7099f5655a134c598ef95564254323"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd7099f5655a134c598ef95564254323">&#9670;&nbsp;</a></span>remmina_plugin_sftp_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_sftp_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00252">252</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7421d54c8a4a95b6b92de16779d91917"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7421d54c8a4a95b6b92de16779d91917">&#9670;&nbsp;</a></span>remmina_plugin_sftp_start_direct_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_sftp_start_direct_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>phost</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>pport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a14a447ab8a10b109967d92c8d2db0ff9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14a447ab8a10b109967d92c8d2db0ff9">&#9670;&nbsp;</a></span>remmina_sftp_plugin_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sftp_plugin_register </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00356">356</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a464296b351cd89c358ec77f521c8f7ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a464296b351cd89c358ec77f521c8f7ab">&#9670;&nbsp;</a></span>remmina_plugin_sftp</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_sftp</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;SFTP&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SFTP - Secure File Transfer&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <span class="stringliteral">&quot;remmina-sftp-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-sftp-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a>, </div><div class="line"> <a class="code" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a>, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a0553d8f4834a1865e3640ec4180e63c4"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00208">remmina_sftp_plugin.c:208</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_aa3a2916593de087ed150cd9e00e4b543"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a></div><div class="ttdeci">static void remmina_plugin_sftp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00178">remmina_sftp_plugin.c:178</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a999de1dbe291169ccc33dffa123a1315"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_sftp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00320">remmina_sftp_plugin.c:320</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a924786df34d61d90471f38dfd37aa855"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_sftp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00301">remmina_sftp_plugin.c:301</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_acc468c14d98ace55509ad2b8fb502e3a"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00229">remmina_sftp_plugin.c:229</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a8d16ecc8e6e653a678e7f93b033e5863"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a></div><div class="ttdeci">static void remmina_plugin_sftp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00259">remmina_sftp_plugin.c:259</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_abd7099f5655a134c598ef95564254323"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00252">remmina_sftp_plugin.c:252</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00333">333</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a924786df34d61d90471f38dfd37aa855"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a924786df34d61d90471f38dfd37aa855">&#9670;&nbsp;</a></span>remmina_plugin_sftp_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_sftp_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_SFTP_FEATURE_PREF_SHOW_HIDDEN, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;showhidden&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show Hidden Files&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK),</div><div class="line"> REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Overwrite all&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL,</div><div class="line"> NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00301">301</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a999de1dbe291169ccc33dffa123a1315"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a999de1dbe291169ccc33dffa123a1315">&#9670;&nbsp;</a></span>remmina_sftp_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_sftp_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_sftp-ssh._tcp&quot;</span>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_auth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Authentication type&quot;</span>), FALSE, <a class="code" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;ssh_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;ssh_passphrase&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password to unlock private key&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_proxycommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH Proxy Command&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_ab69dae8eb9c3744fcf53a0f482b18f19"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a></div><div class="ttdeci">static gpointer ssh_auth[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00289">remmina_sftp_plugin.c:289</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00320">320</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab69dae8eb9c3744fcf53a0f482b18f19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab69dae8eb9c3744fcf53a0f482b18f19">&#9670;&nbsp;</a></span>ssh_auth</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer ssh_auth[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH identity file&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH agent&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;3&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Public key (automatic)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;4&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Kerberos (GSSAPI)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00289">289</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__plugin_8c.html">remmina_sftp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__plugin_8c.js b/docs/remmina__sftp__plugin_8c.js
new file mode 100644
index 000000000..b1982f6bd
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8c.js
@@ -0,0 +1,19 @@
+var remmina__sftp__plugin_8c =
+[
+ [ "_RemminaPluginSftpData", "struct___remmina_plugin_sftp_data.html", "struct___remmina_plugin_sftp_data" ],
+ [ "RemminaPluginSftpData", "remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2", null ],
+ [ "remmina_plugin_sftp_call_feature", "remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863", null ],
+ [ "remmina_plugin_sftp_client_on_realize", "remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6", null ],
+ [ "remmina_plugin_sftp_close_connection", "remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a", null ],
+ [ "remmina_plugin_sftp_init", "remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543", null ],
+ [ "remmina_plugin_sftp_main_thread", "remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9", null ],
+ [ "remmina_plugin_sftp_open_connection", "remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4", null ],
+ [ "remmina_plugin_sftp_query_feature", "remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323", null ],
+ [ "remmina_plugin_sftp_start_direct_tunnel", "remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917", null ],
+ [ "remmina_sftp_plugin_register", "remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9", null ],
+ [ "remmina_plugin_service", "remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_sftp", "remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab", null ],
+ [ "remmina_plugin_sftp_features", "remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855", null ],
+ [ "remmina_sftp_basic_settings", "remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315", null ],
+ [ "ssh_auth", "remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sftp__plugin_8c_source.html b/docs/remmina__sftp__plugin_8c_source.html
new file mode 100644
index 000000000..be2e8ed2f
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8c_source.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sftp_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sftp__plugin_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-2020 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;<a class="code" href="remmina__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</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">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</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;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</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__public_8h.html">remmina_public.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__sftp__client_8h.html">remmina_sftp_client.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__plugin__manager_8h.html">remmina_plugin_manager.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__ssh_8h.html">remmina_ssh.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__protocol__widget_8h.html">remmina_protocol_widget.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__sftp__plugin_8h.html">remmina_sftp_plugin.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SFTP_FEATURE_PREF_SHOW_HIDDEN 1</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL 2</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY &quot;overwrite_all&quot;</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginSftpData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;);</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_sftp_data.html"> 58</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a> {</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f"> 59</a></span>&#160; <a class="code" href="struct___remmina_s_f_t_p_client.html">RemminaSFTPClient</a> * <a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5"> 60</a></span>&#160; pthread_t <a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab"> 61</a></span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> * <a class="code" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <a class="code" href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">RemminaPluginSftpData</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 64</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917"> 66</a></span>&#160;gboolean <a class="code" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keywordtype">char</span> **phost, <span class="keywordtype">int</span> *pport)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; gchar *hostport;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; hostport = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, 22, FALSE);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (hostport == NULL) {</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(hostport, 22, phost, pport);</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"> 78</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9"> 82</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_plugin_sftp_main_thread</a>(gpointer data)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;{</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a> *gpdata;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *<a class="code" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a> = NULL;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; gboolean cont = FALSE;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; gint ret;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">const</span> gchar *cs;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; gchar *host;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">int</span> port;</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; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; CANCEL_ASYNC</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; gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; <span class="comment">/* we may need to open a new tunnel too */</span></div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; host = NULL;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; port = 0;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a>(gp, &amp;host, &amp;port))</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; ssh = g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;user-data&quot;</span>);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span> (ssh) {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* Create SFTP connection based on existing SSH session */</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; sftp = <a class="code" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a>(ssh);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> = host;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a> = port;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(REMMINA_SSH(sftp)) &amp;&amp;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(REMMINA_SSH(sftp), NULL, gp, remminafile) == <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a> &amp;&amp;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a>(sftp))</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; cont = TRUE;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">/* New SFTP connection */</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; sftp = <a class="code" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a>(remminafile);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; ssh = REMMINA_SSH(sftp);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> = host;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a> = port;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(ssh)) {</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</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; ret = <a class="code" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a>(ssh, gp, remminafile);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>) {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>)</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a>(sftp)) {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">break</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;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; cs = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;execpath&quot;</span>);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span> (cs &amp;&amp; cs[0])</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a>(REMMINA_FTP_CLIENT(gpdata-&gt;client), cs);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; cont = TRUE;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">break</span>;</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"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">if</span> (!cont) {</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">if</span> (sftp) <a class="code" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a>(sftp);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a>(REMMINA_SFTP_CLIENT(gpdata-&gt;client), sftp);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="comment">/* RemminaSFTPClient owns the object, we just take the reference */</span></div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gpdata-&gt;sftp = <a class="code" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</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; gpdata-&gt;thread = 0;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6"> 168</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_plugin_sftp_client_on_realize</a>(GtkWidget *widget, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a>(REMMINA_FTP_CLIENT(widget), remminafile);</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;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543"> 178</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;{</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a> *gpdata;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a>, 1);</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a> = <a class="code" href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client_new</a>();</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>-&gt;<a class="code" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">gp</a> = gp;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; gtk_widget_show(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>));</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; gtk_container_add(GTK_CONTAINER(gp), GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>));</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a>(REMMINA_FTP_CLIENT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>),</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;showhidden&quot;</span>, FALSE));</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; <a class="code" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a>(REMMINA_FTP_CLIENT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>),</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY, FALSE));</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>));</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>),</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="stringliteral">&quot;realize&quot;</span>, G_CALLBACK(<a class="code" href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_plugin_sftp_client_on_realize</a>), gp);</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;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4"> 208</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 210</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">protocol_plugin_set_expand</a>(gp, TRUE);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, 640);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, 480);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>, NULL, <a class="code" href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_plugin_sftp_main_thread</a>, gp)) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="stringliteral">&quot;Could not initialize pthread. Falling back to non-thread mode…&quot;</span>);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a> = 0;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a"> 229</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;{</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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"> 235</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>) {</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; pthread_cancel(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>) pthread_join(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a>, NULL);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a>(REMMINA_FTP_CLIENT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>), remminafile);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="comment">/* The session preference overwrite_all is always saved to FALSE in order</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> * to avoid unwanted overwriting.</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> * If we&#39;d change idea just remove the next line to save the preference. */</span></div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c">remmina_file_set_int</a>(remminafile,</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY, FALSE);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323"> 252</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;}</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863"> 259</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <a class="code" href="struct___remmina_plugin_sftp_data.html">RemminaPluginSftpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SSH:</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a>(</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp), <span class="stringliteral">&quot;SSH&quot;</span>),</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; NULL, gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a>, NULL);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SFTP:</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a>(</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp), <span class="stringliteral">&quot;SFTP&quot;</span>),</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; NULL, gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a>, NULL);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_SFTP_FEATURE_PREF_SHOW_HIDDEN:</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a>(REMMINA_FTP_CLIENT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>),</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;showhidden&quot;</span>, FALSE));</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL:</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a>(REMMINA_FTP_CLIENT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a>),</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile,</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY, FALSE));</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; }</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;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19"> 289</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>[] =</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;{</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>),</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH identity file&quot;</span>),</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH agent&quot;</span>),</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="stringliteral">&quot;3&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Public key (automatic)&quot;</span>),</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="stringliteral">&quot;4&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Kerberos (GSSAPI)&quot;</span>),</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; NULL</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;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855"> 301</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a>[] =</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;{</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_SFTP_FEATURE_PREF_SHOW_HIDDEN, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;showhidden&quot;</span>,</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show Hidden Files&quot;</span>) },</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK),</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; REMMINA_PLUGIN_SFTP_FEATURE_PREF_OVERWRITE_ALL_KEY, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Overwrite all&quot;</span>) },</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL,</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; NULL }</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;};</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315"> 320</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a>[] =</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"> 322</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_sftp-ssh._tcp&quot;</span>, NULL },</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_auth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Authentication type&quot;</span>), FALSE, <a class="code" href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>, NULL },</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;ssh_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;ssh_passphrase&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password to unlock private key&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_proxycommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH Proxy Command&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;};</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab"> 333</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab">remmina_plugin_sftp</a> =</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;{</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="stringliteral">&quot;SFTP&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SFTP - Secure File Transfer&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="stringliteral">&quot;remmina-sftp-symbolic&quot;</span>, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="stringliteral">&quot;remmina-sftp-symbolic&quot;</span>, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; NULL, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; NULL <span class="comment">// Screenshot support unavailable</span></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"> 355</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4"> 356</a></span>&#160;<a class="code" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;{</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; remmina_plugin_service = &amp;<a class="code" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a>;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_plugin_sftp);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;}</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;}</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;<span class="preprocessor">#endif</span></div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a2aaef09531b1694c183a5ba530fcc2fa"><div class="ttname"><a href="remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa">remmina_ftp_client_load_state</a></div><div class="ttdeci">void remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01061">remmina_ftp_client.c:1061</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_ae5614fa3b465b83d0a5fa2245a97f45f"><div class="ttname"><a href="remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f">remmina_ftp_client_set_overwrite_status</a></div><div class="ttdeci">void remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00827">remmina_ftp_client.c:827</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acf69725720378340e1a51c87e7638a7f"><div class="ttname"><a href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth_gui(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a7421d54c8a4a95b6b92de16779d91917"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a></div><div class="ttdeci">gboolean remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00066">remmina_sftp_plugin.c:66</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__ftp__client_8c_html_adb002077547492e9d56c68281a1607d6"><div class="ttname"><a href="remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6">remmina_ftp_client_set_show_hidden</a></div><div class="ttdeci">void remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l00802">remmina_ftp_client.c:802</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3aaebd7f03b7d8601818fabc46b787ed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH::error</a></div><div class="ttdeci">gchar * error</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00079">remmina_ssh.h:79</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a52a0986eaf54c9e606ce9cdf8bb57e60"><div class="ttname"><a href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a></div><div class="ttdeci">RemminaFile * remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00711">remmina_file.c:711</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html"><div class="ttname"><a href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00222">remmina_ssh.h:222</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8h_html"><div class="ttname"><a href="remmina__sftp__client_8h.html">remmina_sftp_client.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html"><div class="ttname"><a href="struct___remmina_s_s_h.html">_RemminaSSH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00059">remmina_ssh.h:59</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_abed4b9ee1509eb888b9d767b89d9fdb6"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6">remmina_plugin_sftp_client_on_realize</a></div><div class="ttdeci">static void remmina_plugin_sftp_client_on_realize(GtkWidget *widget, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00168">remmina_sftp_plugin.c:168</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00108">remmina_ssh.h:108</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a14a447ab8a10b109967d92c8d2db0ff9"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9">remmina_sftp_plugin_register</a></div><div class="ttdeci">void remmina_sftp_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00356">remmina_sftp_plugin.c:356</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a0553d8f4834a1865e3640ec4180e63c4"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4">remmina_plugin_sftp_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00208">remmina_sftp_plugin.c:208</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a464296b351cd89c358ec77f521c8f7ab"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab">remmina_plugin_sftp</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_sftp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00333">remmina_sftp_plugin.c:333</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a74773791c4dac6cfda77f16a905699e2"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2">RemminaPluginSftpData</a></div><div class="ttdeci">struct _RemminaPluginSftpData RemminaPluginSftpData</div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_aa3a2916593de087ed150cd9e00e4b543"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543">remmina_plugin_sftp_init</a></div><div class="ttdeci">static void remmina_plugin_sftp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00178">remmina_sftp_plugin.c:178</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_sftp_data_html_aef8517c9af56f33ac9933815930e335f"><div class="ttname"><a href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">_RemminaPluginSftpData::client</a></div><div class="ttdeci">RemminaSFTPClient * client</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00059">remmina_sftp_plugin.c:59</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_ab69dae8eb9c3744fcf53a0f482b18f19"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a></div><div class="ttdeci">static gpointer ssh_auth[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00289">remmina_sftp_plugin.c:289</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_ac2b4d83fed9c42029fee134684601aba"><div class="ttname"><a href="remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba">remmina_sftp_client_new</a></div><div class="ttdeci">RemminaSFTPClient * remmina_sftp_client_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00978">remmina_sftp_client.c:978</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="remmina__sftp__client_8c_html_a9fb6d25e4676b2fa574f958a5ba271a1"><div class="ttname"><a href="remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1">remmina_sftp_client_open</a></div><div class="ttdeci">void remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8c_source.html#l00985">remmina_sftp_client.c:985</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</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__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#l00172">remmina_plugin_manager.c:172</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_ab524c406d78b2e32a339884fbdae56a9"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9">remmina_plugin_sftp_main_thread</a></div><div class="ttdeci">static gpointer remmina_plugin_sftp_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00082">remmina_sftp_plugin.c:82</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_sftp_data_html_afa1aca33155a3bee87984568651bc5ab"><div class="ttname"><a href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">_RemminaPluginSftpData::sftp</a></div><div class="ttdeci">RemminaSFTP * sftp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00061">remmina_sftp_plugin.c:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_sftp_data_html_ac68cbef0e07b34da2b0dc8e5f022bda5"><div class="ttname"><a href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">_RemminaPluginSftpData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00060">remmina_sftp_plugin.c:60</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00064">remmina_sftp_plugin.c:64</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a76ed92539dfe749a24a3a3b99f3a644f"><div class="ttname"><a href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH::tunnel_entrance_port</a></div><div class="ttdeci">gint tunnel_entrance_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00087">remmina_ssh.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a1ef77e687209d258ec576c31614ea60f"><div class="ttname"><a href="remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f">remmina_ftp_client_set_dir</a></div><div class="ttdeci">void remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01113">remmina_ftp_client.c:1113</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a999de1dbe291169ccc33dffa123a1315"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315">remmina_sftp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_sftp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00320">remmina_sftp_plugin.c:320</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#l00518">remmina_file.c:518</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4558dbff70064da3de58a6d684611fad"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">_RemminaPluginService::protocol_plugin_set_expand</a></div><div class="ttdeci">void(* protocol_plugin_set_expand)(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00156">plugin.h:156</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00056">remmina_sftp_client.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aebc7525b6f72d22c1ce4df93c1576602"><div class="ttname"><a href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH::tunnel_entrance_host</a></div><div class="ttdeci">gchar * tunnel_entrance_host</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00086">remmina_ssh.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_sftp_data_html"><div class="ttname"><a href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00058">remmina_sftp_plugin.c:58</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1500d65d1f0751812f237c1cb4d15188"><div class="ttname"><a href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1e09b32044c240a7dce0ad8afcbf0ff2"><div class="ttname"><a href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a></div><div class="ttdeci">gboolean remmina_sftp_open(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a924786df34d61d90471f38dfd37aa855"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855">remmina_plugin_sftp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_sftp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00301">remmina_sftp_plugin.c:301</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8h_html"><div class="ttname"><a href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aaaf171c31b73f06f1026239253d9f6b9"><div class="ttname"><a href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a></div><div class="ttdeci">void remmina_sftp_free(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a8cc8cc627e22e71e257afa9c74d373ef"><div class="ttname"><a href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">_RemminaPluginService::open_connection</a></div><div class="ttdeci">GtkWidget *(* open_connection)(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00220">plugin.h:220</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a3d7138d9cbbe44aea15440436ce85d6e"><div class="ttname"><a href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_acc468c14d98ace55509ad2b8fb502e3a"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a">remmina_plugin_sftp_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00229">remmina_sftp_plugin.c:229</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_client_html_a1f66c9db34816532a1c12de30c57f210"><div class="ttname"><a href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">_RemminaSFTPClient::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__client_8h_source.html#l00064">remmina_sftp_client.h:64</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_a8d16ecc8e6e653a678e7f93b033e5863"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863">remmina_plugin_sftp_call_feature</a></div><div class="ttdeci">static void remmina_plugin_sftp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00259">remmina_sftp_plugin.c:259</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="remmina__ftp__client_8c_html_a28b9006fa53e21e48df9237d68a847f3"><div class="ttname"><a href="remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3">remmina_ftp_client_save_state</a></div><div class="ttdeci">void remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ftp__client_8c_source.html#l01052">remmina_ftp_client.c:1052</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_aad84c6609cb431d48121ae5e0902441b"><div class="ttname"><a href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00336">remmina_ssh.c:336</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8c_html_abd7099f5655a134c598ef95564254323"><div class="ttname"><a href="remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323">remmina_plugin_sftp_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_sftp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00252">remmina_sftp_plugin.c:252</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__plugin_8c.html">remmina_sftp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__plugin_8h.html b/docs/remmina__sftp__plugin_8h.html
new file mode 100644
index 000000000..1c728bce6
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8h.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sftp_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sftp__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac06b00323f7ac1e7faea66d135bffba4"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4">remmina_sftp_plugin_register</a> (void)</td></tr>
+<tr class="separator:ac06b00323f7ac1e7faea66d135bffba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7421d54c8a4a95b6b92de16779d91917"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, char **phost, int *pport)</td></tr>
+<tr class="separator:a7421d54c8a4a95b6b92de16779d91917"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7421d54c8a4a95b6b92de16779d91917"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7421d54c8a4a95b6b92de16779d91917">&#9670;&nbsp;</a></span>remmina_plugin_sftp_start_direct_tunnel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_sftp_start_direct_tunnel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>phost</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>pport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac06b00323f7ac1e7faea66d135bffba4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac06b00323f7ac1e7faea66d135bffba4">&#9670;&nbsp;</a></span>remmina_sftp_plugin_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_sftp_plugin_register </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00356">356</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sftp__plugin_8h.js b/docs/remmina__sftp__plugin_8h.js
new file mode 100644
index 000000000..6d49beb29
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8h.js
@@ -0,0 +1,5 @@
+var remmina__sftp__plugin_8h =
+[
+ [ "remmina_plugin_sftp_start_direct_tunnel", "remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917", null ],
+ [ "remmina_sftp_plugin_register", "remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sftp__plugin_8h_source.html b/docs/remmina__sftp__plugin_8h_source.html
new file mode 100644
index 000000000..4cd7406e9
--- /dev/null
+++ b/docs/remmina__sftp__plugin_8h_source.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sftp_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sftp__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sftp_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sftp__plugin_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4">remmina_sftp_plugin_register</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;gboolean <a class="code" href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keywordtype">char</span> **phost, <span class="keywordtype">int</span> *pport);</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;G_END_DECLS</div><div class="ttc" id="remmina__sftp__plugin_8h_html_a7421d54c8a4a95b6b92de16779d91917"><div class="ttname"><a href="remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917">remmina_plugin_sftp_start_direct_tunnel</a></div><div class="ttdeci">gboolean remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00066">remmina_sftp_plugin.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="remmina__sftp__plugin_8h_html_ac06b00323f7ac1e7faea66d135bffba4"><div class="ttname"><a href="remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4">remmina_sftp_plugin_register</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_sftp_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sftp__plugin_8c_source.html#l00356">remmina_sftp_plugin.c:356</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sftp__plugin_8h.html">remmina_sftp_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sodium_8c.html b/docs/remmina__sodium_8c.html
new file mode 100644
index 000000000..9047fbb88
--- /dev/null
+++ b/docs/remmina__sodium_8c.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sodium.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sodium_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sodium.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Remmina encryption functions,.
+<a href="#details">More...</a></p>
+
+<p><a href="remmina__sodium_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae661257deabb27ca05747be21aac253c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a> (const gchar *pass)</td></tr>
+<tr class="separator:ae661257deabb27ca05747be21aac253c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b49fa9a654cb061a02f52577171e1e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a> (const gchar *pass)</td></tr>
+<tr class="separator:a42b49fa9a654cb061a02f52577171e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6df48c8b8aafee07bfe41fb89581aa5f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a> (const char *key, const char *pass)</td></tr>
+<tr class="separator:a6df48c8b8aafee07bfe41fb89581aa5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a17d17beeb57808af1c4299e3b4b94e9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a> (void)</td></tr>
+<tr class="separator:a17d17beeb57808af1c4299e3b4b94e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Remmina encryption functions,. </p>
+<dl class="section author"><dt>Author</dt><dd>Antenore Gatta </dd></dl>
+<dl class="section date"><dt>Date</dt><dd>31 Mar 2019</dd></dl>
+<p>These functions are used to:</p><ul>
+<li>hash password using the Argon2 hashing algorithm.</li>
+<li>Encrypt and decrypt data streams (files for examples).</li>
+</ul>
+<div class="fragment"><div class="line">gchar *test = <a class="code" href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a>(<span class="stringliteral">&quot;Password test&quot;</span>);</div><div class="line">g_free(test);</div><div class="line">test = <a class="code" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a>(<span class="stringliteral">&quot;Password Test&quot;</span>);</div><div class="line">g_free(test);</div><div class="line">gint rc = <a class="code" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a>(<span class="stringliteral">&quot;$argon2id$v=19$m=65536,t=2,p=1$6o+kpazlHSaevezH2J9qUA$4pN75oHgyh1BLc/b+ybLYHjZbatG4ZSCSlxLI32YPY4&quot;</span>, <span class="stringliteral">&quot;Password Test&quot;</span>);</div></div><!-- fragment -->
+<p class="definition">Definition in file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="a17d17beeb57808af1c4299e3b4b94e9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17d17beeb57808af1c4299e3b4b94e9a">&#9670;&nbsp;</a></span>remmina_sodium_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sodium_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00127">127</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="ae661257deabb27ca05747be21aac253c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae661257deabb27ca05747be21aac253c">&#9670;&nbsp;</a></span>remmina_sodium_pwhash()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sodium_pwhash </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>pass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00073">73</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="a42b49fa9a654cb061a02f52577171e1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42b49fa9a654cb061a02f52577171e1e">&#9670;&nbsp;</a></span>remmina_sodium_pwhash_str()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sodium_pwhash_str </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>pass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00095">95</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="a6df48c8b8aafee07bfe41fb89581aa5f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6df48c8b8aafee07bfe41fb89581aa5f">&#9670;&nbsp;</a></span>remmina_sodium_pwhash_str_verify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_sodium_pwhash_str_verify </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pass</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00116">116</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sodium_8c.html">remmina_sodium.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sodium_8c.js b/docs/remmina__sodium_8c.js
new file mode 100644
index 000000000..0a9da1cae
--- /dev/null
+++ b/docs/remmina__sodium_8c.js
@@ -0,0 +1,7 @@
+var remmina__sodium_8c =
+[
+ [ "remmina_sodium_init", "remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a", null ],
+ [ "remmina_sodium_pwhash", "remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c", null ],
+ [ "remmina_sodium_pwhash_str", "remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e", null ],
+ [ "remmina_sodium_pwhash_str_verify", "remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sodium_8c_source.html b/docs/remmina__sodium_8c_source.html
new file mode 100644
index 000000000..252d2fd4f
--- /dev/null
+++ b/docs/remmina__sodium_8c_source.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sodium.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sodium_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sodium.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sodium_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</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">#if defined(__linux__)</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"># include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"># include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"># include &lt;sys/ioctl.h&gt;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"># include &lt;linux/random.h&gt;</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</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="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__sodium_8h.html">remmina_sodium.h</a>&quot;</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</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"><a class="line" href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c"> 73</a></span>&#160;gchar *<a class="code" href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a>(<span class="keyword">const</span> gchar *pass)</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;{</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; g_info(<span class="stringliteral">&quot;Generating passphrase (may take a while)...&quot;</span>);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">/* Create a random salt for the key derivation function */</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> salt[crypto_pwhash_SALTBYTES] = { 0 };</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; randombytes_buf(salt, <span class="keyword">sizeof</span> salt);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* Use argon2 to convert password to a full size key */</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> key[crypto_secretbox_KEYBYTES];</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">if</span> (crypto_pwhash(key, <span class="keyword">sizeof</span> key, pass, strlen(pass), salt,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; crypto_pwhash_OPSLIMIT_INTERACTIVE,</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; crypto_pwhash_MEMLIMIT_INTERACTIVE,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; crypto_pwhash_ALG_DEFAULT) != 0) {</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; g_error(<span class="stringliteral">&quot;%s - Out of memory!&quot;</span>, __func__);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; exit(1);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</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; g_info(<span class="stringliteral">&quot;%s - Password hashed&quot;</span>, __func__);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> g_strdup((<span class="keyword">const</span> <span class="keywordtype">char</span> *)key);</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"> 94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e"> 95</a></span>&#160;gchar *<a class="code" href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a>(<span class="keyword">const</span> gchar *pass)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; g_info(<span class="stringliteral">&quot;Generating passphrase (may take a while)...&quot;</span>);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">/* Create a random salt for the key derivation function */</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> salt[crypto_pwhash_SALTBYTES] = { 0 };</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; randombytes_buf(salt, <span class="keyword">sizeof</span> salt);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">/* Use argon2 to convert password to a full size key */</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">char</span> key[crypto_pwhash_STRBYTES];</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (crypto_pwhash_str(key, pass, strlen(pass),</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; crypto_pwhash_OPSLIMIT_INTERACTIVE,</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; crypto_pwhash_MEMLIMIT_INTERACTIVE) != 0) {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; g_error(<span class="stringliteral">&quot;%s - Out of memory!&quot;</span>, __func__);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; exit(1);</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;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; g_info(<span class="stringliteral">&quot;%s - Password hashed&quot;</span>, __func__);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">return</span> g_strdup((<span class="keyword">const</span> <span class="keywordtype">char</span> *)key);</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;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f"> 116</a></span>&#160;gint <a class="code" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key, <span class="keyword">const</span> <span class="keywordtype">char</span> *pass)</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;{</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; TRACE_CALL(__func__);</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; gint rc;</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; rc = crypto_pwhash_str_verify(key, pass, strlen(pass));</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">return</span> rc;</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"> 126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a"> 127</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;{</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor">#if defined(__linux__) &amp;&amp; defined(RNDGETENTCNT)</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">int</span> fd;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">int</span> c;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span> ((fd = open(<span class="stringliteral">&quot;/dev/random&quot;</span>, O_RDONLY)) != -1) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (ioctl(fd, RNDGETENTCNT, &amp;c) == 0 &amp;&amp; c &lt; 160) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; g_printerr(<span class="stringliteral">&quot;This system doesn&#39;t provide enough entropy to quickly generate high-quality random numbers.\n&quot;</span></div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="stringliteral">&quot;Installing the rng-utils/rng-tools, jitterentropy or haveged packages may help.\n&quot;</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="stringliteral">&quot;On virtualized Linux environments, also consider using virtio-rng.\n&quot;</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="stringliteral">&quot;The service will not start until enough entropy has been collected.\n&quot;</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; (void)close(fd);</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;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span> (sodium_init() &lt; 0)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; g_critical(<span class="stringliteral">&quot;%s - Failed to initialize sodium, it is not safe to use&quot;</span>, __func__);</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;<span class="preprocessor">#endif</span></div><div class="ttc" id="remmina__sodium_8h_html"><div class="ttname"><a href="remmina__sodium_8h.html">remmina_sodium.h</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a6df48c8b8aafee07bfe41fb89581aa5f"><div class="ttname"><a href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a></div><div class="ttdeci">gint remmina_sodium_pwhash_str_verify(const char *key, const char *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00116">remmina_sodium.c:116</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a42b49fa9a654cb061a02f52577171e1e"><div class="ttname"><a href="remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a></div><div class="ttdeci">gchar * remmina_sodium_pwhash_str(const gchar *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00095">remmina_sodium.c:95</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_ae661257deabb27ca05747be21aac253c"><div class="ttname"><a href="remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a></div><div class="ttdeci">gchar * remmina_sodium_pwhash(const gchar *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00073">remmina_sodium.c:73</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a17d17beeb57808af1c4299e3b4b94e9a"><div class="ttname"><a href="remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a></div><div class="ttdeci">void remmina_sodium_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00127">remmina_sodium.c:127</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sodium_8c.html">remmina_sodium.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sodium_8h.html b/docs/remmina__sodium_8h.html
new file mode 100644
index 000000000..27fef0940
--- /dev/null
+++ b/docs/remmina__sodium_8h.html
@@ -0,0 +1,208 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sodium.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sodium_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sodium.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sodium_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a17d17beeb57808af1c4299e3b4b94e9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a> (void)</td></tr>
+<tr class="separator:a17d17beeb57808af1c4299e3b4b94e9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae661257deabb27ca05747be21aac253c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a> (const gchar *pass)</td></tr>
+<tr class="separator:ae661257deabb27ca05747be21aac253c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42b49fa9a654cb061a02f52577171e1e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a> (const gchar *pass)</td></tr>
+<tr class="separator:a42b49fa9a654cb061a02f52577171e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6df48c8b8aafee07bfe41fb89581aa5f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a> (const char *key, const char *pass)</td></tr>
+<tr class="separator:a6df48c8b8aafee07bfe41fb89581aa5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a17d17beeb57808af1c4299e3b4b94e9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17d17beeb57808af1c4299e3b4b94e9a">&#9670;&nbsp;</a></span>remmina_sodium_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sodium_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00127">127</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="ae661257deabb27ca05747be21aac253c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae661257deabb27ca05747be21aac253c">&#9670;&nbsp;</a></span>remmina_sodium_pwhash()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sodium_pwhash </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>pass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00073">73</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="a42b49fa9a654cb061a02f52577171e1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42b49fa9a654cb061a02f52577171e1e">&#9670;&nbsp;</a></span>remmina_sodium_pwhash_str()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sodium_pwhash_str </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>pass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00095">95</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+<a id="a6df48c8b8aafee07bfe41fb89581aa5f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6df48c8b8aafee07bfe41fb89581aa5f">&#9670;&nbsp;</a></span>remmina_sodium_pwhash_str_verify()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_sodium_pwhash_str_verify </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pass</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sodium_8c_source.html#l00116">116</a> of file <a class="el" href="remmina__sodium_8c_source.html">remmina_sodium.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sodium_8h.html">remmina_sodium.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sodium_8h.js b/docs/remmina__sodium_8h.js
new file mode 100644
index 000000000..7f0dc0504
--- /dev/null
+++ b/docs/remmina__sodium_8h.js
@@ -0,0 +1,7 @@
+var remmina__sodium_8h =
+[
+ [ "remmina_sodium_init", "remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a", null ],
+ [ "remmina_sodium_pwhash", "remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c", null ],
+ [ "remmina_sodium_pwhash_str", "remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e", null ],
+ [ "remmina_sodium_pwhash_str_verify", "remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sodium_8h_source.html b/docs/remmina__sodium_8h_source.html
new file mode 100644
index 000000000..b63e10cc1
--- /dev/null
+++ b/docs/remmina__sodium_8h_source.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sodium.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sodium_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sodium.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sodium_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) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;sodium.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#define SODIUM_VERSION_INT (SODIUM_LIBRARY_VERSION_MAJOR * 10000 + SODIUM_LIBRARY_VERSION_MINOR * 100)</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;gchar *<a class="code" href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a>(<span class="keyword">const</span> gchar *pass);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;gchar *<a class="code" href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a>(<span class="keyword">const</span> gchar *pass);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;gint <a class="code" href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key, <span class="keyword">const</span> <span class="keywordtype">char</span> *pass);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</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;G_END_DECLS</div><div class="ttc" id="remmina__sodium_8h_html_a42b49fa9a654cb061a02f52577171e1e"><div class="ttname"><a href="remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e">remmina_sodium_pwhash_str</a></div><div class="ttdeci">gchar * remmina_sodium_pwhash_str(const gchar *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00095">remmina_sodium.c:95</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html_a6df48c8b8aafee07bfe41fb89581aa5f"><div class="ttname"><a href="remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a></div><div class="ttdeci">gint remmina_sodium_pwhash_str_verify(const char *key, const char *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00116">remmina_sodium.c:116</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html_ae661257deabb27ca05747be21aac253c"><div class="ttname"><a href="remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c">remmina_sodium_pwhash</a></div><div class="ttdeci">gchar * remmina_sodium_pwhash(const gchar *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00073">remmina_sodium.c:73</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html_a17d17beeb57808af1c4299e3b4b94e9a"><div class="ttname"><a href="remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a">remmina_sodium_init</a></div><div class="ttdeci">void remmina_sodium_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00127">remmina_sodium.c:127</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sodium_8h.html">remmina_sodium.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh_8c.html b/docs/remmina__ssh_8c.html
new file mode 100644
index 000000000..25a947bfe
--- /dev/null
+++ b/docs/remmina__ssh_8c.html
@@ -0,0 +1,499 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ssh.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ssh_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a72a58e416c4eeb9d17eaf76360ebee42"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a> (const gchar *id)</td></tr>
+<tr class="separator:a72a58e416c4eeb9d17eaf76360ebee42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6d8bdad543b3caead2b2b0339484798"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a> (void)</td></tr>
+<tr class="separator:ab6d8bdad543b3caead2b2b0339484798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc556f0a4335083436f6e19c204fa553"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *fmt)</td></tr>
+<tr class="separator:abc556f0a4335083436f6e19c204fa553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f3297263703b4259c1c9607d710995d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *fmt,...)</td></tr>
+<tr class="separator:a1f3297263703b4259c1c9607d710995d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a976d3c1a549c17f00a64eb05d4e0823c"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh_auth_interactive</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a976d3c1a549c17f00a64eb05d4e0823c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6f3f5c196175412049af0c440414e65"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh_auth_password</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:ad6f3f5c196175412049af0c440414e65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a553ee462228e3b6284297b5ab89c6156"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh_auth_pubkey</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a553ee462228e3b6284297b5ab89c6156"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8aee72091b09cde34c0e0efadde719a"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh_auth_auto_pubkey</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:aa8aee72091b09cde34c0e0efadde719a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e57a1b5ba4a3886c4cb79ece8894796"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh_auth_agent</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a6e57a1b5ba4a3886c4cb79ece8894796"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0eb19f950b34b360b28243a0b1883d67"><td class="memItemLeft" align="right" valign="top">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh_auth_gssapi</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a0eb19f950b34b360b28243a0b1883d67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad84c6609cb431d48121ae5e0902441b"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *password, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:aad84c6609cb431d48121ae5e0902441b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8920b4663823da39661a108f04b33694"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">common_identities</a> []</td></tr>
+<tr class="separator:a8920b4663823da39661a108f04b33694"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aad84c6609cb431d48121ae5e0902441b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad84c6609cb431d48121ae5e0902441b">&#9670;&nbsp;</a></span>remmina_ssh_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000010">Todo:</a></b></dt><dd>Here we should call gint method; method = ssh_userauth_list(ssh-&gt;session, NULL);</dd></dl>
+<p>SSH_AUTH_METHOD_PASSWORD SSH_AUTH_METHOD_PUBLICKEY SSH_AUTH_METHOD_HOSTBASED SSH_AUTH_METHOD_INTERACTIVE</p>
+<p>And than test both the method and the option selected by the user</p>
+<p>Some protocols may open new connections during the session. e.g: SPICE opens a new connection for some channels.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00336">336</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a6e57a1b5ba4a3886c4cb79ece8894796"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e57a1b5ba4a3886c4cb79ece8894796">&#9670;&nbsp;</a></span>remmina_ssh_auth_agent()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_agent </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00299">299</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="aa8aee72091b09cde34c0e0efadde719a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8aee72091b09cde34c0e0efadde719a">&#9670;&nbsp;</a></span>remmina_ssh_auth_auto_pubkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_auto_pubkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00279">279</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a0eb19f950b34b360b28243a0b1883d67"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0eb19f950b34b360b28243a0b1883d67">&#9670;&nbsp;</a></span>remmina_ssh_auth_gssapi()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_gssapi </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00316">316</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a976d3c1a549c17f00a64eb05d4e0823c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a976d3c1a549c17f00a64eb05d4e0823c">&#9670;&nbsp;</a></span>remmina_ssh_auth_interactive()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_interactive </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00166">166</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6f3f5c196175412049af0c440414e65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6f3f5c196175412049af0c440414e65">&#9670;&nbsp;</a></span>remmina_ssh_auth_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_password </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00191">191</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a553ee462228e3b6284297b5ab89c6156"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a553ee462228e3b6284297b5ab89c6156">&#9670;&nbsp;</a></span>remmina_ssh_auth_pubkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_pubkey </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00222">222</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="ab6d8bdad543b3caead2b2b0339484798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6d8bdad543b3caead2b2b0339484798">&#9670;&nbsp;</a></span>remmina_ssh_find_identity()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_find_identity </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00129">129</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a72a58e416c4eeb9d17eaf76360ebee42"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72a58e416c4eeb9d17eaf76360ebee42">&#9670;&nbsp;</a></span>remmina_ssh_identity_path()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_identity_path </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00120">120</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a1f3297263703b4259c1c9607d710995d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f3297263703b4259c1c9607d710995d">&#9670;&nbsp;</a></span>remmina_ssh_set_application_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_set_application_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00155">155</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="abc556f0a4335083436f6e19c204fa553"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc556f0a4335083436f6e19c204fa553">&#9670;&nbsp;</a></span>remmina_ssh_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00145">145</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a8920b4663823da39661a108f04b33694"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8920b4663823da39661a108f04b33694">&#9670;&nbsp;</a></span>common_identities</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* common_identities[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;.ssh/id_ed25519&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;.ssh/id_rsa&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;.ssh/id_dsa&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;.ssh/identity&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00110">110</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh_8c.html">remmina_ssh.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh_8c.js b/docs/remmina__ssh_8c.js
new file mode 100644
index 000000000..f92e14ec9
--- /dev/null
+++ b/docs/remmina__ssh_8c.js
@@ -0,0 +1,15 @@
+var remmina__ssh_8c =
+[
+ [ "remmina_ssh_auth", "remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b", null ],
+ [ "remmina_ssh_auth_agent", "remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796", null ],
+ [ "remmina_ssh_auth_auto_pubkey", "remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a", null ],
+ [ "remmina_ssh_auth_gssapi", "remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67", null ],
+ [ "remmina_ssh_auth_interactive", "remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c", null ],
+ [ "remmina_ssh_auth_password", "remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65", null ],
+ [ "remmina_ssh_auth_pubkey", "remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156", null ],
+ [ "remmina_ssh_find_identity", "remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798", null ],
+ [ "remmina_ssh_identity_path", "remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42", null ],
+ [ "remmina_ssh_set_application_error", "remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d", null ],
+ [ "remmina_ssh_set_error", "remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553", null ],
+ [ "common_identities", "remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ssh_8c_source.html b/docs/remmina__ssh_8c_source.html
new file mode 100644
index 000000000..cd199f756
--- /dev/null
+++ b/docs/remmina__ssh_8c_source.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ssh.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ssh_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-2020 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;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Define this before stdlib.h to have posix_openpt */</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define _XOPEN_SOURCE 600</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">#define LIBSSH_STATIC 1</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;libssh/libssh.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &lt;signal.h&gt;</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &lt;time.h&gt;</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#ifdef HAVE_NETDB_H</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &lt;netdb.h&gt;</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#ifdef HAVE_ARPA_INET_H</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#include &lt;arpa/inet.h&gt;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef HAVE_NETINET_IN_H</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#include &lt;netinet/in.h&gt;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#ifdef HAVE_SYS_SOCKET_H</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#include &lt;sys/socket.h&gt;</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;<span class="preprocessor">#ifdef HAVE_FCNTL_H</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#ifdef HAVE_ERRNO_H</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#include &lt;errno.h&gt;</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#ifdef HAVE_TERMIOS_H</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#include &lt;termios.h&gt;</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#ifdef HAVE_UNISTD_H</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifdef HAVE_PTY_H</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#include &lt;pty.h&gt;</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</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="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="types_8h.html">remmina/types.h</a>&quot;</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</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="l00084"></a><span class="lineno"> 84</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="l00085"></a><span class="lineno"> 85</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="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__ssh_8h.html">remmina_ssh.h</a>&quot;</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a>&quot;</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</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="l00089"></a><span class="lineno"> 89</span>&#160;</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;<span class="preprocessor">#ifdef HAVE_NETINET_TCP_H</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#include &lt;netinet/tcp.h&gt;</span></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"> 94</span>&#160;<span class="preprocessor">#if defined(__FreeBSD__) || defined(__OpenBSD__)</span></div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#ifndef SOL_TCP</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#define SOL_TCP IPPROTO_TCP</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">* SSH Base *</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></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="preprocessor">#define LOCK_SSH(ssh) pthread_mutex_lock(&amp;REMMINA_SSH(ssh)-&gt;ssh_mutex);</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#define UNLOCK_SSH(ssh) pthread_mutex_unlock(&amp;REMMINA_SSH(ssh)-&gt;ssh_mutex);</span></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"><a class="line" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694"> 110</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *<a class="code" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">common_identities</a>[] =</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;{</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="stringliteral">&quot;.ssh/id_ed25519&quot;</span>,</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="stringliteral">&quot;.ssh/id_rsa&quot;</span>,</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="stringliteral">&quot;.ssh/id_dsa&quot;</span>,</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="stringliteral">&quot;.ssh/identity&quot;</span>,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; NULL</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;};</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;gchar *</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42"> 120</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a>(<span class="keyword">const</span> gchar *<span class="keywordtype">id</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> == NULL) <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span>[0] == <span class="charliteral">&#39;/&#39;</span>) <span class="keywordflow">return</span> g_strdup(<span class="keywordtype">id</span>);</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span> g_strdup_printf(<span class="stringliteral">&quot;%s/%s&quot;</span>, g_get_home_dir(), <span class="keywordtype">id</span>);</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;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;gchar *</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798"> 129</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; gchar *path;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; gint i;</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; <span class="keywordflow">for</span> (i = 0; <a class="code" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">common_identities</a>[i]; i++) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; path = <a class="code" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a>(<a class="code" href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">common_identities</a>[i]);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">if</span> (g_file_test(path, G_FILE_TEST_IS_REGULAR | G_FILE_TEST_EXISTS))</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> path;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_free(path);</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; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553"> 145</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *fmt)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">const</span> gchar *err;</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"> 150</span>&#160; err = ssh_get_error(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(fmt, err);</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;<span class="keywordtype">void</span></div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d"> 155</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *fmt, ...)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; va_list args;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; va_start(args, fmt);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_vprintf(fmt, args);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; va_end(args);</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"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c"> 166</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh_auth_interactive</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gint ret;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gint n;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; gint i;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; ret = SSH_AUTH_ERROR;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>) <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a> == NULL) <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">while</span> ((ret = ssh_userauth_kbdint(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL, NULL)) == SSH_AUTH_INFO) {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; n = ssh_userauth_kbdint_getnprompts(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; n; i++)</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; ssh_userauth_kbdint_setanswer(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, i, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</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;</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS)</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>; <span class="comment">// Generic error</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; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65"> 191</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh_auth_password</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</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"> 193</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gint ret;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Password authentication&quot;</span>);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; ret = SSH_AUTH_ERROR;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>) {</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Already authenticated&quot;</span>);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; }</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a> == NULL) {</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, <span class="stringliteral">&quot;Password is null&quot;</span>);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Password is null, returning&quot;</span>);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</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; ret = ssh_userauth_password(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Authentication returned %d&quot;</span>, ret);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate with SSH password. %s&quot;</span>));</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</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"> 221</span>&#160;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156"> 222</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh_auth_pubkey</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; ssh_key key = NULL;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; gchar pubkey[132] = { 0 }; <span class="comment">// +&quot;.pub&quot;</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gint ret;</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; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>) <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</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">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> == NULL) {</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(_(<span class="stringliteral">&quot;Could not authenticate with public SSH key. %s&quot;</span>),</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; _(<span class="stringliteral">&quot;SSH Key file not yet set.&quot;</span>));</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</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; g_snprintf(pubkey, <span class="keyword">sizeof</span>(pubkey), <span class="stringliteral">&quot;%s.pub&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="comment">/*G_FILE_TEST_EXISTS*/</span></div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">if</span> (g_file_test(pubkey, G_FILE_TEST_EXISTS)) {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; ret = ssh_pki_import_pubkey_file(pubkey, &amp;key);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">if</span> (ret != SSH_OK) {</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Public SSH key cannot be imported. %s&quot;</span>));</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; ssh_key_free(key);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; }</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> (ssh_pki_import_privkey_file(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>, (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> ? ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> : <span class="stringliteral">&quot;&quot;</span>),</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; NULL, NULL, &amp;key) != SSH_OK) {</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> == NULL || ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a>[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;SSH passphrase is empty, it should not be.&quot;</span>));</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; }</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; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate with public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</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;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; ret = ssh_userauth_publickey(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL, key);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; ssh_key_free(key);</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; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate with public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Cannot authenticate with public SSH key. Error is %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; }</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; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;}</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a"> 279</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh_auth_auto_pubkey</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; TRACE_CALL(__func__);</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; gint ret;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; ret = ssh_userauth_publickey_auto(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL, (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> ? ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> : <span class="stringliteral">&quot;&quot;</span>));</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate automatically with public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; g_debug(<span class="stringliteral">&quot;Cannot authenticate automatically with public SSH key. Error is %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;}</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;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796"> 299</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh_auth_agent</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;{</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; gint ret;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; ret = ssh_userauth_agent(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL);</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="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate with public SSH key using SSH agent. %s&quot;</span>));</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; }</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</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;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="keyword">static</span> <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67"> 316</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh_auth_gssapi</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; gint ret;</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; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>) <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; ret = ssh_userauth_gssapi(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</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; <span class="keywordflow">if</span> (ret != SSH_AUTH_SUCCESS) {</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not authenticate with SSH Kerberos/GSSAPI. %s&quot;</span>));</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</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;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;}</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b"> 336</a></span>&#160;<a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *password, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; gint method;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> rv;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="comment">/* Check known host again to ensure it’s still the original server when user forks</span></div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment"> * a new session from existing one */</span></div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 9, 0)</span></div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="comment">/* TODO: Add error checking</span></div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_OK: The server is known and has not changed.</span></div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_CHANGED: The server key has changed. Either you are under attack or the administrator changed the key. You HAVE to warn the user about a possible attack.</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_OTHER: The server gave use a key of a type while we had an other type recorded. It is a possible attack.</span></div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_UNKNOWN: The server is unknown. User should confirm the public key hash is correct.</span></div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_NOT_FOUND: The known host file does not exist. The host is thus unknown. File will be created if host key is accepted.</span></div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_ERROR: There had been an error checking the host.</span></div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span> (ssh_session_is_known_server(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>) != SSH_KNOWN_HOSTS_OK) {</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">if</span> (ssh_is_server_known(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>) != SSH_SERVER_KNOWN_OK) {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(ssh, _(<span class="stringliteral">&quot;The public SSH key changed!&quot;</span>));</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; }</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; <span class="keywordflow">if</span> (password) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (password != ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>) g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordflow">if</span> (password != ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a>) g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a>);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a> = g_strdup(password);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> = g_strdup(password);</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="l00379"></a><span class="lineno"> 379</span>&#160; ssh_userauth_none(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; method = ssh_userauth_list(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Methods supported by server: %s%s%s%s&quot;</span>,</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; (method &amp; SSH_AUTH_METHOD_PASSWORD) ? <span class="stringliteral">&quot;SSH_AUTH_METHOD_PASSWORD &quot;</span>: <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; (method &amp; SSH_AUTH_METHOD_PUBLICKEY) ? <span class="stringliteral">&quot;SSH_AUTH_METHOD_PUBLICKEY &quot;</span>: <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; (method &amp; SSH_AUTH_METHOD_HOSTBASED) ? <span class="stringliteral">&quot;SSH_AUTH_METHOD_HOSTBASED &quot;</span>: <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; (method &amp; SSH_AUTH_METHOD_INTERACTIVE) ? <span class="stringliteral">&quot;SSH_AUTH_METHOD_INTERACTIVE &quot;</span>: <span class="stringliteral">&quot;&quot;</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">switch</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>) {</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>:</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_AUTH_PASSWORD (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>)</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">if</span> (method &amp; SSH_AUTH_METHOD_PASSWORD) {</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; rv = <a class="code" href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh_auth_password</a>(ssh);</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> (rv != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> rv;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; g_debug(<span class="stringliteral">&quot;SSH using remmina_ssh_auth_password&quot;</span>);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">if</span> (!ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> &amp;&amp; (method &amp; SSH_AUTH_METHOD_INTERACTIVE)) {</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="comment">/* SSH server is requesting us to do interactive auth. */</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; rv = <a class="code" href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh_auth_interactive</a>(ssh);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">if</span> (rv != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>)</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordflow">return</span> rv;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; g_debug(<span class="stringliteral">&quot;SSH using remmina_ssh_auth_interactive&quot;</span>);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; }</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">if</span> (!ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>) {</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; <span class="comment">// The real error here should be: &quot;The SSH server %s:%d does not support password or interactive authentication&quot;</span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(_(<span class="stringliteral">&quot;Could not authenticate with SSH password. %s&quot;</span>), <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; <span class="keywordflow">break</span>;</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">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>;</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__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a>:</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_AUTH_PUBLICKEY (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">if</span> (method &amp; SSH_AUTH_METHOD_PUBLICKEY)</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh_auth_pubkey</a>(ssh);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="comment">// The real error here should be: &quot;The SSH server %s:%d does not support public key authentication&quot;</span></div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(_(<span class="stringliteral">&quot;Could not authenticate with public SSH key. %s&quot;</span>), <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a>:</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_AUTH_AGENT (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh_auth_agent</a>(ssh);</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>:</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_AUTH_AUTO_PUBLICKEY (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="comment">/* ssh_agent or none */</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keywordflow">if</span> (method &amp; SSH_AUTH_METHOD_PUBLICKEY)</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh_auth_auto_pubkey</a>(ssh, gp, remminafile);</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="comment">// The real error here should be: &quot;The SSH server %s:%d does not support public key authentication&quot;</span></div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(_(<span class="stringliteral">&quot;Could not authenticate with public SSH key. %s&quot;</span>), <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="preprocessor">#if 0</span></div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="comment">/* Not yet supported by libssh */</span></div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">case</span> SSH_AUTH_HOSTBASED:</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordflow">if</span> (method &amp; SSH_AUTH_METHOD_HOSTBASED)</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="comment">//return remmina_ssh_auth_hostbased;</span></div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a>:</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_AUTH_GSSAPI (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (method &amp; SSH_AUTH_METHOD_GSSAPI_MIC)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh_auth_gssapi</a>(ssh);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;UNKNOWN (%d)&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>);</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</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;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;User auth method not supported at server side&quot;</span>);</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; <span class="comment">// We come here after a &quot;break&quot;. ssh-&gt;error should be already set</span></div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</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;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<a class="code" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;{</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; gchar *keyname;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; gchar *pwdfkey;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; gchar *message;</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; gchar *current_pwd;</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; gint ret;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <span class="keywordtype">size_t</span> len;</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; guchar *pubkey;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; ssh_key server_pubkey;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; gboolean save_password;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; gint attempt;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="comment">/* Check if the server’s public key is known */</span></div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 9, 0)</span></div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="comment">/* TODO: Add error checking</span></div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_OK: The server is known and has not changed.</span></div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_CHANGED: The server key has changed. Either you are under attack or the administrator changed the key. You HAVE to warn the user about a possible attack.</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_OTHER: The server gave use a key of a type while we had an other type recorded. It is a possible attack.</span></div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_UNKNOWN: The server is unknown. User should confirm the public key hash is correct.</span></div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_NOT_FOUND: The known host file does not exist. The host is thus unknown. File will be created if host key is accepted.</span></div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="comment"> * SSH_KNOWN_HOSTS_ERROR: There had been an error checking the host.</span></div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; ret = ssh_session_is_known_server(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">switch</span> (ret) {</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_OK:</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">break</span>; <span class="comment">/* ok */</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="comment">/* TODO: These are all wrong, we should deal with each of them */</span></div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_CHANGED:</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_OTHER:</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_UNKNOWN:</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_NOT_FOUND:</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; ret = ssh_is_server_known(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">switch</span> (ret) {</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_KNOWN_OK:</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">break</span>; <span class="comment">/* ok */</span></div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="comment">/* fallback to SSH_SERVER_NOT_KNOWN behavior */</span></div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_KNOWN_CHANGED:</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_FOUND_OTHER:</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_NOT_KNOWN:</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_FILE_NOT_FOUND:</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 8, 6)</span></div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keywordflow">if</span> (ssh_get_server_publickey(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, &amp;server_pubkey) != SSH_OK) {</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not fetch the server\&#39;s public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; g_debug(<span class="stringliteral">&quot;ssh_get_server_publickey() has failed&quot;</span>);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; }</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keywordflow">if</span> (ssh_get_publickey(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, &amp;server_pubkey) != SSH_OK) {</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not fetch public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; g_debug(<span class="stringliteral">&quot;ssh_get_publickey() has failed&quot;</span>);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; }</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <span class="keywordflow">if</span> (ssh_get_publickey_hash(server_pubkey, SSH_PUBLICKEY_HASH_MD5, &amp;pubkey, &amp;len) != 0) {</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; ssh_key_free(server_pubkey);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not fetch checksum for public SSH key. %s&quot;</span>));</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; g_debug(<span class="stringliteral">&quot;ssh_get_publickey_hash() has failed&quot;</span>);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; }</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; ssh_key_free(server_pubkey);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; keyname = ssh_get_hexa(pubkey, len);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 9, 0)</span></div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">if</span> (ret == SSH_KNOWN_HOSTS_UNKNOWN || ret == SSH_KNOWN_HOSTS_NOT_FOUND) {</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <span class="keywordflow">if</span> (ret == SSH_SERVER_NOT_KNOWN || ret == SSH_SERVER_FILE_NOT_FOUND) {</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; message = g_strdup_printf(<span class="stringliteral">&quot;%s\n%s\n\n%s&quot;</span>,</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; _(<span class="stringliteral">&quot;The server is unknown. The public key fingerprint is:&quot;</span>),</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; keyname,</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; _(<span class="stringliteral">&quot;Do you trust the new public key?&quot;</span>));</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; message = g_strdup_printf(<span class="stringliteral">&quot;%s\n%s\n\n%s&quot;</span>,</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; _(<span class="stringliteral">&quot;Warning: The server has changed its public key. This means either you are under attack,\n&quot;</span></div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="stringliteral">&quot;or the administrator has changed the key. The new public key fingerprint is:&quot;</span>),</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; keyname,</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; _(<span class="stringliteral">&quot;Do you trust the new public key?&quot;</span>));</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; }</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; ret = <a class="code" href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a>(gp, message);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; g_free(message);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; ssh_string_free_char(keyname);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; ssh_clean_pubkey_hash(&amp;pubkey);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <span class="keywordflow">if</span> (ret != GTK_RESPONSE_YES) <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 9, 0)</span></div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; ssh_session_update_known_hosts(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; ssh_write_knownhost(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 9, 0)</span></div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keywordflow">case</span> SSH_KNOWN_HOSTS_ERROR:</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="keywordflow">case</span> SSH_SERVER_ERROR:</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not check list of known SSH hosts. %s&quot;</span>));</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; g_debug(<span class="stringliteral">&quot;Could not check list of known SSH hosts&quot;</span>);</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; }</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keyword">enum</span> { REMMINA_SSH_AUTH_PASSWORD, REMMINA_SSH_AUTH_PKPASSPHRASE, REMMINA_SSH_AUTH_KRBTOKEN } remmina_ssh_auth_type;</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">switch</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>) {</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a>:</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; keyname = _(<span class="stringliteral">&quot;SSH password&quot;</span>);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; pwdfkey = ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? <span class="stringliteral">&quot;ssh_tunnel_password&quot;</span> : <span class="stringliteral">&quot;password&quot;</span>;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; remmina_ssh_auth_type = REMMINA_SSH_AUTH_PASSWORD;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a>:</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a>:</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a>:</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; keyname = _(<span class="stringliteral">&quot;SSH private key passphrase&quot;</span>);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; pwdfkey = ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? <span class="stringliteral">&quot;ssh_tunnel_passphrase&quot;</span> : <span class="stringliteral">&quot;ssh_passphrase&quot;</span>;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; remmina_ssh_auth_type = REMMINA_SSH_AUTH_PKPASSPHRASE;</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a>:</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; keyname = _(<span class="stringliteral">&quot;SSH Kerberos/GSSAPI&quot;</span>);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; pwdfkey = ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? <span class="stringliteral">&quot;ssh_tunnel_kerberos_token&quot;</span> : <span class="stringliteral">&quot;ssh_kerberos_token&quot;</span>;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; remmina_ssh_auth_type = REMMINA_SSH_AUTH_KRBTOKEN;</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</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;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; disablepasswordstoring = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</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; current_pwd = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, pwdfkey));</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <span class="comment">/* Try existing password/passphrase first */</span></div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; ret = <a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(ssh, current_pwd, gp, remminafile);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Returned %d at 1st attempt&quot;</span>, ret);</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; <span class="comment">/* It seems that functions like ssh_userauth_password() can only be called 3 times</span></div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;<span class="comment"> * on a ssh connection. And the 3rd failed attempt will block the calling thread forever.</span></div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;<span class="comment"> * So we retry only 2 extra time authentication. */</span></div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">for</span> (attempt = 0;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; attempt &lt; 2 &amp;&amp; ret == <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; attempt++) {</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>)</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Retrying auth because %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</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; <span class="keywordflow">if</span> (remmina_ssh_auth_type == REMMINA_SSH_AUTH_PKPASSPHRASE) {</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; ret = <a class="code" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a>(gp,</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; (disablepasswordstoring ? 0 :</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>),</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? _(<span class="stringliteral">&quot;SSH tunnel credentials&quot;</span>) : _(<span class="stringliteral">&quot;SSH credentials&quot;</span>), NULL,</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, pwdfkey),</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; NULL,</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; _(<span class="stringliteral">&quot;SSH private key passphrase&quot;</span>));</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; current_pwd = <a class="code" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a>(gp);</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; save_password = <a class="code" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a>(gp);</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">if</span> (save_password)</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, pwdfkey, current_pwd);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, pwdfkey, NULL);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; }</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (remmina_ssh_auth_type == REMMINA_SSH_AUTH_PASSWORD) {</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; <span class="comment">/* Ask for user credentials. Username cannot be changed here,</span></div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;<span class="comment"> * because we already sent it when opening the connection */</span></div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; g_debug(<span class="stringliteral">&quot;Showing panel for password\n&quot;</span>);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; ret = <a class="code" href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a>(gp,</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>)</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a> | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a>,</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? _(<span class="stringliteral">&quot;SSH tunnel credentials&quot;</span>) : _(<span class="stringliteral">&quot;SSH credentials&quot;</span>),</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span> : <span class="stringliteral">&quot;username&quot;</span>),</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, pwdfkey),</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; NULL,</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; NULL);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; current_pwd = <a class="code" href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a>(gp);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; save_password = <a class="code" href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a>(gp);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">if</span> (save_password)</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, pwdfkey, current_pwd);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; <a class="code" href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a>(remminafile, pwdfkey, NULL);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>;</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; }</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; g_print(<span class="stringliteral">&quot;Unimplemented.&quot;</span>);</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; }</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Retrying authentication&quot;</span>);</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; ret = <a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(ssh, current_pwd, gp, remminafile);</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Authentication attempt n° %d returned %d&quot;</span>, attempt + 2, ret);</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; }</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; g_free(current_pwd);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="comment">/* After attempting the max number of times, REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</span></div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;<span class="comment"> * becomes REMMINA_SSH_AUTH_FATAL_ERROR */</span></div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">if</span> (ret == <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>) {</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH Authentication failed&quot;</span>);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; ret = <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>;</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;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;}</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160;remmina_ssh_log_callback(ssh_session <a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, <span class="keywordtype">int</span> priority, <span class="keyword">const</span> <span class="keywordtype">char</span> *message, <span class="keywordtype">void</span> *userdata)</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;{</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(message);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;}</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;gboolean</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;{</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; gint verbosity;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; gint rc;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;<span class="preprocessor">#ifdef HAVE_NETINET_TCP_H</span></div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; socket_t sshsock;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; gint optval;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;<span class="preprocessor">#endif</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; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a> = g_new0(<span class="keyword">struct</span> ssh_callbacks_struct, 1);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="comment">/* Init &amp; startup the SSH session */</span></div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;server=%s port=%d is_tunnel=%s tunnel_entrance_host=%s tunnel_entrance_port=%d&quot;</span>,</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>,</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>,</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> ? <span class="stringliteral">&quot;Yes&quot;</span> : <span class="stringliteral">&quot;No&quot;</span>,</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>);</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a> = ssh_new();</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; <span class="comment">/* Tunnel sanity checks */</span></div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> &amp;&amp; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> != NULL) {</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(<span class="stringliteral">&quot;Internal error in %s: is_tunnel and tunnel_entrance != NULL&quot;</span>, __func__);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; }</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; <span class="keywordflow">if</span> (!ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> &amp;&amp; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> == NULL) {</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = g_strdup_printf(<span class="stringliteral">&quot;Internal error in %s: is_tunnel == false and tunnel_entrance == NULL&quot;</span>, __func__);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; }</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="comment">/* Set connection host/port */</span></div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a>) {</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_HOST, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_PORT, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_HOST, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_PORT, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Setting SSH_OPTIONS_HOST to %s and SSH_OPTIONS_PORT to %d&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>);</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;</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <span class="keywordflow">if</span> (*ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a> != 0)</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_USER, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a>);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> &amp;&amp; *ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> != 0) {</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_IDENTITY, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_IDENTITY is now %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_IDENTITY is not set, by default the files \&quot;identity\&quot;, \&quot;id_dsa\&quot; and \&quot;id_rsa\&quot; are used.&quot;</span>);</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;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_SSH_DIR, g_strdup_printf(<span class="stringliteral">&quot;%s/.ssh&quot;</span>, g_getenv(<span class="stringliteral">&quot;SNAP_USER_COMMON&quot;</span>)));</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_KEY_EXCHANGE, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a>);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_KEY_EXCHANGE is now %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a>);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_KEY_EXCHANGE does not have a valid value. %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a>);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_CIPHERS_C_S, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a>);</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_CIPHERS_C_S has been set to %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a>);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_CIPHERS_C_S does not have a valid value. %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a>);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_HOSTKEYS, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a>);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_HOSTKEYS is now %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a>);</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_HOSTKEYS does not have a valid value. %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a>);</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_PROXYCOMMAND, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a>);</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_PROXYCOMMAND is now %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a>);</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_PROXYCOMMAND does not have a valid value. %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a>);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_STRICTHOSTKEYCHECK, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a>);</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_STRICTHOSTKEYCHECK is now %d&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a>);</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_STRICTHOSTKEYCHECK does not have a valid value. %d&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a>);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; rc = ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_COMPRESSION, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a>);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <span class="keywordflow">if</span> (rc == 0)</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_COMPRESSION is now %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a>);</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;SSH_OPTIONS_COMPRESSION does not have a valid value. %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a>);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; ssh_callbacks_init(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a>()) {</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; verbosity = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a>;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; ssh_options_set(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, SSH_OPTIONS_LOG_VERBOSITY, &amp;verbosity);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>-&gt;log_function = remmina_ssh_log_callback;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="comment">/* Reset libssh legacy userdata. This is a workaround for a libssh bug */</span></div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; ssh_set_log_userdata(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; }</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>-&gt;userdata = ssh;</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; ssh_set_callbacks(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>);</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160;</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <span class="comment">/* As the latest parse the ~/.ssh/config file */</span></div><div class="line"><a name="l00787"></a><span class="lineno"> 787</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#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a>)</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; ssh_options_parse_config(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL);</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; <span class="keywordflow">if</span> (ssh_connect(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>)) {</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(ssh, _(<span class="stringliteral">&quot;Could not start SSH session. %s&quot;</span>));</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 796</span>&#160;<span class="preprocessor">#ifdef HAVE_NETINET_TCP_H</span></div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; <span class="comment">/* Set keepalive on SSH socket, so we can keep firewalls awaken and detect</span></div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160;<span class="comment"> * when we loss the tunnel */</span></div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; sshsock = ssh_get_fd(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <span class="keywordflow">if</span> (sshsock &gt;= 0) {</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; optval = 1;</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; <span class="keywordflow">if</span> (setsockopt(sshsock, SOL_SOCKET, SO_KEEPALIVE, &amp;optval, <span class="keyword">sizeof</span>(optval)) &lt; 0)</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP KeepAlive not set&quot;</span>);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP KeepAlive enabled&quot;</span>);</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;<span class="preprocessor">#ifdef TCP_KEEPIDLE</span></div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; optval = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a>;</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keywordflow">if</span> (setsockopt(sshsock, IPPROTO_TCP, TCP_KEEPIDLE, &amp;optval, <span class="keyword">sizeof</span>(optval)) &lt; 0)</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPIDLE not set&quot;</span>);</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPIDLE set to %i&quot;</span>, optval);</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"> 814</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160;<span class="preprocessor">#ifdef TCP_KEEPCNT</span></div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; optval = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a>;</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; <span class="keywordflow">if</span> (setsockopt(sshsock, IPPROTO_TCP, TCP_KEEPCNT, &amp;optval, <span class="keyword">sizeof</span>(optval)) &lt; 0)</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPCNT not set&quot;</span>);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPCNT set to %i&quot;</span>, optval);</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;<span class="preprocessor">#ifdef TCP_KEEPINTVL</span></div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; optval = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a>;</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; <span class="keywordflow">if</span> (setsockopt(sshsock, IPPROTO_TCP, TCP_KEEPINTVL, &amp;optval, <span class="keyword">sizeof</span>(optval)) &lt; 0)</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPINTVL not set&quot;</span>);</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_KEEPINTVL set to %i&quot;</span>, optval);</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;<span class="preprocessor">#ifdef TCP_USER_TIMEOUT</span></div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; optval = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a>;</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; <span class="keywordflow">if</span> (setsockopt(sshsock, IPPROTO_TCP, TCP_USER_TIMEOUT, &amp;optval, <span class="keyword">sizeof</span>(optval)) &lt; 0)</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_USER_TIMEOUT not set&quot;</span>);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;TCP_USER_TIMEOUT set to %i&quot;</span>, optval);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; }</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <span class="comment">/* Try the &quot;none&quot; authentication */</span></div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">if</span> (ssh_userauth_none(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>, NULL) == SSH_AUTH_SUCCESS)</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = TRUE;</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160;gboolean</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160;<a class="code" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gboolean is_tunnel)</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"> 851</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; <span class="keyword">const</span> gchar *username;</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <span class="keyword">const</span> gchar *privatekey;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keyword">const</span> gchar *server;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; gchar *s;</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a> = NULL;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a> = NULL;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = FALSE;</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = NULL;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> = NULL;</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> = is_tunnel;</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; pthread_mutex_init(&amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">ssh_mutex</a>, NULL);</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> = NULL;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a> = 0;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; username = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_username&quot;</span> : <span class="stringliteral">&quot;username&quot;</span>);</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; privatekey = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_privatekey&quot;</span> : <span class="stringliteral">&quot;ssh_privatekey&quot;</span>);</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; <span class="comment">/* The ssh-&gt;server and ssh-&gt;port values */</span></div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; <span class="keywordflow">if</span> (is_tunnel) {</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; server = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_server&quot;</span>);</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; <span class="keywordflow">if</span> (server == NULL || server[0] == 0) {</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <span class="comment">// ssh_tunnel_server empty or invalid, we are opening a tunnel, it means that &quot;Same server at port 22&quot; has been selected</span></div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; server = <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="l00877"></a><span class="lineno"> 877</span>&#160; <span class="keywordflow">if</span> (server == NULL || server[0] == 0)</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; server = <span class="stringliteral">&quot;localhost&quot;</span>;</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(server, 22, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>);</div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a> = 22;</div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(server, 22, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; }</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; server = <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="l00886"></a><span class="lineno"> 886</span>&#160; <span class="keywordflow">if</span> (server == NULL || server[0] == 0)</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; server = <span class="stringliteral">&quot;localhost&quot;</span>;</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(server, 22, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>);</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"> 891</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>);</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <span class="comment">// ???</span></div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; <a class="code" href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a>(server, 0, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>, NULL);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; }</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Initialized SSH struct from file with ssh-&gt;server = %s and SSH-&gt;port = %d&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>);</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160;</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a> = g_strdup(username ? username : g_get_user_name());</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a> = NULL;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a> = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_auth&quot;</span> : <span class="stringliteral">&quot;ssh_auth&quot;</span>, 0);</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_charset&quot;</span>));</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_kex_algorithms&quot;</span> : <span class="stringliteral">&quot;ssh_kex_algorithms&quot;</span>));</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_ciphers&quot;</span> : <span class="stringliteral">&quot;ssh_ciphers&quot;</span>));</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_hostkeytypes&quot;</span> : <span class="stringliteral">&quot;ssh_hostkeytypes&quot;</span>));</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_proxycommand&quot;</span> : <span class="stringliteral">&quot;ssh_proxycommand&quot;</span>));</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a> = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_stricthostkeycheck&quot;</span> : <span class="stringliteral">&quot;ssh_stricthostkeycheck&quot;</span>, 0);</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; gint c = <a class="code" href="remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66">remmina_file_get_int</a>(remminafile, is_tunnel ? <span class="stringliteral">&quot;ssh_tunnel_compression&quot;</span> : <span class="stringliteral">&quot;ssh_compression&quot;</span>, 0);</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a> = (c == 1) ? <span class="stringliteral">&quot;yes&quot;</span> : <span class="stringliteral">&quot;no&quot;</span>;</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <span class="comment">/* Public/Private keys */</span></div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; s = (privatekey ? g_strdup(privatekey) : <a class="code" href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a>());</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; <span class="keywordflow">if</span> (s) {</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> = <a class="code" href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a>(s);</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; g_free(s);</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> = NULL;</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;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160;remmina_ssh_init_from_ssh(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh_src)</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160;{</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a> = NULL;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a> = FALSE;</div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a> = NULL;</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; pthread_mutex_init(&amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">ssh_mutex</a>, NULL);</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a>;</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>);</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>;</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a>);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>);</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a>);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a>);</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a>);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a>);</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a>);</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a>);</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a>;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a>;</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a> = g_strdup(ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>);</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a> = ssh_src-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>;</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160;</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160;}</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160;</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160;gchar *</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160;<a class="code" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *from)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; gchar *to = NULL;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160;</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a> &amp;&amp; from)</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; to = g_convert(from, -1, <span class="stringliteral">&quot;UTF-8&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a>, NULL, NULL, NULL);</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="keywordflow">if</span> (!to) to = g_strdup(from);</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="keywordflow">return</span> to;</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160;}</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160;gchar *</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160;<a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *from)</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160;{</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; gchar *to = NULL;</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160;</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a> &amp;&amp; from)</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; to = g_convert(from, -1, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a>, <span class="stringliteral">&quot;UTF-8&quot;</span>, NULL, NULL, NULL);</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="keywordflow">if</span> (!to) to = g_strdup(from);</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <span class="keywordflow">return</span> to;</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"> 977</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160;<a class="code" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160;{</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>&#160; <span class="keywordflow">if</span> (ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>) {</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>&#160; ssh_disconnect(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; ssh_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a> = NULL;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; }</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>);</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>);</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a>);</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a>);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a>);</div><div class="line"><a name="l00992"></a><span class="lineno"> 992</span>&#160; g_free(ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>&#160; pthread_mutex_destroy(&amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">ssh_mutex</a>);</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160; g_free(ssh);</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160;}</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;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160;<span class="comment">* SSH Tunnel *</span></div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;<span class="keyword">struct </span>_RemminaSSHTunnelBuffer {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; gchar * data;</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; gchar * ptr;</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; ssize_t len;</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;};</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;<span class="keyword">static</span> <a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> *</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;remmina_ssh_tunnel_buffer_new(ssize_t len)</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;{</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; <a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> *buffer;</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; buffer = g_new(<a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a>, 1);</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; buffer-&gt;data = (gchar *)g_malloc(len);</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; buffer-&gt;ptr = buffer-&gt;data;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; buffer-&gt;len = len;</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; <span class="keywordflow">return</span> buffer;</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;}</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;remmina_ssh_tunnel_buffer_free(<a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> *buffer)</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;{</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; <span class="keywordflow">if</span> (buffer) {</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; g_free(buffer-&gt;data);</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; g_free(buffer);</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; }</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;}</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;<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;<a class="code" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;{</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; tunnel = g_new(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>, 1);</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <a class="code" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a>(REMMINA_SSH(tunnel), remminafile, TRUE);</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; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> = -1;</div><div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a> = NULL;</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a> = NULL;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a> = NULL;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> = 0;</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a> = 0;</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a> = NULL;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = FALSE;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> = -1;</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a> = NULL;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a> = 0;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a> = NULL;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a> = 0;</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a> = NULL;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a> = 0;</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a> = NULL;</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a> = NULL;</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a> = NULL;</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a> = NULL;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a> = NULL;</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; <span class="keywordflow">return</span> tunnel;</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;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;remmina_ssh_tunnel_close_all_channels(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel)</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;{</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160;</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>; i++) {</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i]);</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; remmina_ssh_tunnel_buffer_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]);</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; ssh_channel_close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i]);</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; ssh_channel_send_eof(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i]);</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; ssh_channel_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i]);</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"> 1077</span>&#160;</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>);</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a> = NULL;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>);</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a> = NULL;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>);</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a> = NULL;</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; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> = 0;</div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a> = 0;</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; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>) {</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; ssh_channel_close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>);</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; ssh_channel_send_eof(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>);</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; ssh_channel_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>);</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a> = NULL;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; }</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;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;}</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="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;remmina_ssh_tunnel_remove_channel(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gint n)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; ssh_channel_close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[n]);</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; ssh_channel_send_eof(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[n]);</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; ssh_channel_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[n]);</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160; close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[n]);</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; remmina_ssh_tunnel_buffer_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[n]);</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>--;</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[n] = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>];</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>] = NULL;</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[n] = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>];</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[n] = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>];</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;}</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;<span class="comment">/* Register the new channel/socket pair */</span></div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;remmina_ssh_tunnel_add_channel(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, ssh_channel channel, gint sock)</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;{</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; gint flags;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; gint 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; i = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>++;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> &gt; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a>) {</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; <span class="comment">/* Allocate an extra NULL pointer in channels for ssh_select */</span></div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a> = (ssh_channel *)g_realloc(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>,</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; <span class="keyword">sizeof</span>(ssh_channel) * (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> + 1));</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a> = (gint *)g_realloc(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>,</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; <span class="keyword">sizeof</span>(gint) * tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>);</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a> = (<a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> **)g_realloc(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>,</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; <span class="keyword">sizeof</span>(<a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> *) * tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>);</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a> = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a> = (ssh_channel *)g_realloc(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a>,</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; <span class="keyword">sizeof</span>(ssh_channel) * (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> + 1));</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; }</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i] = channel;</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i + 1] = NULL;</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i] = sock;</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i] = NULL;</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; flags = fcntl(sock, F_GETFL, 0);</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; fcntl(sock, F_SETFL, flags | O_NONBLOCK);</div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;}</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="keyword">static</span> <span class="keywordtype">int</span></div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;remmina_ssh_tunnel_accept_local_connection(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gboolean blocking)</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"> 1148</span>&#160; gint sock, sock_flags;</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; sock_flags = fcntl(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>, F_GETFL, 0);</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; <span class="keywordflow">if</span> (blocking)</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; sock_flags &amp;= ~O_NONBLOCK;</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; sock_flags |= O_NONBLOCK;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; fcntl(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>, F_SETFL, sock_flags);</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; <span class="comment">/* Accept a local connection */</span></div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; sock = accept(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>, NULL, NULL);</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordflow">if</span> (sock &lt; 0)</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; REMMINA_SSH(tunnel)-&gt;error = g_strdup(<span class="stringliteral">&quot;Local socket not accepted&quot;</span>);</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <span class="keywordflow">return</span> sock;</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;}</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;<span class="keyword">static</span> ssh_channel</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;remmina_ssh_tunnel_create_forward_channel(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel)</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;{</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; ssh_channel channel = NULL;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; channel = ssh_channel_new(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">ssh</a>.<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; <span class="keywordflow">if</span> (!channel) {</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not create channel. %s&quot;</span>));</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; }</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; <span class="comment">/* Request the SSH server to connect to the destination */</span></div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; g_debug(<span class="stringliteral">&quot;SSH tunnel destination is %s&quot;</span>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>);</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160; <span class="keywordflow">if</span> (ssh_channel_open_forward(channel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>, <span class="stringliteral">&quot;127.0.0.1&quot;</span>, 0) != SSH_OK) {</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; ssh_channel_close(channel);</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; ssh_channel_send_eof(channel);</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; ssh_channel_free(channel);</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not connect to SSH tunnel. %s&quot;</span>));</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; }</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; <span class="keywordflow">return</span> channel;</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160;}</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;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;remmina_ssh_tunnel_main_thread_proc(gpointer data)</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;{</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel = (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)data;</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160; gchar *ptr;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; ssize_t len = 0, lenw = 0;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; fd_set <span class="keyword">set</span>;</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; <span class="keyword">struct </span>timeval timeout;</div><div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>&#160; g_autoptr(GDateTime) t1 = NULL;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160; g_autoptr(GDateTime) t2 = NULL;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; GTimeSpan diff; <span class="comment">// microseconds</span></div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160; ssh_channel channel = NULL;</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160; gboolean first = TRUE;</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; gboolean disconnected;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; gint sock;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; gint maxfd;</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; gint i;</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; gint ret;</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; <span class="keyword">struct </span>sockaddr_in sin;</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; t1 = t2 = g_date_time_new_now_local();</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <span class="keywordflow">switch</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a>) {</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a>:</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160; sock = remmina_ssh_tunnel_accept_local_connection(tunnel, TRUE);</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; <span class="keywordflow">if</span> (sock &lt; 0) {</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; <span class="keywordflow">if</span> (tunnel)</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; }</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; channel = remmina_ssh_tunnel_create_forward_channel(tunnel);</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; <span class="keywordflow">if</span> (!tunnel) {</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; close(sock);</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; }</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; remmina_ssh_tunnel_add_channel(tunnel, channel, sock);</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>:</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160; <span class="keywordflow">if</span> ((tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a> = ssh_channel_new(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">ssh</a>.<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>)) == NULL) {</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not create channel. %s&quot;</span>));</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; }</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a>(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>, &amp;ptr)) {</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), <span class="stringliteral">&quot;%s&quot;</span>, ptr);</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; g_free(ptr);</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; }</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; <span class="keywordflow">if</span> (ssh_channel_open_session(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>) ||</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; ssh_channel_request_x11(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>, TRUE, NULL, ptr,</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; gdk_x11_screen_get_screen_number(gdk_screen_get_default()))) {</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; g_free(ptr);</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not open channel. %s&quot;</span>));</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; }</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; g_free(ptr);</div><div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160; <span class="keywordflow">if</span> (ssh_channel_request_exec(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>)) {</div><div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>&#160; ptr = g_strdup_printf(_(<span class="stringliteral">&quot;Could not run %s on SSH server.&quot;</span>), tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>);</div><div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), ptr);</div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>&#160; g_free(ptr);</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 1263</span>&#160;</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a> &amp;&amp;</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160; !(*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>)) {</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160; }</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160;</div><div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a>:</div><div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>&#160; <span class="comment">/* Detect the next available port starting from 6010 on the server */</span></div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160; <span class="keywordflow">for</span> (i = 10; i &lt;= MAX_X_DISPLAY_NUMBER; i++) {</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 7, 0)</span></div><div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>&#160; <span class="keywordflow">if</span> (ssh_channel_listen_forward(REMMINA_SSH(tunnel)-&gt;session, (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a> ? <span class="stringliteral">&quot;localhost&quot;</span> : NULL), 6000 + i, NULL)) {</div><div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a> = i;</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; <span class="keywordflow">break</span>;</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;<span class="preprocessor">#else</span></div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; <span class="keywordflow">if</span> (ssh_forward_listen(REMMINA_SSH(tunnel)-&gt;session, (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a> ? <span class="stringliteral">&quot;localhost&quot;</span> : NULL), 6000 + i, NULL)) {</div><div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a> = i;</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; <span class="keywordflow">break</span>;</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"> 1291</span>&#160;<span class="preprocessor">#endif</span></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; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a> &lt; 1) {</div><div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not request port forwarding. %s&quot;</span>));</div><div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>&#160; }</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; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a> &amp;&amp;</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160; !(*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>)) {</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 1309</span>&#160;</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; <span class="keywordflow">break</span>;</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"> 1312</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>:</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 7, 0)</span></div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160; <span class="keywordflow">if</span> (ssh_channel_listen_forward(REMMINA_SSH(tunnel)-&gt;session, NULL, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>, NULL)) {</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not request port forwarding. %s&quot;</span>));</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>&#160; }</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>&#160; <span class="keywordflow">if</span> (ssh_forward_listen(REMMINA_SSH(tunnel)-&gt;session, NULL, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>, NULL)) {</div><div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not request port forwarding. %s&quot;</span>));</div><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; }</div><div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;<span class="preprocessor">#endif</span></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="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a> &amp;&amp;</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; !(*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>)) {</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; <span class="keywordflow">return</span> NULL;</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; <span class="keywordflow">break</span>;</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; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a> = 10240;</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a> = g_malloc(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a>);</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160;</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <span class="comment">/* Start the tunnel data transmission */</span></div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; <span class="keywordflow">while</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>) {</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a> ||</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a> ||</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>) {</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; <span class="keywordflow">if</span> (first) {</div><div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160; first = FALSE;</div><div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160; <span class="comment">/* Wait for a period of time for the first incoming connection */</span></div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>)</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; channel = ssh_channel_accept_x11(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>, 15000);</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; channel = ssh_channel_accept_forward(REMMINA_SSH(tunnel)-&gt;session, 15000, &amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>);</div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; <span class="keywordflow">if</span> (!channel) {</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;The server did not respond.&quot;</span>));</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>&#160; }</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a>)</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>) {</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; <span class="comment">/* For reverse tunnel, we only need one connection. */</span></div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 7, 0)</span></div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; ssh_channel_cancel_forward(REMMINA_SSH(tunnel)-&gt;session, NULL, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>);</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160; ssh_forward_cancel(REMMINA_SSH(tunnel)-&gt;session, NULL, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>);</div><div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>&#160;<span class="preprocessor">#endif</span></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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> != <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>) {</div><div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>&#160; <span class="comment">/* Poll once per some period of time if no incoming connections.</span></div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160;<span class="comment"> * Don’t try to poll continuously as it will significantly slow down the loop */</span></div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160; t1 = g_date_time_new_now_local();</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160; diff = g_date_time_difference(t1, t2) * 10000000</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; + g_date_time_difference(t1, t2) / 100000;</div><div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160; <span class="keywordflow">if</span> (diff &gt; 1) {</div><div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Polling tunnel channels&quot;</span>);</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>)</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160; channel = ssh_channel_accept_x11(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>, 0);</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; channel = ssh_channel_accept_forward(REMMINA_SSH(tunnel)-&gt;session, 0, &amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>);</div><div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160; <span class="keywordflow">if</span> (channel == NULL)</div><div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160; t2 = t1;</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; }</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; g_date_time_unref(t1);</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; g_date_time_unref(t2);</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; }</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; <span class="keywordflow">if</span> (channel) {</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>) {</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; sin.sin_family = AF_INET;</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; sin.sin_port = htons(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">localport</a>);</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; sin.sin_addr.s_addr = inet_addr(<span class="stringliteral">&quot;127.0.0.1&quot;</span>);</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; sock = socket(AF_INET, SOCK_STREAM, 0);</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; <span class="keywordflow">if</span> (connect(sock, (<span class="keyword">struct</span> sockaddr *)&amp;sin, <span class="keyword">sizeof</span>(sin)) &lt; 0) {</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel),</div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; _(<span class="stringliteral">&quot;Cannot connect to local port %i.&quot;</span>), tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">localport</a>);</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; close(sock);</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; sock = -1;</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; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; sock = <a class="code" href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a>(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>);</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; }</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; <span class="keywordflow">if</span> (sock &gt;= 0) {</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; remmina_ssh_tunnel_add_channel(tunnel, channel, sock);</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; <span class="comment">/* Failed to create unix socket. Will this happen? */</span></div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; ssh_channel_close(channel);</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160; ssh_channel_send_eof(channel);</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160; ssh_channel_free(channel);</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; channel = NULL;</div><div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160; }</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;</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a> &lt;= 0)</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160; <span class="comment">/* No more connections. We should quit */</span></div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160; timeout.tv_sec = 0;</div><div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160; timeout.tv_usec = 200000;</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; FD_ZERO(&amp;<span class="keyword">set</span>);</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160; maxfd = 0;</div><div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>; i++) {</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i] &gt; maxfd)</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; maxfd = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i];</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; FD_SET(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i], &amp;<span class="keyword">set</span>);</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160; }</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160;</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; ret = ssh_select(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a>, maxfd + 1, &amp;<span class="keyword">set</span>, &amp;timeout);</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160; <span class="keywordflow">if</span> (!tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; <span class="keywordflow">if</span> (ret == SSH_EINTR) <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="keywordflow">if</span> (ret == -1) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160;</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; i = 0;</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; <span class="keywordflow">while</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> &amp;&amp; i &lt; tunnel-&gt;num_channels) {</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; disconnected = FALSE;</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; <span class="keywordflow">if</span> (FD_ISSET(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i], &amp;<span class="keyword">set</span>)) {</div><div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160; <span class="keywordflow">while</span> (!disconnected &amp;&amp;</div><div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160; (len = read(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i], tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a>)) &gt; 0) {</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160; <span class="keywordflow">for</span> (ptr = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a>, lenw = 0; len &gt; 0; len -= lenw, ptr += lenw) {</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160; lenw = ssh_channel_write(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i], (<span class="keywordtype">char</span> *)ptr, len);</div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; <span class="keywordflow">if</span> (lenw &lt;= 0) {</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; disconnected = TRUE;</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not write to SSH channel. %s&quot;</span>));</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160; }</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; }</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; }</div><div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160; <span class="keywordflow">if</span> (len == 0) {</div><div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not read from tunnel listening socket. %s&quot;</span>));</div><div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; disconnected = TRUE;</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160; }</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="keywordflow">if</span> (disconnected) {</div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;tunnel disconnected because %s&quot;</span>, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160; remmina_ssh_tunnel_remove_channel(tunnel, i);</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; <span class="keywordflow">continue</span>;</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; i++;</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; <span class="keywordflow">if</span> (!tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>) <span class="keywordflow">break</span>;</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; i = 0;</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; <span class="keywordflow">while</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> &amp;&amp; i &lt; tunnel-&gt;num_channels) {</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160; disconnected = FALSE;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160; <span class="keywordflow">if</span> (!tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]) {</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; len = ssh_channel_poll(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i], 0);</div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160; <span class="keywordflow">if</span> (len == SSH_ERROR || len == SSH_EOF) {</div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not poll SSH channel. %s&quot;</span>));</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160; disconnected = TRUE;</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (len &gt; 0) {</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i] = remmina_ssh_tunnel_buffer_new(len);</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160; len = ssh_channel_read_nonblocking(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>[i], tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;data, len, 0);</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160; <span class="keywordflow">if</span> (len &lt;= 0) {</div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not read SSH channel in a non-blocking way. %s&quot;</span>));</div><div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>&#160; disconnected = TRUE;</div><div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01490"></a><span class="lineno"> 1490</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;len = len;</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"> 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"> 1495</span>&#160; <span class="keywordflow">if</span> (!disconnected &amp;&amp; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]) {</div><div class="line"><a name="l01496"></a><span class="lineno"> 1496</span>&#160; <span class="keywordflow">for</span> (lenw = 0; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;len &gt; 0;</div><div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;len -= lenw, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;ptr += lenw) {</div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; lenw = write(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>[i], tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;ptr, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;len);</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; <span class="keywordflow">if</span> (lenw == -1 &amp;&amp; errno == EAGAIN &amp;&amp; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>)</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; <span class="comment">/* Sometimes we cannot write to a socket (always EAGAIN), probably because it’s internal</span></div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160;<span class="comment"> * buffer is full. We need read the pending bytes from the socket first. so here we simply</span></div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160;<span class="comment"> * break, leave the buffer there, and continue with other data */</span></div><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160; <span class="keywordflow">if</span> (lenw &lt;= 0) {</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not send data to tunnel listening socket. %s&quot;</span>));</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160; disconnected = TRUE;</div><div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]-&gt;len &lt;= 0) {</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160; remmina_ssh_tunnel_buffer_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i]);</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>[i] = NULL;</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"> 1515</span>&#160; }</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160;</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; <span class="keywordflow">if</span> (disconnected) {</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Connection to SSH tunnel dropped. %s&quot;</span>, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; remmina_ssh_tunnel_remove_channel(tunnel, i);</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; }</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; i++;</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; }</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; sock = remmina_ssh_tunnel_accept_local_connection(tunnel, FALSE);</div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160; <span class="keywordflow">if</span> (sock &gt; 0) {</div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; channel = remmina_ssh_tunnel_create_forward_channel(tunnel);</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160; <span class="keywordflow">if</span> (!channel) {</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Could not open new SSH connection. %s&quot;</span>, REMMINA_SSH(tunnel)-&gt;error);</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160; close(sock);</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; <span class="comment">/* Leave thread loop */</span></div><div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = FALSE;</div><div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160; remmina_ssh_tunnel_add_channel(tunnel, channel, sock);</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160; }</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; }</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160;</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160; remmina_ssh_tunnel_close_all_channels(tunnel);</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"> 1544</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = FALSE;</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; <span class="comment">/* Notify tunnel owner of disconnection */</span></div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)</div><div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>);</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="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;<span class="keyword">static</span> gboolean remmina_ssh_notify_tunnel_main_thread_end(gpointer data)</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; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel = (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)data;</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; <span class="comment">/* Ask tunnel owner to destroy tunnel object */</span></div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">destroy_func</a>)</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160; (*tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">destroy_func</a>)(tunnel, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">destroy_func_callback_data</a>);</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160;</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;}</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;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;remmina_ssh_tunnel_main_thread(gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160; <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel = (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *)data;</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;</div><div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; <span class="keywordflow">while</span> (TRUE) {</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160; remmina_ssh_tunnel_main_thread_proc(data);</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> &lt; 0 || tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> == 0 || !tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; }</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; <span class="comment">/* Do after tunnel thread cleanup */</span></div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160; IDLE_ADD((GSourceFunc)remmina_ssh_notify_tunnel_main_thread_end, (gpointer)tunnel);</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="keywordflow">return</span> NULL;</div><div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;}</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;</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;<a class="code" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel)</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160;{</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> &gt;= 0) {</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>);</div><div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> = -1;</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;}</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;gboolean</div><div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;<a class="code" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, <span class="keyword">const</span> gchar *host, gint port, gint local_port)</div><div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;{</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; gint sock;</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; gint sockopt = 1;</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; <span class="keyword">struct </span>sockaddr_in sin;</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> = <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a>;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a> = g_strdup(host);</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a> = port;</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a> == 0) {</div><div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; REMMINA_SSH(tunnel)-&gt;error = g_strdup(_(<span class="stringliteral">&quot;Assign a destination port.&quot;</span>));</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160; <span class="comment">/* Create the server socket that listens on the local port */</span></div><div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160; sock = socket(AF_INET, SOCK_STREAM, 0);</div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; <span class="keywordflow">if</span> (sock &lt; 0) {</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; REMMINA_SSH(tunnel)-&gt;error = g_strdup(_(<span class="stringliteral">&quot;Could not create socket.&quot;</span>));</div><div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160; }</div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &amp;sockopt, <span class="keyword">sizeof</span>(sockopt));</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; sin.sin_family = AF_INET;</div><div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160; sin.sin_port = htons(local_port);</div><div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160; sin.sin_addr.s_addr = inet_addr(<span class="stringliteral">&quot;127.0.0.1&quot;</span>);</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="keywordflow">if</span> (bind(sock, (<span class="keyword">struct</span> sockaddr *)&amp;sin, <span class="keyword">sizeof</span>(sin))) {</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160; REMMINA_SSH(tunnel)-&gt;error = g_strdup(_(<span class="stringliteral">&quot;Could not bind server socket to local port.&quot;</span>));</div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160; close(sock);</div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160; }</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; <span class="keywordflow">if</span> (listen(sock, 1)) {</div><div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160; REMMINA_SSH(tunnel)-&gt;error = g_strdup(_(<span class="stringliteral">&quot;Could not listen to local port.&quot;</span>));</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160; close(sock);</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160; }</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; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> = sock;</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = TRUE;</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160;</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>, NULL, remmina_ssh_tunnel_main_thread, tunnel)) {</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160; <span class="comment">// TRANSLATORS: Do not translate pthread</span></div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not start pthread.&quot;</span>));</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160; }</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160;}</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;gboolean</div><div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;<a class="code" href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh_tunnel_x11</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, <span class="keyword">const</span> gchar *cmd)</div><div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;{</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> = <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>;</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a> = g_strdup(cmd);</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = TRUE;</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>, NULL, remmina_ssh_tunnel_main_thread, tunnel)) {</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160; <span class="comment">// TRANSLATORS: Do not translate pthread</span></div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not start pthread.&quot;</span>));</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160; <span class="keywordflow">return</span> 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="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;}</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>&#160;</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160;gboolean</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160;<a class="code" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gboolean bindlocalhost)</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160;{</div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> = <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a>;</div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a> = bindlocalhost;</div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = TRUE;</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>, NULL, remmina_ssh_tunnel_main_thread, tunnel)) {</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160; <span class="comment">// TRANSLATORS: Do not translate pthread</span></div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not start pthread.&quot;</span>));</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160; }</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;}</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;gboolean</div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>&#160;<a class="code" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gint port, gint local_port)</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;{</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> = <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>;</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a> = port;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">localport</a> = local_port;</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = TRUE;</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160;</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>, NULL, remmina_ssh_tunnel_main_thread, tunnel)) {</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; <span class="comment">// TRANSLATORS: Do not translate pthread</span></div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; <a class="code" href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(REMMINA_SSH(tunnel), _(<span class="stringliteral">&quot;Could not start pthread.&quot;</span>));</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160; }</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span>&#160;}</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;gboolean</div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160;<a class="code" href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh_tunnel_terminated</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel)</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;{</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; <span class="keywordflow">return</span> tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> == 0;</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160;}</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;<a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel)</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;{</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; pthread_t thread;</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;tunnel-&gt;thread = %lX\n&quot;</span>, tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</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; thread = tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>;</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160; <span class="keywordflow">if</span> (thread != 0) {</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a> = FALSE;</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160; pthread_cancel(thread);</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160; pthread_join(thread, NULL);</div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a> = 0;</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; }</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160;</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; <span class="keywordflow">if</span> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a> == <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a> &amp;&amp; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a> &gt; 0) {</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160;<span class="preprocessor">#if LIBSSH_VERSION_INT &gt;= SSH_VERSION_INT(0, 7, 0)</span></div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; ssh_channel_cancel_forward(REMMINA_SSH(tunnel)-&gt;session, NULL, 6000 + tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a>);</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160; ssh_forward_cancel(REMMINA_SSH(tunnel)-&gt;session, NULL, 6000 + tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a>);</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;<span class="preprocessor">#endif</span></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> (tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> &gt;= 0) {</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160; close(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>);</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160; tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a> = -1;</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"> 1735</span>&#160; remmina_ssh_tunnel_close_all_channels(tunnel);</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"> 1737</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a>);</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a>);</div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>);</div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>&#160; g_free(tunnel-&gt;<a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>);</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;</div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span>&#160; <a class="code" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a>((<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *)tunnel);</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"> 1745</span>&#160;</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160;<span class="comment">* SSH SFTP *</span></div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l01749"></a><span class="lineno"> 1749</span>&#160;<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *</div><div class="line"><a name="l01750"></a><span class="lineno"> 1750</span>&#160;<a class="code" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l01751"></a><span class="lineno"> 1751</span>&#160;{</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp;</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160;</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; sftp = g_new(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a>, 1);</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160; <a class="code" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a>(REMMINA_SSH(sftp), remminafile, FALSE);</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160; sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a> = NULL;</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160; <span class="keywordflow">return</span> sftp;</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160;}</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160;</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160;<a class="code" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160;{</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160; <a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp;</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160; sftp = g_new(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a>, 1);</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160;</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160; remmina_ssh_init_from_ssh(REMMINA_SSH(sftp), ssh);</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160;</div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160; sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a> = NULL;</div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160;</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160; <span class="keywordflow">return</span> sftp;</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;}</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160;</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160;gboolean</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;<a class="code" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a>(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp)</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160;{</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160; sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a> = sftp_new(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">ssh</a>.<a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>);</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160; <span class="keywordflow">if</span> (!sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>) {</div><div class="line"><a name="l01785"></a><span class="lineno"> 1785</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(sftp), _(<span class="stringliteral">&quot;Could not create SFTP session. %s&quot;</span>));</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160; }</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160; <span class="keywordflow">if</span> (sftp_init(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>)) {</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(sftp), _(<span class="stringliteral">&quot;Could not start SFTP session. %s&quot;</span>));</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160; }</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160;}</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;<a class="code" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a>(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp)</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160;{</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160; <span class="keywordflow">if</span> (sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>) {</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160; sftp_free(sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>);</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160; sftp-&gt;<a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a> = NULL;</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160; }</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160; <a class="code" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a>(REMMINA_SSH(sftp));</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;}</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160;</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;<span class="comment">* SSH Shell *</span></div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160;<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160;<a class="code" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;{</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell;</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160; shell = g_new0(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a>, 1);</div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160;</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160; <a class="code" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a>(REMMINA_SSH(shell), remminafile, FALSE);</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a> = -1;</div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a> = -1;</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a> = g_strdup(<a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>));</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160;</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160; <span class="keywordflow">return</span> shell;</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160;}</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160;</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160;<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160;<a class="code" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh)</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;{</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell;</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;</div><div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160; shell = g_new0(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a>, 1);</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160;</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160; remmina_ssh_init_from_ssh(REMMINA_SSH(shell), ssh);</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160;</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a> = -1;</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a> = -1;</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160;</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160; <span class="keywordflow">return</span> shell;</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160;}</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;</div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160;remmina_ssh_call_exit_callback_on_main_thread(gpointer data)</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;{</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell = (<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *)data;</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a>)</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a>(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">user_data</a>);</div><div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;}</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160;</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160;remmina_ssh_shell_thread(gpointer data)</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160;{</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell = (<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *)data;</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160; fd_set fds;</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; <span class="keyword">struct </span>timeval timeout;</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160; ssh_channel channel = NULL;</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160; ssh_channel ch[2], chout[2];</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160; gchar *buf = NULL;</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160; gint buf_len;</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160; gint len;</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; gint i, ret;</div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160; <span class="comment">//gint screen;</span></div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160;</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;</div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160; <span class="keywordflow">if</span> ((channel = ssh_channel_new(REMMINA_SSH(shell)-&gt;session)) == NULL ||</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>&#160; ssh_channel_open_session(channel)) {</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(shell), _(<span class="stringliteral">&quot;Could not open channel. %s&quot;</span>));</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160; <span class="keywordflow">if</span> (channel) ssh_channel_free(channel);</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a> = 0;</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; }</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160;</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160; ssh_channel_request_pty(channel);</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160;</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160; <span class="comment">/* ssh_channel_request_x11 works but I do not know yet how to use the</span></div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160;<span class="comment"> * channel. At the moment I leave the code here, commented, for future</span></div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160;<span class="comment"> * investigations.</span></div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160; <span class="comment">//screen = gdk_x11_screen_get_screen_number(gdk_screen_get_default());</span></div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160; <span class="comment">//ret = ssh_channel_request_x11 (channel, FALSE, NULL, NULL, screen);</span></div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160; <span class="comment">/* TODO: We should have a callback that intercept an x11 request to use</span></div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160;<span class="comment"> * ssh_channel_accept_x11 */</span></div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160; <span class="comment">//if ( ret != SSH_OK ) {</span></div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span>&#160; <span class="comment">//g_print (&quot;[SSH] X11 channel error: %d\n&quot;, ret);</span></div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160; <span class="comment">//}else {</span></div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160; <span class="comment">//ssh_channel_accept_x11 ( channel, 50);</span></div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160; <span class="comment">//}</span></div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160;</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160;</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a> &amp;&amp; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a>[0])</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160; ret = ssh_channel_request_exec(channel, shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a>);</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160; ret = ssh_channel_request_shell(channel);</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160; <span class="keywordflow">if</span> (ret) {</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160; <span class="comment">// TRANSLATORS: The placeholder %s is an error message</span></div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160; <a class="code" href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(REMMINA_SSH(shell), _(<span class="stringliteral">&quot;Could not request shell. %s&quot;</span>));</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160; ssh_channel_close(channel);</div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160; ssh_channel_send_eof(channel);</div><div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160; ssh_channel_free(channel);</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a> = 0;</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160; }</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160;</div><div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a> = channel;</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160;</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160; buf_len = 1000;</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160; buf = g_malloc(buf_len + 1);</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160;</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160; ch[0] = channel;</div><div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160; ch[1] = NULL;</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; <span class="keywordflow">while</span> (!shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a>) {</div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160; timeout.tv_sec = 1;</div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; timeout.tv_usec = 0;</div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;</div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160; FD_ZERO(&amp;fds);</div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160; FD_SET(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, &amp;fds);</div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160;</div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160; ret = ssh_select(ch, chout, shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a> + 1, &amp;fds, &amp;timeout);</div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160; <span class="keywordflow">if</span> (ret == SSH_EINTR) <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160; <span class="keywordflow">if</span> (ret == -1) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;</div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160; <span class="keywordflow">if</span> (FD_ISSET(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, &amp;fds)) {</div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160; len = read(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, buf, buf_len);</div><div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160; <span class="keywordflow">if</span> (len &lt;= 0) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160; ssh_channel_write(channel, buf, len);</div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160; }</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; 2; i++) {</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l01944"></a><span class="lineno"> 1944</span>&#160; len = ssh_channel_poll(channel, i);</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160; <span class="keywordflow">if</span> (len == SSH_ERROR || len == SSH_EOF) {</div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a> = TRUE;</div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160; }</div><div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160; <span class="keywordflow">if</span> (len &lt;= 0) <span class="keywordflow">continue</span>;</div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160; <span class="keywordflow">if</span> (len &gt; buf_len) {</div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160; buf_len = len;</div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; buf = (gchar *)g_realloc(buf, buf_len + 1);</div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160; }</div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160; len = ssh_channel_read_nonblocking(channel, buf, len, i);</div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160; <span class="keywordflow">if</span> (len &lt;= 0) {</div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a> = TRUE;</div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160; }</div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160; <span class="keywordflow">while</span> (len &gt; 0) {</div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160; ret = write(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, buf, len);</div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160; <span class="keywordflow">if</span> (ret &lt;= 0) <span class="keywordflow">break</span>;</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160; len -= ret;</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160; }</div><div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; }</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160; }</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160;</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a> = NULL;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160; ssh_channel_close(channel);</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160; ssh_channel_send_eof(channel);</div><div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160; ssh_channel_free(channel);</div><div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160;</div><div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160; g_free(buf);</div><div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a> = 0;</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160;</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a>)</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160; IDLE_ADD((GSourceFunc)remmina_ssh_call_exit_callback_on_main_thread, (gpointer)shell);</div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l01983"></a><span class="lineno"> 1983</span>&#160;}</div><div class="line"><a name="l01984"></a><span class="lineno"> 1984</span>&#160;</div><div class="line"><a name="l01985"></a><span class="lineno"> 1985</span>&#160;</div><div class="line"><a name="l01986"></a><span class="lineno"> 1986</span>&#160;gboolean</div><div class="line"><a name="l01987"></a><span class="lineno"> 1987</span>&#160;<a class="code" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell, <a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a> exit_callback, gpointer data)</div><div class="line"><a name="l01988"></a><span class="lineno"> 1988</span>&#160;{</div><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>&#160; gchar *slavedevice;</div><div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160; <span class="keyword">struct </span>termios stermios;</div><div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160;</div><div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a> = posix_openpt(O_RDWR | O_NOCTTY);</div><div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a> == -1 ||</div><div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160; grantpt(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a>) == -1 ||</div><div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160; unlockpt(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a>) == -1 ||</div><div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160; (slavedevice = ptsname(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a>)) == NULL ||</div><div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160; (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a> = open(slavedevice, O_RDWR | O_NOCTTY)) &lt; 0) {</div><div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160; REMMINA_SSH(shell)-&gt;error = g_strdup(_(<span class="stringliteral">&quot;Could not create PTY device.&quot;</span>));</div><div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160; }</div><div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;</div><div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160; <span class="comment">/* As per libssh documentation */</span></div><div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160; tcgetattr(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, &amp;stermios);</div><div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160; stermios.c_iflag &amp;= ~(IGNBRK | BRKINT | PARMRK | ISTRIP | INLCR | IGNCR | ICRNL | IXON);</div><div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160; stermios.c_oflag &amp;= ~OPOST;</div><div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160; stermios.c_lflag &amp;= ~(ECHO | ECHONL | ICANON | ISIG | IEXTEN);</div><div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160; stermios.c_cflag &amp;= ~(CSIZE | PARENB);</div><div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160; stermios.c_cflag |= CS8;</div><div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160; tcsetattr(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>, TCSANOW, &amp;stermios);</div><div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160;</div><div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a> = exit_callback;</div><div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">user_data</a> = data;</div><div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;</div><div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160; <span class="comment">/* Once the process started, we should always TRUE and assume the pthread will be created always */</span></div><div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160; pthread_create(&amp;shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a>, NULL, remmina_ssh_shell_thread, shell);</div><div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160;</div><div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;}</div><div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;</div><div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;<a class="code" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell, gint columns, gint rows)</div><div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;{</div><div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160; LOCK_SSH(shell)</div><div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a>)</div><div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160; ssh_channel_change_pty_size(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a>, columns, rows);</div><div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160; UNLOCK_SSH(shell)</div><div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;}</div><div class="line"><a name="l02030"></a><span class="lineno"> 2030</span>&#160;</div><div class="line"><a name="l02031"></a><span class="lineno"> 2031</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l02032"></a><span class="lineno"> 2032</span>&#160;<a class="code" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell)</div><div class="line"><a name="l02033"></a><span class="lineno"> 2033</span>&#160;{</div><div class="line"><a name="l02034"></a><span class="lineno"> 2034</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l02035"></a><span class="lineno"> 2035</span>&#160; pthread_t thread = shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a>;</div><div class="line"><a name="l02036"></a><span class="lineno"> 2036</span>&#160;</div><div class="line"><a name="l02037"></a><span class="lineno"> 2037</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a> = NULL;</div><div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160; <span class="keywordflow">if</span> (thread) {</div><div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a> = TRUE;</div><div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160; pthread_join(thread, NULL);</div><div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160; }</div><div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160; close(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>);</div><div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160; <span class="keywordflow">if</span> (shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a>) {</div><div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160; g_free(shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a>);</div><div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160; shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a> = NULL;</div><div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160; }</div><div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160; <span class="comment">/* It’s not necessary to close shell-&gt;slave since the other end (vte) will close it */</span>;</div><div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160; <a class="code" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a>(REMMINA_SSH(shell));</div><div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160;}</div><div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160;</div><div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* HAVE_LIBSSH */</span><span class="preprocessor"></span></div><div class="ttc" id="struct___remmina_s_s_h_tunnel_html"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00143">remmina_ssh.h:143</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00107">remmina_ssh.h:107</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_afd166711167c39b8c1f6e8be3eb0c4e0"><div class="ttname"><a href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a></div><div class="ttdeci">struct _RemminaSSHTunnelBuffer RemminaSSHTunnelBuffer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00131">remmina_ssh.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a4d61f0c0926686f8451dcf49d2d857da"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">_RemminaSSHTunnel::dest</a></div><div class="ttdeci">gchar * dest</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00164">remmina_ssh.h:164</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acf69725720378340e1a51c87e7638a7f"><div class="ttname"><a href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth_gui(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_pref_html_aac4f34f297a653052752b571777bc001"><div class="ttname"><a href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">_RemminaPref::ssh_loglevel</a></div><div class="ttdeci">gint ssh_loglevel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00143">remmina_pref.h:143</a></div></div>
+<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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ac03e015f09baa46d4a9a118c606736af"><div class="ttname"><a href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">_RemminaSSH::proxycommand</a></div><div class="ttdeci">gchar * proxycommand</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00075">remmina_ssh.h:75</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_aa8aee72091b09cde34c0e0efadde719a"><div class="ttname"><a href="remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a">remmina_ssh_auth_auto_pubkey</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_auto_pubkey(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00279">remmina_ssh.c:279</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_af670e0b0960c3e71e9f0b8b797ef9c28"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">_RemminaSSHTunnel::remotedisplay</a></div><div class="ttdeci">gint remotedisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00168">remmina_ssh.h:168</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a1e1f1bfaec497b1365ea70ebe795d778"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">_RemminaSSHTunnel::destroy_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback destroy_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00177">remmina_ssh.h:177</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="types_8h_html"><div class="ttname"><a href="types_8h.html">types.h</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a956cb7289e147875ae5f745b33514ebd"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">_RemminaSSHTunnel::running</a></div><div class="ttdeci">gboolean running</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00157">remmina_ssh.h:157</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ac6d58beb4df141c6353e897c39748146"><div class="ttname"><a href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh_tunnel_x11</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_x11(RemminaSSHTunnel *tunnel, const gchar *cmd)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aeccf94afb57bcad37b4241d45fcb3fea"><div class="ttname"><a href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a></div><div class="ttdeci">gchar * remmina_ssh_unconvert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae47c8270267b02b9c0ff5b36074101c2"><div class="ttname"><a href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_reverse(RemminaSSHTunnel *tunnel, gint port, gint local_port)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae0792ddb4adcaafefc1a4604cefdd8f4"><div class="ttname"><a href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3aaebd7f03b7d8601818fabc46b787ed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH::error</a></div><div class="ttdeci">gchar * error</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00079">remmina_ssh.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa34e103281dafaa073d2a676b3368529"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">_RemminaSSH::passphrase</a></div><div class="ttdeci">gchar * passphrase</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00083">remmina_ssh.h:83</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_aebc7c7d34c470081a52aa35d998ce868"><div class="ttname"><a href="remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868">remmina_protocol_widget_panel_auth</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01419">remmina_protocol_widget.c:1419</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00133">types.h:133</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00136">remmina_ssh.h:136</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a547feb6e46dfb8e37a4eb338c17d7b52"><div class="ttname"><a href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">_RemminaSSH::ssh_mutex</a></div><div class="ttdeci">pthread_mutex_t ssh_mutex</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00081">remmina_ssh.h:81</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a9ed3110b7b030bccd0ff9ed70e86da2d"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d">remmina_protocol_widget_get_savepassword</a></div><div class="ttdeci">gboolean remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01550">remmina_protocol_widget.c:1550</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a0b3e071eb2c6011efdcea3f65f8e7fa0"><div class="ttname"><a href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">_RemminaSSH::ciphers</a></div><div class="ttdeci">gchar * ciphers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00073">remmina_ssh.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_adedb04066148973fed2de9f04b80286d"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">_RemminaSSHShell::user_data</a></div><div class="ttdeci">gpointer user_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00255">remmina_ssh.h:255</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1d7deb091e0d51a8d7885ad9e22dc9a7"><div class="ttname"><a href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">_RemminaPref::ssh_parseconfig</a></div><div class="ttdeci">gboolean ssh_parseconfig</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00144">remmina_pref.h:144</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a33ae9b7cd8cb3dcd85223017dfd13795"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">_RemminaSSHTunnel::destroy_func_callback_data</a></div><div class="ttdeci">gpointer destroy_func_callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00178">remmina_ssh.h:178</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a0b35a5a573abb5e8b8a27a91434a00a5"><div class="ttname"><a href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">_RemminaSSH::charset</a></div><div class="ttdeci">gchar * charset</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00071">remmina_ssh.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html"><div class="ttname"><a href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00222">remmina_ssh.h:222</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a793ae9c3e2f88eed85551c85d6832ebd"><div class="ttname"><a href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">_RemminaPref::ssh_tcp_keepintvl</a></div><div class="ttdeci">gint ssh_tcp_keepintvl</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00147">remmina_pref.h:147</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acdb9f57d2f9b47913715a8d8a0ea0c02"><div class="ttname"><a href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a></div><div class="ttdeci">void remmina_ssh_free(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html_adef92bcfa7b9a86debf0531d0239a5df"><div class="ttname"><a href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">_RemminaSFTP::sftp_sess</a></div><div class="ttdeci">sftp_session sftp_sess</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00225">remmina_ssh.h:225</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_ad6f3f5c196175412049af0c440414e65"><div class="ttname"><a href="remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65">remmina_ssh_auth_password</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_password(RemminaSSH *ssh)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00191">remmina_ssh.c:191</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a878854125f24a8de520ec91066d0d226"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">_RemminaSSHShell::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00251">remmina_ssh.h:251</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a976d3c1a549c17f00a64eb05d4e0823c"><div class="ttname"><a href="remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c">remmina_ssh_auth_interactive</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_interactive(RemminaSSH *ssh)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00166">remmina_ssh.c:166</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a69e209a1ee77d6dfe5d87961e2a50a6a"><div class="ttname"><a href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">_RemminaSSH::hostkeytypes</a></div><div class="ttdeci">gchar * hostkeytypes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00074">remmina_ssh.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ae41b6af92643cfbcd3e13275f4281260"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">_RemminaSSHTunnel::localport</a></div><div class="ttdeci">gint localport</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00166">remmina_ssh.h:166</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html"><div class="ttname"><a href="struct___remmina_s_s_h.html">_RemminaSSH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00059">remmina_ssh.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a88ae4fb816713bd90d8e452b5e7ef0bb"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">_RemminaSSHTunnel::buffer_len</a></div><div class="ttdeci">gint buffer_len</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00160">remmina_ssh.h:160</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00108">remmina_ssh.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a7c546634f855c217faa75ab4d4c7c2e2"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">_RemminaSSHShell::channel</a></div><div class="ttdeci">ssh_channel channel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00252">remmina_ssh.h:252</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6fa916d3736cb8e2a0e6541f608c209b"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">_RemminaSSHTunnel::bindlocalhost</a></div><div class="ttdeci">gboolean bindlocalhost</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00169">remmina_ssh.h:169</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e">SSH_AUTH_AGENT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a78edb0cd27564e88b6c92b425a383df6"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">_RemminaSSHShell::slave</a></div><div class="ttdeci">gint slave</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00249">remmina_ssh.h:249</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ad9887ee0673a2b0b03b091746ae02d23"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">_RemminaSSHTunnel::ssh</a></div><div class="ttdeci">RemminaSSH ssh</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00144">remmina_ssh.h:144</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a345d41b54490dd39e35280122d22feed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">_RemminaSSH::kex_algorithms</a></div><div class="ttdeci">const gchar * kex_algorithms</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00072">remmina_ssh.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a6b2e8c1d9705b4c5b64a0e07a1159e80"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">_RemminaSSHShell::closed</a></div><div class="ttdeci">gboolean closed</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00253">remmina_ssh.h:253</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a7fd94fc8f610d86eb71a7a7fa1500d69"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">_RemminaSSHTunnel::server_sock</a></div><div class="ttdeci">gint server_sock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00163">remmina_ssh.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a19fed9a85494d40d3f2ae2ae1d1bc18c"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">_RemminaSSHTunnel::disconnect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback disconnect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00174">remmina_ssh.h:174</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a6815a78f65795cbc6795ca1c59e73102"><div class="ttname"><a href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a></div><div class="ttdeci">gboolean remmina_ssh_init_from_file(RemminaSSH *ssh, RemminaFile *remminafile, gboolean is_tunnel)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="ttdeci">remmina_ssh_auth_result</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00105">remmina_ssh.h:105</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00138">remmina_ssh.h:138</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_a96f5bb72acbdcbf8793b4a5f4a6132b5"><div class="ttname"><a href="remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5">remmina_log_running</a></div><div class="ttdeci">gboolean remmina_log_running(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00148">remmina_log.c:148</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a72a58e416c4eeb9d17eaf76360ebee42"><div class="ttname"><a href="remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a></div><div class="ttdeci">gchar * remmina_ssh_identity_path(const gchar *id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00120">remmina_ssh.c:120</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa064626a7fd528e7d8c1fc34d1bd8dfc"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">_RemminaSSH::port</a></div><div class="ttdeci">gint port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00065">remmina_ssh.h:65</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a316f97b879e147ec52967344f6ad1d84"><div class="ttname"><a href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a></div><div class="ttdeci">void remmina_ssh_shell_free(RemminaSSHShell *shell)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3a8dc7679e22208bbdf076c520f25bbb"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">_RemminaSSH::user</a></div><div class="ttdeci">gchar * user</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00066">remmina_ssh.h:66</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="struct___remmina_s_s_h_tunnel_html_a37244b9fafd3ab48c0f11ad0b8cfdf91"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">_RemminaSSHTunnel::channels_out</a></div><div class="ttdeci">ssh_channel * channels_out</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00161">remmina_ssh.h:161</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00109">remmina_ssh.h:109</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a">SSH_AUTH_GSSAPI</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a175c6dbec04bf34e3f2a5bd791d2d336"><div class="ttname"><a href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></div><div class="ttdeci">static SoupSession * session</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00077">rmnews.c:77</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="remmina__protocol__widget_8c_html_a9092c29f585fdabaf0ce7e865670053b"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b">remmina_protocol_widget_panel_question_yesno</a></div><div class="ttdeci">gint remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01414">remmina_protocol_widget.c:1414</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a155d773294b0671aac4e710e97d90047"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">_RemminaSSHTunnel::buffer</a></div><div class="ttdeci">gchar * buffer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00159">remmina_ssh.h:159</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a76ed92539dfe749a24a3a3b99f3a644f"><div class="ttname"><a href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH::tunnel_entrance_port</a></div><div class="ttdeci">gint tunnel_entrance_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00087">remmina_ssh.h:87</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a30412e0b4302f5ae0b9be2749390a48d"><div class="ttname"><a href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_abc556f0a4335083436f6e19c204fa553"><div class="ttname"><a href="remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a></div><div class="ttdeci">void remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00145">remmina_ssh.c:145</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_abf5a73c3444790177635a6eab6417d03"><div class="ttname"><a href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">_RemminaSSH::auth</a></div><div class="ttdeci">gint auth</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00067">remmina_ssh.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aba49db2ced40e21e8adfad69dcfda2c4"><div class="ttname"><a href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_xport(RemminaSSHTunnel *tunnel, gboolean bindlocalhost)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ae396f0b535e2e92d640a0eb971aa082b"><div class="ttname"><a href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">_RemminaSSH::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00064">remmina_ssh.h:64</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_abf04fd329ab77bbd4f6aa1cb1eaa349d"><div class="ttname"><a href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a></div><div class="ttdeci">RemminaSSHTunnel * remmina_ssh_tunnel_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html_a7dab48a7603f1dd6671a8dd1efe1958e"><div class="ttname"><a href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">_RemminaSFTP::ssh</a></div><div class="ttdeci">RemminaSSH ssh</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00223">remmina_ssh.h:223</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad92d70d47d7ad80298efe591955fa8b8"><div class="ttname"><a href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">_RemminaPref::ssh_tcp_usrtimeout</a></div><div class="ttdeci">gint ssh_tcp_usrtimeout</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="struct___remmina_s_s_h_tunnel_html_a8066492c4a0181f1b39b2fb2098fb56d"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">_RemminaSSHTunnel::init_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback init_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00172">remmina_ssh.h:172</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a8920b4663823da39661a108f04b33694"><div class="ttname"><a href="remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694">common_identities</a></div><div class="ttdeci">static const gchar * common_identities[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00110">remmina_ssh.c:110</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a62e6a209747daa65061273243e830ae9"><div class="ttname"><a href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">_RemminaSSH::stricthostkeycheck</a></div><div class="ttdeci">gint stricthostkeycheck</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00076">remmina_ssh.h:76</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_ab6d8bdad543b3caead2b2b0339484798"><div class="ttname"><a href="remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a></div><div class="ttdeci">gchar * remmina_ssh_find_identity(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00129">remmina_ssh.c:129</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6f2cd8a2535e180e7bd428e84030ffb6"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">_RemminaSSHTunnel::callback_data</a></div><div class="ttdeci">gpointer callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00175">remmina_ssh.h:175</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ab017331f59fceff63bb33ff00d088870"><div class="ttname"><a href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">_RemminaSSH::compression</a></div><div class="ttdeci">const gchar * compression</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00077">remmina_ssh.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ace4bb7170f349bd7f127f72c9c7b6ac6"><div class="ttname"><a href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">_RemminaSSH::is_tunnel</a></div><div class="ttdeci">gboolean is_tunnel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00085">remmina_ssh.h:85</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae9f52b1a3a545acae8c93007e20ec909"><div class="ttname"><a href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a></div><div class="ttdeci">void remmina_ssh_tunnel_cancel_accept(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a0eb19f950b34b360b28243a0b1883d67"><div class="ttname"><a href="remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67">remmina_ssh_auth_gssapi</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_gssapi(RemminaSSH *ssh)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00316">remmina_ssh.c:316</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1c095a955af21b3ed9952ba2ea94691b"><div class="ttname"><a href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a></div><div class="ttdeci">gboolean remmina_ssh_shell_open(RemminaSSHShell *shell, RemminaSSHExitFunc exit_callback, gpointer data)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ac86d0d359e5d97d8d60fac69c9af69df"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">_RemminaSSHTunnel::tunnel_type</a></div><div class="ttdeci">gint tunnel_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00146">remmina_ssh.h:146</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_aa496acab4967f380e3520aeb9dae2bbd"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">_RemminaSSHTunnel::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00156">remmina_ssh.h:156</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ab11c1bcc8549ce8b154f65f9009c65d4"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">_RemminaSSHTunnel::channels</a></div><div class="ttdeci">ssh_channel * channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00148">remmina_ssh.h:148</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a223f8dd7a678bcec2ece40a2d8f7ea06"><div class="ttname"><a href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a></div><div class="ttdeci">void remmina_ssh_tunnel_free(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aebc7525b6f72d22c1ce4df93c1576602"><div class="ttname"><a href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH::tunnel_entrance_host</a></div><div class="ttdeci">gchar * tunnel_entrance_host</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00086">remmina_ssh.h:86</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a2bf96a40b9f63300d02e158b26546203"><div class="ttname"><a href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">_RemminaPref::ssh_tcp_keepidle</a></div><div class="ttdeci">gint ssh_tcp_keepidle</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00146">remmina_pref.h:146</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a52656bbe00a83068f36337f449bdc767"><div class="ttname"><a href="remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767">remmina_public_open_xdisplay</a></div><div class="ttdeci">gint remmina_public_open_xdisplay(const gchar *disp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00410">remmina_public.c:410</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a6e57a1b5ba4a3886c4cb79ece8894796"><div class="ttname"><a href="remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796">remmina_ssh_auth_agent</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_agent(RemminaSSH *ssh)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00299">remmina_ssh.c:299</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_adedb385c39effff9c9dd5767250f8c89"><div class="ttname"><a href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">_RemminaSSH::password</a></div><div class="ttdeci">gchar * password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00068">remmina_ssh.h:68</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1500d65d1f0751812f237c1cb4d15188"><div class="ttname"><a href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_aa9ab1684349da8bfd6b84cc135c053b3"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">_RemminaSSHTunnel::sockets</a></div><div class="ttdeci">gint * sockets</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00149">remmina_ssh.h:149</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_af9f34b088c5af320708cf02dfc45d59e"><div class="ttname"><a href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">_RemminaSSH::privkeyfile</a></div><div class="ttdeci">gchar * privkeyfile</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00069">remmina_ssh.h:69</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a46cdb47db9c0ce8c1ac267cb3d10bbb3"><div class="ttname"><a href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">_RemminaSSH::session</a></div><div class="ttdeci">ssh_session session</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00060">remmina_ssh.h:60</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</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="struct___remmina_s_s_h_tunnel_html_a27cb79f54113bb4aa46ea163717087b1"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">_RemminaSSHTunnel::socketbuffers</a></div><div class="ttdeci">RemminaSSHTunnelBuffer ** socketbuffers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00150">remmina_ssh.h:150</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e">SSH_AUTH_AUTO_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a082f698b8aa7cec3c1cb0fd987d4358f"><div class="ttname"><a href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">_RemminaPref::ssh_tcp_keepcnt</a></div><div class="ttdeci">gint ssh_tcp_keepcnt</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00148">remmina_pref.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a88090ecb372853a19640c883f5bf606a"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">_RemminaSSHShell::exit_callback</a></div><div class="ttdeci">RemminaSSHExitFunc exit_callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00254">remmina_ssh.h:254</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a069b886ad870cb318693fe1022179b3d"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">_RemminaSSHTunnel::x11_channel</a></div><div class="ttdeci">ssh_channel x11_channel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00154">remmina_ssh.h:154</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a09bd4aee40b6e8d6ba8ffaa84dc95330"><div class="ttname"><a href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a></div><div class="ttdeci">gchar * remmina_ssh_convert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a2d56befd61e28b83f90fe3eff0e6dfe7"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">_RemminaSSHShell::exec</a></div><div class="ttdeci">gchar * exec</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00250">remmina_ssh.h:250</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8c_html_a3fc52d61f77327534286f57e563e0923"><div class="ttname"><a href="remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923">remmina_protocol_widget_get_password</a></div><div class="ttdeci">gchar * remmina_protocol_widget_get_password(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8c_source.html#l01538">remmina_protocol_widget.c:1538</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a12ba081432e5f32cf8287231d4779ecf"><div class="ttname"><a href="remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf">remmina_public_get_xauth_cookie</a></div><div class="ttdeci">gboolean remmina_public_get_xauth_cookie(const gchar *display, gchar **msg)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00379">remmina_public.c:379</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa8e75d0a635b3390100218bee6b49378"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">_RemminaSSH::callback</a></div><div class="ttdeci">ssh_callbacks callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00061">remmina_ssh.h:61</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1e09b32044c240a7dce0ad8afcbf0ff2"><div class="ttname"><a href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a></div><div class="ttdeci">gboolean remmina_sftp_open(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aeb20d31243a4d30e469a34fe01684e38"><div class="ttname"><a href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh_tunnel_terminated</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_terminated(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_abb17dc2972e189660c20eff7ec0fe513"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">_RemminaSSHTunnel::num_channels</a></div><div class="ttdeci">gint num_channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00151">remmina_ssh.h:151</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a85ca1ca2d0bf9ef29e490c6f4527a954"><div class="ttname"><a href="remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954">remmina_file_set_string</a></div><div class="ttdeci">void remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00423">remmina_file.c:423</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aaaf171c31b73f06f1026239253d9f6b9"><div class="ttname"><a href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a></div><div class="ttdeci">void remmina_sftp_free(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ac148c436afa70f426d665b4ddd2d8f4d"><div class="ttname"><a href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">_RemminaSSH::authenticated</a></div><div class="ttdeci">gboolean authenticated</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00062">remmina_ssh.h:62</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a4c56936cde97775b102a3e7b48fe5a01"><div class="ttname"><a href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a></div><div class="ttdeci">void(* RemminaSSHExitFunc)(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00243">remmina_ssh.h:243</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ad883561d61ee8d32d2201e642b0ab9cc"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">_RemminaSSHTunnel::port</a></div><div class="ttdeci">gint port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00165">remmina_ssh.h:165</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a1f3297263703b4259c1c9607d710995d"><div class="ttname"><a href="remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a></div><div class="ttdeci">void remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00155">remmina_ssh.c:155</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_adc8b77823386e00e610527d6b0b61149"><div class="ttname"><a href="remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149">remmina_public_get_server_port</a></div><div class="ttdeci">void remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00333">remmina_public.c:333</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a52b3f47eac79f2781ba81d61505f4f53"><div class="ttname"><a href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_open(RemminaSSHTunnel *tunnel, const gchar *host, gint port, gint local_port)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a3d7138d9cbbe44aea15440436ce85d6e"><div class="ttname"><a href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_ab02f57e79ea0ba35f8a3788ef01a707f"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">_RemminaSSHShell::master</a></div><div class="ttdeci">gint master</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00248">remmina_ssh.h:248</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a071153b511500c3faa6804ebd76aeba1"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">_RemminaSSHTunnel::localdisplay</a></div><div class="ttdeci">gchar * localdisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00170">remmina_ssh.h:170</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ac2d3f3b6550e4d1fe4caabe1df6af508"><div class="ttname"><a href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a></div><div class="ttdeci">void remmina_ssh_shell_set_size(RemminaSSHShell *shell, gint columns, gint rows)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6a184c6ca8fa267012d86986dac396c6"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">_RemminaSSHTunnel::max_channels</a></div><div class="ttdeci">gint max_channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00152">remmina_ssh.h:152</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe">SSH_AUTH_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00137">remmina_ssh.h:137</a></div></div>
+<div class="ttc" id="remmina__ssh_8c_html_a553ee462228e3b6284297b5ab89c6156"><div class="ttname"><a href="remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156">remmina_ssh_auth_pubkey</a></div><div class="ttdeci">static enum remmina_ssh_auth_result remmina_ssh_auth_pubkey(RemminaSSH *ssh)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00222">remmina_ssh.c:222</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="struct___remmina_s_s_h_tunnel_html_aa904bb1d9f643f6fde2b0eea4a8b1660"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">_RemminaSSHTunnel::connect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback connect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00173">remmina_ssh.h:173</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_aad84c6609cb431d48121ae5e0902441b"><div class="ttname"><a href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00336">remmina_ssh.c:336</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00245">remmina_ssh.h:245</a></div></div>
+<div class="ttc" id="remmina__file_8h_html_a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930"><div class="ttname"><a href="remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930">SSH_AUTH_PUBLICKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00051">remmina_file.h:51</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00139">remmina_ssh.h:139</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh_8c.html">remmina_ssh.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh_8h.html b/docs/remmina__ssh_8h.html
new file mode 100644
index 000000000..539c75095
--- /dev/null
+++ b/docs/remmina__ssh_8h.html
@@ -0,0 +1,1072 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ssh.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ssh_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html">_RemminaSSH</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:af0f6d172a5ceae64f62ad54883666ccc"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_s_h.html">_RemminaSSH</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a></td></tr>
+<tr class="separator:af0f6d172a5ceae64f62ad54883666ccc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f84b047e47b96a0475ac9e9fa60b286"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a></td></tr>
+<tr class="separator:a3f84b047e47b96a0475ac9e9fa60b286"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd166711167c39b8c1f6e8be3eb0c4e0"><td class="memItemLeft" align="right" valign="top">typedef struct _RemminaSSHTunnelBuffer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a></td></tr>
+<tr class="separator:afd166711167c39b8c1f6e8be3eb0c4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b2c22bb155eee623a0a1f22293c4924"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>) (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *, gpointer)</td></tr>
+<tr class="separator:a5b2c22bb155eee623a0a1f22293c4924"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8853669690f71506f9fe04ff08e2eaca"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a></td></tr>
+<tr class="separator:a8853669690f71506f9fe04ff08e2eaca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c56936cde97775b102a3e7b48fe5a01"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>) (gpointer data)</td></tr>
+<tr class="separator:a4c56936cde97775b102a3e7b48fe5a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dd627c6195e879ba5ca12f5d590b10d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a></td></tr>
+<tr class="separator:a1dd627c6195e879ba5ca12f5d590b10d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a879c265f2e8050e4e72a061ab3747ee1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> { <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>,
+<a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>,
+<a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>,
+<a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a>
+ }</td></tr>
+<tr class="separator:a879c265f2e8050e4e72a061ab3747ee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab48899087cc647f0f791ed0c459adc53"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a>,
+<a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>,
+<a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a>,
+<a class="el" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a>
+ }</td></tr>
+<tr class="separator:ab48899087cc647f0f791ed0c459adc53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a72a58e416c4eeb9d17eaf76360ebee42"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a> (const gchar *id)</td></tr>
+<tr class="separator:a72a58e416c4eeb9d17eaf76360ebee42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6d8bdad543b3caead2b2b0339484798"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a> (void)</td></tr>
+<tr class="separator:ab6d8bdad543b3caead2b2b0339484798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6815a78f65795cbc6795ca1c59e73102"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gboolean is_tunnel)</td></tr>
+<tr class="separator:a6815a78f65795cbc6795ca1c59e73102"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a624b8ac30ddcd00ebda0b51d504f5a33"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a624b8ac30ddcd00ebda0b51d504f5a33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad84c6609cb431d48121ae5e0902441b"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *password, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:aad84c6609cb431d48121ae5e0902441b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf69725720378340e1a51c87e7638a7f"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:acf69725720378340e1a51c87e7638a7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc556f0a4335083436f6e19c204fa553"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *fmt)</td></tr>
+<tr class="separator:abc556f0a4335083436f6e19c204fa553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f3297263703b4259c1c9607d710995d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *fmt,...)</td></tr>
+<tr class="separator:a1f3297263703b4259c1c9607d710995d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09bd4aee40b6e8d6ba8ffaa84dc95330"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *from)</td></tr>
+<tr class="separator:a09bd4aee40b6e8d6ba8ffaa84dc95330"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeccf94afb57bcad37b4241d45fcb3fea"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh, const gchar *from)</td></tr>
+<tr class="separator:aeccf94afb57bcad37b4241d45fcb3fea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acdb9f57d2f9b47913715a8d8a0ea0c02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:acdb9f57d2f9b47913715a8d8a0ea0c02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf04fd329ab77bbd4f6aa1cb1eaa349d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:abf04fd329ab77bbd4f6aa1cb1eaa349d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52b3f47eac79f2781ba81d61505f4f53"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, const gchar *host, gint port, gint local_port)</td></tr>
+<tr class="separator:a52b3f47eac79f2781ba81d61505f4f53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9f52b1a3a545acae8c93007e20ec909"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel)</td></tr>
+<tr class="separator:ae9f52b1a3a545acae8c93007e20ec909"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6d58beb4df141c6353e897c39748146"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh_tunnel_x11</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, const gchar *cmd)</td></tr>
+<tr class="separator:ac6d58beb4df141c6353e897c39748146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba49db2ced40e21e8adfad69dcfda2c4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gboolean bindlocalhost)</td></tr>
+<tr class="separator:aba49db2ced40e21e8adfad69dcfda2c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae47c8270267b02b9c0ff5b36074101c2"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel, gint port, gint local_port)</td></tr>
+<tr class="separator:ae47c8270267b02b9c0ff5b36074101c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb20d31243a4d30e469a34fe01684e38"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh_tunnel_terminated</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel)</td></tr>
+<tr class="separator:aeb20d31243a4d30e469a34fe01684e38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a223f8dd7a678bcec2ece40a2d8f7ea06"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a> (<a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *tunnel)</td></tr>
+<tr class="separator:a223f8dd7a678bcec2ece40a2d8f7ea06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d7138d9cbbe44aea15440436ce85d6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a3d7138d9cbbe44aea15440436ce85d6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1500d65d1f0751812f237c1cb4d15188"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:a1500d65d1f0751812f237c1cb4d15188"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e09b32044c240a7dce0ad8afcbf0ff2"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a> (<a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp)</td></tr>
+<tr class="separator:a1e09b32044c240a7dce0ad8afcbf0ff2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaaf171c31b73f06f1026239253d9f6b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a> (<a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *sftp)</td></tr>
+<tr class="separator:aaaf171c31b73f06f1026239253d9f6b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30412e0b4302f5ae0b9be2749390a48d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a30412e0b4302f5ae0b9be2749390a48d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0792ddb4adcaafefc1a4604cefdd8f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a> (<a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *ssh)</td></tr>
+<tr class="separator:ae0792ddb4adcaafefc1a4604cefdd8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c095a955af21b3ed9952ba2ea94691b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a> (<a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *shell, <a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a> exit_callback, gpointer data)</td></tr>
+<tr class="separator:a1c095a955af21b3ed9952ba2ea94691b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2d3f3b6550e4d1fe4caabe1df6af508"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a> (<a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *shell, gint columns, gint rows)</td></tr>
+<tr class="separator:ac2d3f3b6550e4d1fe4caabe1df6af508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a316f97b879e147ec52967344f6ad1d84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a> (<a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *shell)</td></tr>
+<tr class="separator:a316f97b879e147ec52967344f6ad1d84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a8853669690f71506f9fe04ff08e2eaca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8853669690f71506f9fe04ff08e2eaca">&#9670;&nbsp;</a></span>RemminaSFTP</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a> <a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af0f6d172a5ceae64f62ad54883666ccc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0f6d172a5ceae64f62ad54883666ccc">&#9670;&nbsp;</a></span>RemminaSSH</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_s_h.html">_RemminaSSH</a> <a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4c56936cde97775b102a3e7b48fe5a01"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c56936cde97775b102a3e7b48fe5a01">&#9670;&nbsp;</a></span>RemminaSSHExitFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* RemminaSSHExitFunc) (gpointer data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00243">243</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a1dd627c6195e879ba5ca12f5d590b10d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1dd627c6195e879ba5ca12f5d590b10d">&#9670;&nbsp;</a></span>RemminaSSHShell</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a> <a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3f84b047e47b96a0475ac9e9fa60b286"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f84b047e47b96a0475ac9e9fa60b286">&#9670;&nbsp;</a></span>RemminaSSHTunnel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a> <a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00130">130</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="afd166711167c39b8c1f6e8be3eb0c4e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afd166711167c39b8c1f6e8be3eb0c4e0">&#9670;&nbsp;</a></span>RemminaSSHTunnelBuffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct _RemminaSSHTunnelBuffer <a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00131">131</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a5b2c22bb155eee623a0a1f22293c4924"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b2c22bb155eee623a0a1f22293c4924">&#9670;&nbsp;</a></span>RemminaSSHTunnelCallback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* RemminaSSHTunnelCallback)(void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00133">133</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="ab48899087cc647f0f791ed0c459adc53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab48899087cc647f0f791ed0c459adc53">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14"></a>REMMINA_SSH_TUNNEL_OPEN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91"></a>REMMINA_SSH_TUNNEL_X11&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326"></a>REMMINA_SSH_TUNNEL_XPORT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459"></a>REMMINA_SSH_TUNNEL_REVERSE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00135">135</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a879c265f2e8050e4e72a061ab3747ee1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a879c265f2e8050e4e72a061ab3747ee1">&#9670;&nbsp;</a></span>remmina_ssh_auth_result</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"></a>REMMINA_SSH_AUTH_SUCCESS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f"></a>REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"></a>REMMINA_SSH_AUTH_USERCANCEL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735"></a>REMMINA_SSH_AUTH_FATAL_ERROR&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00105">105</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aaaf171c31b73f06f1026239253d9f6b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaaf171c31b73f06f1026239253d9f6b9">&#9670;&nbsp;</a></span>remmina_sftp_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_sftp_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3d7138d9cbbe44aea15440436ce85d6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d7138d9cbbe44aea15440436ce85d6e">&#9670;&nbsp;</a></span>remmina_sftp_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a>* remmina_sftp_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1500d65d1f0751812f237c1cb4d15188"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1500d65d1f0751812f237c1cb4d15188">&#9670;&nbsp;</a></span>remmina_sftp_new_from_ssh()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a>* remmina_sftp_new_from_ssh </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1e09b32044c240a7dce0ad8afcbf0ff2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e09b32044c240a7dce0ad8afcbf0ff2">&#9670;&nbsp;</a></span>remmina_sftp_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_sftp_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td>
+ <td class="paramname"><em>sftp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aad84c6609cb431d48121ae5e0902441b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad84c6609cb431d48121ae5e0902441b">&#9670;&nbsp;</a></span>remmina_ssh_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>password</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000010">Todo:</a></b></dt><dd>Here we should call gint method; method = ssh_userauth_list(ssh-&gt;session, NULL);</dd></dl>
+<p>SSH_AUTH_METHOD_PASSWORD SSH_AUTH_METHOD_PUBLICKEY SSH_AUTH_METHOD_HOSTBASED SSH_AUTH_METHOD_INTERACTIVE</p>
+<p>And than test both the method and the option selected by the user</p>
+<p>Some protocols may open new connections during the session. e.g: SPICE opens a new connection for some channels.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00336">336</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="acf69725720378340e1a51c87e7638a7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf69725720378340e1a51c87e7638a7f">&#9670;&nbsp;</a></span>remmina_ssh_auth_gui()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> remmina_ssh_auth_gui </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a09bd4aee40b6e8d6ba8ffaa84dc95330"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09bd4aee40b6e8d6ba8ffaa84dc95330">&#9670;&nbsp;</a></span>remmina_ssh_convert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_convert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab6d8bdad543b3caead2b2b0339484798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6d8bdad543b3caead2b2b0339484798">&#9670;&nbsp;</a></span>remmina_ssh_find_identity()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_find_identity </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00129">129</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="acdb9f57d2f9b47913715a8d8a0ea0c02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acdb9f57d2f9b47913715a8d8a0ea0c02">&#9670;&nbsp;</a></span>remmina_ssh_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a72a58e416c4eeb9d17eaf76360ebee42"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72a58e416c4eeb9d17eaf76360ebee42">&#9670;&nbsp;</a></span>remmina_ssh_identity_path()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_identity_path </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00120">120</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a6815a78f65795cbc6795ca1c59e73102"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6815a78f65795cbc6795ca1c59e73102">&#9670;&nbsp;</a></span>remmina_ssh_init_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_init_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>is_tunnel</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a624b8ac30ddcd00ebda0b51d504f5a33"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a624b8ac30ddcd00ebda0b51d504f5a33">&#9670;&nbsp;</a></span>remmina_ssh_init_session()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_init_session </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1f3297263703b4259c1c9607d710995d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f3297263703b4259c1c9607d710995d">&#9670;&nbsp;</a></span>remmina_ssh_set_application_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_set_application_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00155">155</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="abc556f0a4335083436f6e19c204fa553"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc556f0a4335083436f6e19c204fa553">&#9670;&nbsp;</a></span>remmina_ssh_set_error()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_set_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fmt</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8c_source.html#l00145">145</a> of file <a class="el" href="remmina__ssh_8c_source.html">remmina_ssh.c</a>.</p>
+
+</div>
+</div>
+<a id="a316f97b879e147ec52967344f6ad1d84"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a316f97b879e147ec52967344f6ad1d84">&#9670;&nbsp;</a></span>remmina_ssh_shell_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_shell_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td>
+ <td class="paramname"><em>shell</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a30412e0b4302f5ae0b9be2749390a48d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30412e0b4302f5ae0b9be2749390a48d">&#9670;&nbsp;</a></span>remmina_ssh_shell_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a>* remmina_ssh_shell_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae0792ddb4adcaafefc1a4604cefdd8f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae0792ddb4adcaafefc1a4604cefdd8f4">&#9670;&nbsp;</a></span>remmina_ssh_shell_new_from_ssh()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a>* remmina_ssh_shell_new_from_ssh </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a1c095a955af21b3ed9952ba2ea94691b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c095a955af21b3ed9952ba2ea94691b">&#9670;&nbsp;</a></span>remmina_ssh_shell_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_shell_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td>
+ <td class="paramname"><em>shell</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>&#160;</td>
+ <td class="paramname"><em>exit_callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac2d3f3b6550e4d1fe4caabe1df6af508"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2d3f3b6550e4d1fe4caabe1df6af508">&#9670;&nbsp;</a></span>remmina_ssh_shell_set_size()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_shell_set_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td>
+ <td class="paramname"><em>shell</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>columns</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>rows</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae9f52b1a3a545acae8c93007e20ec909"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9f52b1a3a545acae8c93007e20ec909">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_cancel_accept()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_tunnel_cancel_accept </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a223f8dd7a678bcec2ece40a2d8f7ea06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a223f8dd7a678bcec2ece40a2d8f7ea06">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_tunnel_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abf04fd329ab77bbd4f6aa1cb1eaa349d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf04fd329ab77bbd4f6aa1cb1eaa349d">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_new_from_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a>* remmina_ssh_tunnel_new_from_file </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a52b3f47eac79f2781ba81d61505f4f53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52b3f47eac79f2781ba81d61505f4f53">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_open()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_tunnel_open </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>local_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae47c8270267b02b9c0ff5b36074101c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae47c8270267b02b9c0ff5b36074101c2">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_reverse()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_tunnel_reverse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>local_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aeb20d31243a4d30e469a34fe01684e38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb20d31243a4d30e469a34fe01684e38">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_terminated()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_tunnel_terminated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac6d58beb4df141c6353e897c39748146"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6d58beb4df141c6353e897c39748146">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_x11()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_tunnel_x11 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>cmd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aba49db2ced40e21e8adfad69dcfda2c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba49db2ced40e21e8adfad69dcfda2c4">&#9670;&nbsp;</a></span>remmina_ssh_tunnel_xport()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_tunnel_xport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286">RemminaSSHTunnel</a> *&#160;</td>
+ <td class="paramname"><em>tunnel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>bindlocalhost</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aeccf94afb57bcad37b4241d45fcb3fea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeccf94afb57bcad37b4241d45fcb3fea">&#9670;&nbsp;</a></span>remmina_ssh_unconvert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_ssh_unconvert </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> *&#160;</td>
+ <td class="paramname"><em>ssh</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>from</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh_8h.html">remmina_ssh.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh_8h.js b/docs/remmina__ssh_8h.js
new file mode 100644
index 000000000..9425f2eb1
--- /dev/null
+++ b/docs/remmina__ssh_8h.js
@@ -0,0 +1,52 @@
+var remmina__ssh_8h =
+[
+ [ "_RemminaSSH", "struct___remmina_s_s_h.html", "struct___remmina_s_s_h" ],
+ [ "_RemminaSSHTunnel", "struct___remmina_s_s_h_tunnel.html", "struct___remmina_s_s_h_tunnel" ],
+ [ "_RemminaSFTP", "struct___remmina_s_f_t_p.html", "struct___remmina_s_f_t_p" ],
+ [ "_RemminaSSHShell", "struct___remmina_s_s_h_shell.html", "struct___remmina_s_s_h_shell" ],
+ [ "RemminaSFTP", "remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca", null ],
+ [ "RemminaSSH", "remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc", null ],
+ [ "RemminaSSHExitFunc", "remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01", null ],
+ [ "RemminaSSHShell", "remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d", null ],
+ [ "RemminaSSHTunnel", "remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286", null ],
+ [ "RemminaSSHTunnelBuffer", "remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0", null ],
+ [ "RemminaSSHTunnelCallback", "remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924", null ],
+ [ "REMMINA_SSH_TUNNEL_OPEN", "remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14", null ],
+ [ "REMMINA_SSH_TUNNEL_X11", "remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91", null ],
+ [ "REMMINA_SSH_TUNNEL_XPORT", "remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326", null ],
+ [ "REMMINA_SSH_TUNNEL_REVERSE", "remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459", null ],
+ [ "remmina_ssh_auth_result", "remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1", [
+ [ "REMMINA_SSH_AUTH_SUCCESS", "remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266", null ],
+ [ "REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT", "remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f", null ],
+ [ "REMMINA_SSH_AUTH_USERCANCEL", "remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea", null ],
+ [ "REMMINA_SSH_AUTH_FATAL_ERROR", "remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735", null ]
+ ] ],
+ [ "remmina_sftp_free", "remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9", null ],
+ [ "remmina_sftp_new_from_file", "remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e", null ],
+ [ "remmina_sftp_new_from_ssh", "remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188", null ],
+ [ "remmina_sftp_open", "remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2", null ],
+ [ "remmina_ssh_auth", "remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b", null ],
+ [ "remmina_ssh_auth_gui", "remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f", null ],
+ [ "remmina_ssh_convert", "remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330", null ],
+ [ "remmina_ssh_find_identity", "remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798", null ],
+ [ "remmina_ssh_free", "remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02", null ],
+ [ "remmina_ssh_identity_path", "remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42", null ],
+ [ "remmina_ssh_init_from_file", "remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102", null ],
+ [ "remmina_ssh_init_session", "remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33", null ],
+ [ "remmina_ssh_set_application_error", "remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d", null ],
+ [ "remmina_ssh_set_error", "remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553", null ],
+ [ "remmina_ssh_shell_free", "remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84", null ],
+ [ "remmina_ssh_shell_new_from_file", "remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d", null ],
+ [ "remmina_ssh_shell_new_from_ssh", "remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4", null ],
+ [ "remmina_ssh_shell_open", "remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b", null ],
+ [ "remmina_ssh_shell_set_size", "remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508", null ],
+ [ "remmina_ssh_tunnel_cancel_accept", "remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909", null ],
+ [ "remmina_ssh_tunnel_free", "remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06", null ],
+ [ "remmina_ssh_tunnel_new_from_file", "remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d", null ],
+ [ "remmina_ssh_tunnel_open", "remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53", null ],
+ [ "remmina_ssh_tunnel_reverse", "remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2", null ],
+ [ "remmina_ssh_tunnel_terminated", "remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38", null ],
+ [ "remmina_ssh_tunnel_x11", "remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146", null ],
+ [ "remmina_ssh_tunnel_xport", "remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4", null ],
+ [ "remmina_ssh_unconvert", "remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ssh_8h_source.html b/docs/remmina__ssh_8h_source.html
new file mode 100644
index 000000000..112326d50
--- /dev/null
+++ b/docs/remmina__ssh_8h_source.html
@@ -0,0 +1,211 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ssh.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ssh_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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBSSH</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define LIBSSH_STATIC 1</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;libssh/libssh.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;libssh/callbacks.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;libssh/sftp.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</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="rcw_8h.html">rcw.h</a>&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">* SSH Base *</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#define REMMINA_SSH(a) ((RemminaSSH *)a)</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"><a class="line" href="struct___remmina_s_s_h.html"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_s_h.html">_RemminaSSH</a> {</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3"> 60</a></span>&#160; ssh_session <a class="code" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378"> 61</a></span>&#160; ssh_callbacks <a class="code" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d"> 62</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b"> 64</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc"> 65</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb"> 66</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03"> 67</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89"> 68</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e"> 69</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</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"><a class="line" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5"> 71</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a>;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed"> 72</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0"> 73</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a"> 74</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af"> 75</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9"> 76</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870"> 77</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed"> 79</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52"> 81</a></span>&#160; pthread_mutex_t <a class="code" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">ssh_mutex</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529"> 83</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</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"><a class="line" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6"> 85</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602"> 86</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f"> 87</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</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"> 89</span>&#160;} <a class="code" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</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;gchar *<a class="code" href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a>(<span class="keyword">const</span> gchar *<span class="keywordtype">id</span>);</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">/* Auto-detect commonly used private key identities */</span></div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;gchar *<a class="code" href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a>(<span class="keywordtype">void</span>);</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">/* Initialize the ssh object */</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gboolean <a class="code" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a>);</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="comment">/* Initialize the SSH session */</span></div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh);</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;<span class="comment">/* Authenticate SSH session */</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;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1"> 105</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> {</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"> 106</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>,</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f"> 107</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a>,</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"> 108</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>,</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735"> 109</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a></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;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> <a class="code" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a> <a class="code" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</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="comment">/* Error handling */</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor">#define remmina_ssh_has_error(ssh) (((RemminaSSH *)ssh)-&gt;error != NULL)</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *fmt);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *fmt, ...);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment">/* Converts a string to/from UTF-8, or simply duplicate it if no conversion */</span></div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;gchar *<a class="code" href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *from);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;gchar *<a class="code" href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh, <span class="keyword">const</span> gchar *from);</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;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh);</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">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment">* SSH Tunnel *</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286"> 130</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0"> 131</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>_RemminaSSHTunnelBuffer <a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</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"><a class="line" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924"> 133</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>) (<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *, gpointer);</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;<span class="keyword">enum</span> {</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14"> 136</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a>,</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91"> 137</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a>,</div><div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326"> 138</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a>,</div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459"> 139</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a></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;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html"> 143</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a> {</div><div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23"> 144</a></span>&#160; <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">ssh</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df"> 146</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a>;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4"> 148</a></span>&#160; ssh_channel * <a class="code" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a>;</div><div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3"> 149</a></span>&#160; gint * <a class="code" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a>;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1"> 150</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> ** <a class="code" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a>;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513"> 151</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6"> 152</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a>;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d"> 154</a></span>&#160; ssh_channel <a class="code" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a>;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd"> 156</a></span>&#160; pthread_t <a class="code" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a>;</div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd"> 157</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a>;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047"> 159</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a>;</div><div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb"> 160</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a>;</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91"> 161</a></span>&#160; ssh_channel * <a class="code" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a>;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69"> 163</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da"> 164</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc"> 165</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a>;</div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260"> 166</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">localport</a>;</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"><a class="line" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28"> 168</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b"> 169</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1"> 170</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d"> 172</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a>;</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660"> 173</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a>;</div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c"> 174</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a>;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6"> 175</a></span>&#160; gpointer <a class="code" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a>;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778"> 177</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> <a class="code" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">destroy_func</a>;</div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795"> 178</a></span>&#160; gpointer <a class="code" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">destroy_func_callback_data</a>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;};</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;<span class="comment">/* Create a new SSH Tunnel session and connects to the SSH server */</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *<a class="code" href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/* Open the tunnel. A new thread will be started and listen on a local port.</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> * dest: The host:port of the remote destination</span></div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment"> * local_port: The listening local port for the tunnel</span></div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, <span class="keyword">const</span> gchar *host, gint <a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>, gint local_port);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment">/* Cancel accepting any incoming tunnel request.</span></div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> * Typically called after the connection has already been establish.</span></div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment">/* Accept the X11 tunnel. A new thread will be started and connect to local display.</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> * cmd: The remote X11 application to be executed</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh_tunnel_x11</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, <span class="keyword">const</span> gchar *cmd);</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;<span class="comment">/* start X Port Forwarding */</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gboolean bindlocalhost);</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="comment">/* start reverse tunnel. A new thread will be started and waiting for incoming connection.</span></div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"> * port: the port listening on the remote server side.</span></div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> * local_port: the port listening on the local side. When connection on the server side comes</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> * in, it will connect to the local port and create the tunnel. The caller should</span></div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> * start listening on the local port before calling it or in connect_func callback.</span></div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel, gint <a class="code" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a>, gint local_port);</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;<span class="comment">/* Tells if the tunnel is terminated after start */</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh_tunnel_terminated</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment">/* Free the tunnel */</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a>(<a class="code" href="struct___remmina_s_s_h_tunnel.html">RemminaSSHTunnel</a> *tunnel);</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;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment">* SSH sFTP *</span></div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p.html"> 222</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a> {</div><div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e"> 223</a></span>&#160; <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> <a class="code" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">ssh</a>;</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="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df"> 225</a></span>&#160; sftp_session <a class="code" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a>;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;} <a class="code" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">/* Create a new SFTP session object from RemminaFile */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *<a class="code" href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment">/* Create a new SFTP session object from existing SSH session */</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *<a class="code" href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh);</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;<span class="comment">/* open the SFTP session, assuming the session already authenticated */</span></div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a>(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp);</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;<span class="comment">/* Free the SFTP session */</span></div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a>(<a class="code" href="struct___remmina_s_f_t_p.html">RemminaSFTP</a> *sftp);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment">/*-----------------------------------------------------------------------------*</span></div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment">* SSH Shell *</span></div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment">*-----------------------------------------------------------------------------*/</span></div><div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01"> 243</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>) (gpointer data);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html"> 245</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a> {</div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098"> 246</a></span>&#160; <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> <a class="code" href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098">ssh</a>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f"> 248</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a>;</div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6"> 249</a></span>&#160; gint <a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>;</div><div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7"> 250</a></span>&#160; gchar * <a class="code" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a>;</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226"> 251</a></span>&#160; pthread_t <a class="code" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a>;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2"> 252</a></span>&#160; ssh_channel <a class="code" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a>;</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80"> 253</a></span>&#160; gboolean <a class="code" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a>;</div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a"> 254</a></span>&#160; <a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a> <a class="code" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a>;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d"> 255</a></span>&#160; gpointer <a class="code" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">user_data</a>;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;} <a class="code" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a>;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment">/* Create a new SSH Shell session object from RemminaFile */</span></div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *<a class="code" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile);</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;<span class="comment">/* Create a new SSH Shell session object from existing SSH session */</span></div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *<a class="code" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a>(<a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment">/* open the SSH Shell, assuming the session already authenticated */</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;gboolean <a class="code" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell, <a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a> exit_callback, gpointer data);</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;<span class="comment">/* Change the SSH Shell terminal size */</span></div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell, gint columns, gint rows);</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">/* Free the SFTP session */</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a>(<a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *shell);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;G_END_DECLS</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="preprocessor">#define RemminaSSH void</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="preprocessor">#define RemminaSSHTunnel void</span></div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="preprocessor">#define RemminaSFTP void</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="preprocessor">#define RemminaSSHShell void</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>)(void);</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="preprocessor">#endif </span><span class="comment">/* HAVE_LIBSSH */</span><span class="preprocessor"></span></div><div class="ttc" id="struct___remmina_s_s_h_tunnel_html"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00143">remmina_ssh.h:143</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f">REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00107">remmina_ssh.h:107</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_afd166711167c39b8c1f6e8be3eb0c4e0"><div class="ttname"><a href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a></div><div class="ttdeci">struct _RemminaSSHTunnelBuffer RemminaSSHTunnelBuffer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00131">remmina_ssh.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a4d61f0c0926686f8451dcf49d2d857da"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">_RemminaSSHTunnel::dest</a></div><div class="ttdeci">gchar * dest</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00164">remmina_ssh.h:164</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acf69725720378340e1a51c87e7638a7f"><div class="ttname"><a href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth_gui(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ac03e015f09baa46d4a9a118c606736af"><div class="ttname"><a href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">_RemminaSSH::proxycommand</a></div><div class="ttdeci">gchar * proxycommand</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00075">remmina_ssh.h:75</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_af670e0b0960c3e71e9f0b8b797ef9c28"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">_RemminaSSHTunnel::remotedisplay</a></div><div class="ttdeci">gint remotedisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00168">remmina_ssh.h:168</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a1e1f1bfaec497b1365ea70ebe795d778"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">_RemminaSSHTunnel::destroy_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback destroy_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00177">remmina_ssh.h:177</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a956cb7289e147875ae5f745b33514ebd"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">_RemminaSSHTunnel::running</a></div><div class="ttdeci">gboolean running</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00157">remmina_ssh.h:157</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ac6d58beb4df141c6353e897c39748146"><div class="ttname"><a href="remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146">remmina_ssh_tunnel_x11</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_x11(RemminaSSHTunnel *tunnel, const gchar *cmd)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aeccf94afb57bcad37b4241d45fcb3fea"><div class="ttname"><a href="remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea">remmina_ssh_unconvert</a></div><div class="ttdeci">gchar * remmina_ssh_unconvert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae47c8270267b02b9c0ff5b36074101c2"><div class="ttname"><a href="remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2">remmina_ssh_tunnel_reverse</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_reverse(RemminaSSHTunnel *tunnel, gint port, gint local_port)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae0792ddb4adcaafefc1a4604cefdd8f4"><div class="ttname"><a href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3aaebd7f03b7d8601818fabc46b787ed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH::error</a></div><div class="ttdeci">gchar * error</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00079">remmina_ssh.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa34e103281dafaa073d2a676b3368529"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">_RemminaSSH::passphrase</a></div><div class="ttdeci">gchar * passphrase</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00083">remmina_ssh.h:83</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14">REMMINA_SSH_TUNNEL_OPEN</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00136">remmina_ssh.h:136</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a547feb6e46dfb8e37a4eb338c17d7b52"><div class="ttname"><a href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">_RemminaSSH::ssh_mutex</a></div><div class="ttdeci">pthread_mutex_t ssh_mutex</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00081">remmina_ssh.h:81</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a0b3e071eb2c6011efdcea3f65f8e7fa0"><div class="ttname"><a href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">_RemminaSSH::ciphers</a></div><div class="ttdeci">gchar * ciphers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00073">remmina_ssh.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_adedb04066148973fed2de9f04b80286d"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">_RemminaSSHShell::user_data</a></div><div class="ttdeci">gpointer user_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00255">remmina_ssh.h:255</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a5b2c22bb155eee623a0a1f22293c4924"><div class="ttname"><a href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a></div><div class="ttdeci">gboolean(* RemminaSSHTunnelCallback)(RemminaSSHTunnel *, gpointer)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00133">remmina_ssh.h:133</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a33ae9b7cd8cb3dcd85223017dfd13795"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">_RemminaSSHTunnel::destroy_func_callback_data</a></div><div class="ttdeci">gpointer destroy_func_callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00178">remmina_ssh.h:178</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a0b35a5a573abb5e8b8a27a91434a00a5"><div class="ttname"><a href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">_RemminaSSH::charset</a></div><div class="ttdeci">gchar * charset</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00071">remmina_ssh.h:71</a></div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html"><div class="ttname"><a href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00222">remmina_ssh.h:222</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acdb9f57d2f9b47913715a8d8a0ea0c02"><div class="ttname"><a href="remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02">remmina_ssh_free</a></div><div class="ttdeci">void remmina_ssh_free(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html_adef92bcfa7b9a86debf0531d0239a5df"><div class="ttname"><a href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">_RemminaSFTP::sftp_sess</a></div><div class="ttdeci">sftp_session sftp_sess</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00225">remmina_ssh.h:225</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a878854125f24a8de520ec91066d0d226"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">_RemminaSSHShell::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00251">remmina_ssh.h:251</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a69e209a1ee77d6dfe5d87961e2a50a6a"><div class="ttname"><a href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">_RemminaSSH::hostkeytypes</a></div><div class="ttdeci">gchar * hostkeytypes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00074">remmina_ssh.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ae41b6af92643cfbcd3e13275f4281260"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">_RemminaSSHTunnel::localport</a></div><div class="ttdeci">gint localport</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00166">remmina_ssh.h:166</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html"><div class="ttname"><a href="struct___remmina_s_s_h.html">_RemminaSSH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00059">remmina_ssh.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a88ae4fb816713bd90d8e452b5e7ef0bb"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">_RemminaSSHTunnel::buffer_len</a></div><div class="ttdeci">gint buffer_len</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00160">remmina_ssh.h:160</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aad84c6609cb431d48121ae5e0902441b"><div class="ttname"><a href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00336">remmina_ssh.c:336</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00108">remmina_ssh.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a7c546634f855c217faa75ab4d4c7c2e2"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">_RemminaSSHShell::channel</a></div><div class="ttdeci">ssh_channel channel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00252">remmina_ssh.h:252</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6fa916d3736cb8e2a0e6541f608c209b"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">_RemminaSSHTunnel::bindlocalhost</a></div><div class="ttdeci">gboolean bindlocalhost</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00169">remmina_ssh.h:169</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a78edb0cd27564e88b6c92b425a383df6"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">_RemminaSSHShell::slave</a></div><div class="ttdeci">gint slave</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00249">remmina_ssh.h:249</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ad9887ee0673a2b0b03b091746ae02d23"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">_RemminaSSHTunnel::ssh</a></div><div class="ttdeci">RemminaSSH ssh</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00144">remmina_ssh.h:144</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a345d41b54490dd39e35280122d22feed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">_RemminaSSH::kex_algorithms</a></div><div class="ttdeci">const gchar * kex_algorithms</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00072">remmina_ssh.h:72</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a72a58e416c4eeb9d17eaf76360ebee42"><div class="ttname"><a href="remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42">remmina_ssh_identity_path</a></div><div class="ttdeci">gchar * remmina_ssh_identity_path(const gchar *id)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00120">remmina_ssh.c:120</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a6b2e8c1d9705b4c5b64a0e07a1159e80"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">_RemminaSSHShell::closed</a></div><div class="ttdeci">gboolean closed</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00253">remmina_ssh.h:253</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a7fd94fc8f610d86eb71a7a7fa1500d69"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">_RemminaSSHTunnel::server_sock</a></div><div class="ttdeci">gint server_sock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00163">remmina_ssh.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a19fed9a85494d40d3f2ae2ae1d1bc18c"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">_RemminaSSHTunnel::disconnect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback disconnect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00174">remmina_ssh.h:174</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a6815a78f65795cbc6795ca1c59e73102"><div class="ttname"><a href="remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102">remmina_ssh_init_from_file</a></div><div class="ttdeci">gboolean remmina_ssh_init_from_file(RemminaSSH *ssh, RemminaFile *remminafile, gboolean is_tunnel)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1">remmina_ssh_auth_result</a></div><div class="ttdeci">remmina_ssh_auth_result</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00105">remmina_ssh.h:105</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326">REMMINA_SSH_TUNNEL_XPORT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00138">remmina_ssh.h:138</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_abc556f0a4335083436f6e19c204fa553"><div class="ttname"><a href="remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553">remmina_ssh_set_error</a></div><div class="ttdeci">void remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00145">remmina_ssh.c:145</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa064626a7fd528e7d8c1fc34d1bd8dfc"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">_RemminaSSH::port</a></div><div class="ttdeci">gint port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00065">remmina_ssh.h:65</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a316f97b879e147ec52967344f6ad1d84"><div class="ttname"><a href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a></div><div class="ttdeci">void remmina_ssh_shell_free(RemminaSSHShell *shell)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3a8dc7679e22208bbdf076c520f25bbb"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">_RemminaSSH::user</a></div><div class="ttdeci">gchar * user</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00066">remmina_ssh.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a37244b9fafd3ab48c0f11ad0b8cfdf91"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">_RemminaSSHTunnel::channels_out</a></div><div class="ttdeci">ssh_channel * channels_out</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00161">remmina_ssh.h:161</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735">REMMINA_SSH_AUTH_FATAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00109">remmina_ssh.h:109</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a155d773294b0671aac4e710e97d90047"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">_RemminaSSHTunnel::buffer</a></div><div class="ttdeci">gchar * buffer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00159">remmina_ssh.h:159</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a76ed92539dfe749a24a3a3b99f3a644f"><div class="ttname"><a href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH::tunnel_entrance_port</a></div><div class="ttdeci">gint tunnel_entrance_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00087">remmina_ssh.h:87</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a30412e0b4302f5ae0b9be2749390a48d"><div class="ttname"><a href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_abf5a73c3444790177635a6eab6417d03"><div class="ttname"><a href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">_RemminaSSH::auth</a></div><div class="ttdeci">gint auth</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00067">remmina_ssh.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aba49db2ced40e21e8adfad69dcfda2c4"><div class="ttname"><a href="remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4">remmina_ssh_tunnel_xport</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_xport(RemminaSSHTunnel *tunnel, gboolean bindlocalhost)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ae396f0b535e2e92d640a0eb971aa082b"><div class="ttname"><a href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">_RemminaSSH::server</a></div><div class="ttdeci">gchar * server</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00064">remmina_ssh.h:64</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_abf04fd329ab77bbd4f6aa1cb1eaa349d"><div class="ttname"><a href="remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d">remmina_ssh_tunnel_new_from_file</a></div><div class="ttdeci">RemminaSSHTunnel * remmina_ssh_tunnel_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_s_f_t_p_html_a7dab48a7603f1dd6671a8dd1efe1958e"><div class="ttname"><a href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">_RemminaSFTP::ssh</a></div><div class="ttdeci">RemminaSSH ssh</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00223">remmina_ssh.h:223</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a8066492c4a0181f1b39b2fb2098fb56d"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">_RemminaSSHTunnel::init_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback init_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00172">remmina_ssh.h:172</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a62e6a209747daa65061273243e830ae9"><div class="ttname"><a href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">_RemminaSSH::stricthostkeycheck</a></div><div class="ttdeci">gint stricthostkeycheck</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00076">remmina_ssh.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6f2cd8a2535e180e7bd428e84030ffb6"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">_RemminaSSHTunnel::callback_data</a></div><div class="ttdeci">gpointer callback_data</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00175">remmina_ssh.h:175</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ab017331f59fceff63bb33ff00d088870"><div class="ttname"><a href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">_RemminaSSH::compression</a></div><div class="ttdeci">const gchar * compression</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00077">remmina_ssh.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ace4bb7170f349bd7f127f72c9c7b6ac6"><div class="ttname"><a href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">_RemminaSSH::is_tunnel</a></div><div class="ttdeci">gboolean is_tunnel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00085">remmina_ssh.h:85</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae9f52b1a3a545acae8c93007e20ec909"><div class="ttname"><a href="remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909">remmina_ssh_tunnel_cancel_accept</a></div><div class="ttdeci">void remmina_ssh_tunnel_cancel_accept(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1c095a955af21b3ed9952ba2ea94691b"><div class="ttname"><a href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a></div><div class="ttdeci">gboolean remmina_ssh_shell_open(RemminaSSHShell *shell, RemminaSSHExitFunc exit_callback, gpointer data)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ac86d0d359e5d97d8d60fac69c9af69df"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">_RemminaSSHTunnel::tunnel_type</a></div><div class="ttdeci">gint tunnel_type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00146">remmina_ssh.h:146</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_aa496acab4967f380e3520aeb9dae2bbd"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">_RemminaSSHTunnel::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00156">remmina_ssh.h:156</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ab11c1bcc8549ce8b154f65f9009c65d4"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">_RemminaSSHTunnel::channels</a></div><div class="ttdeci">ssh_channel * channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00148">remmina_ssh.h:148</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a223f8dd7a678bcec2ece40a2d8f7ea06"><div class="ttname"><a href="remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06">remmina_ssh_tunnel_free</a></div><div class="ttdeci">void remmina_ssh_tunnel_free(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aebc7525b6f72d22c1ce4df93c1576602"><div class="ttname"><a href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH::tunnel_entrance_host</a></div><div class="ttdeci">gchar * tunnel_entrance_host</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00086">remmina_ssh.h:86</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_af0f6d172a5ceae64f62ad54883666ccc"><div class="ttname"><a href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a></div><div class="ttdeci">struct _RemminaSSH RemminaSSH</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="struct___remmina_s_s_h_html_adedb385c39effff9c9dd5767250f8c89"><div class="ttname"><a href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">_RemminaSSH::password</a></div><div class="ttdeci">gchar * password</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00068">remmina_ssh.h:68</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1500d65d1f0751812f237c1cb4d15188"><div class="ttname"><a href="remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188">remmina_sftp_new_from_ssh</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_ssh(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_aa9ab1684349da8bfd6b84cc135c053b3"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">_RemminaSSHTunnel::sockets</a></div><div class="ttdeci">gint * sockets</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00149">remmina_ssh.h:149</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_af9f34b088c5af320708cf02dfc45d59e"><div class="ttname"><a href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">_RemminaSSH::privkeyfile</a></div><div class="ttdeci">gchar * privkeyfile</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00069">remmina_ssh.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a46cdb47db9c0ce8c1ac267cb3d10bbb3"><div class="ttname"><a href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">_RemminaSSH::session</a></div><div class="ttdeci">ssh_session session</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00060">remmina_ssh.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a27cb79f54113bb4aa46ea163717087b1"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">_RemminaSSHTunnel::socketbuffers</a></div><div class="ttdeci">RemminaSSHTunnelBuffer ** socketbuffers</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00150">remmina_ssh.h:150</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a88090ecb372853a19640c883f5bf606a"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">_RemminaSSHShell::exit_callback</a></div><div class="ttdeci">RemminaSSHExitFunc exit_callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00254">remmina_ssh.h:254</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_af347a2bbe1bf439695d181387042b098"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098">_RemminaSSHShell::ssh</a></div><div class="ttdeci">RemminaSSH ssh</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00246">remmina_ssh.h:246</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a069b886ad870cb318693fe1022179b3d"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">_RemminaSSHTunnel::x11_channel</a></div><div class="ttdeci">ssh_channel x11_channel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00154">remmina_ssh.h:154</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a09bd4aee40b6e8d6ba8ffaa84dc95330"><div class="ttname"><a href="remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330">remmina_ssh_convert</a></div><div class="ttdeci">gchar * remmina_ssh_convert(RemminaSSH *ssh, const gchar *from)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab6d8bdad543b3caead2b2b0339484798"><div class="ttname"><a href="remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798">remmina_ssh_find_identity</a></div><div class="ttdeci">gchar * remmina_ssh_find_identity(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00129">remmina_ssh.c:129</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a2d56befd61e28b83f90fe3eff0e6dfe7"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">_RemminaSSHShell::exec</a></div><div class="ttdeci">gchar * exec</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00250">remmina_ssh.h:250</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aa8e75d0a635b3390100218bee6b49378"><div class="ttname"><a href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">_RemminaSSH::callback</a></div><div class="ttdeci">ssh_callbacks callback</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00061">remmina_ssh.h:61</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1e09b32044c240a7dce0ad8afcbf0ff2"><div class="ttname"><a href="remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2">remmina_sftp_open</a></div><div class="ttdeci">gboolean remmina_sftp_open(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1dd627c6195e879ba5ca12f5d590b10d"><div class="ttname"><a href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a></div><div class="ttdeci">struct _RemminaSSHShell RemminaSSHShell</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aeb20d31243a4d30e469a34fe01684e38"><div class="ttname"><a href="remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38">remmina_ssh_tunnel_terminated</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_terminated(RemminaSSHTunnel *tunnel)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_abb17dc2972e189660c20eff7ec0fe513"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">_RemminaSSHTunnel::num_channels</a></div><div class="ttdeci">gint num_channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00151">remmina_ssh.h:151</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_aaaf171c31b73f06f1026239253d9f6b9"><div class="ttname"><a href="remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9">remmina_sftp_free</a></div><div class="ttdeci">void remmina_sftp_free(RemminaSFTP *sftp)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_ac148c436afa70f426d665b4ddd2d8f4d"><div class="ttname"><a href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">_RemminaSSH::authenticated</a></div><div class="ttdeci">gboolean authenticated</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00062">remmina_ssh.h:62</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a8853669690f71506f9fe04ff08e2eaca"><div class="ttname"><a href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a></div><div class="ttdeci">struct _RemminaSFTP RemminaSFTP</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a4c56936cde97775b102a3e7b48fe5a01"><div class="ttname"><a href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a></div><div class="ttdeci">void(* RemminaSSHExitFunc)(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00243">remmina_ssh.h:243</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_ad883561d61ee8d32d2201e642b0ab9cc"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">_RemminaSSHTunnel::port</a></div><div class="ttdeci">gint port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00165">remmina_ssh.h:165</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a52b3f47eac79f2781ba81d61505f4f53"><div class="ttname"><a href="remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53">remmina_ssh_tunnel_open</a></div><div class="ttdeci">gboolean remmina_ssh_tunnel_open(RemminaSSHTunnel *tunnel, const gchar *host, gint port, gint local_port)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a3d7138d9cbbe44aea15440436ce85d6e"><div class="ttname"><a href="remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e">remmina_sftp_new_from_file</a></div><div class="ttdeci">RemminaSFTP * remmina_sftp_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1f3297263703b4259c1c9607d710995d"><div class="ttname"><a href="remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d">remmina_ssh_set_application_error</a></div><div class="ttdeci">void remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00155">remmina_ssh.c:155</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_ab02f57e79ea0ba35f8a3788ef01a707f"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">_RemminaSSHShell::master</a></div><div class="ttdeci">gint master</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00248">remmina_ssh.h:248</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a071153b511500c3faa6804ebd76aeba1"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">_RemminaSSHTunnel::localdisplay</a></div><div class="ttdeci">gchar * localdisplay</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00170">remmina_ssh.h:170</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ac2d3f3b6550e4d1fe4caabe1df6af508"><div class="ttname"><a href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a></div><div class="ttdeci">void remmina_ssh_shell_set_size(RemminaSSHShell *shell, gint columns, gint rows)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_tunnel_html_a6a184c6ca8fa267012d86986dac396c6"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">_RemminaSSHTunnel::max_channels</a></div><div class="ttdeci">gint max_channels</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00152">remmina_ssh.h:152</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91">REMMINA_SSH_TUNNEL_X11</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00137">remmina_ssh.h:137</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="struct___remmina_s_s_h_tunnel_html_aa904bb1d9f643f6fde2b0eea4a8b1660"><div class="ttname"><a href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">_RemminaSSHTunnel::connect_func</a></div><div class="ttdeci">RemminaSSHTunnelCallback connect_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00173">remmina_ssh.h:173</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00245">remmina_ssh.h:245</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459"><div class="ttname"><a href="remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459">REMMINA_SSH_TUNNEL_REVERSE</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00139">remmina_ssh.h:139</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh_8h.html">remmina_ssh.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh__plugin_8c.html b/docs/remmina__ssh__plugin_8c.html
new file mode 100644
index 000000000..0a636900d
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8c.html
@@ -0,0 +1,1377 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ssh_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ssh__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The SSH plugin implementation. <a href="struct___remmina_plugin_ssh_data.html#details">More...</a><br /></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a896596354d8afa9e7f55caa369450de7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">RemminaPluginSshData</a></td></tr>
+<tr class="memdesc:a896596354d8afa9e7f55caa369450de7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The SSH plugin implementation. <a href="#a896596354d8afa9e7f55caa369450de7">More...</a><br /></td></tr>
+<tr class="separator:a896596354d8afa9e7f55caa369450de7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a236a29beb2ea51daaeb01fe86d41807c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">color_schemes</a> { <br />
+&#160;&#160;<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">LINUX</a>,
+<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">TANGO</a>,
+<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">GRUVBOX</a>,
+<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">SOLARIZED_DARK</a>,
+<br />
+&#160;&#160;<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">SOLARIZED_LIGHT</a>,
+<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">XTERM</a>,
+<a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a>
+<br />
+ }</td></tr>
+<tr class="separator:a236a29beb2ea51daaeb01fe86d41807c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac54051cfe6fedf5d60160f2540917718"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a> (GtkWidget *widget, GtkAllocation *alloc, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac54051cfe6fedf5d60160f2540917718"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fa1cd6e50c66d79e727d7264fc454ee"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_plugin_ssh_main_thread</a> (gpointer data)</td></tr>
+<tr class="memdesc:a4fa1cd6e50c66d79e727d7264fc454ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remmina protocol plugin main function. <a href="#a4fa1cd6e50c66d79e727d7264fc454ee">More...</a><br /></td></tr>
+<tr class="separator:a4fa1cd6e50c66d79e727d7264fc454ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8e3776e67abca9ab913bc33172e4ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a> (VteTerminal *terminal, const char *codeset, int master, int slave)</td></tr>
+<tr class="separator:adc8e3776e67abca9ab913bc33172e4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bf273dcf4cc7f985727150f15fa9046"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_plugin_ssh_on_focus_in</a> (GtkWidget *widget, GdkEventFocus *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7bf273dcf4cc7f985727150f15fa9046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa41537b3d8e7ae12f65783f6dfcc7c6f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_plugin_ssh_set_vte_pref</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa41537b3d8e7ae12f65783f6dfcc7c6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3290489a1ff9e51fbc013424fbfc8505"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:a3290489a1ff9e51fbc013424fbfc8505"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb6514abadc6fcf387ef91e3c36bb146"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:acb6514abadc6fcf387ef91e3c36bb146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf8c8f3dd7fa5412d8c580668cc36146"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:adf8c8f3dd7fa5412d8c580668cc36146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fcffcd3b4d288aa52087e48c78d6570"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session</a> (GtkMenuItem *menuitem, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4fcffcd3b4d288aa52087e48c78d6570"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab670417882185f0d1eb558ca80b91229"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td></tr>
+<tr class="memdesc:ab670417882185f0d1eb558ca80b91229"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send a keystroke to the plugin window. <a href="#ab670417882185f0d1eb558ca80b91229">More...</a><br /></td></tr>
+<tr class="separator:ab670417882185f0d1eb558ca80b91229"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e8e08f2a9b05530e85962f9b8c556e9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a> (GtkWidget *widget, GdkEvent *event, GtkWidget *menu)</td></tr>
+<tr class="separator:a3e8e08f2a9b05530e85962f9b8c556e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4639e47898939f893505f0a30993aead"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_plugin_ssh_popup_ui</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="memdesc:a4639e47898939f893505f0a30993aead"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remmina SSH plugin terminal popup menu. <a href="#a4639e47898939f893505f0a30993aead">More...</a><br /></td></tr>
+<tr class="separator:a4639e47898939f893505f0a30993aead"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62f9ea89d10bb2e375d70c9578ca95fd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="memdesc:a62f9ea89d10bb2e375d70c9578ca95fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remmina SSH plugin initialization. <a href="#a62f9ea89d10bb2e375d70c9578ca95fd">More...</a><br /></td></tr>
+<tr class="separator:a62f9ea89d10bb2e375d70c9578ca95fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01bb81cfc23add39c9260e888ef1d88f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="memdesc:a01bb81cfc23add39c9260e888ef1d88f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the main window properties and the pthread. <a href="#a01bb81cfc23add39c9260e888ef1d88f">More...</a><br /></td></tr>
+<tr class="separator:a01bb81cfc23add39c9260e888ef1d88f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6302047dc754570d415b0ba68fd9c203"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6302047dc754570d415b0ba68fd9c203"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31cf1c896508adf4f8f43f70d8e8f599"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="memdesc:a31cf1c896508adf4f8f43f70d8e8f599"><td class="mdescLeft">&#160;</td><td class="mdescRight">Not used by the plugin. <a href="#a31cf1c896508adf4f8f43f70d8e8f599">More...</a><br /></td></tr>
+<tr class="separator:a31cf1c896508adf4f8f43f70d8e8f599"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5670df701b44384b5acd61aeac016dc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="memdesc:ac5670df701b44384b5acd61aeac016dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions to call when an entry in the Tool menu in the Remmina Connection Window is clicked. <a href="#ac5670df701b44384b5acd61aeac016dc">More...</a><br /></td></tr>
+<tr class="separator:ac5670df701b44384b5acd61aeac016dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d76cf254046651d0d5bb36aa83637e4"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a> (gconstpointer a, gconstpointer b)</td></tr>
+<tr class="separator:a2d76cf254046651d0d5bb36aa83637e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0633a83ce0cbf7ed58d2b37ec6fd26b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin_load_terminal_palettes</a> (gpointer *ssh_terminal_palette_new)</td></tr>
+<tr class="separator:a0633a83ce0cbf7ed58d2b37ec6fd26b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f594d157e09639e09b1f32a420da96c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a> (void)</td></tr>
+<tr class="separator:a6f594d157e09639e09b1f32a420da96c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a63257961dac038e3a3989eae9083c494"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">linux_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="memdesc:a63257961dac038e3a3989eae9083c494"><td class="mdescLeft">&#160;</td><td class="mdescRight">16 color palettes in GdkRGBA format (red, green, blue, alpha). <a href="#a63257961dac038e3a3989eae9083c494">More...</a><br /></td></tr>
+<tr class="separator:a63257961dac038e3a3989eae9083c494"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d4a960ae03e832fb20239f4880a6244"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">tango_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="separator:a2d4a960ae03e832fb20239f4880a6244"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa1c17a29abc1a6b89929a73b89e7173"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">gruvbox_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="separator:afa1c17a29abc1a6b89929a73b89e7173"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afebc284e31a21ecc0316baf2115aa99f"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">solarized_dark_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="separator:afebc284e31a21ecc0316baf2115aa99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52d414d5ac5f4956b0cabf8b5a5799f7"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">solarized_light_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="separator:a52d414d5ac5f4956b0cabf8b5a5799f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cc4363a5dd981de398aca34155b38c0"><td class="memItemLeft" align="right" valign="top">const GdkRGBA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">xterm_palette</a> [PALETTE_SIZE]</td></tr>
+<tr class="separator:a9cc4363a5dd981de398aca34155b38c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a666c43eab754dff3be3c80683e9343f1"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:a2541537cda36260e4ee0ff156c671659"><td class="memItemLeft" >&#160;&#160;&#160;const GdkRGBA *&#160;&#160;&#160;<a class="el" href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5">palette</a></td></tr>
+<tr class="separator:a2541537cda36260e4ee0ff156c671659"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a666c43eab754dff3be3c80683e9343f1"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a></td></tr>
+<tr class="separator:a666c43eab754dff3be3c80683e9343f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab69dae8eb9c3744fcf53a0f482b18f19"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a> []</td></tr>
+<tr class="memdesc:ab69dae8eb9c3744fcf53a0f482b18f19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of key/value pairs for SSH auth type. <a href="#ab69dae8eb9c3744fcf53a0f482b18f19">More...</a><br /></td></tr>
+<tr class="separator:ab69dae8eb9c3744fcf53a0f482b18f19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ebdfc8dcc1306424cbf1ed9dfd30c89"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a> []</td></tr>
+<tr class="memdesc:a8ebdfc8dcc1306424cbf1ed9dfd30c89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Charset list. <a href="#a8ebdfc8dcc1306424cbf1ed9dfd30c89">More...</a><br /></td></tr>
+<tr class="separator:a8ebdfc8dcc1306424cbf1ed9dfd30c89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add87ff58da9befc10131b00c00dbc8eb"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a> []</td></tr>
+<tr class="separator:add87ff58da9befc10131b00c00dbc8eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaabfe48db4bcae99b7c2e30d37ff73a0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a> []</td></tr>
+<tr class="memdesc:aaabfe48db4bcae99b7c2e30d37ff73a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array for available features. <a href="#aaabfe48db4bcae99b7c2e30d37ff73a0">More...</a><br /></td></tr>
+<tr class="separator:aaabfe48db4bcae99b7c2e30d37ff73a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30ddbf13515b3bdad4e220d75b7912bf"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a> []</td></tr>
+<tr class="memdesc:a30ddbf13515b3bdad4e220d75b7912bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of RemminaProtocolSetting for basic settings. <a href="#a30ddbf13515b3bdad4e220d75b7912bf">More...</a><br /></td></tr>
+<tr class="separator:a30ddbf13515b3bdad4e220d75b7912bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41ec447057568be598d38975bfe016d2"><td class="memItemLeft" align="right" valign="top">static gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a> []</td></tr>
+<tr class="separator:a41ec447057568be598d38975bfe016d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51b5159cc5a6833759bc87688221b807"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a> []</td></tr>
+<tr class="memdesc:a51b5159cc5a6833759bc87688221b807"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of RemminaProtocolSetting for advanced settings. <a href="#a51b5159cc5a6833759bc87688221b807">More...</a><br /></td></tr>
+<tr class="separator:a51b5159cc5a6833759bc87688221b807"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cab806d9a2a069aa4446c30cbf41599"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599">remmina_plugin_ssh</a></td></tr>
+<tr class="memdesc:a3cab806d9a2a069aa4446c30cbf41599"><td class="mdescLeft">&#160;</td><td class="mdescRight">SSH Protocol plugin definition and features. <a href="#a3cab806d9a2a069aa4446c30cbf41599">More...</a><br /></td></tr>
+<tr class="separator:a3cab806d9a2a069aa4446c30cbf41599"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a896596354d8afa9e7f55caa369450de7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a896596354d8afa9e7f55caa369450de7">&#9670;&nbsp;</a></span>RemminaPluginSshData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a> <a class="el" href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">RemminaPluginSshData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The SSH plugin implementation. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a236a29beb2ea51daaeb01fe86d41807c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a236a29beb2ea51daaeb01fe86d41807c">&#9670;&nbsp;</a></span>color_schemes</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">color_schemes</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4"></a>LINUX&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508"></a>TANGO&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c"></a>GRUVBOX&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab"></a>SOLARIZED_DARK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13"></a>SOLARIZED_LIGHT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56"></a>XTERM&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5"></a>CUSTOM&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2d76cf254046651d0d5bb36aa83637e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d76cf254046651d0d5bb36aa83637e4">&#9670;&nbsp;</a></span>compare()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint compare </td>
+ <td>(</td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gconstpointer&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01103">1103</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac5670df701b44384b5acd61aeac016dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5670df701b44384b5acd61aeac016dc">&#9670;&nbsp;</a></span>remmina_plugin_ssh_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_ssh_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Functions to call when an entry in the Tool menu in the Remmina Connection Window is clicked. </p>
+<p>In the Remmina Connection Window toolbar, there is a tool menu, this function is used to call the right function for each entry with its parameters.</p>
+<p>At the moment it’s possible to:</p><ul>
+<li>Open a new SSH session.</li>
+<li>Open an SFTP session.</li>
+<li>Select, copy and paste text.</li>
+<li>Send recorded Key Strokes.</li>
+</ul>
+<dl class="section return"><dt>Returns</dt><dd>the return value of the calling function. </dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>start the direct tunnel here </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00885">885</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6302047dc754570d415b0ba68fd9c203"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6302047dc754570d415b0ba68fd9c203">&#9670;&nbsp;</a></span>remmina_plugin_ssh_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_ssh_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00832">832</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a62f9ea89d10bb2e375d70c9578ca95fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62f9ea89d10bb2e375d70c9578ca95fd">&#9670;&nbsp;</a></span>remmina_plugin_ssh_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_ssh_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Remmina SSH plugin initialization. </p>
+<p>This is the main function used to create the widget that will be embedded in the Remmina Connection Window. Initialize the terminal colours based on the user, everything is needed for the terminal window, the terminal session logging and the terminal popup menu.</p>
+<dl class="section see"><dt>See also</dt><dd><a class="el" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead" title="Remmina SSH plugin terminal popup menu. ">remmina_plugin_ssh_popup_ui</a> </dd>
+<dd>
+<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> </dd>
+<dd>
+<a href="https://gitlab.com/Remmina/Remmina/wikis/Remmina-SSH-Terminal-colour-schemes">https://gitlab.com/Remmina/Remmina/wikis/Remmina-SSH-Terminal-colour-schemes</a> </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00551">551</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fa1cd6e50c66d79e727d7264fc454ee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fa1cd6e50c66d79e727d7264fc454ee">&#9670;&nbsp;</a></span>remmina_plugin_ssh_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_plugin_ssh_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Remmina protocol plugin main function. </p>
+<p>First it starts the SSH tunnel if needed and then the SSH connection. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00221">221</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7bf273dcf4cc7f985727150f15fa9046"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7bf273dcf4cc7f985727150f15fa9046">&#9670;&nbsp;</a></span>remmina_plugin_ssh_on_focus_in()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_ssh_on_focus_in </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventFocus *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00350">350</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac54051cfe6fedf5d60160f2540917718"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac54051cfe6fedf5d60160f2540917718">&#9670;&nbsp;</a></span>remmina_plugin_ssh_on_size_allocate()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_ssh_on_size_allocate </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkAllocation *&#160;</td>
+ <td class="paramname"><em>alloc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00360">360</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a01bb81cfc23add39c9260e888ef1d88f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01bb81cfc23add39c9260e888ef1d88f">&#9670;&nbsp;</a></span>remmina_plugin_ssh_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_ssh_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Initialize the main window properties and the pthread. </p>
+<p>The call of this function is a requirement of <a class="el" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real()</a>. </p><dl class="section return"><dt>Returns</dt><dd>TRUE </dd>
+<dd>
+FALSE and <a class="el" href="remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd">remmina_protocol_widget_open_connection_real()</a> will fails. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00811">811</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4639e47898939f893505f0a30993aead"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4639e47898939f893505f0a30993aead">&#9670;&nbsp;</a></span>remmina_plugin_ssh_popup_ui()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_popup_ui </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Remmina SSH plugin terminal popup menu. </p>
+<p>This is the context menu that popup when you right click in a terminal window. You can than select, copy, paste text and save the whole buffer to a file. Each menu entry call back the following functions:</p><ul>
+<li><a class="el" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all()</a></li>
+<li><a class="el" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard()</a></li>
+<li><a class="el" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard()</a></li>
+<li><a class="el" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session()</a></li>
+</ul>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00506">506</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a31cf1c896508adf4f8f43f70d8e8f599"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31cf1c896508adf4f8f43f70d8e8f599">&#9670;&nbsp;</a></span>remmina_plugin_ssh_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_ssh_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Not used by the plugin. </p>
+<dl class="section return"><dt>Returns</dt><dd>Always TRUE </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00862">862</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa41537b3d8e7ae12f65783f6dfcc7c6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa41537b3d8e7ae12f65783f6dfcc7c6f">&#9670;&nbsp;</a></span>remmina_plugin_ssh_set_vte_pref()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_ssh_set_vte_pref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00378">378</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acb6514abadc6fcf387ef91e3c36bb146"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb6514abadc6fcf387ef91e3c36bb146">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_copy_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_copy_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00411">411</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adf8c8f3dd7fa5412d8c580668cc36146"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf8c8f3dd7fa5412d8c580668cc36146">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_paste_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_paste_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00422">422</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4fcffcd3b4d288aa52087e48c78d6570"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fcffcd3b4d288aa52087e48c78d6570">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_save_session()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_save_session </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00429">429</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3290489a1ff9e51fbc013424fbfc8505"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3290489a1ff9e51fbc013424fbfc8505">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_select_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_select_all </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>we should add the vte_terminal_unselect_all as well </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00403">403</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adc8e3776e67abca9ab913bc33172e4ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8e3776e67abca9ab913bc33172e4ce">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_terminal_set_encoding_and_pty()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_terminal_set_encoding_and_pty </td>
+ <td>(</td>
+ <td class="paramtype">VteTerminal *&#160;</td>
+ <td class="paramname"><em>terminal</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>codeset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>master</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>slave</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00312">312</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab670417882185f0d1eb558ca80b91229"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab670417882185f0d1eb558ca80b91229">&#9670;&nbsp;</a></span>remmina_ssh_keystroke()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_ssh_keystroke </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint&#160;</td>
+ <td class="paramname"><em>keystrokes</em>[], </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gint&#160;</td>
+ <td class="paramname"><em>keylen</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Send a keystroke to the plugin window. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00468">468</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0633a83ce0cbf7ed58d2b37ec6fd26b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0633a83ce0cbf7ed58d2b37ec6fd26b4">&#9670;&nbsp;</a></span>remmina_ssh_plugin_load_terminal_palettes()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_plugin_load_terminal_palettes </td>
+ <td>(</td>
+ <td class="paramtype">gpointer *&#160;</td>
+ <td class="paramname"><em>ssh_terminal_palette_new</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01109">1109</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3e8e08f2a9b05530e85962f9b8c556e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e8e08f2a9b05530e85962f9b8c556e9">&#9670;&nbsp;</a></span>remmina_ssh_plugin_popup_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_plugin_popup_menu </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00478">478</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6f594d157e09639e09b1f32a420da96c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f594d157e09639e09b1f32a420da96c">&#9670;&nbsp;</a></span>remmina_ssh_plugin_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_ssh_plugin_register </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01202">1202</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="afa1c17a29abc1a6b89929a73b89e7173"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa1c17a29abc1a6b89929a73b89e7173">&#9670;&nbsp;</a></span>gruvbox_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA gruvbox_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0.156863, 0.156863, 0.156863, 1.000000 },</div><div class="line"> { 0.800000, 0.141176, 0.113725, 1.000000 },</div><div class="line"> { 0.596078, 0.592157, 0.101961, 1.000000 },</div><div class="line"> { 0.843137, 0.600000, 0.129412, 1.000000 },</div><div class="line"> { 0.270588, 0.521569, 0.533333, 1.000000 },</div><div class="line"> { 0.694118, 0.384314, 0.525490, 1.000000 },</div><div class="line"> { 0.407843, 0.615686, 0.415686, 1.000000 },</div><div class="line"> { 0.658824, 0.600000, 0.517647, 1.000000 },</div><div class="line"> { 0.572549, 0.513725, 0.454902, 1.000000 },</div><div class="line"> { 0.984314, 0.286275, 0.203922, 1.000000 },</div><div class="line"> { 0.721569, 0.733333, 0.149020, 1.000000 },</div><div class="line"> { 0.980392, 0.741176, 0.184314, 1.000000 },</div><div class="line"> { 0.513725, 0.647059, 0.596078, 1.000000 },</div><div class="line"> { 0.827451, 0.525490, 0.607843, 1.000000 },</div><div class="line"> { 0.556863, 0.752941, 0.486275, 1.000000 },</div><div class="line"> { 0.921569, 0.858824, 0.698039, 1.000000 },</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a63257961dac038e3a3989eae9083c494"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63257961dac038e3a3989eae9083c494">&#9670;&nbsp;</a></span>linux_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA linux_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0, 0, 0, 1 },</div><div class="line"> { 0.666667, 0, 0, 1 },</div><div class="line"> { 0, 0.666667, 0, 1 },</div><div class="line"> { 0.666667, 0.333333, 0, 1 },</div><div class="line"> { 0, 0, 0.666667, 1 },</div><div class="line"> { 0.666667, 0, 0.666667, 1 },</div><div class="line"> { 0, 0.666667, 0.666667, 1 },</div><div class="line"> { 0.666667, 0.666667, 0.666667, 1 },</div><div class="line"> { 0.333333, 0.333333, 0.333333, 1 },</div><div class="line"> { 1, 0.333333, 0.333333, 1 },</div><div class="line"> { 0.333333, 1, 0.333333, 1 },</div><div class="line"> { 1, 1, 0.333333, 1 },</div><div class="line"> { 0.333333, 0.333333, 1, 1 },</div><div class="line"> { 1, 0.333333, 1, 1 },</div><div class="line"> { 0.333333, 1, 1, 1 },</div><div class="line"> { 1, 1, 1, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p>16 color palettes in GdkRGBA format (red, green, blue, alpha). </p>
+<p>Text displayed in the first 8 colors (0-7) is meek (uses thin strokes). Text displayed in the second 8 colors (8-15) is bold (uses thick strokes). </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00073">73</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a41ec447057568be598d38975bfe016d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41ec447057568be598d38975bfe016d2">&#9670;&nbsp;</a></span>log_tips</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar log_tips[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;The filename can use the following placeholders:\n\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %h is substituted with the server name\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %t is substituted with the SSH server name\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %u is substituted with the username\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %U is substituted with the SSH username\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %p is substituted with Remmina profile name\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %g is substituted with Remmina profile group name\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot; • %d is substituted with local datetime in iso8601 format\n&quot;</span>)</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01029">1029</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa960839fb967823a40ed5def846496a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa960839fb967823a40ed5def846496a5">&#9670;&nbsp;</a></span>palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA* palette</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00189">189</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00208">208</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3cab806d9a2a069aa4446c30cbf41599"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cab806d9a2a069aa4446c30cbf41599">&#9670;&nbsp;</a></span>remmina_plugin_ssh</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_ssh</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;SSH&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH - Secure Shell&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <span class="stringliteral">&quot;remmina-ssh-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-ssh-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a>, </div><div class="line"> <a class="code" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a>, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="remmina__ssh__plugin_8c_html_a6302047dc754570d415b0ba68fd9c203"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00832">remmina_ssh_plugin.c:832</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_aaabfe48db4bcae99b7c2e30d37ff73a0"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a></div><div class="ttdeci">static RemminaProtocolFeature remmina_plugin_ssh_features[]</div><div class="ttdoc">Array for available features. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00998">remmina_ssh_plugin.c:998</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a01bb81cfc23add39c9260e888ef1d88f"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdoc">Initialize the main window properties and the pthread. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00811">remmina_ssh_plugin.c:811</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a30ddbf13515b3bdad4e220d75b7912bf"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_ssh_basic_settings[]</div><div class="ttdoc">Array of RemminaProtocolSetting for basic settings. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01017">remmina_ssh_plugin.c:1017</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a62f9ea89d10bb2e375d70c9578ca95fd"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a></div><div class="ttdeci">static void remmina_plugin_ssh_init(RemminaProtocolWidget *gp)</div><div class="ttdoc">Remmina SSH plugin initialization. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00551">remmina_ssh_plugin.c:551</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ac5670df701b44384b5acd61aeac016dc"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a></div><div class="ttdeci">static void remmina_plugin_ssh_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdoc">Functions to call when an entry in the Tool menu in the Remmina Connection Window is clicked...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00885">remmina_ssh_plugin.c:885</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a31cf1c896508adf4f8f43f70d8e8f599"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdoc">Not used by the plugin. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00862">remmina_ssh_plugin.c:862</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ab670417882185f0d1eb558ca80b91229"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a></div><div class="ttdeci">static void remmina_ssh_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdoc">Send a keystroke to the plugin window. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00468">remmina_ssh_plugin.c:468</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a51b5159cc5a6833759bc87688221b807"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_ssh_advanced_settings[]</div><div class="ttdoc">Array of RemminaProtocolSetting for advanced settings. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01050">remmina_ssh_plugin.c:1050</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p>SSH Protocol plugin definition and features. </p>
+<p>Array used to define the SSH Protocol plugin Type, name, description, version Plugin icon, features, initialization and closing functions. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01074">1074</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aaabfe48db4bcae99b7c2e30d37ff73a0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaabfe48db4bcae99b7c2e30d37ff73a0">&#9670;&nbsp;</a></span>remmina_plugin_ssh_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_ssh_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_COPY, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Copy&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Copy&quot;</span>), NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_PASTE, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Paste&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Paste&quot;</span>), NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_SELECT_ALL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Select all&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Select all&quot;</span>), NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p>Array for available features. </p>
+<p>The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00998">998</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a51b5159cc5a6833759bc87688221b807"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a51b5159cc5a6833759bc87688221b807">&#9670;&nbsp;</a></span>remmina_ssh_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_ssh_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_color_scheme&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Terminal color scheme&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_charset&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Character set&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_proxycommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH Proxy Command&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_kex_algorithms&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;KEX (Key Exchange) algorithms&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_ciphers&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Symmetric cipher client to server&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_hostkeytypes&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Preferred server host key types&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sshlogfolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Folder for SSH session log&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;sshlogname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Filename for SSH session log&quot;</span>), FALSE, NULL, <a class="code" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a> },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;sshlogenabled&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Log SSH session when exiting Remmina&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;audiblebell&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Audible terminal bell&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ssh_compression&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH compression&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Don&#39;t remember passwords&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ssh_stricthostkeycheck&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Strict host key checking&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a8ebdfc8dcc1306424cbf1ed9dfd30c89"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a></div><div class="ttdeci">static gpointer ssh_charset_list[]</div><div class="ttdoc">Charset list. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00930">remmina_ssh_plugin.c:930</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a41ec447057568be598d38975bfe016d2"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a></div><div class="ttdeci">static gchar log_tips[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01029">remmina_ssh_plugin.c:1029</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_add87ff58da9befc10131b00c00dbc8eb"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a></div><div class="ttdeci">static gpointer ssh_terminal_palette[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00982">remmina_ssh_plugin.c:982</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p>Array of RemminaProtocolSetting for advanced settings. </p>
+<ul>
+<li>Each item is composed by:<ol type="1">
+<li>RemminaProtocolSettingType for setting type.</li>
+<li>Setting name.</li>
+<li>Setting description.</li>
+<li>Compact disposition.</li>
+<li>Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO.</li>
+<li>Setting Tooltip. </li>
+</ol>
+</li>
+</ul>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01050">1050</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a30ddbf13515b3bdad4e220d75b7912bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30ddbf13515b3bdad4e220d75b7912bf">&#9670;&nbsp;</a></span>remmina_ssh_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_ssh_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_ssh._tcp&quot;</span>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_auth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Authentication type&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;ssh_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;ssh_passphrase&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password to unlock private key&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ab69dae8eb9c3744fcf53a0f482b18f19"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a></div><div class="ttdeci">static gpointer ssh_auth[]</div><div class="ttdoc">Array of key/value pairs for SSH auth type. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00919">remmina_ssh_plugin.c:919</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p>Array of RemminaProtocolSetting for basic settings. </p>
+<ul>
+<li>Each item is composed by:<ol type="1">
+<li>RemminaProtocolSettingType for setting type.</li>
+<li>Setting name.</li>
+<li>Setting description.</li>
+<li>Compact disposition.</li>
+<li>Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO.</li>
+<li>Setting Tooltip.</li>
+</ol>
+</li>
+</ul>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01017">1017</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a666c43eab754dff3be3c80683e9343f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a666c43eab754dff3be3c80683e9343f1">&#9670;&nbsp;</a></span>remminavte</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remminavte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="afebc284e31a21ecc0316baf2115aa99f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afebc284e31a21ecc0316baf2115aa99f">&#9670;&nbsp;</a></span>solarized_dark_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA solarized_dark_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0.027451, 0.211765, 0.258824, 1 },</div><div class="line"> { 0.862745, 0.196078, 0.184314, 1 },</div><div class="line"> { 0.521569, 0.600000, 0.000000, 1 },</div><div class="line"> { 0.709804, 0.537255, 0.000000, 1 },</div><div class="line"> { 0.149020, 0.545098, 0.823529, 1 },</div><div class="line"> { 0.827451, 0.211765, 0.509804, 1 },</div><div class="line"> { 0.164706, 0.631373, 0.596078, 1 },</div><div class="line"> { 0.933333, 0.909804, 0.835294, 1 },</div><div class="line"> { 0.000000, 0.168627, 0.211765, 1 },</div><div class="line"> { 0.796078, 0.294118, 0.086275, 1 },</div><div class="line"> { 0.345098, 0.431373, 0.458824, 1 },</div><div class="line"> { 0.396078, 0.482353, 0.513725, 1 },</div><div class="line"> { 0.513725, 0.580392, 0.588235, 1 },</div><div class="line"> { 0.423529, 0.443137, 0.768627, 1 },</div><div class="line"> { 0.576471, 0.631373, 0.631373, 1 },</div><div class="line"> { 0.992157, 0.964706, 0.890196, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00130">130</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a52d414d5ac5f4956b0cabf8b5a5799f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52d414d5ac5f4956b0cabf8b5a5799f7">&#9670;&nbsp;</a></span>solarized_light_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA solarized_light_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0.933333, 0.909804, 0.835294, 1 },</div><div class="line"> { 0.862745, 0.196078, 0.184314, 1 },</div><div class="line"> { 0.521569, 0.600000, 0.000000, 1 },</div><div class="line"> { 0.709804, 0.537255, 0.000000, 1 },</div><div class="line"> { 0.149020, 0.545098, 0.823529, 1 },</div><div class="line"> { 0.827451, 0.211765, 0.509804, 1 },</div><div class="line"> { 0.164706, 0.631373, 0.596078, 1 },</div><div class="line"> { 0.027451, 0.211765, 0.258824, 1 },</div><div class="line"> { 0.992157, 0.964706, 0.890196, 1 },</div><div class="line"> { 0.796078, 0.294118, 0.086275, 1 },</div><div class="line"> { 0.576471, 0.631373, 0.631373, 1 },</div><div class="line"> { 0.513725, 0.580392, 0.588235, 1 },</div><div class="line"> { 0.396078, 0.482353, 0.513725, 1 },</div><div class="line"> { 0.423529, 0.443137, 0.768627, 1 },</div><div class="line"> { 0.345098, 0.431373, 0.458824, 1 },</div><div class="line"> { 0.000000, 0.168627, 0.211765, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00149">149</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab69dae8eb9c3744fcf53a0f482b18f19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab69dae8eb9c3744fcf53a0f482b18f19">&#9670;&nbsp;</a></span>ssh_auth</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer ssh_auth[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH identity file&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH agent&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;3&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Public key (automatic)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;4&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Kerberos (GSSAPI)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p>Array of key/value pairs for SSH auth type. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00919">919</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ebdfc8dcc1306424cbf1ed9dfd30c89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ebdfc8dcc1306424cbf1ed9dfd30c89">&#9670;&nbsp;</a></span>ssh_charset_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer ssh_charset_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Charset list. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00930">930</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="add87ff58da9befc10131b00c00dbc8eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add87ff58da9befc10131b00c00dbc8eb">&#9670;&nbsp;</a></span>ssh_terminal_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer ssh_terminal_palette[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <span class="stringliteral">&quot;Linux&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <span class="stringliteral">&quot;Tango&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <span class="stringliteral">&quot;Gruvbox&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;3&quot;</span>, <span class="stringliteral">&quot;Solarized Dark&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;4&quot;</span>, <span class="stringliteral">&quot;Solarized Light&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;5&quot;</span>, <span class="stringliteral">&quot;XTerm&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;6&quot;</span>, <span class="stringliteral">&quot;Custom (Configured in Remmina preferences)&quot;</span>,</div><div class="line"> NULL, NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00982">982</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2d4a960ae03e832fb20239f4880a6244"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d4a960ae03e832fb20239f4880a6244">&#9670;&nbsp;</a></span>tango_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA tango_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0, 0, 0, 1 },</div><div class="line"> { 0.8, 0, 0, 1 },</div><div class="line"> { 0.305882, 0.603922, 0.023529, 1 },</div><div class="line"> { 0.768627, 0.627451, 0, 1 },</div><div class="line"> { 0.203922, 0.396078, 0.643137, 1 },</div><div class="line"> { 0.458824, 0.313725, 0.482353, 1 },</div><div class="line"> { 0.0235294, 0.596078, 0.603922, 1 },</div><div class="line"> { 0.827451, 0.843137, 0.811765, 1 },</div><div class="line"> { 0.333333, 0.341176, 0.32549, 1 },</div><div class="line"> { 0.937255, 0.160784, 0.160784, 1 },</div><div class="line"> { 0.541176, 0.886275, 0.203922, 1 },</div><div class="line"> { 0.988235, 0.913725, 0.309804, 1 },</div><div class="line"> { 0.447059, 0.623529, 0.811765, 1 },</div><div class="line"> { 0.678431, 0.498039, 0.658824, 1 },</div><div class="line"> { 0.203922, 0.886275, 0.886275, 1 },</div><div class="line"> { 0.933333, 0.933333, 0.92549, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00092">92</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9cc4363a5dd981de398aca34155b38c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cc4363a5dd981de398aca34155b38c0">&#9670;&nbsp;</a></span>xterm_palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA xterm_palette[PALETTE_SIZE]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> { 0, 0, 0, 1 },</div><div class="line"> { 0.803922, 0, 0, 1 },</div><div class="line"> { 0, 0.803922, 0, 1 },</div><div class="line"> { 0.803922, 0.803922, 0, 1 },</div><div class="line"> { 0.117647, 0.564706, 1, 1 },</div><div class="line"> { 0.803922, 0, 0.803922, 1 },</div><div class="line"> { 0, 0.803922, 0.803922, 1 },</div><div class="line"> { 0.898039, 0.898039, 0.898039, 1 },</div><div class="line"> { 0.298039, 0.298039, 0.298039, 1 },</div><div class="line"> { 1, 0, 0, 1 },</div><div class="line"> { 0, 1, 0, 1 },</div><div class="line"> { 1, 1, 0, 1 },</div><div class="line"> { 0.27451, 0.509804, 0.705882, 1 },</div><div class="line"> { 1, 0, 1, 1 },</div><div class="line"> { 0, 1, 1, 1 },</div><div class="line"> { 1, 1, 1, 1 }</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00168">168</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh__plugin_8c.html">remmina_ssh_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh__plugin_8c.js b/docs/remmina__ssh__plugin_8c.js
new file mode 100644
index 000000000..a6d142589
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8c.js
@@ -0,0 +1,51 @@
+var remmina__ssh__plugin_8c =
+[
+ [ "_RemminaPluginSshData", "struct___remmina_plugin_ssh_data.html", "struct___remmina_plugin_ssh_data" ],
+ [ "RemminaPluginSshData", "remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7", null ],
+ [ "color_schemes", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c", [
+ [ "LINUX", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4", null ],
+ [ "TANGO", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508", null ],
+ [ "GRUVBOX", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c", null ],
+ [ "SOLARIZED_DARK", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab", null ],
+ [ "SOLARIZED_LIGHT", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13", null ],
+ [ "XTERM", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56", null ],
+ [ "CUSTOM", "remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5", null ]
+ ] ],
+ [ "compare", "remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4", null ],
+ [ "remmina_plugin_ssh_call_feature", "remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc", null ],
+ [ "remmina_plugin_ssh_close_connection", "remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203", null ],
+ [ "remmina_plugin_ssh_init", "remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd", null ],
+ [ "remmina_plugin_ssh_main_thread", "remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee", null ],
+ [ "remmina_plugin_ssh_on_focus_in", "remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046", null ],
+ [ "remmina_plugin_ssh_on_size_allocate", "remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718", null ],
+ [ "remmina_plugin_ssh_open_connection", "remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f", null ],
+ [ "remmina_plugin_ssh_popup_ui", "remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead", null ],
+ [ "remmina_plugin_ssh_query_feature", "remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599", null ],
+ [ "remmina_plugin_ssh_set_vte_pref", "remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f", null ],
+ [ "remmina_plugin_ssh_vte_copy_clipboard", "remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146", null ],
+ [ "remmina_plugin_ssh_vte_paste_clipboard", "remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146", null ],
+ [ "remmina_plugin_ssh_vte_save_session", "remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570", null ],
+ [ "remmina_plugin_ssh_vte_select_all", "remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505", null ],
+ [ "remmina_plugin_ssh_vte_terminal_set_encoding_and_pty", "remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce", null ],
+ [ "remmina_ssh_keystroke", "remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229", null ],
+ [ "remmina_ssh_plugin_load_terminal_palettes", "remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4", null ],
+ [ "remmina_ssh_plugin_popup_menu", "remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9", null ],
+ [ "remmina_ssh_plugin_register", "remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c", null ],
+ [ "gruvbox_palette", "remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173", null ],
+ [ "linux_palette", "remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494", null ],
+ [ "log_tips", "remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2", null ],
+ [ "palette", "remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5", null ],
+ [ "remmina_plugin_service", "remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_ssh", "remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599", null ],
+ [ "remmina_plugin_ssh_features", "remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0", null ],
+ [ "remmina_ssh_advanced_settings", "remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807", null ],
+ [ "remmina_ssh_basic_settings", "remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf", null ],
+ [ "remminavte", "remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1", null ],
+ [ "solarized_dark_palette", "remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f", null ],
+ [ "solarized_light_palette", "remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7", null ],
+ [ "ssh_auth", "remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19", null ],
+ [ "ssh_charset_list", "remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89", null ],
+ [ "ssh_terminal_palette", "remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb", null ],
+ [ "tango_palette", "remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244", null ],
+ [ "xterm_palette", "remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ssh__plugin_8c_source.html b/docs/remmina__ssh__plugin_8c_source.html
new file mode 100644
index 000000000..007060121
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8c_source.html
@@ -0,0 +1,262 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ssh_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ssh__plugin_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;</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 &quot;<a class="code" href="remmina__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;vte/vte.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;locale.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;langinfo.h&gt;</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__log_8h.html">remmina_log.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__plugin__manager_8h.html">remmina_plugin_manager.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__ssh_8h.html">remmina_ssh.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__protocol__widget_8h.html">remmina_protocol_widget.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__pref_8h.html">remmina_pref.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__ssh__plugin_8h.html">remmina_ssh_plugin.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__masterthread__exec_8h.html">remmina_masterthread_exec.h</a>&quot;</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SSH_FEATURE_TOOL_COPY 1</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SSH_FEATURE_TOOL_PASTE 2</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_SSH_FEATURE_TOOL_SELECT_ALL 3</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginSshData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;);</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define PALETTE_SIZE 16</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__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56"> 67</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">color_schemes</a> { <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">LINUX</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">TANGO</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">GRUVBOX</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">SOLARIZED_DARK</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">SOLARIZED_LIGHT</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">XTERM</a>, <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a> };</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494"> 73</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">linux_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; { 0, 0, 0, 1 },</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; { 0.666667, 0, 0, 1 },</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; { 0, 0.666667, 0, 1 },</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; { 0.666667, 0.333333, 0, 1 },</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; { 0, 0, 0.666667, 1 },</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; { 0.666667, 0, 0.666667, 1 },</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; { 0, 0.666667, 0.666667, 1 },</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; { 0.666667, 0.666667, 0.666667, 1 },</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; { 0.333333, 0.333333, 0.333333, 1 },</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; { 1, 0.333333, 0.333333, 1 },</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; { 0.333333, 1, 0.333333, 1 },</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; { 1, 1, 0.333333, 1 },</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; { 0.333333, 0.333333, 1, 1 },</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; { 1, 0.333333, 1, 1 },</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; { 0.333333, 1, 1, 1 },</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; { 1, 1, 1, 1 }</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;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244"> 92</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">tango_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; { 0, 0, 0, 1 },</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; { 0.8, 0, 0, 1 },</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; { 0.305882, 0.603922, 0.023529, 1 },</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; { 0.768627, 0.627451, 0, 1 },</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { 0.203922, 0.396078, 0.643137, 1 },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; { 0.458824, 0.313725, 0.482353, 1 },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { 0.0235294, 0.596078, 0.603922, 1 },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; { 0.827451, 0.843137, 0.811765, 1 },</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { 0.333333, 0.341176, 0.32549, 1 },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; { 0.937255, 0.160784, 0.160784, 1 },</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { 0.541176, 0.886275, 0.203922, 1 },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; { 0.988235, 0.913725, 0.309804, 1 },</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { 0.447059, 0.623529, 0.811765, 1 },</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; { 0.678431, 0.498039, 0.658824, 1 },</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { 0.203922, 0.886275, 0.886275, 1 },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; { 0.933333, 0.933333, 0.92549, 1 }</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__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173"> 111</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">gruvbox_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; { 0.156863, 0.156863, 0.156863, 1.000000 },</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { 0.800000, 0.141176, 0.113725, 1.000000 },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; { 0.596078, 0.592157, 0.101961, 1.000000 },</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { 0.843137, 0.600000, 0.129412, 1.000000 },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { 0.270588, 0.521569, 0.533333, 1.000000 },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { 0.694118, 0.384314, 0.525490, 1.000000 },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { 0.407843, 0.615686, 0.415686, 1.000000 },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { 0.658824, 0.600000, 0.517647, 1.000000 },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { 0.572549, 0.513725, 0.454902, 1.000000 },</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; { 0.984314, 0.286275, 0.203922, 1.000000 },</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; { 0.721569, 0.733333, 0.149020, 1.000000 },</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; { 0.980392, 0.741176, 0.184314, 1.000000 },</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; { 0.513725, 0.647059, 0.596078, 1.000000 },</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; { 0.827451, 0.525490, 0.607843, 1.000000 },</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; { 0.556863, 0.752941, 0.486275, 1.000000 },</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; { 0.921569, 0.858824, 0.698039, 1.000000 },</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;};</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"><a class="line" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f"> 130</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">solarized_dark_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; { 0.027451, 0.211765, 0.258824, 1 },</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; { 0.862745, 0.196078, 0.184314, 1 },</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; { 0.521569, 0.600000, 0.000000, 1 },</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; { 0.709804, 0.537255, 0.000000, 1 },</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; { 0.149020, 0.545098, 0.823529, 1 },</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; { 0.827451, 0.211765, 0.509804, 1 },</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; { 0.164706, 0.631373, 0.596078, 1 },</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; { 0.933333, 0.909804, 0.835294, 1 },</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; { 0.000000, 0.168627, 0.211765, 1 },</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; { 0.796078, 0.294118, 0.086275, 1 },</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; { 0.345098, 0.431373, 0.458824, 1 },</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; { 0.396078, 0.482353, 0.513725, 1 },</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; { 0.513725, 0.580392, 0.588235, 1 },</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; { 0.423529, 0.443137, 0.768627, 1 },</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; { 0.576471, 0.631373, 0.631373, 1 },</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; { 0.992157, 0.964706, 0.890196, 1 }</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"><a class="line" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7"> 149</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">solarized_light_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; { 0.933333, 0.909804, 0.835294, 1 },</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; { 0.862745, 0.196078, 0.184314, 1 },</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; { 0.521569, 0.600000, 0.000000, 1 },</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; { 0.709804, 0.537255, 0.000000, 1 },</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; { 0.149020, 0.545098, 0.823529, 1 },</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; { 0.827451, 0.211765, 0.509804, 1 },</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; { 0.164706, 0.631373, 0.596078, 1 },</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; { 0.027451, 0.211765, 0.258824, 1 },</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; { 0.992157, 0.964706, 0.890196, 1 },</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; { 0.796078, 0.294118, 0.086275, 1 },</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; { 0.576471, 0.631373, 0.631373, 1 },</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; { 0.513725, 0.580392, 0.588235, 1 },</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; { 0.396078, 0.482353, 0.513725, 1 },</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; { 0.423529, 0.443137, 0.768627, 1 },</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; { 0.345098, 0.431373, 0.458824, 1 },</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; { 0.000000, 0.168627, 0.211765, 1 }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;};</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"><a class="line" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0"> 168</a></span>&#160;<span class="keyword">const</span> GdkRGBA <a class="code" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">xterm_palette</a>[PALETTE_SIZE] = {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; { 0, 0, 0, 1 },</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; { 0.803922, 0, 0, 1 },</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; { 0, 0.803922, 0, 1 },</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; { 0.803922, 0.803922, 0, 1 },</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; { 0.117647, 0.564706, 1, 1 },</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; { 0.803922, 0, 0.803922, 1 },</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; { 0, 0.803922, 0.803922, 1 },</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; { 0.898039, 0.898039, 0.898039, 1 },</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; { 0.298039, 0.298039, 0.298039, 1 },</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; { 1, 0, 0, 1 },</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; { 0, 1, 0, 1 },</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; { 1, 1, 0, 1 },</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; { 0.27451, 0.509804, 0.705882, 1 },</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; { 1, 0, 1, 1 },</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; { 0, 1, 1, 1 },</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; { 1, 1, 1, 1 }</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;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keyword">static</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5"> 189</a></span>&#160; <span class="keyword">const</span> GdkRGBA *<a class="code" href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5">palette</a>;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;} <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="preprocessor">#endif</span></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"> 193</span>&#160;<span class="preprocessor">#define DEFAULT_PALETTE &quot;linux_palette&quot;</span></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;</div><div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_ssh_data.html"> 197</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a> {</div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae"> 198</a></span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> * <a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91"> 199</a></span>&#160; GFile * <a class="code" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">vte_session_file</a>;</div><div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14"> 200</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>;</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"><a class="line" href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563"> 202</a></span>&#160; <span class="keyword">const</span> GdkRGBA * <a class="code" href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563">palette</a>;</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"><a class="line" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e"> 204</a></span>&#160; pthread_t <a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;} <a class="code" href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">RemminaPluginSshData</a>;</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</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"><a class="line" href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 208</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</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"> 210</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a>(GtkWidget *widget, GtkAllocation *alloc, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</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="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee"> 221</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_plugin_ssh_main_thread</a>(gpointer 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; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="struct___remmina_s_s_h.html">RemminaSSH</a> *ssh;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="struct___remmina_s_s_h_shell.html">RemminaSSHShell</a> *<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a> = NULL;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; gboolean cont = FALSE;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; gchar *hostport;</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; gint ret;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; CANCEL_ASYNC</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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="comment">/* we may need to open a new tunnel */</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; hostport = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, 22, FALSE);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span> (hostport == NULL) {</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; ssh = g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;user-data&quot;</span>);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">if</span> (ssh) {</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="comment">/* Create SSH shell connection based on existing SSH session */</span></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; shell = <a class="code" href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a>(ssh);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(hostport, 22, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>);</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(REMMINA_SSH(shell)) &amp;&amp;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a>(REMMINA_SSH(shell), NULL, gp, remminafile) == <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a> &amp;&amp;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a>(shell, (<a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>, gp))</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; cont = TRUE;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; } <span class="keywordflow">else</span> {</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; <span class="comment">/* New SSH Shell connection */</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; shell = <a class="code" href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a>(remminafile);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; ssh = REMMINA_SSH(shell);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(hostport, 22, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a>, &amp;ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a>);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a>(ssh)) {</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;init session error: %s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; }</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"> 272</span>&#160; ret = <a class="code" href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a>(ssh, gp, remminafile);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a>) {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (ret != <a class="code" href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a>)</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; }</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; <span class="keywordflow">if</span> (!<a class="code" href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a>(shell, (<a class="code" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>, gp)) {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, ssh-&gt;<a class="code" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; cont = TRUE;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; g_free(hostport);</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="keywordflow">if</span> (!cont) {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span> (shell) <a class="code" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a>(shell);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</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; gpdata-&gt;shell = <a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>;</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; gchar *charset = REMMINA_SSH(shell)-&gt;charset;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a>(VTE_TERMINAL(gpdata-&gt;vte), charset, shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a>, shell-&gt;<a class="code" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a>);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="comment">/* TODO: The following call should be moved on the main thread, or something weird could happen */</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a>(GTK_WIDGET(gpdata-&gt;vte), NULL, gp);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gpdata-&gt;thread = 0;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;}</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"><a class="line" href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce"> 312</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a>(VteTerminal *terminal, <span class="keyword">const</span> <span class="keywordtype">char</span> *codeset, <span class="keywordtype">int</span> master, <span class="keywordtype">int</span> slave)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a>()) {</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="comment">/* Allow the execution of this function from a non main thread */</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *d;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; d = (<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a> *)g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structremmina__masterthread__exec__data.html">RemminaMTExecData</a>));</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a> = FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.terminal = terminal;</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.codeset = codeset;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; d-&gt;<a class="code" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a>.<a class="code" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a>.master = master;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a>(d);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; g_free(d);</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; }</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; setlocale(LC_ALL, <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (codeset &amp;&amp; codeset[0] != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; vte_terminal_set_encoding(terminal, codeset, NULL);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; vte_terminal_set_emulation(terminal, <span class="stringliteral">&quot;xterm&quot;</span>);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; vte_terminal_set_encoding(terminal, codeset);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</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; vte_terminal_set_backspace_binding(terminal, VTE_ERASE_ASCII_DELETE);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; vte_terminal_set_delete_binding(terminal, VTE_ERASE_DELETE_SEQUENCE);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="comment">/* vte_pty_new_foreign expect master FD, see https://bugzilla.gnome.org/show_bug.cgi?id=765382 */</span></div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; vte_terminal_set_pty(terminal, vte_pty_new_foreign_sync(master, NULL, NULL));</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; vte_terminal_set_pty(terminal, master);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="preprocessor">#endif</span></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;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046"> 350</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_plugin_ssh_on_focus_in</a>(GtkWidget *widget, GdkEventFocus *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</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"> 355</span>&#160; gtk_widget_grab_focus(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>);</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;}</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;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718"> 360</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a>(GtkWidget *widget, GtkAllocation *alloc, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;{</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; gint cols, rows;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">if</span> (!gtk_widget_get_mapped(widget)) <span class="keywordflow">return</span> FALSE;</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"> 368</span>&#160; cols = vte_terminal_get_column_count(VTE_TERMINAL(widget));</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; rows = vte_terminal_get_row_count(VTE_TERMINAL(widget));</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <a class="code" href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>, cols, rows);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;}</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f"> 378</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_plugin_ssh_set_vte_pref</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 380</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;audiblebell&quot;</span>, FALSE)) {</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; vte_terminal_set_audible_bell(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), TRUE);</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; g_info(<span class="stringliteral">&quot;audible_bell set to %i&quot;</span>, vte_terminal_get_audible_bell(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>)));</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; }</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</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#ac342b87e3992a20833d39e864e8ab85b">vte_font</a> &amp;&amp; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>[0]) {</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<span class="preprocessor">#if !VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; vte_terminal_set_font_from_string(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; vte_terminal_set_font(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>),</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; pango_font_description_from_string(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a>));</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="preprocessor">#endif</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; vte_terminal_set_allow_bold(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a>);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</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#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a> &gt; 0)</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; vte_terminal_set_scrollback_lines(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a>);</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;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505"> 403</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a>(GtkMenuItem *menuitem, gpointer <a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>)</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;{</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; vte_terminal_select_all(VTE_TERMINAL(vte));</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;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146"> 411</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a>(GtkMenuItem *menuitem, gpointer <a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>)</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;{</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 50, 0)</span></div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; vte_terminal_copy_clipboard_format(VTE_TERMINAL(vte), VTE_FORMAT_TEXT);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; vte_terminal_copy_clipboard(VTE_TERMINAL(vte));</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;}</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146"> 422</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a>(GtkMenuItem *menuitem, gpointer <a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>)</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;{</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; vte_terminal_paste_clipboard(VTE_TERMINAL(vte));</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;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l00429"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570"> 429</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session</a>(GtkMenuItem *menuitem, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;{</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; GError *err = NULL;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; GFileOutputStream *stream = g_file_replace(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">vte_session_file</a>, NULL, FALSE, G_FILE_CREATE_NONE, NULL, &amp;err);</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; <span class="keywordflow">if</span> (err != NULL) {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="comment">// TRANSLATORS: %s is a placeholder for an error message</span></div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; widget = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; _(<span class="stringliteral">&quot;Error: %s&quot;</span>), err-&gt;message);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</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="l00444"></a><span class="lineno"> 444</span>&#160; gtk_widget_show(widget);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; }</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; <span class="keywordflow">if</span> (stream != NULL)</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; vte_terminal_write_contents_sync(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), G_OUTPUT_STREAM(stream),</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; VTE_WRITE_DEFAULT, NULL, &amp;err);</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; vte_terminal_write_contents(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), G_OUTPUT_STREAM(stream),</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; VTE_TERMINAL_WRITE_DEFAULT, NULL, &amp;err);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="preprocessor">#endif</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">if</span> (err == NULL) {</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <a class="code" href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a>(<span class="stringliteral">&quot;remmina-terminal-saved&quot;</span>,</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; _(<span class="stringliteral">&quot;Terminal content saved in&quot;</span>),</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; g_file_get_path(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">vte_session_file</a>));</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;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; g_object_unref(stream);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; g_free(err);</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="l00468"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229"> 468</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> guint keystrokes[], <span class="keyword">const</span> gint keylen)</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;{</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>,</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; keystrokes, keylen, GDK_KEY_PRESS | GDK_KEY_RELEASE);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;}</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;gboolean</div><div class="line"><a name="l00478"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9"> 478</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a>(GtkWidget *widget, GdkEvent *event, GtkWidget *menu)</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">if</span> ((event-&gt;type == GDK_BUTTON_PRESS) &amp;&amp; (((GdkEventButton *)event)-&gt;button == 3)) {</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="preprocessor">#if GTK_CHECK_VERSION(3, 22, 0)</span></div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; gtk_menu_popup_at_pointer(GTK_MENU(menu), NULL);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL,</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; ((GdkEventButton *)event)-&gt;button, gtk_get_current_event_time());</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; }</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;}</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead"> 506</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_plugin_ssh_popup_ui</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="comment">/* Context menu for slection and clipboard */</span></div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; GtkWidget *menu = gtk_menu_new();</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; GtkWidget *select_all = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Select All (Host + A)&quot;</span>));</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; GtkWidget *copy = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Copy (host + C)&quot;</span>));</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; GtkWidget *paste = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Paste (host + V)&quot;</span>));</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; GtkWidget *save = gtk_menu_item_new_with_label(_(<span class="stringliteral">&quot;Save session to file&quot;</span>));</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), select_all);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), copy);</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), paste);</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; gtk_menu_shell_append(GTK_MENU_SHELL(menu), save);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), <span class="stringliteral">&quot;button_press_event&quot;</span>,</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a>), menu);</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; g_signal_connect(G_OBJECT(select_all), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; g_signal_connect(G_OBJECT(copy), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; g_signal_connect(G_OBJECT(paste), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a>), gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>);</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; g_signal_connect(G_OBJECT(save), <span class="stringliteral">&quot;activate&quot;</span>,</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session</a>), gp);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; gtk_widget_show_all(menu);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;}</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd"> 551</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;{</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; GtkWidget *hbox;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; GtkAdjustment *vadjustment;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; GtkWidget *vscrollbar;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; GdkRGBA foreground_color;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; GdkRGBA background_color;</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;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="preprocessor">#if !VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; GdkColor foreground_gdkcolor;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; GdkColor background_gdkcolor;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* VTE_CHECK_VERSION(0,38,0) */</span><span class="preprocessor"></span></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; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a>, 1);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; gtk_widget_show(hbox);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; gtk_container_add(GTK_CONTAINER(gp), hbox);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; g_signal_connect(G_OBJECT(hbox), <span class="stringliteral">&quot;focus-in-event&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_plugin_ssh_on_focus_in</a>), gp);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; vte = vte_terminal_new();</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; gtk_widget_show(vte);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; vte_terminal_set_size(VTE_TERMINAL(vte), 80, 25);</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; vte_terminal_set_scroll_on_keystroke(VTE_TERMINAL(vte), TRUE);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;<span class="preprocessor">#if !VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gdk_rgba_parse(&amp;foreground_color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; gdk_rgba_parse(&amp;background_color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>);</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 38, 0)</span></div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; GdkRGBA cp[PALETTE_SIZE];</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; GdkRGBA cursor_color;</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; <span class="comment">/*</span></div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;<span class="comment"> * custom colors reside inside of the &#39;theme&#39; subdir of the remmina config folder (.config/remmina/theme)</span></div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="comment"> * with the file extension &#39;.colors&#39;. The name of the colorfile came from the menu (see below)</span></div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;<span class="comment"> * sideeffect: it is possible to overwrite the standard colors with a dedicated colorfile like</span></div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="comment"> * &#39;0.colors&#39; for GRUVBOX, &#39;1.colors&#39; for TANGO and so on</span></div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; <span class="keyword">const</span> gchar *color_name = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;ssh_color_scheme&quot;</span>);</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; gchar *remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;theme&quot;</span>, NULL);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; gchar *<a class="code" href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a> = g_strdup_printf(<span class="stringliteral">&quot;%s/%s.colors&quot;</span>, remmina_dir, color_name);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; g_free(remmina_dir);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;<span class="comment"> * try to load theme from one of the system data dirs (based on XDG_DATA_DIRS environment var)</span></div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <span class="keywordflow">if</span> (!g_file_test(remmina_colors_file, G_FILE_TEST_IS_REGULAR)) {</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keyword">const</span> gchar *<span class="keyword">const</span> *dirs = g_get_system_data_dirs();</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;theme&quot;</span>, NULL);</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; GDir *system_data_dir = g_dir_open(remmina_dir, 0, &amp;error);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="comment">// ignoring this error is OK, because the folder may not exist</span></div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; g_error_free(error);</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; error = NULL;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordflow">if</span> (system_data_dir) {</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; g_dir_close(system_data_dir);</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; g_free(remmina_colors_file);</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; remmina_colors_file = g_strdup_printf(<span class="stringliteral">&quot;%s/%s.colors&quot;</span>, remmina_dir, color_name);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">if</span> (g_file_test(remmina_colors_file, G_FILE_TEST_IS_REGULAR))</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; g_free(remmina_dir);</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; }</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">if</span> (g_file_test(remmina_colors_file, G_FILE_TEST_IS_REGULAR)) {</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; GKeyFile *gkeyfile;</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <a class="code" href="struct___remmina_color_pref.html">RemminaColorPref</a> color_pref;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; gkeyfile = g_key_file_new();</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; g_key_file_load_from_file(gkeyfile, remmina_colors_file, G_KEY_FILE_NONE, NULL);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <a class="code" href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a>(gkeyfile, &amp;color_pref);</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; gdk_rgba_parse(&amp;foreground_color, color_pref.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>);</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; gdk_rgba_parse(&amp;background_color, color_pref.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; gdk_rgba_parse(&amp;cursor_color, color_pref.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a>);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; gdk_rgba_parse(&amp;cp[0], color_pref.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a>);</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; gdk_rgba_parse(&amp;cp[1], color_pref.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a>);</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; gdk_rgba_parse(&amp;cp[2], color_pref.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a>);</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; gdk_rgba_parse(&amp;cp[3], color_pref.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a>);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; gdk_rgba_parse(&amp;cp[4], color_pref.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a>);</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; gdk_rgba_parse(&amp;cp[5], color_pref.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a>);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; gdk_rgba_parse(&amp;cp[6], color_pref.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a>);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; gdk_rgba_parse(&amp;cp[7], color_pref.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a>);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; gdk_rgba_parse(&amp;cp[8], color_pref.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a>);</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; gdk_rgba_parse(&amp;cp[9], color_pref.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a>);</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; gdk_rgba_parse(&amp;cp[10], color_pref.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a>);</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; gdk_rgba_parse(&amp;cp[11], color_pref.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a>);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; gdk_rgba_parse(&amp;cp[12], color_pref.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a>);</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; gdk_rgba_parse(&amp;cp[13], color_pref.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a>);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; gdk_rgba_parse(&amp;cp[14], color_pref.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a>);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; gdk_rgba_parse(&amp;cp[15], color_pref.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a>);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="keyword">const</span> GdkRGBA custom_palette[PALETTE_SIZE] = {</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; cp[0], cp[1], cp[2], cp[3],</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; cp[4], cp[5], cp[6], cp[7],</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; cp[8], cp[9], cp[10], cp[11],</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; cp[12], cp[13], cp[14], cp[15]</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;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = custom_palette;</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="comment">/* Set colors to GdkRGBA */</span></div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="keywordflow">switch</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_color_scheme&quot;</span>, FALSE)) {</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">LINUX</a>:</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#ffffff&quot;</span>);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#000000&quot;</span>);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#ffffff&quot;</span>);</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">linux_palette</a>;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">TANGO</a>:</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#eeeeec&quot;</span>);</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#2e3436&quot;</span>);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#8ae234&quot;</span>);</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">tango_palette</a>;</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">GRUVBOX</a>:</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#ebdbb2&quot;</span>);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#282828&quot;</span>);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#d3869b&quot;</span>);</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">gruvbox_palette</a>;</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">SOLARIZED_DARK</a>:</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#839496&quot;</span>);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#002b36&quot;</span>);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#93a1a1&quot;</span>);</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">solarized_dark_palette</a>;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">SOLARIZED_LIGHT</a>:</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#657b83&quot;</span>);</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#fdf6e3&quot;</span>);</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#586e75&quot;</span>);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">solarized_light_palette</a>;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">XTERM</a>:</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; gdk_rgba_parse(&amp;foreground_color, <span class="stringliteral">&quot;#000000&quot;</span>);</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; gdk_rgba_parse(&amp;background_color, <span class="stringliteral">&quot;#ffffff&quot;</span>);</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; gdk_rgba_parse(&amp;cursor_color, <span class="stringliteral">&quot;#000000&quot;</span>);</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">xterm_palette</a>;</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keywordflow">case</span> <a class="code" href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a>:</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; gdk_rgba_parse(&amp;foreground_color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a>);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; gdk_rgba_parse(&amp;background_color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a>);</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; gdk_rgba_parse(&amp;cursor_color, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a>);</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; gdk_rgba_parse(&amp;cp[0], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a>);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; gdk_rgba_parse(&amp;cp[1], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a>);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; gdk_rgba_parse(&amp;cp[2], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a>);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; gdk_rgba_parse(&amp;cp[3], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a>);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; gdk_rgba_parse(&amp;cp[4], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a>);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; gdk_rgba_parse(&amp;cp[5], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a>);</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; gdk_rgba_parse(&amp;cp[6], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a>);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; gdk_rgba_parse(&amp;cp[7], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a>);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; gdk_rgba_parse(&amp;cp[8], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a>);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; gdk_rgba_parse(&amp;cp[9], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a>);</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; gdk_rgba_parse(&amp;cp[10], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a>);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; gdk_rgba_parse(&amp;cp[11], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a>);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; gdk_rgba_parse(&amp;cp[12], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a>);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; gdk_rgba_parse(&amp;cp[13], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a>);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; gdk_rgba_parse(&amp;cp[14], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a>);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; gdk_rgba_parse(&amp;cp[15], <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a>.<a class="code" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a>);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keyword">const</span> GdkRGBA custom_palette[PALETTE_SIZE] = {</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; cp[0], cp[1], cp[2], cp[3],</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; cp[4], cp[5], cp[6], cp[7],</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; cp[8], cp[9], cp[10], cp[11],</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; cp[12], cp[13], cp[14], cp[15]</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; };</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = custom_palette;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette = <a class="code" href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">linux_palette</a>;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; }</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; }</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; g_free(remmina_colors_file);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; vte_terminal_set_colors(VTE_TERMINAL(vte), &amp;foreground_color, &amp;background_color, <a class="code" href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a>.palette, PALETTE_SIZE);</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; vte_terminal_set_color_foreground(VTE_TERMINAL(vte), &amp;foreground_color);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; vte_terminal_set_color_background(VTE_TERMINAL(vte), &amp;background_color);</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; vte_terminal_set_color_cursor(VTE_TERMINAL(vte), &amp;cursor_color);</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; <span class="comment">/* VTE &lt;= 2.90 doesn’t support GdkRGBA so we must convert GdkRGBA to GdkColor */</span></div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; foreground_gdkcolor.red = (guint16)(foreground_color.red * 0xFFFF);</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; foreground_gdkcolor.green = (guint16)(foreground_color.green * 0xFFFF);</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; foreground_gdkcolor.blue = (guint16)(foreground_color.blue * 0xFFFF);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; background_gdkcolor.red = (guint16)(background_color.red * 0xFFFF);</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; background_gdkcolor.green = (guint16)(background_color.green * 0xFFFF);</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; background_gdkcolor.blue = (guint16)(background_color.blue * 0xFFFF);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="comment">/* Set colors to GdkColor */</span></div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; vte_terminal_set_colors(VTE_TERMINAL(vte), &amp;foreground_gdkcolor, &amp;background_gdkcolor, NULL, 0);</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;<span class="preprocessor">#endif</span></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; gtk_box_pack_start(GTK_BOX(hbox), vte, TRUE, TRUE, 0);</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a> = <a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>;</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_plugin_ssh_set_vte_pref</a>(gp);</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; g_signal_connect(G_OBJECT(vte), <span class="stringliteral">&quot;size-allocate&quot;</span>, G_CALLBACK(<a class="code" href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a>), gp);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, vte);</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;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 28, 0)</span></div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; vadjustment = gtk_scrollable_get_vadjustment(GTK_SCROLLABLE(vte));</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; vadjustment = vte_terminal_get_adjustment(VTE_TERMINAL(vc-&gt;vte.terminal));</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; vscrollbar = gtk_scrollbar_new(GTK_ORIENTATION_VERTICAL, vadjustment);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; gtk_widget_show(vscrollbar);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; gtk_box_pack_start(GTK_BOX(hbox), vscrollbar, FALSE, TRUE, 0);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; <span class="keyword">const</span> gchar *dir;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; <span class="keyword">const</span> gchar *sshlogname;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keyword">const</span> gchar *fp;</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160; GFile *rf;</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; rf = g_file_new_for_path(remminafile-&gt;filename);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sshlogfolder&quot;</span>) == NULL)</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_cache_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, NULL);</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; dir = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sshlogfolder&quot;</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sshlogname&quot;</span>) == NULL)</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; sshlogname = g_strconcat(g_file_get_basename(rf), <span class="stringliteral">&quot;.&quot;</span>, <span class="stringliteral">&quot;log&quot;</span>, NULL);</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; sshlogname = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sshlogname&quot;</span>);</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; sshlogname = <a class="code" href="remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03">remmina_file_format_properties</a>(remminafile, sshlogname);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; fp = g_strconcat(dir, <span class="stringliteral">&quot;/&quot;</span>, sshlogname, NULL);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">vte_session_file</a> = g_file_new_for_path(fp);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_plugin_ssh_popup_ui</a>(gp);</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;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00811"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f"> 811</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">protocol_plugin_set_expand</a>(gp, TRUE);</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, 640);</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, 480);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>, NULL, <a class="code" href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_plugin_ssh_main_thread</a>, gp)) {</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="stringliteral">&quot;Failed to initialize pthread. Falling back to non-thread mode…&quot;</span>);</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a> = 0;</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; }</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160;}</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160;</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00832"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203"> 832</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</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;sshlogenabled&quot;</span>, FALSE))</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session</a>(NULL, gp);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>) {</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; pthread_cancel(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>) pthread_join(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a>, NULL);</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> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>) {</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; <a class="code" href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>);</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a> = NULL;</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"> 851</span>&#160;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160;}</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160;<span class="keyword">static</span> gboolean</div><div class="line"><a name="l00862"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599"> 862</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160;{</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160;}</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span></div><div class="line"><a name="l00885"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc"> 885</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;{</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; <a class="code" href="struct___remmina_plugin_ssh_data.html">RemminaPluginSshData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SSH:</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a>(</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp), <span class="stringliteral">&quot;SSH&quot;</span>),</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; NULL, gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>, NULL);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; <span class="keywordflow">case</span> REMMINA_PROTOCOL_FEATURE_TOOL_SFTP:</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a>(</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; <a class="code" href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp), <span class="stringliteral">&quot;SFTP&quot;</span>),</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; NULL, gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a>, NULL);</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_SSH_FEATURE_TOOL_COPY:</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;<span class="preprocessor">#if VTE_CHECK_VERSION(0, 50, 0)</span></div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160; vte_terminal_copy_clipboard_format(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>), VTE_FORMAT_TEXT);</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; vte_terminal_copy_clipboard(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>));</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_SSH_FEATURE_TOOL_PASTE:</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160; vte_terminal_paste_clipboard(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>));</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_SSH_FEATURE_TOOL_SELECT_ALL:</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; vte_terminal_select_all(VTE_TERMINAL(gpdata-&gt;<a class="code" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a>));</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; }</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;}</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160;</div><div class="line"><a name="l00919"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19"> 919</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>[] =</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160;{</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>),</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH identity file&quot;</span>),</div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH agent&quot;</span>),</div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <span class="stringliteral">&quot;3&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Public key (automatic)&quot;</span>),</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; <span class="stringliteral">&quot;4&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Kerberos (GSSAPI)&quot;</span>),</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; NULL</div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160;};</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160;</div><div class="line"><a name="l00930"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89"> 930</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a>[] =</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160;{</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;&quot;</span>,</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ASCII&quot;</span>,</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;BIG5&quot;</span>,</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP437&quot;</span>,</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP720&quot;</span>,</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP737&quot;</span>,</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP775&quot;</span>,</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP850&quot;</span>,</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP852&quot;</span>,</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP855&quot;</span>,</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP857&quot;</span>,</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP858&quot;</span>,</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP862&quot;</span>,</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP866&quot;</span>,</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP874&quot;</span>,</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1125&quot;</span>,</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1250&quot;</span>,</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1251&quot;</span>,</div><div class="line"><a name="l00950"></a><span class="lineno"> 950</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1252&quot;</span>,</div><div class="line"><a name="l00951"></a><span class="lineno"> 951</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1253&quot;</span>,</div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1254&quot;</span>,</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1255&quot;</span>,</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1256&quot;</span>,</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1257&quot;</span>,</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;CP1258&quot;</span>,</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;EUC-JP&quot;</span>,</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;EUC-KR&quot;</span>,</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;GBK&quot;</span>,</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-1&quot;</span>,</div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-2&quot;</span>,</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-3&quot;</span>,</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-4&quot;</span>,</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-5&quot;</span>,</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-6&quot;</span>,</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-7&quot;</span>,</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-8&quot;</span>,</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-9&quot;</span>,</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-10&quot;</span>,</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-11&quot;</span>,</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-12&quot;</span>,</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-13&quot;</span>,</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-14&quot;</span>,</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-15&quot;</span>,</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;ISO-8859-16&quot;</span>,</div><div class="line"><a name="l00976"></a><span class="lineno"> 976</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;KOI8-R&quot;</span>,</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;SJIS&quot;</span>,</div><div class="line"><a name="l00978"></a><span class="lineno"> 978</span>&#160; <span class="stringliteral">&quot;&quot;</span>, <span class="stringliteral">&quot;UTF-8&quot;</span>,</div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>&#160; NULL</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>&#160;};</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"><a class="line" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb"> 982</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a>[] =</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160;{</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <span class="stringliteral">&quot;Linux&quot;</span>,</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <span class="stringliteral">&quot;Tango&quot;</span>,</div><div class="line"><a name="l00986"></a><span class="lineno"> 986</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <span class="stringliteral">&quot;Gruvbox&quot;</span>,</div><div class="line"><a name="l00987"></a><span class="lineno"> 987</span>&#160; <span class="stringliteral">&quot;3&quot;</span>, <span class="stringliteral">&quot;Solarized Dark&quot;</span>,</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160; <span class="stringliteral">&quot;4&quot;</span>, <span class="stringliteral">&quot;Solarized Light&quot;</span>,</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; <span class="stringliteral">&quot;5&quot;</span>, <span class="stringliteral">&quot;XTerm&quot;</span>,</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; <span class="stringliteral">&quot;6&quot;</span>, <span class="stringliteral">&quot;Custom (Configured in Remmina preferences)&quot;</span>,</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; NULL, NULL</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;</div><div class="line"><a name="l00998"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0"> 998</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a>[] =</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;{</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_COPY, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Copy&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Copy&quot;</span>), NULL },</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_PASTE, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Paste&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Paste&quot;</span>), NULL },</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_SSH_FEATURE_TOOL_SELECT_ALL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Select all&quot;</span>), <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;_Select all&quot;</span>), NULL },</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160;};</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;</div><div class="line"><a name="l01017"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf"> 1017</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a>[] =</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;{</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_ssh._tcp&quot;</span>, NULL },</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_auth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Authentication type&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a>, NULL },</div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;ssh_privatekey&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Identity file&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;ssh_passphrase&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password to unlock private key&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;};</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"><a class="line" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2"> 1029</a></span>&#160;<span class="keyword">static</span> gchar <a class="code" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a>[] =</div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;The filename can use the following placeholders:\n\n&quot;</span></div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160; <span class="stringliteral">&quot; • %h is substituted with the server name\n&quot;</span></div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160; <span class="stringliteral">&quot; • %t is substituted with the SSH server name\n&quot;</span></div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160; <span class="stringliteral">&quot; • %u is substituted with the username\n&quot;</span></div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; <span class="stringliteral">&quot; • %U is substituted with the SSH username\n&quot;</span></div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; <span class="stringliteral">&quot; • %p is substituted with Remmina profile name\n&quot;</span></div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; <span class="stringliteral">&quot; • %g is substituted with Remmina profile group name\n&quot;</span></div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; <span class="stringliteral">&quot; • %d is substituted with local datetime in iso8601 format\n&quot;</span>);</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;</div><div class="line"><a name="l01050"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807"> 1050</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a>[] =</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160;{</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_color_scheme&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Terminal color scheme&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a>, NULL },</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;ssh_charset&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Character set&quot;</span>), FALSE, <a class="code" href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a>, NULL },</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_proxycommand&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH Proxy Command&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_kex_algorithms&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;KEX (Key Exchange) algorithms&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_ciphers&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Symmetric cipher client to server&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;ssh_hostkeytypes&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Preferred server host key types&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sshlogfolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Folder for SSH session log&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;sshlogname&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Filename for SSH session log&quot;</span>), FALSE, NULL, <a class="code" href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a> },</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;sshlogenabled&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Log SSH session when exiting Remmina&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;audiblebell&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Audible terminal bell&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ssh_compression&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH compression&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Don&#39;t remember passwords&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ssh_stricthostkeycheck&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Strict host key checking&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;};</div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;</div><div class="line"><a name="l01074"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599"> 1074</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599">remmina_plugin_ssh</a> =</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; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160; <span class="stringliteral">&quot;SSH&quot;</span>, </div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SSH - Secure Shell&quot;</span>), </div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; GETTEXT_PACKAGE, </div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; VERSION, </div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160; <span class="stringliteral">&quot;remmina-ssh-symbolic&quot;</span>, </div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; <span class="stringliteral">&quot;remmina-ssh-symbolic&quot;</span>, </div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a>, </div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a>, </div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a>, </div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a>, </div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a>, </div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a>, </div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a>, </div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a>, </div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a>, </div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; NULL </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;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;<span class="comment"> * this function is used for</span></div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;<span class="comment"> * - inserting into the list to became a sorted list [g_list_insert_sorted()]</span></div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;<span class="comment"> * - checking the list to avoid duplicate entries [g_list_find_custom()]</span></div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;<span class="keyword">static</span> gint</div><div class="line"><a name="l01103"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4"> 1103</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a>(gconstpointer a, gconstpointer b)</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; <span class="keywordflow">return</span> strcmp((gchar *)a, (gchar *)b);</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;</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01109"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4"> 1109</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin_load_terminal_palettes</a>(gpointer *ssh_terminal_palette_new)</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; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> preset_rec_size = <span class="keyword">sizeof</span>(<a class="code" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a>) / <span class="keyword">sizeof</span>(gpointer);</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; GError *error = NULL;</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; GList *files = NULL;</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> rec_size = 0;</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;<span class="comment"> * count number of (all) files to reserve enough memory</span></div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160; <span class="comment">/* /usr/local/share/remmina */</span></div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keyword">const</span> gchar *<span class="keyword">const</span> *dirs = g_get_system_data_dirs();</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; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160; GDir *system_data_dir = NULL;</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; gchar *remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;theme&quot;</span>, NULL);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; system_data_dir = g_dir_open(remmina_dir, 0, &amp;error);</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; g_free(remmina_dir);</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; <span class="comment">// ignoring this error is OK, because the folder may not exist</span></div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160; g_error_free(error);</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; error = NULL;</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160; <span class="keywordflow">if</span> (system_data_dir) {</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; <span class="keyword">const</span> gchar *filename;</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160; <span class="keywordflow">while</span> ((filename = g_dir_read_name(system_data_dir))) {</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; <span class="keywordflow">if</span> (!g_file_test(filename, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; <span class="keywordflow">if</span> (g_str_has_suffix(filename, <span class="stringliteral">&quot;.colors&quot;</span>)) {</div><div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160; gsize len = strrchr(filename, <span class="charliteral">&#39;.&#39;</span>) - filename;</div><div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160; gchar *menu_str = g_strndup(filename, len);</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; <span class="keywordflow">if</span> (g_list_find_custom(files, menu_str, <a class="code" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a>) == NULL)</div><div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160; files = g_list_insert_sorted(files, menu_str, <a class="code" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a>);</div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160; }</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; }</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"> 1148</span>&#160; }</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="comment">/* ~/.config/remmina/colors */</span></div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; gchar *remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_config_dir(), <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;theme&quot;</span>, NULL);</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; GDir *user_data_dir;</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; user_data_dir = g_dir_open(remmina_dir, 0, &amp;error);</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; g_free(remmina_dir);</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; g_error_free(error);</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; error = NULL;</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordflow">if</span> (user_data_dir) {</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; <span class="keyword">const</span> gchar *filename;</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; <span class="keywordflow">while</span> ((filename = g_dir_read_name(user_data_dir))) {</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <span class="keywordflow">if</span> (!g_file_test(filename, G_FILE_TEST_IS_DIR)) {</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <span class="keywordflow">if</span> (g_str_has_suffix(filename, <span class="stringliteral">&quot;.colors&quot;</span>)) {</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; <span class="keywordtype">char</span> *menu_str = g_malloc(strlen(filename) + 1);</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; strcpy(menu_str, filename);</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; <span class="keywordtype">char</span> *t2 = strrchr(menu_str, <span class="charliteral">&#39;.&#39;</span>);</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; t2[0] = 0;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; <span class="keywordflow">if</span> (g_list_find_custom(files, menu_str, <a class="code" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a>) == NULL)</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; files = g_list_insert_sorted(files, menu_str, <a class="code" href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a>);</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; }</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; }</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; }</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; }</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; rec_size = g_list_length(files) * 2;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; gpointer *color_palette = g_malloc((preset_rec_size + rec_size) * <span class="keyword">sizeof</span>(gpointer));</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> field_idx = 0;</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; *ssh_terminal_palette_new = color_palette;</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; <span class="comment">// preset with (old) static ssh_terminal_palette data</span></div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="keywordflow">for</span> (; field_idx &lt; preset_rec_size; field_idx++) {</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; color_palette[field_idx] = <a class="code" href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a>[field_idx];</div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160; <span class="keywordflow">if</span> (!color_palette[field_idx])</div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; <span class="keywordflow">break</span>;</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;</div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; GList *l_files = NULL;</div><div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>&#160; <span class="keywordflow">for</span> (l_files = g_list_first(files); l_files != NULL; l_files = l_files-&gt;next) {</div><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160; gchar *menu_str = (gchar *)l_files-&gt;data;</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; color_palette[field_idx++] = menu_str;</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; color_palette[field_idx++] = menu_str;</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_list_free(files);</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; color_palette[field_idx] = NULL;</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"> 1201</span>&#160;<span class="keywordtype">void</span></div><div class="line"><a name="l01202"></a><span class="lineno"><a class="line" href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9"> 1202</a></span>&#160;<a class="code" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a>(<span class="keywordtype">void</span>)</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"> 1204</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; remmina_plugin_ssh_features[0].<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a> = GUINT_TO_POINTER(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a>);</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; remmina_plugin_ssh_features[1].<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a> = GUINT_TO_POINTER(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a>);</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; remmina_plugin_ssh_features[2].<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a> = GUINT_TO_POINTER(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a>);</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; remmina_plugin_ssh_features[3].<a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a> = GUINT_TO_POINTER(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a>);</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; remmina_plugin_service = &amp;<a class="code" href="remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10">remmina_plugin_manager_service</a>;</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; <a class="code" href="struct___remmina_protocol_setting_opt.html">RemminaProtocolSettingOpt</a> *settings;</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; <span class="comment">// preset new settings with (old) static remmina_ssh_advanced_settings data</span></div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160; settings = g_memdup(remmina_ssh_advanced_settings, <span class="keyword">sizeof</span>(remmina_ssh_advanced_settings));</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; <span class="comment">// create dynamic advanced settings to made replacing of ssh_terminal_palette possible</span></div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; gpointer ssh_terminal_palette_new = NULL;</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <a class="code" href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin_load_terminal_palettes</a>(&amp;ssh_terminal_palette_new);</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; settings[0].<a class="code" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">opt1</a> = ssh_terminal_palette_new;</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; remmina_plugin_ssh.<a class="code" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a> = (<a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> *)settings;</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"> 1225</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_plugin_ssh);</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; ssh_threads_set_callbacks(ssh_threads_get_pthread());</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160; ssh_init();</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;</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a>(<span class="keywordtype">void</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;}</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;<span class="preprocessor">#endif</span></div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_acf69725720378340e1a51c87e7638a7f"><div class="ttname"><a href="remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f">remmina_ssh_auth_gui</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth_gui(RemminaSSH *ssh, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</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="struct___remmina_plugin_ssh_data_html_aacebb7f6d617f5a753db5ceb450de45e"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">_RemminaPluginSshData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00204">remmina_ssh_plugin.c:204</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_ssh_data_html_a9e34d029c0a2b22affd19ae005e541ae"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">_RemminaPluginSshData::shell</a></div><div class="ttdeci">RemminaSSHShell * shell</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00198">remmina_ssh_plugin.c:198</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html"><div class="ttname"><a href="remmina__ssh_8h.html">remmina_ssh.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ae0792ddb4adcaafefc1a4604cefdd8f4"><div class="ttname"><a href="remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4">remmina_ssh_shell_new_from_ssh</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_ssh(RemminaSSH *ssh)</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a3aaebd7f03b7d8601818fabc46b787ed"><div class="ttname"><a href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">_RemminaSSH::error</a></div><div class="ttdeci">gchar * error</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00079">remmina_ssh.h:79</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a893f0cfe2d694ab700975f4f427ee2f6"><div class="ttname"><a href="remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6">remmina_public_send_notification</a></div><div class="ttdeci">void remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00644">remmina_public.c:644</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html"><div class="ttname"><a href="struct___remmina_color_pref.html">_RemminaColorPref</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00088">remmina_pref.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2a14fc38e73351f9009fe155dd859808"><div class="ttname"><a href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">_RemminaColorPref::color0</a></div><div class="ttdeci">gchar * color0</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00093">remmina_pref.h:93</a></div></div>
+<div class="ttc" id="remmina__file_8c_html_a52a0986eaf54c9e606ce9cdf8bb57e60"><div class="ttname"><a href="remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60">remmina_file_dup_temp_protocol</a></div><div class="ttdeci">RemminaFile * remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8c_source.html#l00711">remmina_file.c:711</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a4ad947d133d2aa2c94756aacb5031e79"><div class="ttname"><a href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">_RemminaColorPref::color14</a></div><div class="ttdeci">gchar * color14</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00107">remmina_pref.h:107</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a896596354d8afa9e7f55caa369450de7"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7">RemminaPluginSshData</a></div><div class="ttdeci">struct _RemminaPluginSshData RemminaPluginSshData</div><div class="ttdoc">The SSH plugin implementation. </div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ae26f55ce50c1485cda60106c5f24256c"><div class="ttname"><a href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">_RemminaColorPref::color10</a></div><div class="ttdeci">gchar * color10</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00103">remmina_pref.h:103</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13">SOLARIZED_LIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab">SOLARIZED_DARK</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a6302047dc754570d415b0ba68fd9c203"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203">remmina_plugin_ssh_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00832">remmina_ssh_plugin.c:832</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html"><div class="ttname"><a href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8h_source.html#l00043">remmina_masterthread_exec.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a3bc14b4167bf3be572d404b941f15a20"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">_RemminaProtocolSettingOpt::opt1</a></div><div class="ttdeci">gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00052">remmina_ssh_plugin.h:52</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a579fae9094500d743c26d03f4c34d457"><div class="ttname"><a href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">_RemminaPref::vte_shortcutkey_copy</a></div><div class="ttdeci">guint vte_shortcutkey_copy</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00169">remmina_pref.h:169</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a4d19c63b1984cdfc63f8216b0e521af1"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">remmina_masterthread_exec_data::func</a></div><div class="ttdeci">enum remmina_masterthread_exec_data::@10 func</div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a3a897d3fdc112fd9f96d2363f4094fc4"><div class="ttname"><a href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">_RemminaColorPref::color2</a></div><div class="ttdeci">gchar * color2</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="struct___remmina_s_s_h_html"><div class="ttname"><a href="struct___remmina_s_s_h.html">_RemminaSSH</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00059">remmina_ssh.h:59</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea">REMMINA_SSH_AUTH_USERCANCEL</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00108">remmina_ssh.h:108</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a2d4a960ae03e832fb20239f4880a6244"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244">tango_palette</a></div><div class="ttdeci">const GdkRGBA tango_palette[PALETTE_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00092">remmina_ssh_plugin.c:92</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c">GRUVBOX</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2ca13ee672a2536665f66d544753928"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">_RemminaColorPref::color12</a></div><div class="ttdeci">gchar * color12</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00105">remmina_pref.h:105</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266"><div class="ttname"><a href="remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266">REMMINA_SSH_AUTH_SUCCESS</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00106">remmina_ssh.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_a78edb0cd27564e88b6c92b425a383df6"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">_RemminaSSHShell::slave</a></div><div class="ttdeci">gint slave</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00249">remmina_ssh.h:249</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a52d414d5ac5f4956b0cabf8b5a5799f7"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7">solarized_light_palette</a></div><div class="ttdeci">const GdkRGBA solarized_light_palette[PALETTE_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00149">remmina_ssh_plugin.c:149</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2d6704aa58ecc18ecc178ea418addd87"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService::protocol_plugin_send_keys_signals</a></div><div class="ttdeci">void(* protocol_plugin_send_keys_signals)(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00193">plugin.h:193</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a71c221eacb5898a24c4f8981bc14a327"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">remmina_masterthread_exec_data::vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">struct remmina_masterthread_exec_data::@11::@24 vte_terminal_set_encoding_and_pty</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_adc8e3776e67abca9ab913bc33172e4ce"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00312">remmina_ssh_plugin.c:312</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a9c5171c5d8a61cc48171065644613cad"><div class="ttname"><a href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">_RemminaPref::vte_shortcutkey_select_all</a></div><div class="ttdeci">guint vte_shortcutkey_select_all</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00171">remmina_pref.h:171</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_aaabfe48db4bcae99b7c2e30d37ff73a0"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0">remmina_plugin_ssh_features</a></div><div class="ttdeci">static RemminaProtocolFeature remmina_plugin_ssh_features[]</div><div class="ttdoc">Array for available features. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00998">remmina_ssh_plugin.c:998</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa495bd5170c952a7dccff4e2504f5867"><div class="ttname"><a href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">_RemminaColorPref::foreground</a></div><div class="ttdeci">gchar * foreground</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00092">remmina_pref.h:92</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a8ebdfc8dcc1306424cbf1ed9dfd30c89"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89">ssh_charset_list</a></div><div class="ttdeci">static gpointer ssh_charset_list[]</div><div class="ttdoc">Charset list. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00930">remmina_ssh_plugin.c:930</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a675a8004488715429fa540dffb330d49"><div class="ttname"><a href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">_RemminaColorPref::background</a></div><div class="ttdeci">gchar * background</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00090">remmina_pref.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a52f5fa8b2b4500c3ab9ae35f0d410f17"><div class="ttname"><a href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">_RemminaPref::vte_allow_bold_text</a></div><div class="ttdeci">gboolean vte_allow_bold_text</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00166">remmina_pref.h:166</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a01bb81cfc23add39c9260e888ef1d88f"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f">remmina_plugin_ssh_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdoc">Initialize the main window properties and the pthread. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00811">remmina_ssh_plugin.c:811</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</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#l00494">remmina_file.c:494</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5ae99dc78a80baa14e0407983077c500"><div class="ttname"><a href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">_RemminaColorPref::cursor</a></div><div class="ttdeci">gchar * cursor</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00091">remmina_pref.h:91</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ac54051cfe6fedf5d60160f2540917718"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718">remmina_plugin_ssh_on_size_allocate</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_on_size_allocate(GtkWidget *widget, GtkAllocation *alloc, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00360">remmina_ssh_plugin.c:360</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a316f97b879e147ec52967344f6ad1d84"><div class="ttname"><a href="remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84">remmina_ssh_shell_free</a></div><div class="ttdeci">void remmina_ssh_shell_free(RemminaSSHShell *shell)</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_afa1c17a29abc1a6b89929a73b89e7173"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173">gruvbox_palette</a></div><div class="ttdeci">const GdkRGBA gruvbox_palette[PALETTE_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00111">remmina_ssh_plugin.c:111</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ac342b87e3992a20833d39e864e8ab85b"><div class="ttname"><a href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">_RemminaPref::vte_font</a></div><div class="ttdeci">gchar * vte_font</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00165">remmina_pref.h:165</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a6f594d157e09639e09b1f32a420da96c"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c">remmina_ssh_plugin_register</a></div><div class="ttdeci">void remmina_ssh_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01202">remmina_ssh_plugin.c:1202</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_ssh_data_html_a274af863ce43b84bb4b0624cecc02a14"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">_RemminaPluginSshData::vte</a></div><div class="ttdeci">GtkWidget * vte</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00200">remmina_ssh_plugin.c:200</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</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__masterthread__exec_8c_html_a3a52e863a3a3da6da6bb5d36c13b7ff4"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4">remmina_masterthread_exec_is_main_thread</a></div><div class="ttdeci">gboolean remmina_masterthread_exec_is_main_thread()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00144">remmina_masterthread_exec.c:144</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a30ddbf13515b3bdad4e220d75b7912bf"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf">remmina_ssh_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_ssh_basic_settings[]</div><div class="ttdoc">Array of RemminaProtocolSetting for basic settings. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01017">remmina_ssh_plugin.c:1017</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#l00172">remmina_plugin_manager.c:172</a></div></div>
+<div class="ttc" id="structremmina__masterthread__exec__data_html_a53822565f3ba424c2d0332ce1767ed92"><div class="ttname"><a href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">remmina_masterthread_exec_data::p</a></div><div class="ttdeci">union remmina_masterthread_exec_data::@11 p</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a2d76cf254046651d0d5bb36aa83637e4"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4">compare</a></div><div class="ttdeci">static gint compare(gconstpointer a, gconstpointer b)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01103">remmina_ssh_plugin.c:1103</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="remmina__ssh__plugin_8c_html_a3e8e08f2a9b05530e85962f9b8c556e9"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a></div><div class="ttdeci">gboolean remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00478">remmina_ssh_plugin.c:478</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_ab3c15094a16418c5951c5382c8a44190"><div class="ttname"><a href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">_RemminaProtocolFeature::opt3</a></div><div class="ttdeci">gpointer opt3</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00061">types.h:61</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00208">remmina_ssh_plugin.c:208</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_a76ed92539dfe749a24a3a3b99f3a644f"><div class="ttname"><a href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">_RemminaSSH::tunnel_entrance_port</a></div><div class="ttdeci">gint tunnel_entrance_port</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00087">remmina_ssh.h:87</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a30412e0b4302f5ae0b9be2749390a48d"><div class="ttname"><a href="remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d">remmina_ssh_shell_new_from_file</a></div><div class="ttdeci">RemminaSSHShell * remmina_ssh_shell_new_from_file(RemminaFile *remminafile)</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a4639e47898939f893505f0a30993aead"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead">remmina_plugin_ssh_popup_ui</a></div><div class="ttdeci">void remmina_plugin_ssh_popup_ui(RemminaProtocolWidget *gp)</div><div class="ttdoc">Remmina SSH plugin terminal popup menu. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00506">remmina_ssh_plugin.c:506</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a4fcffcd3b4d288aa52087e48c78d6570"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570">remmina_plugin_ssh_vte_save_session</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_save_session(GtkMenuItem *menuitem, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00429">remmina_ssh_plugin.c:429</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a901034949132f369eb34c4f1ded3a0a6"><div class="ttname"><a href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">_RemminaPref::vte_shortcutkey_paste</a></div><div class="ttdeci">guint vte_shortcutkey_paste</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00170">remmina_pref.h:170</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a62f9ea89d10bb2e375d70c9578ca95fd"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd">remmina_plugin_ssh_init</a></div><div class="ttdeci">static void remmina_plugin_ssh_init(RemminaProtocolWidget *gp)</div><div class="ttdoc">Remmina SSH plugin initialization. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00551">remmina_ssh_plugin.c:551</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a24a8c38ab11389b860d0658812ff7bbc"><div class="ttname"><a href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">_RemminaColorPref::color13</a></div><div class="ttdeci">gchar * color13</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00106">remmina_pref.h:106</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a666c43eab754dff3be3c80683e9343f1"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1">remminavte</a></div><div class="ttdeci">static struct @36 remminavte</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a3cab806d9a2a069aa4446c30cbf41599"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599">remmina_plugin_ssh</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_ssh</div><div class="ttdoc">SSH Protocol plugin definition and features. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01074">remmina_ssh_plugin.c:1074</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ac5670df701b44384b5acd61aeac016dc"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a></div><div class="ttdeci">static void remmina_plugin_ssh_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdoc">Functions to call when an entry in the Tool menu in the Remmina Connection Window is clicked...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00885">remmina_ssh_plugin.c:885</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a3290489a1ff9e51fbc013424fbfc8505"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00403">remmina_ssh_plugin.c:403</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a0633a83ce0cbf7ed58d2b37ec6fd26b4"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4">remmina_ssh_plugin_load_terminal_palettes</a></div><div class="ttdeci">void remmina_ssh_plugin_load_terminal_palettes(gpointer *ssh_terminal_palette_new)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01109">remmina_ssh_plugin.c:1109</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00047">remmina_ssh_plugin.h:47</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a41ec447057568be598d38975bfe016d2"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2">log_tips</a></div><div class="ttdeci">static gchar log_tips[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01029">remmina_ssh_plugin.c:1029</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4558dbff70064da3de58a6d684611fad"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">_RemminaPluginService::protocol_plugin_set_expand</a></div><div class="ttdeci">void(* protocol_plugin_set_expand)(RemminaProtocolWidget *gp, gboolean expand)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00156">plugin.h:156</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_add87ff58da9befc10131b00c00dbc8eb"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb">ssh_terminal_palette</a></div><div class="ttdeci">static gpointer ssh_terminal_palette[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00982">remmina_ssh_plugin.c:982</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8ae5e31836066ac69f7c907f30d2ffc"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">_RemminaColorPref::color9</a></div><div class="ttdeci">gchar * color9</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00102">remmina_pref.h:102</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a2d0facd5a0480a450d525ce9ef4fed60"><div class="ttname"><a href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">_RemminaColorPref::color5</a></div><div class="ttdeci">gchar * color5</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00098">remmina_pref.h:98</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a1d9bd13f411189c9d8d8a08ceb77e8d7"><div class="ttname"><a href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">_RemminaColorPref::color7</a></div><div class="ttdeci">gchar * color7</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00100">remmina_pref.h:100</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a1c095a955af21b3ed9952ba2ea94691b"><div class="ttname"><a href="remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b">remmina_ssh_shell_open</a></div><div class="ttdeci">gboolean remmina_ssh_shell_open(RemminaSSHShell *shell, RemminaSSHExitFunc exit_callback, gpointer data)</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56">XTERM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_html_aebc7525b6f72d22c1ce4df93c1576602"><div class="ttname"><a href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">_RemminaSSH::tunnel_entrance_host</a></div><div class="ttdeci">gchar * tunnel_entrance_host</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00086">remmina_ssh.h:86</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8c_html_a14628c2470cac50e87916a70ea05c97d"><div class="ttname"><a href="remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d">remmina_masterthread_exec_and_wait</a></div><div class="ttdeci">void remmina_masterthread_exec_and_wait(RemminaMTExecData *d)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__masterthread__exec_8c_source.html#l00122">remmina_masterthread_exec.c:122</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_adf8c8f3dd7fa5412d8c580668cc36146"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00422">remmina_ssh_plugin.c:422</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8d7f02ac9b6890ad675b702708bc4af9"><div class="ttname"><a href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">_RemminaColorPref::color6</a></div><div class="ttdeci">gchar * color6</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00099">remmina_pref.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_af9c8b60418a9dc795230e4ebb084f850"><div class="ttname"><a href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">_RemminaPref::vte_lines</a></div><div class="ttdeci">gint vte_lines</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00168">remmina_pref.h:168</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a31cf1c896508adf4f8f43f70d8e8f599"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599">remmina_plugin_ssh_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdoc">Not used by the plugin. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00862">remmina_ssh_plugin.c:862</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#l00524">remmina_file.c:524</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ab2b41853bdaaefa3968017819c19d316"><div class="ttname"><a href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">_RemminaColorPref::color3</a></div><div class="ttdeci">gchar * color3</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00096">remmina_pref.h:96</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a9cc4363a5dd981de398aca34155b38c0"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0">xterm_palette</a></div><div class="ttdeci">const GdkRGBA xterm_palette[PALETTE_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00168">remmina_ssh_plugin.c:168</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html"><div class="ttname"><a href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a5d92875f0034e5fc3d360d97d5992bd4"><div class="ttname"><a href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">_RemminaColorPref::color8</a></div><div class="ttdeci">gchar * color8</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00101">remmina_pref.h:101</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_aa960839fb967823a40ed5def846496a5"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5">palette</a></div><div class="ttdeci">const GdkRGBA * palette</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00189">remmina_ssh_plugin.c:189</a></div></div>
+<div class="ttc" id="remmina__masterthread__exec_8h_html"><div class="ttname"><a href="remmina__masterthread__exec_8h.html">remmina_masterthread_exec.h</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a63257961dac038e3a3989eae9083c494"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494">linux_palette</a></div><div class="ttdeci">const GdkRGBA linux_palette[PALETTE_SIZE]</div><div class="ttdoc">16 color palettes in GdkRGBA format (red, green, blue, alpha). </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00073">remmina_ssh_plugin.c:73</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__ssh__plugin_8c_html_ab69dae8eb9c3744fcf53a0f482b18f19"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19">ssh_auth</a></div><div class="ttdeci">static gpointer ssh_auth[]</div><div class="ttdoc">Array of key/value pairs for SSH auth type. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00919">remmina_ssh_plugin.c:919</a></div></div>
+<div class="ttc" id="remmina__pref_8h_html_a94d3cf980275b6e9b0c701972f8b1cce"><div class="ttname"><a href="remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce">remmina_colors_file</a></div><div class="ttdeci">gchar * remmina_colors_file</div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_afa7c4748f22173796b35d1d50b6c1914"><div class="ttname"><a href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">_RemminaColorPref::color4</a></div><div class="ttdeci">gchar * color4</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00097">remmina_pref.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a4fa1cd6e50c66d79e727d7264fc454ee"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee">remmina_plugin_ssh_main_thread</a></div><div class="ttdeci">static gpointer remmina_plugin_ssh_main_thread(gpointer data)</div><div class="ttdoc">Remmina protocol plugin main function. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00221">remmina_ssh_plugin.c:221</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_aceb00d9dff794500ccb04a1373eb32db"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">_RemminaProtocolPlugin::advanced_settings</a></div><div class="ttdeci">const RemminaProtocolSetting * advanced_settings</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00071">plugin.h:71</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_afebc284e31a21ecc0316baf2115aa99f"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f">solarized_dark_palette</a></div><div class="ttdeci">const GdkRGBA solarized_dark_palette[PALETTE_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00130">remmina_ssh_plugin.c:130</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a7bf273dcf4cc7f985727150f15fa9046"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046">remmina_plugin_ssh_on_focus_in</a></div><div class="ttdeci">static gboolean remmina_plugin_ssh_on_focus_in(GtkWidget *widget, GdkEventFocus *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00350">remmina_ssh_plugin.c:350</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_a8c109e8479617a5e6da0fcaccf511c60"><div class="ttname"><a href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">_RemminaColorPref::color15</a></div><div class="ttdeci">gchar * color15</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00108">remmina_pref.h:108</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_ac8e90ea1299ef641fbef1495f899cf97"><div class="ttname"><a href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">_RemminaColorPref::color11</a></div><div class="ttdeci">gchar * color11</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00104">remmina_pref.h:104</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_acb6514abadc6fcf387ef91e3c36bb146"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00411">remmina_ssh_plugin.c:411</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a4c56936cde97775b102a3e7b48fe5a01"><div class="ttname"><a href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a></div><div class="ttdeci">void(* RemminaSSHExitFunc)(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00243">remmina_ssh.h:243</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_ssh_data_html"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a></div><div class="ttdoc">The SSH plugin implementation. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00197">remmina_ssh_plugin.c:197</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a8cc8cc627e22e71e257afa9c74d373ef"><div class="ttname"><a href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">_RemminaPluginService::open_connection</a></div><div class="ttdeci">GtkWidget *(* open_connection)(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00220">plugin.h:220</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_aa41537b3d8e7ae12f65783f6dfcc7c6f"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f">remmina_plugin_ssh_set_vte_pref</a></div><div class="ttdeci">static void remmina_plugin_ssh_set_vte_pref(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00378">remmina_ssh_plugin.c:378</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_ab670417882185f0d1eb558ca80b91229"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229">remmina_ssh_keystroke</a></div><div class="ttdeci">static void remmina_ssh_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdoc">Send a keystroke to the plugin window. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00468">remmina_ssh_plugin.c:468</a></div></div>
+<div class="ttc" id="remmina__protocol__widget_8h_html"><div class="ttname"><a href="remmina__protocol__widget_8h.html">remmina_protocol_widget.h</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a51b5159cc5a6833759bc87688221b807"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807">remmina_ssh_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_ssh_advanced_settings[]</div><div class="ttdoc">Array of RemminaProtocolSetting for advanced settings. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01050">remmina_ssh_plugin.c:1050</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a85e3d3ef34fb8969211860df159a04d8"><div class="ttname"><a href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">_RemminaPref::color_pref</a></div><div class="ttdeci">RemminaColorPref color_pref</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00197">remmina_pref.h:197</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_ad6424eb32c9549eb3e26f167dc58c218"><div class="ttname"><a href="remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218">remmina_pref_file_load_colors</a></div><div class="ttdeci">void remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00183">remmina_pref.c:183</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807c"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c">color_schemes</a></div><div class="ttdeci">color_schemes</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html_ab02f57e79ea0ba35f8a3788ef01a707f"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">_RemminaSSHShell::master</a></div><div class="ttdeci">gint master</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00248">remmina_ssh.h:248</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_ac2d3f3b6550e4d1fe4caabe1df6af508"><div class="ttname"><a href="remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508">remmina_ssh_shell_set_size</a></div><div class="ttdeci">void remmina_ssh_shell_set_size(RemminaSSHShell *shell, gint columns, gint rows)</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508">TANGO</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_ssh_data_html_a9ee4bcd1a586ebaab74b062d2d40e563"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563">_RemminaPluginSshData::palette</a></div><div class="ttdeci">const GdkRGBA * palette</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00202">remmina_ssh_plugin.c:202</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="struct___remmina_color_pref_html_aa4a65b76fbdc0b3e97d3046f0b48e1ff"><div class="ttname"><a href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">_RemminaColorPref::color1</a></div><div class="ttdeci">gchar * color1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00094">remmina_pref.h:94</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8c_html_a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4"><div class="ttname"><a href="remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4">LINUX</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00067">remmina_ssh_plugin.c:67</a></div></div>
+<div class="ttc" id="remmina__ssh_8h_html_a624b8ac30ddcd00ebda0b51d504f5a33"><div class="ttname"><a href="remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33">remmina_ssh_init_session</a></div><div class="ttdeci">gboolean remmina_ssh_init_session(RemminaSSH *ssh)</div></div>
+<div class="ttc" id="remmina__ssh_8c_html_aad84c6609cb431d48121ae5e0902441b"><div class="ttname"><a href="remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a></div><div class="ttdeci">enum remmina_ssh_auth_result remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8c_source.html#l00336">remmina_ssh.c:336</a></div></div>
+<div class="ttc" id="struct___remmina_s_s_h_shell_html"><div class="ttname"><a href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh_8h_source.html#l00245">remmina_ssh.h:245</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_ssh_data_html_af7d7b1e2393255bf247b940c5f7d4a91"><div class="ttname"><a href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">_RemminaPluginSshData::vte_session_file</a></div><div class="ttdeci">GFile * vte_session_file</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00199">remmina_ssh_plugin.c:199</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh__plugin_8c.html">remmina_ssh_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh__plugin_8h.html b/docs/remmina__ssh__plugin_8h.html
new file mode 100644
index 000000000..37c8d1186
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8h.html
@@ -0,0 +1,338 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_ssh_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__ssh__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ace3febdfaa8e21a4c6a6108b4c54b5ec"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">RemminaProtocolSettingOpt</a></td></tr>
+<tr class="separator:ace3febdfaa8e21a4c6a6108b4c54b5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af9f9487a10fb1a9c4b494ce3657359b9"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9">remmina_ssh_plugin_register</a> (void)</td></tr>
+<tr class="separator:af9f9487a10fb1a9c4b494ce3657359b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8e3776e67abca9ab913bc33172e4ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a> (VteTerminal *terminal, const char *codeset, int master, int slave)</td></tr>
+<tr class="separator:adc8e3776e67abca9ab913bc33172e4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3290489a1ff9e51fbc013424fbfc8505"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:a3290489a1ff9e51fbc013424fbfc8505"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb6514abadc6fcf387ef91e3c36bb146"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:acb6514abadc6fcf387ef91e3c36bb146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf8c8f3dd7fa5412d8c580668cc36146"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a> (GtkMenuItem *menuitem, gpointer vte)</td></tr>
+<tr class="separator:adf8c8f3dd7fa5412d8c580668cc36146"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e8e08f2a9b05530e85962f9b8c556e9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a> (GtkWidget *widget, GdkEvent *event, GtkWidget *menu)</td></tr>
+<tr class="separator:a3e8e08f2a9b05530e85962f9b8c556e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="ace3febdfaa8e21a4c6a6108b4c54b5ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace3febdfaa8e21a4c6a6108b4c54b5ec">&#9670;&nbsp;</a></span>RemminaProtocolSettingOpt</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a> <a class="el" href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">RemminaProtocolSettingOpt</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="acb6514abadc6fcf387ef91e3c36bb146"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb6514abadc6fcf387ef91e3c36bb146">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_copy_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_copy_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00411">411</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adf8c8f3dd7fa5412d8c580668cc36146"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf8c8f3dd7fa5412d8c580668cc36146">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_paste_clipboard()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_paste_clipboard </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00422">422</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3290489a1ff9e51fbc013424fbfc8505"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3290489a1ff9e51fbc013424fbfc8505">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_select_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_select_all </td>
+ <td>(</td>
+ <td class="paramtype">GtkMenuItem *&#160;</td>
+ <td class="paramname"><em>menuitem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>vte</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>we should add the vte_terminal_unselect_all as well </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00403">403</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adc8e3776e67abca9ab913bc33172e4ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8e3776e67abca9ab913bc33172e4ce">&#9670;&nbsp;</a></span>remmina_plugin_ssh_vte_terminal_set_encoding_and_pty()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_ssh_vte_terminal_set_encoding_and_pty </td>
+ <td>(</td>
+ <td class="paramtype">VteTerminal *&#160;</td>
+ <td class="paramname"><em>terminal</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>codeset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>master</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>slave</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00312">312</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3e8e08f2a9b05530e85962f9b8c556e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e8e08f2a9b05530e85962f9b8c556e9">&#9670;&nbsp;</a></span>remmina_ssh_plugin_popup_menu()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_ssh_plugin_popup_menu </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>menu</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00478">478</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af9f9487a10fb1a9c4b494ce3657359b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9f9487a10fb1a9c4b494ce3657359b9">&#9670;&nbsp;</a></span>remmina_ssh_plugin_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_ssh_plugin_register </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l01202">1202</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__ssh__plugin_8h.js b/docs/remmina__ssh__plugin_8h.js
new file mode 100644
index 000000000..6132e195c
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8h.js
@@ -0,0 +1,11 @@
+var remmina__ssh__plugin_8h =
+[
+ [ "_RemminaProtocolSettingOpt", "struct___remmina_protocol_setting_opt.html", "struct___remmina_protocol_setting_opt" ],
+ [ "RemminaProtocolSettingOpt", "remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec", null ],
+ [ "remmina_plugin_ssh_vte_copy_clipboard", "remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146", null ],
+ [ "remmina_plugin_ssh_vte_paste_clipboard", "remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146", null ],
+ [ "remmina_plugin_ssh_vte_select_all", "remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505", null ],
+ [ "remmina_plugin_ssh_vte_terminal_set_encoding_and_pty", "remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce", null ],
+ [ "remmina_ssh_plugin_popup_menu", "remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9", null ],
+ [ "remmina_ssh_plugin_register", "remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__ssh__plugin_8h_source.html b/docs/remmina__ssh__plugin_8h_source.html
new file mode 100644
index 000000000..92afcd940
--- /dev/null
+++ b/docs/remmina__ssh__plugin_8h_source.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_ssh_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__ssh__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_ssh_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__ssh__plugin_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) 2010-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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBVTE</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;vte/vte.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9">remmina_ssh_plugin_register</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a"> 48</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a> <a class="code" href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a">type</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea"> 49</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea">name</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed"> 50</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed">label</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc"> 51</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc">compact</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20"> 52</a></span>&#160; gpointer <a class="code" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">opt1</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867"> 53</a></span>&#160; gpointer <a class="code" href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867">opt2</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">RemminaProtocolSettingOpt</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* For callback in main thread */</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#if defined (HAVE_LIBSSH) &amp;&amp; defined (HAVE_LIBVTE)</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a>(VteTerminal *terminal, <span class="keyword">const</span> <span class="keywordtype">char</span> *codeset, <span class="keywordtype">int</span> master, <span class="keywordtype">int</span> slave);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a>(GtkMenuItem *menuitem, gpointer vte);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a>(GtkMenuItem *menuitem, gpointer vte);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a>(GtkMenuItem *menuitem, gpointer vte);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;gboolean <a class="code" href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a>(GtkWidget *widget, GdkEvent *event, GtkWidget *menu);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_protocol_setting_opt_html_a30495a4edaa2dacfb0dfcb906d68deed"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed">_RemminaProtocolSettingOpt::label</a></div><div class="ttdeci">const gchar * label</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00050">remmina_ssh_plugin.h:50</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_ace3febdfaa8e21a4c6a6108b4c54b5ec"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec">RemminaProtocolSettingOpt</a></div><div class="ttdeci">struct _RemminaProtocolSettingOpt RemminaProtocolSettingOpt</div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_a3290489a1ff9e51fbc013424fbfc8505"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00403">remmina_ssh_plugin.c:403</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a3bc14b4167bf3be572d404b941f15a20"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">_RemminaProtocolSettingOpt::opt1</a></div><div class="ttdeci">gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00052">remmina_ssh_plugin.h:52</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a></div><div class="ttdeci">RemminaProtocolSettingType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00078">types.h:78</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_adf8c8f3dd7fa5412d8c580668cc36146"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146">remmina_plugin_ssh_vte_paste_clipboard</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00422">remmina_ssh_plugin.c:422</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_adc8e3776e67abca9ab913bc33172e4ce"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce">remmina_plugin_ssh_vte_terminal_set_encoding_and_pty</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00312">remmina_ssh_plugin.c:312</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_af9f9487a10fb1a9c4b494ce3657359b9"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9">remmina_ssh_plugin_register</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_ssh_plugin_register(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l01202">remmina_ssh_plugin.c:1202</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00047">remmina_ssh_plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a97876b0782030bdcba99839ba5e42f1a"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a">_RemminaProtocolSettingOpt::type</a></div><div class="ttdeci">RemminaProtocolSettingType type</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00048">remmina_ssh_plugin.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a4d4d2d1c3aff12f60831e0b03afcd4dc"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc">_RemminaProtocolSettingOpt::compact</a></div><div class="ttdeci">gboolean compact</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00051">remmina_ssh_plugin.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a4633900a166b397de7b8f276ac7e0fea"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea">_RemminaProtocolSettingOpt::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00049">remmina_ssh_plugin.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_opt_html_a783e0ee287289146050b45add2f6d867"><div class="ttname"><a href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867">_RemminaProtocolSettingOpt::opt2</a></div><div class="ttdeci">gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8h_source.html#l00053">remmina_ssh_plugin.h:53</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_a3e8e08f2a9b05530e85962f9b8c556e9"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9">remmina_ssh_plugin_popup_menu</a></div><div class="ttdeci">gboolean remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00478">remmina_ssh_plugin.c:478</a></div></div>
+<div class="ttc" id="remmina__ssh__plugin_8h_html_acb6514abadc6fcf387ef91e3c36bb146"><div class="ttname"><a href="remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146">remmina_plugin_ssh_vte_copy_clipboard</a></div><div class="ttdeci">void remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__ssh__plugin_8c_source.html#l00411">remmina_ssh_plugin.c:411</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__ssh__plugin_8h.html">remmina_ssh_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats_8c.html b/docs/remmina__stats_8c.html
new file mode 100644
index 000000000..8466efa6a
--- /dev/null
+++ b/docs/remmina__stats_8c.html
@@ -0,0 +1,539 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_stats.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Remmina usage statistics module.
+<a href="#details">More...</a></p>
+
+<p><a href="remmina__stats_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html">ProfilesData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac6adbf6560625e2bf54037fcd039319d"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats_get_uid</a> ()</td></tr>
+<tr class="separator:ac6adbf6560625e2bf54037fcd039319d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43133d5e00f481d315ef0d58cb52e70a"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats_get_os_info</a> ()</td></tr>
+<tr class="separator:a43133d5e00f481d315ef0d58cb52e70a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42f0554bf8eacb253a023d601cd59648"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats_get_user_env</a> ()</td></tr>
+<tr class="memdesc:a42f0554bf8eacb253a023d601cd59648"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the following user environment: <a href="#a42f0554bf8eacb253a023d601cd59648">More...</a><br /></td></tr>
+<tr class="separator:a42f0554bf8eacb253a023d601cd59648"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab248458a3face2634bab909ffeb8291e"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats_get_version</a> ()</td></tr>
+<tr class="separator:ab248458a3face2634bab909ffeb8291e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed3a8dd3e01a05d96d6cf3625bb28731"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats_get_gtk_version</a> ()</td></tr>
+<tr class="separator:aed3a8dd3e01a05d96d6cf3625bb28731"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73fbf1064af209f1f7272d737168971c"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats_get_gtk_backend</a> ()</td></tr>
+<tr class="separator:a73fbf1064af209f1f7272d737168971c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae596da7901fb3b45b7290a1d70b3ea3a"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats_get_wm_name</a> ()</td></tr>
+<tr class="separator:ae596da7901fb3b45b7290a1d70b3ea3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee2ea5acceb2fbc3aa4ff21d136c5734"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats_get_indicator</a> ()</td></tr>
+<tr class="separator:aee2ea5acceb2fbc3aa4ff21d136c5734"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dff2b06d5acefc9bd2f25508ab45328"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_profiles_get_data</a> (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</td></tr>
+<tr class="memdesc:a1dff2b06d5acefc9bd2f25508ab45328"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given a remmina file, fills a structure containing profiles keys/value tuples. <a href="#a1dff2b06d5acefc9bd2f25508ab45328">More...</a><br /></td></tr>
+<tr class="separator:a1dff2b06d5acefc9bd2f25508ab45328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65500d6b5d93cc7e3fc3d72329ff3847"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats_get_profiles</a> ()</td></tr>
+<tr class="memdesc:a65500d6b5d93cc7e3fc3d72329ff3847"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a json member profile_count with a child for each protocol used by the user. <a href="#a65500d6b5d93cc7e3fc3d72329ff3847">More...</a><br /></td></tr>
+<tr class="separator:a65500d6b5d93cc7e3fc3d72329ff3847"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe9ad8b63938e3486cf09ebbbe2e549c"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats_get_secret_plugin</a> ()</td></tr>
+<tr class="memdesc:afe9ad8b63938e3486cf09ebbbe2e549c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a json member ACTIVESECRETPLUGIN which shows the current secret plugin in use by remmina. <a href="#afe9ad8b63938e3486cf09ebbbe2e549c">More...</a><br /></td></tr>
+<tr class="separator:afe9ad8b63938e3486cf09ebbbe2e549c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc355028bb11bee06b5aab5b5ae16dd3"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats_get_master_password_status</a> ()</td></tr>
+<tr class="memdesc:abc355028bb11bee06b5aab5b5ae16dd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a json member HASMASTERPASSWORD which shows the status of the master password. <a href="#abc355028bb11bee06b5aab5b5ae16dd3">More...</a><br /></td></tr>
+<tr class="separator:abc355028bb11bee06b5aab5b5ae16dd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56956b7db0c631121151b19b920176da"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats_get_kiosk_mode</a> ()</td></tr>
+<tr class="memdesc:a56956b7db0c631121151b19b920176da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a json member KIOSK which shows the status of the kiosk. <a href="#a56956b7db0c631121151b19b920176da">More...</a><br /></td></tr>
+<tr class="separator:a56956b7db0c631121151b19b920176da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7398b36347e3621772776c466b565641"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats_get_all</a> ()</td></tr>
+<tr class="memdesc:a7398b36347e3621772776c466b565641"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all statistics in json format to send periodically to the PHP server. <a href="#a7398b36347e3621772776c466b565641">More...</a><br /></td></tr>
+<tr class="separator:a7398b36347e3621772776c466b565641"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Remmina usage statistics module. </p>
+<dl class="section author"><dt>Author</dt><dd>Antenore Gatta and Giovanni Panozzo </dd></dl>
+<dl class="section date"><dt>Date</dt><dd>12 Feb 2018</dd></dl>
+<p>When Remmina starts asks the user if she/he wants to share some usage statistics with the Remmina developers. As per the opt-in model (<a href="https://en.wikipedia.org/wiki/Opt-in_email">https://en.wikipedia.org/wiki/Opt-in_email</a>), without the consent of the user, none of these data will be collected. Additionally a user can asks, at any moment, that any data linked to his/her profiles to be deleted, and he/she can change the Remmina settings to stop collecting and sharing usage statistics.</p>
+<p>All the data are encrypted at client side using RSA, through the OpenSSL libraries, and decrypted offline to maximize security.</p>
+<p>The following example show which kind of data are collected.</p>
+<div class="fragment"><div class="line">{</div><div class="line"></div><div class="line"> <span class="stringliteral">&quot;UID&quot;</span>: <span class="stringliteral">&quot;P0M20TXN03DWF4-9a1e6da2ad&quot;</span></div><div class="line"> <span class="stringliteral">&quot;REMMINAVERSION&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;version&quot;</span>: <span class="stringliteral">&quot;1.2.0-rcgit-26&quot;</span></div><div class="line"> <span class="stringliteral">&quot;git_revision&quot;</span>: <span class="stringliteral">&quot;9c5c4805&quot;</span></div><div class="line"> <span class="stringliteral">&quot;snap_build&quot;</span>: 0</div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;SYSTEM&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;kernel_name&quot;</span>: <span class="stringliteral">&quot;Linux&quot;</span></div><div class="line"> <span class="stringliteral">&quot;kernel_release&quot;</span>: <span class="stringliteral">&quot;4.14.11-200.fc26.x86_64&quot;</span></div><div class="line"> <span class="stringliteral">&quot;kernel_arch&quot;</span>: <span class="stringliteral">&quot;x86_64&quot;</span></div><div class="line"> <span class="stringliteral">&quot;lsb_distributor&quot;</span>: <span class="stringliteral">&quot;Fedora&quot;</span></div><div class="line"> <span class="stringliteral">&quot;lsb_distro_description&quot;</span>: <span class="stringliteral">&quot;Fedora release 26 (Twenty Six)&quot;</span></div><div class="line"> <span class="stringliteral">&quot;lsb_distro_release&quot;</span>: <span class="stringliteral">&quot;26&quot;</span></div><div class="line"> <span class="stringliteral">&quot;lsb_distro_codename&quot;</span>: <span class="stringliteral">&quot;TwentySix&quot;</span></div><div class="line"> <span class="stringliteral">&quot;etc_release&quot;</span>: <span class="stringliteral">&quot;Fedora release 26 (Twenty Six)&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;GTKVERSION&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;major&quot;</span>: 3</div><div class="line"> <span class="stringliteral">&quot;minor&quot;</span>: 22</div><div class="line"> <span class="stringliteral">&quot;micro&quot;</span>: 21</div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;GTKBACKEND&quot;</span>: <span class="stringliteral">&quot;X11&quot;</span></div><div class="line"> <span class="stringliteral">&quot;WINDOWMANAGER&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;window_manager&quot;</span>: <span class="stringliteral">&quot;GNOME i3-gnome&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;APPINDICATOR&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;appindicator_supported&quot;</span>: 0</div><div class="line"> <span class="stringliteral">&quot;appindicator_compiled&quot;</span>: 1</div><div class="line"> <span class="stringliteral">&quot;icon_is_active&quot;</span>: 1</div><div class="line"> <span class="stringliteral">&quot;appindicator_type&quot;</span>: <span class="stringliteral">&quot;AppIndicator on GtkStatusIcon/xembed&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;PROFILES&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;profile_count&quot;</span>: 457</div><div class="line"> <span class="stringliteral">&quot;SSH&quot;</span>: 431</div><div class="line"> <span class="stringliteral">&quot;NX&quot;</span>: 1</div><div class="line"> <span class="stringliteral">&quot;RDP&quot;</span>: 7</div><div class="line"> <span class="stringliteral">&quot;TERMINAL&quot;</span>: 2</div><div class="line"> <span class="stringliteral">&quot;X2GO&quot;</span>: 5</div><div class="line"> <span class="stringliteral">&quot;SFTP&quot;</span>: 4</div><div class="line"> <span class="stringliteral">&quot;PYTHON_SIMPLE&quot;</span>: 4</div><div class="line"> <span class="stringliteral">&quot;SPICE&quot;</span>: 3</div><div class="line"> <span class="stringliteral">&quot;DATE_SSH&quot;</span>: <span class="stringliteral">&quot;20180209&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_NX&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_RDP&quot;</span>: <span class="stringliteral">&quot;20180208&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_TERMINAL&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_X2GO&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_SFTP&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_PYTHON_SIMPLE&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> <span class="stringliteral">&quot;DATE_SPICE&quot;</span>: <span class="stringliteral">&quot;&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;ENVIRONMENT&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;language&quot;</span>: <span class="stringliteral">&quot;en_US.utf8&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;ACTIVESECRETPLUGIN&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;plugin_name&quot;</span>: <span class="stringliteral">&quot;kwallet&quot;</span></div><div class="line"> }</div><div class="line"> <span class="stringliteral">&quot;HASMASTERPASSWORD&quot;</span>: {</div><div class="line"> <span class="stringliteral">&quot;master_password_status&quot;</span>: <span class="stringliteral">&quot;OFF&quot;</span></div><div class="line"> }</div><div class="line"></div><div class="line">}</div></div><!-- fragment --><p>All of these data are solely transmitted to understand:</p><ul>
+<li>On which type of system Remmina is used</li>
+<li>Operating System</li>
+<li>Architecture (32/64bit)</li>
+<li>Linux distributor or OS vendor</li>
+<li>Desktop Environment type.</li>
+<li>Main library versions installed on the system in use by Remmina.</li>
+<li>Protocols used</li>
+<li>Last time each protocol has been used (globally).</li>
+</ul>
+<dl class="section see"><dt>See also</dt><dd><a href="http://www.remmina.org/wp">http://www.remmina.org/wp</a> for more information. </dd></dl>
+
+<p class="definition">Definition in file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="a1dff2b06d5acefc9bd2f25508ab45328"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1dff2b06d5acefc9bd2f25508ab45328">&#9670;&nbsp;</a></span>remmina_profiles_get_data()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_profiles_get_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td>
+ <td class="paramname"><em>remminafile</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Given a remmina file, fills a structure containing profiles keys/value tuples. </p>
+<p>This is used as a callback function with remmina_file_manager_iterate. </p><dl class="todo"><dt><b><a class="el" href="todo.html#_todo000014">Todo:</a></b></dt><dd>Move this in a separate file. </dd></dl>
+<p>Source date -&gt; from profile</p>
+<p>Destination date -&gt; The date in the pdata structure</p>
+<p>When both date in the hash and in the profile are valid we compare the date</p>
+<p>If the date in the hash less than the date in the profile, we take the latter</p>
+<p>If the date in the profile is NOT valid and the date in the hash is valid we keep the latter</p>
+<p>If the date in the hash is NOT valid and the date in the profile is valid we keep the latter</p>
+<p>If both date are NULL, we insert NULL for that protocol</p>
+<p>If there is not the protocol in the hash, we add it</p>
+<p>If the date in the profile is not NULL we use it</p>
+<p>Otherwise we set it to NULL </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00551">551</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a7398b36347e3621772776c466b565641"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7398b36347e3621772776c466b565641">&#9670;&nbsp;</a></span>remmina_stats_get_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_all </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get all statistics in json format to send periodically to the PHP server. </p>
+<p>The caller should free the returned buffer with g_free() </p><dl class="section warning"><dt>Warning</dt><dd>This function is usually executed on a dedicated thread, not on the main thread. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to the JSON string. </dd></dl>
+<p>The section ENVIRONMENT collect all the user’s environment related settings.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00848">848</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a73fbf1064af209f1f7272d737168971c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73fbf1064af209f1f7272d737168971c">&#9670;&nbsp;</a></span>remmina_stats_get_gtk_backend()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_gtk_backend </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread</dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00421">421</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="aed3a8dd3e01a05d96d6cf3625bb28731"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed3a8dd3e01a05d96d6cf3625bb28731">&#9670;&nbsp;</a></span>remmina_stats_get_gtk_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_gtk_version </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread</dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00396">396</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="aee2ea5acceb2fbc3aa4ff21d136c5734"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee2ea5acceb2fbc3aa4ff21d136c5734">&#9670;&nbsp;</a></span>remmina_stats_get_indicator()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_indicator </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>Support for StatusNotifier or AppIndicator</p>
+<p>StatusNotifier/Appindicator supported by desktop</p>
+<p>libappindicator is compiled in remmina.</p>
+<p>Remmina not compiled with -DWITH_APPINDICATOR=on</p>
+<p>StatusNotifier/Appindicator NOT supported by desktop</p>
+<p>Remmina icon is active</p>
+<p>libappindicator fallback to GtkStatusIcon/xembed");</p>
+<p>Remmina fallback to GtkStatusIcon/xembed</p>
+<p>Remmina icon is NOT active </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00497">497</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a56956b7db0c631121151b19b920176da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56956b7db0c631121151b19b920176da">&#9670;&nbsp;</a></span>remmina_stats_get_kiosk_mode()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_kiosk_mode </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a json member KIOSK which shows the status of the kiosk. </p>
+<dl class="section return"><dt>Returns</dt><dd>a Json Node structure containing the status of the master password </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00815">815</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="abc355028bb11bee06b5aab5b5ae16dd3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abc355028bb11bee06b5aab5b5ae16dd3">&#9670;&nbsp;</a></span>remmina_stats_get_master_password_status()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_master_password_status </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a json member HASMASTERPASSWORD which shows the status of the master password. </p>
+<dl class="section return"><dt>Returns</dt><dd>a Json Node structure containing the status of the master password </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00785">785</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a43133d5e00f481d315ef0d58cb52e70a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43133d5e00f481d315ef0d58cb52e70a">&#9670;&nbsp;</a></span>remmina_stats_get_os_info()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_os_info </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread</dd></dl>
+<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000013">Todo:</a></b></dt><dd>Add other means to identify a release name/description to cover as much OS as possible, like /etc/issue </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00213">213</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a65500d6b5d93cc7e3fc3d72329ff3847"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65500d6b5d93cc7e3fc3d72329ff3847">&#9670;&nbsp;</a></span>remmina_stats_get_profiles()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_profiles </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a json member profile_count with a child for each protocol used by the user. </p>
+<p>Count how many profiles are in use and for each protocol in use counts of how many profiles that uses such protocol.</p>
+<p>The data can be expressed as follows:</p>
+<table class="doxtable">
+<tr>
+<th align="left">PROTO </th><th align="right">PROF COUNT </th></tr>
+<tr>
+<td align="left">RDP </td><td align="right">2560 </td></tr>
+<tr>
+<td align="left">SPICE </td><td align="right">334 </td></tr>
+<tr>
+<td align="left">SSH </td><td align="right">1540 </td></tr>
+<tr>
+<td align="left">VNC </td><td align="right">2 </td></tr>
+</table>
+<table class="doxtable">
+<tr>
+<th align="left">PROTO </th><th align="right">LAST USED </th></tr>
+<tr>
+<td align="left">RDP </td><td align="right">20180129 </td></tr>
+<tr>
+<td align="left">SPICE </td><td align="right">20171122 </td></tr>
+<tr>
+<td align="left">SSH </td><td align="right">20180111 </td></tr>
+</table>
+<dl class="section return"><dt>Returns</dt><dd>a Json Node structure containing the protocol usage statistics. </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00684">684</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="afe9ad8b63938e3486cf09ebbbe2e549c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe9ad8b63938e3486cf09ebbbe2e549c">&#9670;&nbsp;</a></span>remmina_stats_get_secret_plugin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_secret_plugin </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a json member ACTIVESECRETPLUGIN which shows the current secret plugin in use by remmina. </p>
+<dl class="section return"><dt>Returns</dt><dd>a Json Node structure containing the secret plugin in use </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00756">756</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="ac6adbf6560625e2bf54037fcd039319d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6adbf6560625e2bf54037fcd039319d">&#9670;&nbsp;</a></span>remmina_stats_get_uid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_uid </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread</dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00171">171</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a42f0554bf8eacb253a023d601cd59648"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42f0554bf8eacb253a023d601cd59648">&#9670;&nbsp;</a></span>remmina_stats_get_user_env()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_user_env </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Gets the following user environment: </p>
+<ul>
+<li>Gets the user’s locale (or NULL by default) corresponding to LC_ALL.</li>
+</ul>
+<dl class="section return"><dt>Returns</dt><dd>a Json Node structure containing the user’s environment. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00331">331</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="ab248458a3face2634bab909ffeb8291e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab248458a3face2634bab909ffeb8291e">&#9670;&nbsp;</a></span>remmina_stats_get_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_version </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<dl class="section warning"><dt>Warning</dt><dd>this function is usually executed on a dedicated thread, not on the main thread</dd></dl>
+<p>Detect if we are running under Flatpak</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00354">354</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="ae596da7901fb3b45b7290a1d70b3ea3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae596da7901fb3b45b7290a1d70b3ea3a">&#9670;&nbsp;</a></span>remmina_stats_get_wm_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* remmina_stats_get_wm_name </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<p>We try to get the Gnome SHELL version</p>
+<p>When everything else fails with set the WM name to NULL </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00453">453</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats_8c.html">remmina_stats.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats_8c.js b/docs/remmina__stats_8c.js
new file mode 100644
index 000000000..451471ba5
--- /dev/null
+++ b/docs/remmina__stats_8c.js
@@ -0,0 +1,18 @@
+var remmina__stats_8c =
+[
+ [ "ProfilesData", "struct_profiles_data.html", "struct_profiles_data" ],
+ [ "remmina_profiles_get_data", "remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328", null ],
+ [ "remmina_stats_get_all", "remmina__stats_8c.html#a7398b36347e3621772776c466b565641", null ],
+ [ "remmina_stats_get_gtk_backend", "remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c", null ],
+ [ "remmina_stats_get_gtk_version", "remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731", null ],
+ [ "remmina_stats_get_indicator", "remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734", null ],
+ [ "remmina_stats_get_kiosk_mode", "remmina__stats_8c.html#a56956b7db0c631121151b19b920176da", null ],
+ [ "remmina_stats_get_master_password_status", "remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3", null ],
+ [ "remmina_stats_get_os_info", "remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a", null ],
+ [ "remmina_stats_get_profiles", "remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847", null ],
+ [ "remmina_stats_get_secret_plugin", "remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c", null ],
+ [ "remmina_stats_get_uid", "remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d", null ],
+ [ "remmina_stats_get_user_env", "remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648", null ],
+ [ "remmina_stats_get_version", "remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e", null ],
+ [ "remmina_stats_get_wm_name", "remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__stats_8c_source.html b/docs/remmina__stats_8c_source.html
new file mode 100644
index 000000000..28d831911
--- /dev/null
+++ b/docs/remmina__stats_8c_source.html
@@ -0,0 +1,160 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_stats.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__stats_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor">#include &lt;sys/utsname.h&gt;</span></div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></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;<span class="preprocessor">#include &quot;<a class="code" href="remmina_8h.html">remmina.h</a>&quot;</span></div><div class="line"><a name="l00144"></a><span class="lineno"> 144</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="l00145"></a><span class="lineno"> 145</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="l00146"></a><span class="lineno"> 146</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="l00147"></a><span class="lineno"> 147</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="l00148"></a><span class="lineno"> 148</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="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a>&quot;</span></div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__utils_8h.html">remmina_utils.h</a>&quot;</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</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="l00152"></a><span class="lineno"> 152</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="l00153"></a><span class="lineno"> 153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_WAYLAND</span></div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor"> #include &lt;gdk/gdkwayland.h&gt;</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor"> #include &lt;gdk/gdkx.h&gt;</span></div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__stats_8h.html">remmina_stats.h</a>&quot;</span></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"><a class="line" href="struct_profiles_data.html"> 162</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct_profiles_data.html">ProfilesData</a> {</div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef"> 163</a></span>&#160; GHashTable *<a class="code" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956"> 164</a></span>&#160; GHashTable *<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a"> 165</a></span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>; </div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4"> 166</a></span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>; </div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680"> 167</a></span>&#160; gint <a class="code" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">pcount</a>;</div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b"> 168</a></span>&#160; gchar <a class="code" href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b">datestr</a>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;};</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d"> 171</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats_get_uid</a>()</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;{</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; JsonNode *r;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; GChecksum *chs;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">const</span> gchar *uname, *hname;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keyword">const</span> gchar *uid_suffix;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; gchar *uid_prefix;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; gchar *uid;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</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#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> == NULL || <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>[0] == 0) {</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="comment">/* Generate a new UUID_PREFIX for this installation */</span></div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; uid_prefix = <a class="code" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a>();</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</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#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>)</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> = uid_prefix;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; uname = g_get_user_name();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; hname = g_get_host_name();</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; chs = g_checksum_new(G_CHECKSUM_SHA256);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; g_checksum_update(chs, (<span class="keyword">const</span> guchar*)uname, strlen(uname));</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; g_checksum_update(chs, (<span class="keyword">const</span> guchar*)hname, strlen(hname));</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; uid_suffix = g_checksum_get_string(chs);</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; uid = g_strdup_printf(<span class="stringliteral">&quot;%s-%.10s&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>, uid_suffix);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; g_checksum_free(chs);</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; r = json_node_alloc();</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; json_node_init_string(r, uid);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; g_free(uid);</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; <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</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;</div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a"> 213</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats_get_os_info</a>()</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;{</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; JsonNode *r;</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; gchar *kernel_name;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gchar *kernel_release;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; gchar *kernel_arch;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; gchar *id;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; gchar *description;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; GHashTable *etc_release;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gchar *release;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; gchar *codename;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; GHashTableIter iter;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gchar *key, *value;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;kernel_name&quot;</span>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; kernel_name = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, <a class="code" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a>());</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">if</span> (!kernel_name || kernel_name[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; json_builder_add_string_value(b, kernel_name);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; g_free(kernel_name);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;kernel_release&quot;</span>);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; kernel_release = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, <a class="code" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a>());</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">if</span> (!kernel_release || kernel_release[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; json_builder_add_string_value(b, kernel_release);</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; g_free(kernel_release);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;kernel_arch&quot;</span>);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; kernel_arch = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, <a class="code" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a>());</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (!kernel_arch || kernel_arch[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; json_builder_add_string_value(b, kernel_arch);</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; g_free(kernel_arch);</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; json_builder_set_member_name(b, <span class="stringliteral">&quot;lsb_distributor&quot;</span>);</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordtype">id</span> = <a class="code" href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a>();</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <span class="keywordflow">if</span> (!<span class="keywordtype">id</span> || <span class="keywordtype">id</span>[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; json_builder_add_string_value(b, <span class="keywordtype">id</span>);</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; g_free(<span class="keywordtype">id</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"> 272</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;lsb_distro_description&quot;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; description = <a class="code" href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a>();</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordflow">if</span> (!description || description[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; json_builder_add_string_value(b, description);</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; g_free(description);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;lsb_distro_release&quot;</span>);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; release = <a class="code" href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a>();</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (!release || release[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; json_builder_add_null_value(b);</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; json_builder_add_string_value(b, release);</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_free(release);</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;lsb_distro_codename&quot;</span>);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; codename = <a class="code" href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a>();</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">if</span> (!codename || codename[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; json_builder_add_null_value(b);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; json_builder_add_string_value(b, codename);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; g_free(codename);</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; etc_release = <a class="code" href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a>();</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;etc_release&quot;</span>);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">if</span> (etc_release) {</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; g_hash_table_iter_init (&amp;iter, etc_release);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next (&amp;iter, (gpointer)&amp;key, (gpointer)&amp;value)) {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; json_builder_set_member_name(b, key);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; json_builder_add_string_value(b, value);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; g_hash_table_remove_all(etc_release);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; g_hash_table_unref(etc_release);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; json_builder_add_null_value(b);</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;</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">return</span> r;</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;</div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648"> 331</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats_get_user_env</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; JsonNode *r;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; gchar *language;</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; language = <a class="code" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a>();</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;language&quot;</span>);</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; json_builder_add_string_value(b, language);</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">return</span> r;</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;}</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"><a class="line" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e"> 354</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats_get_version</a>()</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;{</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; JsonNode *r;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; gchar *flatpak_info;</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;version&quot;</span>);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; json_builder_add_string_value(b, VERSION);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;git_revision&quot;</span>);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; json_builder_add_string_value(b, REMMINA_GIT_REVISION);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;snap_build&quot;</span>);</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="preprocessor">#ifdef SNAP_BUILD</span></div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; json_builder_add_int_value(b, 0);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;flatpak_build&quot;</span>);</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="comment">/* Flatpak sandbox should contain the file ${XDG_RUNTIME_DIR}/flatpak-info */</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; flatpak_info = g_build_filename(g_get_user_runtime_dir(), <span class="stringliteral">&quot;flatpak-info&quot;</span>, NULL);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">if</span> (g_file_test(flatpak_info, G_FILE_TEST_EXISTS)) {</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; json_builder_add_int_value(b, 0);</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; g_free(flatpak_info);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">return</span> r;</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;</div><div class="line"><a name="l00396"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731"> 396</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats_get_gtk_version</a>()</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;{</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; JsonNode *r;</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;major&quot;</span>);</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; json_builder_add_int_value(b, gtk_get_major_version());</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;minor&quot;</span>);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; json_builder_add_int_value(b, gtk_get_minor_version());</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;micro&quot;</span>);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; json_builder_add_int_value(b, gtk_get_micro_version());</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">return</span> r;</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;}</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c"> 421</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats_get_gtk_backend</a>()</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;{</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; JsonNode *r;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; GdkDisplay *disp;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; gchar *bkend;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; disp = gdk_display_get_default();</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_WAYLAND</span></div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (GDK_IS_WAYLAND_DISPLAY(disp)) {</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; bkend = <span class="stringliteral">&quot;Wayland&quot;</span>;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; }<span class="keywordflow">else</span></div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;<span class="preprocessor">#ifdef GDK_WINDOWING_X11</span></div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keywordflow">if</span> (GDK_IS_X11_DISPLAY(disp)) {</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; bkend = <span class="stringliteral">&quot;X11&quot;</span>;</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; bkend = <span class="stringliteral">&quot;n/a&quot;</span>;</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"> 446</span>&#160; r = json_node_alloc();</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; json_node_init_string(r, bkend);</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keywordflow">return</span> r;</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;}</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"><a class="line" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a"> 453</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats_get_wm_name</a>()</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"> 455</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; JsonNode *r;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gchar *wmver;</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gchar *wmname;</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;window_manager&quot;</span>);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; wmver = <a class="code" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a>();</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keywordflow">if</span> (!wmver || wmver[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Gnome Shell not found&quot;</span>);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Gnome Shell version: %s\n&quot;</span>, wmver);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;Gnome Shell&quot;</span>);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;gnome_shell_ver&quot;</span>);</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; json_builder_add_string_value(b, wmver);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">goto</span> end;</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; g_free(wmver);</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; wmname = <a class="code" href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo_get_wm_name</a>();</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">if</span> (!wmname || wmname[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Cannot determine the Window Manger name&quot;</span>);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;n/a&quot;</span>);</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;Window Manger names %s&quot;</span>, wmname);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; json_builder_add_string_value(b, wmname);</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; }</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; g_free(wmname);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; end:</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">return</span> r;</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;</div><div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734"> 497</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats_get_indicator</a>()</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;{</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; JsonNode *r;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; gboolean sni; </div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; json_builder_begin_object(b);</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; json_builder_set_member_name(b, <span class="stringliteral">&quot;appindicator_supported&quot;</span>);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; sni = <a class="code" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a>();</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordflow">if</span> (sni) {</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;appindicator_compiled&quot;</span>);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</span></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"> 515</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; json_builder_add_int_value(b, 0);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; }</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; json_builder_add_int_value(b, 0);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;icon_is_active&quot;</span>);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6">remmina_icon_is_available</a>()) {</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;appindicator_type&quot;</span>);</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="preprocessor">#ifdef HAVE_LIBAPPINDICATOR</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; json_builder_add_string_value(b, <span class="stringliteral">&quot;AppIndicator on GtkStatusIcon/xembed&quot;</span>);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;Remmina icon on GtkStatusIcon/xembed&quot;</span>);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; json_builder_add_int_value(b, 0);</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; }</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;}</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328"> 551</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_profiles_get_data</a>(<a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, gpointer user_data)</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;{</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; gint count = 0;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; gpointer <a class="code" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">pcount</a>, kpo;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; gpointer pdate, kdo;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; gchar *hday, *hmonth, *hyear;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; gchar *pday, *pmonth, *pyear;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; GDateTime *prof_gdate; </div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; GDateTime *pdata_gdate; </div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <span class="keyword">struct </span><a class="code" href="struct_profiles_data.html">ProfilesData</a>* pdata;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; pdata = (<span class="keyword">struct </span><a class="code" href="struct_profiles_data.html">ProfilesData</a>*)user_data;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</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="l00568"></a><span class="lineno"> 568</span>&#160; <span class="comment">//pdata-&gt;pdatestr = remmina_file_get_string(remminafile, &quot;last_success&quot;);</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keyword">const</span> gchar *last_success = <a class="code" href="remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e">remmina_file_get_string</a>(remminafile, <span class="stringliteral">&quot;last_success&quot;</span>);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; g_debug(<span class="stringliteral">&quot;%s date %s&quot;</span>, pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>, last_success);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; prof_gdate = pdata_gdate = NULL;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keywordflow">if</span> (last_success &amp;&amp; last_success[0] != <span class="charliteral">&#39;\0&#39;</span> &amp;&amp; strlen(last_success) &gt;= 6) {</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; pyear = g_strdup_printf(<span class="stringliteral">&quot;%.4s&quot;</span>, last_success);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; pmonth = g_strdup_printf(<span class="stringliteral">&quot;%.2s&quot;</span>, last_success + 4);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; pday = g_strdup_printf(<span class="stringliteral">&quot;%.2s&quot;</span>, last_success + 6);</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; prof_gdate = g_date_time_new_local(</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; atoi(pyear),</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; atoi(pmonth),</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; atoi(pday), 0, 0, 0);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; g_free(pyear);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; g_free(pmonth);</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; g_free(pday);</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;</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">if</span> (pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a> &amp;&amp; pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>[0] != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">if</span> (g_hash_table_lookup_extended(pdata-&gt;<a class="code" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a>, pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>, &amp;kpo, &amp;pcount)) {</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; count = GPOINTER_TO_INT(pcount) + 1;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; count = 1;</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; g_hash_table_insert(pdata-&gt;<a class="code" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), GINT_TO_POINTER(count));</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; }</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), GINT_TO_POINTER(count));</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; pdate = NULL;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">if</span> (g_hash_table_lookup_extended(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>, &amp;kdo, &amp;pdate)) {</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; pdata_gdate = NULL;</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">if</span> (pdate &amp;&amp; strlen(pdate) &gt;= 6) {</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a> = g_strdup(pdate);</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; hyear = g_strdup_printf(<span class="stringliteral">&quot;%.4s&quot;</span>, (<span class="keywordtype">char</span>*)pdate);</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; hmonth = g_strdup_printf(<span class="stringliteral">&quot;%.2s&quot;</span>, (<span class="keywordtype">char</span>*)pdate + 4);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; hday = g_strdup_printf(<span class="stringliteral">&quot;%.2s&quot;</span>, (<span class="keywordtype">char</span>*)pdate + 6);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; pdata_gdate = g_date_time_new_local(</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; atoi(hyear),</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; atoi(hmonth),</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; atoi(hday), 0, 0, 0);</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; g_free(hyear);</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; g_free(hmonth);</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; g_free(hday);</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; }</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="keywordflow">if</span> (prof_gdate != NULL &amp;&amp; pdata_gdate != NULL ) {</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; g_debug(<span class="stringliteral">&quot;Comparing dates&quot;</span>);</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; gint res = g_date_time_compare( pdata_gdate, prof_gdate );</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">if</span> (res &lt; 0 ) {</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; g_debug(<span class="stringliteral">&quot;hash date is less than profile date. Replacing date in the hashtable&quot;</span>);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), g_strdup(last_success));</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; g_debug(<span class="stringliteral">&quot;profile date is less than hash date. Replacing date in the hashtable&quot;</span>);</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>));</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; }</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; }</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">if</span> (prof_gdate == NULL &amp;&amp; pdata_gdate != NULL) {</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; g_debug(<span class="stringliteral">&quot;prof_gdate is NULL, replacing date in the hashtable&quot;</span>);</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>));</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; }</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keywordflow">if</span> (prof_gdate != NULL &amp;&amp; pdata_gdate == NULL) {</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; g_debug(<span class="stringliteral">&quot;pdata_gdate is NULL, replacing date in the hashtable&quot;</span>);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), g_strdup(last_success));</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; }</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <span class="keywordflow">if</span> ((prof_gdate == NULL &amp;&amp; pdata_gdate == NULL) &amp;&amp; pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>) {</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; g_debug(<span class="stringliteral">&quot;All dates are NULL, replacing date in the hashtable&quot;</span>);</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), NULL);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; }</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordflow">if</span> (pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>) {</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>));</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; g_hash_table_replace(pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a>, g_strdup(pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>), NULL);</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; }</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; }</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; }</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; g_debug(<span class="stringliteral">&quot;pdata set to %s protocol with last_success to %s&quot;</span>, pdata-&gt;<a class="code" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a>, pdata-&gt;<a class="code" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a>);</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; <span class="keywordflow">if</span> (pdata_gdate)</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; g_date_time_unref(pdata_gdate);</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keywordflow">if</span> (prof_gdate)</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; g_date_time_unref(prof_gdate);</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;}</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;</div><div class="line"><a name="l00684"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847"> 684</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats_get_profiles</a>()</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;{</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; TRACE_CALL(__func__);</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; JsonBuilder *b;</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; JsonNode *r;</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; gchar *s;</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; gint profiles_count;</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; GHashTableIter pcountiter, pdateiter;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; gpointer pcountkey, pcountvalue;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; gpointer pdatekey, pdatevalue;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; <span class="keyword">struct </span><a class="code" href="struct_profiles_data.html">ProfilesData</a> *pdata;</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; pdata = g_malloc0(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="struct_profiles_data.html">ProfilesData</a>));</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;profile_count&quot;</span>);</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; pdata-&gt;<a class="code" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a> = g_hash_table_new_full(g_str_hash, g_str_equal,</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; (GDestroyNotify)g_free, (GDestroyNotify)g_free);</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; pdata-&gt;<a class="code" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a> = g_hash_table_new_full(g_str_hash, g_str_equal,</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; (GDestroyNotify)g_free, NULL);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; profiles_count = <a class="code" href="remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a">remmina_file_manager_iterate</a>(</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; (GFunc)<a class="code" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_profiles_get_data</a>,</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; (gpointer)pdata);</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; g_debug(<span class="stringliteral">&quot;Number of profiles: %d&quot;</span>, profiles_count);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; json_builder_add_int_value(b, profiles_count);</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; g_hash_table_iter_init(&amp;pcountiter, pdata-&gt;proto_count);</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;pcountiter, &amp;pcountkey, &amp;pcountvalue)) {</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; json_builder_set_member_name(b, (gchar*)pcountkey);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; json_builder_add_int_value(b, GPOINTER_TO_INT(pcountvalue));</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; }</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; g_hash_table_iter_init(&amp;pdateiter, pdata-&gt;proto_date);</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;pdateiter, &amp;pdatekey, &amp;pdatevalue)) {</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;DATE_%s&quot;</span>, (gchar*)pdatekey);</div><div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; g_debug(<span class="stringliteral">&quot;Protocol date label: %s&quot;</span>, s);</div><div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; json_builder_set_member_name(b, s);</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; g_free(s);</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; json_builder_add_string_value(b, (gchar*)pdatevalue);</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; g_debug(<span class="stringliteral">&quot;Protocol date: %s&quot;</span>, (gchar*)pdatevalue);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; }</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; g_object_unref(b);</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; g_hash_table_remove_all(pdata-&gt;proto_date);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; g_hash_table_unref(pdata-&gt;proto_date);</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; g_hash_table_remove_all(pdata-&gt;proto_count);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; g_hash_table_unref(pdata-&gt;proto_count);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; g_free(pdata);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="keywordflow">return</span> r;</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;</div><div class="line"><a name="l00756"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c"> 756</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats_get_secret_plugin</a>()</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;{</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; TRACE_CALL(__func__);</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; JsonBuilder *b;</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; JsonNode *r;</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <a class="code" href="struct___remmina_secret_plugin.html">RemminaSecretPlugin</a> *secret_plugin;</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; 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="l00764"></a><span class="lineno"> 764</span>&#160;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; json_builder_begin_object(b);</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"> 768</span>&#160; <span class="keywordflow">if</span> (secret_plugin &amp;&amp; secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a>) {</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;plugin_name&quot;</span>);</div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; json_builder_add_string_value(b, secret_plugin-&gt;<a class="code" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">name</a>);</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; json_builder_end_object(b);</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;}</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;</div><div class="line"><a name="l00785"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3"> 785</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats_get_master_password_status</a>()</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160;{</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; JsonNode *r;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; json_builder_begin_object(b);</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; json_builder_set_member_name(b, <span class="stringliteral">&quot;master_password_status&quot;</span>);</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</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_master_password&quot;</span>)) {</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;ON&quot;</span>);</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;OFF&quot;</span>);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; }</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; json_builder_end_object(b);</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160;</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;}</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160;</div><div class="line"><a name="l00815"></a><span class="lineno"><a class="line" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da"> 815</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats_get_kiosk_mode</a>()</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160;{</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; TRACE_CALL(__func__);</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; JsonBuilder *b;</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; JsonNode *r;</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160;</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; json_builder_begin_object(b);</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; json_builder_set_member_name(b, <span class="stringliteral">&quot;kiosk_status&quot;</span>);</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</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="l00827"></a><span class="lineno"> 827</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;OFF&quot;</span>);</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; json_builder_add_string_value(b, <span class="stringliteral">&quot;ON&quot;</span>);</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; }</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; r = json_builder_get_root(b);</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160;</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; <span class="keywordflow">return</span> r;</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;}</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160;</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160;</div><div class="line"><a name="l00848"></a><span class="lineno"><a class="line" href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae"> 848</a></span>&#160;JsonNode *<a class="code" href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats_get_all</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; JsonNode *n;</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; b = json_builder_new();</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; n = <a class="code" href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats_get_uid</a>();</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;UID&quot;</span>);</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; n = <a class="code" href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats_get_version</a>();</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;REMMINAVERSION&quot;</span>);</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; n = <a class="code" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats_get_os_info</a>();</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;SYSTEM&quot;</span>);</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160;</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; n = <a class="code" href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats_get_user_env</a>();</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;ENVIRONMENT&quot;</span>);</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160;</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; n = <a class="code" href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats_get_gtk_version</a>();</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;GTKVERSION&quot;</span>);</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; json_builder_add_value(b, n);</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"> 881</span>&#160; n = <a class="code" href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats_get_gtk_backend</a>();</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;GTKBACKEND&quot;</span>);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160; n = <a class="code" href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats_get_wm_name</a>();</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;WINDOWMANAGER&quot;</span>);</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160;</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; n = <a class="code" href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats_get_indicator</a>();</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;APPINDICATOR&quot;</span>);</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; json_builder_add_value(b, n);</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; n = <a class="code" href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats_get_profiles</a>();</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;PROFILES&quot;</span>);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160; n = <a class="code" href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats_get_secret_plugin</a>();</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;ACTIVESECRETPLUGIN&quot;</span>);</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; n = <a class="code" href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats_get_master_password_status</a>();</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;HASMASTERPASSWORD&quot;</span>);</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160; json_builder_add_value(b, n);</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160; n = <a class="code" href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats_get_kiosk_mode</a>();</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;KIOSK&quot;</span>);</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>&#160; json_builder_add_value(b, n);</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"> 910</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160; n = json_builder_get_root(b);</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160; g_object_unref(b);</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;</div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; <span class="keywordflow">return</span> n;</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;}</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__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#l00449">remmina_file.c:449</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_ac6adbf6560625e2bf54037fcd039319d"><div class="ttname"><a href="remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d">remmina_stats_get_uid</a></div><div class="ttdeci">JsonNode * remmina_stats_get_uid()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00171">remmina_stats.c:171</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_a7d3134f43d61603be7b021e62305633a"><div class="ttname"><a href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">ProfilesData::protocol</a></div><div class="ttdeci">const gchar * protocol</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00165">remmina_stats.c:165</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="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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a42f0554bf8eacb253a023d601cd59648"><div class="ttname"><a href="remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648">remmina_stats_get_user_env</a></div><div class="ttdeci">JsonNode * remmina_stats_get_user_env()</div><div class="ttdoc">Gets the following user environment: </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00331">remmina_stats.c:331</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_a16267e0d71d796422278afdeba50c13b"><div class="ttname"><a href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b">ProfilesData::datestr</a></div><div class="ttdeci">gchar datestr</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00168">remmina_stats.c:168</a></div></div>
+<div class="ttc" id="struct_profiles_data_html"><div class="ttname"><a href="struct_profiles_data.html">ProfilesData</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00162">remmina_stats.c:162</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</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#l00527">remmina_plugin_manager.c:527</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_afc9e80a1835d8ec7e84ee74b82a0d680"><div class="ttname"><a href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">ProfilesData::pcount</a></div><div class="ttdeci">gint pcount</div><div class="ttdoc">Date in string format in the proto_date hash table. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00167">remmina_stats.c:167</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_af82cb4649acce0ce21aefca9eb6430ef"><div class="ttname"><a href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">ProfilesData::proto_count</a></div><div class="ttdeci">GHashTable * proto_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00163">remmina_stats.c:163</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a2b4dbb0da7c8ba4bd86877097b85d10c"><div class="ttname"><a href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_codename()</div><div class="ttdoc">Print the Distribution codename as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00389">remmina_utils.c:389</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#l00376">remmina_icon.c:376</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a519a411cb2091da2176258d87bcea6d4"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">_RemminaSecretPlugin::is_service_available</a></div><div class="ttdeci">gboolean(* is_service_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00138">plugin.h:138</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_aa768b6fe171695d212da4c6eaf74cf22"><div class="ttname"><a href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_id()</div><div class="ttdoc">Print the Distributor as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00341">remmina_utils.c:341</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_abfc722d07d9936711794411bfbed0522"><div class="ttname"><a href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_name()</div><div class="ttdoc">Return the OS name as in &quot;uname -s&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00308">remmina_utils.c:308</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_afe9ad8b63938e3486cf09ebbbe2e549c"><div class="ttname"><a href="remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c">remmina_stats_get_secret_plugin</a></div><div class="ttdeci">JsonNode * remmina_stats_get_secret_plugin()</div><div class="ttdoc">Add a json member ACTIVESECRETPLUGIN which shows the current secret plugin in use by remmina...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00756">remmina_stats.c:756</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a57603aa88df56e77e1a6de0f215f21aa"><div class="ttname"><a href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_release()</div><div class="ttdoc">Return the OS version as in &quot;uname -r&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00315">remmina_utils.c:315</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#l00129">plugin.h:129</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_aed3a8dd3e01a05d96d6cf3625bb28731"><div class="ttname"><a href="remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731">remmina_stats_get_gtk_version</a></div><div class="ttdeci">JsonNode * remmina_stats_get_gtk_version()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00396">remmina_stats.c:396</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_abc355028bb11bee06b5aab5b5ae16dd3"><div class="ttname"><a href="remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3">remmina_stats_get_master_password_status</a></div><div class="ttdeci">JsonNode * remmina_stats_get_master_password_status()</div><div class="ttdoc">Add a json member HASMASTERPASSWORD which shows the status of the master password. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00785">remmina_stats.c:785</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a43133d5e00f481d315ef0d58cb52e70a"><div class="ttname"><a href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats_get_os_info</a></div><div class="ttdeci">JsonNode * remmina_stats_get_os_info()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00213">remmina_stats.c:213</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html"><div class="ttname"><a href="remmina__utils_8h.html">remmina_utils.h</a></div><div class="ttdoc">General utility functions, non-GTK related. </div></div>
+<div class="ttc" id="remmina__utils_8c_html_a5ee50df5d7585d229a154a712c9161ca"><div class="ttname"><a href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_release()</div><div class="ttdoc">Print the Distribution release name as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00375">remmina_utils.c:375</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__utils_8c_html_a483959ec642cece17e1b79506e71b00e"><div class="ttname"><a href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a></div><div class="ttdeci">gchar * remmina_gen_random_uuid()</div><div class="ttdoc">Generate a random sting of chars to be used as part of UID for news or stats. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00510">remmina_utils.c:510</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_pref_html_affa1d02e2b0d9f6fc7b006fd74a52ad7"><div class="ttname"><a href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref::periodic_usage_stats_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_usage_stats_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00202">remmina_pref.h:202</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a0f10e190a6dd212fcb0cf36ce81c8324"><div class="ttname"><a href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a></div><div class="ttdeci">gchar * remmina_utils_get_lang()</div><div class="ttdoc">Return the current language defined in the LC_ALL. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00288">remmina_utils.c:288</a></div></div>
+<div class="ttc" id="struct___remmina_secret_plugin_html_a197b28d8b71ccb0c91ce8bf27690968a"><div class="ttname"><a href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">_RemminaSecretPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00131">plugin.h:131</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_ac00cb21c5cb5efcf7afc6eeae2147a75"><div class="ttname"><a href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_description()</div><div class="ttdoc">Print the Distribution description as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00355">remmina_utils.c:355</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_a79fd36823613c320001f0cdd2a97490f"><div class="ttname"><a href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_gnome_shell_version()</div><div class="ttdoc">Query DBUS to get gnome shell version. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00087">remmina_sysinfo.c:87</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a73fbf1064af209f1f7272d737168971c"><div class="ttname"><a href="remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c">remmina_stats_get_gtk_backend</a></div><div class="ttdeci">JsonNode * remmina_stats_get_gtk_backend()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00421">remmina_stats.c:421</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#l01057">remmina_pref.c:1057</a></div></div>
+<div class="ttc" id="remmina__stats_8h_html"><div class="ttname"><a href="remmina__stats_8h.html">remmina_stats.h</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a65500d6b5d93cc7e3fc3d72329ff3847"><div class="ttname"><a href="remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847">remmina_stats_get_profiles</a></div><div class="ttdeci">JsonNode * remmina_stats_get_profiles()</div><div class="ttdoc">Add a json member profile_count with a child for each protocol used by the user. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00684">remmina_stats.c:684</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a1dff2b06d5acefc9bd2f25508ab45328"><div class="ttname"><a href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_profiles_get_data</a></div><div class="ttdeci">static void remmina_profiles_get_data(RemminaFile *remminafile, gpointer user_data)</div><div class="ttdoc">Given a remmina file, fills a structure containing profiles keys/value tuples. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00551">remmina_stats.c:551</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a7398b36347e3621772776c466b565641"><div class="ttname"><a href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats_get_all</a></div><div class="ttdeci">JsonNode * remmina_stats_get_all()</div><div class="ttdoc">Get all statistics in json format to send periodically to the PHP server. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00848">remmina_stats.c:848</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_ae4441d62bb4075d1618b5750fea064b4"><div class="ttname"><a href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo_get_wm_name</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_wm_name()</div><div class="ttdoc">Query environment variables to get the Window manager name. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00131">remmina_sysinfo.c:131</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_a1078e772be8dfc9aad54d3f14efd96c4"><div class="ttname"><a href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">ProfilesData::pdatestr</a></div><div class="ttdeci">const gchar * pdatestr</div><div class="ttdoc">Key in the proto_count hash table. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00166">remmina_stats.c:166</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_ae6ecf91edb905f3b2b39e33e05325590"><div class="ttname"><a href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a></div><div class="ttdeci">gboolean remmina_sysinfo_is_appindicator_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00046">remmina_sysinfo.c:46</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_aee2ea5acceb2fbc3aa4ff21d136c5734"><div class="ttname"><a href="remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734">remmina_stats_get_indicator</a></div><div class="ttdeci">JsonNode * remmina_stats_get_indicator()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00497">remmina_stats.c:497</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_ae596da7901fb3b45b7290a1d70b3ea3a"><div class="ttname"><a href="remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a">remmina_stats_get_wm_name</a></div><div class="ttdeci">JsonNode * remmina_stats_get_wm_name()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00453">remmina_stats.c:453</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#l00079">remmina.c:79</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a54cee350c4ecc6e77af835c4ba90df4c"><div class="ttname"><a href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a></div><div class="ttdeci">GHashTable * remmina_utils_get_etc_release()</div><div class="ttdoc">Print the distribution description if found. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00404">remmina_utils.c:404</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a116e7cd4565386fe531d3a6d1a3d3730"><div class="ttname"><a href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_arch()</div><div class="ttdoc">Return the machine hardware name as in &quot;uname -m&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00330">remmina_utils.c:330</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a56956b7db0c631121151b19b920176da"><div class="ttname"><a href="remmina__stats_8c.html#a56956b7db0c631121151b19b920176da">remmina_stats_get_kiosk_mode</a></div><div class="ttdeci">JsonNode * remmina_stats_get_kiosk_mode()</div><div class="ttdoc">Add a json member KIOSK which shows the status of the kiosk. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00815">remmina_stats.c:815</a></div></div>
+<div class="ttc" id="struct_profiles_data_html_a010a740c75d19daf63572f87565ae956"><div class="ttname"><a href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">ProfilesData::proto_date</a></div><div class="ttdeci">GHashTable * proto_date</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00164">remmina_stats.c:164</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#l00151">remmina_file_manager.c:151</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html"><div class="ttname"><a href="remmina__sysinfo_8h.html">remmina_sysinfo.h</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__stats_8c_html_ab248458a3face2634bab909ffeb8291e"><div class="ttname"><a href="remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e">remmina_stats_get_version</a></div><div class="ttdeci">JsonNode * remmina_stats_get_version()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00354">remmina_stats.c:354</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats_8c.html">remmina_stats.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats_8h.html b/docs/remmina__stats_8h.html
new file mode 100644
index 000000000..bdc40bc64
--- /dev/null
+++ b/docs/remmina__stats_8h.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_stats.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__stats_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7a1c9ab1abc1fdf78239d11b802843ae"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae">remmina_stats_get_all</a> (void)</td></tr>
+<tr class="memdesc:a7a1c9ab1abc1fdf78239d11b802843ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all statistics in json format to send periodically to the PHP server. <a href="#a7a1c9ab1abc1fdf78239d11b802843ae">More...</a><br /></td></tr>
+<tr class="separator:a7a1c9ab1abc1fdf78239d11b802843ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a7a1c9ab1abc1fdf78239d11b802843ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a1c9ab1abc1fdf78239d11b802843ae">&#9670;&nbsp;</a></span>remmina_stats_get_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS JsonNode* remmina_stats_get_all </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get all statistics in json format to send periodically to the PHP server. </p>
+<p>The caller should free the returned buffer with g_free() </p><dl class="section warning"><dt>Warning</dt><dd>This function is usually executed on a dedicated thread, not on the main thread. </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to the JSON string. </dd></dl>
+<p>The section ENVIRONMENT collect all the user’s environment related settings.</p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00848">848</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats_8h.html">remmina_stats.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats_8h.js b/docs/remmina__stats_8h.js
new file mode 100644
index 000000000..f4af041ef
--- /dev/null
+++ b/docs/remmina__stats_8h.js
@@ -0,0 +1,4 @@
+var remmina__stats_8h =
+[
+ [ "remmina_stats_get_all", "remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__stats_8h_source.html b/docs/remmina__stats_8h_source.html
new file mode 100644
index 000000000..0f2cd7735
--- /dev/null
+++ b/docs/remmina__stats_8h_source.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_stats.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__stats_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;json-glib/json-glib.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;JsonNode *<a class="code" href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae">remmina_stats_get_all</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__stats_8h_html_a7a1c9ab1abc1fdf78239d11b802843ae"><div class="ttname"><a href="remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae">remmina_stats_get_all</a></div><div class="ttdeci">G_BEGIN_DECLS JsonNode * remmina_stats_get_all(void)</div><div class="ttdoc">Get all statistics in json format to send periodically to the PHP server. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00848">remmina_stats.c:848</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats_8h.html">remmina_stats.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats__sender_8c.html b/docs/remmina__stats__sender_8c.html
new file mode 100644
index 000000000..a09c0ff7a
--- /dev/null
+++ b/docs/remmina__stats__sender_8c.html
@@ -0,0 +1,389 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats_sender.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats__sender_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_stats_sender.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__stats__sender_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsc__tdata.html">sc_tdata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a25ee87d9e565079665ced10b7736fb20"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">soup_callback</a> (SoupSession *<a class="el" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SoupMessage *msg, gpointer user_data)</td></tr>
+<tr class="separator:a25ee87d9e565079665ced10b7736fb20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2423312953c64a318fbe8d44fd2d4fb7"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">rsa_encrypt_string</a> (RSA *pubKey, const char *instr)</td></tr>
+<tr class="separator:a2423312953c64a318fbe8d44fd2d4fb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38aa59201bec4b28dd8af8273063dce7"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_collector_done</a> (gpointer data)</td></tr>
+<tr class="separator:a38aa59201bec4b28dd8af8273063dce7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fb1f78014c902387de47961e8245518"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_collector</a> (gpointer data)</td></tr>
+<tr class="separator:a9fb1f78014c902387de47961e8245518"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcfe144769bc83b3a6cc216eb3589919"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a> (gboolean show_only)</td></tr>
+<tr class="separator:adcfe144769bc83b3a6cc216eb3589919"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aa2104ccded08aa02dd2886f87af516"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a> ()</td></tr>
+<tr class="separator:a5aa2104ccded08aa02dd2886f87af516"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9893f8bc18fa81d40fabcf60e7353bb2"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender_periodic_check</a> (gpointer user_data)</td></tr>
+<tr class="separator:a9893f8bc18fa81d40fabcf60e7353bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03db556341f727fb2fe482cae80351a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a> ()</td></tr>
+<tr class="separator:a03db556341f727fb2fe482cae80351a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a53224d477c8323b0f20458c263f46a79"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_RSA_PubKey_v1</a></td></tr>
+<tr class="separator:a53224d477c8323b0f20458c263f46a79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a5aa2104ccded08aa02dd2886f87af516"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5aa2104ccded08aa02dd2886f87af516">&#9670;&nbsp;</a></span>remmina_stat_sender_can_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_stat_sender_can_send </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00295">295</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a9fb1f78014c902387de47961e8245518"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fb1f78014c902387de47961e8245518">&#9670;&nbsp;</a></span>remmina_stats_collector()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_stats_collector </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00265">265</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a38aa59201bec4b28dd8af8273063dce7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38aa59201bec4b28dd8af8273063dce7">&#9670;&nbsp;</a></span>remmina_stats_collector_done()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_stats_collector_done </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00162">162</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a9893f8bc18fa81d40fabcf60e7353bb2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9893f8bc18fa81d40fabcf60e7353bb2">&#9670;&nbsp;</a></span>remmina_stats_sender_periodic_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_stats_sender_periodic_check </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00303">303</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a03db556341f727fb2fe482cae80351a9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03db556341f727fb2fe482cae80351a9">&#9670;&nbsp;</a></span>remmina_stats_sender_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_stats_sender_schedule </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00323">323</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="adcfe144769bc83b3a6cc216eb3589919"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcfe144769bc83b3a6cc216eb3589919">&#9670;&nbsp;</a></span>remmina_stats_sender_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_stats_sender_send </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>show_only</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00282">282</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a2423312953c64a318fbe8d44fd2d4fb7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2423312953c64a318fbe8d44fd2d4fb7">&#9670;&nbsp;</a></span>rsa_encrypt_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* rsa_encrypt_string </td>
+ <td>(</td>
+ <td class="paramtype">RSA *&#160;</td>
+ <td class="paramname"><em>pubKey</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>instr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00113">113</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a25ee87d9e565079665ced10b7736fb20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25ee87d9e565079665ced10b7736fb20">&#9670;&nbsp;</a></span>soup_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void soup_callback </td>
+ <td>(</td>
+ <td class="paramtype">SoupSession *&#160;</td>
+ <td class="paramname"><em>session</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SoupMessage *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00080">80</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a53224d477c8323b0f20458c263f46a79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53224d477c8323b0f20458c263f46a79">&#9670;&nbsp;</a></span>remmina_RSA_PubKey_v1</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* remmina_RSA_PubKey_v1</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;-----BEGIN PUBLIC KEY-----\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwuI8eOnDV2y9uPdhN+6Q\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;Cju8+YapN0wKlvwfy1ccQBS+4YnM7/+vzelOzLXJwWBDr/He7G5XEIzOcc9LZsRw\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;XYAoeB3+kP4OrNIVmKfxL7uijoh+79t3WpR8OOOTFDLmtk23tvdJVj+KfRpm0REK\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;BmdPHP8NpBzQElEDgXP9weHwQhPLB6MqpaJmfR4AqSumAcsukjbSaCWhqjO2rEiA\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;eXqJ0JE+PIe4WO1IBvKyYBYP3S77FEMJojkVWGVsjOUGe2VqpX02GaRajRkbqzNK\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;dGmLQt//kcCuPkiqm/qQQTZc0JJYUrmOjFJW9jODQKXHdZrSz8Xz5+v6VJ49v2TM\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;PwIDAQAB\n&quot;</span></div><div class="line"> <span class="stringliteral">&quot;-----END PUBLIC KEY-----\n&quot;</span></div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats__sender_8c.html">remmina_stats_sender.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats__sender_8c.js b/docs/remmina__stats__sender_8c.js
new file mode 100644
index 000000000..3428c54b0
--- /dev/null
+++ b/docs/remmina__stats__sender_8c.js
@@ -0,0 +1,13 @@
+var remmina__stats__sender_8c =
+[
+ [ "sc_tdata", "structsc__tdata.html", "structsc__tdata" ],
+ [ "remmina_stat_sender_can_send", "remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516", null ],
+ [ "remmina_stats_collector", "remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518", null ],
+ [ "remmina_stats_collector_done", "remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7", null ],
+ [ "remmina_stats_sender_periodic_check", "remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2", null ],
+ [ "remmina_stats_sender_schedule", "remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9", null ],
+ [ "remmina_stats_sender_send", "remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919", null ],
+ [ "rsa_encrypt_string", "remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7", null ],
+ [ "soup_callback", "remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20", null ],
+ [ "remmina_RSA_PubKey_v1", "remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__stats__sender_8c_source.html b/docs/remmina__stats__sender_8c_source.html
new file mode 100644
index 000000000..823911e67
--- /dev/null
+++ b/docs/remmina__stats__sender_8c_source.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats_sender.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats__sender_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_stats_sender.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__stats__sender_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;libsoup/soup.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;openssl/rsa.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;openssl/pem.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;openssl/err.h&gt;</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__scheduler_8h.html">remmina_scheduler.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__trace__calls_8h.html">remmina/remmina_trace_calls.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__log_8h.html">remmina_log.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__stats_8h.html">remmina_stats.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__pref_8h.html">remmina_pref.h</a>&quot;</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">#if !JSON_CHECK_VERSION(1, 2, 0)</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> #define json_node_unref(x) json_node_free(x)</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* Timers */</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define PERIODIC_CHECK_1ST_MS 60000</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define PERIODIC_CHECK_INTERVAL_MS 1200000</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#define PERIODIC_UPLOAD_INTERVAL_SEC 2678400</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#define PERIODIC_UPLOAD_URL &quot;https://www.remmina.org/stats/upload_stats.php&quot;</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</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="comment">//static gint periodic_check_source;</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment">//static gint periodic_check_counter;</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79"> 64</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">char</span> *<a class="code" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_RSA_PubKey_v1</a> =</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;-----BEGIN PUBLIC KEY-----\n&quot;</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwuI8eOnDV2y9uPdhN+6Q\n&quot;</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="stringliteral">&quot;Cju8+YapN0wKlvwfy1ccQBS+4YnM7/+vzelOzLXJwWBDr/He7G5XEIzOcc9LZsRw\n&quot;</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="stringliteral">&quot;XYAoeB3+kP4OrNIVmKfxL7uijoh+79t3WpR8OOOTFDLmtk23tvdJVj+KfRpm0REK\n&quot;</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="stringliteral">&quot;BmdPHP8NpBzQElEDgXP9weHwQhPLB6MqpaJmfR4AqSumAcsukjbSaCWhqjO2rEiA\n&quot;</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="stringliteral">&quot;eXqJ0JE+PIe4WO1IBvKyYBYP3S77FEMJojkVWGVsjOUGe2VqpX02GaRajRkbqzNK\n&quot;</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="stringliteral">&quot;dGmLQt//kcCuPkiqm/qQQTZc0JJYUrmOjFJW9jODQKXHdZrSz8Xz5+v6VJ49v2TM\n&quot;</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="stringliteral">&quot;PwIDAQAB\n&quot;</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="stringliteral">&quot;-----END PUBLIC KEY-----\n&quot;</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structsc__tdata.html"> 75</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23"> 76</a></span>&#160; gboolean <a class="code" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">show_only</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b"> 77</a></span>&#160; JsonNode *<a class="code" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">statsroot</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;} <a class="code" href="structsc__tdata.html">sc_tdata</a>;</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"><a class="line" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20"> 80</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">soup_callback</a>(SoupSession *<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SoupMessage *msg, gpointer user_data)</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;{</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; gchar *s = (gchar*)user_data;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; SoupBuffer *sb;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; gboolean passed;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; GTimeVal t;</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; g_free(s);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (msg-&gt;status_code != 200) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;HTTP status error sending stats: %d\n&quot;</span>, msg-&gt;status_code);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span>;</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"> 94</span>&#160;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; passed = FALSE;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; sb = soup_message_body_flatten(msg-&gt;response_body);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;STATS script response: %.40s\n&quot;</span>, sb-&gt;data);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (strncmp(sb-&gt;data, <span class="stringliteral">&quot;200 &quot;</span>, 4) != 0) {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;STATS http upload error from server side script: %s\n&quot;</span>, sb-&gt;data);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; passed = TRUE;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; soup_buffer_free(sb);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">if</span> (passed) {</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a> = t.tv_sec;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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"> 111</span>&#160;}</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"><a class="line" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7"> 113</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">rsa_encrypt_string</a>(RSA *pubKey, <span class="keyword">const</span> <span class="keywordtype">char</span> *instr)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="comment">/* Calls RSA_public_encrypt multiple times to encrypt instr.</span></div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> * At the end, base64 encode the resulting buffer</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> * Return a buffer ptr. Use g_free() to deallocate it */</span></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="keywordtype">int</span> rsaLen = RSA_size(pubKey);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">int</span> inLen = strlen(instr);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">int</span> remaining, r;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">int</span> blksz, maxblksz;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordtype">int</span> ebufSize;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *ebuf, *outptr;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; gchar *enc;</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; maxblksz = rsaLen - 12;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; ebufSize = (((inLen - 1) / maxblksz) + 1) * rsaLen;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; ebuf = g_malloc(ebufSize);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; outptr = ebuf;</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; remaining = strlen(instr);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">while</span>(remaining &gt; 0) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; blksz = remaining &gt; maxblksz ? maxblksz : remaining;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; r = RSA_public_encrypt(blksz,</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; (<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *)instr,</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; outptr,</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; pubKey, RSA_PKCS1_PADDING); <span class="comment">/* Our poor JS libraries only supports RSA_PKCS1_PADDING */</span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">if</span> (r == -1 ) {</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> e;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; ERR_load_crypto_strings();</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; e = ERR_get_error();</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; g_print(<span class="stringliteral">&quot;Error RSA_public_encrypt(): %s - func: %s - reason: %s\n&quot;</span>, ERR_lib_error_string(e), ERR_func_error_string(e), ERR_reason_error_string(e));</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; g_free(ebuf);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; ERR_free_strings();</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">return</span> NULL;</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; instr += blksz;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; remaining -= blksz;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; outptr += r;</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; enc = g_base64_encode(ebuf, ebufSize);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; g_free(ebuf);</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="keywordflow">return</span> enc;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;}</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"><a class="line" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7"> 162</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_collector_done</a>(gpointer data)</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"> 164</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; JsonNode *n;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; JsonGenerator *g;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; gchar *unenc_s, *enc_s;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; SoupSession *ss;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; SoupMessage *msg;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; JsonBuilder *b;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; JsonObject *o;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; BIO *pkbio;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; RSA *pubkey;</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; gchar *uid;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="structsc__tdata.html">sc_tdata</a> *sctdata;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; sctdata = (<a class="code" href="structsc__tdata.html">sc_tdata</a> *)data;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">if</span> (sctdata == NULL)</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; n = sctdata-&gt;<a class="code" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">statsroot</a>;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">if</span> (n == NULL) {</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; g_free(data);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> ((o = json_node_get_object(n)) == NULL) {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_free(data);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</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; uid = g_strdup(json_object_get_string_member(o, <span class="stringliteral">&quot;UID&quot;</span>));</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; g = json_generator_new();</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; json_generator_set_root(g, n);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; json_node_unref(n);</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; unenc_s = json_generator_to_data(g, NULL); <span class="comment">// unenc_s=serialized stats</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;STATS upload: JSON data%s\n&quot;</span>, unenc_s);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_object_unref(g);</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; <span class="comment">/* Now encrypt &quot;s&quot; with remminastats public key */</span></div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; pkbio = BIO_new_mem_buf(<a class="code" href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_RSA_PubKey_v1</a>, -1);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; pubkey = PEM_read_bio_RSA_PUBKEY(pkbio, NULL, NULL, NULL);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">if</span> (pubkey == NULL) {</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; ERR_load_crypto_strings();</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> e;</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; e = ERR_get_error();</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; g_print(<span class="stringliteral">&quot;Failure in PEM_read_bio_RSAPublicKey: %s - func: %s - reason: %s\n&quot;</span>, ERR_lib_error_string(e), ERR_func_error_string(e), ERR_reason_error_string(e));</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; g_print(<span class="stringliteral">&quot;%s\n&quot;</span>, ERR_error_string( e, NULL ));</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; BIO_free(pkbio);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; g_free(unenc_s);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; ERR_free_strings();</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; g_free(data);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; g_free(uid);</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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; enc_s = <a class="code" href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">rsa_encrypt_string</a>(pubkey, unenc_s);</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"> 221</span>&#160; g_free(unenc_s);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; BIO_free(pkbio);</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"> 225</span>&#160; <span class="comment">/* Create new json encrypted object */</span></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; b = json_builder_new();</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; json_builder_begin_object(b);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;keyversion&quot;</span>);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; json_builder_add_int_value(b, 1);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;encdata&quot;</span>);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; json_builder_add_string_value(b, enc_s);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; json_builder_set_member_name(b, <span class="stringliteral">&quot;UID&quot;</span>);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; json_builder_add_string_value(b, uid);</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; json_builder_end_object(b);</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; n = json_builder_get_root(b);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; g_object_unref(b);</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; g_free(uid);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; g_free(enc_s);</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">if</span> (!sctdata-&gt;<a class="code" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">show_only</a>) {</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; g = json_generator_new();</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; json_generator_set_root(g, n);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; enc_s = json_generator_to_data(g, NULL); <span class="comment">// unenc_s=serialized stats</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; g_object_unref(g);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; ss = soup_session_new();</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; msg = soup_message_new(<span class="stringliteral">&quot;POST&quot;</span>, PERIODIC_UPLOAD_URL);</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; soup_message_set_request(msg, <span class="stringliteral">&quot;application/json&quot;</span>,</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; SOUP_MEMORY_COPY, enc_s, strlen(enc_s));</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; soup_session_queue_message(ss, msg, <a class="code" href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">soup_callback</a>, enc_s);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a>(<span class="stringliteral">&quot;STATS upload: Starting upload to url %s\n&quot;</span>, PERIODIC_UPLOAD_URL);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; json_node_unref(n);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; g_free(data);</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; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518"> 265</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_collector</a>(gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; JsonNode *n;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <a class="code" href="structsc__tdata.html">sc_tdata</a> *sctdata;</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; sctdata = (<a class="code" href="structsc__tdata.html">sc_tdata</a> *)data;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; n = <a class="code" href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats_get_all</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; <span class="comment">/* stats collecting is done. Notify main thread calling</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> * remmina_stats_collector_done() */</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; sctdata-&gt;<a class="code" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">statsroot</a> = n;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; g_idle_add(<a class="code" href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_collector_done</a>, sctdata);</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; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;}</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"><a class="line" href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919"> 282</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a>(gboolean show_only)</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;{</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="structsc__tdata.html">sc_tdata</a> *sctdata;</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; sctdata = g_malloc(<span class="keyword">sizeof</span>(<a class="code" href="structsc__tdata.html">sc_tdata</a>));</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; sctdata-&gt;<a class="code" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">show_only</a> = show_only;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; g_thread_new(<span class="stringliteral">&quot;stats_collector&quot;</span>, <a class="code" href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_collector</a>, (gpointer)sctdata);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;}</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff"> 295</a></span>&#160;gboolean <a class="code" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a>()</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;{</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</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#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> &amp;&amp; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>())</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;}</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2"> 303</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender_periodic_check</a>(gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; GTimeVal t;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; glong next;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a>())</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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; <span class="comment">/* Calculate &quot;next&quot; upload time based on last sent time */</span></div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; next = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a> + PERIODIC_UPLOAD_INTERVAL_SEC;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="comment">/* If current time is after &quot;next&quot; or clock is going back (but &gt; 1/1/2018), then do send stats */</span></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">if</span> (t.tv_sec &gt; next || (t.tv_sec &lt; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a> &amp;&amp; t.tv_sec &gt; 1514764800)) {</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a>(FALSE);</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">return</span> G_SOURCE_CONTINUE;</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"> 322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802"> 323</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a>()</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; <a class="code" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a>(<a class="code" href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender_periodic_check</a>,</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; NULL,</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; PERIODIC_CHECK_1ST_MS,</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; PERIODIC_CHECK_INTERVAL_MS);</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;}</div><div class="ttc" id="remmina__stats__sender_8c_html_a38aa59201bec4b28dd8af8273063dce7"><div class="ttname"><a href="remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7">remmina_stats_collector_done</a></div><div class="ttdeci">static gboolean remmina_stats_collector_done(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00162">remmina_stats_sender.c:162</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="structsc__tdata_html_a8eb91802a809569acddc7c4c9d321e23"><div class="ttname"><a href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">sc_tdata::show_only</a></div><div class="ttdeci">gboolean show_only</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00076">remmina_stats_sender.c:76</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a9fb1f78014c902387de47961e8245518"><div class="ttname"><a href="remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518">remmina_stats_collector</a></div><div class="ttdeci">static gpointer remmina_stats_collector(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00265">remmina_stats_sender.c:265</a></div></div>
+<div class="ttc" id="remmina__scheduler_8c_html_a8ee49eb86004b98070d1514c2612251a"><div class="ttname"><a href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a></div><div class="ttdeci">void * remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00064">remmina_scheduler.c:64</a></div></div>
+<div class="ttc" id="remmina__log_8c_html_aa90e751e7bd5d477179188273c095d9a"><div class="ttname"><a href="remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a">remmina_debug</a></div><div class="ttdeci">void remmina_debug(const gchar *fmt,...)</div><div class="ttdoc">Print a string in the Remmina Debug Windows and in the terminal. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__log_8c_source.html#l00194">remmina_log.c:194</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a53224d477c8323b0f20458c263f46a79"><div class="ttname"><a href="remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79">remmina_RSA_PubKey_v1</a></div><div class="ttdeci">static char * remmina_RSA_PubKey_v1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00064">remmina_stats_sender.c:64</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a175c6dbec04bf34e3f2a5bd791d2d336"><div class="ttname"><a href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></div><div class="ttdeci">static SoupSession * session</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00077">rmnews.c:77</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="remmina__scheduler_8h_html"><div class="ttname"><a href="remmina__scheduler_8h.html">remmina_scheduler.h</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a25ee87d9e565079665ced10b7736fb20"><div class="ttname"><a href="remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20">soup_callback</a></div><div class="ttdeci">static void soup_callback(SoupSession *session, SoupMessage *msg, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00080">remmina_stats_sender.c:80</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</a></div></div>
+<div class="ttc" id="structsc__tdata_html"><div class="ttname"><a href="structsc__tdata.html">sc_tdata</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00075">remmina_stats_sender.c:75</a></div></div>
+<div class="ttc" id="remmina__stats_8h_html"><div class="ttname"><a href="remmina__stats_8h.html">remmina_stats.h</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a03db556341f727fb2fe482cae80351a9"><div class="ttname"><a href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a></div><div class="ttdeci">void remmina_stats_sender_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00323">remmina_stats_sender.c:323</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a2423312953c64a318fbe8d44fd2d4fb7"><div class="ttname"><a href="remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7">rsa_encrypt_string</a></div><div class="ttdeci">static gchar * rsa_encrypt_string(RSA *pubKey, const char *instr)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00113">remmina_stats_sender.c:113</a></div></div>
+<div class="ttc" id="remmina__stats_8c_html_a7398b36347e3621772776c466b565641"><div class="ttname"><a href="remmina__stats_8c.html#a7398b36347e3621772776c466b565641">remmina_stats_get_all</a></div><div class="ttdeci">JsonNode * remmina_stats_get_all()</div><div class="ttdoc">Get all statistics in json format to send periodically to the PHP server. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats_8c_source.html#l00848">remmina_stats.c:848</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_ad9fb2bee26f8054c373fbc6ad0ccf736"><div class="ttname"><a href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">_RemminaPref::periodic_usage_stats_last_sent</a></div><div class="ttdeci">glong periodic_usage_stats_last_sent</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00201">remmina_pref.h:201</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="structsc__tdata_html_a6d4fa4f117c67c3cd9b80b5bdf4c088b"><div class="ttname"><a href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">sc_tdata::statsroot</a></div><div class="ttdeci">JsonNode * statsroot</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00077">remmina_stats_sender.c:77</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a9893f8bc18fa81d40fabcf60e7353bb2"><div class="ttname"><a href="remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2">remmina_stats_sender_periodic_check</a></div><div class="ttdeci">static gboolean remmina_stats_sender_periodic_check(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00303">remmina_stats_sender.c:303</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a5aa2104ccded08aa02dd2886f87af516"><div class="ttname"><a href="remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516">remmina_stat_sender_can_send</a></div><div class="ttdeci">gboolean remmina_stat_sender_can_send()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00295">remmina_stats_sender.c:295</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_adcfe144769bc83b3a6cc216eb3589919"><div class="ttname"><a href="remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a></div><div class="ttdeci">void remmina_stats_sender_send(gboolean show_only)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00282">remmina_stats_sender.c:282</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats__sender_8c.html">remmina_stats_sender.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats__sender_8h.html b/docs/remmina__stats__sender_8h.html
new file mode 100644
index 000000000..89741ffe9
--- /dev/null
+++ b/docs/remmina__stats__sender_8h.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats_sender.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats__sender_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_stats_sender.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__stats__sender_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab800d60b2014cf18c0791de01cf33802"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802">remmina_stats_sender_schedule</a> (void)</td></tr>
+<tr class="separator:ab800d60b2014cf18c0791de01cf33802"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1d347e3ecedef03345aaf308db8f4ff"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff">remmina_stat_sender_can_send</a> (void)</td></tr>
+<tr class="separator:ab1d347e3ecedef03345aaf308db8f4ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcfe144769bc83b3a6cc216eb3589919"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a> (gboolean show_only)</td></tr>
+<tr class="separator:adcfe144769bc83b3a6cc216eb3589919"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ab1d347e3ecedef03345aaf308db8f4ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab1d347e3ecedef03345aaf308db8f4ff">&#9670;&nbsp;</a></span>remmina_stat_sender_can_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_stat_sender_can_send </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00295">295</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="ab800d60b2014cf18c0791de01cf33802"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab800d60b2014cf18c0791de01cf33802">&#9670;&nbsp;</a></span>remmina_stats_sender_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_stats_sender_schedule </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00323">323</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="adcfe144769bc83b3a6cc216eb3589919"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcfe144769bc83b3a6cc216eb3589919">&#9670;&nbsp;</a></span>remmina_stats_sender_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_stats_sender_send </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>show_only</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00282">282</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__stats__sender_8h.js b/docs/remmina__stats__sender_8h.js
new file mode 100644
index 000000000..40338a9de
--- /dev/null
+++ b/docs/remmina__stats__sender_8h.js
@@ -0,0 +1,6 @@
+var remmina__stats__sender_8h =
+[
+ [ "remmina_stat_sender_can_send", "remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff", null ],
+ [ "remmina_stats_sender_schedule", "remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802", null ],
+ [ "remmina_stats_sender_send", "remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__stats__sender_8h_source.html b/docs/remmina__stats__sender_8h_source.html
new file mode 100644
index 000000000..6740243b8
--- /dev/null
+++ b/docs/remmina__stats__sender_8h_source.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_stats_sender.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__stats__sender_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_stats_sender.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__stats__sender_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802">remmina_stats_sender_schedule</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;gboolean <a class="code" href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff">remmina_stat_sender_can_send</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* This is only for testing purposes: force a SEND */</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a>(gboolean show_only);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__stats__sender_8h_html_ab800d60b2014cf18c0791de01cf33802"><div class="ttname"><a href="remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802">remmina_stats_sender_schedule</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_stats_sender_schedule(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00323">remmina_stats_sender.c:323</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8h_html_adcfe144769bc83b3a6cc216eb3589919"><div class="ttname"><a href="remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919">remmina_stats_sender_send</a></div><div class="ttdeci">void remmina_stats_sender_send(gboolean show_only)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00282">remmina_stats_sender.c:282</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8h_html_ab1d347e3ecedef03345aaf308db8f4ff"><div class="ttname"><a href="remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff">remmina_stat_sender_can_send</a></div><div class="ttdeci">gboolean remmina_stat_sender_can_send(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00295">remmina_stats_sender.c:295</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__array_8c.html b/docs/remmina__string__array_8c.html
new file mode 100644
index 000000000..fc76a3582
--- /dev/null
+++ b/docs/remmina__string__array_8c.html
@@ -0,0 +1,442 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_array.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__array_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_string_array.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__string__array_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aff90e964c6541b1af02adf7ea39e6e02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a> (void)</td></tr>
+<tr class="separator:aff90e964c6541b1af02adf7ea39e6e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f1c8e427a25c2d5cede3952b1d0ad90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a> (const gchar *strs)</td></tr>
+<tr class="separator:a7f1c8e427a25c2d5cede3952b1d0ad90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a462a635b3a55cc0e3af087ff996fba9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a> (gchar *strs)</td></tr>
+<tr class="separator:a462a635b3a55cc0e3af087ff996fba9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aaacca7db4b86f836486cfb559398f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:a2aaacca7db4b86f836486cfb559398f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab93a69850cfb4117c223a3f145ced986"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:ab93a69850cfb4117c223a3f145ced986"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40811c036e46f6544ab6c4cff445454b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, gint i)</td></tr>
+<tr class="separator:a40811c036e46f6544ab6c4cff445454b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a8a9753ebf61c9418a77ba3dd654ff3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:a2a8a9753ebf61c9418a77ba3dd654ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf64b35316d6e97f5c5001913b307308"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *dest_strs)</td></tr>
+<tr class="separator:abf64b35316d6e97f5c5001913b307308"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a404140e205363c778476feb6f320f5f5"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array_compare_func</a> (const gchar **a, const gchar **b)</td></tr>
+<tr class="separator:a404140e205363c778476feb6f320f5f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eab4bae72ff130ad10ec8fc7364ce70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a3eab4bae72ff130ad10ec8fc7364ce70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f7bec7ce32de6cf5deadcd5aec51ec"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a96f7bec7ce32de6cf5deadcd5aec51ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ab78913d299df665a408a8a5ec51bbe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a8ab78913d299df665a408a8a5ec51bbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2aaacca7db4b86f836486cfb559398f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2aaacca7db4b86f836486cfb559398f0">&#9670;&nbsp;</a></span>remmina_string_array_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00086">86</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a404140e205363c778476feb6f320f5f5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a404140e205363c778476feb6f320f5f5">&#9670;&nbsp;</a></span>remmina_string_array_compare_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_string_array_compare_func </td>
+ <td>(</td>
+ <td class="paramtype">const gchar **&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar **&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00142">142</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="ab93a69850cfb4117c223a3f145ced986"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab93a69850cfb4117c223a3f145ced986">&#9670;&nbsp;</a></span>remmina_string_array_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_string_array_find </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00092">92</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ab78913d299df665a408a8a5ec51bbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ab78913d299df665a408a8a5ec51bbe">&#9670;&nbsp;</a></span>remmina_string_array_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00170">170</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="abf64b35316d6e97f5c5001913b307308"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf64b35316d6e97f5c5001913b307308">&#9670;&nbsp;</a></span>remmina_string_array_intersect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_intersect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dest_strs</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00121">121</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="aff90e964c6541b1af02adf7ea39e6e02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff90e964c6541b1af02adf7ea39e6e02">&#9670;&nbsp;</a></span>remmina_string_array_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00044">44</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a462a635b3a55cc0e3af087ff996fba9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a462a635b3a55cc0e3af087ff996fba9a">&#9670;&nbsp;</a></span>remmina_string_array_new_from_allocated_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new_from_allocated_string </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a7f1c8e427a25c2d5cede3952b1d0ad90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f1c8e427a25c2d5cede3952b1d0ad90">&#9670;&nbsp;</a></span>remmina_string_array_new_from_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a2a8a9753ebf61c9418a77ba3dd654ff3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a8a9753ebf61c9418a77ba3dd654ff3">&#9670;&nbsp;</a></span>remmina_string_array_remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_remove </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00110">110</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a40811c036e46f6544ab6c4cff445454b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40811c036e46f6544ab6c4cff445454b">&#9670;&nbsp;</a></span>remmina_string_array_remove_index()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_remove_index </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00104">104</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a3eab4bae72ff130ad10ec8fc7364ce70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3eab4bae72ff130ad10ec8fc7364ce70">&#9670;&nbsp;</a></span>remmina_string_array_sort()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_sort </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00148">148</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a96f7bec7ce32de6cf5deadcd5aec51ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96f7bec7ce32de6cf5deadcd5aec51ec">&#9670;&nbsp;</a></span>remmina_string_array_to_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_string_array_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00155">155</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__array_8c.html">remmina_string_array.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__array_8c.js b/docs/remmina__string__array_8c.js
new file mode 100644
index 000000000..943594d1b
--- /dev/null
+++ b/docs/remmina__string__array_8c.js
@@ -0,0 +1,15 @@
+var remmina__string__array_8c =
+[
+ [ "remmina_string_array_add", "remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0", null ],
+ [ "remmina_string_array_compare_func", "remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5", null ],
+ [ "remmina_string_array_find", "remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986", null ],
+ [ "remmina_string_array_free", "remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe", null ],
+ [ "remmina_string_array_intersect", "remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308", null ],
+ [ "remmina_string_array_new", "remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02", null ],
+ [ "remmina_string_array_new_from_allocated_string", "remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a", null ],
+ [ "remmina_string_array_new_from_string", "remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90", null ],
+ [ "remmina_string_array_remove", "remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3", null ],
+ [ "remmina_string_array_remove_index", "remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b", null ],
+ [ "remmina_string_array_sort", "remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70", null ],
+ [ "remmina_string_array_to_string", "remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__string__array_8c_source.html b/docs/remmina__string__array_8c_source.html
new file mode 100644
index 000000000..587618c03
--- /dev/null
+++ b/docs/remmina__string__array_8c_source.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_array.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__array_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_string_array.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__string__array_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 - 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-2020 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 &lt;glib.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>*</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02"> 44</a></span>&#160;<a class="code" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>(<span class="keywordtype">void</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"> 46</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">return</span> g_ptr_array_new();</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;}</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>*</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90"> 51</a></span>&#160;<a class="code" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(<span class="keyword">const</span> gchar *strs)</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; gchar *buf, *ptr1, *ptr2;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; array = <a class="code" href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>();</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (!strs || strs[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> array;</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; buf = g_strdup(strs);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; ptr1 = buf;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">while</span> (ptr1) {</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; ptr2 = strchr(ptr1, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (ptr2)</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; *ptr2++ = <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(array, ptr1);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; ptr1 = ptr2;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</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; g_free(buf);</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="keywordflow">return</span> array;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>*</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a"> 77</a></span>&#160;<a class="code" href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a>(gchar *strs)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; array = <a class="code" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(strs);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; g_free(strs);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> array;</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"><a class="line" href="remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0"> 86</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array, <span class="keyword">const</span> gchar *str)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; g_ptr_array_add(array, g_strdup(str));</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;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986"> 92</a></span>&#160;gint <a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array, <span class="keyword">const</span> gchar *str)</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"> 94</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; gint i;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; array-&gt;len; i++) {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(remmina_string_array_index(array, i), str) == 0)</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">return</span> i;</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; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</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"><a class="line" href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b"> 104</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array, gint i)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;{</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; g_ptr_array_remove_index(array, i);</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;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3"> 110</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array, <span class="keyword">const</span> gchar *str)</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;{</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; gint i;</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; i = <a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(array, str);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (i &gt;= 0) {</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a>(array, i);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; }</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;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308"> 121</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array, <span class="keyword">const</span> gchar *dest_strs)</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"> 123</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *dest_array;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; gint i, j;</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; dest_array = <a class="code" href="remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(dest_strs);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; i = 0;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">while</span> (i &lt; array-&gt;len) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; j = <a class="code" href="remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(dest_array, remmina_string_array_index(array, i));</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (j &lt; 0) {</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a>(array, i);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; i++;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(dest_array);</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;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5"> 142</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array_compare_func</a>(<span class="keyword">const</span> gchar **a, <span class="keyword">const</span> gchar **b)</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">return</span> g_strcmp0(*a, *b);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;}</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"><a class="line" href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70"> 148</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</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"> 150</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; g_ptr_array_sort(array, (GCompareFunc)<a class="code" href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array_compare_func</a>);</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;gchar*</div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec"> 155</a></span>&#160;<a class="code" href="remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* array)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; GString *gstr;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gint i;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gstr = g_string_new(<span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; array-&gt;len; i++) {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span> (i &gt; 0)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; g_string_append_c(gstr, <span class="charliteral">&#39;,&#39;</span>);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; g_string_append(gstr, remmina_string_array_index(array, i));</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">return</span> g_string_free(gstr, FALSE);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;}</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe"> 170</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;{</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_ptr_array_foreach(array, (GFunc)g_free, NULL);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; g_ptr_array_free(array, TRUE);</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;</div><div class="ttc" id="remmina__string__array_8c_html_a404140e205363c778476feb6f320f5f5"><div class="ttname"><a href="remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5">remmina_string_array_compare_func</a></div><div class="ttdeci">static gint remmina_string_array_compare_func(const gchar **a, const gchar **b)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00142">remmina_string_array.c:142</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a62228cb0bc959307e3268cff98e1f7bb"><div class="ttname"><a href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></div><div class="ttdeci">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8h_source.html#l00041">remmina_string_array.h:41</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</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="remmina__string__array_8c_html_abf64b35316d6e97f5c5001913b307308"><div class="ttname"><a href="remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a></div><div class="ttdeci">void remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00121">remmina_string_array.c:121</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a40811c036e46f6544ab6c4cff445454b"><div class="ttname"><a href="remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a></div><div class="ttdeci">void remmina_string_array_remove_index(RemminaStringArray *array, gint i)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00104">remmina_string_array.c:104</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__string__array_8c_html_a3eab4bae72ff130ad10ec8fc7364ce70"><div class="ttname"><a href="remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a></div><div class="ttdeci">void remmina_string_array_sort(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00148">remmina_string_array.c:148</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a8ab78913d299df665a408a8a5ec51bbe"><div class="ttname"><a href="remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a></div><div class="ttdeci">void remmina_string_array_free(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00170">remmina_string_array.c:170</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a462a635b3a55cc0e3af087ff996fba9a"><div class="ttname"><a href="remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new_from_allocated_string(gchar *strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00077">remmina_string_array.c:77</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__string__array_8c_html_aff90e964c6541b1af02adf7ea39e6e02"><div class="ttname"><a href="remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00044">remmina_string_array.c:44</a></div></div>
+<div class="ttc" id="remmina__string__array_8c_html_a2a8a9753ebf61c9418a77ba3dd654ff3"><div class="ttname"><a href="remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a></div><div class="ttdeci">void remmina_string_array_remove(RemminaStringArray *array, const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00110">remmina_string_array.c:110</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__array_8c.html">remmina_string_array.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__array_8h.html b/docs/remmina__string__array_8h.html
new file mode 100644
index 000000000..8b6cb81d5
--- /dev/null
+++ b/docs/remmina__string__array_8h.html
@@ -0,0 +1,425 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_array.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__array_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_string_array.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__string__array_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aff90e964c6541b1af02adf7ea39e6e02"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a> (void)</td></tr>
+<tr class="separator:aff90e964c6541b1af02adf7ea39e6e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f1c8e427a25c2d5cede3952b1d0ad90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a> (const gchar *strs)</td></tr>
+<tr class="separator:a7f1c8e427a25c2d5cede3952b1d0ad90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a462a635b3a55cc0e3af087ff996fba9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a> (gchar *strs)</td></tr>
+<tr class="separator:a462a635b3a55cc0e3af087ff996fba9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2aaacca7db4b86f836486cfb559398f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:a2aaacca7db4b86f836486cfb559398f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab93a69850cfb4117c223a3f145ced986"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:ab93a69850cfb4117c223a3f145ced986"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40811c036e46f6544ab6c4cff445454b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, gint i)</td></tr>
+<tr class="separator:a40811c036e46f6544ab6c4cff445454b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a8a9753ebf61c9418a77ba3dd654ff3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *str)</td></tr>
+<tr class="separator:a2a8a9753ebf61c9418a77ba3dd654ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf64b35316d6e97f5c5001913b307308"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, const gchar *dest_strs)</td></tr>
+<tr class="separator:abf64b35316d6e97f5c5001913b307308"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eab4bae72ff130ad10ec8fc7364ce70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a3eab4bae72ff130ad10ec8fc7364ce70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f7bec7ce32de6cf5deadcd5aec51ec"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a96f7bec7ce32de6cf5deadcd5aec51ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ab78913d299df665a408a8a5ec51bbe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a> (<a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array)</td></tr>
+<tr class="separator:a8ab78913d299df665a408a8a5ec51bbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a62228cb0bc959307e3268cff98e1f7bb"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS typedef GPtrArray&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></td></tr>
+<tr class="separator:a62228cb0bc959307e3268cff98e1f7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a2aaacca7db4b86f836486cfb559398f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2aaacca7db4b86f836486cfb559398f0">&#9670;&nbsp;</a></span>remmina_string_array_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00086">86</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="ab93a69850cfb4117c223a3f145ced986"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab93a69850cfb4117c223a3f145ced986">&#9670;&nbsp;</a></span>remmina_string_array_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_string_array_find </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00092">92</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ab78913d299df665a408a8a5ec51bbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ab78913d299df665a408a8a5ec51bbe">&#9670;&nbsp;</a></span>remmina_string_array_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00170">170</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="abf64b35316d6e97f5c5001913b307308"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf64b35316d6e97f5c5001913b307308">&#9670;&nbsp;</a></span>remmina_string_array_intersect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_intersect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>dest_strs</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00121">121</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="aff90e964c6541b1af02adf7ea39e6e02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff90e964c6541b1af02adf7ea39e6e02">&#9670;&nbsp;</a></span>remmina_string_array_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00044">44</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a462a635b3a55cc0e3af087ff996fba9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a462a635b3a55cc0e3af087ff996fba9a">&#9670;&nbsp;</a></span>remmina_string_array_new_from_allocated_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new_from_allocated_string </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a7f1c8e427a25c2d5cede3952b1d0ad90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f1c8e427a25c2d5cede3952b1d0ad90">&#9670;&nbsp;</a></span>remmina_string_array_new_from_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* remmina_string_array_new_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a2a8a9753ebf61c9418a77ba3dd654ff3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a8a9753ebf61c9418a77ba3dd654ff3">&#9670;&nbsp;</a></span>remmina_string_array_remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_remove </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00110">110</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a40811c036e46f6544ab6c4cff445454b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40811c036e46f6544ab6c4cff445454b">&#9670;&nbsp;</a></span>remmina_string_array_remove_index()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_remove_index </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00104">104</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a3eab4bae72ff130ad10ec8fc7364ce70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3eab4bae72ff130ad10ec8fc7364ce70">&#9670;&nbsp;</a></span>remmina_string_array_sort()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_array_sort </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00148">148</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<a id="a96f7bec7ce32de6cf5deadcd5aec51ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96f7bec7ce32de6cf5deadcd5aec51ec">&#9670;&nbsp;</a></span>remmina_string_array_to_string()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_string_array_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8c_source.html#l00155">155</a> of file <a class="el" href="remmina__string__array_8c_source.html">remmina_string_array.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a62228cb0bc959307e3268cff98e1f7bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62228cb0bc959307e3268cff98e1f7bb">&#9670;&nbsp;</a></span>RemminaStringArray</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__array_8h_source.html#l00041">41</a> of file <a class="el" href="remmina__string__array_8h_source.html">remmina_string_array.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__array_8h.html">remmina_string_array.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__array_8h.js b/docs/remmina__string__array_8h.js
new file mode 100644
index 000000000..5d36d45b8
--- /dev/null
+++ b/docs/remmina__string__array_8h.js
@@ -0,0 +1,15 @@
+var remmina__string__array_8h =
+[
+ [ "remmina_string_array_add", "remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0", null ],
+ [ "remmina_string_array_find", "remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986", null ],
+ [ "remmina_string_array_free", "remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe", null ],
+ [ "remmina_string_array_intersect", "remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308", null ],
+ [ "remmina_string_array_new", "remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02", null ],
+ [ "remmina_string_array_new_from_allocated_string", "remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a", null ],
+ [ "remmina_string_array_new_from_string", "remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90", null ],
+ [ "remmina_string_array_remove", "remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3", null ],
+ [ "remmina_string_array_remove_index", "remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b", null ],
+ [ "remmina_string_array_sort", "remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70", null ],
+ [ "remmina_string_array_to_string", "remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec", null ],
+ [ "RemminaStringArray", "remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__string__array_8h_source.html b/docs/remmina__string__array_8h_source.html
new file mode 100644
index 000000000..7e9f4cbc0
--- /dev/null
+++ b/docs/remmina__string__array_8h_source.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_array.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__array_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_string_array.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__string__array_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb"> 41</a></span>&#160;<span class="keyword">typedef</span> GPtrArray <a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *<a class="code" href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define remmina_string_array_index(array, i) (gchar *)g_ptr_array_index(array, i)</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *<a class="code" href="remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90">remmina_string_array_new_from_string</a>(<span class="keyword">const</span> gchar *strs);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *<a class="code" href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a>(gchar *strs);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0">remmina_string_array_add</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, <span class="keyword">const</span> gchar *str);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;gint <a class="code" href="remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986">remmina_string_array_find</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, <span class="keyword">const</span> gchar *str);</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, gint i);</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, <span class="keyword">const</span> gchar *str);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array, <span class="keyword">const</span> gchar *dest_strs);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;gchar *<a class="code" href="remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec">remmina_string_array_to_string</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a>(<a class="code" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *array);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__string__array_8h_html_a62228cb0bc959307e3268cff98e1f7bb"><div class="ttname"><a href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a></div><div class="ttdeci">G_BEGIN_DECLS typedef GPtrArray RemminaStringArray</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8h_source.html#l00041">remmina_string_array.h:41</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a2a8a9753ebf61c9418a77ba3dd654ff3"><div class="ttname"><a href="remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3">remmina_string_array_remove</a></div><div class="ttdeci">void remmina_string_array_remove(RemminaStringArray *array, const gchar *str)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00110">remmina_string_array.c:110</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_aff90e964c6541b1af02adf7ea39e6e02"><div class="ttname"><a href="remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02">remmina_string_array_new</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00044">remmina_string_array.c:44</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a40811c036e46f6544ab6c4cff445454b"><div class="ttname"><a href="remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b">remmina_string_array_remove_index</a></div><div class="ttdeci">void remmina_string_array_remove_index(RemminaStringArray *array, gint i)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00104">remmina_string_array.c:104</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a3eab4bae72ff130ad10ec8fc7364ce70"><div class="ttname"><a href="remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70">remmina_string_array_sort</a></div><div class="ttdeci">void remmina_string_array_sort(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00148">remmina_string_array.c:148</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_ab93a69850cfb4117c223a3f145ced986"><div class="ttname"><a href="remmina__string__array_8h.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_8h_html_a462a635b3a55cc0e3af087ff996fba9a"><div class="ttname"><a href="remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a">remmina_string_array_new_from_allocated_string</a></div><div class="ttdeci">RemminaStringArray * remmina_string_array_new_from_allocated_string(gchar *strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00077">remmina_string_array.c:77</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a96f7bec7ce32de6cf5deadcd5aec51ec"><div class="ttname"><a href="remmina__string__array_8h.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="remmina__string__array_8h_html_a8ab78913d299df665a408a8a5ec51bbe"><div class="ttname"><a href="remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe">remmina_string_array_free</a></div><div class="ttdeci">void remmina_string_array_free(RemminaStringArray *array)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00170">remmina_string_array.c:170</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a7f1c8e427a25c2d5cede3952b1d0ad90"><div class="ttname"><a href="remmina__string__array_8h.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__string__array_8h_html_abf64b35316d6e97f5c5001913b307308"><div class="ttname"><a href="remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308">remmina_string_array_intersect</a></div><div class="ttdeci">void remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__array_8c_source.html#l00121">remmina_string_array.c:121</a></div></div>
+<div class="ttc" id="remmina__string__array_8h_html_a2aaacca7db4b86f836486cfb559398f0"><div class="ttname"><a href="remmina__string__array_8h.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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__array_8h.html">remmina_string_array.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__list_8c.html b/docs/remmina__string__list_8c.html
new file mode 100644
index 000000000..64140a774
--- /dev/null
+++ b/docs/remmina__string__list_8c.html
@@ -0,0 +1,539 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_list.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__list_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_string_list.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__string__list_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a777917055c80821e9bde6ac8fd06e2ff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a> (void)</td></tr>
+<tr class="separator:a777917055c80821e9bde6ac8fd06e2ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa74f7320b1d5b8487eaadcd97d0d085"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085">remmina_string_list_on_cell_edited</a> (GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text)</td></tr>
+<tr class="separator:afa74f7320b1d5b8487eaadcd97d0d085"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5709fae6d1ab7827d9537715791fa819"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list_move_iter</a> (GtkTreeIter *from, GtkTreeIter *to)</td></tr>
+<tr class="separator:a5709fae6d1ab7827d9537715791fa819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae29b09ef2fd47b3bf33163fc7b295481"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481">remmina_string_list_on_action_down</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:ae29b09ef2fd47b3bf33163fc7b295481"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20d8786221c0baa00f1c55b4131cc5c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3">remmina_string_list_on_action_up</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a20d8786221c0baa00f1c55b4131cc5c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f02ba383d1c5376606dd494771d5a1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b">remmina_string_list_on_action_add</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a4f02ba383d1c5376606dd494771d5a1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45c42dcabd4f5365e26b77a7ab5f18ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae">remmina_string_list_on_action_remove</a> (GtkWidget *widget, gpointer user_data)</td></tr>
+<tr class="separator:a45c42dcabd4f5365e26b77a7ab5f18ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1bacc097f59c20b477d954bb863a5e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a> (const gchar *text, const gboolean clear_data)</td></tr>
+<tr class="separator:ab1bacc097f59c20b477d954bb863a5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74058eac0af28c05a55d041103457aec"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a> (void)</td></tr>
+<tr class="separator:a74058eac0af28c05a55d041103457aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a500b85eafd23280f998d2980d1eba80e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a> (<a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> func)</td></tr>
+<tr class="separator:a500b85eafd23280f998d2980d1eba80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9ca6ccf40b954051a0daa5c1efeef87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a> (gchar *title1, gchar *title2)</td></tr>
+<tr class="separator:aa9ca6ccf40b954051a0daa5c1efeef87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c7633dffb5b6bab089c71c44506d8ab"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list_init</a> (void)</td></tr>
+<tr class="separator:a3c7633dffb5b6bab089c71c44506d8ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11147c41297537effe55f18a63ce9f7e"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a> (gboolean two_columns, const gchar *fields_separator)</td></tr>
+<tr class="separator:a11147c41297537effe55f18a63ce9f7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6f8601a848bb964c1c9caf69d00128b8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8">string_list</a></td></tr>
+<tr class="separator:a6f8601a848bb964c1c9caf69d00128b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a74058eac0af28c05a55d041103457aec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74058eac0af28c05a55d041103457aec">&#9670;&nbsp;</a></span>remmina_string_list_get_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_string_list_get_text </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00206">206</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a3c7633dffb5b6bab089c71c44506d8ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c7633dffb5b6bab089c71c44506d8ab">&#9670;&nbsp;</a></span>remmina_string_list_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_string_list_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00270">270</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a5709fae6d1ab7827d9537715791fa819"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5709fae6d1ab7827d9537715791fa819">&#9670;&nbsp;</a></span>remmina_string_list_move_iter()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_string_list_move_iter </td>
+ <td>(</td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GtkTreeIter *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00093">93</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a11147c41297537effe55f18a63ce9f7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11147c41297537effe55f18a63ce9f7e">&#9670;&nbsp;</a></span>remmina_string_list_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* remmina_string_list_new </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>two_columns</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fields_separator</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00281">281</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a4f02ba383d1c5376606dd494771d5a1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f02ba383d1c5376606dd494771d5a1b">&#9670;&nbsp;</a></span>remmina_string_list_on_action_add()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_on_action_add </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00140">140</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="ae29b09ef2fd47b3bf33163fc7b295481"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae29b09ef2fd47b3bf33163fc7b295481">&#9670;&nbsp;</a></span>remmina_string_list_on_action_down()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_on_action_down </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00105">105</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a45c42dcabd4f5365e26b77a7ab5f18ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45c42dcabd4f5365e26b77a7ab5f18ae">&#9670;&nbsp;</a></span>remmina_string_list_on_action_remove()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_on_action_remove </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00159">159</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a20d8786221c0baa00f1c55b4131cc5c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20d8786221c0baa00f1c55b4131cc5c3">&#9670;&nbsp;</a></span>remmina_string_list_on_action_up()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_on_action_up </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00120">120</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="afa74f7320b1d5b8487eaadcd97d0d085"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa74f7320b1d5b8487eaadcd97d0d085">&#9670;&nbsp;</a></span>remmina_string_list_on_cell_edited()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_on_cell_edited </td>
+ <td>(</td>
+ <td class="paramtype">GtkCellRendererText *&#160;</td>
+ <td class="paramname"><em>cell</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>path_string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>new_text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="ab1bacc097f59c20b477d954bb863a5e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab1bacc097f59c20b477d954bb863a5e0">&#9670;&nbsp;</a></span>remmina_string_list_set_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_text </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gboolean&#160;</td>
+ <td class="paramname"><em>clear_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9ca6ccf40b954051a0daa5c1efeef87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9ca6ccf40b954051a0daa5c1efeef87">&#9670;&nbsp;</a></span>remmina_string_list_set_titles()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_titles </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>title1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>title2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00255">255</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a500b85eafd23280f998d2980d1eba80e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a500b85eafd23280f998d2980d1eba80e">&#9670;&nbsp;</a></span>remmina_string_list_set_validation_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_validation_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00248">248</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a777917055c80821e9bde6ac8fd06e2ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a777917055c80821e9bde6ac8fd06e2ff">&#9670;&nbsp;</a></span>remmina_string_list_update_buttons_state()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_update_buttons_state </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a6f8601a848bb964c1c9caf69d00128b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f8601a848bb964c1c9caf69d00128b8">&#9670;&nbsp;</a></span>string_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a>* string_list</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00044">44</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__list_8c.html">remmina_string_list.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__list_8c.js b/docs/remmina__string__list_8c.js
new file mode 100644
index 000000000..f11a361ac
--- /dev/null
+++ b/docs/remmina__string__list_8c.js
@@ -0,0 +1,17 @@
+var remmina__string__list_8c =
+[
+ [ "remmina_string_list_get_text", "remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec", null ],
+ [ "remmina_string_list_init", "remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab", null ],
+ [ "remmina_string_list_move_iter", "remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819", null ],
+ [ "remmina_string_list_new", "remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e", null ],
+ [ "remmina_string_list_on_action_add", "remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b", null ],
+ [ "remmina_string_list_on_action_down", "remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481", null ],
+ [ "remmina_string_list_on_action_remove", "remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae", null ],
+ [ "remmina_string_list_on_action_up", "remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3", null ],
+ [ "remmina_string_list_on_cell_edited", "remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085", null ],
+ [ "remmina_string_list_set_text", "remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0", null ],
+ [ "remmina_string_list_set_titles", "remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87", null ],
+ [ "remmina_string_list_set_validation_func", "remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e", null ],
+ [ "remmina_string_list_update_buttons_state", "remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff", null ],
+ [ "string_list", "remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__string__list_8c_source.html b/docs/remmina__string__list_8c_source.html
new file mode 100644
index 000000000..9c5dfffff
--- /dev/null
+++ b/docs/remmina__string__list_8c_source.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_list.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__list_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_string_list.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__string__list_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 - 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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__string__list_8h.html">remmina_string_list.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</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"><a class="line" href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8"> 44</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_string_list.html">RemminaStringList</a> *<a class="code" href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8">string_list</a>;</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"> 46</span>&#160;<span class="preprocessor">#define COLUMN_DESCRIPTION 0</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define COLUMN_VALUE 1</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define GET_OBJECT(object_name) gtk_builder_get_object(string_list-&gt;builder, object_name)</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* Update the buttons state on the items in the TreeModel */</span></div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff"> 51</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; gint items_count = gtk_tree_model_iter_n_children(</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), NULL);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">button_remove</a>), items_count &gt; 0);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">button_up</a>), items_count &gt; 1);</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; gtk_widget_set_sensitive(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">button_down</a>), items_count &gt; 1);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;}</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="comment">/* Check the text inserted in the list */</span></div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085"> 62</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085">remmina_string_list_on_cell_edited</a>(GtkCellRendererText *cell, <span class="keyword">const</span> gchar *path_string, <span class="keyword">const</span> gchar *new_text)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; gchar *text;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; gchar *error;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; GtkTreePath *path = gtk_tree_path_new_from_string(path_string);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; gtk_tree_model_get_iter(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;iter, path);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">/* Remove delimitors from the string */</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; text = <a class="code" href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a>(new_text, STRING_DELIMITOR, <span class="stringliteral">&quot; &quot;</span>);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span> (cell == string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a>) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gtk_list_store_set(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter, COLUMN_DESCRIPTION, text, -1);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">/* Check for validation only in second field */</span></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span> (string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a>) {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (!((*string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a>)(text, &amp;error))) {</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; gtk_label_set_text(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a>, error);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; gtk_widget_show(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a>));</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; g_free(error);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; gtk_widget_hide(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</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; gtk_list_store_set(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter, COLUMN_VALUE, text, -1);</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; gtk_tree_path_free(path);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; g_free(text);</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;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment">/* Move a TreeIter position */</span></div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819"> 93</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list_move_iter</a>(GtkTreeIter *from, GtkTreeIter *to)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; gtk_list_store_swap(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, from, to);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; path = gtk_tree_model_get_path(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), from);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; gtk_tree_view_scroll_to_cell(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">treeview_items</a>, path, NULL, 0, 0, 0);</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</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">/* Move down the selected TreeRow */</span></div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481"> 105</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481">remmina_string_list_on_action_down</a>(GtkWidget *widget, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; GtkTreeIter target_iter;</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="keywordflow">if</span> (gtk_tree_selection_get_selected(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, NULL, &amp;iter)) {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; gtk_tree_selection_get_selected(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, NULL, &amp;target_iter);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (gtk_tree_model_iter_next(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;target_iter)) {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list_move_iter</a>(&amp;iter, &amp;target_iter);</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; }</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;}</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">/* Move up the selected TreeRow */</span></div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3"> 120</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3">remmina_string_list_on_action_up</a>(GtkWidget *widget, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; GtkTreeIter target_iter;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; GtkTreePath *path;</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="keywordflow">if</span> (gtk_tree_selection_get_selected(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, NULL, &amp;iter)) {</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; gtk_tree_selection_get_selected(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, NULL, &amp;target_iter);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; path = gtk_tree_model_get_path(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;target_iter);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="comment">/* Before moving the TreeRow check if there’s a previous item */</span></div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (gtk_tree_path_prev(path)) {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; gtk_tree_model_get_iter(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;target_iter, path);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list_move_iter</a>(&amp;iter, &amp;target_iter);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;}</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">/* Add a new TreeRow to the list */</span></div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b"> 140</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b">remmina_string_list_on_action_add</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;{</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; GtkTreePath *path;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; gtk_list_store_append(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gtk_tree_selection_select_iter(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, &amp;iter);</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; path = gtk_tree_model_get_path(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;iter);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; gtk_tree_view_set_cursor_on_cell(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">treeview_items</a>, path,</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">treeviewcolumn_item</a>,</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; GTK_CELL_RENDERER(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a> ? string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a> : string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">cellrenderertext_item2</a>),</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; TRUE);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gtk_tree_path_free(path);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a>();</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;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment">/* Remove the selected TreeRow from the list */</span></div><div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae"> 159</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae">remmina_string_list_on_action_remove</a>(GtkWidget *widget, gpointer user_data)</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;{</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; GtkTreeIter iter;</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"> 164</span>&#160; <span class="keywordflow">if</span> (gtk_tree_selection_get_selected(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>, NULL, &amp;iter)) {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_list_store_remove(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; gtk_widget_hide(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a>));</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a>();</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;}</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment">/* Load a string list by splitting a string value */</span></div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0"> 172</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gboolean clear_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; gchar **items;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; gchar **values;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; gint i;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">/* Clear the data before to load new items */</span></div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (clear_data)</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gtk_list_store_clear(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="comment">/* Split the string and insert each snippet in the string list */</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; items = g_strsplit(text, STRING_DELIMITOR, -1);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; g_strv_length(items); i++) {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; values = g_strsplit(items[i], string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a>, -1);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; gtk_list_store_append(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (g_strv_length(values) &gt; 1) {</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="comment">/* Two columns data */</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; gtk_list_store_set(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter,</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; COLUMN_DESCRIPTION, values[0],</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; COLUMN_VALUE, values[1],</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; -1);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="comment">/* Single column data */</span></div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; gtk_list_store_set(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>, &amp;iter,</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; COLUMN_VALUE, values[0],</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; -1);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_strfreev(values);</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_strfreev(items);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a>();</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;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment">/* Get a string value representing the string list */</span></div><div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec"> 206</a></span>&#160;gchar* <a class="code" href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a>(<span class="keywordtype">void</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; GString *str;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; GtkTreeIter iter;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; gboolean first;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gboolean ret;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">const</span> gchar *item_description;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keyword">const</span> gchar *item_value;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; str = g_string_new(NULL);</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; first = TRUE;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="comment">/* Cycle each GtkTreeIter in the ListStore */</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; ret = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;iter);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">while</span> (ret) {</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; gtk_tree_model_get(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;iter,</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; COLUMN_DESCRIPTION, &amp;item_description,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; COLUMN_VALUE, &amp;item_value,</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; -1);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">if</span> (!item_description)</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; item_description = <span class="stringliteral">&quot;&quot;</span>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">if</span> (item_value &amp;&amp; strlen(item_value) &gt; 0) {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="comment">/* Add a delimitor after the first element */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordflow">if</span> (!first) {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; g_string_append(str, STRING_DELIMITOR);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; first = 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; <span class="comment">/* Add the description for two columns list */</span></div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">if</span> (string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a>) {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; g_string_append(str, item_description);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; g_string_append(str, string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a>);</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="comment">/* Add the element to the string */</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; g_string_append(str, item_value);</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; ret = gtk_tree_model_iter_next(GTK_TREE_MODEL(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>), &amp;iter);</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; <span class="keywordflow">return</span> g_string_free(str, FALSE);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;}</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment">/* Set a function that will be used to validate the new rows */</span></div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e"> 248</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a>(<a class="code" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> func)</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; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a> = func;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;}</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment">/* Set the dialog titles */</span></div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87"> 255</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a>(gchar *title1, gchar *title2)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;{</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="comment">/* Set dialog titlebar */</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; gtk_window_set_title(GTK_WINDOW(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">dialog</a>),</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; (title1 &amp;&amp; strlen(title1) &gt; 0) ? title1 : <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="comment">/* Set title label */</span></div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">if</span> (title2 &amp;&amp; strlen(title2) &gt; 0) {</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gtk_label_set_text(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a>, title2);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; gtk_widget_show(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a>));</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gtk_widget_hide(GTK_WIDGET(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a>));</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;}</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;<span class="comment">/* RemminaStringList initialization */</span></div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab"> 270</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list_init</a>(<span class="keywordtype">void</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"> 272</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a> = NULL;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="comment">/* When two columns are requested, show also the first column */</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">if</span> (string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a>)</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; gtk_cell_renderer_set_visible(GTK_CELL_RENDERER(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a>), TRUE);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a>();</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;<span class="comment">/* RemminaStringList instance */</span></div><div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029"> 281</a></span>&#160;GtkDialog* <a class="code" href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a>(gboolean two_columns, <span class="keyword">const</span> gchar *fields_separator)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; string_list = g_new0(<a class="code" href="struct___remmina_string_list.html">RemminaStringList</a>, 1);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a> = g_new0(<a class="code" href="struct___remmina_string_list_priv.html">RemminaStringListPriv</a>, 1);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">builder</a> = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_string_list.glade&quot;</span>);</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">dialog</a> = GTK_DIALOG(gtk_builder_get_object(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">builder</a>, <span class="stringliteral">&quot;DialogStringList&quot;</span>));</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a> = GTK_LIST_STORE(GET_OBJECT(<span class="stringliteral">&quot;liststore_items&quot;</span>));</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">treeview_items</a> = GTK_TREE_VIEW(GET_OBJECT(<span class="stringliteral">&quot;treeview_items&quot;</span>));</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">treeviewcolumn_item</a> = GTK_TREE_VIEW_COLUMN(GET_OBJECT(<span class="stringliteral">&quot;treeviewcolumn_item&quot;</span>));</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a> = GTK_TREE_SELECTION(GET_OBJECT(<span class="stringliteral">&quot;treeview_selection&quot;</span>));</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a> = GTK_CELL_RENDERER_TEXT(GET_OBJECT(<span class="stringliteral">&quot;cellrenderertext_item1&quot;</span>));</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">cellrenderertext_item2</a> = GTK_CELL_RENDERER_TEXT(GET_OBJECT(<span class="stringliteral">&quot;cellrenderertext_item2&quot;</span>));</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">button_add</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_add&quot;</span>));</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">button_remove</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_remove&quot;</span>));</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">button_up</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_up&quot;</span>));</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">button_down</a> = GTK_BUTTON(GET_OBJECT(<span class="stringliteral">&quot;button_down&quot;</span>));</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_title&quot;</span>));</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a> = GTK_LABEL(GET_OBJECT(<span class="stringliteral">&quot;label_status&quot;</span>));</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; gtk_builder_connect_signals(string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">builder</a>, NULL);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="comment">/* Initialize the window and load the values */</span></div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">if</span> (!fields_separator)</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; fields_separator = STRING_DELIMITOR2;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a> = fields_separator;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>-&gt;<a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a> = two_columns;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list_init</a>();</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; <span class="keywordflow">return</span> string_list-&gt;<a class="code" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">dialog</a>;</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;}</div><div class="ttc" id="remmina__string__list_8c_html_a6f8601a848bb964c1c9caf69d00128b8"><div class="ttname"><a href="remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8">string_list</a></div><div class="ttdeci">static RemminaStringList * string_list</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00044">remmina_string_list.c:44</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a11147c41297537effe55f18a63ce9f7e"><div class="ttname"><a href="remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e">remmina_string_list_new</a></div><div class="ttdeci">GtkDialog * remmina_string_list_new(gboolean two_columns, const gchar *fields_separator)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00281">remmina_string_list.c:281</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a3e12b99b6faad1a1f17fab96cf41ae65"><div class="ttname"><a href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">_RemminaStringList::button_up</a></div><div class="ttdeci">GtkButton * button_up</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00060">remmina_string_list.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a76962f8e0b4a5dcbaf50790a3338faa3"><div class="ttname"><a href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">_RemminaStringList::priv</a></div><div class="ttdeci">RemminaStringListPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00066">remmina_string_list.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html_a5b7cfdd53c820f7e142631a7867c6bcb"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">_RemminaStringListPriv::two_columns</a></div><div class="ttdeci">gboolean two_columns</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00044">remmina_string_list.h:44</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#l00248">remmina_string_list.c:248</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a57ee0849e69606d61879c095b736b256"><div class="ttname"><a href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">_RemminaStringList::cellrenderertext_item1</a></div><div class="ttdeci">GtkCellRendererText * cellrenderertext_item1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00055">remmina_string_list.h:55</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a45c42dcabd4f5365e26b77a7ab5f18ae"><div class="ttname"><a href="remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae">remmina_string_list_on_action_remove</a></div><div class="ttdeci">void remmina_string_list_on_action_remove(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00159">remmina_string_list.c:159</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a60620e4231fe4c9a75c2468247488be4"><div class="ttname"><a href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">_RemminaStringList::button_add</a></div><div class="ttdeci">GtkButton * button_add</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00058">remmina_string_list.h:58</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a3c7633dffb5b6bab089c71c44506d8ab"><div class="ttname"><a href="remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab">remmina_string_list_init</a></div><div class="ttdeci">static void remmina_string_list_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00270">remmina_string_list.c:270</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a2da90e0958036c4cfbb52ba05cf69933"><div class="ttname"><a href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">_RemminaStringList::label_title</a></div><div class="ttdeci">GtkLabel * label_title</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00063">remmina_string_list.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a2dbca3443519d434c0f453c089d20bcd"><div class="ttname"><a href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">_RemminaStringList::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00048">remmina_string_list.h:48</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html_a5968b965b712f7e9c4223e3c26f25a24"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">_RemminaStringListPriv::validation_func</a></div><div class="ttdeci">RemminaStringListValidationFunc validation_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00042">remmina_string_list.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html"><div class="ttname"><a href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00041">remmina_string_list.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a182e86dda236f5d780052e4a35da2ac3"><div class="ttname"><a href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">_RemminaStringList::treeviewcolumn_item</a></div><div class="ttdeci">GtkTreeViewColumn * treeviewcolumn_item</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00053">remmina_string_list.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a96d5b01b1d418b4373c54f02ab4c6c97"><div class="ttname"><a href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">_RemminaStringList::treeview_selection</a></div><div class="ttdeci">GtkTreeSelection * treeview_selection</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00054">remmina_string_list.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a071fad44be3691b3ec231a1d280e50c1"><div class="ttname"><a href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">_RemminaStringList::button_down</a></div><div class="ttdeci">GtkButton * button_down</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00061">remmina_string_list.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a7fb48d319c2798f16123a8f0585e8bbe"><div class="ttname"><a href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">_RemminaStringList::cellrenderertext_item2</a></div><div class="ttdeci">GtkCellRendererText * cellrenderertext_item2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00056">remmina_string_list.h:56</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="struct___remmina_string_list_priv_html_a88500e692aef96da78bfb0091fc6f4a7"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">_RemminaStringListPriv::fields_separator</a></div><div class="ttdeci">const gchar * fields_separator</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00043">remmina_string_list.h:43</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_ae29b09ef2fd47b3bf33163fc7b295481"><div class="ttname"><a href="remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481">remmina_string_list_on_action_down</a></div><div class="ttdeci">void remmina_string_list_on_action_down(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00105">remmina_string_list.c:105</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a15c6a17a5d27cc36a3dd4c40df3311d2"><div class="ttname"><a href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">_RemminaStringList::treeview_items</a></div><div class="ttdeci">GtkTreeView * treeview_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00052">remmina_string_list.h:52</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a3112419c42db7e04347a3ba63778c7bb"><div class="ttname"><a href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a></div><div class="ttdeci">gboolean(* RemminaStringListValidationFunc)(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00039">remmina_string_list.h:39</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_aea7547abe3a67e6126addc9ed91af640"><div class="ttname"><a href="remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640">remmina_public_str_replace</a></div><div class="ttdeci">gchar * remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00659">remmina_public.c:659</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_ab1bacc097f59c20b477d954bb863a5e0"><div class="ttname"><a href="remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a></div><div class="ttdeci">void remmina_string_list_set_text(const gchar *text, const gboolean clear_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00172">remmina_string_list.c:172</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_afa74f7320b1d5b8487eaadcd97d0d085"><div class="ttname"><a href="remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085">remmina_string_list_on_cell_edited</a></div><div class="ttdeci">void remmina_string_list_on_cell_edited(GtkCellRendererText *cell, const gchar *path_string, const gchar *new_text)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00062">remmina_string_list.c:62</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html"><div class="ttname"><a href="remmina__string__list_8h.html">remmina_string_list.h</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_aa9ca6ccf40b954051a0daa5c1efeef87"><div class="ttname"><a href="remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a></div><div class="ttdeci">void remmina_string_list_set_titles(gchar *title1, gchar *title2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00255">remmina_string_list.c:255</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_adad14fc7d17767b3b1cdd94eca6b32ab"><div class="ttname"><a href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">_RemminaStringList::liststore_items</a></div><div class="ttdeci">GtkListStore * liststore_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00051">remmina_string_list.h:51</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a777917055c80821e9bde6ac8fd06e2ff"><div class="ttname"><a href="remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff">remmina_string_list_update_buttons_state</a></div><div class="ttdeci">void remmina_string_list_update_buttons_state(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00051">remmina_string_list.c:51</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_ad84558b018159257efd0969a4cd197c7"><div class="ttname"><a href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">_RemminaStringList::label_status</a></div><div class="ttdeci">GtkLabel * label_status</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00064">remmina_string_list.h:64</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a4f02ba383d1c5376606dd494771d5a1b"><div class="ttname"><a href="remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b">remmina_string_list_on_action_add</a></div><div class="ttdeci">void remmina_string_list_on_action_add(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00140">remmina_string_list.c:140</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a7f0b41416987d00fdbd8bdd31f7ba558"><div class="ttname"><a href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">_RemminaStringList::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00049">remmina_string_list.h:49</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html"><div class="ttname"><a href="struct___remmina_string_list.html">_RemminaStringList</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00047">remmina_string_list.h:47</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a5709fae6d1ab7827d9537715791fa819"><div class="ttname"><a href="remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819">remmina_string_list_move_iter</a></div><div class="ttdeci">static void remmina_string_list_move_iter(GtkTreeIter *from, GtkTreeIter *to)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00093">remmina_string_list.c:93</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_af41585699fdfd456f848177457cd3500"><div class="ttname"><a href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">_RemminaStringList::button_remove</a></div><div class="ttdeci">GtkButton * button_remove</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00059">remmina_string_list.h:59</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a74058eac0af28c05a55d041103457aec"><div class="ttname"><a href="remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a></div><div class="ttdeci">gchar * remmina_string_list_get_text(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00206">remmina_string_list.c:206</a></div></div>
+<div class="ttc" id="remmina__string__list_8c_html_a20d8786221c0baa00f1c55b4131cc5c3"><div class="ttname"><a href="remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3">remmina_string_list_on_action_up</a></div><div class="ttdeci">void remmina_string_list_on_action_up(GtkWidget *widget, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00120">remmina_string_list.c:120</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__list_8c.html">remmina_string_list.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__list_8h.html b/docs/remmina__string__list_8h.html
new file mode 100644
index 000000000..83970d2d4
--- /dev/null
+++ b/docs/remmina__string__list_8h.html
@@ -0,0 +1,313 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_list.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__list_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_string_list.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__string__list_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html">_RemminaStringList</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3112419c42db7e04347a3ba63778c7bb"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a>) (const gchar *new_str, gchar **error)</td></tr>
+<tr class="separator:a3112419c42db7e04347a3ba63778c7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a475c8b01c3e7b2c25109b62db2fd4349"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a></td></tr>
+<tr class="separator:a475c8b01c3e7b2c25109b62db2fd4349"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90a2f1348a10e51eae08253e04fd3001"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_string_list.html">_RemminaStringList</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a></td></tr>
+<tr class="separator:a90a2f1348a10e51eae08253e04fd3001"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a26bc63cdb43ed3fda2d86ac1d95a5029"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029">remmina_string_list_new</a> (gboolean two_columns, const gchar *fields_separator)</td></tr>
+<tr class="separator:a26bc63cdb43ed3fda2d86ac1d95a5029"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1bacc097f59c20b477d954bb863a5e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a> (const gchar *text, const gboolean clear_data)</td></tr>
+<tr class="separator:ab1bacc097f59c20b477d954bb863a5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74058eac0af28c05a55d041103457aec"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a> (void)</td></tr>
+<tr class="separator:a74058eac0af28c05a55d041103457aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9ca6ccf40b954051a0daa5c1efeef87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a> (gchar *title1, gchar *title2)</td></tr>
+<tr class="separator:aa9ca6ccf40b954051a0daa5c1efeef87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a500b85eafd23280f998d2980d1eba80e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a> (<a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> func)</td></tr>
+<tr class="separator:a500b85eafd23280f998d2980d1eba80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a90a2f1348a10e51eae08253e04fd3001"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a90a2f1348a10e51eae08253e04fd3001">&#9670;&nbsp;</a></span>RemminaStringList</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_string_list.html">_RemminaStringList</a> <a class="el" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a475c8b01c3e7b2c25109b62db2fd4349"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a475c8b01c3e7b2c25109b62db2fd4349">&#9670;&nbsp;</a></span>RemminaStringListPriv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a> <a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3112419c42db7e04347a3ba63778c7bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3112419c42db7e04347a3ba63778c7bb">&#9670;&nbsp;</a></span>RemminaStringListValidationFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gboolean(* RemminaStringListValidationFunc) (const gchar *new_str, gchar **error)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00039">39</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a74058eac0af28c05a55d041103457aec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74058eac0af28c05a55d041103457aec">&#9670;&nbsp;</a></span>remmina_string_list_get_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_string_list_get_text </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00206">206</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a26bc63cdb43ed3fda2d86ac1d95a5029"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26bc63cdb43ed3fda2d86ac1d95a5029">&#9670;&nbsp;</a></span>remmina_string_list_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS GtkDialog* remmina_string_list_new </td>
+ <td>(</td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>two_columns</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>fields_separator</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00281">281</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="ab1bacc097f59c20b477d954bb863a5e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab1bacc097f59c20b477d954bb863a5e0">&#9670;&nbsp;</a></span>remmina_string_list_set_text()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_text </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gboolean&#160;</td>
+ <td class="paramname"><em>clear_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00172">172</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="aa9ca6ccf40b954051a0daa5c1efeef87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9ca6ccf40b954051a0daa5c1efeef87">&#9670;&nbsp;</a></span>remmina_string_list_set_titles()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_titles </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>title1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>title2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00255">255</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+<a id="a500b85eafd23280f998d2980d1eba80e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a500b85eafd23280f998d2980d1eba80e">&#9670;&nbsp;</a></span>remmina_string_list_set_validation_func()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_string_list_set_validation_func </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a>&#160;</td>
+ <td class="paramname"><em>func</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8c_source.html#l00248">248</a> of file <a class="el" href="remmina__string__list_8c_source.html">remmina_string_list.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__list_8h.html">remmina_string_list.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__string__list_8h.js b/docs/remmina__string__list_8h.js
new file mode 100644
index 000000000..e6f702689
--- /dev/null
+++ b/docs/remmina__string__list_8h.js
@@ -0,0 +1,13 @@
+var remmina__string__list_8h =
+[
+ [ "_RemminaStringListPriv", "struct___remmina_string_list_priv.html", "struct___remmina_string_list_priv" ],
+ [ "_RemminaStringList", "struct___remmina_string_list.html", "struct___remmina_string_list" ],
+ [ "RemminaStringList", "remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001", null ],
+ [ "RemminaStringListPriv", "remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349", null ],
+ [ "RemminaStringListValidationFunc", "remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb", null ],
+ [ "remmina_string_list_get_text", "remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec", null ],
+ [ "remmina_string_list_new", "remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029", null ],
+ [ "remmina_string_list_set_text", "remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0", null ],
+ [ "remmina_string_list_set_titles", "remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87", null ],
+ [ "remmina_string_list_set_validation_func", "remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__string__list_8h_source.html b/docs/remmina__string__list_8h_source.html
new file mode 100644
index 000000000..8a194e2a1
--- /dev/null
+++ b/docs/remmina__string__list_8h_source.html
@@ -0,0 +1,129 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_string_list.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__string__list_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_string_list.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__string__list_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 - 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb"> 39</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a>)(<span class="keyword">const</span> gchar *new_str, gchar **error);</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="struct___remmina_string_list_priv.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a> {</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24"> 42</a></span>&#160; <a class="code" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> <a class="code" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7"> 43</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb"> 44</a></span>&#160; gboolean <a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;} <a class="code" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_string_list.html">_RemminaStringList</a> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd"> 48</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">builder</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558"> 49</a></span>&#160; GtkDialog * <a class="code" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">dialog</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab"> 51</a></span>&#160; GtkListStore * <a class="code" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2"> 52</a></span>&#160; GtkTreeView * <a class="code" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">treeview_items</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3"> 53</a></span>&#160; GtkTreeViewColumn * <a class="code" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">treeviewcolumn_item</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97"> 54</a></span>&#160; GtkTreeSelection * <a class="code" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256"> 55</a></span>&#160; GtkCellRendererText * <a class="code" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe"> 56</a></span>&#160; GtkCellRendererText * <a class="code" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">cellrenderertext_item2</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4"> 58</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">button_add</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500"> 59</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">button_remove</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65"> 60</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">button_up</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1"> 61</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">button_down</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933"> 63</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7"> 64</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3"> 66</a></span>&#160; <a class="code" href="struct___remmina_string_list_priv.html">RemminaStringListPriv</a> * <a class="code" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;} <a class="code" href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a>;</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;G_BEGIN_DECLS</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="comment">/* RemminaStringList instance */</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;GtkDialog *<a class="code" href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029">remmina_string_list_new</a>(gboolean <a class="code" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a>, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a>);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* Load a string list by splitting a string value */</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a>(<span class="keyword">const</span> gchar *text, <span class="keyword">const</span> gboolean clear_data);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">/* Get a string value representing the string list */</span></div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;gchar *<a class="code" href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment">/* Set the dialog titles */</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a>(gchar *title1, gchar *title2);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* Set a function that will be used to validate the new rows */</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e">remmina_string_list_set_validation_func</a>(<a class="code" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> func);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_string_list_html_a3e12b99b6faad1a1f17fab96cf41ae65"><div class="ttname"><a href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">_RemminaStringList::button_up</a></div><div class="ttdeci">GtkButton * button_up</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00060">remmina_string_list.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a76962f8e0b4a5dcbaf50790a3338faa3"><div class="ttname"><a href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">_RemminaStringList::priv</a></div><div class="ttdeci">RemminaStringListPriv * priv</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00066">remmina_string_list.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html_a5b7cfdd53c820f7e142631a7867c6bcb"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">_RemminaStringListPriv::two_columns</a></div><div class="ttdeci">gboolean two_columns</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00044">remmina_string_list.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a57ee0849e69606d61879c095b736b256"><div class="ttname"><a href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">_RemminaStringList::cellrenderertext_item1</a></div><div class="ttdeci">GtkCellRendererText * cellrenderertext_item1</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00055">remmina_string_list.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a60620e4231fe4c9a75c2468247488be4"><div class="ttname"><a href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">_RemminaStringList::button_add</a></div><div class="ttdeci">GtkButton * button_add</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00058">remmina_string_list.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a2da90e0958036c4cfbb52ba05cf69933"><div class="ttname"><a href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">_RemminaStringList::label_title</a></div><div class="ttdeci">GtkLabel * label_title</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00063">remmina_string_list.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a2dbca3443519d434c0f453c089d20bcd"><div class="ttname"><a href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">_RemminaStringList::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00048">remmina_string_list.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html_a5968b965b712f7e9c4223e3c26f25a24"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">_RemminaStringListPriv::validation_func</a></div><div class="ttdeci">RemminaStringListValidationFunc validation_func</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00042">remmina_string_list.h:42</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a475c8b01c3e7b2c25109b62db2fd4349"><div class="ttname"><a href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a></div><div class="ttdeci">struct _RemminaStringListPriv RemminaStringListPriv</div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a90a2f1348a10e51eae08253e04fd3001"><div class="ttname"><a href="remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001">RemminaStringList</a></div><div class="ttdeci">struct _RemminaStringList RemminaStringList</div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html"><div class="ttname"><a href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00041">remmina_string_list.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a182e86dda236f5d780052e4a35da2ac3"><div class="ttname"><a href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">_RemminaStringList::treeviewcolumn_item</a></div><div class="ttdeci">GtkTreeViewColumn * treeviewcolumn_item</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00053">remmina_string_list.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a96d5b01b1d418b4373c54f02ab4c6c97"><div class="ttname"><a href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">_RemminaStringList::treeview_selection</a></div><div class="ttdeci">GtkTreeSelection * treeview_selection</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00054">remmina_string_list.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a071fad44be3691b3ec231a1d280e50c1"><div class="ttname"><a href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">_RemminaStringList::button_down</a></div><div class="ttdeci">GtkButton * button_down</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00061">remmina_string_list.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a7fb48d319c2798f16123a8f0585e8bbe"><div class="ttname"><a href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">_RemminaStringList::cellrenderertext_item2</a></div><div class="ttdeci">GtkCellRendererText * cellrenderertext_item2</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00056">remmina_string_list.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_priv_html_a88500e692aef96da78bfb0091fc6f4a7"><div class="ttname"><a href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">_RemminaStringListPriv::fields_separator</a></div><div class="ttdeci">const gchar * fields_separator</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00043">remmina_string_list.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a15c6a17a5d27cc36a3dd4c40df3311d2"><div class="ttname"><a href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">_RemminaStringList::treeview_items</a></div><div class="ttdeci">GtkTreeView * treeview_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00052">remmina_string_list.h:52</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a500b85eafd23280f998d2980d1eba80e"><div class="ttname"><a href="remmina__string__list_8h.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#l00248">remmina_string_list.c:248</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a3112419c42db7e04347a3ba63778c7bb"><div class="ttname"><a href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a></div><div class="ttdeci">gboolean(* RemminaStringListValidationFunc)(const gchar *new_str, gchar **error)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00039">remmina_string_list.h:39</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_aa9ca6ccf40b954051a0daa5c1efeef87"><div class="ttname"><a href="remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87">remmina_string_list_set_titles</a></div><div class="ttdeci">void remmina_string_list_set_titles(gchar *title1, gchar *title2)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00255">remmina_string_list.c:255</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a26bc63cdb43ed3fda2d86ac1d95a5029"><div class="ttname"><a href="remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029">remmina_string_list_new</a></div><div class="ttdeci">G_BEGIN_DECLS GtkDialog * remmina_string_list_new(gboolean two_columns, const gchar *fields_separator)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00281">remmina_string_list.c:281</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_adad14fc7d17767b3b1cdd94eca6b32ab"><div class="ttname"><a href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">_RemminaStringList::liststore_items</a></div><div class="ttdeci">GtkListStore * liststore_items</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00051">remmina_string_list.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_ad84558b018159257efd0969a4cd197c7"><div class="ttname"><a href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">_RemminaStringList::label_status</a></div><div class="ttdeci">GtkLabel * label_status</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00064">remmina_string_list.h:64</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_a74058eac0af28c05a55d041103457aec"><div class="ttname"><a href="remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec">remmina_string_list_get_text</a></div><div class="ttdeci">gchar * remmina_string_list_get_text(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00206">remmina_string_list.c:206</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_a7f0b41416987d00fdbd8bdd31f7ba558"><div class="ttname"><a href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">_RemminaStringList::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00049">remmina_string_list.h:49</a></div></div>
+<div class="ttc" id="remmina__string__list_8h_html_ab1bacc097f59c20b477d954bb863a5e0"><div class="ttname"><a href="remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0">remmina_string_list_set_text</a></div><div class="ttdeci">void remmina_string_list_set_text(const gchar *text, const gboolean clear_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8c_source.html#l00172">remmina_string_list.c:172</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html"><div class="ttname"><a href="struct___remmina_string_list.html">_RemminaStringList</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00047">remmina_string_list.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_string_list_html_af41585699fdfd456f848177457cd3500"><div class="ttname"><a href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">_RemminaStringList::button_remove</a></div><div class="ttdeci">GtkButton * button_remove</div><div class="ttdef"><b>Definition:</b> <a href="remmina__string__list_8h_source.html#l00059">remmina_string_list.h:59</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__string__list_8h.html">remmina_string_list.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sysinfo_8c.html b/docs/remmina__sysinfo_8c.html
new file mode 100644
index 000000000..803adac22
--- /dev/null
+++ b/docs/remmina__sysinfo_8c.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sysinfo.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sysinfo_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sysinfo.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sysinfo_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae6ecf91edb905f3b2b39e33e05325590"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a> ()</td></tr>
+<tr class="separator:ae6ecf91edb905f3b2b39e33e05325590"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79fd36823613c320001f0cdd2a97490f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a> ()</td></tr>
+<tr class="memdesc:a79fd36823613c320001f0cdd2a97490f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query DBUS to get gnome shell version. <a href="#a79fd36823613c320001f0cdd2a97490f">More...</a><br /></td></tr>
+<tr class="separator:a79fd36823613c320001f0cdd2a97490f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4441d62bb4075d1618b5750fea064b4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo_get_wm_name</a> ()</td></tr>
+<tr class="memdesc:ae4441d62bb4075d1618b5750fea064b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query environment variables to get the Window manager name. <a href="#ae4441d62bb4075d1618b5750fea064b4">More...</a><br /></td></tr>
+<tr class="separator:ae4441d62bb4075d1618b5750fea064b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a79fd36823613c320001f0cdd2a97490f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79fd36823613c320001f0cdd2a97490f">&#9670;&nbsp;</a></span>remmina_sysinfo_get_gnome_shell_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sysinfo_get_gnome_shell_version </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Query DBUS to get gnome shell version. </p>
+<dl class="section return"><dt>Returns</dt><dd>the gnome shell version as a string or NULL if error or no gnome shell found. </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>The returned string must be freed with g_free. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00087">87</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4441d62bb4075d1618b5750fea064b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4441d62bb4075d1618b5750fea064b4">&#9670;&nbsp;</a></span>remmina_sysinfo_get_wm_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sysinfo_get_wm_name </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Query environment variables to get the Window manager name. </p>
+<dl class="section return"><dt>Returns</dt><dd>a string composed by XDG_CURRENT_DESKTOP and GDMSESSION as a string or \0 if nothing has been found. </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>The returned string must be freed with g_free. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00131">131</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+<a id="ae6ecf91edb905f3b2b39e33e05325590"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6ecf91edb905f3b2b39e33e05325590">&#9670;&nbsp;</a></span>remmina_sysinfo_is_appindicator_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_sysinfo_is_appindicator_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00046">46</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sysinfo_8c.html">remmina_sysinfo.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sysinfo_8c.js b/docs/remmina__sysinfo_8c.js
new file mode 100644
index 000000000..9395270ed
--- /dev/null
+++ b/docs/remmina__sysinfo_8c.js
@@ -0,0 +1,6 @@
+var remmina__sysinfo_8c =
+[
+ [ "remmina_sysinfo_get_gnome_shell_version", "remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f", null ],
+ [ "remmina_sysinfo_get_wm_name", "remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4", null ],
+ [ "remmina_sysinfo_is_appindicator_available", "remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sysinfo_8c_source.html b/docs/remmina__sysinfo_8c_source.html
new file mode 100644
index 000000000..da61ae0b8
--- /dev/null
+++ b/docs/remmina__sysinfo_8c_source.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sysinfo.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sysinfo_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sysinfo.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sysinfo_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-2020 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 &lt;gtk/gtk.h&gt;</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;sys/stat.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</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__trace__calls_8h.html">remmina/remmina_trace_calls.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__sysinfo_8h.html">remmina_sysinfo.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__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23"> 46</a></span>&#160;gboolean <a class="code" href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</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"> 48</span>&#160; <span class="comment">/* Check if we have an appindicator available (which uses</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> * DBUS KDE StatusNotifier)</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; GDBusConnection *con;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; GVariant *v;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; GError *error;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; gboolean available;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; available = FALSE;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; con = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, NULL);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (con) {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; error = NULL;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; v = g_dbus_connection_call_sync(con,</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="stringliteral">&quot;org.kde.StatusNotifierWatcher&quot;</span>,</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="stringliteral">&quot;/StatusNotifierWatcher&quot;</span>,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;org.freedesktop.DBus.Introspectable&quot;</span>,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="stringliteral">&quot;Introspect&quot;</span>,</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; NULL,</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; NULL,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; G_DBUS_CALL_FLAGS_NONE,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; -1,</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; NULL,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; &amp;error);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span> (v) {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; available = TRUE;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; g_variant_unref(v);</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; g_object_unref(con);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> available;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;}</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb"> 87</a></span>&#160;gchar *<a class="code" href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</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"> 89</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; GDBusConnection *con;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; GDBusProxy *p;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; GVariant *v;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; GError *error;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; gsize sz;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; gchar *ret;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; ret = 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; con = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, NULL);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (con) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; error = NULL;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; p = g_dbus_proxy_new_sync(con,</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS | G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; NULL,</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="stringliteral">&quot;org.gnome.Shell&quot;</span>,</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="stringliteral">&quot;/org/gnome/Shell&quot;</span>,</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="stringliteral">&quot;org.gnome.Shell&quot;</span>,</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; NULL,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; &amp;error);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">if</span> (p) {</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; v = g_dbus_proxy_get_cached_property(p, <span class="stringliteral">&quot;ShellVersion&quot;</span>);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">if</span> (v) {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (g_variant_is_of_type(v, G_VARIANT_TYPE_STRING)) {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; ret = g_strdup(g_variant_get_string(v, &amp;sz));</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; g_variant_unref(v);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; g_object_unref(p);</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; g_object_unref(con);</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; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a"> 131</a></span>&#160;gchar *<a class="code" href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo_get_wm_name</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> gchar *xdg_current_desktop;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> gchar *gdmsession;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gchar *ret;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; xdg_current_desktop = g_environ_getenv(g_get_environ(), <span class="stringliteral">&quot;XDG_CURRENT_DESKTOP&quot;</span>);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; gdmsession = g_environ_getenv(g_get_environ(), <span class="stringliteral">&quot;GDMSESSION&quot;</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; <span class="keywordflow">if</span> (!xdg_current_desktop || xdg_current_desktop[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span> (!gdmsession || gdmsession[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; ret = NULL;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; ret = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, gdmsession);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (!gdmsession || gdmsession[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; ret = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, xdg_current_desktop);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(xdg_current_desktop,gdmsession) == 0) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; ret = g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, xdg_current_desktop);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; ret = g_strdup_printf(<span class="stringliteral">&quot;%s %s&quot;</span>, xdg_current_desktop, gdmsession);</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"> 155</span>&#160; <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;}</div><div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_a79fd36823613c320001f0cdd2a97490f"><div class="ttname"><a href="remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f">remmina_sysinfo_get_gnome_shell_version</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_gnome_shell_version()</div><div class="ttdoc">Query DBUS to get gnome shell version. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00087">remmina_sysinfo.c:87</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_ae4441d62bb4075d1618b5750fea064b4"><div class="ttname"><a href="remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4">remmina_sysinfo_get_wm_name</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_wm_name()</div><div class="ttdoc">Query environment variables to get the Window manager name. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00131">remmina_sysinfo.c:131</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8c_html_ae6ecf91edb905f3b2b39e33e05325590"><div class="ttname"><a href="remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590">remmina_sysinfo_is_appindicator_available</a></div><div class="ttdeci">gboolean remmina_sysinfo_is_appindicator_available()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00046">remmina_sysinfo.c:46</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html"><div class="ttname"><a href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sysinfo_8c.html">remmina_sysinfo.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sysinfo_8h.html b/docs/remmina__sysinfo_8h.html
new file mode 100644
index 000000000..7c1f22c74
--- /dev/null
+++ b/docs/remmina__sysinfo_8h.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sysinfo.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sysinfo_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_sysinfo.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__sysinfo_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9e89ac64e13b47a651554d6a77af6b23"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23">remmina_sysinfo_is_appindicator_available</a> (void)</td></tr>
+<tr class="separator:a9e89ac64e13b47a651554d6a77af6b23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f1ea6410d45aaf5603439a5919aa1cb"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb">remmina_sysinfo_get_gnome_shell_version</a> (void)</td></tr>
+<tr class="memdesc:a9f1ea6410d45aaf5603439a5919aa1cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query DBUS to get gnome shell version. <a href="#a9f1ea6410d45aaf5603439a5919aa1cb">More...</a><br /></td></tr>
+<tr class="separator:a9f1ea6410d45aaf5603439a5919aa1cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e08ab3a66f27ada8e700ae42a181b6a"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a">remmina_sysinfo_get_wm_name</a> (void)</td></tr>
+<tr class="memdesc:a5e08ab3a66f27ada8e700ae42a181b6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Query environment variables to get the Window manager name. <a href="#a5e08ab3a66f27ada8e700ae42a181b6a">More...</a><br /></td></tr>
+<tr class="separator:a5e08ab3a66f27ada8e700ae42a181b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a9f1ea6410d45aaf5603439a5919aa1cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f1ea6410d45aaf5603439a5919aa1cb">&#9670;&nbsp;</a></span>remmina_sysinfo_get_gnome_shell_version()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sysinfo_get_gnome_shell_version </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Query DBUS to get gnome shell version. </p>
+<dl class="section return"><dt>Returns</dt><dd>the gnome shell version as a string or NULL if error or no gnome shell found. </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>The returned string must be freed with g_free. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00087">87</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e08ab3a66f27ada8e700ae42a181b6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e08ab3a66f27ada8e700ae42a181b6a">&#9670;&nbsp;</a></span>remmina_sysinfo_get_wm_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sysinfo_get_wm_name </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Query environment variables to get the Window manager name. </p>
+<dl class="section return"><dt>Returns</dt><dd>a string composed by XDG_CURRENT_DESKTOP and GDMSESSION as a string or \0 if nothing has been found. </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>The returned string must be freed with g_free. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00131">131</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+<a id="a9e89ac64e13b47a651554d6a77af6b23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e89ac64e13b47a651554d6a77af6b23">&#9670;&nbsp;</a></span>remmina_sysinfo_is_appindicator_available()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gboolean remmina_sysinfo_is_appindicator_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sysinfo_8c_source.html#l00046">46</a> of file <a class="el" href="remmina__sysinfo_8c_source.html">remmina_sysinfo.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__sysinfo_8h.js b/docs/remmina__sysinfo_8h.js
new file mode 100644
index 000000000..562c306ed
--- /dev/null
+++ b/docs/remmina__sysinfo_8h.js
@@ -0,0 +1,6 @@
+var remmina__sysinfo_8h =
+[
+ [ "remmina_sysinfo_get_gnome_shell_version", "remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb", null ],
+ [ "remmina_sysinfo_get_wm_name", "remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a", null ],
+ [ "remmina_sysinfo_is_appindicator_available", "remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__sysinfo_8h_source.html b/docs/remmina__sysinfo_8h_source.html
new file mode 100644
index 000000000..ae3ba34c1
--- /dev/null
+++ b/docs/remmina__sysinfo_8h_source.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_sysinfo.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__sysinfo_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_sysinfo.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__sysinfo_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;gboolean <a class="code" href="remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23">remmina_sysinfo_is_appindicator_available</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;gchar *<a class="code" href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb">remmina_sysinfo_get_gnome_shell_version</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;gchar *<a class="code" href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a">remmina_sysinfo_get_wm_name</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__sysinfo_8h_html_a9f1ea6410d45aaf5603439a5919aa1cb"><div class="ttname"><a href="remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb">remmina_sysinfo_get_gnome_shell_version</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_gnome_shell_version(void)</div><div class="ttdoc">Query DBUS to get gnome shell version. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00087">remmina_sysinfo.c:87</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html_a5e08ab3a66f27ada8e700ae42a181b6a"><div class="ttname"><a href="remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a">remmina_sysinfo_get_wm_name</a></div><div class="ttdeci">gchar * remmina_sysinfo_get_wm_name(void)</div><div class="ttdoc">Query environment variables to get the Window manager name. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00131">remmina_sysinfo.c:131</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html_a9e89ac64e13b47a651554d6a77af6b23"><div class="ttname"><a href="remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23">remmina_sysinfo_is_appindicator_available</a></div><div class="ttdeci">G_BEGIN_DECLS gboolean remmina_sysinfo_is_appindicator_available(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sysinfo_8c_source.html#l00046">remmina_sysinfo.c:46</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__trace__calls_8h.html b/docs/remmina__trace__calls_8h.html
new file mode 100644
index 000000000..4c2982863
--- /dev/null
+++ b/docs/remmina__trace__calls_8h.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_trace_calls.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__trace__calls_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_trace_calls.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__trace__calls_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a64f3bfdd611684b04321d32f9bbb6c24"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a></td></tr>
+<tr class="separator:a64f3bfdd611684b04321d32f9bbb6c24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a64f3bfdd611684b04321d32f9bbb6c24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64f3bfdd611684b04321d32f9bbb6c24">&#9670;&nbsp;</a></span>fun</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* fun</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__main_8c_source.html">remmina_main.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__trace__calls_8h.js b/docs/remmina__trace__calls_8h.js
new file mode 100644
index 000000000..6d9e75862
--- /dev/null
+++ b/docs/remmina__trace__calls_8h.js
@@ -0,0 +1,4 @@
+var remmina__trace__calls_8h =
+[
+ [ "fun", "remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__trace__calls_8h_source.html b/docs/remmina__trace__calls_8h_source.html
new file mode 100644
index 000000000..f91554c2e
--- /dev/null
+++ b/docs/remmina__trace__calls_8h_source.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_trace_calls.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__trace__calls_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_trace_calls.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__trace__calls_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) 2014-2015 Antenore Gatta, Fabio Castelli, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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 &lt;gtk/gtk.h&gt;</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="keyword">extern</span> <span class="keywordtype">char</span> *<a class="code" href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a>; <span class="comment">/* function name externalized to be used everywhere */</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define UNUSED(expr) do { (void)(expr); } while (0)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifdef WITH_TRACE_CALLS</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define TRACE_CALL(text) \</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"> fun = g_strdup (text); \</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"> UNUSED(fun); \</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"> GDateTime *datetime = g_date_time_new_now_local(); \</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> gchar *sfmtdate = g_date_time_format(datetime, &quot;%x %X&quot;); \</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"> g_print(&quot;%s Trace calls: %s\n&quot;, sfmtdate, text); \</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"> g_free(sfmtdate); \</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> g_date_time_unref(datetime); \</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define TRACE_CALL(text) \</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"> fun = g_strdup (text); \</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"> UNUSED(fun); \</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* _WITH_TRACE_CALLS_ */</span><span class="preprocessor"></span></div><div class="ttc" id="remmina__trace__calls_8h_html_a64f3bfdd611684b04321d32f9bbb6c24"><div class="ttname"><a href="remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24">fun</a></div><div class="ttdeci">char * fun</div><div class="ttdef"><b>Definition:</b> <a href="remmina__main_8c_source.html#l00069">remmina_main.c:69</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__traceroute_8sh.html b/docs/remmina__traceroute_8sh.html
new file mode 100644
index 000000000..804d2bb36
--- /dev/null
+++ b/docs/remmina__traceroute_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_traceroute.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__traceroute_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_traceroute.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__traceroute_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__traceroute_8sh.html">remmina_traceroute.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__traceroute_8sh_source.html b/docs/remmina__traceroute_8sh_source.html
new file mode 100644
index 000000000..5b40aacf5
--- /dev/null
+++ b/docs/remmina__traceroute_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_traceroute.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__traceroute_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_traceroute.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__traceroute_8sh.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;#!/bin/sh</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;. $(dirname $0)/functions.sh</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;settitle</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;traceroute $server</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;pause</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_102f75735b5d16c1e789df8d2c0a1a6f.html">external_tools</a></li><li class="navelem"><a class="el" href="remmina__traceroute_8sh.html">remmina_traceroute.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__unlock_8c.html b/docs/remmina__unlock_8c.html
new file mode 100644
index 000000000..7f44eaaf6
--- /dev/null
+++ b/docs/remmina__unlock_8c.html
@@ -0,0 +1,359 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_unlock.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__unlock_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_unlock.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__unlock_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4c971264cea7aae8a5ba885f1e2430c2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock_timer_init</a> ()</td></tr>
+<tr class="separator:a4c971264cea7aae8a5ba885f1e2430c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8dc92ad404209441f4346a3417cc55e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock_timer_reset</a> (gpointer user_data)</td></tr>
+<tr class="separator:ab8dc92ad404209441f4346a3417cc55e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af24c3977f6a1806914d22fead301a0cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd">remmina_unlock_timer_destroy</a> ()</td></tr>
+<tr class="separator:af24c3977f6a1806914d22fead301a0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10e43559c46ea3ba409c0b97a43c93b3"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock_unlock_clicked</a> (GtkButton *btn, gpointer user_data)</td></tr>
+<tr class="separator:a10e43559c46ea3ba409c0b97a43c93b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6e3a59f765b6d8012cb61005f1a3d18"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock_cancel_clicked</a> (GtkButton *btn, gpointer user_data)</td></tr>
+<tr class="separator:ac6e3a59f765b6d8012cb61005f1a3d18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81e79e5c1c230b7e2bf27b2457801d4e"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:a81e79e5c1c230b7e2bf27b2457801d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a18d0da78f53c4002601a59e85373f6d7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7">remmina_unlock_dialog</a></td></tr>
+<tr class="separator:a18d0da78f53c4002601a59e85373f6d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74421b834d52c638084568e39a6882c0"><td class="memItemLeft" align="right" valign="top">GTimer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a></td></tr>
+<tr class="separator:a74421b834d52c638084568e39a6882c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9ee6d79e7bae171521ccacc8e4c43ea"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a></td></tr>
+<tr class="separator:ac9ee6d79e7bae171521ccacc8e4c43ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ac6e3a59f765b6d8012cb61005f1a3d18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6e3a59f765b6d8012cb61005f1a3d18">&#9670;&nbsp;</a></span>remmina_unlock_cancel_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_unlock_cancel_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>btn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00103">103</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a81e79e5c1c230b7e2bf27b2457801d4e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81e79e5c1c230b7e2bf27b2457801d4e">&#9670;&nbsp;</a></span>remmina_unlock_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_unlock_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="af24c3977f6a1806914d22fead301a0cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af24c3977f6a1806914d22fead301a0cd">&#9670;&nbsp;</a></span>remmina_unlock_timer_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_unlock_timer_destroy </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00072">72</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a4c971264cea7aae8a5ba885f1e2430c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c971264cea7aae8a5ba885f1e2430c2">&#9670;&nbsp;</a></span>remmina_unlock_timer_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_unlock_timer_init </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="ab8dc92ad404209441f4346a3417cc55e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab8dc92ad404209441f4346a3417cc55e">&#9670;&nbsp;</a></span>remmina_unlock_timer_reset()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_unlock_timer_reset </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a10e43559c46ea3ba409c0b97a43c93b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10e43559c46ea3ba409c0b97a43c93b3">&#9670;&nbsp;</a></span>remmina_unlock_unlock_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_unlock_unlock_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>btn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00079">79</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ac9ee6d79e7bae171521ccacc8e4c43ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9ee6d79e7bae171521ccacc8e4c43ea">&#9670;&nbsp;</a></span>isinit</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean isinit</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a18d0da78f53c4002601a59e85373f6d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18d0da78f53c4002601a59e85373f6d7">&#9670;&nbsp;</a></span>remmina_unlock_dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a>* remmina_unlock_dialog</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00050">50</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a74421b834d52c638084568e39a6882c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74421b834d52c638084568e39a6882c0">&#9670;&nbsp;</a></span>timer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GTimer* timer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__unlock_8c.html">remmina_unlock.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__unlock_8c.js b/docs/remmina__unlock_8c.js
new file mode 100644
index 000000000..88367fc95
--- /dev/null
+++ b/docs/remmina__unlock_8c.js
@@ -0,0 +1,12 @@
+var remmina__unlock_8c =
+[
+ [ "remmina_unlock_cancel_clicked", "remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18", null ],
+ [ "remmina_unlock_new", "remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e", null ],
+ [ "remmina_unlock_timer_destroy", "remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd", null ],
+ [ "remmina_unlock_timer_init", "remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2", null ],
+ [ "remmina_unlock_timer_reset", "remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e", null ],
+ [ "remmina_unlock_unlock_clicked", "remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3", null ],
+ [ "isinit", "remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea", null ],
+ [ "remmina_unlock_dialog", "remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7", null ],
+ [ "timer", "remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__unlock_8c_source.html b/docs/remmina__unlock_8c_source.html
new file mode 100644
index 000000000..a93931a43
--- /dev/null
+++ b/docs/remmina__unlock_8c_source.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_unlock.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__unlock_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_unlock.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__unlock_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;glib/gprintf.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;config.h&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__sodium_8h.html">remmina_sodium.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__unlock_8h.html">remmina_unlock.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__public_8h.html">remmina_public.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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7"> 50</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_unlock_dialog.html">RemminaUnlockDialog</a> *<a class="code" href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7">remmina_unlock_dialog</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define GET_OBJ(object_name) gtk_builder_get_object(remmina_unlock_dialog-&gt;builder, object_name)</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0"> 53</a></span>&#160;GTimer *<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea"> 54</a></span>&#160;gboolean <a class="code" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2"> 56</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock_timer_init</a>()</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;{</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a> = g_timer_new();</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; g_info(<span class="stringliteral">&quot;Unlock Master Password timer initialized&quot;</span>);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e"> 64</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock_timer_reset</a>(gpointer user_data)</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; g_timer_reset(<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a>);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; g_info(<span class="stringliteral">&quot;Unlock Master Password timer reset&quot;</span>);</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;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd"> 72</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd">remmina_unlock_timer_destroy</a>()</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;{</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; g_timer_destroy(<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a>);</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"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3"> 79</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock_unlock_clicked</a>(GtkButton *btn, gpointer user_data)</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;{</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">//g_timer_reset(remmina_unlock_dialog-&gt;timer);</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; gchar *unlock_password;</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> gchar *entry_passwd;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; gint rc;</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; unlock_password = <a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="stringliteral">&quot;unlock_password&quot;</span>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; entry_passwd = gtk_entry_get_text(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">entry_unlock</a>);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; rc = <a class="code" href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a>(unlock_password, entry_passwd);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; g_info(<span class="stringliteral">&quot;remmina_sodium_pwhash_str_verify returned %i&quot;</span>, rc);</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="keywordflow">if</span> (rc == 0) {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; g_info(<span class="stringliteral">&quot;Passphrase veryfied successfully&quot;</span>);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock_timer_reset</a>(remmina_unlock_dialog);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gtk_widget_destroy(GTK_WIDGET(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a>));</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a> = NULL;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; g_warning (<span class="stringliteral">&quot;Passphrase is wrong, to reset it, you can edit the remmina.pref file by hand&quot;</span>);</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;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18"> 103</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock_cancel_clicked</a>(GtkButton *btn, gpointer user_data)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">retval</a> = 0;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; gtk_widget_destroy(GTK_WIDGET(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a>));</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a> = 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__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7"> 111</a></span>&#160;gint <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(GtkWindow *parent)</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;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; gdouble unlock_timeout;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; gdouble elapsed = 0.0;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; gboolean lock = TRUE;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; unlock_timeout = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</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; remmina_unlock_dialog = g_new0(<a class="code" href="struct___remmina_unlock_dialog.html">RemminaUnlockDialog</a>, 1);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">retval</a> = 1;</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; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a> == NULL)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock_timer_init</a>();</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a> != NULL)</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; elapsed = g_timer_elapsed(<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a>, NULL);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (((<span class="keywordtype">int</span>)unlock_timeout - elapsed) &lt; 0) lock = TRUE;</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span> (((<span class="keywordtype">int</span>)unlock_timeout - elapsed) &gt;= 0) lock = FALSE;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">/* timer &amp; timout = 0 */</span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a> != NULL &amp;&amp; (<span class="keywordtype">int</span>)unlock_timeout == 0) lock = FALSE;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="comment">/* first time and timout = 30 */</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__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a> == 0 &amp;&amp; (<span class="keywordtype">int</span>)unlock_timeout &gt;= 0) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; lock = TRUE;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a> = TRUE;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="comment">/* first time and timout = 0 */</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__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a> == 0 &amp;&amp; (<span class="keywordtype">int</span>)unlock_timeout == 0) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; lock = TRUE;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a> = TRUE;</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_info(<span class="stringliteral">&quot;Based on settings and current status, the unlock dialog is set to %d&quot;</span>, lock);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">builder</a> = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_unlock.glade&quot;</span>);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a> = GTK_DIALOG(gtk_builder_get_object(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">builder</a>, <span class="stringliteral">&quot;RemminaUnlockDialog&quot;</span>));</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a>), parent);</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"> 150</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">entry_unlock</a> = GTK_ENTRY(GET_OBJ(<span class="stringliteral">&quot;entry_unlock&quot;</span>));</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; gtk_entry_set_activates_default(GTK_ENTRY(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">entry_unlock</a>), TRUE);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a> = GTK_BUTTON(GET_OBJ(<span class="stringliteral">&quot;button_unlock&quot;</span>));</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; gtk_widget_set_can_default(GTK_WIDGET(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a>), TRUE);</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; gtk_widget_grab_default(GTK_WIDGET(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a>));</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">button_unlock_cancel</a> = GTK_BUTTON(GET_OBJ(<span class="stringliteral">&quot;button_unlock_cancel&quot;</span>));</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; g_signal_connect(remmina_unlock_dialog-&gt;<a class="code" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a>, <span class="stringliteral">&quot;clicked&quot;</span>,</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; G_CALLBACK(<a class="code" href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock_unlock_clicked</a>), (gpointer)remmina_unlock_dialog);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; g_signal_connect(remmina_unlock_dialog-&gt;button_unlock_cancel, <span class="stringliteral">&quot;clicked&quot;</span>,</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; G_CALLBACK(<a class="code" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock_cancel_clicked</a>), (gpointer)remmina_unlock_dialog);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; g_signal_connect (remmina_unlock_dialog-&gt;dialog, <span class="stringliteral">&quot;close&quot;</span>,</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; G_CALLBACK (<a class="code" href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock_cancel_clicked</a>), (gpointer)remmina_unlock_dialog);</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"> 164</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; gtk_builder_connect_signals(remmina_unlock_dialog-&gt;builder, NULL);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</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_master_password&quot;</span>)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; &amp;&amp; (g_strcmp0(<a class="code" href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a>(<span class="stringliteral">&quot;unlock_password&quot;</span>), <span class="stringliteral">&quot;&quot;</span>) != 0)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; &amp;&amp; lock != 0)</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gtk_dialog_run(remmina_unlock_dialog-&gt;dialog);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span>(remmina_unlock_dialog-&gt;retval);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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;<span class="preprocessor">#else</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;gint <a class="code" href="remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e">remmina_unlock_new</a>(GtkWindow *parent)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;}</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="struct___remmina_unlock_dialog_html_adea2159828578aefa4d3833083b9de2b"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">_RemminaUnlockDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00041">remmina_unlock.h:41</a></div></div>
+<div class="ttc" id="remmina__sodium_8h_html"><div class="ttname"><a href="remmina__sodium_8h.html">remmina_sodium.h</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_ac6e3a59f765b6d8012cb61005f1a3d18"><div class="ttname"><a href="remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18">remmina_unlock_cancel_clicked</a></div><div class="ttdeci">static void remmina_unlock_cancel_clicked(GtkButton *btn, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00103">remmina_unlock.c:103</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a0a4303634a8342c96dd71e8d7d3e9e7d"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">_RemminaUnlockDialog::button_unlock</a></div><div class="ttdeci">GtkButton * button_unlock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00045">remmina_unlock.h:45</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a6bcbf4cc3a58ed4ee9f087b4270d8fd6"><div class="ttname"><a href="remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6">remmina_pref_get_value</a></div><div class="ttdeci">gchar * remmina_pref_get_value(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l01043">remmina_pref.c:1043</a></div></div>
+<div class="ttc" id="remmina__sodium_8c_html_a6df48c8b8aafee07bfe41fb89581aa5f"><div class="ttname"><a href="remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f">remmina_sodium_pwhash_str_verify</a></div><div class="ttdeci">gint remmina_sodium_pwhash_str_verify(const char *key, const char *pass)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__sodium_8c_source.html#l00116">remmina_sodium.c:116</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_a74421b834d52c638084568e39a6882c0"><div class="ttname"><a href="remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0">timer</a></div><div class="ttdeci">GTimer * timer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00053">remmina_unlock.c:53</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html"><div class="ttname"><a href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00040">remmina_unlock.h:40</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="struct___remmina_pref_html_aef2fe0f203dd68ed30d12e3b22a4f972"><div class="ttname"><a href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">_RemminaPref::unlock_timeout</a></div><div class="ttdeci">gint unlock_timeout</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00122">remmina_pref.h:122</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_af4d3370e923f377e8e0af96deabc5a44"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">_RemminaUnlockDialog::button_unlock_cancel</a></div><div class="ttdeci">GtkButton * button_unlock_cancel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00046">remmina_unlock.h:46</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_a10e43559c46ea3ba409c0b97a43c93b3"><div class="ttname"><a href="remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3">remmina_unlock_unlock_clicked</a></div><div class="ttdeci">static void remmina_unlock_unlock_clicked(GtkButton *btn, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00079">remmina_unlock.c:79</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_a18d0da78f53c4002601a59e85373f6d7"><div class="ttname"><a href="remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7">remmina_unlock_dialog</a></div><div class="ttdeci">static RemminaUnlockDialog * remmina_unlock_dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00050">remmina_unlock.c:50</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_ab8dc92ad404209441f4346a3417cc55e"><div class="ttname"><a href="remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e">remmina_unlock_timer_reset</a></div><div class="ttdeci">static void remmina_unlock_timer_reset(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00064">remmina_unlock.c:64</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_a4c971264cea7aae8a5ba885f1e2430c2"><div class="ttname"><a href="remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2">remmina_unlock_timer_init</a></div><div class="ttdeci">static void remmina_unlock_timer_init()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00056">remmina_unlock.c:56</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#l01057">remmina_pref.c:1057</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a100f356b1eb9f6574b349e7573408235"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">_RemminaUnlockDialog::retval</a></div><div class="ttdeci">gint retval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00050">remmina_unlock.h:50</a></div></div>
+<div class="ttc" id="remmina__unlock_8c_html_af24c3977f6a1806914d22fead301a0cd"><div class="ttname"><a href="remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd">remmina_unlock_timer_destroy</a></div><div class="ttdeci">void remmina_unlock_timer_destroy()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00072">remmina_unlock.c:72</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#l00073">rcw.c:73</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__unlock_8c_html_ac9ee6d79e7bae171521ccacc8e4c43ea"><div class="ttname"><a href="remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a></div><div class="ttdeci">gboolean isinit</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00054">remmina_unlock.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a2612295677b0f040e55470018c26628e"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">_RemminaUnlockDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00042">remmina_unlock.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_ae104a7396def58ceb51949e73a9b5109"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">_RemminaUnlockDialog::entry_unlock</a></div><div class="ttdeci">GtkEntry * entry_unlock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00044">remmina_unlock.h:44</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#l00111">remmina_unlock.c:111</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><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__unlock_8c.html">remmina_unlock.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__unlock_8h.html b/docs/remmina__unlock_8h.html
new file mode 100644
index 000000000..30d2b66ab
--- /dev/null
+++ b/docs/remmina__unlock_8h.html
@@ -0,0 +1,200 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_unlock.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__unlock_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_unlock.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__unlock_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5d12cce4143b484b0458ff2f81b72720"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a></td></tr>
+<tr class="separator:a5d12cce4143b484b0458ff2f81b72720"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a65839c333c02d3c1d7a4aad5b1098ef7"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7">remmina_unlock_new</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:a65839c333c02d3c1d7a4aad5b1098ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a74421b834d52c638084568e39a6882c0"><td class="memItemLeft" align="right" valign="top">GTimer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0">timer</a></td></tr>
+<tr class="separator:a74421b834d52c638084568e39a6882c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9ee6d79e7bae171521ccacc8e4c43ea"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a></td></tr>
+<tr class="separator:ac9ee6d79e7bae171521ccacc8e4c43ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a5d12cce4143b484b0458ff2f81b72720"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d12cce4143b484b0458ff2f81b72720">&#9670;&nbsp;</a></span>RemminaUnlockDialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a> <a class="el" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a65839c333c02d3c1d7a4aad5b1098ef7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65839c333c02d3c1d7a4aad5b1098ef7">&#9670;&nbsp;</a></span>remmina_unlock_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gint remmina_unlock_new </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00111">111</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ac9ee6d79e7bae171521ccacc8e4c43ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9ee6d79e7bae171521ccacc8e4c43ea">&#9670;&nbsp;</a></span>isinit</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean isinit</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+<a id="a74421b834d52c638084568e39a6882c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74421b834d52c638084568e39a6882c0">&#9670;&nbsp;</a></span>timer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GTimer* timer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__unlock_8c_source.html">remmina_unlock.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__unlock_8h.html">remmina_unlock.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__unlock_8h.js b/docs/remmina__unlock_8h.js
new file mode 100644
index 000000000..82ed269dd
--- /dev/null
+++ b/docs/remmina__unlock_8h.js
@@ -0,0 +1,8 @@
+var remmina__unlock_8h =
+[
+ [ "_RemminaUnlockDialog", "struct___remmina_unlock_dialog.html", "struct___remmina_unlock_dialog" ],
+ [ "RemminaUnlockDialog", "remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720", null ],
+ [ "remmina_unlock_new", "remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7", null ],
+ [ "isinit", "remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea", null ],
+ [ "timer", "remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__unlock_8h_source.html b/docs/remmina__unlock_8h_source.html
new file mode 100644
index 000000000..0c06309fe
--- /dev/null
+++ b/docs/remmina__unlock_8h_source.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_unlock.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__unlock_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_unlock.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__unlock_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) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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 &lt;sodium.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#if SODIUM_VERSION_INT &gt;= 90200</span></div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a> {</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b"> 41</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">builder</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e"> 42</a></span>&#160; GtkDialog * <a class="code" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a>;</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"><a class="line" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109"> 44</a></span>&#160; GtkEntry * <a class="code" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">entry_unlock</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d"> 45</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44"> 46</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">button_unlock_cancel</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_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b"> 48</a></span>&#160; gboolean <a class="code" href="struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b">unlock_init</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235"> 50</a></span>&#160; gint <a class="code" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">retval</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">extern</span> GTimer *<a class="code" href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0">timer</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">extern</span> gboolean <a class="code" href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;gint <a class="code" href="remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7">remmina_unlock_new</a>(GtkWindow *parent);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_unlock_dialog_html_adea2159828578aefa4d3833083b9de2b"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">_RemminaUnlockDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00041">remmina_unlock.h:41</a></div></div>
+<div class="ttc" id="remmina__unlock_8h_html_a65839c333c02d3c1d7a4aad5b1098ef7"><div class="ttname"><a href="remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7">remmina_unlock_new</a></div><div class="ttdeci">G_BEGIN_DECLS gint remmina_unlock_new(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00111">remmina_unlock.c:111</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a0a4303634a8342c96dd71e8d7d3e9e7d"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">_RemminaUnlockDialog::button_unlock</a></div><div class="ttdeci">GtkButton * button_unlock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00045">remmina_unlock.h:45</a></div></div>
+<div class="ttc" id="remmina__unlock_8h_html_a5d12cce4143b484b0458ff2f81b72720"><div class="ttname"><a href="remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720">RemminaUnlockDialog</a></div><div class="ttdeci">struct _RemminaUnlockDialog RemminaUnlockDialog</div></div>
+<div class="ttc" id="remmina__unlock_8h_html_a74421b834d52c638084568e39a6882c0"><div class="ttname"><a href="remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0">timer</a></div><div class="ttdeci">GTimer * timer</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00053">remmina_unlock.c:53</a></div></div>
+<div class="ttc" id="remmina__unlock_8h_html_ac9ee6d79e7bae171521ccacc8e4c43ea"><div class="ttname"><a href="remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea">isinit</a></div><div class="ttdeci">gboolean isinit</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8c_source.html#l00054">remmina_unlock.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html"><div class="ttname"><a href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00040">remmina_unlock.h:40</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a3ffac9bfa0017cd0e142adbba489274b"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b">_RemminaUnlockDialog::unlock_init</a></div><div class="ttdeci">gboolean unlock_init</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00048">remmina_unlock.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_af4d3370e923f377e8e0af96deabc5a44"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">_RemminaUnlockDialog::button_unlock_cancel</a></div><div class="ttdeci">GtkButton * button_unlock_cancel</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00046">remmina_unlock.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a100f356b1eb9f6574b349e7573408235"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">_RemminaUnlockDialog::retval</a></div><div class="ttdeci">gint retval</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00050">remmina_unlock.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_a2612295677b0f040e55470018c26628e"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">_RemminaUnlockDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00042">remmina_unlock.h:42</a></div></div>
+<div class="ttc" id="struct___remmina_unlock_dialog_html_ae104a7396def58ceb51949e73a9b5109"><div class="ttname"><a href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">_RemminaUnlockDialog::entry_unlock</a></div><div class="ttdeci">GtkEntry * entry_unlock</div><div class="ttdef"><b>Definition:</b> <a href="remmina__unlock_8h_source.html#l00044">remmina_unlock.h:44</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__unlock_8h.html">remmina_unlock.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__utils_8c.html b/docs/remmina__utils_8c.html
new file mode 100644
index 000000000..cc9b80598
--- /dev/null
+++ b/docs/remmina__utils_8c.html
@@ -0,0 +1,757 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_utils.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__utils_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_utils.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__utils_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlsb__distro__info.html">lsb_distro_info</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdistro__info.html">distro_info</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a376b0273338fd875054d93b329e85fba"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structlsb__distro__info.html">lsb_distro_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">LSBDistroInfo</a></td></tr>
+<tr class="separator:a376b0273338fd875054d93b329e85fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1371483cedecdda522244523c1bb96b1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structdistro__info.html">distro_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a></td></tr>
+<tr class="separator:a1371483cedecdda522244523c1bb96b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae4318060ee81f8fbd907904892dd71d3"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils_strpos</a> (const gchar *haystack, const gchar *needle)</td></tr>
+<tr class="separator:ae4318060ee81f8fbd907904892dd71d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75eb5f79df692dfe4db221d03a5fa355"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils_string_find</a> (GString *haystack, gint start, gint end, const gchar *needle)</td></tr>
+<tr class="separator:a75eb5f79df692dfe4db221d03a5fa355"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6859a61aa28f46591750c9afdef66f4"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a> (GString *str, gint pos, gint len, const gchar *replace)</td></tr>
+<tr class="separator:aa6859a61aa28f46591750c9afdef66f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a> (GString *haystack, const gchar *needle, const gchar *replace)</td></tr>
+<tr class="memdesc:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. <a href="#ac804e6111e538ee2fa425b8b6fd1fb66">More...</a><br /></td></tr>
+<tr class="separator:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe83bd0997a1054045e17d3f66c8bb0d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a> (const gchar *s)</td></tr>
+<tr class="memdesc:afe83bd0997a1054045e17d3f66c8bb0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strip <br />
+, and " from a given string. <a href="#afe83bd0997a1054045e17d3f66c8bb0d">More...</a><br /></td></tr>
+<tr class="separator:afe83bd0997a1054045e17d3f66c8bb0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a297576937e5f9be372f1861a87c41dfa"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils_read_distrofile</a> (gchar *filename)</td></tr>
+<tr class="memdesc:a297576937e5f9be372f1861a87c41dfa"><td class="mdescLeft">&#160;</td><td class="mdescRight">OS related functions. <a href="#a297576937e5f9be372f1861a87c41dfa">More...</a><br /></td></tr>
+<tr class="separator:a297576937e5f9be372f1861a87c41dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a> ()</td></tr>
+<tr class="memdesc:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current language defined in the LC_ALL. <a href="#a0f10e190a6dd212fcb0cf36ce81c8324">More...</a><br /></td></tr>
+<tr class="separator:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfc722d07d9936711794411bfbed0522"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a> ()</td></tr>
+<tr class="memdesc:abfc722d07d9936711794411bfbed0522"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the OS name as in "uname -s". <a href="#abfc722d07d9936711794411bfbed0522">More...</a><br /></td></tr>
+<tr class="separator:abfc722d07d9936711794411bfbed0522"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57603aa88df56e77e1a6de0f215f21aa"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a> ()</td></tr>
+<tr class="memdesc:a57603aa88df56e77e1a6de0f215f21aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the OS version as in "uname -r". <a href="#a57603aa88df56e77e1a6de0f215f21aa">More...</a><br /></td></tr>
+<tr class="separator:a57603aa88df56e77e1a6de0f215f21aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a116e7cd4565386fe531d3a6d1a3d3730"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a> ()</td></tr>
+<tr class="memdesc:a116e7cd4565386fe531d3a6d1a3d3730"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the machine hardware name as in "uname -m". <a href="#a116e7cd4565386fe531d3a6d1a3d3730">More...</a><br /></td></tr>
+<tr class="separator:a116e7cd4565386fe531d3a6d1a3d3730"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa768b6fe171695d212da4c6eaf74cf22"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a> ()</td></tr>
+<tr class="memdesc:aa768b6fe171695d212da4c6eaf74cf22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distributor as specified by the lsb_release command. <a href="#aa768b6fe171695d212da4c6eaf74cf22">More...</a><br /></td></tr>
+<tr class="separator:aa768b6fe171695d212da4c6eaf74cf22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a> ()</td></tr>
+<tr class="memdesc:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution description as specified by the lsb_release command. <a href="#ac00cb21c5cb5efcf7afc6eeae2147a75">More...</a><br /></td></tr>
+<tr class="separator:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ee50df5d7585d229a154a712c9161ca"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a> ()</td></tr>
+<tr class="memdesc:a5ee50df5d7585d229a154a712c9161ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution release name as specified by the lsb_release command. <a href="#a5ee50df5d7585d229a154a712c9161ca">More...</a><br /></td></tr>
+<tr class="separator:a5ee50df5d7585d229a154a712c9161ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a> ()</td></tr>
+<tr class="memdesc:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution codename as specified by the lsb_release command. <a href="#a2b4dbb0da7c8ba4bd86877097b85d10c">More...</a><br /></td></tr>
+<tr class="separator:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54cee350c4ecc6e77af835c4ba90df4c"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a> ()</td></tr>
+<tr class="memdesc:a54cee350c4ecc6e77af835c4ba90df4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the distribution description if found. <a href="#a54cee350c4ecc6e77af835c4ba90df4c">More...</a><br /></td></tr>
+<tr class="separator:a54cee350c4ecc6e77af835c4ba90df4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1acfeca84e3efd47ab1ef8365f94f99"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a> ()</td></tr>
+<tr class="memdesc:af1acfeca84e3efd47ab1ef8365f94f99"><td class="mdescLeft">&#160;</td><td class="mdescRight">A sample function to show how use the other fOS related functions. <a href="#af1acfeca84e3efd47ab1ef8365f94f99">More...</a><br /></td></tr>
+<tr class="separator:af1acfeca84e3efd47ab1ef8365f94f99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff7d3597f23cae366973218cc01a2ae8"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a> (const gchar *filename)</td></tr>
+<tr class="memdesc:aff7d3597f23cae366973218cc01a2ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a hexadecimal string version of the SHA-1 digest of the contents of the named file. <a href="#aff7d3597f23cae366973218cc01a2ae8">More...</a><br /></td></tr>
+<tr class="separator:aff7d3597f23cae366973218cc01a2ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a483959ec642cece17e1b79506e71b00e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a> ()</td></tr>
+<tr class="memdesc:a483959ec642cece17e1b79506e71b00e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random sting of chars to be used as part of UID for news or stats. <a href="#a483959ec642cece17e1b79506e71b00e">More...</a><br /></td></tr>
+<tr class="separator:a483959ec642cece17e1b79506e71b00e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8b6ee6e66fba40ddaf4e735ba9d4208c"><td class="memItemLeft" align="right" valign="top">struct utsname&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a></td></tr>
+<tr class="separator:a8b6ee6e66fba40ddaf4e735ba9d4208c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a819abe021d49cefa64ffc7981aacc478"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478">distroArray</a> []</td></tr>
+<tr class="separator:a819abe021d49cefa64ffc7981aacc478"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a1371483cedecdda522244523c1bb96b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1371483cedecdda522244523c1bb96b1">&#9670;&nbsp;</a></span>DistroInfo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structdistro__info.html">distro_info</a> <a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a376b0273338fd875054d93b329e85fba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a376b0273338fd875054d93b329e85fba">&#9670;&nbsp;</a></span>LSBDistroInfo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structlsb__distro__info.html">lsb_distro_info</a> <a class="el" href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">LSBDistroInfo</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a483959ec642cece17e1b79506e71b00e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a483959ec642cece17e1b79506e71b00e">&#9670;&nbsp;</a></span>remmina_gen_random_uuid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_gen_random_uuid </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Generate a random sting of chars to be used as part of UID for news or stats. </p>
+<dl class="section return"><dt>Returns</dt><dd>a string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00510">510</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aff7d3597f23cae366973218cc01a2ae8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff7d3597f23cae366973218cc01a2ae8">&#9670;&nbsp;</a></span>remmina_sha1_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sha1_file </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a hexadecimal string version of the SHA-1 digest of the contents of the named file. </p>
+<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which the caller should free() when finished.</dd></dl>
+<p>If any error occurs while reading the file, (permission denied, file not found, etc.), this function returns NULL.</p>
+<p>Taken from <a href="https://github.com/ttuegel/notmuch">https://github.com/ttuegel/notmuch</a> do PR in case of substantial modifications. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00466">466</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a54cee350c4ecc6e77af835c4ba90df4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a54cee350c4ecc6e77af835c4ba90df4c">&#9670;&nbsp;</a></span>remmina_utils_get_etc_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* remmina_utils_get_etc_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the distribution description if found. </p>
+<p>Test each known distribution specific information file and print it’s content. </p><dl class="section return"><dt>Returns</dt><dd>a string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00404">404</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a116e7cd4565386fe531d3a6d1a3d3730"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a116e7cd4565386fe531d3a6d1a3d3730">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_arch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_arch </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the machine hardware name as in "uname -m". </p>
+<dl class="section return"><dt>Returns</dt><dd>The machine hardware name or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00330">330</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="abfc722d07d9936711794411bfbed0522"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfc722d07d9936711794411bfbed0522">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_name </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the OS name as in "uname -s". </p>
+<dl class="section return"><dt>Returns</dt><dd>The OS name or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00308">308</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a57603aa88df56e77e1a6de0f215f21aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57603aa88df56e77e1a6de0f215f21aa">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the OS version as in "uname -r". </p>
+<dl class="section return"><dt>Returns</dt><dd>The OS release or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00315">315</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a0f10e190a6dd212fcb0cf36ce81c8324"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f10e190a6dd212fcb0cf36ce81c8324">&#9670;&nbsp;</a></span>remmina_utils_get_lang()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lang </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the current language defined in the LC_ALL. </p>
+<dl class="section return"><dt>Returns</dt><dd>a language string or en_US. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00288">288</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b4dbb0da7c8ba4bd86877097b85d10c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b4dbb0da7c8ba4bd86877097b85d10c">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_codename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_codename </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution codename as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the codename string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00389">389</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ac00cb21c5cb5efcf7afc6eeae2147a75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac00cb21c5cb5efcf7afc6eeae2147a75">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_description()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_description </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution description as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the Distribution description string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00355">355</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aa768b6fe171695d212da4c6eaf74cf22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa768b6fe171695d212da4c6eaf74cf22">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_id </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distributor as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the distributor ID string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00341">341</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ee50df5d7585d229a154a712c9161ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ee50df5d7585d229a154a712c9161ca">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution release name as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the Distribution release name string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00375">375</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="af1acfeca84e3efd47ab1ef8365f94f99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1acfeca84e3efd47ab1ef8365f94f99">&#9670;&nbsp;</a></span>remmina_utils_get_os_info()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_os_info </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A sample function to show how use the other fOS related functions. </p>
+<dl class="section return"><dt>Returns</dt><dd>a semicolon separated OS data like in "uname -srm". </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00431">431</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a297576937e5f9be372f1861a87c41dfa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a297576937e5f9be372f1861a87c41dfa">&#9670;&nbsp;</a></span>remmina_utils_read_distrofile()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* remmina_utils_read_distrofile </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>OS related functions. </p>
+<p>remmina_utils_read_distrofile.</p>
+<p>Look for a distro version file /etc/xxx-release. Once found, read the file in and figure out which distribution.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">filename</td><td>The file path of a Linux distribution release file. </td></tr>
+ <tr><td class="paramname">distroSize</td><td>The size of the distribution name. </td></tr>
+ <tr><td class="paramname">distro</td><td>The full distro name. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Returns a string containing distro information verbatium from /etc/xxx-release (distro). Use g_free to free the string. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00252">252</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a75eb5f79df692dfe4db221d03a5fa355"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75eb5f79df692dfe4db221d03a5fa355">&#9670;&nbsp;</a></span>remmina_utils_string_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_utils_string_find </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>end</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00141">141</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6859a61aa28f46591750c9afdef66f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6859a61aa28f46591750c9afdef66f4">&#9670;&nbsp;</a></span>remmina_utils_string_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_utils_string_replace </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00173">173</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ac804e6111e538ee2fa425b8b6fd1fb66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac804e6111e538ee2fa425b8b6fd1fb66">&#9670;&nbsp;</a></span>remmina_utils_string_replace_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_utils_string_replace_all </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">haystack</td><td>The input string to operate on. This string is modified in place. </td></tr>
+ <tr><td class="paramname">needle</td><td>The string which should be replaced. </td></tr>
+ <tr><td class="paramname">replace</td><td>The replacement for <em>needle</em>.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Number of replacements made. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00193">193</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="afe83bd0997a1054045e17d3f66c8bb0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe83bd0997a1054045e17d3f66c8bb0d">&#9670;&nbsp;</a></span>remmina_utils_string_strip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_string_strip </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Strip <br />
+, and " from a given string. </p>
+<p>This function is particularly useful with g_spawn_command_line_sync that does not strip control characters from the output. </p><dl class="section warning"><dt>Warning</dt><dd>the result should be freed. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">a</td><td>string. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>a newly allocated copy of string cleaned by , <br />
+ and " </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00220">220</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4318060ee81f8fbd907904892dd71d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4318060ee81f8fbd907904892dd71d3">&#9670;&nbsp;</a></span>remmina_utils_strpos()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_utils_strpos </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00123">123</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a819abe021d49cefa64ffc7981aacc478"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a819abe021d49cefa64ffc7981aacc478">&#9670;&nbsp;</a></span>distroArray</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a> distroArray[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00079">79</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a8b6ee6e66fba40ddaf4e735ba9d4208c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b6ee6e66fba40ddaf4e735ba9d4208c">&#9670;&nbsp;</a></span>u</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct utsname u</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__utils_8c.html">remmina_utils.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__utils_8c.js b/docs/remmina__utils_8c.js
new file mode 100644
index 000000000..315989acc
--- /dev/null
+++ b/docs/remmina__utils_8c.js
@@ -0,0 +1,27 @@
+var remmina__utils_8c =
+[
+ [ "lsb_distro_info", "structlsb__distro__info.html", "structlsb__distro__info" ],
+ [ "distro_info", "structdistro__info.html", "structdistro__info" ],
+ [ "DistroInfo", "remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1", null ],
+ [ "LSBDistroInfo", "remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba", null ],
+ [ "remmina_gen_random_uuid", "remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e", null ],
+ [ "remmina_sha1_file", "remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8", null ],
+ [ "remmina_utils_get_etc_release", "remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c", null ],
+ [ "remmina_utils_get_kernel_arch", "remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730", null ],
+ [ "remmina_utils_get_kernel_name", "remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522", null ],
+ [ "remmina_utils_get_kernel_release", "remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa", null ],
+ [ "remmina_utils_get_lang", "remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324", null ],
+ [ "remmina_utils_get_lsb_codename", "remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c", null ],
+ [ "remmina_utils_get_lsb_description", "remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75", null ],
+ [ "remmina_utils_get_lsb_id", "remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22", null ],
+ [ "remmina_utils_get_lsb_release", "remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca", null ],
+ [ "remmina_utils_get_os_info", "remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99", null ],
+ [ "remmina_utils_read_distrofile", "remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa", null ],
+ [ "remmina_utils_string_find", "remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355", null ],
+ [ "remmina_utils_string_replace", "remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4", null ],
+ [ "remmina_utils_string_replace_all", "remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66", null ],
+ [ "remmina_utils_string_strip", "remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d", null ],
+ [ "remmina_utils_strpos", "remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3", null ],
+ [ "distroArray", "remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478", null ],
+ [ "u", "remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__utils_8c_source.html b/docs/remmina__utils_8c_source.html
new file mode 100644
index 000000000..39328aacb
--- /dev/null
+++ b/docs/remmina__utils_8c_source.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_utils.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__utils_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_utils.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__utils_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;sys/utsname.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;locale.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 &lt;glib.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;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define EMPTY(ptr) \</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> (!(ptr) || !*(ptr))</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c"> 54</a></span>&#160;<span class="keyword">struct </span>utsname <a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Copyright (C) 1998 VMware, Inc. All rights reserved.</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> * Some of the code in this file is taken from the VMware open client.</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structlsb__distro__info.html"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structlsb__distro__info.html">lsb_distro_info</a> {</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structlsb__distro__info.html#a251763a49054183774e2082595537e47"> 60</a></span>&#160; gchar *<a class="code" href="structlsb__distro__info.html#a251763a49054183774e2082595537e47">name</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7"> 61</a></span>&#160; gchar *<a class="code" href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7">scanstring</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <a class="code" href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">LSBDistroInfo</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">static LSBDistroInfo lsbFields[] = {</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> { &quot;DISTRIB_ID=&quot;, &quot;DISTRIB_ID=%s&quot; },</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> { &quot;DISTRIB_RELEASE=&quot;, &quot;DISTRIB_RELEASE=%s&quot; },</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> { &quot;DISTRIB_CODENAME=&quot;, &quot;DISTRIB_CODENAME=%s&quot; },</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> { &quot;DISTRIB_DESCRIPTION=&quot;, &quot;DISTRIB_DESCRIPTION=%s&quot; },</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> { NULL, NULL },</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">};</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">*/</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structdistro__info.html"> 74</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structdistro__info.html">distro_info</a> {</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2"> 75</a></span>&#160; gchar *<a class="code" href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2">name</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633"> 76</a></span>&#160; gchar *<a class="code" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">filename</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;} <a class="code" href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478"> 79</a></span>&#160;<span class="keyword">static</span> <a class="code" href="structdistro__info.html">DistroInfo</a> <a class="code" href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478">distroArray</a>[] = {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; { <span class="stringliteral">&quot;RedHat&quot;</span>, <span class="stringliteral">&quot;/etc/redhat-release&quot;</span> },</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; { <span class="stringliteral">&quot;RedHat&quot;</span>, <span class="stringliteral">&quot;/etc/redhat_version&quot;</span> },</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; { <span class="stringliteral">&quot;Sun&quot;</span>, <span class="stringliteral">&quot;/etc/sun-release&quot;</span> },</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; { <span class="stringliteral">&quot;SuSE&quot;</span>, <span class="stringliteral">&quot;/etc/SuSE-release&quot;</span> },</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; { <span class="stringliteral">&quot;SuSE&quot;</span>, <span class="stringliteral">&quot;/etc/novell-release&quot;</span> },</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; { <span class="stringliteral">&quot;SuSE&quot;</span>, <span class="stringliteral">&quot;/etc/sles-release&quot;</span> },</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; { <span class="stringliteral">&quot;SuSE&quot;</span>, <span class="stringliteral">&quot;/etc/os-release&quot;</span> },</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; { <span class="stringliteral">&quot;Debian&quot;</span>, <span class="stringliteral">&quot;/etc/debian_version&quot;</span> },</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; { <span class="stringliteral">&quot;Debian&quot;</span>, <span class="stringliteral">&quot;/etc/debian_release&quot;</span> },</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; { <span class="stringliteral">&quot;Ubuntu&quot;</span>, <span class="stringliteral">&quot;/etc/lsb-release&quot;</span> },</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; { <span class="stringliteral">&quot;Mandrake&quot;</span>, <span class="stringliteral">&quot;/etc/mandrake-release&quot;</span> },</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; { <span class="stringliteral">&quot;Mandriva&quot;</span>, <span class="stringliteral">&quot;/etc/mandriva-release&quot;</span> },</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; { <span class="stringliteral">&quot;Mandrake&quot;</span>, <span class="stringliteral">&quot;/etc/mandrakelinux-release&quot;</span> },</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; { <span class="stringliteral">&quot;TurboLinux&quot;</span>, <span class="stringliteral">&quot;/etc/turbolinux-release&quot;</span> },</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; { <span class="stringliteral">&quot;Fedora Core&quot;</span>, <span class="stringliteral">&quot;/etc/fedora-release&quot;</span> },</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; { <span class="stringliteral">&quot;Gentoo&quot;</span>, <span class="stringliteral">&quot;/etc/gentoo-release&quot;</span> },</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; { <span class="stringliteral">&quot;Novell&quot;</span>, <span class="stringliteral">&quot;/etc/nld-release&quot;</span> },</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; { <span class="stringliteral">&quot;Annvix&quot;</span>, <span class="stringliteral">&quot;/etc/annvix-release&quot;</span> },</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; { <span class="stringliteral">&quot;Arch&quot;</span>, <span class="stringliteral">&quot;/etc/arch-release&quot;</span> },</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; { <span class="stringliteral">&quot;Arklinux&quot;</span>, <span class="stringliteral">&quot;/etc/arklinux-release&quot;</span> },</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; { <span class="stringliteral">&quot;Aurox&quot;</span>, <span class="stringliteral">&quot;/etc/aurox-release&quot;</span> },</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; { <span class="stringliteral">&quot;BlackCat&quot;</span>, <span class="stringliteral">&quot;/etc/blackcat-release&quot;</span> },</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; { <span class="stringliteral">&quot;Cobalt&quot;</span>, <span class="stringliteral">&quot;/etc/cobalt-release&quot;</span> },</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; { <span class="stringliteral">&quot;Conectiva&quot;</span>, <span class="stringliteral">&quot;/etc/conectiva-release&quot;</span> },</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; { <span class="stringliteral">&quot;Immunix&quot;</span>, <span class="stringliteral">&quot;/etc/immunix-release&quot;</span> },</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; { <span class="stringliteral">&quot;Knoppix&quot;</span>, <span class="stringliteral">&quot;/etc/knoppix_version&quot;</span> },</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; { <span class="stringliteral">&quot;Linux-From-Scratch&quot;</span>, <span class="stringliteral">&quot;/etc/lfs-release&quot;</span> },</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; { <span class="stringliteral">&quot;Linux-PPC&quot;</span>, <span class="stringliteral">&quot;/etc/linuxppc-release&quot;</span> },</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; { <span class="stringliteral">&quot;MkLinux&quot;</span>, <span class="stringliteral">&quot;/etc/mklinux-release&quot;</span> },</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; { <span class="stringliteral">&quot;PLD&quot;</span>, <span class="stringliteral">&quot;/etc/pld-release&quot;</span> },</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; { <span class="stringliteral">&quot;Slackware&quot;</span>, <span class="stringliteral">&quot;/etc/slackware-version&quot;</span> },</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; { <span class="stringliteral">&quot;Slackware&quot;</span>, <span class="stringliteral">&quot;/etc/slackware-release&quot;</span> },</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; { <span class="stringliteral">&quot;SMEServer&quot;</span>, <span class="stringliteral">&quot;/etc/e-smith-release&quot;</span> },</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; { <span class="stringliteral">&quot;Solaris&quot;</span>, <span class="stringliteral">&quot;/etc/release&quot;</span> },</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; { <span class="stringliteral">&quot;Solus&quot;</span>, <span class="stringliteral">&quot;/etc/solus-release&quot;</span> },</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; { <span class="stringliteral">&quot;Tiny Sofa&quot;</span>, <span class="stringliteral">&quot;/etc/tinysofa-release&quot;</span> },</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; { <span class="stringliteral">&quot;UltraPenguin&quot;</span>, <span class="stringliteral">&quot;/etc/ultrapenguin-release&quot;</span> },</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; { <span class="stringliteral">&quot;UnitedLinux&quot;</span>, <span class="stringliteral">&quot;/etc/UnitedLinux-release&quot;</span> },</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; { <span class="stringliteral">&quot;VALinux&quot;</span>, <span class="stringliteral">&quot;/etc/va-release&quot;</span> },</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; { <span class="stringliteral">&quot;Yellow Dog&quot;</span>, <span class="stringliteral">&quot;/etc/yellowdog-release&quot;</span> },</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; { NULL, NULL },</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__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3"> 123</a></span>&#160;gint <a class="code" href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils_strpos</a>(<span class="keyword">const</span> gchar *haystack, <span class="keyword">const</span> gchar *needle)</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; <span class="keyword">const</span> gchar *sub;</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="keywordflow">if</span> (!*needle)</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">return</span> -1;</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; sub = strstr(haystack, needle);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (!sub)</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">return</span> -1;</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; <span class="keywordflow">return</span> sub - haystack;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;}</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment">/* end can be -1 for haystack-&gt;len.</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> * returns: position of found text or -1.</span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> * (C) Taken from geany */</span></div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be"> 141</a></span>&#160;gint <a class="code" href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils_string_find</a>(GString *haystack, gint start, gint end, <span class="keyword">const</span> gchar *needle)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gint pos;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; g_return_val_if_fail(haystack != NULL, -1);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (haystack-&gt;len == 0)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">return</span> -1;</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"> 150</span>&#160; g_return_val_if_fail(start &gt;= 0, -1);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">if</span> (start &gt;= (gint)haystack-&gt;len)</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> -1;</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; g_return_val_if_fail(!EMPTY(needle), -1);</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; <span class="keywordflow">if</span> (end &lt; 0)</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; end = haystack-&gt;len;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; pos = <a class="code" href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils_strpos</a>(haystack-&gt;str + start, needle);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (pos == -1)</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">return</span> -1;</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; pos += start;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordflow">if</span> (pos &gt;= end)</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> pos;</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;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">/* Replaces @len characters from offset @a pos.</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> * len can be -1 to replace the remainder of @a str.</span></div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> * returns: pos + strlen(replace).</span></div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> * (C) Taken from geany */</span></div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4"> 173</a></span>&#160;gint <a class="code" href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a>(GString *str, gint pos, gint len, <span class="keyword">const</span> gchar *replace)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; g_string_erase(str, pos, len);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">if</span> (replace) {</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; g_string_insert(str, pos, replace);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; pos += strlen(replace);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> pos;</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;</div><div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66"> 193</a></span>&#160;guint <a class="code" href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(GString *haystack, <span class="keyword">const</span> gchar *needle, <span class="keyword">const</span> gchar *replace)</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; guint count = 0;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; gint pos = 0;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; gsize needle_length = strlen(needle);</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; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; pos = <a class="code" href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils_string_find</a>(haystack, pos, -1, needle);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (pos == -1)</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">break</span>;</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; pos = <a class="code" href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a>(haystack, pos, needle_length, replace);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; count++;</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; <span class="keywordflow">return</span> count;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div><div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d"> 220</a></span>&#160;gchar *<a class="code" href="remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a>(<span class="keyword">const</span> gchar *s)</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;{</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; gchar *p = g_malloc(strlen(s) + 1);</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; <span class="keywordflow">if</span> (p) {</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; gchar *p2 = p;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">while</span> (*s != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordflow">if</span> (*s != <span class="charliteral">&#39;\t&#39;</span> &amp;&amp; *s != <span class="charliteral">&#39;\n&#39;</span> &amp;&amp; *s != <span class="charliteral">&#39;\&quot;&#39;</span>) {</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; *p2++ = *s++;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; ++s;</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; }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; *p2 = <span class="charliteral">&#39;\0&#39;</span>;</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"> 235</span>&#160; <span class="keywordflow">return</span> p;</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;</div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa"> 252</a></span>&#160;<span class="keyword">static</span> gchar* <a class="code" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils_read_distrofile</a>(gchar *filename)</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;{</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; gsize file_sz;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keyword">struct </span>stat st;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; gchar *distro_desc = NULL;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; GError *err = NULL;</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; <span class="keywordflow">if</span> (g_stat(filename, &amp;st) == -1) {</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; g_debug(<span class="stringliteral">&quot;%s: could not stat the file %s\n&quot;</span>, __func__, filename);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; g_debug(<span class="stringliteral">&quot;%s: File %s is %lu bytes long\n&quot;</span>, __func__, filename, st.st_size);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">if</span> (st.st_size &gt; 131072)</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <span class="keywordflow">return</span> 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; <span class="keywordflow">if</span> (!g_file_get_contents(filename, &amp;distro_desc, &amp;file_sz, &amp;err)) {</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; g_debug(<span class="stringliteral">&quot;%s: could not get the file content%s: %s\n&quot;</span>, __func__, filename, err-&gt;message);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; g_error_free(err);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">if</span> (file_sz == 0) {</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; g_debug(<span class="stringliteral">&quot;%s: Cannot work with empty file.\n&quot;</span>, __FUNCTION__);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">return</span> NULL;</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; g_debug(<span class="stringliteral">&quot;%s: Distro description %s\n&quot;</span>, __func__, distro_desc);</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">return</span> distro_desc;</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;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324"> 288</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a>()</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; gchar *lang = setlocale(LC_ALL, NULL);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; gchar *ptr;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">if</span> (!lang || lang[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; lang = <span class="stringliteral">&quot;en_US\0&quot;</span>;</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; ptr = strchr(lang, <span class="charliteral">&#39;.&#39;</span>);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (ptr != NULL) {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; *ptr = <span class="charliteral">&#39;\0&#39;</span>;</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; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">return</span> lang;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;}</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522"> 308</a></span>&#160;<span class="keyword">const</span> gchar* <a class="code" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a>()</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;{</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.sysname)</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.sysname;</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;</div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa"> 315</a></span>&#160;<span class="keyword">const</span> gchar* <a class="code" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.release)</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.release;</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;</div><div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730"> 330</a></span>&#160;<span class="keyword">const</span> gchar* <a class="code" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a>()</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;{</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.machine)</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>.machine;</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;</div><div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22"> 341</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; gchar *lsb_id = NULL;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">if</span> (g_spawn_command_line_sync(<span class="stringliteral">&quot;/usr/bin/lsb_release -si&quot;</span>, &amp;lsb_id, NULL, NULL, NULL)) {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> lsb_id;</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; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;}</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75"> 355</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a>()</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; gchar *lsb_description = NULL;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; GError *err = NULL;</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; <span class="keywordflow">if</span> (g_spawn_command_line_sync(<span class="stringliteral">&quot;/usr/bin/lsb_release -sd&quot;</span>, &amp;lsb_description, NULL, NULL, &amp;err)) {</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">return</span> lsb_description;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; g_debug(<span class="stringliteral">&quot;%s: could not execute lsb_release %s\n&quot;</span>, __func__, err-&gt;message);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; g_error_free(err);</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; g_debug(<span class="stringliteral">&quot;%s: lsb_release %s\n&quot;</span>, __func__, lsb_description);</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">return</span> NULL;</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;</div><div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca"> 375</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a>()</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;{</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; gchar *lsb_release = NULL;</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <span class="keywordflow">if</span> (g_spawn_command_line_sync(<span class="stringliteral">&quot;/usr/bin/lsb_release -sr&quot;</span>, &amp;lsb_release, NULL, NULL, NULL)) {</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> lsb_release;</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">return</span> NULL;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;}</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c"> 389</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a>()</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;{</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; gchar *lsb_codename = NULL;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">if</span> (g_spawn_command_line_sync(<span class="stringliteral">&quot;/usr/bin/lsb_release -sc&quot;</span>, &amp;lsb_codename, NULL, NULL, NULL)) {</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">return</span> lsb_codename;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; }</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;}</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div><div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c"> 404</a></span>&#160;GHashTable* <a class="code" href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; gchar *etc_release = NULL;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; gint i;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; GHashTable *r;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; r = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">for</span> (i = 0; distroArray[i].<a class="code" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">filename</a> != NULL; i++) {</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; g_debug(<span class="stringliteral">&quot;%s: File %s\n&quot;</span>, __func__, distroArray[i].filename);</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; etc_release = <a class="code" href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils_read_distrofile</a>(distroArray[i].filename);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <span class="keywordflow">if</span> (etc_release) {</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordflow">if</span> (etc_release[0] != <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; g_debug(<span class="stringliteral">&quot;%s: Distro description %s\n&quot;</span>, __func__, etc_release);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; g_hash_table_insert(r, distroArray[i].filename, etc_release);</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; g_free(etc_release);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; }</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; }</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> r;</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;</div><div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99"> 431</a></span>&#160;<span class="keyword">const</span> gchar* <a class="code" href="remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a>()</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;{</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gchar *kernel_string;</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> (uname(&amp;<a class="code" href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a>) == -1)</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; g_print(<span class="stringliteral">&quot;uname:&quot;</span>);</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; kernel_string = g_strdup_printf(<span class="stringliteral">&quot;%s;%s;%s\n&quot;</span>,</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <a class="code" href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a>(),</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <a class="code" href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a>(),</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <a class="code" href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a>());</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; <span class="keywordflow">if</span> (!kernel_string || kernel_string[0] == <span class="charliteral">&#39;\0&#39;</span>)</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">if</span>(kernel_string)</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; g_free(kernel_string);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; kernel_string = g_strdup_printf(<span class="stringliteral">&quot;%s;%s;%s\n&quot;</span>,</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="stringliteral">&quot;UNKNOWN&quot;</span>,</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="stringliteral">&quot;UNKNOWN&quot;</span>,</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="stringliteral">&quot;UNKNOWN&quot;</span>);</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">return</span> kernel_string;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;}</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8"> 466</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a> (<span class="keyword">const</span> gchar *filename)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;{</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; FILE *file;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="preprocessor">#define BLOCK_SIZE 4096</span></div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> block[BLOCK_SIZE];</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordtype">size_t</span> bytes_read;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; GChecksum *sha1;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordtype">char</span> *digest = NULL;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; file = fopen (filename, <span class="stringliteral">&quot;r&quot;</span>);</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keywordflow">if</span> (file == NULL)</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; sha1 = g_checksum_new (G_CHECKSUM_SHA1);</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keywordflow">if</span> (sha1 == NULL)</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordflow">goto</span> DONE;</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"> 483</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; bytes_read = fread (block, 1, 4096, file);</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordflow">if</span> (bytes_read == 0) {</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">if</span> (feof (file))</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ferror (file))</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <span class="keywordflow">goto</span> DONE;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; g_checksum_update (sha1, block, bytes_read);</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; }</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; digest = g_strdup (g_checksum_get_string (sha1));</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; DONE:</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <span class="keywordflow">if</span> (sha1)</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; g_checksum_free (sha1);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">if</span> (file)</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; fclose (file);</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">return</span> digest;</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;}</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno"><a class="line" href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e"> 510</a></span>&#160;gchar* <a class="code" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a>()</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;{</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; GRand *rand;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; GTimeVal t;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; gchar *result;</div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <span class="keywordtype">int</span> i;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> alpha[] = <span class="stringliteral">&quot;ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789&quot;</span>;</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; result = g_malloc0(15);</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; g_get_current_time(&amp;t);</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; rand = g_rand_new_with_seed((guint32)t.tv_sec ^ (guint32)t.tv_usec);</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; 7; i++) {</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; result[i] = alpha[g_rand_int_range(rand, 0, <span class="keyword">sizeof</span>(alpha) - 1)];</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;</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; g_rand_set_seed(rand, (guint32)t.tv_usec);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; 7; i++) {</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; result[i + 7] = alpha[g_rand_int_range(rand, 0, <span class="keyword">sizeof</span>(alpha) - 1)];</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; }</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; g_rand_free(rand);</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; <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;}</div><div class="ttc" id="remmina__utils_8c_html_a1371483cedecdda522244523c1bb96b1"><div class="ttname"><a href="remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1">DistroInfo</a></div><div class="ttdeci">struct distro_info DistroInfo</div></div>
+<div class="ttc" id="structdistro__info_html"><div class="ttname"><a href="structdistro__info.html">distro_info</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00074">remmina_utils.c:74</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a8b6ee6e66fba40ddaf4e735ba9d4208c"><div class="ttname"><a href="remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c">u</a></div><div class="ttdeci">struct utsname u</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00054">remmina_utils.c:54</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a75eb5f79df692dfe4db221d03a5fa355"><div class="ttname"><a href="remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355">remmina_utils_string_find</a></div><div class="ttdeci">gint remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00141">remmina_utils.c:141</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_ae4318060ee81f8fbd907904892dd71d3"><div class="ttname"><a href="remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3">remmina_utils_strpos</a></div><div class="ttdeci">gint remmina_utils_strpos(const gchar *haystack, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00123">remmina_utils.c:123</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a2b4dbb0da7c8ba4bd86877097b85d10c"><div class="ttname"><a href="remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_codename()</div><div class="ttdoc">Print the Distribution codename as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00389">remmina_utils.c:389</a></div></div>
+<div class="ttc" id="structdistro__info_html_a27013edbc763fecb35337ca0affacfc2"><div class="ttname"><a href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2">distro_info::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00075">remmina_utils.c:75</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_aa768b6fe171695d212da4c6eaf74cf22"><div class="ttname"><a href="remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_id()</div><div class="ttdoc">Print the Distributor as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00341">remmina_utils.c:341</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_abfc722d07d9936711794411bfbed0522"><div class="ttname"><a href="remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_name()</div><div class="ttdoc">Return the OS name as in &quot;uname -s&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00308">remmina_utils.c:308</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a57603aa88df56e77e1a6de0f215f21aa"><div class="ttname"><a href="remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_release()</div><div class="ttdoc">Return the OS version as in &quot;uname -r&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00315">remmina_utils.c:315</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_afe83bd0997a1054045e17d3f66c8bb0d"><div class="ttname"><a href="remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a></div><div class="ttdeci">gchar * remmina_utils_string_strip(const gchar *s)</div><div class="ttdoc">Strip , and &quot; from a given string. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00220">remmina_utils.c:220</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a297576937e5f9be372f1861a87c41dfa"><div class="ttname"><a href="remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa">remmina_utils_read_distrofile</a></div><div class="ttdeci">static gchar * remmina_utils_read_distrofile(gchar *filename)</div><div class="ttdoc">OS related functions. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00252">remmina_utils.c:252</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a5ee50df5d7585d229a154a712c9161ca"><div class="ttname"><a href="remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_release()</div><div class="ttdoc">Print the Distribution release name as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00375">remmina_utils.c:375</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a483959ec642cece17e1b79506e71b00e"><div class="ttname"><a href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a></div><div class="ttdeci">gchar * remmina_gen_random_uuid()</div><div class="ttdoc">Generate a random sting of chars to be used as part of UID for news or stats. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00510">remmina_utils.c:510</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a0f10e190a6dd212fcb0cf36ce81c8324"><div class="ttname"><a href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a></div><div class="ttdeci">gchar * remmina_utils_get_lang()</div><div class="ttdoc">Return the current language defined in the LC_ALL. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00288">remmina_utils.c:288</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_af1acfeca84e3efd47ab1ef8365f94f99"><div class="ttname"><a href="remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a></div><div class="ttdeci">const gchar * remmina_utils_get_os_info()</div><div class="ttdoc">A sample function to show how use the other fOS related functions. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00431">remmina_utils.c:431</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a376b0273338fd875054d93b329e85fba"><div class="ttname"><a href="remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba">LSBDistroInfo</a></div><div class="ttdeci">struct lsb_distro_info LSBDistroInfo</div></div>
+<div class="ttc" id="remmina__utils_8c_html_ac00cb21c5cb5efcf7afc6eeae2147a75"><div class="ttname"><a href="remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_description()</div><div class="ttdoc">Print the Distribution description as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00355">remmina_utils.c:355</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_aff7d3597f23cae366973218cc01a2ae8"><div class="ttname"><a href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a></div><div class="ttdeci">gchar * remmina_sha1_file(const gchar *filename)</div><div class="ttdoc">Create a hexadecimal string version of the SHA-1 digest of the contents of the named file...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00466">remmina_utils.c:466</a></div></div>
+<div class="ttc" id="structlsb__distro__info_html_a7aba92d963bcaed1a5dda7b7be4fa6d7"><div class="ttname"><a href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7">lsb_distro_info::scanstring</a></div><div class="ttdeci">gchar * scanstring</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00061">remmina_utils.c:61</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_ac804e6111e538ee2fa425b8b6fd1fb66"><div class="ttname"><a href="remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a></div><div class="ttdeci">guint remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00193">remmina_utils.c:193</a></div></div>
+<div class="ttc" id="structlsb__distro__info_html_a251763a49054183774e2082595537e47"><div class="ttname"><a href="structlsb__distro__info.html#a251763a49054183774e2082595537e47">lsb_distro_info::name</a></div><div class="ttdeci">gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00060">remmina_utils.c:60</a></div></div>
+<div class="ttc" id="structlsb__distro__info_html"><div class="ttname"><a href="structlsb__distro__info.html">lsb_distro_info</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00059">remmina_utils.c:59</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a819abe021d49cefa64ffc7981aacc478"><div class="ttname"><a href="remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478">distroArray</a></div><div class="ttdeci">static DistroInfo distroArray[]</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00079">remmina_utils.c:79</a></div></div>
+<div class="ttc" id="structdistro__info_html_a1999084b11586bdb56bc2453fce7f633"><div class="ttname"><a href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">distro_info::filename</a></div><div class="ttdeci">gchar * filename</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00076">remmina_utils.c:76</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a54cee350c4ecc6e77af835c4ba90df4c"><div class="ttname"><a href="remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a></div><div class="ttdeci">GHashTable * remmina_utils_get_etc_release()</div><div class="ttdoc">Print the distribution description if found. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00404">remmina_utils.c:404</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_aa6859a61aa28f46591750c9afdef66f4"><div class="ttname"><a href="remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a></div><div class="ttdeci">gint remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00173">remmina_utils.c:173</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a116e7cd4565386fe531d3a6d1a3d3730"><div class="ttname"><a href="remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_arch()</div><div class="ttdoc">Return the machine hardware name as in &quot;uname -m&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00330">remmina_utils.c:330</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__utils_8c.html">remmina_utils.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__utils_8h.html b/docs/remmina__utils_8h.html
new file mode 100644
index 000000000..c9f9f1bd7
--- /dev/null
+++ b/docs/remmina__utils_8h.html
@@ -0,0 +1,594 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_utils.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__utils_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_utils.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>General utility functions, non-GTK related.
+<a href="#details">More...</a></p>
+
+<p><a href="remmina__utils_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3ce53eeb3b090f86cfcdbce3e7cf71be"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be">remmina_utils_string_find</a> (GString *haystack, gint start, gint end, const gchar *needle)</td></tr>
+<tr class="separator:a3ce53eeb3b090f86cfcdbce3e7cf71be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6859a61aa28f46591750c9afdef66f4"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a> (GString *str, gint pos, gint len, const gchar *replace)</td></tr>
+<tr class="separator:aa6859a61aa28f46591750c9afdef66f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a> (GString *haystack, const gchar *needle, const gchar *replace)</td></tr>
+<tr class="memdesc:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. <a href="#ac804e6111e538ee2fa425b8b6fd1fb66">More...</a><br /></td></tr>
+<tr class="separator:ac804e6111e538ee2fa425b8b6fd1fb66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe83bd0997a1054045e17d3f66c8bb0d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a> (const gchar *s)</td></tr>
+<tr class="memdesc:afe83bd0997a1054045e17d3f66c8bb0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strip <br />
+, and " from a given string. <a href="#afe83bd0997a1054045e17d3f66c8bb0d">More...</a><br /></td></tr>
+<tr class="separator:afe83bd0997a1054045e17d3f66c8bb0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a> ()</td></tr>
+<tr class="memdesc:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current language defined in the LC_ALL. <a href="#a0f10e190a6dd212fcb0cf36ce81c8324">More...</a><br /></td></tr>
+<tr class="separator:a0f10e190a6dd212fcb0cf36ce81c8324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfc722d07d9936711794411bfbed0522"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a> ()</td></tr>
+<tr class="memdesc:abfc722d07d9936711794411bfbed0522"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the OS name as in "uname -s". <a href="#abfc722d07d9936711794411bfbed0522">More...</a><br /></td></tr>
+<tr class="separator:abfc722d07d9936711794411bfbed0522"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57603aa88df56e77e1a6de0f215f21aa"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a> ()</td></tr>
+<tr class="memdesc:a57603aa88df56e77e1a6de0f215f21aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the OS version as in "uname -r". <a href="#a57603aa88df56e77e1a6de0f215f21aa">More...</a><br /></td></tr>
+<tr class="separator:a57603aa88df56e77e1a6de0f215f21aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a116e7cd4565386fe531d3a6d1a3d3730"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a> ()</td></tr>
+<tr class="memdesc:a116e7cd4565386fe531d3a6d1a3d3730"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the machine hardware name as in "uname -m". <a href="#a116e7cd4565386fe531d3a6d1a3d3730">More...</a><br /></td></tr>
+<tr class="separator:a116e7cd4565386fe531d3a6d1a3d3730"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa768b6fe171695d212da4c6eaf74cf22"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a> ()</td></tr>
+<tr class="memdesc:aa768b6fe171695d212da4c6eaf74cf22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distributor as specified by the lsb_release command. <a href="#aa768b6fe171695d212da4c6eaf74cf22">More...</a><br /></td></tr>
+<tr class="separator:aa768b6fe171695d212da4c6eaf74cf22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a> ()</td></tr>
+<tr class="memdesc:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution description as specified by the lsb_release command. <a href="#ac00cb21c5cb5efcf7afc6eeae2147a75">More...</a><br /></td></tr>
+<tr class="separator:ac00cb21c5cb5efcf7afc6eeae2147a75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ee50df5d7585d229a154a712c9161ca"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a> ()</td></tr>
+<tr class="memdesc:a5ee50df5d7585d229a154a712c9161ca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution release name as specified by the lsb_release command. <a href="#a5ee50df5d7585d229a154a712c9161ca">More...</a><br /></td></tr>
+<tr class="separator:a5ee50df5d7585d229a154a712c9161ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a> ()</td></tr>
+<tr class="memdesc:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the Distribution codename as specified by the lsb_release command. <a href="#a2b4dbb0da7c8ba4bd86877097b85d10c">More...</a><br /></td></tr>
+<tr class="separator:a2b4dbb0da7c8ba4bd86877097b85d10c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54cee350c4ecc6e77af835c4ba90df4c"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a> ()</td></tr>
+<tr class="memdesc:a54cee350c4ecc6e77af835c4ba90df4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print the distribution description if found. <a href="#a54cee350c4ecc6e77af835c4ba90df4c">More...</a><br /></td></tr>
+<tr class="separator:a54cee350c4ecc6e77af835c4ba90df4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1acfeca84e3efd47ab1ef8365f94f99"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a> ()</td></tr>
+<tr class="memdesc:af1acfeca84e3efd47ab1ef8365f94f99"><td class="mdescLeft">&#160;</td><td class="mdescRight">A sample function to show how use the other fOS related functions. <a href="#af1acfeca84e3efd47ab1ef8365f94f99">More...</a><br /></td></tr>
+<tr class="separator:af1acfeca84e3efd47ab1ef8365f94f99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff7d3597f23cae366973218cc01a2ae8"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a> (const gchar *filename)</td></tr>
+<tr class="memdesc:aff7d3597f23cae366973218cc01a2ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a hexadecimal string version of the SHA-1 digest of the contents of the named file. <a href="#aff7d3597f23cae366973218cc01a2ae8">More...</a><br /></td></tr>
+<tr class="separator:aff7d3597f23cae366973218cc01a2ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a483959ec642cece17e1b79506e71b00e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a> ()</td></tr>
+<tr class="memdesc:a483959ec642cece17e1b79506e71b00e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate a random sting of chars to be used as part of UID for news or stats. <a href="#a483959ec642cece17e1b79506e71b00e">More...</a><br /></td></tr>
+<tr class="separator:a483959ec642cece17e1b79506e71b00e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>General utility functions, non-GTK related. </p>
+
+<p class="definition">Definition in file <a class="el" href="remmina__utils_8h_source.html">remmina_utils.h</a>.</p>
+</div><h2 class="groupheader">Function Documentation</h2>
+<a id="a483959ec642cece17e1b79506e71b00e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a483959ec642cece17e1b79506e71b00e">&#9670;&nbsp;</a></span>remmina_gen_random_uuid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_gen_random_uuid </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Generate a random sting of chars to be used as part of UID for news or stats. </p>
+<dl class="section return"><dt>Returns</dt><dd>a string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00510">510</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aff7d3597f23cae366973218cc01a2ae8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff7d3597f23cae366973218cc01a2ae8">&#9670;&nbsp;</a></span>remmina_sha1_file()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_sha1_file </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>filename</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a hexadecimal string version of the SHA-1 digest of the contents of the named file. </p>
+<dl class="section return"><dt>Returns</dt><dd>a newly allocated string which the caller should free() when finished.</dd></dl>
+<p>If any error occurs while reading the file, (permission denied, file not found, etc.), this function returns NULL.</p>
+<p>Taken from <a href="https://github.com/ttuegel/notmuch">https://github.com/ttuegel/notmuch</a> do PR in case of substantial modifications. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00466">466</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a54cee350c4ecc6e77af835c4ba90df4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a54cee350c4ecc6e77af835c4ba90df4c">&#9670;&nbsp;</a></span>remmina_utils_get_etc_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* remmina_utils_get_etc_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the distribution description if found. </p>
+<p>Test each known distribution specific information file and print it’s content. </p><dl class="section return"><dt>Returns</dt><dd>a string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00404">404</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a116e7cd4565386fe531d3a6d1a3d3730"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a116e7cd4565386fe531d3a6d1a3d3730">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_arch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_arch </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the machine hardware name as in "uname -m". </p>
+<dl class="section return"><dt>Returns</dt><dd>The machine hardware name or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00330">330</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="abfc722d07d9936711794411bfbed0522"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfc722d07d9936711794411bfbed0522">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_name </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the OS name as in "uname -s". </p>
+<dl class="section return"><dt>Returns</dt><dd>The OS name or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00308">308</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a57603aa88df56e77e1a6de0f215f21aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57603aa88df56e77e1a6de0f215f21aa">&#9670;&nbsp;</a></span>remmina_utils_get_kernel_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_kernel_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the OS version as in "uname -r". </p>
+<dl class="section return"><dt>Returns</dt><dd>The OS release or NULL. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00315">315</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a0f10e190a6dd212fcb0cf36ce81c8324"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f10e190a6dd212fcb0cf36ce81c8324">&#9670;&nbsp;</a></span>remmina_utils_get_lang()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lang </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the current language defined in the LC_ALL. </p>
+<dl class="section return"><dt>Returns</dt><dd>a language string or en_US. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00288">288</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b4dbb0da7c8ba4bd86877097b85d10c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b4dbb0da7c8ba4bd86877097b85d10c">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_codename()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_codename </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution codename as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the codename string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00389">389</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ac00cb21c5cb5efcf7afc6eeae2147a75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac00cb21c5cb5efcf7afc6eeae2147a75">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_description()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_description </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution description as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the Distribution description string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00355">355</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aa768b6fe171695d212da4c6eaf74cf22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa768b6fe171695d212da4c6eaf74cf22">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_id()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_id </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distributor as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the distributor ID string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00341">341</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ee50df5d7585d229a154a712c9161ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ee50df5d7585d229a154a712c9161ca">&#9670;&nbsp;</a></span>remmina_utils_get_lsb_release()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_get_lsb_release </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Print the Distribution release name as specified by the lsb_release command. </p>
+<dl class="section return"><dt>Returns</dt><dd>the Distribution release name string or NULL. Caller must free it with g_free(). </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00375">375</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="af1acfeca84e3efd47ab1ef8365f94f99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1acfeca84e3efd47ab1ef8365f94f99">&#9670;&nbsp;</a></span>remmina_utils_get_os_info()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_utils_get_os_info </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A sample function to show how use the other fOS related functions. </p>
+<dl class="section return"><dt>Returns</dt><dd>a semicolon separated OS data like in "uname -srm". </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00431">431</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a3ce53eeb3b090f86cfcdbce3e7cf71be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ce53eeb3b090f86cfcdbce3e7cf71be">&#9670;&nbsp;</a></span>remmina_utils_string_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gint remmina_utils_string_find </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>end</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00141">141</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6859a61aa28f46591750c9afdef66f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6859a61aa28f46591750c9afdef66f4">&#9670;&nbsp;</a></span>remmina_utils_string_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_utils_string_replace </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00173">173</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ac804e6111e538ee2fa425b8b6fd1fb66"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac804e6111e538ee2fa425b8b6fd1fb66">&#9670;&nbsp;</a></span>remmina_utils_string_replace_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint remmina_utils_string_replace_all </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">haystack</td><td>The input string to operate on. This string is modified in place. </td></tr>
+ <tr><td class="paramname">needle</td><td>The string which should be replaced. </td></tr>
+ <tr><td class="paramname">replace</td><td>The replacement for <em>needle</em>.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Number of replacements made. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00193">193</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="afe83bd0997a1054045e17d3f66c8bb0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe83bd0997a1054045e17d3f66c8bb0d">&#9670;&nbsp;</a></span>remmina_utils_string_strip()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_utils_string_strip </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Strip <br />
+, and " from a given string. </p>
+<p>This function is particularly useful with g_spawn_command_line_sync that does not strip control characters from the output. </p><dl class="section warning"><dt>Warning</dt><dd>the result should be freed. </dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">a</td><td>string. </td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>a newly allocated copy of string cleaned by , <br />
+ and " </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00220">220</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__utils_8h.html">remmina_utils.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__utils_8h.js b/docs/remmina__utils_8h.js
new file mode 100644
index 000000000..5927433f1
--- /dev/null
+++ b/docs/remmina__utils_8h.js
@@ -0,0 +1,19 @@
+var remmina__utils_8h =
+[
+ [ "remmina_gen_random_uuid", "remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e", null ],
+ [ "remmina_sha1_file", "remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8", null ],
+ [ "remmina_utils_get_etc_release", "remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c", null ],
+ [ "remmina_utils_get_kernel_arch", "remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730", null ],
+ [ "remmina_utils_get_kernel_name", "remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522", null ],
+ [ "remmina_utils_get_kernel_release", "remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa", null ],
+ [ "remmina_utils_get_lang", "remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324", null ],
+ [ "remmina_utils_get_lsb_codename", "remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c", null ],
+ [ "remmina_utils_get_lsb_description", "remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75", null ],
+ [ "remmina_utils_get_lsb_id", "remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22", null ],
+ [ "remmina_utils_get_lsb_release", "remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca", null ],
+ [ "remmina_utils_get_os_info", "remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99", null ],
+ [ "remmina_utils_string_find", "remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be", null ],
+ [ "remmina_utils_string_replace", "remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4", null ],
+ [ "remmina_utils_string_replace_all", "remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66", null ],
+ [ "remmina_utils_string_strip", "remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__utils_8h_source.html b/docs/remmina__utils_8h_source.html
new file mode 100644
index 000000000..048039e2d
--- /dev/null
+++ b/docs/remmina__utils_8h_source.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_utils.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__utils_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_utils.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__utils_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;gint <a class="code" href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be">remmina_utils_string_find</a>(GString *haystack, gint start, gint end, <span class="keyword">const</span> gchar *needle);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;gint <a class="code" href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a>(GString *str, gint pos, gint len, <span class="keyword">const</span> gchar *replace);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;guint <a class="code" href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a>(GString *haystack, <span class="keyword">const</span> gchar *needle, <span class="keyword">const</span> gchar *replace);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a>(<span class="keyword">const</span> gchar *s);</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;gchar *<a class="code" href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a>();</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a>();</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a>();</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a>();</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a>();</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a>();</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a>();</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a>();</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;GHashTable *<a class="code" href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a>();</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a>();</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a>(<span class="keyword">const</span> gchar *filename);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;gchar *<a class="code" href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a>();</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__utils_8h_html_aa768b6fe171695d212da4c6eaf74cf22"><div class="ttname"><a href="remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22">remmina_utils_get_lsb_id</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_id()</div><div class="ttdoc">Print the Distributor as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00341">remmina_utils.c:341</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a483959ec642cece17e1b79506e71b00e"><div class="ttname"><a href="remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a></div><div class="ttdeci">gchar * remmina_gen_random_uuid()</div><div class="ttdoc">Generate a random sting of chars to be used as part of UID for news or stats. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00510">remmina_utils.c:510</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_afe83bd0997a1054045e17d3f66c8bb0d"><div class="ttname"><a href="remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d">remmina_utils_string_strip</a></div><div class="ttdeci">gchar * remmina_utils_string_strip(const gchar *s)</div><div class="ttdoc">Strip , and &quot; from a given string. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00220">remmina_utils.c:220</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a54cee350c4ecc6e77af835c4ba90df4c"><div class="ttname"><a href="remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c">remmina_utils_get_etc_release</a></div><div class="ttdeci">GHashTable * remmina_utils_get_etc_release()</div><div class="ttdoc">Print the distribution description if found. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00404">remmina_utils.c:404</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_aff7d3597f23cae366973218cc01a2ae8"><div class="ttname"><a href="remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a></div><div class="ttdeci">gchar * remmina_sha1_file(const gchar *filename)</div><div class="ttdoc">Create a hexadecimal string version of the SHA-1 digest of the contents of the named file...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00466">remmina_utils.c:466</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a57603aa88df56e77e1a6de0f215f21aa"><div class="ttname"><a href="remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa">remmina_utils_get_kernel_release</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_release()</div><div class="ttdoc">Return the OS version as in &quot;uname -r&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00315">remmina_utils.c:315</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a116e7cd4565386fe531d3a6d1a3d3730"><div class="ttname"><a href="remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730">remmina_utils_get_kernel_arch</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_arch()</div><div class="ttdoc">Return the machine hardware name as in &quot;uname -m&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00330">remmina_utils.c:330</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_ac00cb21c5cb5efcf7afc6eeae2147a75"><div class="ttname"><a href="remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75">remmina_utils_get_lsb_description</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_description()</div><div class="ttdoc">Print the Distribution description as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00355">remmina_utils.c:355</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_ac804e6111e538ee2fa425b8b6fd1fb66"><div class="ttname"><a href="remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66">remmina_utils_string_replace_all</a></div><div class="ttdeci">guint remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00193">remmina_utils.c:193</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_aa6859a61aa28f46591750c9afdef66f4"><div class="ttname"><a href="remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4">remmina_utils_string_replace</a></div><div class="ttdeci">gint remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00173">remmina_utils.c:173</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a2b4dbb0da7c8ba4bd86877097b85d10c"><div class="ttname"><a href="remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c">remmina_utils_get_lsb_codename</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_codename()</div><div class="ttdoc">Print the Distribution codename as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00389">remmina_utils.c:389</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a0f10e190a6dd212fcb0cf36ce81c8324"><div class="ttname"><a href="remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a></div><div class="ttdeci">gchar * remmina_utils_get_lang()</div><div class="ttdoc">Return the current language defined in the LC_ALL. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00288">remmina_utils.c:288</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_af1acfeca84e3efd47ab1ef8365f94f99"><div class="ttname"><a href="remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99">remmina_utils_get_os_info</a></div><div class="ttdeci">const gchar * remmina_utils_get_os_info()</div><div class="ttdoc">A sample function to show how use the other fOS related functions. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00431">remmina_utils.c:431</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_abfc722d07d9936711794411bfbed0522"><div class="ttname"><a href="remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522">remmina_utils_get_kernel_name</a></div><div class="ttdeci">const gchar * remmina_utils_get_kernel_name()</div><div class="ttdoc">Return the OS name as in &quot;uname -s&quot;. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00308">remmina_utils.c:308</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a3ce53eeb3b090f86cfcdbce3e7cf71be"><div class="ttname"><a href="remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be">remmina_utils_string_find</a></div><div class="ttdeci">G_BEGIN_DECLS gint remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00141">remmina_utils.c:141</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html_a5ee50df5d7585d229a154a712c9161ca"><div class="ttname"><a href="remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca">remmina_utils_get_lsb_release</a></div><div class="ttdeci">gchar * remmina_utils_get_lsb_release()</div><div class="ttdoc">Print the Distribution release name as specified by the lsb_release command. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00375">remmina_utils.c:375</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__utils_8h.html">remmina_utils.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__widget__pool_8c.html b/docs/remmina__widget__pool_8c.html
new file mode 100644
index 000000000..1c0489a40
--- /dev/null
+++ b/docs/remmina__widget__pool_8c.html
@@ -0,0 +1,343 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_widget_pool.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__widget__pool_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_widget_pool.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__widget__pool_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aadc178f8f991ba939827d235aae8ad09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a> (void)</td></tr>
+<tr class="separator:aadc178f8f991ba939827d235aae8ad09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5fd17580202843eab40cabb258d2664"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool_on_widget_destroy</a> (GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:aa5fd17580202843eab40cabb258d2664"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3c9c9853eb5bedbfeadbfac1d495b95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a> (GtkWidget *widget)</td></tr>
+<tr class="separator:ae3c9c9853eb5bedbfeadbfac1d495b95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab776b24a3b829a1d5dd7974cb8582c05"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a> (GType type, const gchar *tag)</td></tr>
+<tr class="separator:ab776b24a3b829a1d5dd7974cb8582c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a6a2069cdbbb920fb09f95bec3e997e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a> (GType type, GdkWindow *window)</td></tr>
+<tr class="separator:a0a6a2069cdbbb920fb09f95bec3e997e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53fad3994b2550300cfd4fd8bb2a2b5b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a> (<a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a> callback, gpointer data)</td></tr>
+<tr class="separator:a53fad3994b2550300cfd4fd8bb2a2b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cbb5b8d01a6d44ba7b46434467c02f8"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a> ()</td></tr>
+<tr class="separator:a9cbb5b8d01a6d44ba7b46434467c02f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a904ecc5c259a92edee29d749b3406ac2"><td class="memItemLeft" align="right" valign="top">static GPtrArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> = NULL</td></tr>
+<tr class="separator:a904ecc5c259a92edee29d749b3406ac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a9cbb5b8d01a6d44ba7b46434467c02f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cbb5b8d01a6d44ba7b46434467c02f8">&#9670;&nbsp;</a></span>remmina_widget_pool_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_widget_pool_count </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00140">140</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="ab776b24a3b829a1d5dd7974cb8582c05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab776b24a3b829a1d5dd7974cb8582c05">&#9670;&nbsp;</a></span>remmina_widget_pool_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_widget_pool_find </td>
+ <td>(</td>
+ <td class="paramtype">GType&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="a0a6a2069cdbbb920fb09f95bec3e997e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a6a2069cdbbb920fb09f95bec3e997e">&#9670;&nbsp;</a></span>remmina_widget_pool_find_by_window()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_widget_pool_find_by_window </td>
+ <td>(</td>
+ <td class="paramtype">GType&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkWindow *&#160;</td>
+ <td class="paramname"><em>window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00086">86</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="a53fad3994b2550300cfd4fd8bb2a2b5b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53fad3994b2550300cfd4fd8bb2a2b5b">&#9670;&nbsp;</a></span>remmina_widget_pool_foreach()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_widget_pool_foreach </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a>&#160;</td>
+ <td class="paramname"><em>callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00109">109</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="aadc178f8f991ba939827d235aae8ad09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadc178f8f991ba939827d235aae8ad09">&#9670;&nbsp;</a></span>remmina_widget_pool_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_widget_pool_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00045">45</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="aa5fd17580202843eab40cabb258d2664"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5fd17580202843eab40cabb258d2664">&#9670;&nbsp;</a></span>remmina_widget_pool_on_widget_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_widget_pool_on_widget_destroy </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="ae3c9c9853eb5bedbfeadbfac1d495b95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3c9c9853eb5bedbfeadbfac1d495b95">&#9670;&nbsp;</a></span>remmina_widget_pool_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_widget_pool_register </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00057">57</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a904ecc5c259a92edee29d749b3406ac2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a904ecc5c259a92edee29d749b3406ac2">&#9670;&nbsp;</a></span>remmina_widget_pool</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPtrArray* remmina_widget_pool = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00043">43</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__widget__pool_8c.html">remmina_widget_pool.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__widget__pool_8c.js b/docs/remmina__widget__pool_8c.js
new file mode 100644
index 000000000..5f9c29bd9
--- /dev/null
+++ b/docs/remmina__widget__pool_8c.js
@@ -0,0 +1,11 @@
+var remmina__widget__pool_8c =
+[
+ [ "remmina_widget_pool_count", "remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8", null ],
+ [ "remmina_widget_pool_find", "remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05", null ],
+ [ "remmina_widget_pool_find_by_window", "remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e", null ],
+ [ "remmina_widget_pool_foreach", "remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b", null ],
+ [ "remmina_widget_pool_init", "remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09", null ],
+ [ "remmina_widget_pool_on_widget_destroy", "remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664", null ],
+ [ "remmina_widget_pool_register", "remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95", null ],
+ [ "remmina_widget_pool", "remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__widget__pool_8c_source.html b/docs/remmina__widget__pool_8c_source.html
new file mode 100644
index 000000000..74d46e741
--- /dev/null
+++ b/docs/remmina__widget__pool_8c_source.html
@@ -0,0 +1,113 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_widget_pool.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__widget__pool_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_widget_pool.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__widget__pool_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 - 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-2020 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 &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</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="l00040"></a><span class="lineno"> 40</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="l00041"></a><span class="lineno"> 41</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="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2"> 43</a></span>&#160;<span class="keyword">static</span> GPtrArray *<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> = NULL;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09"> 45</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;{</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> = g_ptr_array_new();</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664"> 51</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool_on_widget_destroy</a>(GtkWidget *widget, gpointer data)</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; g_ptr_array_remove(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>, widget);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;}</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95"> 57</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GtkWidget *widget)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; g_ptr_array_add(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>, widget);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; g_signal_connect(G_OBJECT(widget), <span class="stringliteral">&quot;destroy&quot;</span>, G_CALLBACK(<a class="code" href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool_on_widget_destroy</a>), NULL);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;GtkWidget*</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05"> 65</a></span>&#160;<a class="code" href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a>(GType type, <span class="keyword">const</span> gchar *tag)</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"> 67</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; gint i;</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="keywordflow">if</span> (<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> == NULL)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>-&gt;len; i++) {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; widget = GTK_WIDGET(g_ptr_array_index(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>, i));</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(widget, type))</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span> (tag &amp;&amp; g_strcmp0((<span class="keyword">const</span> gchar*)g_object_get_data(G_OBJECT(widget), <span class="stringliteral">&quot;tag&quot;</span>), tag) != 0)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;}</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;GtkWidget*</div><div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e"> 86</a></span>&#160;<a class="code" href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a>(GType type, GdkWindow *window)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; gint i;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; GdkWindow *parent;</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="keywordflow">if</span> (window == NULL || <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> == NULL)</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">return</span> NULL;</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="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>-&gt;len; i++) {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; widget = GTK_WIDGET(g_ptr_array_index(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>, i));</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (!G_TYPE_CHECK_INSTANCE_TYPE(widget, type))</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">/* gdk_window_get_toplevel won’t work here, if the window is an embedded client. So we iterate the window tree */</span></div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">for</span> (parent = window; parent &amp;&amp; parent != GDK_WINDOW_ROOT; parent = gdk_window_get_parent(parent)) {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (gtk_widget_get_window(widget) == parent)</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">return</span> widget;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">return</span> NULL;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;}</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"><a class="line" href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b"> 109</a></span>&#160;gint <a class="code" href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a> callback, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; GtkWidget *widget;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; gint i;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; gint n = 0;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; GPtrArray *wpcpy = NULL;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a> == NULL)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> 0;</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="comment">/* Make a copy of remmina_widget_pool, so we can survive when callback()</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> * remove an element from remmina_widget_pool */</span></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"> 123</span>&#160; wpcpy = g_ptr_array_sized_new(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>-&gt;len);</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; <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>-&gt;len; i++)</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; g_ptr_array_add(wpcpy, g_ptr_array_index(<a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>, i));</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="comment">/* Scan the remmina_widget_pool and call callbac() on every element */</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; wpcpy-&gt;len; i++) {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; widget = GTK_WIDGET(g_ptr_array_index(wpcpy, i));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (callback(widget, data))</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; n++;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</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; <span class="comment">/* Free the copy */</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; g_ptr_array_unref(wpcpy);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> n;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;}</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a"> 140</a></span>&#160;gint <a class="code" href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a>()</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;{</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> <a class="code" href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a>-&gt;len;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="ttc" id="remmina__widget__pool_8c_html_a0a6a2069cdbbb920fb09f95bec3e997e"><div class="ttname"><a href="remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find_by_window(GType type, GdkWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00086">remmina_widget_pool.c:86</a></div></div>
+<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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_a6ced6afec83f47d8ac36b01bff2eb61e"><div class="ttname"><a href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a></div><div class="ttdeci">G_BEGIN_DECLS typedef gboolean(* RemminaWidgetPoolForEachFunc)(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8h_source.html#l00040">remmina_widget_pool.h:40</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__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.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__widget__pool_8c_html_a9cbb5b8d01a6d44ba7b46434467c02f8"><div class="ttname"><a href="remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8">remmina_widget_pool_count</a></div><div class="ttdeci">gint remmina_widget_pool_count()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00140">remmina_widget_pool.c:140</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_aadc178f8f991ba939827d235aae8ad09"><div class="ttname"><a href="remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a></div><div class="ttdeci">void remmina_widget_pool_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00045">remmina_widget_pool.c:45</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_a904ecc5c259a92edee29d749b3406ac2"><div class="ttname"><a href="remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2">remmina_widget_pool</a></div><div class="ttdeci">static GPtrArray * remmina_widget_pool</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00043">remmina_widget_pool.c:43</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_a53fad3994b2550300cfd4fd8bb2a2b5b"><div class="ttname"><a href="remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a></div><div class="ttdeci">gint remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00109">remmina_widget_pool.c:109</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_aa5fd17580202843eab40cabb258d2664"><div class="ttname"><a href="remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664">remmina_widget_pool_on_widget_destroy</a></div><div class="ttdeci">static void remmina_widget_pool_on_widget_destroy(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00051">remmina_widget_pool.c:51</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8c_html_ab776b24a3b829a1d5dd7974cb8582c05"><div class="ttname"><a href="remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find(GType type, const gchar *tag)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00065">remmina_widget_pool.c:65</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__widget__pool_8c.html">remmina_widget_pool.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__widget__pool_8h.html b/docs/remmina__widget__pool_8h.html
new file mode 100644
index 000000000..8a7909bbc
--- /dev/null
+++ b/docs/remmina__widget__pool_8h.html
@@ -0,0 +1,295 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_widget_pool.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__widget__pool_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_widget_pool.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="remmina__widget__pool_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aadc178f8f991ba939827d235aae8ad09"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a> (void)</td></tr>
+<tr class="separator:aadc178f8f991ba939827d235aae8ad09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3c9c9853eb5bedbfeadbfac1d495b95"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a> (GtkWidget *widget)</td></tr>
+<tr class="separator:ae3c9c9853eb5bedbfeadbfac1d495b95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab776b24a3b829a1d5dd7974cb8582c05"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a> (GType type, const gchar *tag)</td></tr>
+<tr class="separator:ab776b24a3b829a1d5dd7974cb8582c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a6a2069cdbbb920fb09f95bec3e997e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a> (GType type, GdkWindow *window)</td></tr>
+<tr class="separator:a0a6a2069cdbbb920fb09f95bec3e997e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53fad3994b2550300cfd4fd8bb2a2b5b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a> (<a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a> callback, gpointer data)</td></tr>
+<tr class="separator:a53fad3994b2550300cfd4fd8bb2a2b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af888e4e0c2d590e61c72608a7482f18a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a">remmina_widget_pool_count</a> (void)</td></tr>
+<tr class="separator:af888e4e0c2d590e61c72608a7482f18a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6ced6afec83f47d8ac36b01bff2eb61e"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a> )(GtkWidget *widget, gpointer data)</td></tr>
+<tr class="separator:a6ced6afec83f47d8ac36b01bff2eb61e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="af888e4e0c2d590e61c72608a7482f18a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af888e4e0c2d590e61c72608a7482f18a">&#9670;&nbsp;</a></span>remmina_widget_pool_count()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_widget_pool_count </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00140">140</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="ab776b24a3b829a1d5dd7974cb8582c05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab776b24a3b829a1d5dd7974cb8582c05">&#9670;&nbsp;</a></span>remmina_widget_pool_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_widget_pool_find </td>
+ <td>(</td>
+ <td class="paramtype">GType&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="a0a6a2069cdbbb920fb09f95bec3e997e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a6a2069cdbbb920fb09f95bec3e997e">&#9670;&nbsp;</a></span>remmina_widget_pool_find_by_window()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* remmina_widget_pool_find_by_window </td>
+ <td>(</td>
+ <td class="paramtype">GType&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkWindow *&#160;</td>
+ <td class="paramname"><em>window</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00086">86</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="a53fad3994b2550300cfd4fd8bb2a2b5b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53fad3994b2550300cfd4fd8bb2a2b5b">&#9670;&nbsp;</a></span>remmina_widget_pool_foreach()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_widget_pool_foreach </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a>&#160;</td>
+ <td class="paramname"><em>callback</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00109">109</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="aadc178f8f991ba939827d235aae8ad09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadc178f8f991ba939827d235aae8ad09">&#9670;&nbsp;</a></span>remmina_widget_pool_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_widget_pool_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00045">45</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<a id="ae3c9c9853eb5bedbfeadbfac1d495b95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3c9c9853eb5bedbfeadbfac1d495b95">&#9670;&nbsp;</a></span>remmina_widget_pool_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_widget_pool_register </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8c_source.html#l00057">57</a> of file <a class="el" href="remmina__widget__pool_8c_source.html">remmina_widget_pool.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a6ced6afec83f47d8ac36b01bff2eb61e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ced6afec83f47d8ac36b01bff2eb61e">&#9670;&nbsp;</a></span>RemminaWidgetPoolForEachFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS typedef gboolean(* RemminaWidgetPoolForEachFunc) (GtkWidget *widget, gpointer data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__widget__pool_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__widget__pool_8h_source.html">remmina_widget_pool.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/remmina__widget__pool_8h.js b/docs/remmina__widget__pool_8h.js
new file mode 100644
index 000000000..a835b6b93
--- /dev/null
+++ b/docs/remmina__widget__pool_8h.js
@@ -0,0 +1,10 @@
+var remmina__widget__pool_8h =
+[
+ [ "remmina_widget_pool_count", "remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a", null ],
+ [ "remmina_widget_pool_find", "remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05", null ],
+ [ "remmina_widget_pool_find_by_window", "remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e", null ],
+ [ "remmina_widget_pool_foreach", "remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b", null ],
+ [ "remmina_widget_pool_init", "remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09", null ],
+ [ "remmina_widget_pool_register", "remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95", null ],
+ [ "RemminaWidgetPoolForEachFunc", "remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e", null ]
+]; \ No newline at end of file
diff --git a/docs/remmina__widget__pool_8h_source.html b/docs/remmina__widget__pool_8h_source.html
new file mode 100644
index 000000000..8e18258eb
--- /dev/null
+++ b/docs/remmina__widget__pool_8h_source.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_widget_pool.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('remmina__widget__pool_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">remmina_widget_pool.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="remmina__widget__pool_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 - Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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"><a class="line" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e"> 40</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a>)(GtkWidget *widget, gpointer data);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95">remmina_widget_pool_register</a>(GtkWidget *widget);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;GtkWidget *<a class="code" href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a>(GType type, <span class="keyword">const</span> gchar *tag);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;GtkWidget *<a class="code" href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a>(GType type, GdkWindow *window);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;gint <a class="code" href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a>(<a class="code" href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a> callback, gpointer data);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;gint <a class="code" href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a">remmina_widget_pool_count</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;G_END_DECLS</div><div class="ttc" id="remmina__widget__pool_8h_html_a53fad3994b2550300cfd4fd8bb2a2b5b"><div class="ttname"><a href="remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b">remmina_widget_pool_foreach</a></div><div class="ttdeci">gint remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00109">remmina_widget_pool.c:109</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_a6ced6afec83f47d8ac36b01bff2eb61e"><div class="ttname"><a href="remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e">RemminaWidgetPoolForEachFunc</a></div><div class="ttdeci">G_BEGIN_DECLS typedef gboolean(* RemminaWidgetPoolForEachFunc)(GtkWidget *widget, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8h_source.html#l00040">remmina_widget_pool.h:40</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_a0a6a2069cdbbb920fb09f95bec3e997e"><div class="ttname"><a href="remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e">remmina_widget_pool_find_by_window</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find_by_window(GType type, GdkWindow *window)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00086">remmina_widget_pool.c:86</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_ae3c9c9853eb5bedbfeadbfac1d495b95"><div class="ttname"><a href="remmina__widget__pool_8h.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#l00057">remmina_widget_pool.c:57</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_ab776b24a3b829a1d5dd7974cb8582c05"><div class="ttname"><a href="remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05">remmina_widget_pool_find</a></div><div class="ttdeci">GtkWidget * remmina_widget_pool_find(GType type, const gchar *tag)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00065">remmina_widget_pool.c:65</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_aadc178f8f991ba939827d235aae8ad09"><div class="ttname"><a href="remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09">remmina_widget_pool_init</a></div><div class="ttdeci">void remmina_widget_pool_init(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00045">remmina_widget_pool.c:45</a></div></div>
+<div class="ttc" id="remmina__widget__pool_8h_html_af888e4e0c2d590e61c72608a7482f18a"><div class="ttname"><a href="remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a">remmina_widget_pool_count</a></div><div class="ttdeci">gint remmina_widget_pool_count(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__widget__pool_8c_source.html#l00140">remmina_widget_pool.c:140</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="remmina__widget__pool_8h.html">remmina_widget_pool.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/resize.js b/docs/resize.js
new file mode 100644
index 000000000..56e4a023c
--- /dev/null
+++ b/docs/resize.js
@@ -0,0 +1,114 @@
+function initResizable()
+{
+ var cookie_namespace = 'doxygen';
+ var sidenav,navtree,content,header,collapsed,collapsedWidth=0,barWidth=6,desktop_vp=768,titleHeight;
+
+ function readCookie(cookie)
+ {
+ var myCookie = cookie_namespace+"_"+cookie+"=";
+ if (document.cookie) {
+ var index = document.cookie.indexOf(myCookie);
+ if (index != -1) {
+ var valStart = index + myCookie.length;
+ var valEnd = document.cookie.indexOf(";", valStart);
+ if (valEnd == -1) {
+ valEnd = document.cookie.length;
+ }
+ var val = document.cookie.substring(valStart, valEnd);
+ return val;
+ }
+ }
+ return 0;
+ }
+
+ function writeCookie(cookie, val, expiration)
+ {
+ if (val==undefined) return;
+ if (expiration == null) {
+ var date = new Date();
+ date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week
+ expiration = date.toGMTString();
+ }
+ document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/";
+ }
+
+ function resizeWidth()
+ {
+ var windowWidth = $(window).width() + "px";
+ var sidenavWidth = $(sidenav).outerWidth();
+ content.css({marginLeft:parseInt(sidenavWidth)+"px"});
+ writeCookie('width',sidenavWidth-barWidth, null);
+ }
+
+ function restoreWidth(navWidth)
+ {
+ var windowWidth = $(window).width() + "px";
+ content.css({marginLeft:parseInt(navWidth)+barWidth+"px"});
+ sidenav.css({width:navWidth + "px"});
+ }
+
+ function resizeHeight()
+ {
+ var headerHeight = header.outerHeight();
+ var footerHeight = footer.outerHeight();
+ var windowHeight = $(window).height() - headerHeight - footerHeight;
+ content.css({height:windowHeight + "px"});
+ navtree.css({height:windowHeight + "px"});
+ sidenav.css({height:windowHeight + "px"});
+ var width=$(window).width();
+ if (width!=collapsedWidth) {
+ if (width<desktop_vp && collapsedWidth>=desktop_vp) {
+ if (!collapsed) {
+ collapseExpand();
+ }
+ } else if (width>desktop_vp && collapsedWidth<desktop_vp) {
+ if (collapsed) {
+ collapseExpand();
+ }
+ }
+ collapsedWidth=width;
+ }
+ }
+
+ function collapseExpand()
+ {
+ if (sidenav.width()>0) {
+ restoreWidth(0);
+ collapsed=true;
+ }
+ else {
+ var width = readCookie('width');
+ if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); }
+ collapsed=false;
+ }
+ }
+
+ header = $("#top");
+ sidenav = $("#side-nav");
+ content = $("#doc-content");
+ navtree = $("#nav-tree");
+ footer = $("#nav-path");
+ $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } });
+ $(sidenav).resizable({ minWidth: 0 });
+ $(window).resize(function() { resizeHeight(); });
+ var device = navigator.userAgent.toLowerCase();
+ var touch_device = device.match(/(iphone|ipod|ipad|android)/);
+ if (touch_device) { /* wider split bar for touch only devices */
+ $(sidenav).css({ paddingRight:'20px' });
+ $('.ui-resizable-e').css({ width:'20px' });
+ $('#nav-sync').css({ right:'34px' });
+ barWidth=20;
+ }
+ var width = readCookie('width');
+ if (width) { restoreWidth(width); } else { resizeWidth(); }
+ resizeHeight();
+ var url = location.href;
+ var i=url.indexOf("#");
+ if (i>=0) window.location.hash=url.substr(i);
+ var _preventDefault = function(evt) { evt.preventDefault(); };
+ $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault);
+ $(".ui-resizable-handle").dblclick(collapseExpand);
+ $(window).load(resizeHeight);
+}
+
+
diff --git a/docs/rmnews_8c.html b/docs/rmnews_8c.html
new file mode 100644
index 000000000..4d7040238
--- /dev/null
+++ b/docs/rmnews_8c.html
@@ -0,0 +1,577 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rmnews.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rmnews_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">rmnews.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rmnews_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3dea59fd6d970a1cabeaf47543d871ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce">rmnews_stats_switch_state_set_cb</a> ()</td></tr>
+<tr class="separator:a3dea59fd6d970a1cabeaf47543d871ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7825b2c9facea97439f5780d83e86798"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798">rmnews_defaultcl_on_click</a> ()</td></tr>
+<tr class="separator:a7825b2c9facea97439f5780d83e86798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11d7277ba911522ac40656774cbe41b9"><td class="memItemLeft" align="right" valign="top">static gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews_get_file_contents</a> (gchar *path)</td></tr>
+<tr class="separator:a11d7277ba911522ac40656774cbe41b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa3ec81813c3b38be1f75885e6005a00"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews_close_clicked</a> (GtkButton *btn, gpointer user_data)</td></tr>
+<tr class="separator:aaa3ec81813c3b38be1f75885e6005a00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf38ed099d3ac477aea7e3bbd6d95bd4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews_dialog_deleted</a> (GtkButton *btn, gpointer user_data)</td></tr>
+<tr class="separator:adf38ed099d3ac477aea7e3bbd6d95bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af58ee02676e8c920a6e9b4676bb86abe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews_show_news</a> (GtkWindow *parent)</td></tr>
+<tr class="separator:af58ee02676e8c920a6e9b4676bb86abe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa360ccd2808c76aab98c1fc4bc336c38"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews_get_url_cb</a> (SoupSession *<a class="el" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SoupMessage *msg, gpointer data)</td></tr>
+<tr class="separator:aa360ccd2808c76aab98c1fc4bc336c38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59416d6e8999802e8b145b0338331081"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews_get_uid</a> ()</td></tr>
+<tr class="memdesc:a59416d6e8999802e8b145b0338331081"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to get a unique system+user ID to identify this remmina user and avoid some duplicated task, especially on news management. <a href="#a59416d6e8999802e8b145b0338331081">More...</a><br /></td></tr>
+<tr class="separator:a59416d6e8999802e8b145b0338331081"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341ebc424e040f8f8a2e5e46b1920c7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a> (const char *url)</td></tr>
+<tr class="separator:a341ebc424e040f8f8a2e5e46b1920c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26cb497eeb30a956dcdc5790b393a301"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews_get_news</a> ()</td></tr>
+<tr class="separator:a26cb497eeb30a956dcdc5790b393a301"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88b2d9ce9e7bc64373e2eb7f904a0814"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews_periodic_check</a> (gpointer user_data)</td></tr>
+<tr class="separator:a88b2d9ce9e7bc64373e2eb7f904a0814"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8433da15acb3138804b4816189e8fc3a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews_schedule</a> ()</td></tr>
+<tr class="separator:a8433da15acb3138804b4816189e8fc3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ae1bb737d0381441eebbf3652b3ef416d"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d">rmnews_news_dialog</a></td></tr>
+<tr class="separator:ae1bb737d0381441eebbf3652b3ef416d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a175c6dbec04bf34e3f2a5bd791d2d336"><td class="memItemLeft" align="right" valign="top">static SoupSession *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></td></tr>
+<tr class="separator:a175c6dbec04bf34e3f2a5bd791d2d336"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a565782499953048b5e51934123195e29"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a> = NULL</td></tr>
+<tr class="separator:a565782499953048b5e51934123195e29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ebbcba2c07af0938b3c29e316747d12"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a> []</td></tr>
+<tr class="separator:a8ebbcba2c07af0938b3c29e316747d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4777302c760225b833206545e9f437d"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8c.html#af4777302c760225b833206545e9f437d">eweekdays</a> [7]</td></tr>
+<tr class="separator:af4777302c760225b833206545e9f437d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="aaa3ec81813c3b38be1f75885e6005a00"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa3ec81813c3b38be1f75885e6005a00">&#9670;&nbsp;</a></span>rmnews_close_clicked()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rmnews_close_clicked </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>btn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00158">158</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a7825b2c9facea97439f5780d83e86798"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7825b2c9facea97439f5780d83e86798">&#9670;&nbsp;</a></span>rmnews_defaultcl_on_click()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_defaultcl_on_click </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00116">116</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="adf38ed099d3ac477aea7e3bbd6d95bd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf38ed099d3ac477aea7e3bbd6d95bd4">&#9670;&nbsp;</a></span>rmnews_dialog_deleted()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rmnews_dialog_deleted </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>btn</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00168">168</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a11d7277ba911522ac40656774cbe41b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11d7277ba911522ac40656774cbe41b9">&#9670;&nbsp;</a></span>rmnews_get_file_contents()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gchar* rmnews_get_file_contents </td>
+ <td>(</td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>path</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00142">142</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a26cb497eeb30a956dcdc5790b393a301"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26cb497eeb30a956dcdc5790b393a301">&#9670;&nbsp;</a></span>rmnews_get_news()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_get_news </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00409">409</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a59416d6e8999802e8b145b0338331081"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59416d6e8999802e8b145b0338331081">&#9670;&nbsp;</a></span>rmnews_get_uid()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* rmnews_get_uid </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Try to get a unique system+user ID to identify this remmina user and avoid some duplicated task, especially on news management. </p>
+<dl class="section return"><dt>Returns</dt><dd>a string </dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>The returned string must be freed with g_free. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00360">360</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a341ebc424e040f8f8a2e5e46b1920c7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a341ebc424e040f8f8a2e5e46b1920c7e">&#9670;&nbsp;</a></span>rmnews_get_url()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_get_url </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>url</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00394">394</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="aa360ccd2808c76aab98c1fc4bc336c38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa360ccd2808c76aab98c1fc4bc336c38">&#9670;&nbsp;</a></span>rmnews_get_url_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void rmnews_get_url_cb </td>
+ <td>(</td>
+ <td class="paramtype">SoupSession *&#160;</td>
+ <td class="paramname"><em>session</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SoupMessage *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00228">228</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a88b2d9ce9e7bc64373e2eb7f904a0814"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88b2d9ce9e7bc64373e2eb7f904a0814">&#9670;&nbsp;</a></span>rmnews_periodic_check()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean rmnews_periodic_check </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00502">502</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a8433da15acb3138804b4816189e8fc3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8433da15acb3138804b4816189e8fc3a">&#9670;&nbsp;</a></span>rmnews_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_schedule </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00528">528</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="af58ee02676e8c920a6e9b4676bb86abe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af58ee02676e8c920a6e9b4676bb86abe">&#9670;&nbsp;</a></span>rmnews_show_news()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_show_news </td>
+ <td>(</td>
+ <td class="paramtype">GtkWindow *&#160;</td>
+ <td class="paramname"><em>parent</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00179">179</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a3dea59fd6d970a1cabeaf47543d871ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3dea59fd6d970a1cabeaf47543d871ce">&#9670;&nbsp;</a></span>rmnews_stats_switch_state_set_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_stats_switch_state_set_cb </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00101">101</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="af4777302c760225b833206545e9f437d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4777302c760225b833206545e9f437d">&#9670;&nbsp;</a></span>eweekdays</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint eweekdays[7]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div><div class="line"> 86400,</div><div class="line"> 172800,</div><div class="line"> 259200,</div><div class="line"> 345600,</div><div class="line"> 432000,</div><div class="line"> 518400,</div><div class="line"> 604800</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00091">91</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a565782499953048b5e51934123195e29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a565782499953048b5e51934123195e29">&#9670;&nbsp;</a></span>output_file_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* output_file_path = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00079">79</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="ae1bb737d0381441eebbf3652b3ef416d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1bb737d0381441eebbf3652b3ef416d">&#9670;&nbsp;</a></span>rmnews_news_dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a>* rmnews_news_dialog</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00074">74</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a175c6dbec04bf34e3f2a5bd791d2d336"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a175c6dbec04bf34e3f2a5bd791d2d336">&#9670;&nbsp;</a></span>session</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">SoupSession* session</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00077">77</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a8ebbcba2c07af0938b3c29e316747d12"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ebbcba2c07af0938b3c29e316747d12">&#9670;&nbsp;</a></span>supported_mime_types</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* supported_mime_types[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;x-scheme-handler/rdp&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00082">82</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rmnews_8c.html">rmnews.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rmnews_8c.js b/docs/rmnews_8c.js
new file mode 100644
index 000000000..a8d06802c
--- /dev/null
+++ b/docs/rmnews_8c.js
@@ -0,0 +1,20 @@
+var rmnews_8c =
+[
+ [ "rmnews_close_clicked", "rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00", null ],
+ [ "rmnews_defaultcl_on_click", "rmnews_8c.html#a7825b2c9facea97439f5780d83e86798", null ],
+ [ "rmnews_dialog_deleted", "rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4", null ],
+ [ "rmnews_get_file_contents", "rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9", null ],
+ [ "rmnews_get_news", "rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301", null ],
+ [ "rmnews_get_uid", "rmnews_8c.html#a59416d6e8999802e8b145b0338331081", null ],
+ [ "rmnews_get_url", "rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e", null ],
+ [ "rmnews_get_url_cb", "rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38", null ],
+ [ "rmnews_periodic_check", "rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814", null ],
+ [ "rmnews_schedule", "rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a", null ],
+ [ "rmnews_show_news", "rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe", null ],
+ [ "rmnews_stats_switch_state_set_cb", "rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce", null ],
+ [ "eweekdays", "rmnews_8c.html#af4777302c760225b833206545e9f437d", null ],
+ [ "output_file_path", "rmnews_8c.html#a565782499953048b5e51934123195e29", null ],
+ [ "rmnews_news_dialog", "rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d", null ],
+ [ "session", "rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336", null ],
+ [ "supported_mime_types", "rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12", null ]
+]; \ No newline at end of file
diff --git a/docs/rmnews_8c_source.html b/docs/rmnews_8c_source.html
new file mode 100644
index 000000000..fbad442fa
--- /dev/null
+++ b/docs/rmnews_8c_source.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rmnews.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rmnews_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rmnews.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rmnews_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;config.h&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</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="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 &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</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">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;libsoup/soup.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;fcntl.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;sys/stat.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;time.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</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="l00052"></a><span class="lineno"> 52</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="l00053"></a><span class="lineno"> 53</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="l00054"></a><span class="lineno"> 54</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="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="remmina__utils_8h.html">remmina_utils.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__scheduler_8h.html">remmina_scheduler.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__stats__sender_8h.html">remmina_stats_sender.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__stats_8h.html">remmina_stats.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__sysinfo_8h.html">remmina_sysinfo.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="rmnews_8h.html">rmnews.h</a>&quot;</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#define ARR_SIZE(arr) ( sizeof((arr)) / sizeof((arr[0])) )</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Neas file buffer */</span></div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#define READ_BUFFER_LEN 1024</span></div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Timers */</span></div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#define RMNEWS_CHECK_1ST_MS 3000</span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#define RMNEWS_CHECK_INTERVAL_MS 12000</span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* How many seconds before to get news */</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#define RMNEWS_INTERVAL_SEC 604800</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/* TODO: move in config.h */</span></div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#define REMMINA_URL &quot;https://remmina.org/&quot;</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#define RMNEWS_OUTPUT &quot;/var/tmp/latest_news.md&quot;</span></div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d"> 74</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_news_dialog.html">RemminaNewsDialog</a> *<a class="code" href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d">rmnews_news_dialog</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#define GET_OBJ(object_name) gtk_builder_get_object(rmnews_news_dialog-&gt;builder, object_name)</span></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"><a class="line" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336"> 77</a></span>&#160;<span class="keyword">static</span> SoupSession *<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">//static const gchar *rmnews_url = NULL;</span></div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a565782499953048b5e51934123195e29"> 79</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a> = NULL;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">static</span></div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12"> 82</a></span>&#160;<span class="keyword">const</span> gchar *<a class="code" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[] = {</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/rdp&quot;</span>,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/spice&quot;</span>,</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/vnc&quot;</span>,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="stringliteral">&quot;x-scheme-handler/remmina&quot;</span>,</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="stringliteral">&quot;application/x-remmina&quot;</span>,</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; NULL</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</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"><a class="line" href="rmnews_8c.html#af4777302c760225b833206545e9f437d"> 91</a></span>&#160;gint <a class="code" href="rmnews_8c.html#af4777302c760225b833206545e9f437d">eweekdays</a>[7] = {</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; 86400,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; 172800,</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; 259200,</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; 345600,</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; 432000,</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; 518400,</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; 604800</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;};</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"><a class="line" href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce"> 101</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce">rmnews_stats_switch_state_set_cb</a>()</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">if</span> (gtk_switch_get_active(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">rmnews_stats_switch</a>)) {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> = TRUE;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>()) {</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a>();</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="keywordflow">else</span> {</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> = FALSE;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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;</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;</div><div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798"> 116</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798">rmnews_defaultcl_on_click</a>()</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;{</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; g_autoptr(GError) error = NULL;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; GDesktopAppInfo *desktop_info;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; GAppInfo *info = NULL;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</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="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">int</span> i;</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; desktop_info = g_desktop_app_info_new (<span class="keywordtype">id</span>);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">if</span> (!desktop_info)</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; info = G_APP_INFO (desktop_info);</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">for</span> (i = 0; <a class="code" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]; i++) {</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">if</span> (!g_app_info_set_as_default_for_type (info, <a class="code" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], &amp;error))</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</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="l00134"></a><span class="lineno"> 134</span>&#160; g_app_info_get_name (info), <a class="code" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i], error-&gt;message);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</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="l00137"></a><span class="lineno"> 137</span>&#160; g_app_info_get_name (info),</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12">supported_mime_types</a>[i]);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</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;</div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9"> 142</a></span>&#160;<span class="keyword">static</span> gchar *<a class="code" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews_get_file_contents</a>(gchar *path)</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;{</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; gsize size;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gchar *content;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (g_file_get_contents(path, &amp;content, &amp;size, NULL)) {</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span> (!g_utf8_validate(content, size, NULL)) {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; g_warning(<span class="stringliteral">&quot;%s content is not UTF-8&quot;</span>, path);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; g_free(content);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; content = NULL;</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; <span class="comment">//return g_markup_escape_text(content, strlen(content));</span></div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> content;</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;</div><div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00"> 158</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews_close_clicked</a>(GtkButton *btn, gpointer user_data)</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;{</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; gtk_widget_destroy(GTK_WIDGET(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a>));</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a> = NULL;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; g_free(rmnews_news_dialog);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; rmnews_news_dialog = NULL;</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;}</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"><a class="line" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4"> 168</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews_dialog_deleted</a>(GtkButton *btn, gpointer user_data)</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; gtk_widget_destroy(GTK_WIDGET(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a>));</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a> = NULL;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; g_free(rmnews_news_dialog);</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; rmnews_news_dialog = NULL;</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; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe"> 179</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews_show_news</a>(GtkWindow *parent)</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; TRACE_CALL(__func__);</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; rmnews_news_dialog = g_new0(<a class="code" href="struct___remmina_news_dialog.html">RemminaNewsDialog</a>, 1);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">retval</a> = 1;</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; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">builder</a> = <a class="code" href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a>(<span class="stringliteral">&quot;remmina_news.glade&quot;</span>);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a> = GTK_DIALOG(gtk_builder_get_object(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">builder</a>, <span class="stringliteral">&quot;RemminaNewsDialog&quot;</span>));</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">rmnews_text_view</a> = GTK_TEXT_VIEW(GET_OBJ(<span class="stringliteral">&quot;rmnews_text_view&quot;</span>));</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">rmnews_label</a> = GTK_LABEL(GET_OBJ(<span class="stringliteral">&quot;rmnews_label&quot;</span>));</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">//rmnews_news_dialog-&gt;rmnews_stats_label = GTK_LABEL(GET_OBJ(&quot;rmnews_stats_label&quot;));</span></div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">rmnews_stats_switch</a> = GTK_SWITCH(GET_OBJ(<span class="stringliteral">&quot;rmnews_stats_switch&quot;</span>));</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</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#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> == TRUE) {</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; gtk_switch_set_active(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">rmnews_stats_switch</a>, TRUE);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">rmnews_defaultcl_label</a> = GTK_LABEL(GET_OBJ(<span class="stringliteral">&quot;rmnews_defaultcl_label&quot;</span>));</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">rmnews_defaultcl_button</a> = GTK_BUTTON(GET_OBJ(<span class="stringliteral">&quot;rmnews_defaultcl_switch&quot;</span>));</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a> = GTK_BUTTON(GET_OBJ(<span class="stringliteral">&quot;rmnews_button_close&quot;</span>));</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_widget_set_can_default(GTK_WIDGET(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a>), TRUE);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; gtk_widget_grab_default(GTK_WIDGET(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a>));</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; gchar *contents = <a class="code" href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews_get_file_contents</a>(g_strdup(<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>));</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keywordflow">if</span> (contents) {</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; gtk_label_set_markup(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">rmnews_label</a>, contents);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; g_free(contents);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</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; g_signal_connect(rmnews_news_dialog-&gt;<a class="code" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a>, <span class="stringliteral">&quot;clicked&quot;</span>,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; G_CALLBACK(<a class="code" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews_close_clicked</a>), (gpointer)rmnews_news_dialog);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; g_signal_connect(rmnews_news_dialog-&gt;dialog, <span class="stringliteral">&quot;close&quot;</span>,</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; G_CALLBACK(<a class="code" href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews_close_clicked</a>), NULL);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; g_signal_connect(rmnews_news_dialog-&gt;dialog, <span class="stringliteral">&quot;delete-event&quot;</span>,</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; G_CALLBACK(<a class="code" href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews_dialog_deleted</a>), NULL);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="comment">/* Connect signals */</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; gtk_builder_connect_signals(rmnews_news_dialog-&gt;builder, NULL);</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; <span class="comment">/* Show the non-modal news dialog */</span></div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; gtk_widget_show_all(GTK_WIDGET(rmnews_news_dialog-&gt;dialog));</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; gtk_window_present(GTK_WINDOW(rmnews_news_dialog-&gt;dialog));</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">if</span> (parent)</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; gtk_window_set_transient_for(GTK_WINDOW(rmnews_news_dialog-&gt;dialog), parent);</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; gtk_window_set_modal (GTK_WINDOW(rmnews_news_dialog-&gt;dialog), TRUE);</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;</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;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38"> 228</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews_get_url_cb</a>(SoupSession *<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SoupMessage *msg, gpointer data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *header;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; SoupBuffer *sb;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; FILE *output_file = NULL;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; gchar *filesha = NULL;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gchar *filesha_after = NULL;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; GTimeVal t;</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; g_info(<span class="stringliteral">&quot;Status code %d&quot;</span>, msg-&gt;status_code);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; name = soup_message_get_uri(msg)-&gt;path;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">if</span> (SOUP_STATUS_IS_CLIENT_ERROR(msg-&gt;status_code)) {</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; g_info(<span class="stringliteral">&quot;Status 404 - Release file not available&quot;</span>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">if</span> (SOUP_STATUS_IS_SERVER_ERROR(msg-&gt;status_code)) {</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; g_info(<span class="stringliteral">&quot;Server not available&quot;</span>);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; }</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; <span class="keywordflow">if</span> (SOUP_STATUS_IS_TRANSPORT_ERROR(msg-&gt;status_code)) {</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; g_info(<span class="stringliteral">&quot;Transport Error&quot;</span>);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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; <span class="keywordflow">if</span> (msg-&gt;status_code == SOUP_STATUS_SSL_FAILED) {</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; GTlsCertificateFlags flags;</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="keywordflow">if</span> (soup_message_get_https_status(msg, NULL, &amp;flags))</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; g_warning(<span class="stringliteral">&quot;%s: %d %s (0x%x)\n&quot;</span>, name, msg-&gt;status_code, msg-&gt;reason_phrase, flags);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; g_warning(<span class="stringliteral">&quot;%s: %d %s (no handshake status)\n&quot;</span>, name, msg-&gt;status_code, msg-&gt;reason_phrase);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SOUP_STATUS_IS_TRANSPORT_ERROR(msg-&gt;status_code)) {</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; g_warning(<span class="stringliteral">&quot;%s: %d %s\n&quot;</span>, name, msg-&gt;status_code, msg-&gt;reason_phrase);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; }</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="keywordflow">if</span> (SOUP_STATUS_IS_REDIRECTION(msg-&gt;status_code)) {</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; header = soup_message_headers_get_one(msg-&gt;response_headers,</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="stringliteral">&quot;Location&quot;</span>);</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; g_warning(<span class="stringliteral">&quot;Redirection detected&quot;</span>);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordflow">if</span> (header) {</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; SoupURI *uri;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordtype">char</span> *uri_string;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; g_info(<span class="stringliteral">&quot; -&gt; %s\n&quot;</span>, header);</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; uri = soup_uri_new_with_base(soup_message_get_uri(msg), header);</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; uri_string = soup_uri_to_string(uri, FALSE);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a>(uri_string);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; g_free(uri_string);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; soup_uri_free(uri);</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; g_get_current_time(&amp;t);</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (SOUP_STATUS_IS_SUCCESSFUL(msg-&gt;status_code)) {</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; g_info(<span class="stringliteral">&quot;Status 200&quot;</span>);</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>) {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; g_info(<span class="stringliteral">&quot;Calculating the SHA1 of the local file&quot;</span>);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; filesha = <a class="code" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a>(<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; g_info(<span class="stringliteral">&quot;SHA1 is %s&quot;</span>, filesha);</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <span class="keywordflow">if</span> (filesha == NULL || filesha[0] == 0)</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; filesha = <span class="stringliteral">&quot;0\0&quot;</span>;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; g_info(<span class="stringliteral">&quot;Opening %s output file for writing&quot;</span>, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; output_file = fopen(<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>, <span class="stringliteral">&quot;w&quot;</span>);</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">if</span> (!output_file) {</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; g_printerr(<span class="stringliteral">&quot;Error trying to create file %s.\n&quot;</span>, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordflow">return</span>;</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="keywordflow">else</span> {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; g_warning(<span class="stringliteral">&quot;Cannot open output file for writing, because output_file_path is NULL&quot;</span>);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; }</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; sb = soup_message_body_flatten (msg-&gt;response_body);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (output_file) {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; fwrite(sb-&gt;data, 1, sb-&gt;length, output_file);</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>) {</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; fclose(output_file);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; filesha_after = <a class="code" href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a>(<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</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; g_info(<span class="stringliteral">&quot;SHA1 after download is %s&quot;</span>, filesha_after);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(filesha, filesha_after) != 0) {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; g_info(<span class="stringliteral">&quot;SHA1 differs, we show the news and reset the counter&quot;</span>);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = 0;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; GtkWindow *parent = <a class="code" href="remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e">remmina_main_get_window</a>();</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</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="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews_show_news</a>(parent);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; }</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="comment">/* Increase counter with number of successful GETs */</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> + 1;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</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; g_object_unref(msg);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;}</div><div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081"> 360</a></span>&#160;gchar *<a class="code" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews_get_uid</a>()</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;{</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; GChecksum *chs;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">const</span> gchar *uname, *hname;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keyword">const</span> gchar *uid_suffix;</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; gchar *uid_prefix;</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; gchar *uid;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="comment">/* This code is very similar to remmina_stats_get_uid() */</span></div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</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#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> == NULL || <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a>[0] == 0) {</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="comment">/* Generate a new UUID_PREFIX for news on this installation */</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; uid_prefix = <a class="code" href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a>();</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</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#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a>)</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; g_free(<a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a>);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a> = uid_prefix;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <a class="code" href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a>();</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"> 380</span>&#160; uname = g_get_user_name();</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; hname = g_get_host_name();</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; chs = g_checksum_new(G_CHECKSUM_SHA256);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; g_checksum_update(chs, (<span class="keyword">const</span> guchar*)uname, strlen(uname));</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; g_checksum_update(chs, (<span class="keyword">const</span> guchar*)hname, strlen(hname));</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; uid_suffix = g_checksum_get_string(chs);</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; uid = g_strdup_printf(<span class="stringliteral">&quot;02-%s-%.10s&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a>, uid_suffix);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; g_checksum_free(chs);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordflow">return</span> uid;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;}</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e"> 394</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *url)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; SoupMessage *msg;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; msg = soup_message_new(<span class="stringliteral">&quot;GET&quot;</span>, url);</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; soup_message_set_flags(msg, SOUP_MESSAGE_NO_REDIRECT);</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; g_debug(<span class="stringliteral">&quot;Fetching %s&quot;</span>, url);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; g_object_ref(msg);</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; soup_session_queue_message(<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, msg, <a class="code" href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews_get_url_cb</a>, NULL);</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;}</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"><a class="line" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301"> 409</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews_get_news</a>()</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;{</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; SoupLogger *logger = NULL;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordtype">int</span> fd;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; gchar *uid;</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; gchar mage[20], gcount[20];</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; gboolean sa;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keyword">struct </span>stat sb;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; gchar *<a class="code" href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, g_get_user_cache_dir(), REMMINA_APP_ID, NULL);</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; gint d = g_mkdir_with_parents(cachedir, 0750);</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">if</span> (d &lt; 0)</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a> = RMNEWS_OUTPUT;</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; <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a> = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, cachedir, <span class="stringliteral">&quot;latest_news.md&quot;</span>, NULL);</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; g_info(<span class="stringliteral">&quot;Output file set to %s&quot;</span>, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</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#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> == 0 &amp;&amp;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a> == 0) {</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; g_file_set_contents (<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>, <span class="stringliteral">&quot;&quot;</span>, 0, NULL);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="comment">/* Just a symolic date */</span></div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = 191469343000;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; }</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; fd = g_open (<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>, O_RDWR|O_CREAT, S_IRUSR|S_IWUSR);</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; g_debug (<span class="stringliteral">&quot;Returned %d while creating %s&quot;</span>, fd, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="comment">/* If we cannot create the remmina_news file, we avoid connections */</span></div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordflow">if</span> (fd &lt; 0) {</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; g_debug (<span class="stringliteral">&quot;Cannot store the remmina news file&quot;</span>);</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">return</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; g_close(fd, NULL);</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; g_info(<span class="stringliteral">&quot;Output file %s created successfully&quot;</span>, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>) {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; g_warning(<span class="stringliteral">&quot;Output file set to %s&quot;</span>, <a class="code" href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a>);</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;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; g_info(<span class="stringliteral">&quot;Gathering news&quot;</span>);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a> = g_object_new(SOUP_TYPE_SESSION,</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_CONTENT_DECODER,</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; SOUP_SESSION_ADD_FEATURE_BY_TYPE, SOUP_TYPE_COOKIE_JAR,</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; SOUP_SESSION_USER_AGENT, <span class="stringliteral">&quot;get &quot;</span>,</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; SOUP_SESSION_ACCEPT_LANGUAGE_AUTO, TRUE,</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; NULL);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="comment">/* TODO: Catch log level and set SOUP_LOGGER_LOG_MINIMAL or more */</span></div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; logger = soup_logger_new(SOUP_LOGGER_LOG_NONE, -1);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; soup_session_add_feature(<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SOUP_SESSION_FEATURE(logger));</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; g_object_unref(logger);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; gchar *lang = <a class="code" href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a>();</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; g_debug(<span class="stringliteral">&quot;Language %s&quot;</span>, lang);</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; uid = <a class="code" href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews_get_uid</a>();</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; sa = FALSE;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</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#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a> &amp;&amp;</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a> != NULL &amp;&amp;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a>[0] != 0) {</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; sa = TRUE;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; }</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keywordflow">if</span> (stat(<span class="stringliteral">&quot;/etc/machine-id&quot;</span>, &amp;sb) == 0)</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; sprintf(mage, <span class="stringliteral">&quot;%ld&quot;</span>, (<span class="keywordtype">long</span>)(time(NULL) - sb.st_mtim.tv_sec));</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; strcpy(mage, <span class="stringliteral">&quot;0&quot;</span>);</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; sprintf(gcount, <span class="stringliteral">&quot;%ld&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a>);</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"> 483</span>&#160; <a class="code" href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a>(g_strconcat(REMMINA_URL,</div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="stringliteral">&quot;news/remmina_news.php?lang=&quot;</span>,</div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; lang,</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="stringliteral">&quot;&amp;ver=&quot;</span></div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; VERSION,</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="stringliteral">&quot;&amp;uid=&quot;</span>,</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; uid,</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="stringliteral">&quot;&amp;sa=&quot;</span>,</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; sa ? <span class="stringliteral">&quot;1&quot;</span> : <span class="stringliteral">&quot;0&quot;</span>,</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="stringliteral">&quot;&amp;mage=&quot;</span>,</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; mage,</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="stringliteral">&quot;&amp;gcount=&quot;</span>,</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; gcount,</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; NULL));</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; g_free(uid);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; g_object_unref(<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>);</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;}</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno"><a class="line" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814"> 502</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews_periodic_check</a>(gpointer user_data)</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;{</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; GTimeVal t;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; glong next = 0;</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; srand(time(NULL));</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="comment">/* if remmina_pref is not writable ... */</span></div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a>() == FALSE &amp;&amp; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> == 0) {</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; gint randidx = rand() % 7;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; <span class="comment">/* We randmoly set periodic_rmnews_last_get to a a day between today</span></div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;<span class="comment"> * and 7 days ago */</span></div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; g_debug (<span class="stringliteral">&quot;Setting a random periodic_rmnews_last_get&quot;</span>);</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> = t.tv_sec - <a class="code" href="rmnews_8c.html#af4777302c760225b833206545e9f437d">eweekdays</a>[randidx];</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; }</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; g_debug (<span class="stringliteral">&quot;periodic_rmnews_last_get is %ld&quot;</span>, <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a>);</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; next = <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> + RMNEWS_INTERVAL_SEC;</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">if</span> (t.tv_sec &gt; next || (t.tv_sec &lt; <a class="code" href="rcw_8c.html#a29701ae152ba15f6d8921f395174d2df">remmina_pref</a>.<a class="code" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a> &amp;&amp; t.tv_sec &gt; 1514764800))</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews_get_news</a>();</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <span class="keywordflow">return</span> G_SOURCE_CONTINUE;</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;</div><div class="line"><a name="l00528"></a><span class="lineno"><a class="line" href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888"> 528</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews_schedule</a>()</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <a class="code" href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a>(<a class="code" href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews_periodic_check</a>,</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; NULL,</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; RMNEWS_CHECK_1ST_MS,</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; RMNEWS_CHECK_INTERVAL_MS);</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;}</div><div class="ttc" id="struct___remmina_news_dialog_html_aa44d2c89a170a509ebb082082efac813"><div class="ttname"><a href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">_RemminaNewsDialog::retval</a></div><div class="ttdeci">gint retval</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00047">rmnews.h:47</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#l01361">remmina_main.c:1361</a></div></div>
+<div class="ttc" id="rmnews_8c_html_af58ee02676e8c920a6e9b4676bb86abe"><div class="ttname"><a href="rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe">rmnews_show_news</a></div><div class="ttdeci">void rmnews_show_news(GtkWindow *parent)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00179">rmnews.c:179</a></div></div>
+<div class="ttc" id="rmnews_8c_html_aaa3ec81813c3b38be1f75885e6005a00"><div class="ttname"><a href="rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00">rmnews_close_clicked</a></div><div class="ttdeci">static void rmnews_close_clicked(GtkButton *btn, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00158">rmnews.c:158</a></div></div>
+<div class="ttc" id="remmina_8h_html"><div class="ttname"><a href="remmina_8h.html">remmina.h</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a041c5c6f7776a3cdfd1fbcc700dfc749"><div class="ttname"><a href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">_RemminaNewsDialog::rmnews_defaultcl_label</a></div><div class="ttdeci">GtkLabel * rmnews_defaultcl_label</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00044">rmnews.h:44</a></div></div>
+<div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="remmina__public_8c_html_a3031598a6e4f67d1519d8e5afba7da41"><div class="ttname"><a href="remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41">remmina_public_gtk_builder_new_from_file</a></div><div class="ttdeci">GtkBuilder * remmina_public_gtk_builder_new_from_file(gchar *filename)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__public_8c_source.html#l00576">remmina_public.c:576</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a24dd17da12072e324ce165a9873d59ad"><div class="ttname"><a href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">_RemminaNewsDialog::rmnews_button_close</a></div><div class="ttdeci">GtkButton * rmnews_button_close</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00041">rmnews.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a652393d5775f6abb7a3b97e1d250797f"><div class="ttname"><a href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">_RemminaNewsDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00037">rmnews.h:37</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a8ebbcba2c07af0938b3c29e316747d12"><div class="ttname"><a href="rmnews_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="rmnews_8c_source.html#l00082">rmnews.c:82</a></div></div>
+<div class="ttc" id="rmnews_8c_html_adf38ed099d3ac477aea7e3bbd6d95bd4"><div class="ttname"><a href="rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4">rmnews_dialog_deleted</a></div><div class="ttdeci">static gboolean rmnews_dialog_deleted(GtkButton *btn, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00168">rmnews.c:168</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="remmina__scheduler_8c_html_a8ee49eb86004b98070d1514c2612251a"><div class="ttname"><a href="remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a">remmina_scheduler_setup</a></div><div class="ttdeci">void * remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__scheduler_8c_source.html#l00064">remmina_scheduler.c:64</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a94584de47018f068c242e5f527e3b84f"><div class="ttname"><a href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">_RemminaNewsDialog::rmnews_text_view</a></div><div class="ttdeci">GtkTextView * rmnews_text_view</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00039">rmnews.h:39</a></div></div>
+<div class="ttc" id="remmina__utils_8h_html"><div class="ttname"><a href="remmina__utils_8h.html">remmina_utils.h</a></div><div class="ttdoc">General utility functions, non-GTK related. </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="rmnews_8c_html_a3dea59fd6d970a1cabeaf47543d871ce"><div class="ttname"><a href="rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce">rmnews_stats_switch_state_set_cb</a></div><div class="ttdeci">void rmnews_stats_switch_state_set_cb()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00101">rmnews.c:101</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a483959ec642cece17e1b79506e71b00e"><div class="ttname"><a href="remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e">remmina_gen_random_uuid</a></div><div class="ttdeci">gchar * remmina_gen_random_uuid()</div><div class="ttdoc">Generate a random sting of chars to be used as part of UID for news or stats. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00510">remmina_utils.c:510</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a175c6dbec04bf34e3f2a5bd791d2d336"><div class="ttname"><a href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></div><div class="ttdeci">static SoupSession * session</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00077">rmnews.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_affa1d02e2b0d9f6fc7b006fd74a52ad7"><div class="ttname"><a href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">_RemminaPref::periodic_usage_stats_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_usage_stats_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00202">remmina_pref.h:202</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_a0f10e190a6dd212fcb0cf36ce81c8324"><div class="ttname"><a href="remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324">remmina_utils_get_lang</a></div><div class="ttdeci">gchar * remmina_utils_get_lang()</div><div class="ttdoc">Return the current language defined in the LC_ALL. </div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00288">remmina_utils.c:288</a></div></div>
+<div class="ttc" id="remmina__scheduler_8h_html"><div class="ttname"><a href="remmina__scheduler_8h.html">remmina_scheduler.h</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a87044f758cc0e9c975b02c3f94147e06"><div class="ttname"><a href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">_RemminaPref::periodic_rmnews_uuid_prefix</a></div><div class="ttdeci">gchar * periodic_rmnews_uuid_prefix</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00208">remmina_pref.h:208</a></div></div>
+<div class="ttc" id="remmina__utils_8c_html_aff7d3597f23cae366973218cc01a2ae8"><div class="ttname"><a href="remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8">remmina_sha1_file</a></div><div class="ttdeci">gchar * remmina_sha1_file(const gchar *filename)</div><div class="ttdoc">Create a hexadecimal string version of the SHA-1 digest of the contents of the named file...</div><div class="ttdef"><b>Definition:</b> <a href="remmina__utils_8c_source.html#l00466">remmina_utils.c:466</a></div></div>
+<div class="ttc" id="rmnews_8c_html_af4777302c760225b833206545e9f437d"><div class="ttname"><a href="rmnews_8c.html#af4777302c760225b833206545e9f437d">eweekdays</a></div><div class="ttdeci">gint eweekdays[7]</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00091">rmnews.c:91</a></div></div>
+<div class="ttc" id="rmnews_8h_html"><div class="ttname"><a href="rmnews_8h.html">rmnews.h</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a565782499953048b5e51934123195e29"><div class="ttname"><a href="rmnews_8c.html#a565782499953048b5e51934123195e29">output_file_path</a></div><div class="ttdeci">static const gchar * output_file_path</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00079">rmnews.c:79</a></div></div>
+<div class="ttc" id="rmnews_8c_html_ae1bb737d0381441eebbf3652b3ef416d"><div class="ttname"><a href="rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d">rmnews_news_dialog</a></div><div class="ttdeci">static RemminaNewsDialog * rmnews_news_dialog</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00074">rmnews.c:74</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a1b13dc96ccf8ebad045f02c58eb1d005"><div class="ttname"><a href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">_RemminaPref::periodic_rmnews_get_count</a></div><div class="ttdeci">glong periodic_rmnews_get_count</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00207">remmina_pref.h:207</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a68e9f8a20af9ff18a4446005042c35f7"><div class="ttname"><a href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">_RemminaNewsDialog::rmnews_stats_switch</a></div><div class="ttdeci">GtkSwitch * rmnews_stats_switch</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00043">rmnews.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a5127551ff44a7a2d7b660fbdbd00afe3"><div class="ttname"><a href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">_RemminaPref::periodic_usage_stats_permitted</a></div><div class="ttdeci">gboolean periodic_usage_stats_permitted</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00200">remmina_pref.h:200</a></div></div>
+<div class="ttc" id="rmnews_8c_html_aa360ccd2808c76aab98c1fc4bc336c38"><div class="ttname"><a href="rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38">rmnews_get_url_cb</a></div><div class="ttdeci">static void rmnews_get_url_cb(SoupSession *session, SoupMessage *msg, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00228">rmnews.c:228</a></div></div>
+<div class="ttc" id="remmina__file__manager_8c_html_ace1098aad45256ac0b0155cb042472e9"><div class="ttname"><a href="remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9">cachedir</a></div><div class="ttdeci">static gchar * cachedir</div><div class="ttdef"><b>Definition:</b> <a href="remmina__file__manager_8c_source.html#l00050">remmina_file_manager.c:50</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_ae4b71b4e789e65063db67f51ce4feb26"><div class="ttname"><a href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">_RemminaNewsDialog::rmnews_label</a></div><div class="ttdeci">GtkLabel * rmnews_label</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00040">rmnews.h:40</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a88b2d9ce9e7bc64373e2eb7f904a0814"><div class="ttname"><a href="rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814">rmnews_periodic_check</a></div><div class="ttdeci">static gboolean rmnews_periodic_check(gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00502">rmnews.c:502</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a8433da15acb3138804b4816189e8fc3a"><div class="ttname"><a href="rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a">rmnews_schedule</a></div><div class="ttdeci">void rmnews_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00528">rmnews.c:528</a></div></div>
+<div class="ttc" id="remmina__stats_8h_html"><div class="ttname"><a href="remmina__stats_8h.html">remmina_stats.h</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#l00073">rcw.c:73</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8c_html_a03db556341f727fb2fe482cae80351a9"><div class="ttname"><a href="remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9">remmina_stats_sender_schedule</a></div><div class="ttdeci">void remmina_stats_sender_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="remmina__stats__sender_8c_source.html#l00323">remmina_stats_sender.c:323</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a04d61af97919ea321ca384711edd2015"><div class="ttname"><a href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">_RemminaNewsDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00036">rmnews.h:36</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__pref_8c_html_ae17aaf37449083a4322b6748c8f3a39f"><div class="ttname"><a href="remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f">remmina_pref_save</a></div><div class="ttdeci">gboolean remmina_pref_save(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00707">remmina_pref.c:707</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a11d7277ba911522ac40656774cbe41b9"><div class="ttname"><a href="rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9">rmnews_get_file_contents</a></div><div class="ttdeci">static gchar * rmnews_get_file_contents(gchar *path)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00142">rmnews.c:142</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a341ebc424e040f8f8a2e5e46b1920c7e"><div class="ttname"><a href="rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a></div><div class="ttdeci">void rmnews_get_url(const char *url)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00394">rmnews.c:394</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html"><div class="ttname"><a href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00035">rmnews.h:35</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a59416d6e8999802e8b145b0338331081"><div class="ttname"><a href="rmnews_8c.html#a59416d6e8999802e8b145b0338331081">rmnews_get_uid</a></div><div class="ttdeci">gchar * rmnews_get_uid()</div><div class="ttdoc">Try to get a unique system+user ID to identify this remmina user and avoid some duplicated task...</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00360">rmnews.c:360</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#l00079">remmina.c:79</a></div></div>
+<div class="ttc" id="remmina__stats__sender_8h_html"><div class="ttname"><a href="remmina__stats__sender_8h.html">remmina_stats_sender.h</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a7825b2c9facea97439f5780d83e86798"><div class="ttname"><a href="rmnews_8c.html#a7825b2c9facea97439f5780d83e86798">rmnews_defaultcl_on_click</a></div><div class="ttdeci">void rmnews_defaultcl_on_click()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00116">rmnews.c:116</a></div></div>
+<div class="ttc" id="remmina__pref_8c_html_a0dd25f5b3a055b936a5fa327bc71f19c"><div class="ttname"><a href="remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c">remmina_pref_is_rw</a></div><div class="ttdeci">gboolean remmina_pref_is_rw(void)</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8c_source.html#l00697">remmina_pref.c:697</a></div></div>
+<div class="ttc" id="struct___remmina_pref_html_a58fce08bda1efaeefd8b65f6463f67c6"><div class="ttname"><a href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">_RemminaPref::periodic_rmnews_last_get</a></div><div class="ttdeci">glong periodic_rmnews_last_get</div><div class="ttdef"><b>Definition:</b> <a href="remmina__pref_8h_source.html#l00206">remmina_pref.h:206</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a5f1f924669db7285fac6087e08d6ce19"><div class="ttname"><a href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">_RemminaNewsDialog::rmnews_defaultcl_button</a></div><div class="ttdeci">GtkButton * rmnews_defaultcl_button</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00045">rmnews.h:45</a></div></div>
+<div class="ttc" id="remmina__sysinfo_8h_html"><div class="ttname"><a href="remmina__sysinfo_8h.html">remmina_sysinfo.h</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a26cb497eeb30a956dcdc5790b393a301"><div class="ttname"><a href="rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301">rmnews_get_news</a></div><div class="ttdeci">void rmnews_get_news()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00409">rmnews.c:409</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rmnews_8c.html">rmnews.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rmnews_8h.html b/docs/rmnews_8h.html
new file mode 100644
index 000000000..3e63e3b57
--- /dev/null
+++ b/docs/rmnews_8h.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rmnews.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rmnews_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">rmnews.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rmnews_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a408794dbcf4d1034bab0bd0e64fa4709"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a></td></tr>
+<tr class="separator:a408794dbcf4d1034bab0bd0e64fa4709"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ace3fdfea434b950bc89b72b8ebd6c888"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888">rmnews_schedule</a> ()</td></tr>
+<tr class="separator:ace3fdfea434b950bc89b72b8ebd6c888"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a356f4b0242f21bcbefb2ace3a15873af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af">rmnews_show_news</a> ()</td></tr>
+<tr class="separator:a356f4b0242f21bcbefb2ace3a15873af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341ebc424e040f8f8a2e5e46b1920c7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a> (const char *url)</td></tr>
+<tr class="separator:a341ebc424e040f8f8a2e5e46b1920c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a408794dbcf4d1034bab0bd0e64fa4709"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a408794dbcf4d1034bab0bd0e64fa4709">&#9670;&nbsp;</a></span>RemminaNewsDialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a> <a class="el" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a341ebc424e040f8f8a2e5e46b1920c7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a341ebc424e040f8f8a2e5e46b1920c7e">&#9670;&nbsp;</a></span>rmnews_get_url()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_get_url </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>url</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00394">394</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="ace3fdfea434b950bc89b72b8ebd6c888"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace3fdfea434b950bc89b72b8ebd6c888">&#9670;&nbsp;</a></span>rmnews_schedule()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void rmnews_schedule </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8c_source.html#l00528">528</a> of file <a class="el" href="rmnews_8c_source.html">rmnews.c</a>.</p>
+
+</div>
+</div>
+<a id="a356f4b0242f21bcbefb2ace3a15873af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a356f4b0242f21bcbefb2ace3a15873af">&#9670;&nbsp;</a></span>rmnews_show_news()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void rmnews_show_news </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rmnews_8h.html">rmnews.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/rmnews_8h.js b/docs/rmnews_8h.js
new file mode 100644
index 000000000..500dd4e27
--- /dev/null
+++ b/docs/rmnews_8h.js
@@ -0,0 +1,8 @@
+var rmnews_8h =
+[
+ [ "_RemminaNewsDialog", "struct___remmina_news_dialog.html", "struct___remmina_news_dialog" ],
+ [ "RemminaNewsDialog", "rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709", null ],
+ [ "rmnews_get_url", "rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e", null ],
+ [ "rmnews_schedule", "rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888", null ],
+ [ "rmnews_show_news", "rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af", null ]
+]; \ No newline at end of file
diff --git a/docs/rmnews_8h_source.html b/docs/rmnews_8h_source.html
new file mode 100644
index 000000000..bb4a7d728
--- /dev/null
+++ b/docs/rmnews_8h_source.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rmnews.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('rmnews_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">rmnews.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rmnews_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html"> 35</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a> {</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015"> 36</a></span>&#160; GtkBuilder * <a class="code" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">builder</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f"> 37</a></span>&#160; GtkDialog * <a class="code" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f"> 39</a></span>&#160; GtkTextView * <a class="code" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">rmnews_text_view</a>;</div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26"> 40</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">rmnews_label</a>;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad"> 41</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="comment">//GtkLabel * rmnews_stats_label;</span></div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7"> 43</a></span>&#160; GtkSwitch * <a class="code" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">rmnews_stats_switch</a>;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749"> 44</a></span>&#160; GtkLabel * <a class="code" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">rmnews_defaultcl_label</a>;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19"> 45</a></span>&#160; GtkButton * <a class="code" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">rmnews_defaultcl_button</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813"> 47</a></span>&#160; gint <a class="code" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">retval</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;} <a class="code" href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888">rmnews_schedule</a>();</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af">rmnews_show_news</a>();</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *url);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;G_END_DECLS</div><div class="ttc" id="struct___remmina_news_dialog_html_aa44d2c89a170a509ebb082082efac813"><div class="ttname"><a href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">_RemminaNewsDialog::retval</a></div><div class="ttdeci">gint retval</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00047">rmnews.h:47</a></div></div>
+<div class="ttc" id="rmnews_8h_html_a356f4b0242f21bcbefb2ace3a15873af"><div class="ttname"><a href="rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af">rmnews_show_news</a></div><div class="ttdeci">void rmnews_show_news()</div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a041c5c6f7776a3cdfd1fbcc700dfc749"><div class="ttname"><a href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">_RemminaNewsDialog::rmnews_defaultcl_label</a></div><div class="ttdeci">GtkLabel * rmnews_defaultcl_label</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00044">rmnews.h:44</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a24dd17da12072e324ce165a9873d59ad"><div class="ttname"><a href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">_RemminaNewsDialog::rmnews_button_close</a></div><div class="ttdeci">GtkButton * rmnews_button_close</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00041">rmnews.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a652393d5775f6abb7a3b97e1d250797f"><div class="ttname"><a href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">_RemminaNewsDialog::dialog</a></div><div class="ttdeci">GtkDialog * dialog</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00037">rmnews.h:37</a></div></div>
+<div class="ttc" id="rmnews_8h_html_ace3fdfea434b950bc89b72b8ebd6c888"><div class="ttname"><a href="rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888">rmnews_schedule</a></div><div class="ttdeci">G_BEGIN_DECLS void rmnews_schedule()</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00528">rmnews.c:528</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a94584de47018f068c242e5f527e3b84f"><div class="ttname"><a href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">_RemminaNewsDialog::rmnews_text_view</a></div><div class="ttdeci">GtkTextView * rmnews_text_view</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00039">rmnews.h:39</a></div></div>
+<div class="ttc" id="rmnews_8h_html_a341ebc424e040f8f8a2e5e46b1920c7e"><div class="ttname"><a href="rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e">rmnews_get_url</a></div><div class="ttdeci">void rmnews_get_url(const char *url)</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00394">rmnews.c:394</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a68e9f8a20af9ff18a4446005042c35f7"><div class="ttname"><a href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">_RemminaNewsDialog::rmnews_stats_switch</a></div><div class="ttdeci">GtkSwitch * rmnews_stats_switch</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00043">rmnews.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_ae4b71b4e789e65063db67f51ce4feb26"><div class="ttname"><a href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">_RemminaNewsDialog::rmnews_label</a></div><div class="ttdeci">GtkLabel * rmnews_label</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00040">rmnews.h:40</a></div></div>
+<div class="ttc" id="rmnews_8h_html_a408794dbcf4d1034bab0bd0e64fa4709"><div class="ttname"><a href="rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709">RemminaNewsDialog</a></div><div class="ttdeci">struct _RemminaNewsDialog RemminaNewsDialog</div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a04d61af97919ea321ca384711edd2015"><div class="ttname"><a href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">_RemminaNewsDialog::builder</a></div><div class="ttdeci">GtkBuilder * builder</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00036">rmnews.h:36</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html"><div class="ttname"><a href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a></div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00035">rmnews.h:35</a></div></div>
+<div class="ttc" id="struct___remmina_news_dialog_html_a5f1f924669db7285fac6087e08d6ce19"><div class="ttname"><a href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">_RemminaNewsDialog::rmnews_defaultcl_button</a></div><div class="ttdeci">GtkButton * rmnews_defaultcl_button</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8h_source.html#l00045">rmnews.h:45</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="rmnews_8h.html">rmnews.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_0.html b/docs/search/all_0.html
new file mode 100644
index 000000000..f25360b71
--- /dev/null
+++ b/docs/search/all_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_0.js b/docs/search/all_0.js
new file mode 100644
index 000000000..1a0bb03cd
--- /dev/null
+++ b/docs/search/all_0.js
@@ -0,0 +1,83 @@
+var searchData=
+[
+ ['_5fgpg_5ferror_5fto_5ferrno',['_gpg_error_to_errno',['../remmina_8c.html#a1ecec6e37469e2e927a612747269587c',1,'remmina.c']]],
+ ['_5fremminaappletmenu',['_RemminaAppletMenu',['../struct___remmina_applet_menu.html',1,'']]],
+ ['_5fremminaappletmenuclass',['_RemminaAppletMenuClass',['../struct___remmina_applet_menu_class.html',1,'']]],
+ ['_5fremminaappletmenuitem',['_RemminaAppletMenuItem',['../struct___remmina_applet_menu_item.html',1,'']]],
+ ['_5fremminaappletmenuitemclass',['_RemminaAppletMenuItemClass',['../struct___remmina_applet_menu_item_class.html',1,'']]],
+ ['_5fremminaavahi',['_RemminaAvahi',['../struct___remmina_avahi.html',1,'']]],
+ ['_5fremminaavahipriv',['_RemminaAvahiPriv',['../struct___remmina_avahi_priv.html',1,'']]],
+ ['_5fremminacellrendererpixbuf',['_RemminaCellRendererPixbuf',['../struct___remmina_cell_renderer_pixbuf.html',1,'']]],
+ ['_5fremminacellrendererpixbufclass',['_RemminaCellRendererPixbufClass',['../struct___remmina_cell_renderer_pixbuf_class.html',1,'']]],
+ ['_5fremminachatwindow',['_RemminaChatWindow',['../struct___remmina_chat_window.html',1,'']]],
+ ['_5fremminachatwindowclass',['_RemminaChatWindowClass',['../struct___remmina_chat_window_class.html',1,'']]],
+ ['_5fremminacolorpref',['_RemminaColorPref',['../struct___remmina_color_pref.html',1,'']]],
+ ['_5fremminaconnectionobject',['_RemminaConnectionObject',['../struct___remmina_connection_object.html',1,'']]],
+ ['_5fremminaconnectionwindow',['_RemminaConnectionWindow',['../struct___remmina_connection_window.html',1,'']]],
+ ['_5fremminaconnectionwindowclass',['_RemminaConnectionWindowClass',['../struct___remmina_connection_window_class.html',1,'']]],
+ ['_5fremminaentryplugin',['_RemminaEntryPlugin',['../struct___remmina_entry_plugin.html',1,'']]],
+ ['_5fremminafile',['_RemminaFile',['../struct___remmina_file.html',1,'']]],
+ ['_5fremminafileeditor',['_RemminaFileEditor',['../struct___remmina_file_editor.html',1,'']]],
+ ['_5fremminafileeditorclass',['_RemminaFileEditorClass',['../struct___remmina_file_editor_class.html',1,'']]],
+ ['_5fremminafileplugin',['_RemminaFilePlugin',['../struct___remmina_file_plugin.html',1,'']]],
+ ['_5fremminaftpclient',['_RemminaFTPClient',['../struct___remmina_f_t_p_client.html',1,'']]],
+ ['_5fremminaftpclientclass',['_RemminaFTPClientClass',['../struct___remmina_f_t_p_client_class.html',1,'']]],
+ ['_5fremminaftptask',['_RemminaFTPTask',['../struct___remmina_f_t_p_task.html',1,'']]],
+ ['_5fremminagroupdata',['_RemminaGroupData',['../struct___remmina_group_data.html',1,'']]],
+ ['_5fremminaicon',['_RemminaIcon',['../struct___remmina_icon.html',1,'']]],
+ ['_5fremminakeychooserarguments',['_RemminaKeyChooserArguments',['../struct___remmina_key_chooser_arguments.html',1,'']]],
+ ['_5fremminakeyval',['_RemminaKeyVal',['../struct___remmina_key_val.html',1,'']]],
+ ['_5fremminalogwindow',['_RemminaLogWindow',['../struct___remmina_log_window.html',1,'']]],
+ ['_5fremminalogwindowclass',['_RemminaLogWindowClass',['../struct___remmina_log_window_class.html',1,'']]],
+ ['_5fremminamain',['_RemminaMain',['../struct___remmina_main.html',1,'']]],
+ ['_5fremminamainpriv',['_RemminaMainPriv',['../struct___remmina_main_priv.html',1,'']]],
+ ['_5fremminanewsdialog',['_RemminaNewsDialog',['../struct___remmina_news_dialog.html',1,'']]],
+ ['_5fremminanxsession',['_RemminaNXSession',['../struct___remmina_n_x_session.html',1,'']]],
+ ['_5fremminaplugin',['_RemminaPlugin',['../struct___remmina_plugin.html',1,'']]],
+ ['_5fremminaplugindata',['_RemminaPluginData',['../struct___remmina_plugin_data.html',1,'']]],
+ ['_5fremminapluginexecdata',['_RemminaPluginExecData',['../struct___remmina_plugin_exec_data.html',1,'']]],
+ ['_5fremminapluginnxdata',['_RemminaPluginNxData',['../struct___remmina_plugin_nx_data.html',1,'']]],
+ ['_5fremminapluginrdpsetgrid',['_RemminaPluginRdpsetGrid',['../struct___remmina_plugin_rdpset_grid.html',1,'']]],
+ ['_5fremminapluginrdpsetgridclass',['_RemminaPluginRdpsetGridClass',['../struct___remmina_plugin_rdpset_grid_class.html',1,'']]],
+ ['_5fremminapluginscreenshotdata',['_RemminaPluginScreenshotData',['../struct___remmina_plugin_screenshot_data.html',1,'']]],
+ ['_5fremminapluginservice',['_RemminaPluginService',['../struct___remmina_plugin_service.html',1,'']]],
+ ['_5fremminapluginsftpdata',['_RemminaPluginSftpData',['../struct___remmina_plugin_sftp_data.html',1,'']]],
+ ['_5fremminapluginspicedata',['_RemminaPluginSpiceData',['../struct___remmina_plugin_spice_data.html',1,'']]],
+ ['_5fremminapluginspicexferwidgets',['_RemminaPluginSpiceXferWidgets',['../struct___remmina_plugin_spice_xfer_widgets.html',1,'']]],
+ ['_5fremminapluginsshdata',['_RemminaPluginSshData',['../struct___remmina_plugin_ssh_data.html',1,'']]],
+ ['_5fremminapluginvnccoordinates',['_RemminaPluginVncCoordinates',['../struct___remmina_plugin_vnc_coordinates.html',1,'']]],
+ ['_5fremminapluginvnccuttextparam',['_RemminaPluginVncCuttextParam',['../struct___remmina_plugin_vnc_cuttext_param.html',1,'']]],
+ ['_5fremminapluginvncdata',['_RemminaPluginVncData',['../struct___remmina_plugin_vnc_data.html',1,'']]],
+ ['_5fremminapluginvncevent',['_RemminaPluginVncEvent',['../struct___remmina_plugin_vnc_event.html',1,'']]],
+ ['_5fremminapluginwwwdata',['_RemminaPluginWWWData',['../struct___remmina_plugin_w_w_w_data.html',1,'']]],
+ ['_5fremminapluginxdmcpdata',['_RemminaPluginXdmcpData',['../struct___remmina_plugin_xdmcp_data.html',1,'']]],
+ ['_5fremminapref',['_RemminaPref',['../struct___remmina_pref.html',1,'']]],
+ ['_5fremminaprefdialog',['_RemminaPrefDialog',['../struct___remmina_pref_dialog.html',1,'']]],
+ ['_5fremminaprefdialogpriv',['_RemminaPrefDialogPriv',['../struct___remmina_pref_dialog_priv.html',1,'']]],
+ ['_5fremminaprefplugin',['_RemminaPrefPlugin',['../struct___remmina_pref_plugin.html',1,'']]],
+ ['_5fremminaprotocolfeature',['_RemminaProtocolFeature',['../struct___remmina_protocol_feature.html',1,'']]],
+ ['_5fremminaprotocolplugin',['_RemminaProtocolPlugin',['../struct___remmina_protocol_plugin.html',1,'']]],
+ ['_5fremminaprotocolsetting',['_RemminaProtocolSetting',['../struct___remmina_protocol_setting.html',1,'']]],
+ ['_5fremminaprotocolsettingopt',['_RemminaProtocolSettingOpt',['../struct___remmina_protocol_setting_opt.html',1,'']]],
+ ['_5fremminaprotocolwidget',['_RemminaProtocolWidget',['../struct___remmina_protocol_widget.html',1,'']]],
+ ['_5fremminaprotocolwidgetclass',['_RemminaProtocolWidgetClass',['../struct___remmina_protocol_widget_class.html',1,'']]],
+ ['_5fremminaprotocolwidgetpriv',['_RemminaProtocolWidgetPriv',['../struct___remmina_protocol_widget_priv.html',1,'']]],
+ ['_5fremminaprotocolwidgetsignaldata',['_RemminaProtocolWidgetSignalData',['../struct___remmina_protocol_widget_signal_data.html',1,'']]],
+ ['_5fremminascrolledviewport',['_RemminaScrolledViewport',['../struct___remmina_scrolled_viewport.html',1,'']]],
+ ['_5fremminascrolledviewportclass',['_RemminaScrolledViewportClass',['../struct___remmina_scrolled_viewport_class.html',1,'']]],
+ ['_5fremminasecretplugin',['_RemminaSecretPlugin',['../struct___remmina_secret_plugin.html',1,'']]],
+ ['_5fremminasftp',['_RemminaSFTP',['../struct___remmina_s_f_t_p.html',1,'']]],
+ ['_5fremminasftpclient',['_RemminaSFTPClient',['../struct___remmina_s_f_t_p_client.html',1,'']]],
+ ['_5fremminasftpclientclass',['_RemminaSFTPClientClass',['../struct___remmina_s_f_t_p_client_class.html',1,'']]],
+ ['_5fremminassh',['_RemminaSSH',['../struct___remmina_s_s_h.html',1,'']]],
+ ['_5fremminasshshell',['_RemminaSSHShell',['../struct___remmina_s_s_h_shell.html',1,'']]],
+ ['_5fremminasshtunnel',['_RemminaSSHTunnel',['../struct___remmina_s_s_h_tunnel.html',1,'']]],
+ ['_5fremminastringlist',['_RemminaStringList',['../struct___remmina_string_list.html',1,'']]],
+ ['_5fremminastringlistpriv',['_RemminaStringListPriv',['../struct___remmina_string_list_priv.html',1,'']]],
+ ['_5fremminatoolplugin',['_RemminaToolPlugin',['../struct___remmina_tool_plugin.html',1,'']]],
+ ['_5fremminatpchannelhandler',['_RemminaTpChannelHandler',['../struct___remmina_tp_channel_handler.html',1,'']]],
+ ['_5fremminatphandler',['_RemminaTpHandler',['../struct___remmina_tp_handler.html',1,'']]],
+ ['_5fremminatphandlerclass',['_RemminaTpHandlerClass',['../struct___remmina_tp_handler_class.html',1,'']]],
+ ['_5fremminaunlockdialog',['_RemminaUnlockDialog',['../struct___remmina_unlock_dialog.html',1,'']]],
+ ['_5fsidebar_2emd',['_sidebar.md',['../__sidebar_8md.html',1,'']]]
+];
diff --git a/docs/search/all_1.html b/docs/search/all_1.html
new file mode 100644
index 000000000..b13f0f7f3
--- /dev/null
+++ b/docs/search/all_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_1.js b/docs/search/all_1.js
new file mode 100644
index 000000000..a61e65caf
--- /dev/null
+++ b/docs/search/all_1.js
@@ -0,0 +1,29 @@
+var searchData=
+[
+ ['accelgroup_5fshortcuts',['accelgroup_shortcuts',['../struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549',1,'_RemminaMain']]],
+ ['account',['account',['../struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8',1,'_RemminaTpChannelHandler']]],
+ ['action_5fview_5fmode_5flist',['action_view_mode_list',['../struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19',1,'_RemminaMain']]],
+ ['action_5fview_5fmode_5ftree',['action_view_mode_tree',['../struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c',1,'_RemminaMain']]],
+ ['action_5fview_5fquick_5fconnect',['action_view_quick_connect',['../struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f',1,'_RemminaMain']]],
+ ['activate',['activate',['../struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1',1,'_RemminaCellRendererPixbufClass']]],
+ ['advanced_5fsettings',['advanced_settings',['../struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db',1,'_RemminaProtocolPlugin']]],
+ ['alias',['alias',['../struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334',1,'_RemminaTpChannelHandler']]],
+ ['allow_5fstart',['allow_start',['../struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82',1,'_RemminaNXSession']]],
+ ['always_5fshow_5ftab',['always_show_tab',['../struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9',1,'_RemminaPref']]],
+ ['applet_5fenable_5favahi',['applet_enable_avahi',['../struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792',1,'_RemminaPref']]],
+ ['applet_5fhide_5fcount',['applet_hide_count',['../struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd',1,'_RemminaPref']]],
+ ['applet_5fnew_5fontop',['applet_new_ontop',['../struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568',1,'_RemminaPref']]],
+ ['aspectframe',['aspectframe',['../struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae',1,'_RemminaConnectionObject']]],
+ ['attach_5fsession',['attach_session',['../struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54',1,'_RemminaPluginNxData']]],
+ ['attempt_5finteractive_5fauthentication',['attempt_interactive_authentication',['../structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3',1,'rf_context']]],
+ ['audio',['audio',['../struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02',1,'_RemminaPluginSpiceData']]],
+ ['auth',['auth',['../struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03',1,'_RemminaSSH']]],
+ ['auth_5fcalled',['auth_called',['../struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97',1,'_RemminaPluginVncData']]],
+ ['auth_5ffirst',['auth_first',['../struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3',1,'_RemminaPluginVncData']]],
+ ['auth_5fmessage_5fpanel',['auth_message_panel',['../struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b',1,'_RemminaProtocolWidgetPriv']]],
+ ['authenticated',['authenticated',['../struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d',1,'_RemminaSSH::authenticated()'],['../struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd',1,'_RemminaPluginWWWData::authenticated()']]],
+ ['authpanel_5fmt_5fcb',['authpanel_mt_cb',['../remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb',1,'remmina_protocol_widget.c']]],
+ ['auto_5fscroll_5fstep',['auto_scroll_step',['../struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c',1,'_RemminaPref']]],
+ ['autostart_5ffile',['autostart_file',['../struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca',1,'_RemminaIcon']]],
+ ['avahi',['avahi',['../struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2',1,'_RemminaIcon']]]
+];
diff --git a/docs/search/all_10.html b/docs/search/all_10.html
new file mode 100644
index 000000000..d1345a1f0
--- /dev/null
+++ b/docs/search/all_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_10.js b/docs/search/all_10.js
new file mode 100644
index 000000000..8a2e62cc3
--- /dev/null
+++ b/docs/search/all_10.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20arch',['Quick and dirty guide for compiling remmina on Arch',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20debian_2010',['Quick and dirty guide for compiling remmina on Debian 10',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20debian_209',['Quick and dirty guide for compiling remmina on Debian 9',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2014_2e04',['Quick and dirty guide for compiling remmina on ubuntu 14.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2016_2e04',['Quick and dirty guide for compiling remmina on ubuntu 16.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2018_2e04',['Quick and dirty guide for compiling remmina on ubuntu 18.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2018_2e04',['Quick and dirty guide for compiling remmina on ubuntu 18.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html',1,'']]],
+ ['quality_5fcombo',['quality_combo',['../struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b',1,'_RemminaPluginRdpsetGrid']]],
+ ['quality_5flist',['quality_list',['../nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;nx_plugin.c'],['../rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;rdp_plugin.c'],['../vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;vnc_plugin.c']]],
+ ['quality_5fstore',['quality_store',['../struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621',1,'_RemminaPluginRdpsetGrid']]],
+ ['quality_5fvalues',['quality_values',['../struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af',1,'_RemminaPluginRdpsetGrid']]],
+ ['query_5ffeature',['query_feature',['../struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de',1,'_RemminaProtocolPlugin']]],
+ ['queuecursor_5fhandler',['queuecursor_handler',['../struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fsurface',['queuecursor_surface',['../struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fx',['queuecursor_x',['../struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fy',['queuecursor_y',['../struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fh',['queuedraw_h',['../struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fhandler',['queuedraw_handler',['../struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fw',['queuedraw_w',['../struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fx',['queuedraw_x',['../struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fy',['queuedraw_y',['../struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e',1,'_RemminaPluginVncData']]],
+ ['quick_5fconnect_5fplugin_5flist',['quick_connect_plugin_list',['../remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c',1,'remmina_main.c']]]
+];
diff --git a/docs/search/all_11.html b/docs/search/all_11.html
new file mode 100644
index 000000000..2be8b7111
--- /dev/null
+++ b/docs/search/all_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_11.js b/docs/search/all_11.js
new file mode 100644
index 000000000..03808f8bf
--- /dev/null
+++ b/docs/search/all_11.js
@@ -0,0 +1,1710 @@
+var searchData=
+[
+ ['requirements',['Requirements',['../md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html',1,'']]],
+ ['remmina_2drdp_2dand_2dhidpi_2dscaling',['Remmina-RDP-and-HiDPI-scaling',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html',1,'']]],
+ ['remmina_2dvnc_2dto_2draspbian_2dstretch',['Remmina-VNC-to-Raspbian-Stretch',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html',1,'']]],
+ ['remmina_20usage_20faq',['Remmina Usage FAQ',['../md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html',1,'']]],
+ ['rcbutton',['rcbutton',['../structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['rco_5fcall_5fprotocol_5ffeature_5factivate',['rco_call_protocol_feature_activate',['../rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64',1,'rcw.c']]],
+ ['rco_5fcall_5fprotocol_5ffeature_5fcheck',['rco_call_protocol_feature_check',['../rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f',1,'rcw.c']]],
+ ['rco_5fcall_5fprotocol_5ffeature_5fradio',['rco_call_protocol_feature_radio',['../rcw_8c.html#a3a531286fa321e0931475b5afc86ec49',1,'rcw.c']]],
+ ['rco_5fchange_5fscalemode',['rco_change_scalemode',['../rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5',1,'rcw.c']]],
+ ['rco_5fcheck_5fresize',['rco_check_resize',['../rcw_8c.html#ae1c994940909e60d4f565be0e0478b34',1,'rcw.c']]],
+ ['rco_5fclosewin',['rco_closewin',['../rcw_8c.html#aaef82069514845b2987ac0659993cecd',1,'rcw.c']]],
+ ['rco_5fcreate_5fscrolled_5fcontainer',['rco_create_scrolled_container',['../rcw_8c.html#afcbac7a8924d543a58039037837710ba',1,'rcw.c']]],
+ ['rco_5fcreate_5ftab_5flabel',['rco_create_tab_label',['../rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb',1,'rcw.c']]],
+ ['rco_5fcreate_5ftab_5fpage',['rco_create_tab_page',['../rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6',1,'rcw.c']]],
+ ['rco_5fdestroy_5fmessage_5fpanel',['rco_destroy_message_panel',['../rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7',1,'rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c'],['../rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7',1,'rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c']]],
+ ['rco_5fdisconnect_5fcurrent_5fpage',['rco_disconnect_current_page',['../rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9',1,'rcw.c']]],
+ ['rco_5fenter_5fprotocol_5fwidget',['rco_enter_protocol_widget',['../rcw_8c.html#a0650f31e99dd15c719328345411deba0',1,'rcw.c']]],
+ ['rco_5fget_5fdesktop_5fsize',['rco_get_desktop_size',['../rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527',1,'rcw.c']]],
+ ['rco_5fget_5fmonitor_5fgeometry',['rco_get_monitor_geometry',['../rcw_8c.html#aee06df544a91184cba1fe77c6991065a',1,'rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz):&#160;rcw.c'],['../rcw_8h.html#aee06df544a91184cba1fe77c6991065a',1,'rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz):&#160;rcw.c']]],
+ ['rco_5fleave_5fprotocol_5fwidget',['rco_leave_protocol_widget',['../rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757',1,'rcw.c']]],
+ ['rco_5fon_5fclose_5fbutton_5fclicked',['rco_on_close_button_clicked',['../rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4',1,'rcw.c']]],
+ ['rco_5fon_5fconnect',['rco_on_connect',['../rcw_8c.html#a3237ef26caa19b9926b485f94132cea7',1,'rcw.c']]],
+ ['rco_5fon_5fdesktop_5fresize',['rco_on_desktop_resize',['../rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964',1,'rcw.c']]],
+ ['rco_5fon_5fdisconnect',['rco_on_disconnect',['../rcw_8c.html#a029feea88b7ef32425595efe7d270947',1,'rcw.c']]],
+ ['rco_5fon_5funlock_5fdynres',['rco_on_unlock_dynres',['../rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede',1,'rcw.c']]],
+ ['rco_5fon_5fupdate_5falign',['rco_on_update_align',['../rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a',1,'rcw.c']]],
+ ['rco_5fscrolled_5ffullscreen_5fmode',['rco_scrolled_fullscreen_mode',['../rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790',1,'rcw.c']]],
+ ['rco_5fset_5fscrolled_5fpolicy',['rco_set_scrolled_policy',['../rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844',1,'rcw.c']]],
+ ['rco_5fshow_5fmessage_5fpanel',['rco_show_message_panel',['../rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4',1,'rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c'],['../rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4',1,'rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c']]],
+ ['rco_5fswitch_5fpage_5factivate',['rco_switch_page_activate',['../rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a',1,'rcw.c']]],
+ ['rco_5fupdate_5ftoolbar',['rco_update_toolbar',['../rcw_8c.html#a319e8c05fa25a57aa34875d48e182726',1,'rcw.c']]],
+ ['rco_5fupdate_5ftoolbar_5fautofit_5fbutton',['rco_update_toolbar_autofit_button',['../rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa',1,'rcw.c']]],
+ ['rco_5fviewport_5ffullscreen_5fmode',['rco_viewport_fullscreen_mode',['../rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef',1,'rcw.c']]],
+ ['rcw_2ec',['rcw.c',['../rcw_8c.html',1,'']]],
+ ['rcw_2eh',['rcw.h',['../rcw_8h.html',1,'']]],
+ ['rcw_5fafter_5fconfigure_5fscrolled',['rcw_after_configure_scrolled',['../rcw_8c.html#a29df78f116c127e22a561beb4d8bae51',1,'rcw.c']]],
+ ['rcw_5fappend_5fnew_5fpage',['rcw_append_new_page',['../rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc',1,'rcw.c']]],
+ ['rcw_5fclass_5finit',['rcw_class_init',['../rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4',1,'rcw.c']]],
+ ['rcw_5fclose_5fall_5fconnections',['rcw_close_all_connections',['../rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3',1,'rcw.c']]],
+ ['rcw_5fcreate_5ffloating_5ftoolbar',['rcw_create_floating_toolbar',['../rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e',1,'rcw.c']]],
+ ['rcw_5fcreate_5ffullscreen',['rcw_create_fullscreen',['../rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8',1,'rcw.c']]],
+ ['rcw_5fcreate_5fnotebook',['rcw_create_notebook',['../rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff',1,'rcw.c']]],
+ ['rcw_5fcreate_5foverlay_5fftb_5foverlay',['rcw_create_overlay_ftb_overlay',['../rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746',1,'rcw.c']]],
+ ['rcw_5fcreate_5fscrolled',['rcw_create_scrolled',['../rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0',1,'rcw.c']]],
+ ['rcw_5fcreate_5ftoolbar',['rcw_create_toolbar',['../rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86',1,'rcw.c']]],
+ ['rcw_5fdelayed_5fwindow_5fpresent',['rcw_delayed_window_present',['../rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9',1,'rcw.c']]],
+ ['rcw_5fdelete',['rcw_delete',['../rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7',1,'rcw_delete(RemminaConnectionWindow *cnnwin):&#160;rcw.c'],['../rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7',1,'rcw_delete(RemminaConnectionWindow *cnnwin):&#160;rcw.c']]],
+ ['rcw_5fdelete_5fevent',['rcw_delete_event',['../rcw_8c.html#a07802fc420dc07560fe937d29172573c',1,'rcw.c']]],
+ ['rcw_5fdestroy',['rcw_destroy',['../rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c',1,'rcw.c']]],
+ ['rcw_5ffind',['rcw_find',['../rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fhide',['rcw_floating_toolbar_hide',['../rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fmake_5finvisible',['rcw_floating_toolbar_make_invisible',['../rcw_8c.html#a544a61088b93ffc31a79554c70d97dff',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fon_5fenter',['rcw_floating_toolbar_on_enter',['../rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fon_5fscroll',['rcw_floating_toolbar_on_scroll',['../rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fshow',['rcw_floating_toolbar_show',['../rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7',1,'rcw.c']]],
+ ['rcw_5ffocus_5fin',['rcw_focus_in',['../rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3',1,'rcw.c']]],
+ ['rcw_5ffocus_5fout',['rcw_focus_out',['../rcw_8c.html#a010af24147287ef89f605e71ef315475',1,'rcw.c']]],
+ ['rcw_5fftb_5fdrag_5fbegin',['rcw_ftb_drag_begin',['../rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a',1,'rcw.c']]],
+ ['rcw_5fftb_5fdrag_5fdrop',['rcw_ftb_drag_drop',['../rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea',1,'rcw.c']]],
+ ['rcw_5ffullscreen_5foption_5fpopdown',['rcw_fullscreen_option_popdown',['../rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28',1,'rcw.c']]],
+ ['rcw_5fget_5fcnnobj_5fat_5fpage',['rcw_get_cnnobj_at_page',['../rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44',1,'rcw.c']]],
+ ['rcw_5fget_5ftype',['rcw_get_type',['../rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b',1,'rcw.h']]],
+ ['rcw_5fget_5fvisible_5fcnnobj',['rcw_get_visible_cnnobj',['../rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47',1,'rcw.c']]],
+ ['rcw_5fgrab_5ffocus',['rcw_grab_focus',['../rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3',1,'rcw.c']]],
+ ['rcw_5fhostkey_5ffunc',['rcw_hostkey_func',['../rcw_8c.html#acb1b2ab629603837e08f8d8de542316d',1,'rcw.c']]],
+ ['rcw_5finit',['rcw_init',['../rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd',1,'rcw.c']]],
+ ['rcw_5fkeyboard_5fgrab',['rcw_keyboard_grab',['../rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c',1,'rcw.c']]],
+ ['rcw_5fkeyboard_5fgrab_5fretry',['rcw_keyboard_grab_retry',['../rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5',1,'rcw.c']]],
+ ['rcw_5fkp_5fungrab',['rcw_kp_ungrab',['../rcw_8c.html#a82c93bbb1ab73807b366b86928c37946',1,'rcw.c']]],
+ ['rcw_5fmap_5fevent_5ffullscreen',['rcw_map_event_fullscreen',['../rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a',1,'rcw.c']]],
+ ['rcw_5fmigrate',['rcw_migrate',['../rcw_8c.html#a0d4ebd91bc6568257031111f56689a76',1,'rcw.c']]],
+ ['rcw_5fnew',['rcw_new',['../rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73',1,'rcw.c']]],
+ ['rcw_5fnotify_5fwidget_5ftoolbar_5fplacement',['rcw_notify_widget_toolbar_placement',['../rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0',1,'rcw.c']]],
+ ['rcw_5fon_5fconfigure',['rcw_on_configure',['../rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823',1,'rcw.c']]],
+ ['rcw_5fon_5fleave_5fnotify_5fevent',['rcw_on_leave_notify_event',['../rcw_8c.html#a27f545a9630a481f4df747478cd227fb',1,'rcw.c']]],
+ ['rcw_5fon_5fnotebook_5fcreate_5fwindow',['rcw_on_notebook_create_window',['../rcw_8c.html#a6d710132769d5f21989af6844c04b43f',1,'rcw.c']]],
+ ['rcw_5fon_5fpage_5fadded',['rcw_on_page_added',['../rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9',1,'rcw.c']]],
+ ['rcw_5fon_5fpage_5fremoved',['rcw_on_page_removed',['../rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d',1,'rcw.c']]],
+ ['rcw_5fon_5fswitch_5fpage',['rcw_on_switch_page',['../rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b',1,'rcw.c']]],
+ ['rcw_5fon_5fswitch_5fpage_5ffinalsel',['rcw_on_switch_page_finalsel',['../rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93',1,'rcw.c']]],
+ ['rcw_5fondelete_5fconfirm_5fif_5f2_5for_5fmore',['RCW_ONDELETE_CONFIRM_IF_2_OR_MORE',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b',1,'rcw.h']]],
+ ['rcw_5fondelete_5fnoconfirm',['RCW_ONDELETE_NOCONFIRM',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc',1,'rcw.h']]],
+ ['rcw_5fopen_5ffrom_5ffile',['rcw_open_from_file',['../rcw_8c.html#a1b7a771392e15e527005305e71cc2546',1,'rcw_open_from_file(RemminaFile *remminafile):&#160;rcw.c'],['../rcw_8h.html#a1b7a771392e15e527005305e71cc2546',1,'rcw_open_from_file(RemminaFile *remminafile):&#160;rcw.c']]],
+ ['rcw_5fopen_5ffrom_5ffile_5ffull',['rcw_open_from_file_full',['../rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff',1,'rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler):&#160;rcw.c'],['../rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff',1,'rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler):&#160;rcw.c']]],
+ ['rcw_5fopen_5ffrom_5ffilename',['rcw_open_from_filename',['../rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5',1,'rcw_open_from_filename(const gchar *filename):&#160;rcw.c'],['../rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5',1,'rcw_open_from_filename(const gchar *filename):&#160;rcw.c']]],
+ ['rcw_5fplace_5ftoolbar',['rcw_place_toolbar',['../rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292',1,'rcw.c']]],
+ ['rcw_5fpointer_5fgrab',['rcw_pointer_grab',['../rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3',1,'rcw.c']]],
+ ['rcw_5fpointer_5fungrab',['rcw_pointer_ungrab',['../rcw_8c.html#a177a2ece80374b29bc26595fff8bed42',1,'rcw.c']]],
+ ['rcw_5fscaler_5fexpand',['rcw_scaler_expand',['../rcw_8c.html#ae747a0b62a922df1de61c62092757b19',1,'rcw.c']]],
+ ['rcw_5fscaler_5fkeep_5faspect',['rcw_scaler_keep_aspect',['../rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767',1,'rcw.c']]],
+ ['rcw_5fscaler_5foption_5fpopdown',['rcw_scaler_option_popdown',['../rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0',1,'rcw.c']]],
+ ['rcw_5fset_5fdelete_5fconfirm_5fmode',['rcw_set_delete_confirm_mode',['../rcw_8c.html#a4204fcd726a60493b290dd5590ec693d',1,'rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode):&#160;rcw.c'],['../rcw_8h.html#a4204fcd726a60493b290dd5590ec693d',1,'rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode):&#160;rcw.c']]],
+ ['rcw_5fset_5ftoolbar_5fvisibility',['rcw_set_toolbar_visibility',['../rcw_8c.html#a23d848e45205a65618c84bb70b882b3f',1,'rcw.c']]],
+ ['rcw_5fset_5ftooltip',['rcw_set_tooltip',['../rcw_8c.html#acfa15d238ac64558487dee3c320c3701',1,'rcw.c']]],
+ ['rcw_5fsignals',['rcw_signals',['../rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e',1,'rcw.c']]],
+ ['rcw_5fstate_5fevent',['rcw_state_event',['../rcw_8c.html#aa9d246740106aae9643ab7edc32923f3',1,'rcw.c']]],
+ ['rcw_5fswitch_5fviewmode',['rcw_switch_viewmode',['../rcw_8c.html#afec9666876babf3ae115fade7470915e',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5fbegin',['rcw_tb_drag_begin',['../rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5fdrop',['rcw_tb_drag_drop',['../rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5ffailed',['rcw_tb_drag_failed',['../rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fautofit',['rcw_toolbar_autofit',['../rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fautofit_5frestore',['rcw_toolbar_autofit_restore',['../rcw_8c.html#aa1044979d82ce73db51117de1262832f',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fdisconnect',['rcw_toolbar_disconnect',['../rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fduplicate',['rcw_toolbar_duplicate',['../rcw_8c.html#ac973ca10137b1f285f45785f93966fd5',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fdynres',['rcw_toolbar_dynres',['../rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ffullscreen',['rcw_toolbar_fullscreen',['../rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ffullscreen_5foption',['rcw_toolbar_fullscreen_option',['../rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fgrab',['rcw_toolbar_grab',['../rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fminimize',['rcw_toolbar_minimize',['../rcw_8c.html#a51bb9efba28252cbf96da6797710c919',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpin',['rcw_toolbar_pin',['../rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fplace_5fsignal',['rcw_toolbar_place_signal',['../rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences',['rcw_toolbar_preferences',['../rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fcheck',['rcw_toolbar_preferences_check',['../rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fpopdown',['rcw_toolbar_preferences_popdown',['../rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fradio',['rcw_toolbar_preferences_radio',['../rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscaled_5fmode',['rcw_toolbar_scaled_mode',['../rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscaler_5foption',['rcw_toolbar_scaler_option',['../rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscreenshot',['rcw_toolbar_screenshot',['../rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fswitch_5fpage',['rcw_toolbar_switch_page',['../rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fswitch_5fpage_5fpopdown',['rcw_toolbar_switch_page_popdown',['../rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ftools',['rcw_toolbar_tools',['../rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ftools_5fpopdown',['rcw_toolbar_tools_popdown',['../rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5',1,'rcw.c']]],
+ ['rcw_5fupdate_5fnotebook',['rcw_update_notebook',['../rcw_8c.html#a327f62be43b7f312982f9e22b86a2867',1,'rcw.c']]],
+ ['rcw_5fupdate_5fpin',['rcw_update_pin',['../rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27',1,'rcw.c']]],
+ ['rcw_5fupdate_5ftag',['rcw_update_tag',['../rcw_8c.html#af8d1a8843f974fb8170d76f945a72080',1,'rcw.c']]],
+ ['rcw_5fupdate_5ftoolbar_5fopacity',['rcw_update_toolbar_opacity',['../rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4',1,'rcw.c']]],
+ ['rdp_5fchannels_2ec',['rdp_channels.c',['../rdp__channels_8c.html',1,'']]],
+ ['rdp_5fchannels_2eh',['rdp_channels.h',['../rdp__channels_8h.html',1,'']]],
+ ['rdp_5fcliprdr_2ec',['rdp_cliprdr.c',['../rdp__cliprdr_8c.html',1,'']]],
+ ['rdp_5fcliprdr_2eh',['rdp_cliprdr.h',['../rdp__cliprdr_8h.html',1,'']]],
+ ['rdp_5fevent_2ec',['rdp_event.c',['../rdp__event_8c.html',1,'']]],
+ ['rdp_5fevent_2eh',['rdp_event.h',['../rdp__event_8h.html',1,'']]],
+ ['rdp_5ffile_2ec',['rdp_file.c',['../rdp__file_8c.html',1,'']]],
+ ['rdp_5ffile_2eh',['rdp_file.h',['../rdp__file_8h.html',1,'']]],
+ ['rdp_5fgraphics_2ec',['rdp_graphics.c',['../rdp__graphics_8c.html',1,'']]],
+ ['rdp_5fgraphics_2eh',['rdp_graphics.h',['../rdp__graphics_8h.html',1,'']]],
+ ['rdp_5fkeyboard_5flayout',['rdp_keyboard_layout',['../rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444',1,'rdp_settings.c']]],
+ ['rdp_5fplugin_2ec',['rdp_plugin.c',['../rdp__plugin_8c.html',1,'']]],
+ ['rdp_5fplugin_2eh',['rdp_plugin.h',['../rdp__plugin_8h.html',1,'']]],
+ ['rdp_5fsettings_2ec',['rdp_settings.c',['../rdp__settings_8c.html',1,'']]],
+ ['rdp_5fsettings_2eh',['rdp_settings.h',['../rdp__settings_8h.html',1,'']]],
+ ['rdpdr_5fdata',['rdpdr_data',['../structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4',1,'rf_context']]],
+ ['rdpgfxchan',['rdpgfxchan',['../structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a',1,'rf_context']]],
+ ['rdpsnd_5foptions',['rdpsnd_options',['../structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f',1,'rf_context']]],
+ ['readme_2emd',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]],
+ ['ready',['ready',['../struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f',1,'_RemminaPluginXdmcpData']]],
+ ['recent_5fmaximum',['recent_maximum',['../struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644',1,'_RemminaPref']]],
+ ['reconnect_5fmaxattempts',['reconnect_maxattempts',['../structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee',1,'rf_context']]],
+ ['reconnect_5fnattempt',['reconnect_nattempt',['../structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413',1,'rf_context']]],
+ ['reg',['reg',['../structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0',1,'remmina_plugin_rdp_ui_object']]],
+ ['region',['region',['../structregion.html',1,'']]],
+ ['register_5fplugin',['register_plugin',['../struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2',1,'_RemminaPluginService']]],
+ ['remmina_2drdp_2dand_2dhidpi_2dscaling_2emd',['Remmina-RDP-and-HiDPI-scaling.md',['../_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html',1,'']]],
+ ['remmina_2dssh_2dterminal_2dcolour_2dschemes_2emd',['Remmina-SSH-Terminal-colour-schemes.md',['../_remmina-_s_s_h-_terminal-colour-schemes_8md.html',1,'']]],
+ ['remmina_2dusage_2dfaq_2emd',['Remmina-Usage-FAQ.md',['../_remmina-_usage-_f_a_q_8md.html',1,'']]],
+ ['remmina_2duser_27s_2dguide_2emd',['Remmina-User&apos;s-guide.md',['../_remmina-_user's-guide_8md.html',1,'']]],
+ ['remmina_2dvnc_2dto_2draspbian_2dstretch_2emd',['Remmina-VNC-to-Raspbian-Stretch.md',['../_remmina-_v_n_c-to-_raspbian-_stretch_8md.html',1,'']]],
+ ['remmina_2ec',['remmina.c',['../remmina_8c.html',1,'']]],
+ ['remmina_2eh',['remmina.h',['../remmina_8h.html',1,'']]],
+ ['remmina_5fabout_2ec',['remmina_about.c',['../remmina__about_8c.html',1,'']]],
+ ['remmina_5fabout_2eh',['remmina_about.h',['../remmina__about_8h.html',1,'']]],
+ ['remmina_5fabout_5fopen',['remmina_about_open',['../remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4',1,'remmina_about_open(GtkWindow *parent):&#160;remmina_about.c'],['../remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8',1,'remmina_about_open(GtkWindow *parent):&#160;remmina_about.c']]],
+ ['remmina_5faction_5fconnect',['REMMINA_ACTION_CONNECT',['../remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a',1,'remmina_pref.h']]],
+ ['remmina_5faction_5fedit',['REMMINA_ACTION_EDIT',['../remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3',1,'remmina_pref.h']]],
+ ['remmina_5fapplet_5fmenu_2ec',['remmina_applet_menu.c',['../remmina__applet__menu_8c.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_2eh',['remmina_applet_menu.h',['../remmina__applet__menu_8h.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_5fadd_5fgroup',['remmina_applet_menu_add_group',['../remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fadd_5fitem',['remmina_applet_menu_add_item',['../remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23',1,'remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23',1,'remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fclass_5finit',['remmina_applet_menu_class_init',['../remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fdestroy',['remmina_applet_menu_destroy',['../remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fget_5ftype',['remmina_applet_menu_get_type',['../remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fincrease_5fgroup_5fcount',['remmina_applet_menu_increase_group_count',['../remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5finit',['remmina_applet_menu_init',['../remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_2ec',['remmina_applet_menu_item.c',['../remmina__applet__menu__item_8c.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_5fitem_2eh',['remmina_applet_menu_item.h',['../remmina__applet__menu__item_8h.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fclass_5finit',['remmina_applet_menu_item_class_init',['../remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701',1,'remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fcompare',['remmina_applet_menu_item_compare',['../remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08',1,'remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data):&#160;remmina_applet_menu_item.c'],['../remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08',1,'remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data):&#160;remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fdiscovered',['REMMINA_APPLET_MENU_ITEM_DISCOVERED',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5ffile',['REMMINA_APPLET_MENU_ITEM_FILE',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fget_5ftype',['remmina_applet_menu_item_get_type',['../remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5finit',['remmina_applet_menu_item_init',['../remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0',1,'remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fnew',['remmina_applet_menu_item_new',['../remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96',1,'remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...):&#160;remmina_applet_menu_item.c'],['../remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96',1,'remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...):&#160;remmina_applet_menu_item.c'],['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3',1,'REMMINA_APPLET_MENU_ITEM_NEW():&#160;remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew',['remmina_applet_menu_new',['../remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872',1,'remmina_applet_menu_new(void):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872',1,'remmina_applet_menu_new(void):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5fbottom',['REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5fnone',['REMMINA_APPLET_MENU_NEW_CONNECTION_NONE',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5ftop',['REMMINA_APPLET_MENU_NEW_CONNECTION_TOP',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fon_5fitem_5factivate',['remmina_applet_menu_on_item_activate',['../remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fpopulate',['remmina_applet_menu_populate',['../remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66',1,'remmina_applet_menu_populate(RemminaAppletMenu *menu):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66',1,'remmina_applet_menu_populate(RemminaAppletMenu *menu):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fregister_5fitem',['remmina_applet_menu_register_item',['../remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751',1,'remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751',1,'remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fset_5fhide_5fcount',['remmina_applet_menu_set_hide_count',['../remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe',1,'remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe',1,'remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fsignals',['remmina_applet_menu_signals',['../remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplication_5fcondexit',['remmina_application_condexit',['../remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31',1,'remmina_application_condexit(RemminaCondExitType why):&#160;remmina_exec.c'],['../remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31',1,'remmina_application_condexit(RemminaCondExitType why):&#160;remmina_exec.c']]],
+ ['remmina_5fauthpwd_5ftype_5fprotocol',['REMMINA_AUTHPWD_TYPE_PROTOCOL',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2',1,'types.h']]],
+ ['remmina_5fauthpwd_5ftype_5fssh_5fprivkey',['REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920',1,'types.h']]],
+ ['remmina_5fauthpwd_5ftype_5fssh_5fpwd',['REMMINA_AUTHPWD_TYPE_SSH_PWD',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d',1,'types.h']]],
+ ['remmina_5favahi_2ec',['remmina_avahi.c',['../remmina__avahi_8c.html',1,'']]],
+ ['remmina_5favahi_2eh',['remmina_avahi.h',['../remmina__avahi_8h.html',1,'']]],
+ ['remmina_5favahi_5fbrowse_5fcallback',['remmina_avahi_browse_callback',['../remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fclient_5fcallback',['remmina_avahi_client_callback',['../remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5ffree',['remmina_avahi_free',['../remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436',1,'remmina_avahi_free(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436',1,'remmina_avahi_free(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fiterate',['remmina_avahi_iterate',['../remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fnew',['remmina_avahi_new',['../remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f',1,'remmina_avahi_new(void):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392',1,'remmina_avahi_new(void):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fresolve_5fcallback',['remmina_avahi_resolve_callback',['../remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fstart',['remmina_avahi_start',['../remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71',1,'remmina_avahi_start(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71',1,'remmina_avahi_start(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fstop',['remmina_avahi_stop',['../remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30',1,'remmina_avahi_stop(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30',1,'remmina_avahi_stop(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5factivate',['remmina_cell_renderer_pixbuf_activate',['../remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fclass_5finit',['remmina_cell_renderer_pixbuf_class_init',['../remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fget_5ftype',['remmina_cell_renderer_pixbuf_get_type',['../remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5finit',['remmina_cell_renderer_pixbuf_init',['../remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fnew',['remmina_cell_renderer_pixbuf_new',['../remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715',1,'remmina_ftp_client.c']]],
+ ['remmina_5fchat_5fwindow_2ec',['remmina_chat_window.c',['../remmina__chat__window_8c.html',1,'']]],
+ ['remmina_5fchat_5fwindow_2eh',['remmina_chat_window.h',['../remmina__chat__window_8h.html',1,'']]],
+ ['remmina_5fchat_5fwindow_5fappend_5ftext',['remmina_chat_window_append_text',['../remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fclass_5finit',['remmina_chat_window_class_init',['../remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fclear_5fsend_5ftext',['remmina_chat_window_clear_send_text',['../remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fget_5ftype',['remmina_chat_window_get_type',['../remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782',1,'remmina_chat_window.h']]],
+ ['remmina_5fchat_5fwindow_5finit',['remmina_chat_window_init',['../remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fnew',['remmina_chat_window_new',['../remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f',1,'remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with):&#160;remmina_chat_window.c'],['../remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f',1,'remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with):&#160;remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5freceive',['remmina_chat_window_receive',['../remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022',1,'remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text):&#160;remmina_chat_window.c'],['../remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022',1,'remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text):&#160;remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fscroll_5fproc',['remmina_chat_window_scroll_proc',['../remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fsend',['remmina_chat_window_send',['../remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fsend_5ftext_5fon_5fkey',['remmina_chat_window_send_text_on_key',['../remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fsignals',['remmina_chat_window_signals',['../remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87',1,'remmina_chat_window.c']]],
+ ['remmina_5fcolors_5ffile',['remmina_colors_file',['../remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce',1,'remmina_pref.h']]],
+ ['remmina_5fcommand_5fabout',['REMMINA_COMMAND_ABOUT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fautostart',['REMMINA_COMMAND_AUTOSTART',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fconnect',['REMMINA_COMMAND_CONNECT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fedit',['REMMINA_COMMAND_EDIT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fexit',['REMMINA_COMMAND_EXIT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5ffull_5fversion',['REMMINA_COMMAND_FULL_VERSION',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fmain',['REMMINA_COMMAND_MAIN',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fnew',['REMMINA_COMMAND_NEW',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fnone',['REMMINA_COMMAND_NONE',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fplugin',['REMMINA_COMMAND_PLUGIN',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fpref',['REMMINA_COMMAND_PREF',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fversion',['REMMINA_COMMAND_VERSION',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fondisconnect',['REMMINA_CONDEXIT_ONDISCONNECT',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fonmainwindelete',['REMMINA_CONDEXIT_ONMAINWINDELETE',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fonquit',['REMMINA_CONDEXIT_ONQUIT',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284',1,'remmina_exec.h']]],
+ ['remmina_5fcrypt_2ec',['remmina_crypt.c',['../remmina__crypt_8c.html',1,'']]],
+ ['remmina_5fcrypt_2eh',['remmina_crypt.h',['../remmina__crypt_8h.html',1,'']]],
+ ['remmina_5fcrypt_5fdecrypt',['remmina_crypt_decrypt',['../remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9',1,'remmina_crypt_decrypt(const gchar *str):&#160;remmina_crypt.c'],['../remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d',1,'remmina_crypt_decrypt(const gchar *str):&#160;remmina_crypt.c']]],
+ ['remmina_5fcrypt_5fencrypt',['remmina_crypt_encrypt',['../remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1',1,'remmina_crypt_encrypt(const gchar *str):&#160;remmina_crypt.c'],['../remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9',1,'remmina_crypt_encrypt(const gchar *str):&#160;remmina_crypt.c']]],
+ ['remmina_5fcrypt_5finit',['remmina_crypt_init',['../remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171',1,'remmina_crypt.c']]],
+ ['remmina_5fdebug',['remmina_debug',['../remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a',1,'remmina_debug(const gchar *fmt,...):&#160;remmina_log.c'],['../remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a',1,'remmina_debug(const gchar *fmt,...):&#160;remmina_log.c']]],
+ ['remmina_5fdrop_5ftypes',['remmina_drop_types',['../remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda',1,'remmina_main.c']]],
+ ['remmina_5fexec_2ec',['remmina_exec.c',['../remmina__exec_8c.html',1,'']]],
+ ['remmina_5fexec_2eh',['remmina_exec.h',['../remmina__exec_8h.html',1,'']]],
+ ['remmina_5fexec_5fautostart_5fcb',['remmina_exec_autostart_cb',['../remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d',1,'remmina_exec.c']]],
+ ['remmina_5fexec_5fcommand',['remmina_exec_command',['../remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7',1,'remmina_exec_command(RemminaCommandType command, const gchar *data):&#160;remmina_exec.c'],['../remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7',1,'remmina_exec_command(RemminaCommandType command, const gchar *data):&#160;remmina_exec.c']]],
+ ['remmina_5fexec_5fexitremmina',['remmina_exec_exitremmina',['../remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271',1,'remmina_exec_exitremmina():&#160;remmina_exec.c'],['../remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f',1,'remmina_exec_exitremmina(void):&#160;remmina_exec.c']]],
+ ['remmina_5fexec_5fget_5fbuild_5fconfig',['remmina_exec_get_build_config',['../remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3',1,'remmina_exec.c']]],
+ ['remmina_5fexec_5fset_5fsetting',['remmina_exec_set_setting',['../remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9',1,'remmina_exec_set_setting(gchar *profilefilename, gchar **settings):&#160;remmina_exec.c'],['../remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9',1,'remmina_exec_set_setting(gchar *profilefilename, gchar **settings):&#160;remmina_exec.c']]],
+ ['remmina_5fext_5fexec_2ec',['remmina_ext_exec.c',['../remmina__ext__exec_8c.html',1,'']]],
+ ['remmina_5fext_5fexec_2eh',['remmina_ext_exec.h',['../remmina__ext__exec_8h.html',1,'']]],
+ ['remmina_5fext_5fexec_5fnew',['remmina_ext_exec_new',['../remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7',1,'remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type):&#160;remmina_ext_exec.c'],['../remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7',1,'remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type):&#160;remmina_ext_exec.c']]],
+ ['remmina_5fexternal_5ftools_2ec',['remmina_external_tools.c',['../remmina__external__tools_8c.html',1,'']]],
+ ['remmina_5fexternal_5ftools_2eh',['remmina_external_tools.h',['../remmina__external__tools_8h.html',1,'']]],
+ ['remmina_5fexternal_5ftools_5ffrom_5ffilename',['remmina_external_tools_from_filename',['../remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d',1,'remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename):&#160;remmina_external_tools.c'],['../remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85',1,'remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename):&#160;remmina_external_tools.c']]],
+ ['remmina_5fexternal_5ftools_5flauncher',['remmina_external_tools_launcher',['../remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60',1,'remmina_external_tools.c']]],
+ ['remmina_5ffile',['remmina_file',['../struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c',1,'_RemminaConnectionObject::remmina_file()'],['../struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec',1,'_RemminaProtocolWidgetPriv::remmina_file()']]],
+ ['remmina_5ffile_2ec',['remmina_file.c',['../remmina__file_8c.html',1,'']]],
+ ['remmina_5ffile_2eh',['remmina_file.h',['../remmina__file_8h.html',1,'']]],
+ ['remmina_5ffile_5fcopy',['remmina_file_copy',['../remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343',1,'remmina_file_copy(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343',1,'remmina_file_copy(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdelete',['remmina_file_delete',['../remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4',1,'remmina_file_delete(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4',1,'remmina_file_delete(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdup',['remmina_file_dup',['../remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5',1,'remmina_file_dup(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5',1,'remmina_file_dup(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdup_5ftemp_5fprotocol',['remmina_file_dup_temp_protocol',['../remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60',1,'remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol):&#160;remmina_file.c'],['../remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60',1,'remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5feditor_2ec',['remmina_file_editor.c',['../remmina__file__editor_8c.html',1,'']]],
+ ['remmina_5ffile_5feditor_2eh',['remmina_file_editor.h',['../remmina__file__editor_8h.html',1,'']]],
+ ['remmina_5ffile_5feditor_5fbrowse_5favahi',['remmina_file_editor_browse_avahi',['../remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fbrowse_5fresolution',['remmina_file_editor_browse_resolution',['../remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fbutton_5fon_5ftoggled',['remmina_file_editor_button_on_toggled',['../remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcheck_5fprofile',['remmina_file_editor_check_profile',['../remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257',1,'remmina_file_editor_check_profile(RemminaFileEditor *gfe):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257',1,'remmina_file_editor_check_profile(RemminaFileEditor *gfe):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fclass_5finit',['remmina_file_editor_class_init',['../remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fall_5fsettings',['remmina_file_editor_create_all_settings',['../remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fcheck',['remmina_file_editor_create_check',['../remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fchooser',['remmina_file_editor_create_chooser',['../remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fcombo',['remmina_file_editor_create_combo',['../remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fnotebook_5fcontainer',['remmina_file_editor_create_notebook_container',['../remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fnotebook_5ftab',['remmina_file_editor_create_notebook_tab',['../remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fpassword',['remmina_file_editor_create_password',['../remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fresolution',['remmina_file_editor_create_resolution',['../remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fselect',['remmina_file_editor_create_select',['../remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fserver',['remmina_file_editor_create_server',['../remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fsettings',['remmina_file_editor_create_settings',['../remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fssh_5fprivatekey',['remmina_file_editor_create_ssh_privatekey',['../remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fssh_5ftunnel_5ftab',['remmina_file_editor_create_ssh_tunnel_tab',['../remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5ftext',['remmina_file_editor_create_text',['../remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fdestroy',['remmina_file_editor_destroy',['../remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fentry_5fon_5fchanged',['remmina_file_editor_entry_on_changed',['../remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5ffile_5fsave',['remmina_file_editor_file_save',['../remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056',1,'remmina_file_editor_file_save(RemminaFileEditor *gfe):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056',1,'remmina_file_editor_file_save(RemminaFileEditor *gfe):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fget_5ftype',['remmina_file_editor_get_type',['../remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f',1,'remmina_file_editor.h']]],
+ ['remmina_5ffile_5feditor_5finit',['remmina_file_editor_init',['../remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fiterate_5fprotocol',['remmina_file_editor_iterate_protocol',['../remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew',['remmina_file_editor_new',['../remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e',1,'remmina_file_editor_new(void):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e',1,'remmina_file_editor_new(void):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5fcopy',['remmina_file_editor_new_copy',['../remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf',1,'remmina_file_editor_new_copy(const gchar *filename):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf',1,'remmina_file_editor_new_copy(const gchar *filename):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffrom_5ffile',['remmina_file_editor_new_from_file',['../remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06',1,'remmina_file_editor_new_from_file(RemminaFile *remminafile):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06',1,'remmina_file_editor_new_from_file(RemminaFile *remminafile):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffrom_5ffilename',['remmina_file_editor_new_from_filename',['../remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea',1,'remmina_file_editor_new_from_filename(const gchar *filename):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea',1,'remmina_file_editor_new_from_filename(const gchar *filename):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffull',['remmina_file_editor_new_full',['../remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb',1,'remmina_file_editor_new_full(const gchar *server, const gchar *protocol):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb',1,'remmina_file_editor_new_full(const gchar *server, const gchar *protocol):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fcancel',['remmina_file_editor_on_cancel',['../remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fconnect',['remmina_file_editor_on_connect',['../remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fdefault',['remmina_file_editor_on_default',['../remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5frealize',['remmina_file_editor_on_realize',['../remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fsave',['remmina_file_editor_on_save',['../remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fsave_5fconnect',['remmina_file_editor_on_save_connect',['../remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fprotocol_5fcombo_5fon_5fchanged',['remmina_file_editor_protocol_combo_on_changed',['../remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fsave_5fssh_5ftunnel_5ftab',['remmina_file_editor_save_ssh_tunnel_tab',['../remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fauth_5fpublickey_5fradio_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled',['../remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fenabled_5fcheck_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_enabled_check_on_toggled',['../remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fserver_5fcustom_5fradio_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled',['../remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate',['remmina_file_editor_update',['../remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate_5fresolution',['remmina_file_editor_update_resolution',['../remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate_5fsettings',['remmina_file_editor_update_settings',['../remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5fformat_5fproperties',['remmina_file_format_properties',['../remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03',1,'remmina_file_format_properties(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03',1,'remmina_file_format_properties(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5ffree',['remmina_file_free',['../remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7',1,'remmina_file_free(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7',1,'remmina_file_free(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fgenerate_5ffilename',['remmina_file_generate_filename',['../remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e',1,'remmina_file_generate_filename(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e',1,'remmina_file_generate_filename(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fdatadir',['remmina_file_get_datadir',['../remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5',1,'remmina_file_get_datadir(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5',1,'remmina_file_get_datadir(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fget_5fdatetime',['remmina_file_get_datetime',['../remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe',1,'remmina_file_get_datetime(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe',1,'remmina_file_get_datetime(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5ffilename',['remmina_file_get_filename',['../remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d',1,'remmina_file_get_filename(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d',1,'remmina_file_get_filename(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5ficon_5fname',['remmina_file_get_icon_name',['../remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331',1,'remmina_file_get_icon_name(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331',1,'remmina_file_get_icon_name(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fint',['remmina_file_get_int',['../remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66',1,'remmina_file_get_int(RemminaFile *remminafile, const gchar *setting, gint default_value):&#160;remmina_file.c'],['../remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66',1,'remmina_file_get_int(RemminaFile *remminafile, const gchar *setting, gint default_value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fkeyfile',['remmina_file_get_keyfile',['../remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f',1,'remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fsecret',['remmina_file_get_secret',['../remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a',1,'remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a',1,'remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fstring',['remmina_file_get_string',['../remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e',1,'remmina_file_get_string(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e',1,'remmina_file_get_string(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fload',['remmina_file_load',['../remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e',1,'remmina_file_load(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e',1,'remmina_file_load(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fmanager_2ec',['remmina_file_manager.c',['../remmina__file__manager_8c.html',1,'']]],
+ ['remmina_5ffile_5fmanager_2eh',['remmina_file_manager.h',['../remmina__file__manager_8h.html',1,'']]],
+ ['remmina_5ffile_5fmanager_5fadd_5fgroup',['remmina_file_manager_add_group',['../remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66',1,'remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fdo_5fcopy',['remmina_file_manager_do_copy',['../remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3',1,'remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5ffree_5fgroup_5ftree',['remmina_file_manager_free_group_tree',['../remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798',1,'remmina_file_manager_free_group_tree(GNode *node):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798',1,'remmina_file_manager_free_group_tree(GNode *node):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fget_5fgroup_5ftree',['remmina_file_manager_get_group_tree',['../remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857',1,'remmina_file_manager_get_group_tree(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857',1,'remmina_file_manager_get_group_tree(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fget_5fgroups',['remmina_file_manager_get_groups',['../remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d',1,'remmina_file_manager_get_groups(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d',1,'remmina_file_manager_get_groups(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5finit',['remmina_file_manager_init',['../remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72',1,'remmina_file_manager_init(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72',1,'remmina_file_manager_init(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fiterate',['remmina_file_manager_iterate',['../remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a',1,'remmina_file_manager_iterate(GFunc func, gpointer user_data):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a',1,'remmina_file_manager_iterate(GFunc func, gpointer user_data):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fload_5ffile',['remmina_file_manager_load_file',['../remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab',1,'remmina_file_manager_load_file(const gchar *filename):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab',1,'remmina_file_manager_load_file(const gchar *filename):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmultipasswd_5fchanger_5fmt',['remmina_file_multipasswd_changer_mt',['../remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2',1,'remmina_mpchange.c']]],
+ ['remmina_5ffile_5fname',['remmina_file_name',['../struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f',1,'_RemminaPref']]],
+ ['remmina_5ffile_5fnew',['remmina_file_new',['../remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892',1,'remmina_file_new(void):&#160;remmina_file.c'],['../remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892',1,'remmina_file_new(void):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fnew_5fempty',['remmina_file_new_empty',['../remmina__file_8c.html#adab087b7139756f029020a87a5438cfa',1,'remmina_file.c']]],
+ ['remmina_5ffile_5fremove_5fkey',['remmina_file_remove_key',['../remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b',1,'remmina_file.h']]],
+ ['remmina_5ffile_5fsave',['remmina_file_save',['../remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7',1,'remmina_file_save(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7',1,'remmina_file_save(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fsecret_5fschema',['remmina_file_secret_schema',['../glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f',1,'glibsecret_plugin.c']]],
+ ['remmina_5ffile_5fset_5ffilename',['remmina_file_set_filename',['../remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114',1,'remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114',1,'remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fint',['remmina_file_set_int',['../remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c',1,'remmina_file_set_int(RemminaFile *remminafile, const gchar *setting, gint value):&#160;remmina_file.c'],['../remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c',1,'remmina_file_set_int(RemminaFile *remminafile, const gchar *setting, gint value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fstring',['remmina_file_set_string',['../remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954',1,'remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954',1,'remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fstring_5fref',['remmina_file_set_string_ref',['../remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6',1,'remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6',1,'remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fstore_5fsecret_5fplugin_5fpassword',['remmina_file_store_secret_plugin_password',['../remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5',1,'remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5',1,'remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5ftouch',['remmina_file_touch',['../remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c',1,'remmina_file_touch(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c',1,'remmina_file_touch(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5funsave_5fpasswords',['remmina_file_unsave_passwords',['../remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014',1,'remmina_file_unsave_passwords(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014',1,'remmina_file_unsave_passwords(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffilezilla_5fsftp_2esh',['remmina_filezilla_sftp.sh',['../remmina__filezilla__sftp_8sh.html',1,'']]],
+ ['remmina_5ffilezilla_5fsftp_5fpki_2esh',['remmina_filezilla_sftp_pki.sh',['../remmina__filezilla__sftp__pki_8sh.html',1,'']]],
+ ['remmina_5fftp_5fclient_2ec',['remmina_ftp_client.c',['../remmina__ftp__client_8c.html',1,'']]],
+ ['remmina_5fftp_5fclient_2eh',['remmina_ftp_client.h',['../remmina__ftp__client_8h.html',1,'']]],
+ ['remmina_5fftp_5fclient_5faction_5fdelete',['remmina_ftp_client_action_delete',['../remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fdownload',['remmina_ftp_client_action_download',['../remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fhome',['remmina_ftp_client_action_home',['../remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fparent',['remmina_ftp_client_action_parent',['../remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5frefresh',['remmina_ftp_client_action_refresh',['../remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fupload',['remmina_ftp_client_action_upload',['../remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fadd_5ffile',['remmina_ftp_client_add_file',['../remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed',1,'remmina_ftp_client_add_file(RemminaFTPClient *client,...):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed',1,'remmina_ftp_client_add_file(RemminaFTPClient *client,...):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5ffiletype_5fpixbuf',['remmina_ftp_client_cell_data_filetype_pixbuf',['../remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fpermission',['remmina_ftp_client_cell_data_permission',['../remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fprogress',['remmina_ftp_client_cell_data_progress',['../remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fprogress_5fpixbuf',['remmina_ftp_client_cell_data_progress_pixbuf',['../remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fsize',['remmina_ftp_client_cell_data_size',['../remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fsize_5fprogress',['remmina_ftp_client_cell_data_size_progress',['../remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fclass_5finit',['remmina_ftp_client_class_init',['../remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fclear_5ffile_5flist',['remmina_ftp_client_clear_file_list',['../remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc',1,'remmina_ftp_client_clear_file_list(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc',1,'remmina_ftp_client_clear_file_list(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcreate_5ftoolbar',['remmina_ftp_client_create_toolbar',['../remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdestroy',['remmina_ftp_client_destroy',['../remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdir_5fon_5factivate',['remmina_ftp_client_dir_on_activate',['../remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdir_5fon_5fchanged',['remmina_ftp_client_dir_on_changed',['../remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdownload',['remmina_ftp_client_download',['../remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffile_5flist_5fon_5fbutton_5fpress',['remmina_ftp_client_file_list_on_button_press',['../remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffile_5fselection_5fon_5fchanged',['remmina_ftp_client_file_selection_on_changed',['../remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffilter_5fvisible_5ffunc',['remmina_ftp_client_filter_visible_func',['../remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5fdir',['remmina_ftp_client_get_dir',['../remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc',1,'remmina_ftp_client_get_dir(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc',1,'remmina_ftp_client_get_dir(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5fdownload_5fdir',['remmina_ftp_client_get_download_dir',['../remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5foverwrite_5fstatus',['remmina_ftp_client_get_overwrite_status',['../remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e',1,'remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e',1,'remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5ftype',['remmina_ftp_client_get_type',['../remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5fclient_5fget_5fwaiting_5ftask',['remmina_ftp_client_get_waiting_task',['../remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141',1,'remmina_ftp_client_get_waiting_task(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141',1,'remmina_ftp_client_get_waiting_task(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5finit',['remmina_ftp_client_init',['../remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fload_5fstate',['remmina_ftp_client_load_state',['../remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa',1,'remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa',1,'remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fnew',['remmina_ftp_client_new',['../remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d',1,'remmina_ftp_client_new(void):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d',1,'remmina_ftp_client_new(void):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fopen_5fdir',['remmina_ftp_client_open_dir',['../remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fpopup_5fmenu',['remmina_ftp_client_popup_menu',['../remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fsave_5fstate',['remmina_ftp_client_save_state',['../remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3',1,'remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3',1,'remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5fdir',['remmina_ftp_client_set_dir',['../remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f',1,'remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f',1,'remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5ffile_5faction_5fsensitive',['remmina_ftp_client_set_file_action_sensitive',['../remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5foverwrite_5fstatus',['remmina_ftp_client_set_overwrite_status',['../remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f',1,'remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f',1,'remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5fshow_5fhidden',['remmina_ftp_client_set_show_hidden',['../remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6',1,'remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6',1,'remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fsignals',['remmina_ftp_client_signals',['../remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fsize_5fto_5fstr',['remmina_ftp_client_size_to_str',['../remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftask_5flist_5fcell_5fon_5factivate',['remmina_ftp_client_task_list_cell_on_activate',['../remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftask_5flist_5fon_5fquery_5ftooltip',['remmina_ftp_client_task_list_on_query_tooltip',['../remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftaskid',['remmina_ftp_client_taskid',['../remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fupdate_5ftask',['remmina_ftp_client_update_task',['../remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd',1,'remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd',1,'remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fupload_5ffolder_5fon_5ftoggled',['remmina_ftp_client_upload_folder_on_toggled',['../remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fgroup',['REMMINA_FTP_FILE_COLUMN_GROUP',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fname',['REMMINA_FTP_FILE_COLUMN_NAME',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fname_5fsort',['REMMINA_FTP_FILE_COLUMN_NAME_SORT',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fpermission',['REMMINA_FTP_FILE_COLUMN_PERMISSION',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fsize',['REMMINA_FTP_FILE_COLUMN_SIZE',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5ftype',['REMMINA_FTP_FILE_COLUMN_TYPE',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fuser',['REMMINA_FTP_FILE_COLUMN_USER',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fn_5fcolumns',['REMMINA_FTP_FILE_N_COLUMNS',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fn_5ftypes',['REMMINA_FTP_FILE_N_TYPES',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5ftype_5fdir',['REMMINA_FTP_FILE_TYPE_DIR',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5ftype_5ffile',['REMMINA_FTP_FILE_TYPE_FILE',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fdonesize',['REMMINA_FTP_TASK_COLUMN_DONESIZE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5flocaldir',['REMMINA_FTP_TASK_COLUMN_LOCALDIR',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fname',['REMMINA_FTP_TASK_COLUMN_NAME',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fremotedir',['REMMINA_FTP_TASK_COLUMN_REMOTEDIR',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fsize',['REMMINA_FTP_TASK_COLUMN_SIZE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fstatus',['REMMINA_FTP_TASK_COLUMN_STATUS',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftaskid',['REMMINA_FTP_TASK_COLUMN_TASKID',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftasktype',['REMMINA_FTP_TASK_COLUMN_TASKTYPE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftooltip',['REMMINA_FTP_TASK_COLUMN_TOOLTIP',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftype',['REMMINA_FTP_TASK_COLUMN_TYPE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5ffree',['remmina_ftp_task_free',['../remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7',1,'remmina_ftp_task_free(RemminaFTPTask *task):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7',1,'remmina_ftp_task_free(RemminaFTPTask *task):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5ftask_5fn_5fcolumns',['REMMINA_FTP_TASK_N_COLUMNS',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fn_5fstatuses',['REMMINA_FTP_TASK_N_STATUSES',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fn_5ftypes',['REMMINA_FTP_TASK_N_TYPES',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5ferror',['REMMINA_FTP_TASK_STATUS_ERROR',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5ffinish',['REMMINA_FTP_TASK_STATUS_FINISH',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5frun',['REMMINA_FTP_TASK_STATUS_RUN',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5fwait',['REMMINA_FTP_TASK_STATUS_WAIT',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5ftype_5fdownload',['REMMINA_FTP_TASK_TYPE_DOWNLOAD',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5ftype_5fupload',['REMMINA_FTP_TASK_TYPE_UPLOAD',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24',1,'remmina_ftp_client.h']]],
+ ['remmina_5fgen_5frandom_5fuuid',['remmina_gen_random_uuid',['../remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e',1,'remmina_gen_random_uuid():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e',1,'remmina_gen_random_uuid():&#160;remmina_utils.c']]],
+ ['remmina_5fget_5fkeytype',['remmina_get_keytype',['../nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135',1,'nx_session.c']]],
+ ['remmina_5fgtk_5fcheck_5fversion',['remmina_gtk_check_version',['../remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3',1,'remmina_gtk_check_version(guint major, guint minor, guint micro):&#160;remmina_public.c'],['../remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3',1,'remmina_gtk_check_version(guint major, guint minor, guint micro):&#160;remmina_public.c']]],
+ ['remmina_5fgtksocket_5favailable',['remmina_gtksocket_available',['../remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f',1,'remmina_gtksocket_available():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f',1,'remmina_gtksocket_available():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5ficon',['remmina_icon',['../remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0',1,'remmina_icon.c']]],
+ ['remmina_5ficon_2ec',['remmina_icon.c',['../remmina__icon_8c.html',1,'']]],
+ ['remmina_5ficon_2eh',['remmina_icon.h',['../remmina__icon_8h.html',1,'']]],
+ ['remmina_5ficon_5fabout',['remmina_icon_about',['../remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fcreate_5fautostart_5ffile',['remmina_icon_create_autostart_file',['../remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fdestroy',['remmina_icon_destroy',['../remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1',1,'remmina_icon_destroy(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1',1,'remmina_icon_destroy(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fenable_5favahi',['remmina_icon_enable_avahi',['../remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5finit',['remmina_icon_init',['../remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58',1,'remmina_icon_init(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a741c81815e562f40672c4485172306d6',1,'remmina_icon_init(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fis_5fautostart',['remmina_icon_is_autostart',['../remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae',1,'remmina_icon_is_autostart(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae',1,'remmina_icon_is_autostart(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fis_5favailable',['remmina_icon_is_available',['../remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6',1,'remmina_icon_is_available(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6',1,'remmina_icon_is_available(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fmain',['remmina_icon_main',['../remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5factivate',['remmina_icon_on_activate',['../remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5fedit_5fitem',['remmina_icon_on_edit_item',['../remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5flaunch_5fitem',['remmina_icon_on_launch_item',['../remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5fpopup_5fmenu',['remmina_icon_on_popup_menu',['../remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopdown_5fmenu',['remmina_icon_popdown_menu',['../remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fadditional_5fmenu_5fitem',['remmina_icon_populate_additional_menu_item',['../remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fextra_5fmenu_5fitem',['remmina_icon_populate_extra_menu_item',['../remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fmenu',['remmina_icon_populate_menu',['../remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2',1,'remmina_icon_populate_menu(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2',1,'remmina_icon_populate_menu(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fpreferences',['remmina_icon_preferences',['../remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fsave_5fautostart_5ffile',['remmina_icon_save_autostart_file',['../remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fset_5fautostart',['remmina_icon_set_autostart',['../remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d',1,'remmina_icon_set_autostart(gboolean autostart):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d',1,'remmina_icon_set_autostart(gboolean autostart):&#160;remmina_icon.c']]],
+ ['remmina_5fkbtype',['remmina_kbtype',['../nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0',1,'nx_plugin.c']]],
+ ['remmina_5fkey_5fchooser_2ec',['remmina_key_chooser.c',['../remmina__key__chooser_8c.html',1,'']]],
+ ['remmina_5fkey_5fchooser_2eh',['remmina_key_chooser.h',['../remmina__key__chooser_8h.html',1,'']]],
+ ['remmina_5fkey_5fchooser_5fdialog_5fon_5fkey_5fpress',['remmina_key_chooser_dialog_on_key_press',['../remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46',1,'remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fget_5fkeyval',['remmina_key_chooser_get_keyval',['../remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474',1,'remmina_key_chooser_get_keyval(const gchar *value):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474',1,'remmina_key_chooser_get_keyval(const gchar *value):&#160;remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fget_5fvalue',['remmina_key_chooser_get_value',['../remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f',1,'remmina_key_chooser_get_value(guint keyval, guint state):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f',1,'remmina_key_chooser_get_value(guint keyval, guint state):&#160;remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fnew',['remmina_key_chooser_new',['../remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94',1,'remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36',1,'remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers):&#160;remmina_key_chooser.c']]],
+ ['remmina_5fkeymap_5ffile',['remmina_keymap_file',['../remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743',1,'remmina_pref.c']]],
+ ['remmina_5fkeymap_5ftable',['remmina_keymap_table',['../remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46',1,'remmina_pref.c']]],
+ ['remmina_5flog_2ec',['remmina_log.c',['../remmina__log_8c.html',1,'']]],
+ ['remmina_5flog_2eh',['remmina_log.h',['../remmina__log_8h.html',1,'']]],
+ ['remmina_5flog_5fend',['remmina_log_end',['../remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c',1,'remmina_log.c']]],
+ ['remmina_5flog_5fon_5fkeypress',['remmina_log_on_keypress',['../remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1',1,'remmina_log.c']]],
+ ['remmina_5flog_5fprint',['remmina_log_print',['../remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa',1,'remmina_log_print(const gchar *text):&#160;remmina_log.c'],['../remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa',1,'remmina_log_print(const gchar *text):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fprint_5freal',['remmina_log_print_real',['../remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1',1,'remmina_log.c']]],
+ ['remmina_5flog_5fprintf',['remmina_log_printf',['../remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8',1,'remmina_log_printf(const gchar *fmt,...):&#160;remmina_log.c'],['../remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8',1,'remmina_log_printf(const gchar *fmt,...):&#160;remmina_log.c']]],
+ ['remmina_5flog_5frunning',['remmina_log_running',['../remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5',1,'remmina_log_running(void):&#160;remmina_log.c'],['../remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5',1,'remmina_log_running(void):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fscroll_5fto_5fend',['remmina_log_scroll_to_end',['../remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b',1,'remmina_log.c']]],
+ ['remmina_5flog_5fstart',['remmina_log_start',['../remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d',1,'remmina_log_start(void):&#160;remmina_log.c'],['../remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683',1,'remmina_log_start(void):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5fget_5ftype',['remmina_log_window_get_type',['../remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e',1,'remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5finit',['remmina_log_window_init',['../remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd',1,'remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5fnew',['remmina_log_window_new',['../remmina__log_8c.html#a070042aa580b708536dc793336722660',1,'remmina_log.c']]],
+ ['remmina_5fmain_2ec',['remmina_main.c',['../remmina__main_8c.html',1,'']]],
+ ['remmina_5fmain_2eh',['remmina_main.h',['../remmina__main_8h.html',1,'']]],
+ ['remmina_5fmain_5faction_5ftools_5fimport_5fon_5fresponse',['remmina_main_action_tools_import_on_response',['../remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fadd_5ftool_5fplugin',['remmina_main_add_tool_plugin',['../remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fclear_5fselection_5fdata',['remmina_main_clear_selection_data',['../remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fdestroy',['remmina_main_destroy',['../remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c',1,'remmina_main_destroy():&#160;remmina_main.c'],['../remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8',1,'remmina_main_destroy(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fdexit',['remmina_main_dexit',['../remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fexpand_5fgroup',['remmina_main_expand_group',['../remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fexpand_5fgroup_5ftraverse',['remmina_main_expand_group_traverse',['../remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5feditor_5fdestroy',['remmina_main_file_editor_destroy',['../remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5fbutton_5fpress',['remmina_main_file_list_on_button_press',['../remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5fkey_5fpress',['remmina_main_file_list_on_key_press',['../remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5frow_5factivated',['remmina_main_file_list_on_row_activated',['../remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5fmodel_5fon_5fsort',['remmina_main_file_model_on_sort',['../remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffilter_5fvisible_5ffunc',['remmina_main_filter_visible_func',['../remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fget_5fwindow',['remmina_main_get_window',['../remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e',1,'remmina_main_get_window():&#160;remmina_main.c'],['../remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc',1,'remmina_main_get_window(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fimport_5ffile_5flist',['remmina_main_import_file_list',['../remmina__main_8c.html#ac767825cb87a34531306cfb587216d20',1,'remmina_main.c']]],
+ ['remmina_5fmain_5finit',['remmina_main_init',['../remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5flist_5fcallback',['remmina_main_load_file_list_callback',['../remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5fcallback',['remmina_main_load_file_tree_callback',['../remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5ffind',['remmina_main_load_file_tree_find',['../remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5fgroup',['remmina_main_load_file_tree_group',['../remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5ftraverse',['remmina_main_load_file_tree_traverse',['../remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffiles',['remmina_main_load_files',['../remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffiles_5fcb',['remmina_main_load_files_cb',['../remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fnew',['remmina_main_new',['../remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01',1,'remmina_main_new(void):&#160;remmina_main.c'],['../remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7',1,'remmina_main_new(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fabout',['remmina_main_on_action_application_about',['../remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc',1,'remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc',1,'remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fdefault',['remmina_main_on_action_application_default',['../remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1',1,'remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1',1,'remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fmpchange',['remmina_main_on_action_application_mpchange',['../remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229',1,'remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229',1,'remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fnews',['remmina_main_on_action_application_news',['../remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6',1,'remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6',1,'remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fplugins',['remmina_main_on_action_application_plugins',['../remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc',1,'remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc',1,'remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fpreferences',['remmina_main_on_action_application_preferences',['../remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92',1,'remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92',1,'remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fquit',['remmina_main_on_action_application_quit',['../remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a',1,'remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a',1,'remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fcollapse',['remmina_main_on_action_collapse',['../remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a',1,'remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a',1,'remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fconnect',['remmina_main_on_action_connection_connect',['../remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d',1,'remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d',1,'remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fcopy',['remmina_main_on_action_connection_copy',['../remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1',1,'remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1',1,'remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fdelete',['remmina_main_on_action_connection_delete',['../remmina__main_8c.html#a10e574723222f5df9db456977e62a093',1,'remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a10e574723222f5df9db456977e62a093',1,'remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fedit',['remmina_main_on_action_connection_edit',['../remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc',1,'remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc',1,'remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fexternal_5ftools',['remmina_main_on_action_connection_external_tools',['../remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1',1,'remmina_main_on_action_connection_external_tools(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1',1,'remmina_main_on_action_connection_external_tools(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fnew',['remmina_main_on_action_connection_new',['../remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af',1,'remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af',1,'remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fexpand',['remmina_main_on_action_expand',['../remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8',1,'remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8',1,'remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fcommunity',['remmina_main_on_action_help_community',['../remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32',1,'remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32',1,'remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fdebug',['remmina_main_on_action_help_debug',['../remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc',1,'remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc',1,'remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fdonations',['remmina_main_on_action_help_donations',['../remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277',1,'remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277',1,'remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fhomepage',['remmina_main_on_action_help_homepage',['../remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a',1,'remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a',1,'remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fwiki',['remmina_main_on_action_help_wiki',['../remmina__main_8c.html#a0c32fe66988056b353220128611b9116',1,'remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0c32fe66988056b353220128611b9116',1,'remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5ftools_5fexport',['remmina_main_on_action_tools_export',['../remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d',1,'remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d',1,'remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5ftools_5fimport',['remmina_main_on_action_tools_import',['../remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c',1,'remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c',1,'remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdate_5fcolumn_5fsort_5fclicked',['remmina_main_on_date_column_sort_clicked',['../remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdelete_5fevent',['remmina_main_on_delete_event',['../remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdrag_5fdata_5freceived',['remmina_main_on_drag_data_received',['../remmina__main_8c.html#adf073486149762f547504020484bff70',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fsearch_5ftoggle',['remmina_main_on_search_toggle',['../remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fshow',['remmina_main_on_show',['../remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fview_5ftoggle',['remmina_main_on_view_toggle',['../remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fwindow_5fstate_5fevent',['remmina_main_on_window_state_event',['../remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fenter',['remmina_main_quick_search_enter',['../remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fon_5fchanged',['remmina_main_quick_search_on_changed',['../remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fon_5ficon_5fpress',['remmina_main_quick_search_on_icon_press',['../remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquickconnect',['remmina_main_quickconnect',['../remmina__main_8c.html#a802458852abacebfb16f1f4295806a01',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquickconnect_5fon_5fclick',['remmina_main_quickconnect_on_click',['../remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d',1,'remmina_main.c']]],
+ ['remmina_5fmain_5frmodestroy',['remmina_main_rmodestroy',['../remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fbefore_5fdestroy',['remmina_main_save_before_destroy',['../remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df',1,'remmina_main_save_before_destroy():&#160;remmina_main.c'],['../remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5',1,'remmina_main_save_before_destroy(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fexpanded_5fgroup',['remmina_main_save_expanded_group',['../remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fexpanded_5fgroup_5ffunc',['remmina_main_save_expanded_group_func',['../remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fsize',['remmina_main_save_size',['../remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fselect_5ffile',['remmina_main_select_file',['../remmina__main_8c.html#aa20963aed43242994c88d5a97a546355',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fselection_5ffunc',['remmina_main_selection_func',['../remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fshow_5fsnap_5fwelcome',['remmina_main_show_snap_welcome',['../remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fshow_5fwarning_5fdialog',['remmina_main_show_warning_dialog',['../remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7',1,'remmina_main_show_warning_dialog(const gchar *message):&#160;remmina_main.c'],['../remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7',1,'remmina_main_show_warning_dialog(const gchar *message):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fupdate_5ffile_5fdatetime',['remmina_main_update_file_datetime',['../remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a',1,'remmina_main_update_file_datetime(RemminaFile *file):&#160;remmina_main.c'],['../remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a',1,'remmina_main_update_file_datetime(RemminaFile *file):&#160;remmina_main.c']]],
+ ['remmina_5fmarshal_5fboolean_5f_5fint',['remmina_marshal_BOOLEAN__INT',['../remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99',1,'remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data):&#160;remmina_marshals.c'],['../remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384',1,'remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data):&#160;remmina_marshals.h']]],
+ ['remmina_5fmarshal_5fboolean_5f_5fint_5fstring',['remmina_marshal_BOOLEAN__INT_STRING',['../remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b',1,'remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data):&#160;remmina_marshals.c'],['../remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761',1,'remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data):&#160;remmina_marshals.h']]],
+ ['remmina_5fmarshals_2ec',['remmina_marshals.c',['../remmina__marshals_8c.html',1,'']]],
+ ['remmina_5fmarshals_2eh',['remmina_marshals.h',['../remmina__marshals_8h.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_2ec',['remmina_masterthread_exec.c',['../remmina__masterthread__exec_8c.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_2eh',['remmina_masterthread_exec.h',['../remmina__masterthread__exec_8h.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_5fand_5fwait',['remmina_masterthread_exec_and_wait',['../remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d',1,'remmina_masterthread_exec_and_wait(RemminaMTExecData *d):&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d',1,'remmina_masterthread_exec_and_wait(RemminaMTExecData *d):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fcallback',['remmina_masterthread_exec_callback',['../remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f',1,'remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fcleanup_5fhandler',['remmina_masterthread_exec_cleanup_handler',['../remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c',1,'remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fdata',['remmina_masterthread_exec_data',['../structremmina__masterthread__exec__data.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_5fis_5fmain_5fthread',['remmina_masterthread_exec_is_main_thread',['../remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4',1,'remmina_masterthread_exec_is_main_thread():&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c',1,'remmina_masterthread_exec_is_main_thread(void):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fsave_5fmain_5fthread_5fid',['remmina_masterthread_exec_save_main_thread_id',['../remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e',1,'remmina_masterthread_exec_save_main_thread_id():&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850',1,'remmina_masterthread_exec_save_main_thread_id(void):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmessage_5fpanel_2ec',['remmina_message_panel.c',['../remmina__message__panel_8c.html',1,'']]],
+ ['remmina_5fmessage_5fpanel_2eh',['remmina_message_panel.h',['../remmina__message__panel_8h.html',1,'']]],
+ ['remmina_5fmessage_5fpanel_5fbutton_5fclicked_5fcallback',['remmina_message_panel_button_clicked_callback',['../remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fbuttontofocus',['REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fcacertfile',['REMMINA_MESSAGE_PANEL_CACERTFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fcacrlfile',['REMMINA_MESSAGE_PANEL_CACRLFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fclass_5finit',['remmina_message_panel_class_init',['../remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fclientcertfile',['REMMINA_MESSAGE_PANEL_CLIENTCERTFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fclientkeyfile',['REMMINA_MESSAGE_PANEL_CLIENTKEYFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fdomain',['REMMINA_MESSAGE_PANEL_DOMAIN',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5ffilename',['remmina_message_panel_field_get_filename',['../remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4',1,'remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4',1,'remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5fstring',['remmina_message_panel_field_get_string',['../remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4',1,'remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4',1,'remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5fswitch_5fstate',['remmina_message_panel_field_get_switch_state',['../remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa',1,'remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa',1,'remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5ffilename',['remmina_message_panel_field_set_filename',['../remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff',1,'remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff',1,'remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5fstring',['remmina_message_panel_field_set_string',['../remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901',1,'remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901',1,'remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5fswitch',['remmina_message_panel_field_set_switch',['../remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f',1,'remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f',1,'remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fdomain',['REMMINA_MESSAGE_PANEL_FLAG_DOMAIN',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fsavepassword',['REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fusername',['REMMINA_MESSAGE_PANEL_FLAG_USERNAME',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fusername_5freadonly',['REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5ffocus_5fauth_5fentry',['remmina_message_panel_focus_auth_entry',['../remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d',1,'remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d',1,'remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5finit',['remmina_message_panel_init',['../remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fmaxwidgetid',['REMMINA_MESSAGE_PANEL_MAXWIDGETID',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fnew',['remmina_message_panel_new',['../remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55',1,'remmina_message_panel_new():&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294',1,'remmina_message_panel_new(void):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fpassword',['REMMINA_MESSAGE_PANEL_PASSWORD',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fresponse',['remmina_message_panel_response',['../remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40',1,'remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40',1,'remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsavepassword',['REMMINA_MESSAGE_PANEL_SAVEPASSWORD',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fauth',['remmina_message_panel_setup_auth',['../remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667',1,'remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667',1,'remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fauth_5fx509',['remmina_message_panel_setup_auth_x509',['../remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407',1,'remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407',1,'remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fmessage',['remmina_message_panel_setup_message',['../remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434',1,'remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434',1,'remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fprogress',['remmina_message_panel_setup_progress',['../remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620',1,'remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620',1,'remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fquestion',['remmina_message_panel_setup_question',['../remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32',1,'remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32',1,'remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fusername',['REMMINA_MESSAGE_PANEL_USERNAME',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25',1,'remmina_message_panel.h']]],
+ ['remmina_5fmpchange_2ec',['remmina_mpchange.c',['../remmina__mpchange_8c.html',1,'']]],
+ ['remmina_5fmpchange_2eh',['remmina_mpchange.h',['../remmina__mpchange_8h.html',1,'']]],
+ ['remmina_5fmpchange_5fcheckbox_5ftoggle',['remmina_mpchange_checkbox_toggle',['../remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fdochange',['remmina_mpchange_dochange',['../remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fdochange_5fclicked',['remmina_mpchange_dochange_clicked',['../remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5ffieldcompare',['remmina_mpchange_fieldcompare',['../remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5ffile_5flist_5fcallback',['remmina_mpchange_file_list_callback',['../remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fschedule',['remmina_mpchange_schedule',['../remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960',1,'remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password):&#160;remmina_mpchange.c'],['../remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed',1,'remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password):&#160;remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fsearchfield_5fchanged',['remmina_mpchange_searchfield_changed',['../remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fsearchfield_5fchanged_5fto',['remmina_mpchange_searchfield_changed_to',['../remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fstopsearch',['remmina_mpchange_stopsearch',['../remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a',1,'remmina_mpchange.c']]],
+ ['remmina_5fnslookup_2esh',['remmina_nslookup.sh',['../remmina__nslookup_8sh.html',1,'']]],
+ ['remmina_5fnx_5fevent_5fattach',['REMMINA_NX_EVENT_ATTACH',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fcancel',['REMMINA_NX_EVENT_CANCEL',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5frestore',['REMMINA_NX_EVENT_RESTORE',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fstart',['REMMINA_NX_EVENT_START',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fterminate',['REMMINA_NX_EVENT_TERMINATE',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5finit_5fmutex',['remmina_nx_init_mutex',['../nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd',1,'nx_plugin.c']]],
+ ['remmina_5fnx_5fsession_5fadd_5fcommon_5fparameters',['remmina_nx_session_add_common_parameters',['../nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fadd_5fparameter',['remmina_nx_session_add_parameter',['../nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347',1,'remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...):&#160;nx_session.c'],['../nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347',1,'remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fallow_5fstart',['remmina_nx_session_allow_start',['../nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef',1,'remmina_nx_session_allow_start(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef',1,'remmina_nx_session_allow_start(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fattach',['remmina_nx_session_attach',['../nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d',1,'remmina_nx_session_attach(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d',1,'remmina_nx_session_attach(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fbye',['remmina_nx_session_bye',['../nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea',1,'remmina_nx_session_bye(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea',1,'remmina_nx_session_bye(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fclear_5ferror',['remmina_nx_session_clear_error',['../nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866',1,'remmina_nx_session_clear_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866',1,'remmina_nx_session_clear_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fdisplay',['REMMINA_NX_SESSION_COLUMN_DISPLAY',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fid',['REMMINA_NX_SESSION_COLUMN_ID',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fname',['REMMINA_NX_SESSION_COLUMN_NAME',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fstatus',['REMMINA_NX_SESSION_COLUMN_STATUS',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5ftype',['REMMINA_NX_SESSION_COLUMN_TYPE',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fexpect_5fstatus',['remmina_nx_session_expect_status',['../nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fexpect_5fstatus2',['remmina_nx_session_expect_status2',['../nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ffree',['remmina_nx_session_free',['../nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3',1,'remmina_nx_session_free(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3',1,'remmina_nx_session_free(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5ferror',['remmina_nx_session_get_error',['../nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e',1,'remmina_nx_session_get_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e',1,'remmina_nx_session_get_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fline',['remmina_nx_session_get_line',['../nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fproxy_5foption',['remmina_nx_session_get_proxy_option',['../nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fresponse',['remmina_nx_session_get_response',['../nx__session_8c.html#a880c07dbd498746d06490063159baa4c',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fhas_5ferror',['remmina_nx_session_has_error',['../nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9',1,'remmina_nx_session_has_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9',1,'remmina_nx_session_has_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5finvoke_5fproxy',['remmina_nx_session_invoke_proxy',['../nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0',1,'remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data):&#160;nx_session.c'],['../nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0',1,'remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5ffirst',['remmina_nx_session_iter_first',['../nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b',1,'remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c'],['../nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b',1,'remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fget',['remmina_nx_session_iter_get',['../nx__session_8c.html#a5d6f81a44339efa85a0048f759207825',1,'remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column):&#160;nx_session.c'],['../nx__session_8h.html#a5d6f81a44339efa85a0048f759207825',1,'remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fnext',['remmina_nx_session_iter_next',['../nx__session_8c.html#a7d021133105bd538af31817eff263324',1,'remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c'],['../nx__session_8h.html#a7d021133105bd538af31817eff263324',1,'remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fset',['remmina_nx_session_iter_set',['../nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d',1,'remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data):&#160;nx_session.c'],['../nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d',1,'remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5flist',['remmina_nx_session_list',['../nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76',1,'remmina_nx_session_list(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76',1,'remmina_nx_session_list(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5flogin',['remmina_nx_session_login',['../nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b',1,'remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password):&#160;nx_session.c'],['../nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b',1,'remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fmain',['remmina_nx_session_manager_main',['../nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fon_5fresponse',['remmina_nx_session_manager_on_response',['../nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fon_5frow_5factivated',['remmina_nx_session_manager_on_row_activated',['../nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fselection_5ffunc',['remmina_nx_session_manager_selection_func',['../nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fsend_5fsignal',['remmina_nx_session_manager_send_signal',['../nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fset_5fsensitive',['remmina_nx_session_manager_set_sensitive',['../nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fstart',['remmina_nx_session_manager_start',['../nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e',1,'remmina_nx_session_manager_start(RemminaProtocolWidget *gp):&#160;nx_session_manager.c'],['../nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5',1,'remmina_nx_session_manager_start(RemminaProtocolWidget *gp):&#160;nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fn_5fcolumns',['REMMINA_NX_SESSION_N_COLUMNS',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fnew',['remmina_nx_session_new',['../nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c',1,'remmina_nx_session_new(void):&#160;nx_session.c'],['../nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c',1,'remmina_nx_session_new(void):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fopen',['remmina_nx_session_open',['../nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b',1,'remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata):&#160;nx_session.c'],['../nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b',1,'remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fline',['remmina_nx_session_parse_line',['../nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fresponse',['remmina_nx_session_parse_response',['../nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fsession_5flist_5fline',['remmina_nx_session_parse_session_list_line',['../nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5frestore',['remmina_nx_session_restore',['../nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33',1,'remmina_nx_session_restore(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33',1,'remmina_nx_session_restore(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fsend_5fcommand',['remmina_nx_session_send_command',['../nx__session_8c.html#a663b5b339b919527db0c7467123c7f62',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fsend_5fsession_5fcommand',['remmina_nx_session_send_session_command',['../nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5fapplication_5ferror',['remmina_nx_session_set_application_error',['../nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5fencryption',['remmina_nx_session_set_encryption',['../nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9',1,'remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption):&#160;nx_session.c'],['../nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9',1,'remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5ferror',['remmina_nx_session_set_error',['../nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5flocalport',['remmina_nx_session_set_localport',['../nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5',1,'remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport):&#160;nx_session.c'],['../nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5',1,'remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5flog_5fcallback',['remmina_nx_session_set_log_callback',['../nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7',1,'remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback):&#160;nx_session.c'],['../nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7',1,'remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5ftree_5fview',['remmina_nx_session_set_tree_view',['../nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41',1,'remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree):&#160;nx_session.c'],['../nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41',1,'remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fstart',['remmina_nx_session_start',['../nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6',1,'remmina_nx_session_start(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6',1,'remmina_nx_session_start(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fterminate',['remmina_nx_session_terminate',['../nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c',1,'remmina_nx_session_terminate(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c',1,'remmina_nx_session_terminate(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ftunnel_5fmain_5fthread',['remmina_nx_session_tunnel_main_thread',['../nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ftunnel_5fopen',['remmina_nx_session_tunnel_open',['../nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d',1,'remmina_nx_session_tunnel_open(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d',1,'remmina_nx_session_tunnel_open(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fwindow_5fid_5farray',['remmina_nx_window_id_array',['../nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f',1,'nx_plugin.c']]],
+ ['remmina_5fon_5fcommand_5fline',['remmina_on_command_line',['../remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914',1,'remmina.c']]],
+ ['remmina_5fon_5flocal_5fcmdline',['remmina_on_local_cmdline',['../remmina_8c.html#a9e8319f901232eb5fada98335217979c',1,'remmina.c']]],
+ ['remmina_5fon_5fstartup',['remmina_on_startup',['../remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a',1,'remmina.c']]],
+ ['remmina_5foptions',['remmina_options',['../remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5',1,'remmina.c']]],
+ ['remmina_5fping_2esh',['remmina_ping.sh',['../remmina__ping_8sh.html',1,'']]],
+ ['remmina_5fplugin',['remmina_plugin',['../exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;exec_plugin.c'],['../st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;st_plugin.c'],['../plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;plugin.c'],['../www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;www_plugin.c']]],
+ ['remmina_5fplugin_2eh',['remmina_plugin.h',['../remmina__plugin_8h.html',1,'']]],
+ ['remmina_5fplugin_5fentry',['remmina_plugin_entry',['../exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;exec_plugin.c'],['../kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;kwallet_plugin_main.c'],['../nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;nx_plugin.c'],['../rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;rdp_plugin.c'],['../glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;glibsecret_plugin.c'],['../spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;spice_plugin.c'],['../st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;st_plugin.c'],['../telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;telepathy_plugin.c'],['../plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;plugin.c'],['../vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;vnc_plugin.c'],['../www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;www_plugin.c'],['../xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5fbasic_5fsettings',['remmina_plugin_exec_basic_settings',['../exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5fclose',['remmina_plugin_exec_close',['../exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5finit',['remmina_plugin_exec_init',['../exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5frun',['remmina_plugin_exec_run',['../exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret',['remmina_plugin_glibsecret',['../glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fdelete_5fpassword',['remmina_plugin_glibsecret_delete_password',['../glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fget_5fpassword',['remmina_plugin_glibsecret_get_password',['../glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5finit',['remmina_plugin_glibsecret_init',['../glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fis_5fservice_5favailable',['remmina_plugin_glibsecret_is_service_available',['../glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fstore_5fpassword',['remmina_plugin_glibsecret_store_password',['../glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5funlock_5fsecret_5fservice',['remmina_plugin_glibsecret_unlock_secret_service',['../glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fkwallet',['remmina_plugin_kwallet',['../kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fdelete_5fpassword',['remmina_plugin_kwallet_delete_password',['../kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fget_5fpassword',['remmina_plugin_kwallet_get_password',['../kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5finit',['remmina_plugin_kwallet_init',['../kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fis_5fservice_5favailable',['remmina_plugin_kwallet_is_service_available',['../kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fstore_5fpassword',['remmina_plugin_kwallet_store_password',['../kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fmanager_2ec',['remmina_plugin_manager.c',['../remmina__plugin__manager_8c.html',1,'']]],
+ ['remmina_5fplugin_5fmanager_2eh',['remmina_plugin_manager.h',['../remmina__plugin__manager_8h.html',1,'']]],
+ ['remmina_5fplugin_5fmanager_5fcompare_5ffunc',['remmina_plugin_manager_compare_func',['../remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5ffor_5feach_5fplugin',['remmina_plugin_manager_for_each_plugin',['../remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031',1,'remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031',1,'remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5ffor_5feach_5fplugin_5fstdout',['remmina_plugin_manager_for_each_plugin_stdout',['../remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a',1,'remmina_plugin_manager.h']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fcanonical_5fsetting_5fname',['remmina_plugin_manager_get_canonical_setting_name',['../remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55',1,'remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55',1,'remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fexport_5ffile_5fhandler',['remmina_plugin_manager_get_export_file_handler',['../remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07',1,'remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07',1,'remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fimport_5ffile_5fhandler',['remmina_plugin_manager_get_import_file_handler',['../remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076',1,'remmina_plugin_manager_get_import_file_handler(const gchar *file):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076',1,'remmina_plugin_manager_get_import_file_handler(const gchar *file):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fplugin',['remmina_plugin_manager_get_plugin',['../remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932',1,'remmina_plugin_manager_get_plugin(RemminaPluginType type, const gchar *name):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932',1,'remmina_plugin_manager_get_plugin(RemminaPluginType type, const gchar *name):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fsecret_5fplugin',['remmina_plugin_manager_get_secret_plugin',['../remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4',1,'remmina_plugin_manager_get_secret_plugin(void):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4',1,'remmina_plugin_manager_get_secret_plugin(void):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5finit',['remmina_plugin_manager_init',['../remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd',1,'remmina_plugin_manager_init(void):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd',1,'remmina_plugin_manager_init(void):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fis_5fencrypted_5fsetting',['remmina_plugin_manager_is_encrypted_setting',['../remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b',1,'remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b',1,'remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fload_5fplugin',['remmina_plugin_manager_load_plugin',['../remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fquery_5ffeature_5fby_5ftype',['remmina_plugin_manager_query_feature_by_type',['../remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080',1,'remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080',1,'remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fregister_5fplugin',['remmina_plugin_manager_register_plugin',['../remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fservice',['remmina_plugin_manager_service',['../remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10',1,'remmina_plugin_manager_service():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10',1,'remmina_plugin_manager_service():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow',['remmina_plugin_manager_show',['../remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276',1,'remmina_plugin_manager_show(GtkWindow *parent):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276',1,'remmina_plugin_manager_show(GtkWindow *parent):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5ffor_5feach',['remmina_plugin_manager_show_for_each',['../remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5ffor_5feach_5fstdout',['remmina_plugin_manager_show_for_each_stdout',['../remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5fstdout',['remmina_plugin_manager_show_stdout',['../remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d',1,'remmina_plugin_manager_show_stdout():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d',1,'remmina_plugin_manager_show_stdout():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fnx',['remmina_plugin_nx',['../nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fadvanced_5fsettings',['remmina_plugin_nx_advanced_settings',['../nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fbasic_5fsettings',['remmina_plugin_nx_basic_settings',['../nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fcall_5ffeature',['remmina_plugin_nx_call_feature',['../nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fclose_5fconnection',['remmina_plugin_nx_close_connection',['../nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fdummy_5fhandler',['remmina_plugin_nx_dummy_handler',['../nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5ffeatures',['remmina_plugin_nx_features',['../nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5finit',['remmina_plugin_nx_init',['../nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmain',['remmina_plugin_nx_main',['../nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmain_5fthread',['remmina_plugin_nx_main_thread',['../nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmonitor_5fcreate_5fnotify',['remmina_plugin_nx_monitor_create_notify',['../nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fplug_5fadded',['remmina_plugin_nx_on_plug_added',['../nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fplug_5fremoved',['remmina_plugin_nx_on_plug_removed',['../nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fproxy_5fexit',['remmina_plugin_nx_on_proxy_exit',['../nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fopen_5fconnection',['remmina_plugin_nx_open_connection',['../nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fquery_5ffeature',['remmina_plugin_nx_query_feature',['../nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fremove_5fwindow_5fid',['remmina_plugin_nx_remove_window_id',['../nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fsend_5fctrlaltdel',['remmina_plugin_nx_send_ctrlaltdel',['../nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fservice',['remmina_plugin_nx_service',['../nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf',1,'remmina_plugin_nx_service():&#160;nx_plugin.c'],['../nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf',1,'remmina_plugin_nx_service():&#160;nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fssh_5fauth_5fcallback',['remmina_plugin_nx_ssh_auth_callback',['../nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fstart_5fcreate_5fnotify',['remmina_plugin_nx_start_create_notify',['../nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fstart_5fsession',['remmina_plugin_nx_start_session',['../nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5ftry_5fwindow_5fid',['remmina_plugin_nx_try_window_id',['../nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fwait_5fsignal',['remmina_plugin_nx_wait_signal',['../nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5frdp_5fevent',['remmina_plugin_rdp_event',['../structremmina__plugin__rdp__event.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fkeymap_5fentry',['remmina_plugin_rdp_keymap_entry',['../structremmina__plugin__rdp__keymap__entry.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fui_5fobject',['remmina_plugin_rdp_ui_object',['../structremmina__plugin__rdp__ui__object.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fversion',['remmina_plugin_rdp_version',['../rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4',1,'rdp_plugin.c']]],
+ ['remmina_5fplugin_5fservice',['remmina_plugin_service',['../remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;remmina_sftp_plugin.c'],['../remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;remmina_ssh_plugin.c'],['../exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;exec_plugin.c'],['../kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;kwallet_plugin_main.c'],['../rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;rdp_plugin.c'],['../rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;rdp_plugin.c'],['../glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;glibsecret_plugin.c'],['../spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;spice_plugin.c'],['../st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;st_plugin.c'],['../plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;plugin.c'],['../vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;vnc_plugin.c'],['../www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;www_plugin.c'],['../xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp',['remmina_plugin_sftp',['../remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fcall_5ffeature',['remmina_plugin_sftp_call_feature',['../remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fclient_5fon_5frealize',['remmina_plugin_sftp_client_on_realize',['../remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fclose_5fconnection',['remmina_plugin_sftp_close_connection',['../remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5ffeatures',['remmina_plugin_sftp_features',['../remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5finit',['remmina_plugin_sftp_init',['../remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fmain_5fthread',['remmina_plugin_sftp_main_thread',['../remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fopen_5fconnection',['remmina_plugin_sftp_open_connection',['../remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fquery_5ffeature',['remmina_plugin_sftp_query_feature',['../remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fstart_5fdirect_5ftunnel',['remmina_plugin_sftp_start_direct_tunnel',['../remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917',1,'remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport):&#160;remmina_sftp_plugin.c'],['../remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917',1,'remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport):&#160;remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fspice',['remmina_plugin_spice',['../spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fadvanced_5fsettings',['remmina_plugin_spice_advanced_settings',['../spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fask_5fauth',['remmina_plugin_spice_ask_auth',['../spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fbasic_5fsettings',['remmina_plugin_spice_basic_settings',['../spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fcall_5ffeature',['remmina_plugin_spice_call_feature',['../spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fchannel_5fnew_5fcb',['remmina_plugin_spice_channel_new_cb',['../spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fclose_5fconnection',['remmina_plugin_spice_close_connection',['../spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fdisplay_5fready_5fcb',['remmina_plugin_spice_display_ready_cb',['../spice__plugin_8c.html#a0524df751040673aec5d62839c76a438',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fdisableclipboard',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fresizeguest',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fviewonly',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fscale',['REMMINA_PLUGIN_SPICE_FEATURE_SCALE',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5ftool_5fsendctrlaltdel',['REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5ftool_5fusbredir',['REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeatures',['remmina_plugin_spice_features',['../spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fcancel_5fcb',['remmina_plugin_spice_file_transfer_cancel_cb',['../spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fdialog_5fresponse_5fcb',['remmina_plugin_spice_file_transfer_dialog_response_cb',['../spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5ffinished_5fcb',['remmina_plugin_spice_file_transfer_finished_cb',['../spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fnew_5fcb',['remmina_plugin_spice_file_transfer_new_cb',['../spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c',1,'remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *, SpiceFileTransferTask *, RemminaProtocolWidget *):&#160;spice_plugin_file_transfer.c'],['../spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9',1,'remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *main_channel, SpiceFileTransferTask *task, RemminaProtocolWidget *gp):&#160;spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fprogress_5fcb',['remmina_plugin_spice_file_transfer_progress_cb',['../spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5finit',['remmina_plugin_spice_init',['../spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fkeystroke',['remmina_plugin_spice_keystroke',['../spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fmain_5fchannel_5fevent_5fcb',['remmina_plugin_spice_main_channel_event_cb',['../spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fopen_5fconnection',['remmina_plugin_spice_open_connection',['../spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fquery_5ffeature',['remmina_plugin_spice_query_feature',['../spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fselect_5fusb_5fdevices',['remmina_plugin_spice_select_usb_devices',['../spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4',1,'remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *):&#160;spice_plugin_usb.c'],['../spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b',1,'remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *gp):&#160;spice_plugin_usb.c']]],
+ ['remmina_5fplugin_5fspice_5fsend_5fctrlaltdel',['remmina_plugin_spice_send_ctrlaltdel',['../spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fupdate_5fscale',['remmina_plugin_spice_update_scale',['../spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fusb_5fconnect_5ffailed_5fcb',['remmina_plugin_spice_usb_connect_failed_cb',['../spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b',1,'spice_plugin_usb.c']]],
+ ['remmina_5fplugin_5fspice_5fxfer_5fwidgets_5ffree',['remmina_plugin_spice_xfer_widgets_free',['../spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5fxfer_5fwidgets_5fnew',['remmina_plugin_spice_xfer_widgets_new',['../spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fssh',['remmina_plugin_ssh',['../remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fcall_5ffeature',['remmina_plugin_ssh_call_feature',['../remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fclose_5fconnection',['remmina_plugin_ssh_close_connection',['../remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5ffeatures',['remmina_plugin_ssh_features',['../remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5finit',['remmina_plugin_ssh_init',['../remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fmain_5fthread',['remmina_plugin_ssh_main_thread',['../remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fon_5ffocus_5fin',['remmina_plugin_ssh_on_focus_in',['../remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fon_5fsize_5fallocate',['remmina_plugin_ssh_on_size_allocate',['../remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fopen_5fconnection',['remmina_plugin_ssh_open_connection',['../remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fpopup_5fui',['remmina_plugin_ssh_popup_ui',['../remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fquery_5ffeature',['remmina_plugin_ssh_query_feature',['../remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fset_5fvte_5fpref',['remmina_plugin_ssh_set_vte_pref',['../remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fcopy_5fclipboard',['remmina_plugin_ssh_vte_copy_clipboard',['../remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146',1,'remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146',1,'remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fpaste_5fclipboard',['remmina_plugin_ssh_vte_paste_clipboard',['../remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146',1,'remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146',1,'remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fsave_5fsession',['remmina_plugin_ssh_vte_save_session',['../remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fselect_5fall',['remmina_plugin_ssh_vte_select_all',['../remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505',1,'remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505',1,'remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fterminal_5fset_5fencoding_5fand_5fpty',['remmina_plugin_ssh_vte_terminal_set_encoding_and_pty',['../remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce',1,'remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce',1,'remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fadvanced_5fsettings',['remmina_plugin_st_advanced_settings',['../st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fbasic_5fsettings',['remmina_plugin_st_basic_settings',['../st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fclose_5fconnection',['remmina_plugin_st_close_connection',['../st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5finit',['remmina_plugin_st_init',['../st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fon_5fplug_5fadded',['remmina_plugin_st_on_plug_added',['../st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fon_5fplug_5fremoved',['remmina_plugin_st_on_plug_removed',['../st__plugin_8c.html#ae829911e1c265665933ab5318f462466',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fopen_5fconnection',['remmina_plugin_st_open_connection',['../st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5ftable',['remmina_plugin_table',['../remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5ftelepathy',['remmina_plugin_telepathy',['../telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58',1,'telepathy_plugin.c']]],
+ ['remmina_5fplugin_5ftelepathy_5fentry',['remmina_plugin_telepathy_entry',['../telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356',1,'telepathy_plugin.c']]],
+ ['remmina_5fplugin_5ftelepathy_5fservice',['remmina_plugin_telepathy_service',['../telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c'],['../telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c'],['../telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c']]],
+ ['remmina_5fplugin_5fthread',['remmina_plugin_thread',['../structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec',1,'rf_context']]],
+ ['remmina_5fplugin_5ftool_5fbasic_5fsettings',['remmina_plugin_tool_basic_settings',['../plugin_8c.html#a833f9235bae6f4784189b5b825189df6',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftool_5fclose_5fconnection',['remmina_plugin_tool_close_connection',['../plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftool_5finit',['remmina_plugin_tool_init',['../plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftool_5fopen_5fconnection',['remmina_plugin_tool_open_connection',['../plugin_8c.html#a5109cffc255b24e5a596e94404811f50',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftype_5fentry',['REMMINA_PLUGIN_TYPE_ENTRY',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5ffile',['REMMINA_PLUGIN_TYPE_FILE',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fname',['remmina_plugin_type_name',['../remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5ftype_5fpref',['REMMINA_PLUGIN_TYPE_PREF',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fprotocol',['REMMINA_PLUGIN_TYPE_PROTOCOL',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fsecret',['REMMINA_PLUGIN_TYPE_SECRET',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5ftool',['REMMINA_PLUGIN_TYPE_TOOL',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac',1,'plugin.h']]],
+ ['remmina_5fplugin_5fvnc',['remmina_plugin_vnc',['../vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fadvanced_5fsettings',['remmina_plugin_vnc_advanced_settings',['../vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fbasic_5fsettings',['remmina_plugin_vnc_basic_settings',['../vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fbits',['remmina_plugin_vnc_bits',['../vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fcall_5ffeature',['remmina_plugin_vnc_call_feature',['../vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fchat_5fon_5fdestroy',['remmina_plugin_vnc_chat_on_destroy',['../vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fchat_5fon_5fsend',['remmina_plugin_vnc_chat_on_send',['../vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fchat',['remmina_plugin_vnc_close_chat',['../vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fconnection',['remmina_plugin_vnc_close_connection',['../vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fconnection_5ftimeout',['remmina_plugin_vnc_close_connection_timeout',['../vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fclose',['REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fopen',['REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fsend',['REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fcuttext',['REMMINA_PLUGIN_VNC_EVENT_CUTTEXT',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5ffree',['remmina_plugin_vnc_event_free',['../vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5ffree_5fall',['remmina_plugin_vnc_event_free_all',['../vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fkey',['REMMINA_PLUGIN_VNC_EVENT_KEY',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fpointer',['REMMINA_PLUGIN_VNC_EVENT_POINTER',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fpush',['remmina_plugin_vnc_event_push',['../vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fqueue_5fpop_5fhead',['remmina_plugin_vnc_event_queue_pop_head',['../vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5ffeatures',['remmina_plugin_vnc_features',['../vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fincoming_5fconnection',['remmina_plugin_vnc_incoming_connection',['../vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5finit',['remmina_plugin_vnc_init',['../vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fkeystroke',['remmina_plugin_vnc_keystroke',['../vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain',['remmina_plugin_vnc_main',['../vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain_5floop',['remmina_plugin_vnc_main_loop',['../vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain_5fthread',['remmina_plugin_vnc_main_thread',['../vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fno_5fencrypt_5fauth_5ftypes',['remmina_plugin_vnc_no_encrypt_auth_types',['../vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fbutton',['remmina_plugin_vnc_on_button',['../vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fcuttext',['remmina_plugin_vnc_on_cuttext',['../vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fcuttext_5frequest',['remmina_plugin_vnc_on_cuttext_request',['../vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fdraw',['remmina_plugin_vnc_on_draw',['../vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fkey',['remmina_plugin_vnc_on_key',['../vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fmotion',['remmina_plugin_vnc_on_motion',['../vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5frealize',['remmina_plugin_vnc_on_realize',['../vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fscroll',['remmina_plugin_vnc_on_scroll',['../vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fopen_5fchat',['remmina_plugin_vnc_open_chat',['../vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fopen_5fconnection',['remmina_plugin_vnc_open_connection',['../vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fprocess_5fvnc_5fevent',['remmina_plugin_vnc_process_vnc_event',['../vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fquery_5ffeature',['remmina_plugin_vnc_query_feature',['../vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fcuttext',['remmina_plugin_vnc_queue_cuttext',['../vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fdraw_5farea',['remmina_plugin_vnc_queue_draw_area',['../vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fdraw_5farea_5freal',['remmina_plugin_vnc_queue_draw_area_real',['../vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueuecursor',['remmina_plugin_vnc_queuecursor',['../vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frelease_5fkey',['remmina_plugin_vnc_release_key',['../vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fallocfb',['remmina_plugin_vnc_rfb_allocfb',['../vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fbell',['remmina_plugin_vnc_rfb_bell',['../vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fchat',['remmina_plugin_vnc_rfb_chat',['../vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcredential',['remmina_plugin_vnc_rfb_credential',['../vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcursor_5fshape',['remmina_plugin_vnc_rfb_cursor_shape',['../vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcuttext',['remmina_plugin_vnc_rfb_cuttext',['../vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5ffill_5fbuffer',['remmina_plugin_vnc_rfb_fill_buffer',['../vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fpassword',['remmina_plugin_vnc_rfb_password',['../vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fupdatefb',['remmina_plugin_vnc_rfb_updatefb',['../vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fscale_5farea',['remmina_plugin_vnc_scale_area',['../vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fscale_5fcoordinates',['remmina_plugin_vnc_scale_coordinates',['../vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fsend_5fctrlaltdel',['remmina_plugin_vnc_send_ctrlaltdel',['../vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fsetcursor',['remmina_plugin_vnc_setcursor',['../vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fcolordepth',['remmina_plugin_vnc_update_colordepth',['../vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fquality',['remmina_plugin_vnc_update_quality',['../vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fscale',['remmina_plugin_vnc_update_scale',['../vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c',1,'remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale):&#160;vnc_plugin.c'],['../vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9',1,'remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale):&#160;vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnci',['remmina_plugin_vnci',['../vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnci_5fbasic_5fsettings',['remmina_plugin_vnci_basic_settings',['../vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fadvanced_5fsettings',['remmina_plugin_www_advanced_settings',['../www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fbasic_5fsettings',['remmina_plugin_www_basic_settings',['../www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fclose_5fconnection',['remmina_plugin_www_close_connection',['../www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fnav',['remmina_plugin_www_decide_nav',['../www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2',1,'remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32',1,'remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fnewwin',['remmina_plugin_www_decide_newwin',['../www__plugin_8c.html#a05218b821edab542795439a87ad9d909',1,'remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#a05218b821edab542795439a87ad9d909',1,'remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fpolicy_5fcb',['remmina_plugin_www_decide_policy_cb',['../www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fresource',['remmina_plugin_www_decide_resource',['../www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374',1,'remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374',1,'remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdownload_5fstarted',['remmina_plugin_www_download_started',['../www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fform_5fauth',['remmina_plugin_www_form_auth',['../www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fget_5fsnapshot',['remmina_plugin_www_get_snapshot',['../www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5finit',['remmina_plugin_www_init',['../www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fload_5ffailed_5ftls_5fcb',['remmina_plugin_www_load_failed_tls_cb',['../www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fnotify_5fdownload',['remmina_plugin_www_notify_download',['../www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d',1,'remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d',1,'remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fon_5fauth',['remmina_plugin_www_on_auth',['../www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fon_5fcreate',['remmina_plugin_www_on_create',['../www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fopen_5fconnection',['remmina_plugin_www_open_connection',['../www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fresponse_5freceived',['remmina_plugin_www_response_received',['../www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b',1,'remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b',1,'remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fsave_5fsnapshot',['remmina_plugin_www_save_snapshot',['../www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp',['remmina_plugin_xdmcp',['../xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fbasic_5fsettings',['remmina_plugin_xdmcp_basic_settings',['../xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fcall_5ffeature',['remmina_plugin_xdmcp_call_feature',['../xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fclose_5fconnection',['remmina_plugin_xdmcp_close_connection',['../xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5ffeatures',['remmina_plugin_xdmcp_features',['../xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5finit',['remmina_plugin_xdmcp_init',['../xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fmain',['remmina_plugin_xdmcp_main',['../xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fmain_5fthread',['remmina_plugin_xdmcp_main_thread',['../xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fon_5fplug_5fadded',['remmina_plugin_xdmcp_on_plug_added',['../xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fon_5fplug_5fremoved',['remmina_plugin_xdmcp_on_plug_removed',['../xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fopen_5fconnection',['remmina_plugin_xdmcp_open_connection',['../xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fquery_5ffeature',['remmina_plugin_xdmcp_query_feature',['../xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fsend_5fctrlaltdel',['remmina_plugin_xdmcp_send_ctrlaltdel',['../xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fstart_5fxephyr',['remmina_plugin_xdmcp_start_xephyr',['../xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5ftunnel_5finit_5fcallback',['remmina_plugin_xdmcp_tunnel_init_callback',['../xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632',1,'xdmcp_plugin.c']]],
+ ['remmina_5fpostconnect_5ferror_5fgdi_5finit',['REMMINA_POSTCONNECT_ERROR_GDI_INIT',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6',1,'rf_context']]],
+ ['remmina_5fpostconnect_5ferror_5fno_5fh264',['REMMINA_POSTCONNECT_ERROR_NO_H264',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982',1,'rf_context']]],
+ ['remmina_5fpostconnect_5ferror_5fok',['REMMINA_POSTCONNECT_ERROR_OK',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68',1,'rf_context']]],
+ ['remmina_5fpref',['remmina_pref',['../rcw_8c.html#a29701ae152ba15f6d8921f395174d2df',1,'remmina_pref():&#160;rcw.c'],['../remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df',1,'remmina_pref():&#160;rcw.c']]],
+ ['remmina_5fpref_2ec',['remmina_pref.c',['../remmina__pref_8c.html',1,'']]],
+ ['remmina_5fpref_2eh',['remmina_pref.h',['../remmina__pref_8h.html',1,'']]],
+ ['remmina_5fpref_5fadd_5frecent',['remmina_pref_add_recent',['../remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60',1,'remmina_pref_add_recent(const gchar *protocol, const gchar *server):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60',1,'remmina_pref_add_recent(const gchar *protocol, const gchar *server):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fappearance',['REMMINA_PREF_APPEARANCE',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fpref_5fapplet_5ftab',['REMMINA_PREF_APPLET_TAB',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fpref_5fclear_5frecent',['remmina_pref_clear_recent',['../remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14',1,'remmina_pref_clear_recent(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14',1,'remmina_pref_clear_recent(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fdialog',['remmina_pref_dialog',['../remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_2ec',['remmina_pref_dialog.c',['../remmina__pref__dialog_8c.html',1,'']]],
+ ['remmina_5fpref_5fdialog_2eh',['remmina_pref_dialog.h',['../remmina__pref__dialog_8h.html',1,'']]],
+ ['remmina_5fpref_5fdialog_5fadd_5fpref_5fplugin',['remmina_pref_dialog_add_pref_plugin',['../remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fclear_5frecent',['remmina_pref_dialog_clear_recent',['../remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fdisable_5ftray_5ficon_5fon_5ftoggled',['remmina_pref_dialog_disable_tray_icon_on_toggled',['../remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fget_5fdialog',['remmina_pref_dialog_get_dialog',['../remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a',1,'remmina_pref_dialog_get_dialog():&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4',1,'remmina_pref_dialog_get_dialog(void):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5finit',['remmina_pref_dialog_init',['../remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fnew',['remmina_pref_dialog_new',['../remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342',1,'remmina_pref_dialog_new(gint default_tab, GtkWindow *parent):&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a',1,'remmina_pref_dialog_new(gint default_tab, GtkWindow *parent):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fon_5fclose_5fclicked',['remmina_pref_dialog_on_close_clicked',['../remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fon_5fkey_5fchooser',['remmina_pref_dialog_on_key_chooser',['../remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fset_5fbutton_5flabel',['remmina_pref_dialog_set_button_label',['../remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fvte_5ffont_5fon_5ftoggled',['remmina_pref_dialog_vte_font_on_toggled',['../remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5ffile',['remmina_pref_file',['../rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715',1,'remmina_pref_file():&#160;rcw.c'],['../remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715',1,'remmina_pref_file():&#160;rcw.c']]],
+ ['remmina_5fpref_5ffile_5fdo_5fcopy',['remmina_pref_file_do_copy',['../remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5ffile_5fload_5fcolors',['remmina_pref_file_load_colors',['../remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218',1,'remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218',1,'remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fgen_5fsecret',['remmina_pref_gen_secret',['../remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fboolean',['remmina_pref_get_boolean',['../remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f',1,'remmina_pref_get_boolean(const gchar *key):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f',1,'remmina_pref_get_boolean(const gchar *key):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fkeyval_5ffrom_5fstr',['remmina_pref_get_keyval_from_str',['../remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5frecent',['remmina_pref_get_recent',['../remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05',1,'remmina_pref_get_recent(const gchar *protocol):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05',1,'remmina_pref_get_recent(const gchar *protocol):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fscale_5fquality',['remmina_pref_get_scale_quality',['../remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b',1,'remmina_pref_get_scale_quality(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b',1,'remmina_pref_get_scale_quality(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5floglevel',['remmina_pref_get_ssh_loglevel',['../remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267',1,'remmina_pref_get_ssh_loglevel(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267',1,'remmina_pref_get_ssh_loglevel(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5fparseconfig',['remmina_pref_get_ssh_parseconfig',['../remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23',1,'remmina_pref_get_ssh_parseconfig(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23',1,'remmina_pref_get_ssh_parseconfig(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepcnt',['remmina_pref_get_ssh_tcp_keepcnt',['../remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b',1,'remmina_pref_get_ssh_tcp_keepcnt(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b',1,'remmina_pref_get_ssh_tcp_keepcnt(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepidle',['remmina_pref_get_ssh_tcp_keepidle',['../remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be',1,'remmina_pref_get_ssh_tcp_keepidle(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be',1,'remmina_pref_get_ssh_tcp_keepidle(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepintvl',['remmina_pref_get_ssh_tcp_keepintvl',['../remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414',1,'remmina_pref_get_ssh_tcp_keepintvl(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414',1,'remmina_pref_get_ssh_tcp_keepintvl(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fusrtimeout',['remmina_pref_get_ssh_tcp_usrtimeout',['../remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714',1,'remmina_pref_get_ssh_tcp_usrtimeout(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714',1,'remmina_pref_get_ssh_tcp_usrtimeout(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fsshtunnel_5fport',['remmina_pref_get_sshtunnel_port',['../remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99',1,'remmina_pref_get_sshtunnel_port(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99',1,'remmina_pref_get_sshtunnel_port(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fvalue',['remmina_pref_get_value',['../remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6',1,'remmina_pref_get_value(const gchar *key):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6',1,'remmina_pref_get_value(const gchar *key):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5finit',['remmina_pref_init',['../remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd',1,'remmina_pref_init(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd',1,'remmina_pref_init(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5finit_5fkeymap',['remmina_pref_init_keymap',['../remmina__pref_8c.html#aed7f3859d4306419932df15131987355',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fis_5frw',['remmina_pref_is_rw',['../remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c',1,'remmina_pref_is_rw(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c',1,'remmina_pref_is_rw(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fkeymap_5fget_5fkeyval',['remmina_pref_keymap_get_keyval',['../remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8',1,'remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval):&#160;remmina_pref.c'],['../remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8',1,'remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fkeymap_5fgroups',['remmina_pref_keymap_groups',['../remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395',1,'remmina_pref_keymap_groups(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395',1,'remmina_pref_keymap_groups(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fon_5fbutton_5fkeystrokes_5fclicked',['remmina_pref_on_button_keystrokes_clicked',['../remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fbutton_5fresolutions_5fclicked',['remmina_pref_on_button_resolutions_clicked',['../remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fcolor_5fscheme_5fselected',['remmina_pref_on_color_scheme_selected',['../remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fdialog_5fdestroy',['remmina_pref_on_dialog_destroy',['../remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5foptions_5ftab',['REMMINA_PREF_OPTIONS_TAB',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fpref_5fsave',['remmina_pref_save',['../remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f',1,'remmina_pref_save(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f',1,'remmina_pref_save(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fset_5fvalue',['remmina_pref_set_value',['../remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02',1,'remmina_pref_set_value(const gchar *key, const gchar *value):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02',1,'remmina_pref_set_value(const gchar *key, const gchar *value):&#160;remmina_pref.c']]],
+ ['remmina_5fprefdiag_5funlock_5frepwd_5fon_5fchanged',['remmina_prefdiag_unlock_repwd_on_changed',['../remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f',1,'remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog):&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f',1,'remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fprofiles_5fget_5fdata',['remmina_profiles_get_data',['../remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328',1,'remmina_stats.c']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fdynresupdate',['REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fend',['REMMINA_PROTOCOL_FEATURE_TYPE_END',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fgtksocket',['REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fpref',['REMMINA_PROTOCOL_FEATURE_TYPE_PREF',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fscale',['REMMINA_PROTOCOL_FEATURE_TYPE_SCALE',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5ftool',['REMMINA_PROTOCOL_FEATURE_TYPE_TOOL',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5funfocus',['REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fcheck',['REMMINA_PROTOCOL_SETTING_TYPE_CHECK',['../types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fcombo',['REMMINA_PROTOCOL_SETTING_TYPE_COMBO',['../types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fend',['REMMINA_PROTOCOL_SETTING_TYPE_END',['../types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ffile',['REMMINA_PROTOCOL_SETTING_TYPE_FILE',['../types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ffolder',['REMMINA_PROTOCOL_SETTING_TYPE_FOLDER',['../types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fkeymap',['REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP',['../types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fpassword',['REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD',['../types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fresolution',['REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION',['../types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fselect',['REMMINA_PROTOCOL_SETTING_TYPE_SELECT',['../types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fserver',['REMMINA_PROTOCOL_SETTING_TYPE_SERVER',['../types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ftext',['REMMINA_PROTOCOL_SETTING_TYPE_TEXT',['../types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fnone',['REMMINA_PROTOCOL_SSH_SETTING_NONE',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5freverse_5ftunnel',['REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fsftp',['REMMINA_PROTOCOL_SSH_SETTING_SFTP',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fssh',['REMMINA_PROTOCOL_SSH_SETTING_SSH',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5ftunnel',['REMMINA_PROTOCOL_SSH_SETTING_TUNNEL',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_2ec',['remmina_protocol_widget.c',['../remmina__protocol__widget_8c.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_2eh',['remmina_protocol_widget.h',['../remmina__protocol__widget_8h.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_5fcall_5ffeature_5fby_5fref',['remmina_protocol_widget_call_feature_by_ref',['../remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692',1,'remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692',1,'remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fcall_5ffeature_5fby_5ftype',['remmina_protocol_widget_call_feature_by_type',['../remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9',1,'remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9',1,'remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fclose',['remmina_protocol_widget_chat_close',['../remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953',1,'remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953',1,'remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fon_5fdestroy',['remmina_protocol_widget_chat_on_destroy',['../remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fopen',['remmina_protocol_widget_chat_open',['../remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2',1,'remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp)):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2',1,'remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp)):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5freceive',['remmina_protocol_widget_chat_receive',['../remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0',1,'remmina_protocol_widget_chat_receive(RemminaProtocolWidget *gp, const gchar *text):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0',1,'remmina_protocol_widget_chat_receive(RemminaProtocolWidget *gp, const gchar *text):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclass_5finit',['remmina_protocol_widget_class_init',['../remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclose_5fall_5ftunnels',['remmina_protocol_widget_close_all_tunnels',['../remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclose_5fconnection',['remmina_protocol_widget_close_connection',['../remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22',1,'remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22',1,'remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdesktop_5fresize',['remmina_protocol_widget_desktop_resize',['../remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee',1,'remmina_protocol_widget_desktop_resize(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee',1,'remmina_protocol_widget_desktop_resize(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdestroy',['remmina_protocol_widget_destroy',['../remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog',['remmina_protocol_widget_dialog',['../remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog_5fmt_5fdata_5ft',['remmina_protocol_widget_dialog_mt_data_t',['../structremmina__protocol__widget__dialog__mt__data__t.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog_5fmt_5fsetup',['remmina_protocol_widget_dialog_mt_setup',['../remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5femit_5fsignal',['remmina_protocol_widget_emit_signal',['../remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b',1,'remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b',1,'remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcacert',['remmina_protocol_widget_get_cacert',['../remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d',1,'remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d',1,'remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcacrl',['remmina_protocol_widget_get_cacrl',['../remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3',1,'remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3',1,'remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fclientcert',['remmina_protocol_widget_get_clientcert',['../remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b',1,'remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b',1,'remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fclientkey',['remmina_protocol_widget_get_clientkey',['../remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1',1,'remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1',1,'remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcurrent_5fscale_5fmode',['remmina_protocol_widget_get_current_scale_mode',['../struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed',1,'_RemminaPluginService::remmina_protocol_widget_get_current_scale_mode()'],['../remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7',1,'remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7',1,'remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fdomain',['remmina_protocol_widget_get_domain',['../remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac',1,'remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac',1,'remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ferror_5fmessage',['remmina_protocol_widget_get_error_message',['../remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29',1,'remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29',1,'remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fexpand',['remmina_protocol_widget_get_expand',['../remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25',1,'remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25',1,'remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ffeatures',['remmina_protocol_widget_get_features',['../remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd',1,'remmina_protocol_widget_get_features(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd',1,'remmina_protocol_widget_get_features(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ffile',['remmina_protocol_widget_get_file',['../remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069',1,'remmina_protocol_widget_get_file(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069',1,'remmina_protocol_widget_get_file(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fheight',['remmina_protocol_widget_get_height',['../remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5',1,'remmina_protocol_widget_get_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5',1,'remmina_protocol_widget_get_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fpassword',['remmina_protocol_widget_get_password',['../remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923',1,'remmina_protocol_widget_get_password(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923',1,'remmina_protocol_widget_get_password(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fprofile_5fremote_5fheight',['remmina_protocol_widget_get_profile_remote_height',['../remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9',1,'remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9',1,'remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fprofile_5fremote_5fwidth',['remmina_protocol_widget_get_profile_remote_width',['../remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907',1,'remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907',1,'remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fsavepassword',['remmina_protocol_widget_get_savepassword',['../remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d',1,'remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d',1,'remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ftype',['remmina_protocol_widget_get_type',['../remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e',1,'remmina_protocol_widget.h']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fusername',['remmina_protocol_widget_get_username',['../remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0',1,'remmina_protocol_widget_get_username(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0',1,'remmina_protocol_widget_get_username(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fwidth',['remmina_protocol_widget_get_width',['../remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995',1,'remmina_protocol_widget_get_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995',1,'remmina_protocol_widget_get_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fgrab_5ffocus',['remmina_protocol_widget_grab_focus',['../remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1',1,'remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1',1,'remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fhas_5ferror',['remmina_protocol_widget_has_error',['../remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771',1,'remmina_protocol_widget_has_error(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771',1,'remmina_protocol_widget_has_error(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5finit',['remmina_protocol_widget_init',['../remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5finit_5ftunnel',['remmina_protocol_widget_init_tunnel',['../remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fis_5fclosed',['remmina_protocol_widget_is_closed',['../remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3',1,'remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3',1,'remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fmpdestroy',['remmina_protocol_widget_mpdestroy',['../remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5',1,'remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5',1,'remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fmpprogress',['remmina_protocol_widget_mpprogress',['../remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1',1,'remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1',1,'remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fnew',['remmina_protocol_widget_new',['../remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62',1,'remmina_protocol_widget_new(void):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62',1,'remmina_protocol_widget_new(void):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fon_5fkey_5fpress',['remmina_protocol_widget_on_key_press',['../remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fon_5fkey_5frelease',['remmina_protocol_widget_on_key_release',['../remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fopen_5fconnection',['remmina_protocol_widget_open_connection',['../remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b',1,'remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b',1,'remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fopen_5fconnection_5freal',['remmina_protocol_widget_open_connection_real',['../remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauth',['remmina_protocol_widget_panel_auth',['../remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868',1,'remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868',1,'remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauthuserpwd_5fssh_5ftunnel',['remmina_protocol_widget_panel_authuserpwd_ssh_tunnel',['../remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba',1,'remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba',1,'remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauthx509',['remmina_protocol_widget_panel_authx509',['../remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31',1,'remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31',1,'remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fchanged_5fcertificate',['remmina_protocol_widget_panel_changed_certificate',['../remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1',1,'remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1',1,'remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fdestroy',['remmina_protocol_widget_panel_destroy',['../remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae',1,'remmina_protocol_widget.h']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fhide',['remmina_protocol_widget_panel_hide',['../remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad',1,'remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad',1,'remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fnew_5fcertificate',['remmina_protocol_widget_panel_new_certificate',['../remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084',1,'remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084',1,'remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fquestion_5fyesno',['remmina_protocol_widget_panel_question_yesno',['../remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b',1,'remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b',1,'remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow',['remmina_protocol_widget_panel_show',['../remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b',1,'remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b',1,'remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow_5flisten',['remmina_protocol_widget_panel_show_listen',['../remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d',1,'remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d',1,'remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow_5fretry',['remmina_protocol_widget_panel_show_retry',['../remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895',1,'remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895',1,'remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fplugin_5freceives_5fkeystrokes',['remmina_protocol_widget_plugin_receives_keystrokes',['../remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601',1,'remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601',1,'remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fplugin_5fscreenshot',['remmina_protocol_widget_plugin_screenshot',['../remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca',1,'remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca',1,'remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fquery_5ffeature_5fby_5fref',['remmina_protocol_widget_query_feature_by_ref',['../remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a',1,'remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a',1,'remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fquery_5ffeature_5fby_5ftype',['remmina_protocol_widget_query_feature_by_type',['../remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d',1,'remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d',1,'remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fregister_5fhostkey',['remmina_protocol_widget_register_hostkey',['../remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c',1,'remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c',1,'remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsave_5fcred',['remmina_protocol_widget_save_cred',['../remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504',1,'remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504',1,'remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fdynres',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fnone',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fscaled',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fsend_5fkeys_5fsignals',['remmina_protocol_widget_send_keys_signals',['../remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705',1,'remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705',1,'remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsend_5fkeystrokes',['remmina_protocol_widget_send_keystrokes',['../remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471',1,'remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471',1,'remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fcurrent_5fscale_5fmode',['remmina_protocol_widget_set_current_scale_mode',['../remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48',1,'remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48',1,'remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fdisplay',['remmina_protocol_widget_set_display',['../remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54',1,'remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54',1,'remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5ferror',['remmina_protocol_widget_set_error',['../remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af',1,'remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af',1,'remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fexpand',['remmina_protocol_widget_set_expand',['../remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa',1,'remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa',1,'remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fheight',['remmina_protocol_widget_set_height',['../remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044',1,'remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044',1,'remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fhostkey_5ffunc',['remmina_protocol_widget_set_hostkey_func',['../remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8',1,'remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8',1,'remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fwidth',['remmina_protocol_widget_set_width',['../remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380',1,'remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380',1,'remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsetup',['remmina_protocol_widget_setup',['../remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8',1,'remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8',1,'remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsignal_5fconnection_5fclosed',['remmina_protocol_widget_signal_connection_closed',['../remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261',1,'remmina_protocol_widget_signal_connection_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261',1,'remmina_protocol_widget_signal_connection_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsignal_5fconnection_5fopened',['remmina_protocol_widget_signal_connection_opened',['../remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c',1,'remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c',1,'remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsignals',['remmina_protocol_widget_signals',['../remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fssh_5fexec',['remmina_protocol_widget_ssh_exec',['../remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a',1,'remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a',1,'remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5fdirect_5ftunnel',['remmina_protocol_widget_start_direct_tunnel',['../remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7',1,'remmina_protocol_widget_start_direct_tunnel(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7',1,'remmina_protocol_widget_start_direct_tunnel(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5freverse_5ftunnel',['remmina_protocol_widget_start_reverse_tunnel',['../remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c',1,'remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c',1,'remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5fxport_5ftunnel',['remmina_protocol_widget_start_xport_tunnel',['../remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4',1,'remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4',1,'remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5ftunnel_5fdestroy',['remmina_protocol_widget_tunnel_destroy',['../remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5funlock_5fdynres',['remmina_protocol_widget_unlock_dynres',['../remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d',1,'remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d',1,'remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5falign',['remmina_protocol_widget_update_align',['../remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e',1,'remmina_protocol_widget_update_align(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e',1,'remmina_protocol_widget_update_align(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5falignment',['remmina_protocol_widget_update_alignment',['../rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d',1,'rcw.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5fremote_5fresolution',['remmina_protocol_widget_update_remote_resolution',['../remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767',1,'remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767',1,'remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5fconnect_5fcallback',['remmina_protocol_widget_xport_tunnel_connect_callback',['../remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5fdisconnect_5fcallback',['remmina_protocol_widget_xport_tunnel_disconnect_callback',['../remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5finit_5fcallback',['remmina_protocol_widget_xport_tunnel_init_callback',['../remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fpublic_2ec',['remmina_public.c',['../remmina__public_8c.html',1,'']]],
+ ['remmina_5fpublic_2eh',['remmina_public.h',['../remmina__public_8h.html',1,'']]],
+ ['remmina_5fpublic_5fcombine_5fpath',['remmina_public_combine_path',['../remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0',1,'remmina_public_combine_path(const gchar *path1, const gchar *path2):&#160;remmina_public.c'],['../remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0',1,'remmina_public_combine_path(const gchar *path1, const gchar *path2):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcombo_5fget_5factive_5ftext',['remmina_public_combo_get_active_text',['../remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb',1,'remmina_public_combo_get_active_text(GtkComboBox *combo):&#160;remmina_public.c'],['../remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb',1,'remmina_public_combo_get_active_text(GtkComboBox *combo):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo',['remmina_public_create_combo',['../remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f',1,'remmina_public_create_combo(gboolean use_icon):&#160;remmina_public.c'],['../remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f',1,'remmina_public_create_combo(gboolean use_icon):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fentry',['remmina_public_create_combo_entry',['../remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a',1,'remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending):&#160;remmina_public.c'],['../remmina__public_8h.html#ab28356392468fbd147814f09cda6e168',1,'remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fmap',['remmina_public_create_combo_map',['../remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b',1,'remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c'],['../remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b',1,'remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fmapint',['remmina_public_create_combo_mapint',['../remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b',1,'remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c'],['../remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b',1,'remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5ftext_5fd',['remmina_public_create_combo_text_d',['../remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde',1,'remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c'],['../remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde',1,'remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fgroup',['remmina_public_create_group',['../remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739',1,'remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols):&#160;remmina_public.c'],['../remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739',1,'remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fcurrent_5fworkspace',['remmina_public_get_current_workspace',['../remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758',1,'remmina_public_get_current_workspace(GdkScreen *screen):&#160;remmina_public.c'],['../remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758',1,'remmina_public_get_current_workspace(GdkScreen *screen):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fkeycode_5ffor_5fkeyval',['remmina_public_get_keycode_for_keyval',['../remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb',1,'remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval):&#160;remmina_public.c'],['../remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb',1,'remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fmodifier_5ffor_5fkeycode',['remmina_public_get_modifier_for_keycode',['../remmina__public_8c.html#a1fac51670815da6a72700a10866c179a',1,'remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode):&#160;remmina_public.c'],['../remmina__public_8h.html#a1fac51670815da6a72700a10866c179a',1,'remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fserver_5fport',['remmina_public_get_server_port',['../remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149',1,'remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port):&#160;remmina_public.c'],['../remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149',1,'remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fwindow_5fworkspace',['remmina_public_get_window_workspace',['../remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25',1,'remmina_public_get_window_workspace(GtkWindow *gtkwindow):&#160;remmina_public.c'],['../remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25',1,'remmina_public_get_window_workspace(GtkWindow *gtkwindow):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fxauth_5fcookie',['remmina_public_get_xauth_cookie',['../remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf',1,'remmina_public_get_xauth_cookie(const gchar *display, gchar **msg):&#160;remmina_public.c'],['../remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf',1,'remmina_public_get_xauth_cookie(const gchar *display, gchar **msg):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fgtk_5fbuilder_5fnew_5ffrom_5ffile',['remmina_public_gtk_builder_new_from_file',['../remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41',1,'remmina_public_gtk_builder_new_from_file(gchar *filename):&#160;remmina_public.c'],['../remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41',1,'remmina_public_gtk_builder_new_from_file(gchar *filename):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fgtk_5fwidget_5freparent',['remmina_public_gtk_widget_reparent',['../remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912',1,'remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container):&#160;remmina_public.c'],['../remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912',1,'remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fload_5fcombo_5ftext_5fd',['remmina_public_load_combo_text_d',['../remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8',1,'remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c'],['../remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8',1,'remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fopen_5fxdisplay',['remmina_public_open_xdisplay',['../remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767',1,'remmina_public_open_xdisplay(const gchar *disp):&#160;remmina_public.c'],['../remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767',1,'remmina_public_open_xdisplay(const gchar *disp):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fpopup_5fposition',['remmina_public_popup_position',['../remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c',1,'remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data):&#160;remmina_public.c'],['../remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c',1,'remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fresolution_5fvalidation_5ffunc',['remmina_public_resolution_validation_func',['../remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0',1,'remmina_public_resolution_validation_func(const gchar *new_str, gchar **error):&#160;remmina_public.c'],['../remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0',1,'remmina_public_resolution_validation_func(const gchar *new_str, gchar **error):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fsend_5fnotification',['remmina_public_send_notification',['../remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6',1,'remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;remmina_public.c'],['../remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6',1,'remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fsplit_5fresolution_5fstring',['remmina_public_split_resolution_string',['../remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173',1,'remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h):&#160;remmina_public.c'],['../remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173',1,'remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fstr_5freplace',['remmina_public_str_replace',['../remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640',1,'remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c'],['../remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640',1,'remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fstr_5freplace_5fin_5fplace',['remmina_public_str_replace_in_place',['../remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2',1,'remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c'],['../remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2',1,'remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c']]],
+ ['remmina_5frdp',['remmina_rdp',['../rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fadvanced_5fsettings',['remmina_rdp_advanced_settings',['../rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fauthenticate',['remmina_rdp_authenticate',['../rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fbasic_5fsettings',['remmina_rdp_basic_settings',['../rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fcall_5ffeature',['remmina_rdp_call_feature',['../rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fchannel_5fcliprdr_5fprocess',['remmina_rdp_channel_cliprdr_process',['../rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff',1,'rdp_cliprdr.h']]],
+ ['remmina_5frdp_5fclipboard_5fabort_5ftransfer',['remmina_rdp_clipboard_abort_transfer',['../rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130',1,'remmina_rdp_clipboard_abort_transfer(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130',1,'remmina_rdp_clipboard_abort_transfer(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclipboard_5ffree',['remmina_rdp_clipboard_free',['../rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365',1,'remmina_rdp_clipboard_free(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365',1,'remmina_rdp_clipboard_free(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclipboard_5finit',['remmina_rdp_clipboard_init',['../rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3',1,'remmina_rdp_clipboard_init(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3',1,'remmina_rdp_clipboard_init(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fdetach_5fowner',['remmina_rdp_cliprdr_detach_owner',['../rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf',1,'remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf',1,'remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fempty_5fclipboard',['remmina_rdp_cliprdr_empty_clipboard',['../rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fclient_5fformat_5flist',['remmina_rdp_cliprdr_get_client_format_list',['../rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f',1,'remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f',1,'remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fclipboard_5fdata',['remmina_rdp_cliprdr_get_clipboard_data',['../rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fformat_5ffrom_5fgdkatom',['remmina_rdp_cliprdr_get_format_from_gdkatom',['../rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5ftarget_5ftypes',['remmina_rdp_cliprdr_get_target_types',['../rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5finit',['remmina_rdp_cliprdr_init',['../rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d',1,'remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d',1,'remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fmonitor_5fready',['remmina_rdp_cliprdr_monitor_ready',['../rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fmt_5fget_5fformat_5flist',['remmina_rdp_cliprdr_mt_get_format_list',['../rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5frequest_5fdata',['remmina_rdp_cliprdr_request_data',['../rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fsend_5fclient_5fcapabilities',['remmina_rdp_cliprdr_send_client_capabilities',['../rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fsend_5fclient_5fformat_5flist',['remmina_rdp_cliprdr_send_client_format_list',['../rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fcapabilities',['remmina_rdp_cliprdr_server_capabilities',['../rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5ffile_5fcontents_5frequest',['remmina_rdp_cliprdr_server_file_contents_request',['../rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5ffile_5fcontents_5fresponse',['remmina_rdp_cliprdr_server_file_contents_response',['../rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5fdata_5frequest',['remmina_rdp_cliprdr_server_format_data_request',['../rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5fdata_5fresponse',['remmina_rdp_cliprdr_server_format_data_response',['../rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5flist',['remmina_rdp_cliprdr_server_format_list',['../rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5flist_5fresponse',['remmina_rdp_cliprdr_server_format_list_response',['../rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fset_5fclipboard_5fcontent',['remmina_rdp_cliprdr_set_clipboard_content',['../rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fset_5fclipboard_5fdata',['remmina_rdp_cliprdr_set_clipboard_data',['../rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclose_5fconnection',['remmina_rdp_close_connection',['../rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fevent_5fconnected',['remmina_rdp_event_connected',['../rdp__event_8c.html#abe98674433c473136ccd28aab85a7748',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcreate_5fcairo_5fsurface',['remmina_rdp_event_create_cairo_surface',['../rdp__event_8c.html#a789ec99777755da7cae468216a74095a',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcreate_5fcursor',['remmina_rdp_event_create_cursor',['../rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcursor',['remmina_rdp_event_cursor',['../rdp__event_8c.html#a064c56982a401aff33a8c723eb157016',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fdelayed_5fmonitor_5flayout',['remmina_rdp_event_delayed_monitor_layout',['../rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fdisconnect',['REMMINA_RDP_EVENT_DISCONNECT',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5fevent_5fpush',['remmina_rdp_event_event_push',['../rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580',1,'remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e):&#160;rdp_event.c'],['../rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580',1,'remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ffree_5fcursor',['remmina_rdp_event_free_cursor',['../rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ffree_5fevent',['remmina_rdp_event_free_event',['../rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5finit',['remmina_rdp_event_init',['../rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca',1,'remmina_rdp_event_init(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc',1,'remmina_rdp_event_init(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5finit_5fkeymap',['remmina_rdp_event_init_keymap',['../rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fbutton',['remmina_rdp_event_on_button',['../rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fclipboard',['remmina_rdp_event_on_clipboard',['../rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fconfigure',['remmina_rdp_event_on_configure',['../rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fdraw',['remmina_rdp_event_on_draw',['../rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5ffocus_5fin',['remmina_rdp_event_on_focus_in',['../rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fkey',['remmina_rdp_event_on_key',['../rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fmotion',['remmina_rdp_event_on_motion',['../rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fscroll',['remmina_rdp_event_on_scroll',['../rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fclipboard',['remmina_rdp_event_process_clipboard',['../rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173',1,'remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173',1,'remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fevent',['remmina_rdp_event_process_event',['../rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fui_5fevent',['remmina_rdp_event_process_ui_event',['../rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fui_5fqueue',['remmina_rdp_event_process_ui_queue',['../rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui',['remmina_rdp_event_queue_ui',['../rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fasync',['remmina_rdp_event_queue_ui_async',['../rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325',1,'remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325',1,'remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fsync_5fretint',['remmina_rdp_event_queue_ui_sync_retint',['../rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81',1,'remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81',1,'remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fsync_5fretptr',['remmina_rdp_event_queue_ui_sync_retptr',['../rdp__event_8c.html#adaaf3de8342309cc52668f318a473350',1,'remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#adaaf3de8342309cc52668f318a473350',1,'remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5freconnect_5fprogress',['remmina_rdp_event_reconnect_progress',['../rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5frelease_5fall_5fkeys',['remmina_rdp_event_release_all_keys',['../rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5frelease_5fkey',['remmina_rdp_event_release_key',['../rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5freverse_5ftranslate_5fpos_5freverse',['remmina_rdp_event_reverse_translate_pos_reverse',['../rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fscale_5farea',['remmina_rdp_event_scale_area',['../rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fsend_5fdelayed_5fmonitor_5flayout',['remmina_rdp_event_send_delayed_monitor_layout',['../rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe',1,'remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe',1,'remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fset_5fpointer_5fposition',['remmina_rdp_event_set_pointer_position',['../rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ftranslate_5fpos',['remmina_rdp_event_translate_pos',['../rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5fdata_5frequest',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5fdata_5fresponse',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5flist',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fmouse',['REMMINA_RDP_EVENT_TYPE_MOUSE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fscancode',['REMMINA_RDP_EVENT_TYPE_SCANCODE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fscancode_5funicode',['REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fsend_5fmonitor_5flayout',['REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5funfocus',['remmina_rdp_event_unfocus',['../rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c',1,'remmina_rdp_event_unfocus(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c',1,'remmina_rdp_event_unfocus(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5funinit',['remmina_rdp_event_uninit',['../rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc',1,'remmina_rdp_event_uninit(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc',1,'remmina_rdp_event_uninit(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5frect',['remmina_rdp_event_update_rect',['../rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9',1,'remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h):&#160;rdp_event.c'],['../rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9',1,'remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fregions',['remmina_rdp_event_update_regions',['../rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fscale',['remmina_rdp_event_update_scale',['../rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497',1,'remmina_rdp_event_update_scale(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497',1,'remmina_rdp_event_update_scale(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fscale_5ffactor',['remmina_rdp_event_update_scale_factor',['../rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6',1,'rdp_event.c']]],
+ ['remmina_5frdp_5ffeatures',['remmina_rdp_features',['../rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5ffile_5fexport',['remmina_rdp_file_export',['../rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b',1,'remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file):&#160;rdp_file.c'],['../rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b',1,'remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fexport_5fchannel',['remmina_rdp_file_export_channel',['../rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fexport_5ftest',['remmina_rdp_file_export_test',['../rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310',1,'remmina_rdp_file_export_test(RemminaFile *remminafile):&#160;rdp_file.c'],['../rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310',1,'remmina_rdp_file_export_test(RemminaFile *remminafile):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport',['remmina_rdp_file_import',['../rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c',1,'remmina_rdp_file_import(const gchar *from_file):&#160;rdp_file.c'],['../rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c',1,'remmina_rdp_file_import(const gchar *from_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5fchannel',['remmina_rdp_file_import_channel',['../rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5ffield',['remmina_rdp_file_import_field',['../rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5ftest',['remmina_rdp_file_import_test',['../rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce',1,'remmina_rdp_file_import_test(const gchar *from_file):&#160;rdp_file.c'],['../rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b',1,'remmina_rdp_file_import_test(const gchar *from_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffind_5fprdriver',['remmina_rdp_find_prdriver',['../rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fget_5fscreenshot',['remmina_rdp_get_screenshot',['../rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fgw_5fauthenticate',['remmina_rdp_gw_authenticate',['../rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5finit',['remmina_rdp_init',['../rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fkeystroke',['remmina_rdp_keystroke',['../rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fload_5fstatic_5fchannel_5faddin',['remmina_rdp_load_static_channel_addin',['../rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain',['remmina_rdp_main',['../rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain_5floop',['remmina_rdp_main_loop',['../rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain_5fthread',['remmina_rdp_main_thread',['../rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fonchannelconnectedeventhandler',['remmina_rdp_OnChannelConnectedEventHandler',['../rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12',1,'remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c'],['../rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a',1,'remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c']]],
+ ['remmina_5frdp_5fonchanneldisconnectedeventhandler',['remmina_rdp_OnChannelDisconnectedEventHandler',['../rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d',1,'remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c'],['../rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d',1,'remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c']]],
+ ['remmina_5frdp_5fopen_5fconnection',['remmina_rdp_open_connection',['../rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fplugin_5fdefault_5fdrive_5fname',['remmina_rdp_plugin_default_drive_name',['../rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpointer_5fdefault',['REMMINA_RDP_POINTER_DEFAULT',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5ffree',['REMMINA_RDP_POINTER_FREE',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fnew',['REMMINA_RDP_POINTER_NEW',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fnull',['REMMINA_RDP_POINTER_NULL',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fset',['REMMINA_RDP_POINTER_SET',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fsetpos',['REMMINA_RDP_POINTER_SETPOS',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpost_5fconnect',['remmina_rdp_post_connect',['../rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpost_5fdisconnect',['remmina_rdp_post_disconnect',['../rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpre_5fconnect',['remmina_rdp_pre_connect',['../rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fquery_5ffeature',['remmina_rdp_query_feature',['../rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fsend_5fctrlaltdel',['remmina_rdp_send_ctrlaltdel',['../rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fset_5fprinters',['remmina_rdp_set_printers',['../rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fsettings_5fappscale_5fon_5fchanged',['remmina_rdp_settings_appscale_on_changed',['../rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fget_5fkeyboard_5flayout',['remmina_rdp_settings_get_keyboard_layout',['../rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c',1,'remmina_rdp_settings_get_keyboard_layout(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c',1,'remmina_rdp_settings_get_keyboard_layout(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fget_5forientation_5fscale_5fprefs',['remmina_rdp_settings_get_orientation_scale_prefs',['../rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c',1,'remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c',1,'remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fdestroy',['remmina_rdp_settings_grid_destroy',['../rdp__settings_8c.html#a407235521d446266678392af62bd05a2',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fget_5ftype',['remmina_rdp_settings_grid_get_type',['../rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5finit',['remmina_rdp_settings_grid_init',['../rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fdesktoporientation_5fcombo',['remmina_rdp_settings_grid_load_desktoporientation_combo',['../rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fdevicescalefactor_5fcombo',['remmina_rdp_settings_grid_load_devicescalefactor_combo',['../rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5flayout',['remmina_rdp_settings_grid_load_layout',['../rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fquality',['remmina_rdp_settings_grid_load_quality',['../rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5finit',['remmina_rdp_settings_init',['../rdp__settings_8c.html#acf37368f3376add8547723d13443cccb',1,'remmina_rdp_settings_init(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87',1,'remmina_rdp_settings_init(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fkbd_5finit',['remmina_rdp_settings_kbd_init',['../rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fnew',['remmina_rdp_settings_new',['../rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53',1,'remmina_rdp_settings_new(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53',1,'remmina_rdp_settings_new(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fquality_5fon_5fchanged',['remmina_rdp_settings_quality_on_changed',['../rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fquality_5foption_5fon_5ftoggled',['remmina_rdp_settings_quality_option_on_toggled',['../rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fset_5fcombo_5factive_5fitem',['remmina_rdp_settings_set_combo_active_item',['../rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5ftunnel_5finit',['remmina_rdp_tunnel_init',['../rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fui_5fclipboard',['REMMINA_RDP_UI_CLIPBOARD',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fformatlist',['REMMINA_RDP_UI_CLIPBOARD_FORMATLIST',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fget_5fdata',['REMMINA_RDP_UI_CLIPBOARD_GET_DATA',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fset_5fcontent',['REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fset_5fdata',['REMMINA_RDP_UI_CLIPBOARD_SET_DATA',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fconnected',['REMMINA_RDP_UI_CONNECTED',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fcursor',['REMMINA_RDP_UI_CURSOR',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fevent',['REMMINA_RDP_UI_EVENT',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fevent_5fdestroy_5fcairo_5fsurface',['REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE',['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48',1,'REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE():&#160;rdp_plugin.h'],['../rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31',1,'remmina_rdp_ui_event_destroy_cairo_surface(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fui_5fevent_5fupdate_5fscale',['remmina_rdp_ui_event_update_scale',['../rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde',1,'remmina_rdp_ui_event_update_scale(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4',1,'REMMINA_RDP_UI_EVENT_UPDATE_SCALE():&#160;rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fnocodec',['REMMINA_RDP_UI_NOCODEC',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5freconnect_5fprogress',['REMMINA_RDP_UI_RECONNECT_PROGRESS',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5frfx',['REMMINA_RDP_UI_RFX',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fupdate_5fregions',['REMMINA_RDP_UI_UPDATE_REGIONS',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fverify_5fcertificate',['remmina_rdp_verify_certificate',['../rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fverify_5fchanged_5fcertificate',['remmina_rdp_verify_changed_certificate',['../rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5',1,'rdp_plugin.c']]],
+ ['remmina_5frdpf',['remmina_rdpf',['../rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619',1,'rdp_plugin.c']]],
+ ['remmina_5frdps',['remmina_rdps',['../rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba',1,'rdp_plugin.c']]],
+ ['remmina_5frsa_5fpubkey_5fv1',['remmina_RSA_PubKey_v1',['../remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79',1,'remmina_stats_sender.c']]],
+ ['remmina_5fschedluer_5fremove',['remmina_schedluer_remove',['../remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b',1,'remmina_scheduler.c']]],
+ ['remmina_5fscheduler_2ec',['remmina_scheduler.c',['../remmina__scheduler_8c.html',1,'']]],
+ ['remmina_5fscheduler_2eh',['remmina_scheduler.h',['../remmina__scheduler_8h.html',1,'']]],
+ ['remmina_5fscheduler_5fperiodic_5fcheck',['remmina_scheduler_periodic_check',['../remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1',1,'remmina_scheduler.c']]],
+ ['remmina_5fscheduler_5fsetup',['remmina_scheduler_setup',['../remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a',1,'remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval):&#160;remmina_scheduler.c'],['../remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6',1,'remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval):&#160;remmina_scheduler.c']]],
+ ['remmina_5fscrolled_5fviewport_2ec',['remmina_scrolled_viewport.c',['../remmina__scrolled__viewport_8c.html',1,'']]],
+ ['remmina_5fscrolled_5fviewport_2eh',['remmina_scrolled_viewport.h',['../remmina__scrolled__viewport_8h.html',1,'']]],
+ ['remmina_5fscrolled_5fviewport_5fclass_5finit',['remmina_scrolled_viewport_class_init',['../remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fdestroy',['remmina_scrolled_viewport_destroy',['../remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fenter',['remmina_scrolled_viewport_enter',['../remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fget_5fpreferred_5fheight',['remmina_scrolled_viewport_get_preferred_height',['../remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fget_5ftype',['remmina_scrolled_viewport_get_type',['../remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312',1,'remmina_scrolled_viewport.h']]],
+ ['remmina_5fscrolled_5fviewport_5finit',['remmina_scrolled_viewport_init',['../remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fleave',['remmina_scrolled_viewport_leave',['../remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fmotion_5ftimeout',['remmina_scrolled_viewport_motion_timeout',['../remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fnew',['remmina_scrolled_viewport_new',['../remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee',1,'remmina_scrolled_viewport_new(void):&#160;remmina_scrolled_viewport.c'],['../remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee',1,'remmina_scrolled_viewport_new(void):&#160;remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fremove_5fmotion',['remmina_scrolled_viewport_remove_motion',['../remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c',1,'remmina_scrolled_viewport_remove_motion(RemminaScrolledViewport *gsv):&#160;remmina_scrolled_viewport.c'],['../remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c',1,'remmina_scrolled_viewport_remove_motion(RemminaScrolledViewport *gsv):&#160;remmina_scrolled_viewport.c']]],
+ ['remmina_5fsecret_5fplugin',['remmina_secret_plugin',['../remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fsftp_5fbasic_5fsettings',['remmina_sftp_basic_settings',['../remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fsftp_5fclient_2ec',['remmina_sftp_client.c',['../remmina__sftp__client_8c.html',1,'']]],
+ ['remmina_5fsftp_5fclient_2eh',['remmina_sftp_client.h',['../remmina__sftp__client_8h.html',1,'']]],
+ ['remmina_5fsftp_5fclient_5fconfirm_5fresume',['remmina_sftp_client_confirm_resume',['../remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33',1,'remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33',1,'remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path):&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fdestroy',['remmina_sftp_client_destroy',['../remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fget_5ftype',['remmina_sftp_client_get_type',['../remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d',1,'remmina_sftp_client.h']]],
+ ['remmina_5fsftp_5fclient_5finit',['remmina_sftp_client_init',['../remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fnew',['remmina_sftp_client_new',['../remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba',1,'remmina_sftp_client_new(void):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d',1,'remmina_sftp_client_new():&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fcanceltask',['remmina_sftp_client_on_canceltask',['../remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fdeletefile',['remmina_sftp_client_on_deletefile',['../remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fnewtask',['remmina_sftp_client_on_newtask',['../remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fopendir',['remmina_sftp_client_on_opendir',['../remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fopen',['remmina_sftp_client_open',['../remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1',1,'remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1',1,'remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp):&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5frefresh',['remmina_sftp_client_refresh',['../remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fsftp_5fsession_5fclosedir',['remmina_sftp_client_sftp_session_closedir',['../remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fsftp_5fsession_5fopendir',['remmina_sftp_client_sftp_session_opendir',['../remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fdownload_5ffile',['remmina_sftp_client_thread_download_file',['../remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fget_5ftask',['remmina_sftp_client_thread_get_task',['../remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fmain',['remmina_sftp_client_thread_main',['../remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fmkdir',['remmina_sftp_client_thread_mkdir',['../remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5frecursive_5fdir',['remmina_sftp_client_thread_recursive_dir',['../remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5frecursive_5flocaldir',['remmina_sftp_client_thread_recursive_localdir',['../remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fset_5ferror',['remmina_sftp_client_thread_set_error',['../remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fset_5ffinish',['remmina_sftp_client_thread_set_finish',['../remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fupdate_5ftask',['remmina_sftp_client_thread_update_task',['../remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fupload_5ffile',['remmina_sftp_client_thread_upload_file',['../remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5ffree',['remmina_sftp_free',['../remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fnew_5ffrom_5ffile',['remmina_sftp_new_from_file',['../remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fnew_5ffrom_5fssh',['remmina_sftp_new_from_ssh',['../remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fopen',['remmina_sftp_open',['../remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fplugin_2ec',['remmina_sftp_plugin.c',['../remmina__sftp__plugin_8c.html',1,'']]],
+ ['remmina_5fsftp_5fplugin_2eh',['remmina_sftp_plugin.h',['../remmina__sftp__plugin_8h.html',1,'']]],
+ ['remmina_5fsftp_5fplugin_5fregister',['remmina_sftp_plugin_register',['../remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9',1,'remmina_sftp_plugin_register(void):&#160;remmina_sftp_plugin.c'],['../remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4',1,'remmina_sftp_plugin_register(void):&#160;remmina_sftp_plugin.c']]],
+ ['remmina_5fsha1_5ffile',['remmina_sha1_file',['../remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8',1,'remmina_sha1_file(const gchar *filename):&#160;remmina_utils.c'],['../remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8',1,'remmina_sha1_file(const gchar *filename):&#160;remmina_utils.c']]],
+ ['remmina_5fsodium_2ec',['remmina_sodium.c',['../remmina__sodium_8c.html',1,'']]],
+ ['remmina_5fsodium_2eh',['remmina_sodium.h',['../remmina__sodium_8h.html',1,'']]],
+ ['remmina_5fsodium_5finit',['remmina_sodium_init',['../remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a',1,'remmina_sodium_init(void):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a',1,'remmina_sodium_init(void):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash',['remmina_sodium_pwhash',['../remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c',1,'remmina_sodium_pwhash(const gchar *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c',1,'remmina_sodium_pwhash(const gchar *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash_5fstr',['remmina_sodium_pwhash_str',['../remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e',1,'remmina_sodium_pwhash_str(const gchar *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e',1,'remmina_sodium_pwhash_str(const gchar *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash_5fstr_5fverify',['remmina_sodium_pwhash_str_verify',['../remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f',1,'remmina_sodium_pwhash_str_verify(const char *key, const char *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f',1,'remmina_sodium_pwhash_str_verify(const char *key, const char *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fssh_2ec',['remmina_ssh.c',['../remmina__ssh_8c.html',1,'']]],
+ ['remmina_5fssh_2eh',['remmina_ssh.h',['../remmina__ssh_8h.html',1,'']]],
+ ['remmina_5fssh_5fadvanced_5fsettings',['remmina_ssh_advanced_settings',['../remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fauth',['remmina_ssh_auth',['../remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b',1,'remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b',1,'remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fagent',['remmina_ssh_auth_agent',['../remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fauthfailed_5fretry_5fafter_5fprompt',['REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fauto_5fpubkey',['remmina_ssh_auth_auto_pubkey',['../remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5ffatal_5ferror',['REMMINA_SSH_AUTH_FATAL_ERROR',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fgssapi',['remmina_ssh_auth_gssapi',['../remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fgui',['remmina_ssh_auth_gui',['../remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5finteractive',['remmina_ssh_auth_interactive',['../remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fpassword',['remmina_ssh_auth_password',['../remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fpubkey',['remmina_ssh_auth_pubkey',['../remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fresult',['remmina_ssh_auth_result',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fsuccess',['REMMINA_SSH_AUTH_SUCCESS',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fusercancel',['REMMINA_SSH_AUTH_USERCANCEL',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fbasic_5fsettings',['remmina_ssh_basic_settings',['../remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fconvert',['remmina_ssh_convert',['../remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ffind_5fidentity',['remmina_ssh_find_identity',['../remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798',1,'remmina_ssh_find_identity(void):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798',1,'remmina_ssh_find_identity(void):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5ffree',['remmina_ssh_free',['../remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fidentity_5fpath',['remmina_ssh_identity_path',['../remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42',1,'remmina_ssh_identity_path(const gchar *id):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42',1,'remmina_ssh_identity_path(const gchar *id):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5finit_5ffrom_5ffile',['remmina_ssh_init_from_file',['../remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5finit_5fsession',['remmina_ssh_init_session',['../remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fkeystroke',['remmina_ssh_keystroke',['../remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_2ec',['remmina_ssh_plugin.c',['../remmina__ssh__plugin_8c.html',1,'']]],
+ ['remmina_5fssh_5fplugin_2eh',['remmina_ssh_plugin.h',['../remmina__ssh__plugin_8h.html',1,'']]],
+ ['remmina_5fssh_5fplugin_5fload_5fterminal_5fpalettes',['remmina_ssh_plugin_load_terminal_palettes',['../remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_5fpopup_5fmenu',['remmina_ssh_plugin_popup_menu',['../remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9',1,'remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9',1,'remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_5fregister',['remmina_ssh_plugin_register',['../remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c',1,'remmina_ssh_plugin_register(void):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9',1,'remmina_ssh_plugin_register(void):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fset_5fapplication_5ferror',['remmina_ssh_set_application_error',['../remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d',1,'remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d',1,'remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fset_5ferror',['remmina_ssh_set_error',['../remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553',1,'remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553',1,'remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fshell_5ffree',['remmina_ssh_shell_free',['../remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fnew_5ffrom_5ffile',['remmina_ssh_shell_new_from_file',['../remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fnew_5ffrom_5fssh',['remmina_ssh_shell_new_from_ssh',['../remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fopen',['remmina_ssh_shell_open',['../remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fset_5fsize',['remmina_ssh_shell_set_size',['../remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fcancel_5faccept',['remmina_ssh_tunnel_cancel_accept',['../remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5ffree',['remmina_ssh_tunnel_free',['../remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fnew_5ffrom_5ffile',['remmina_ssh_tunnel_new_from_file',['../remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fopen',['REMMINA_SSH_TUNNEL_OPEN',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14',1,'REMMINA_SSH_TUNNEL_OPEN():&#160;remmina_ssh.h'],['../remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53',1,'remmina_ssh_tunnel_open(RemminaSSHTunnel *tunnel, const gchar *host, gint port, gint local_port):&#160;remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5freverse',['remmina_ssh_tunnel_reverse',['../remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2',1,'remmina_ssh_tunnel_reverse(RemminaSSHTunnel *tunnel, gint port, gint local_port):&#160;remmina_ssh.h'],['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459',1,'REMMINA_SSH_TUNNEL_REVERSE():&#160;remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fterminated',['remmina_ssh_tunnel_terminated',['../remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fx11',['REMMINA_SSH_TUNNEL_X11',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91',1,'REMMINA_SSH_TUNNEL_X11():&#160;remmina_ssh.h'],['../remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146',1,'remmina_ssh_tunnel_x11(RemminaSSHTunnel *tunnel, const gchar *cmd):&#160;remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fxport',['REMMINA_SSH_TUNNEL_XPORT',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326',1,'REMMINA_SSH_TUNNEL_XPORT():&#160;remmina_ssh.h'],['../remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4',1,'remmina_ssh_tunnel_xport(RemminaSSHTunnel *tunnel, gboolean bindlocalhost):&#160;remmina_ssh.h']]],
+ ['remmina_5fssh_5funconvert',['remmina_ssh_unconvert',['../remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea',1,'remmina_ssh.h']]],
+ ['remmina_5fst_5ffeatures',['remmina_st_features',['../st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4',1,'st_plugin.c']]],
+ ['remmina_5fst_5fquery_5ffeature',['remmina_st_query_feature',['../st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01',1,'st_plugin.c']]],
+ ['remmina_5fstat_5fsender_5fcan_5fsend',['remmina_stat_sender_can_send',['../remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516',1,'remmina_stat_sender_can_send():&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff',1,'remmina_stat_sender_can_send(void):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstats_2ec',['remmina_stats.c',['../remmina__stats_8c.html',1,'']]],
+ ['remmina_5fstats_2eh',['remmina_stats.h',['../remmina__stats_8h.html',1,'']]],
+ ['remmina_5fstats_5fcollector',['remmina_stats_collector',['../remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fcollector_5fdone',['remmina_stats_collector_done',['../remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fget_5fall',['remmina_stats_get_all',['../remmina__stats_8c.html#a7398b36347e3621772776c466b565641',1,'remmina_stats_get_all():&#160;remmina_stats.c'],['../remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae',1,'remmina_stats_get_all(void):&#160;remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fgtk_5fbackend',['remmina_stats_get_gtk_backend',['../remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fgtk_5fversion',['remmina_stats_get_gtk_version',['../remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5findicator',['remmina_stats_get_indicator',['../remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fkiosk_5fmode',['remmina_stats_get_kiosk_mode',['../remmina__stats_8c.html#a56956b7db0c631121151b19b920176da',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fmaster_5fpassword_5fstatus',['remmina_stats_get_master_password_status',['../remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fos_5finfo',['remmina_stats_get_os_info',['../remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fprofiles',['remmina_stats_get_profiles',['../remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fsecret_5fplugin',['remmina_stats_get_secret_plugin',['../remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fuid',['remmina_stats_get_uid',['../remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fuser_5fenv',['remmina_stats_get_user_env',['../remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fversion',['remmina_stats_get_version',['../remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fwm_5fname',['remmina_stats_get_wm_name',['../remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fsender_2ec',['remmina_stats_sender.c',['../remmina__stats__sender_8c.html',1,'']]],
+ ['remmina_5fstats_5fsender_2eh',['remmina_stats_sender.h',['../remmina__stats__sender_8h.html',1,'']]],
+ ['remmina_5fstats_5fsender_5fperiodic_5fcheck',['remmina_stats_sender_periodic_check',['../remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fsender_5fschedule',['remmina_stats_sender_schedule',['../remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9',1,'remmina_stats_sender_schedule():&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802',1,'remmina_stats_sender_schedule(void):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fsender_5fsend',['remmina_stats_sender_send',['../remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919',1,'remmina_stats_sender_send(gboolean show_only):&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919',1,'remmina_stats_sender_send(gboolean show_only):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstring_5farray_2ec',['remmina_string_array.c',['../remmina__string__array_8c.html',1,'']]],
+ ['remmina_5fstring_5farray_2eh',['remmina_string_array.h',['../remmina__string__array_8h.html',1,'']]],
+ ['remmina_5fstring_5farray_5fadd',['remmina_string_array_add',['../remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0',1,'remmina_string_array_add(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0',1,'remmina_string_array_add(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fcompare_5ffunc',['remmina_string_array_compare_func',['../remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5',1,'remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5ffind',['remmina_string_array_find',['../remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986',1,'remmina_string_array_find(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986',1,'remmina_string_array_find(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5ffree',['remmina_string_array_free',['../remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe',1,'remmina_string_array_free(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe',1,'remmina_string_array_free(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fintersect',['remmina_string_array_intersect',['../remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308',1,'remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308',1,'remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew',['remmina_string_array_new',['../remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02',1,'remmina_string_array_new(void):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02',1,'remmina_string_array_new(void):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew_5ffrom_5fallocated_5fstring',['remmina_string_array_new_from_allocated_string',['../remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a',1,'remmina_string_array_new_from_allocated_string(gchar *strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a',1,'remmina_string_array_new_from_allocated_string(gchar *strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew_5ffrom_5fstring',['remmina_string_array_new_from_string',['../remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90',1,'remmina_string_array_new_from_string(const gchar *strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90',1,'remmina_string_array_new_from_string(const gchar *strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fremove',['remmina_string_array_remove',['../remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3',1,'remmina_string_array_remove(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3',1,'remmina_string_array_remove(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fremove_5findex',['remmina_string_array_remove_index',['../remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b',1,'remmina_string_array_remove_index(RemminaStringArray *array, gint i):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b',1,'remmina_string_array_remove_index(RemminaStringArray *array, gint i):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fsort',['remmina_string_array_sort',['../remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70',1,'remmina_string_array_sort(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70',1,'remmina_string_array_sort(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fto_5fstring',['remmina_string_array_to_string',['../remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec',1,'remmina_string_array_to_string(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec',1,'remmina_string_array_to_string(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5flist_2ec',['remmina_string_list.c',['../remmina__string__list_8c.html',1,'']]],
+ ['remmina_5fstring_5flist_2eh',['remmina_string_list.h',['../remmina__string__list_8h.html',1,'']]],
+ ['remmina_5fstring_5flist_5fget_5ftext',['remmina_string_list_get_text',['../remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec',1,'remmina_string_list_get_text(void):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec',1,'remmina_string_list_get_text(void):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5finit',['remmina_string_list_init',['../remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fmove_5fiter',['remmina_string_list_move_iter',['../remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fnew',['remmina_string_list_new',['../remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e',1,'remmina_string_list_new(gboolean two_columns, const gchar *fields_separator):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029',1,'remmina_string_list_new(gboolean two_columns, const gchar *fields_separator):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fadd',['remmina_string_list_on_action_add',['../remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fdown',['remmina_string_list_on_action_down',['../remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fremove',['remmina_string_list_on_action_remove',['../remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fup',['remmina_string_list_on_action_up',['../remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5fcell_5fedited',['remmina_string_list_on_cell_edited',['../remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5ftext',['remmina_string_list_set_text',['../remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0',1,'remmina_string_list_set_text(const gchar *text, const gboolean clear_data):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0',1,'remmina_string_list_set_text(const gchar *text, const gboolean clear_data):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5ftitles',['remmina_string_list_set_titles',['../remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87',1,'remmina_string_list_set_titles(gchar *title1, gchar *title2):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87',1,'remmina_string_list_set_titles(gchar *title1, gchar *title2):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5fvalidation_5ffunc',['remmina_string_list_set_validation_func',['../remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e',1,'remmina_string_list_set_validation_func(RemminaStringListValidationFunc func):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e',1,'remmina_string_list_set_validation_func(RemminaStringListValidationFunc func):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fupdate_5fbuttons_5fstate',['remmina_string_list_update_buttons_state',['../remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff',1,'remmina_string_list.c']]],
+ ['remmina_5fsysinfo_2ec',['remmina_sysinfo.c',['../remmina__sysinfo_8c.html',1,'']]],
+ ['remmina_5fsysinfo_2eh',['remmina_sysinfo.h',['../remmina__sysinfo_8h.html',1,'']]],
+ ['remmina_5fsysinfo_5fget_5fgnome_5fshell_5fversion',['remmina_sysinfo_get_gnome_shell_version',['../remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f',1,'remmina_sysinfo_get_gnome_shell_version():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb',1,'remmina_sysinfo_get_gnome_shell_version(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5fsysinfo_5fget_5fwm_5fname',['remmina_sysinfo_get_wm_name',['../remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4',1,'remmina_sysinfo_get_wm_name():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a',1,'remmina_sysinfo_get_wm_name(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5fsysinfo_5fis_5fappindicator_5favailable',['remmina_sysinfo_is_appindicator_available',['../remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590',1,'remmina_sysinfo_is_appindicator_available():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23',1,'remmina_sysinfo_is_appindicator_available(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5ftab_5fall',['REMMINA_TAB_ALL',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fby_5fgroup',['REMMINA_TAB_BY_GROUP',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fby_5fprotocol',['REMMINA_TAB_BY_PROTOCOL',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fnone',['REMMINA_TAB_NONE',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631',1,'remmina_pref.h']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5faccept',['remmina_tp_channel_handler_accept',['../telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5faccount_5fready',['remmina_tp_channel_handler_account_ready',['../telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fchannel_5fclosed',['remmina_tp_channel_handler_channel_closed',['../telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fchannel_5fready',['remmina_tp_channel_handler_channel_ready',['../telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fconnect',['remmina_tp_channel_handler_connect',['../telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fconnection_5fready',['remmina_tp_channel_handler_connection_ready',['../telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5ffree',['remmina_tp_channel_handler_free',['../telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fget_5fcontacts',['remmina_tp_channel_handler_get_contacts',['../telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fget_5fservice',['remmina_tp_channel_handler_get_service',['../telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fnew',['remmina_tp_channel_handler_new',['../telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404',1,'remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context):&#160;telepathy_channel_handler.c'],['../telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c',1,'remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context):&#160;telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fon_5fdisconnect',['remmina_tp_channel_handler_on_disconnect',['../telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fon_5fresponse',['remmina_tp_channel_handler_on_response',['../telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fhandler',['remmina_tp_handler',['../telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0',1,'telepathy_plugin.c']]],
+ ['remmina_5ftp_5fhandler_5fclass_5finit',['remmina_tp_handler_class_init',['../telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fhandle_5fchannels',['remmina_tp_handler_handle_channels',['../telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fiface_5finit',['remmina_tp_handler_iface_init',['../telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5finit',['remmina_tp_handler_init',['../telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fnew',['remmina_tp_handler_new',['../telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6',1,'remmina_tp_handler_new(void):&#160;telepathy_handler.c'],['../telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6',1,'remmina_tp_handler_new(void):&#160;telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fregister',['remmina_tp_handler_register',['../telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9',1,'telepathy_handler.c']]],
+ ['remmina_5ftrace_5fcalls_2eh',['remmina_trace_calls.h',['../remmina__trace__calls_8h.html',1,'']]],
+ ['remmina_5ftraceroute_2esh',['remmina_traceroute.sh',['../remmina__traceroute_8sh.html',1,'']]],
+ ['remmina_5funlock_2ec',['remmina_unlock.c',['../remmina__unlock_8c.html',1,'']]],
+ ['remmina_5funlock_2eh',['remmina_unlock.h',['../remmina__unlock_8h.html',1,'']]],
+ ['remmina_5funlock_5fcancel_5fclicked',['remmina_unlock_cancel_clicked',['../remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5fdialog',['remmina_unlock_dialog',['../remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5fnew',['remmina_unlock_new',['../remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e',1,'remmina_unlock_new(GtkWindow *parent):&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7',1,'remmina_unlock_new(GtkWindow *parent):&#160;remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5fdestroy',['remmina_unlock_timer_destroy',['../remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5finit',['remmina_unlock_timer_init',['../remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5freset',['remmina_unlock_timer_reset',['../remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5funlock_5fclicked',['remmina_unlock_unlock_clicked',['../remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3',1,'remmina_unlock.c']]],
+ ['remmina_5futils_2ec',['remmina_utils.c',['../remmina__utils_8c.html',1,'']]],
+ ['remmina_5futils_2eh',['remmina_utils.h',['../remmina__utils_8h.html',1,'']]],
+ ['remmina_5futils_5fget_5fetc_5frelease',['remmina_utils_get_etc_release',['../remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c',1,'remmina_utils_get_etc_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c',1,'remmina_utils_get_etc_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5farch',['remmina_utils_get_kernel_arch',['../remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730',1,'remmina_utils_get_kernel_arch():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730',1,'remmina_utils_get_kernel_arch():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5fname',['remmina_utils_get_kernel_name',['../remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522',1,'remmina_utils_get_kernel_name():&#160;remmina_utils.c'],['../remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522',1,'remmina_utils_get_kernel_name():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5frelease',['remmina_utils_get_kernel_release',['../remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa',1,'remmina_utils_get_kernel_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa',1,'remmina_utils_get_kernel_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flang',['remmina_utils_get_lang',['../remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324',1,'remmina_utils_get_lang():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324',1,'remmina_utils_get_lang():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fcodename',['remmina_utils_get_lsb_codename',['../remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c',1,'remmina_utils_get_lsb_codename():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c',1,'remmina_utils_get_lsb_codename():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fdescription',['remmina_utils_get_lsb_description',['../remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75',1,'remmina_utils_get_lsb_description():&#160;remmina_utils.c'],['../remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75',1,'remmina_utils_get_lsb_description():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fid',['remmina_utils_get_lsb_id',['../remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22',1,'remmina_utils_get_lsb_id():&#160;remmina_utils.c'],['../remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22',1,'remmina_utils_get_lsb_id():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5frelease',['remmina_utils_get_lsb_release',['../remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca',1,'remmina_utils_get_lsb_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca',1,'remmina_utils_get_lsb_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fos_5finfo',['remmina_utils_get_os_info',['../remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99',1,'remmina_utils_get_os_info():&#160;remmina_utils.c'],['../remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99',1,'remmina_utils_get_os_info():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fread_5fdistrofile',['remmina_utils_read_distrofile',['../remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa',1,'remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5ffind',['remmina_utils_string_find',['../remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355',1,'remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;remmina_utils.c'],['../remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be',1,'remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5freplace',['remmina_utils_string_replace',['../remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4',1,'remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;remmina_utils.c'],['../remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4',1,'remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5freplace_5fall',['remmina_utils_string_replace_all',['../remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66',1,'remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;remmina_utils.c'],['../remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66',1,'remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5fstrip',['remmina_utils_string_strip',['../remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d',1,'remmina_utils_string_strip(const gchar *s):&#160;remmina_utils.c'],['../remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d',1,'remmina_utils_string_strip(const gchar *s):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstrpos',['remmina_utils_strpos',['../remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3',1,'remmina_utils.c']]],
+ ['remmina_5fview_5ffile_5flist',['REMMINA_VIEW_FILE_LIST',['../remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7',1,'remmina_pref.h']]],
+ ['remmina_5fview_5ffile_5ftree',['REMMINA_VIEW_FILE_TREE',['../remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df',1,'remmina_pref.h']]],
+ ['remmina_5fwidget_5fpool',['remmina_widget_pool',['../remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2',1,'remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_2ec',['remmina_widget_pool.c',['../remmina__widget__pool_8c.html',1,'']]],
+ ['remmina_5fwidget_5fpool_2eh',['remmina_widget_pool.h',['../remmina__widget__pool_8h.html',1,'']]],
+ ['remmina_5fwidget_5fpool_5fcount',['remmina_widget_pool_count',['../remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8',1,'remmina_widget_pool_count():&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a',1,'remmina_widget_pool_count(void):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5ffind',['remmina_widget_pool_find',['../remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05',1,'remmina_widget_pool_find(GType type, const gchar *tag):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05',1,'remmina_widget_pool_find(GType type, const gchar *tag):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5ffind_5fby_5fwindow',['remmina_widget_pool_find_by_window',['../remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e',1,'remmina_widget_pool_find_by_window(GType type, GdkWindow *window):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e',1,'remmina_widget_pool_find_by_window(GType type, GdkWindow *window):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fforeach',['remmina_widget_pool_foreach',['../remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b',1,'remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b',1,'remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5finit',['remmina_widget_pool_init',['../remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09',1,'remmina_widget_pool_init(void):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09',1,'remmina_widget_pool_init(void):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fon_5fwidget_5fdestroy',['remmina_widget_pool_on_widget_destroy',['../remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664',1,'remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fregister',['remmina_widget_pool_register',['../remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95',1,'remmina_widget_pool_register(GtkWidget *widget):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95',1,'remmina_widget_pool_register(GtkWidget *widget):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwww_5ffeatures',['remmina_www_features',['../www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8',1,'www_plugin.c']]],
+ ['remmina_5fwww_5fquery_5ffeature',['remmina_www_query_feature',['../www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4',1,'www_plugin.c']]],
+ ['remmina_5fwww_5fweb_5fview_5fjs_5ffinished',['remmina_www_web_view_js_finished',['../www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb',1,'www_plugin.c']]],
+ ['remminaappletmenu',['RemminaAppletMenu',['../remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d',1,'remmina_applet_menu.h']]],
+ ['remminaappletmenuclass',['RemminaAppletMenuClass',['../remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a',1,'remmina_applet_menu.h']]],
+ ['remminaappletmenuitem',['RemminaAppletMenuItem',['../remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenuitemclass',['RemminaAppletMenuItemClass',['../remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenuitemtype',['RemminaAppletMenuItemType',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenunewconnectiontype',['RemminaAppletMenuNewConnectionType',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb',1,'remmina_applet_menu.h']]],
+ ['remminaappletmenupriv',['RemminaAppletMenuPriv',['../remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423',1,'remmina_applet_menu.h']]],
+ ['remminaauthpwdtype',['RemminaAuthpwdType',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5',1,'types.h']]],
+ ['remminaavahi',['RemminaAvahi',['../remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663',1,'remmina_avahi.h']]],
+ ['remminaavahipriv',['RemminaAvahiPriv',['../remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba',1,'remmina_avahi.h']]],
+ ['remminacellrendererpixbuf',['RemminaCellRendererPixbuf',['../remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30',1,'remmina_ftp_client.c']]],
+ ['remminacellrendererpixbufclass',['RemminaCellRendererPixbufClass',['../remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c',1,'remmina_ftp_client.c']]],
+ ['remminachatwindow',['RemminaChatWindow',['../remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446',1,'remmina_chat_window.h']]],
+ ['remminachatwindowclass',['RemminaChatWindowClass',['../remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4',1,'remmina_chat_window.h']]],
+ ['remminacolorpref',['RemminaColorPref',['../remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970',1,'remmina_pref.h']]],
+ ['remminacommandtype',['RemminaCommandType',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c',1,'remmina_exec.h']]],
+ ['remminacondexittype',['RemminaCondExitType',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5',1,'remmina_exec.h']]],
+ ['remminaconnectionobject',['RemminaConnectionObject',['../rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517',1,'RemminaConnectionObject():&#160;rcw.c'],['../rcw_8h.html#a4c54d77416105f6b094796316f5360a2',1,'RemminaConnectionObject():&#160;rcw.h']]],
+ ['remminaconnectionwindow',['RemminaConnectionWindow',['../rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7',1,'rcw.h']]],
+ ['remminaconnectionwindowclass',['RemminaConnectionWindowClass',['../rcw_8h.html#a188e61c274e65626077c95e5f426c296',1,'rcw.h']]],
+ ['remminaconnectionwindowondeleteconfirmmode',['RemminaConnectionWindowOnDeleteConfirmMode',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307f',1,'rcw.h']]],
+ ['remminaconnectionwindowpriv',['RemminaConnectionWindowPriv',['../rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec',1,'rcw.h']]],
+ ['remminadir',['remminadir',['../remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482',1,'remmina_file_manager.c']]],
+ ['remminaentryplugin',['RemminaEntryPlugin',['../plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb',1,'plugin.h']]],
+ ['remminafile',['remminafile',['../structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9',1,'remmina_masterthread_exec_data::remminafile()'],['../types_8h.html#a112d7cc6c755209cabb68cf2a62ad515',1,'RemminaFile():&#160;types.h']]],
+ ['remminafileeditor',['RemminaFileEditor',['../remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498',1,'remmina_file_editor.h']]],
+ ['remminafileeditorclass',['RemminaFileEditorClass',['../remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208',1,'remmina_file_editor.h']]],
+ ['remminafileeditorpriv',['RemminaFileEditorPriv',['../remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530',1,'remmina_file_editor.h']]],
+ ['remminafileplugin',['RemminaFilePlugin',['../plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e',1,'plugin.h']]],
+ ['remminaftpclient',['RemminaFTPClient',['../remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4',1,'remmina_ftp_client.h']]],
+ ['remminaftpclientclass',['RemminaFTPClientClass',['../remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069',1,'remmina_ftp_client.h']]],
+ ['remminaftpclientpriv',['RemminaFTPClientPriv',['../remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a',1,'remmina_ftp_client.h']]],
+ ['remminaftptask',['RemminaFTPTask',['../remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b',1,'remmina_ftp_client.h']]],
+ ['remminagroupdata',['RemminaGroupData',['../remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90',1,'remmina_file_manager.h']]],
+ ['remminahostkeyfunc',['RemminaHostkeyFunc',['../remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390',1,'remmina_protocol_widget.h']]],
+ ['remminaicon',['RemminaIcon',['../remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5',1,'remmina_icon.c']]],
+ ['remminakeychooserarguments',['RemminaKeyChooserArguments',['../remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27',1,'remmina_key_chooser.h']]],
+ ['remminakeyval',['RemminaKeyVal',['../vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e',1,'vnc_plugin.c']]],
+ ['remminalogwindow',['RemminaLogWindow',['../remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19',1,'remmina_log.c']]],
+ ['remminalogwindowclass',['RemminaLogWindowClass',['../remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe',1,'remmina_log.c']]],
+ ['remminamain',['RemminaMain',['../remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1',1,'RemminaMain():&#160;remmina_main.h'],['../remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89',1,'remminamain():&#160;remmina_main.c']]],
+ ['remminamainpriv',['RemminaMainPriv',['../remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052',1,'remmina_main.h']]],
+ ['remminamessagepanelcallback',['RemminaMessagePanelCallback',['../remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a',1,'remmina_message_panel.h']]],
+ ['remminamessagepanelflags',['RemminaMessagePanelFlags',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486',1,'types.h']]],
+ ['remminamessagepanelprivate',['RemminaMessagePanelPrivate',['../struct_remmina_message_panel_private.html',1,'']]],
+ ['remminamtexecdata',['RemminaMTExecData',['../remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e',1,'remmina_masterthread_exec.h']]],
+ ['remminanewsdialog',['RemminaNewsDialog',['../rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709',1,'rmnews.h']]],
+ ['remminanxeventtype',['RemminaNXEventType',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c',1,'nx_plugin.h']]],
+ ['remminanxlogcallback',['RemminaNXLogCallback',['../nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8',1,'nx_session.h']]],
+ ['remminanxpassphrasecallback',['RemminaNXPassphraseCallback',['../nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c',1,'nx_session.h']]],
+ ['remminanxsession',['RemminaNXSession',['../nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff',1,'nx_session.h']]],
+ ['remminaplugin',['RemminaPlugin',['../plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22',1,'plugin.h']]],
+ ['remminaplugindata',['RemminaPluginData',['../st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4',1,'st_plugin.c']]],
+ ['remminapluginentryfunc',['RemminaPluginEntryFunc',['../plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948',1,'plugin.h']]],
+ ['remminapluginexecdata',['RemminaPluginExecData',['../exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8',1,'exec_plugin.c']]],
+ ['remminapluginfunc',['RemminaPluginFunc',['../remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18',1,'remmina_plugin_manager.h']]],
+ ['remminapluginnxdata',['RemminaPluginNxData',['../nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122',1,'nx_plugin.h']]],
+ ['remminapluginrdpevent',['RemminaPluginRdpEvent',['../rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336',1,'rdp_plugin.h']]],
+ ['remminapluginrdpeventtype',['RemminaPluginRdpEventType',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7',1,'rdp_plugin.h']]],
+ ['remminapluginrdpkeymapentry',['RemminaPluginRdpKeymapEntry',['../rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267',1,'rdp_plugin.h']]],
+ ['remminapluginrdpsetgrid',['RemminaPluginRdpsetGrid',['../rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b',1,'rdp_settings.c']]],
+ ['remminapluginrdpsetgridclass',['RemminaPluginRdpsetGridClass',['../rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4',1,'rdp_settings.c']]],
+ ['remminapluginrdpuiclipboardtype',['RemminaPluginRdpUiClipboardType',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuieeventtype',['RemminaPluginRdpUiEeventType',['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuiobject',['RemminaPluginRdpUiObject',['../rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuipointertype',['RemminaPluginRdpUiPointerType',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuitype',['RemminaPluginRdpUiType',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072',1,'rdp_plugin.h']]],
+ ['remminapluginscreenshotdata',['RemminaPluginScreenshotData',['../types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1',1,'types.h']]],
+ ['remminapluginservice',['RemminaPluginService',['../plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff',1,'plugin.h']]],
+ ['remminapluginsftpdata',['RemminaPluginSftpData',['../remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2',1,'remmina_sftp_plugin.c']]],
+ ['remminapluginspicedata',['RemminaPluginSpiceData',['../spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368',1,'spice_plugin.h']]],
+ ['remminapluginspicexferwidgets',['RemminaPluginSpiceXferWidgets',['../spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02',1,'spice_plugin_file_transfer.c']]],
+ ['remminapluginsshdata',['RemminaPluginSshData',['../remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7',1,'remmina_ssh_plugin.c']]],
+ ['remminaplugintype',['RemminaPluginType',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624a',1,'plugin.h']]],
+ ['remminapluginvnccoordinates',['RemminaPluginVncCoordinates',['../vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18',1,'vnc_plugin.h']]],
+ ['remminapluginvnccuttextparam',['RemminaPluginVncCuttextParam',['../vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307',1,'vnc_plugin.c']]],
+ ['remminapluginvncdata',['RemminaPluginVncData',['../vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9',1,'vnc_plugin.h']]],
+ ['remminapluginvncevent',['RemminaPluginVncEvent',['../vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18',1,'vnc_plugin.h']]],
+ ['remminapluginwwwdata',['RemminaPluginWWWData',['../www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9',1,'www_plugin.c']]],
+ ['remminapluginxdmcpdata',['RemminaPluginXdmcpData',['../xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe',1,'xdmcp_plugin.c']]],
+ ['remminapref',['RemminaPref',['../remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b',1,'remmina_pref.h']]],
+ ['remminaprefdialog',['RemminaPrefDialog',['../remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7',1,'remmina_pref_dialog.h']]],
+ ['remminaprefdialogpriv',['RemminaPrefDialogPriv',['../remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2',1,'remmina_pref_dialog.h']]],
+ ['remminaprefplugin',['RemminaPrefPlugin',['../plugin_8h.html#a8ffdd703265254b90f9a609795b427cc',1,'plugin.h']]],
+ ['remminaprotocolfeature',['RemminaProtocolFeature',['../types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74',1,'types.h']]],
+ ['remminaprotocolfeaturetype',['RemminaProtocolFeatureType',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5',1,'types.h']]],
+ ['remminaprotocolplugin',['RemminaProtocolPlugin',['../plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd',1,'plugin.h']]],
+ ['remminaprotocolsetting',['RemminaProtocolSetting',['../types_8h.html#a41c04d02e6a15ad17be8065453cc4933',1,'types.h']]],
+ ['remminaprotocolsettingopt',['RemminaProtocolSettingOpt',['../remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec',1,'remmina_ssh_plugin.h']]],
+ ['remminaprotocolsettingtype',['RemminaProtocolSettingType',['../types_8h.html#aee1a3e130e6991978acd907b52204350',1,'types.h']]],
+ ['remminaprotocolsshsetting',['RemminaProtocolSSHSetting',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7',1,'types.h']]],
+ ['remminaprotocolwidget',['RemminaProtocolWidget',['../types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4',1,'types.h']]],
+ ['remminaprotocolwidgetclass',['RemminaProtocolWidgetClass',['../types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8',1,'types.h']]],
+ ['remminaprotocolwidgetpriv',['RemminaProtocolWidgetPriv',['../remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19',1,'remmina_protocol_widget.h']]],
+ ['remminaprotocolwidgetresolutionmode',['RemminaProtocolWidgetResolutionMode',['../types_8h.html#a373ddef8221457d86c64830c26d3f78a',1,'types.h']]],
+ ['remminaprotocolwidgetsignaldata',['RemminaProtocolWidgetSignalData',['../remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1',1,'remmina_protocol_widget.c']]],
+ ['remminascalemode',['RemminaScaleMode',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7de',1,'types.h']]],
+ ['remminascrolledviewport',['RemminaScrolledViewport',['../remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f',1,'remmina_scrolled_viewport.h']]],
+ ['remminascrolledviewportclass',['RemminaScrolledViewportClass',['../remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036',1,'remmina_scrolled_viewport.h']]],
+ ['remminasecretplugin',['RemminaSecretPlugin',['../plugin_8h.html#aec59d37943e501da2d7107c933865782',1,'plugin.h']]],
+ ['remminasftp',['RemminaSFTP',['../remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca',1,'remmina_ssh.h']]],
+ ['remminasftpclient',['RemminaSFTPClient',['../remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6',1,'remmina_sftp_client.h']]],
+ ['remminasftpclientclass',['RemminaSFTPClientClass',['../remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492',1,'remmina_sftp_client.h']]],
+ ['remminassh',['RemminaSSH',['../remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc',1,'remmina_ssh.h']]],
+ ['remminasshexitfunc',['RemminaSSHExitFunc',['../remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01',1,'remmina_ssh.h']]],
+ ['remminasshshell',['RemminaSSHShell',['../remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d',1,'remmina_ssh.h']]],
+ ['remminasshtunnel',['RemminaSSHTunnel',['../remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286',1,'remmina_ssh.h']]],
+ ['remminasshtunnelbuffer',['RemminaSSHTunnelBuffer',['../remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0',1,'remmina_ssh.h']]],
+ ['remminasshtunnelcallback',['RemminaSSHTunnelCallback',['../remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924',1,'remmina_ssh.h']]],
+ ['remminastringarray',['RemminaStringArray',['../remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb',1,'remmina_string_array.h']]],
+ ['remminastringlist',['RemminaStringList',['../remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001',1,'remmina_string_list.h']]],
+ ['remminastringlistpriv',['RemminaStringListPriv',['../remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349',1,'remmina_string_list.h']]],
+ ['remminastringlistvalidationfunc',['RemminaStringListValidationFunc',['../remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb',1,'remmina_string_list.h']]],
+ ['remminatoolplugin',['RemminaToolPlugin',['../plugin_8h.html#a144360664546fcbf4d5aa0457c395f25',1,'plugin.h']]],
+ ['remminatpchannelhandler',['RemminaTpChannelHandler',['../telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84',1,'telepathy_channel_handler.c']]],
+ ['remminatphandler',['RemminaTpHandler',['../telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0',1,'telepathy_handler.h']]],
+ ['remminatphandlerclass',['RemminaTpHandlerClass',['../telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924',1,'telepathy_handler.h']]],
+ ['remminatunnelinitfunc',['RemminaTunnelInitFunc',['../types_8h.html#a1ace68e95e55a30fcf8b991f52332501',1,'types.h']]],
+ ['remminaunlockdialog',['RemminaUnlockDialog',['../remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720',1,'remmina_unlock.h']]],
+ ['remminavte',['remminavte',['../remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1',1,'remmina_ssh_plugin.c']]],
+ ['remminawidgetpoolforeachfunc',['RemminaWidgetPoolForEachFunc',['../remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e',1,'remmina_widget_pool.h']]],
+ ['remminaxporttunnelinitfunc',['RemminaXPortTunnelInitFunc',['../types_8h.html#afae2f546eaf9ef8a816a804e830055bf',1,'types.h']]],
+ ['remotedir',['remotedir',['../struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87',1,'_RemminaFTPTask']]],
+ ['remotedisplay',['remotedisplay',['../struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28',1,'_RemminaSSHTunnel']]],
+ ['renderer',['renderer',['../struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045',1,'_RemminaCellRendererPixbuf']]],
+ ['request',['request',['../struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0',1,'_RemminaPluginWWWData']]],
+ ['requestedformatid',['requestedFormatId',['../structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3',1,'rf_clipboard']]],
+ ['res_5finvalid',['RES_INVALID',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724',1,'types.h']]],
+ ['res_5fuse_5fclient',['RES_USE_CLIENT',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d',1,'types.h']]],
+ ['res_5fuse_5fcustom',['RES_USE_CUSTOM',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd',1,'types.h']]],
+ ['res_5fuse_5finitial_5fwindow_5fsize',['RES_USE_INITIAL_WINDOW_SIZE',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef',1,'types.h']]],
+ ['resolutions',['resolutions',['../struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37',1,'_RemminaPref']]],
+ ['resolutions_5flist',['resolutions_list',['../struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05',1,'_RemminaPrefDialogPriv']]],
+ ['response',['response',['../struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7',1,'_RemminaKeyChooserArguments::response()'],['../struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904',1,'MpRunInfo::response()'],['../struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508',1,'_RemminaNXSession::response()']]],
+ ['response_5fcallback',['response_callback',['../structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543',1,'remmina_masterthread_exec_data::response_callback()'],['../struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283',1,'RemminaMessagePanelPrivate::response_callback()']]],
+ ['response_5fcallback_5fdata',['response_callback_data',['../structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658',1,'remmina_masterthread_exec_data::response_callback_data()'],['../struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4',1,'RemminaMessagePanelPrivate::response_callback_data()']]],
+ ['response_5fpos',['response_pos',['../struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3',1,'_RemminaNXSession']]],
+ ['ret_5fmp',['ret_mp',['../structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1',1,'remmina_masterthread_exec_data']]],
+ ['retptr',['retptr',['../structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24',1,'remmina_plugin_rdp_ui_object']]],
+ ['retval',['retval',['../structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15',1,'remmina_masterthread_exec_data::retval()'],['../structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c',1,'remmina_masterthread_exec_data::retval()'],['../structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07',1,'remmina_masterthread_exec_data::retval()'],['../struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235',1,'_RemminaUnlockDialog::retval()'],['../struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813',1,'_RemminaNewsDialog::retval()'],['../structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee',1,'remmina_plugin_rdp_ui_object::retval()']]],
+ ['rf_5fauto_5freconnect',['rf_auto_reconnect',['../rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7',1,'rdp_plugin.c']]],
+ ['rf_5fbegin_5fpaint',['rf_begin_paint',['../rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf',1,'rdp_plugin.c']]],
+ ['rf_5fbitmap',['rf_bitmap',['../structrf__bitmap.html',1,'']]],
+ ['rf_5fbitmap_5fdecompress',['rf_Bitmap_Decompress',['../rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5ffree',['rf_Bitmap_Free',['../rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fnew',['rf_Bitmap_New',['../rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fpaint',['rf_Bitmap_Paint',['../rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fsetsurface',['rf_Bitmap_SetSurface',['../rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28',1,'rdp_graphics.c']]],
+ ['rf_5fcheck_5ffds',['rf_check_fds',['../rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098',1,'rdp_plugin.h']]],
+ ['rf_5fclipboard',['rf_clipboard',['../structrf__clipboard.html',1,'']]],
+ ['rf_5fcontext',['rf_context',['../structrf__context.html',1,'']]],
+ ['rf_5fdesktop_5fresize',['rf_desktop_resize',['../rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901',1,'rdp_plugin.c']]],
+ ['rf_5fend_5fpaint',['rf_end_paint',['../rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f',1,'rdp_plugin.c']]],
+ ['rf_5fget_5ffds',['rf_get_fds',['../rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc',1,'rdp_plugin.h']]],
+ ['rf_5fglyph',['rf_glyph',['../structrf__glyph.html',1,'']]],
+ ['rf_5fglyph_5fbegindraw',['rf_Glyph_BeginDraw',['../rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fdraw',['rf_Glyph_Draw',['../rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fenddraw',['rf_Glyph_EndDraw',['../rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5ffree',['rf_Glyph_Free',['../rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fnew',['rf_Glyph_New',['../rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce',1,'rdp_graphics.c']]],
+ ['rf_5finit',['rf_init',['../rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7',1,'rdp_plugin.h']]],
+ ['rf_5fkeyboard_5fset_5fime_5fstatus',['rf_keyboard_set_ime_status',['../rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b',1,'rdp_plugin.c']]],
+ ['rf_5fkeyboard_5fset_5findicators',['rf_keyboard_set_indicators',['../rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4',1,'rdp_plugin.c']]],
+ ['rf_5fobject_5ffree',['rf_object_free',['../rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433',1,'rdp_plugin.h']]],
+ ['rf_5fplay_5fsound',['rf_play_sound',['../rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde',1,'rdp_plugin.c']]],
+ ['rf_5fpointer',['rf_pointer',['../structrf__pointer.html',1,'']]],
+ ['rf_5fpointer_5ffree',['rf_Pointer_Free',['../rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fnew',['rf_Pointer_New',['../rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fset',['rf_Pointer_Set',['../rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetdefault',['rf_Pointer_SetDefault',['../rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetnull',['rf_Pointer_SetNull',['../rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetposition',['rf_Pointer_SetPosition',['../rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c',1,'rdp_graphics.c']]],
+ ['rf_5fprocess_5fevent_5fqueue',['rf_process_event_queue',['../rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29',1,'rdp_plugin.c']]],
+ ['rf_5fregister_5fgraphics',['rf_register_graphics',['../rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1',1,'rf_register_graphics(rdpGraphics *graphics):&#160;rdp_graphics.c'],['../rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1',1,'rf_register_graphics(rdpGraphics *graphics):&#160;rdp_graphics.c']]],
+ ['rf_5funinit',['rf_uninit',['../rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb',1,'rdp_plugin.h']]],
+ ['rfbitmap',['rfBitmap',['../rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94',1,'rdp_plugin.h']]],
+ ['rfclipboard',['rfClipboard',['../rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea',1,'rdp_plugin.h']]],
+ ['rfcontext',['rfContext',['../rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16',1,'rdp_plugin.h']]],
+ ['rfglyph',['rfGlyph',['../rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a',1,'rdp_plugin.h']]],
+ ['rfi',['rfi',['../structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68',1,'rf_clipboard']]],
+ ['rfi_5funinit',['rfi_uninit',['../rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b',1,'rdp_plugin.c']]],
+ ['rfpointer',['rfPointer',['../rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf',1,'rdp_plugin.h']]],
+ ['rfx',['rfx',['../structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7',1,'remmina_plugin_rdp_ui_object']]],
+ ['rfx_5fcontext',['rfx_context',['../structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706',1,'rf_context']]],
+ ['rgb_5fbuffer',['rgb_buffer',['../struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030',1,'_RemminaPluginVncData']]],
+ ['rmnews_2ec',['rmnews.c',['../rmnews_8c.html',1,'']]],
+ ['rmnews_2eh',['rmnews.h',['../rmnews_8h.html',1,'']]],
+ ['rmnews_5fbutton_5fclose',['rmnews_button_close',['../struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fclose_5fclicked',['rmnews_close_clicked',['../rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00',1,'rmnews.c']]],
+ ['rmnews_5fdefaultcl_5fbutton',['rmnews_defaultcl_button',['../struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fdefaultcl_5flabel',['rmnews_defaultcl_label',['../struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fdefaultcl_5fon_5fclick',['rmnews_defaultcl_on_click',['../rmnews_8c.html#a7825b2c9facea97439f5780d83e86798',1,'rmnews.c']]],
+ ['rmnews_5fdialog_5fdeleted',['rmnews_dialog_deleted',['../rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4',1,'rmnews.c']]],
+ ['rmnews_5fget_5ffile_5fcontents',['rmnews_get_file_contents',['../rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9',1,'rmnews.c']]],
+ ['rmnews_5fget_5fnews',['rmnews_get_news',['../rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301',1,'rmnews.c']]],
+ ['rmnews_5fget_5fuid',['rmnews_get_uid',['../rmnews_8c.html#a59416d6e8999802e8b145b0338331081',1,'rmnews.c']]],
+ ['rmnews_5fget_5furl',['rmnews_get_url',['../rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e',1,'rmnews_get_url(const char *url):&#160;rmnews.c'],['../rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e',1,'rmnews_get_url(const char *url):&#160;rmnews.c']]],
+ ['rmnews_5fget_5furl_5fcb',['rmnews_get_url_cb',['../rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38',1,'rmnews.c']]],
+ ['rmnews_5flabel',['rmnews_label',['../struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fnews_5fdialog',['rmnews_news_dialog',['../rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d',1,'rmnews.c']]],
+ ['rmnews_5fperiodic_5fcheck',['rmnews_periodic_check',['../rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814',1,'rmnews.c']]],
+ ['rmnews_5fschedule',['rmnews_schedule',['../rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a',1,'rmnews_schedule():&#160;rmnews.c'],['../rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888',1,'rmnews_schedule():&#160;rmnews.c']]],
+ ['rmnews_5fshow_5fnews',['rmnews_show_news',['../rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe',1,'rmnews_show_news(GtkWindow *parent):&#160;rmnews.c'],['../rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af',1,'rmnews_show_news():&#160;rmnews.h']]],
+ ['rmnews_5fstats_5fswitch',['rmnews_stats_switch',['../struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fstats_5fswitch_5fstate_5fset_5fcb',['rmnews_stats_switch_state_set_cb',['../rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce',1,'rmnews.c']]],
+ ['rmnews_5ftext_5fview',['rmnews_text_view',['../struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f',1,'_RemminaNewsDialog']]],
+ ['rowref',['rowref',['../struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8',1,'_RemminaFTPTask']]],
+ ['rp_5fkwallet_5fdelete_5fpassword',['rp_kwallet_delete_password',['../kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fget_5fpassword',['rp_kwallet_get_password',['../kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5finit',['rp_kwallet_init',['../kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fis_5fservice_5favailable',['rp_kwallet_is_service_available',['../kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fstore_5fpassword',['rp_kwallet_store_password',['../kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3',1,'kwallet_plugin.h']]],
+ ['rpw_5fsize_5fallocated_5fon_5fconnection',['rpw_size_allocated_on_connection',['../rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd',1,'rcw.c']]],
+ ['rpwdt_5fauth',['RPWDT_AUTH',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c',1,'remmina_protocol_widget.c']]],
+ ['rpwdt_5fauthx509',['RPWDT_AUTHX509',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed',1,'remmina_protocol_widget.c']]],
+ ['rpwdt_5fquestionyesno',['RPWDT_QUESTIONYESNO',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65',1,'remmina_protocol_widget.c']]],
+ ['rsa_5fencrypt_5fstring',['rsa_encrypt_string',['../remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7',1,'remmina_stats_sender.c']]],
+ ['rsscheddata',['rsSchedData',['../structrs_sched_data.html',1,'']]],
+ ['run_5fdestroy_5fhandler',['run_destroy_handler',['../remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8',1,'remmina_protocol_widget.c']]],
+ ['run_5fresponse_5fhandler',['run_response_handler',['../remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf',1,'remmina_protocol_widget.c']]],
+ ['run_5funmap_5fhandler',['run_unmap_handler',['../remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d',1,'remmina_protocol_widget.c']]],
+ ['running',['running',['../struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd',1,'_RemminaSSHTunnel::running()'],['../struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874',1,'_RemminaNXSession::running()'],['../struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93',1,'_RemminaPluginVncData::running()']]]
+];
diff --git a/docs/search/all_12.html b/docs/search/all_12.html
new file mode 100644
index 000000000..13c526372
--- /dev/null
+++ b/docs/search/all_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_12.js b/docs/search/all_12.js
new file mode 100644
index 000000000..f19d75720
--- /dev/null
+++ b/docs/search/all_12.js
@@ -0,0 +1,143 @@
+var searchData=
+[
+ ['systray_20menu',['Systray menu',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html',1,'']]],
+ ['save_5fpassword',['save_password',['../struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791',1,'_RemminaProtocolWidgetPriv']]],
+ ['save_5fview_5fmode',['save_view_mode',['../struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676',1,'_RemminaPref']]],
+ ['sb',['sb',['../struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8',1,'_RemminaAvahiPriv']]],
+ ['sc_5ftdata',['sc_tdata',['../structsc__tdata.html',1,'']]],
+ ['scale',['scale',['../structrf__context.html#a96c4689f6bc062482536038cb3b24e78',1,'rf_context::scale()'],['../structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242',1,'onMainThread_cb_data::scale()']]],
+ ['scale_5fheight',['scale_height',['../structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169',1,'rf_context']]],
+ ['scale_5fquality',['scale_quality',['../struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e',1,'_RemminaPref']]],
+ ['scale_5fwidth',['scale_width',['../structrf__context.html#aedf6fcd090e6ba788956565ce312ab70',1,'rf_context']]],
+ ['scale_5fx',['scale_x',['../structrf__context.html#a584505347366c40e6efa710353d4264f',1,'rf_context']]],
+ ['scale_5fy',['scale_y',['../structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764',1,'rf_context']]],
+ ['scalemode',['scalemode',['../struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533',1,'_RemminaProtocolWidgetPriv']]],
+ ['scaler_5fexpand',['scaler_expand',['../struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c',1,'_RemminaProtocolWidgetPriv']]],
+ ['scanline_5fpad',['scanline_pad',['../structrf__context.html#a538399f42e4454d5a44effbc59ea9091',1,'rf_context']]],
+ ['scanstring',['scanstring',['../structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7',1,'lsb_distro_info']]],
+ ['scdw_5faborting',['SCDW_ABORTING',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b',1,'rf_clipboard']]],
+ ['scdw_5fbusy_5fwait',['SCDW_BUSY_WAIT',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e',1,'rf_clipboard']]],
+ ['scdw_5fnone',['SCDW_NONE',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1',1,'rf_clipboard']]],
+ ['screenshot_5fname',['screenshot_name',['../struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6',1,'_RemminaPref']]],
+ ['screenshot_5fpath',['screenshot_path',['../struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c',1,'_RemminaPref']]],
+ ['scrolled_5fcontainer',['scrolled_container',['../struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30',1,'_RemminaConnectionObject']]],
+ ['scrolled_5ffullscreen_5fmode',['SCROLLED_FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e',1,'remmina_pref.h']]],
+ ['scrolled_5fwindow_5fmode',['SCROLLED_WINDOW_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a',1,'remmina_pref.h']]],
+ ['search_5fbar',['search_bar',['../struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd',1,'_RemminaMain']]],
+ ['search_5ftoggle',['search_toggle',['../struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72',1,'_RemminaMain']]],
+ ['searchentrychange_5ftimeout_5fsource_5fid',['searchentrychange_timeout_source_id',['../structmpchanger__params.html#ac8fdacd94418731904020ff679475918',1,'mpchanger_params']]],
+ ['secret',['secret',['../struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259',1,'_RemminaPref']]],
+ ['secretservice',['secretservice',['../glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7',1,'glibsecret_plugin.c']]],
+ ['security_5flist',['security_list',['../rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f',1,'rdp_plugin.c']]],
+ ['selected_5ffilename',['selected_filename',['../struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00',1,'_RemminaMainPriv']]],
+ ['selected_5fname',['selected_name',['../struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d',1,'_RemminaMainPriv']]],
+ ['send',['send',['../struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372',1,'_RemminaChatWindowClass']]],
+ ['send_5fkeystrokes',['send_keystrokes',['../struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7',1,'_RemminaProtocolPlugin']]],
+ ['send_5ftext',['send_text',['../struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c',1,'_RemminaChatWindow']]],
+ ['server',['server',['../struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3',1,'_RemminaAppletMenuItem::server()'],['../struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b',1,'_RemminaSSH::server()'],['../struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac',1,'_RemminaNXSession::server()']]],
+ ['server_5fcolumn',['SERVER_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f',1,'remmina_main.c']]],
+ ['server_5fsock',['server_sock',['../struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69',1,'_RemminaSSHTunnel::server_sock()'],['../struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8',1,'_RemminaNXSession::server_sock()']]],
+ ['session',['session',['../struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3',1,'_RemminaSSH::session()'],['../struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f',1,'_RemminaNXSession::session()'],['../struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633',1,'_RemminaPluginSpiceData::session()'],['../rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336',1,'session():&#160;rmnews.c']]],
+ ['session_5fdisplay',['session_display',['../struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f',1,'_RemminaNXSession']]],
+ ['session_5fid',['session_id',['../struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a',1,'_RemminaNXSession']]],
+ ['session_5flist',['session_list',['../struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44',1,'_RemminaNXSession']]],
+ ['session_5flist_5fstate',['session_list_state',['../struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594',1,'_RemminaNXSession']]],
+ ['session_5fmanager_5fstart_5fhandler',['session_manager_start_handler',['../struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b',1,'_RemminaPluginNxData']]],
+ ['session_5fparameters',['session_parameters',['../struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3',1,'_RemminaNXSession']]],
+ ['setting',['setting',['../structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b',1,'remmina_masterthread_exec_data']]],
+ ['settings',['settings',['../struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd',1,'_RemminaFile::settings()'],['../structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d',1,'rf_context::settings()'],['../struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54',1,'_RemminaPluginWWWData::settings()']]],
+ ['sftp',['sftp',['../struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c',1,'_RemminaSFTPClient::sftp()'],['../struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab',1,'_RemminaPluginSftpData::sftp()']]],
+ ['sftp_5fclient_5fconfirm_5fresume',['sftp_client_confirm_resume',['../structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077',1,'remmina_masterthread_exec_data']]],
+ ['sftp_5fsess',['sftp_sess',['../struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df',1,'_RemminaSFTP']]],
+ ['shell',['shell',['../struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae',1,'_RemminaPluginSshData']]],
+ ['shortcutkey_5fautofit',['shortcutkey_autofit',['../struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47',1,'_RemminaPref']]],
+ ['shortcutkey_5fdisconnect',['shortcutkey_disconnect',['../struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7',1,'_RemminaPref']]],
+ ['shortcutkey_5fdynres',['shortcutkey_dynres',['../struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a',1,'_RemminaPref']]],
+ ['shortcutkey_5ffullscreen',['shortcutkey_fullscreen',['../struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f',1,'_RemminaPref']]],
+ ['shortcutkey_5fgrab',['shortcutkey_grab',['../struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc',1,'_RemminaPref']]],
+ ['shortcutkey_5fminimize',['shortcutkey_minimize',['../struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b',1,'_RemminaPref']]],
+ ['shortcutkey_5fnexttab',['shortcutkey_nexttab',['../struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095',1,'_RemminaPref']]],
+ ['shortcutkey_5fprevtab',['shortcutkey_prevtab',['../struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b',1,'_RemminaPref']]],
+ ['shortcutkey_5fscale',['shortcutkey_scale',['../struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765',1,'_RemminaPref']]],
+ ['shortcutkey_5fscreenshot',['shortcutkey_screenshot',['../struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209',1,'_RemminaPref']]],
+ ['shortcutkey_5ftoolbar',['shortcutkey_toolbar',['../struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b',1,'_RemminaPref']]],
+ ['shortcutkey_5fviewonly',['shortcutkey_viewonly',['../struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51',1,'_RemminaPref']]],
+ ['show_5fonly',['show_only',['../structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23',1,'sc_tdata']]],
+ ['shutdown_5floop',['shutdown_loop',['../remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572',1,'remmina_protocol_widget.c']]],
+ ['sid',['sid',['../structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87',1,'mpchanger_params']]],
+ ['signal_5fname',['signal_name',['../structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910',1,'remmina_masterthread_exec_data::signal_name()'],['../struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada',1,'_RemminaProtocolWidgetSignalData::signal_name()']]],
+ ['simple_5fpoll',['simple_poll',['../struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304',1,'_RemminaAvahiPriv']]],
+ ['size',['size',['../struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7',1,'_RemminaFTPTask::size()'],['../structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba',1,'remmina_plugin_rdp_event::size()']]],
+ ['sk',['sk',['../structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4',1,'onMainThread_cb_data']]],
+ ['slave',['slave',['../structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e',1,'remmina_masterthread_exec_data::slave()'],['../struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6',1,'_RemminaSSHShell::slave()']]],
+ ['small_5ftoolbutton',['small_toolbutton',['../struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0',1,'_RemminaPref']]],
+ ['socket',['socket',['../struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6',1,'_RemminaPluginNxData::socket()'],['../struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835',1,'_RemminaPluginData::socket()'],['../struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f',1,'_RemminaPluginXdmcpData::socket()']]],
+ ['socket_5fid',['socket_id',['../struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645',1,'_RemminaPluginNxData::socket_id()'],['../struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3',1,'_RemminaPluginData::socket_id()'],['../struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496',1,'_RemminaPluginXdmcpData::socket_id()']]],
+ ['socketbuffers',['socketbuffers',['../struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1',1,'_RemminaSSHTunnel']]],
+ ['sockets',['sockets',['../struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3',1,'_RemminaSSHTunnel']]],
+ ['solarized_5fdark',['SOLARIZED_DARK',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab',1,'remmina_ssh_plugin.c']]],
+ ['solarized_5fdark_5fpalette',['solarized_dark_palette',['../remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f',1,'remmina_ssh_plugin.c']]],
+ ['solarized_5flight',['SOLARIZED_LIGHT',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13',1,'remmina_ssh_plugin.c']]],
+ ['solarized_5flight_5fpalette',['solarized_light_palette',['../remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7',1,'remmina_ssh_plugin.c']]],
+ ['sound_5flist',['sound_list',['../rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc',1,'rdp_plugin.c']]],
+ ['soup_5fcallback',['soup_callback',['../remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20',1,'remmina_stats_sender.c']]],
+ ['source',['source',['../structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688',1,'rsSchedData']]],
+ ['spice_5fplugin_2ec',['spice_plugin.c',['../spice__plugin_8c.html',1,'']]],
+ ['spice_5fplugin_2eh',['spice_plugin.h',['../spice__plugin_8h.html',1,'']]],
+ ['spice_5fplugin_5ffile_5ftransfer_2ec',['spice_plugin_file_transfer.c',['../spice__plugin__file__transfer_8c.html',1,'']]],
+ ['spice_5fplugin_5fusb_2ec',['spice_plugin_usb.c',['../spice__plugin__usb_8c.html',1,'']]],
+ ['spinner',['spinner',['../struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046',1,'PCon_Spinner']]],
+ ['spsettings',['spsettings',['../struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5',1,'_RemminaFile']]],
+ ['srcbpp',['srcBpp',['../structrf__context.html#a9d28c775fe1ee90ad48941d753564a76',1,'rf_context']]],
+ ['srv_5fclip_5fdata_5fwait',['srv_clip_data_wait',['../structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026',1,'rf_clipboard']]],
+ ['srv_5fdata',['srv_data',['../structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7',1,'rf_clipboard']]],
+ ['ssh',['ssh',['../struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23',1,'_RemminaSSHTunnel::ssh()'],['../struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e',1,'_RemminaSFTP::ssh()'],['../struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098',1,'_RemminaSSHShell::ssh()']]],
+ ['ssh_5fauth',['ssh_auth',['../remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19',1,'ssh_auth():&#160;remmina_sftp_plugin.c'],['../remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19',1,'ssh_auth():&#160;remmina_ssh_plugin.c']]],
+ ['ssh_5fauth_5fagent',['SSH_AUTH_AGENT',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fauto_5fpublickey',['SSH_AUTH_AUTO_PUBLICKEY',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fgssapi',['SSH_AUTH_GSSAPI',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fpassword',['SSH_AUTH_PASSWORD',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fpublickey',['SSH_AUTH_PUBLICKEY',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930',1,'remmina_file.h']]],
+ ['ssh_5fcharset_5flist',['ssh_charset_list',['../remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89',1,'remmina_ssh_plugin.c']]],
+ ['ssh_5floglevel',['ssh_loglevel',['../struct___remmina_pref.html#aac4f34f297a653052752b571777bc001',1,'_RemminaPref']]],
+ ['ssh_5fmutex',['ssh_mutex',['../struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52',1,'_RemminaSSH']]],
+ ['ssh_5fparseconfig',['ssh_parseconfig',['../struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7',1,'_RemminaPref']]],
+ ['ssh_5fsetting',['ssh_setting',['../struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb',1,'_RemminaProtocolPlugin']]],
+ ['ssh_5ftcp_5fkeepcnt',['ssh_tcp_keepcnt',['../struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fkeepidle',['ssh_tcp_keepidle',['../struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fkeepintvl',['ssh_tcp_keepintvl',['../struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fusrtimeout',['ssh_tcp_usrtimeout',['../struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8',1,'_RemminaPref']]],
+ ['ssh_5fterminal_5fpalette',['ssh_terminal_palette',['../remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb',1,'remmina_ssh_plugin.c']]],
+ ['ssh_5ftunnel_5fenabled',['ssh_tunnel_enabled',['../struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3',1,'_RemminaAppletMenuItem']]],
+ ['ssh_5ftunnels',['ssh_tunnels',['../struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116',1,'_RemminaProtocolWidgetPriv']]],
+ ['sshtunnel_5fport',['sshtunnel_port',['../struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400',1,'_RemminaPref']]],
+ ['st_5fplugin_2ec',['st_plugin.c',['../st__plugin_8c.html',1,'']]],
+ ['st_5fplugin_5fconfig_2eh',['st_plugin_config.h',['../st__plugin__config_8h.html',1,'']]],
+ ['started',['started',['../struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e',1,'_RemminaAvahi']]],
+ ['state',['state',['../struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c',1,'_RemminaKeyChooserArguments']]],
+ ['statsroot',['statsroot',['../structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b',1,'sc_tdata']]],
+ ['status',['status',['../struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9',1,'_RemminaFTPTask::status()'],['../struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17',1,'_RemminaNXSession::status()']]],
+ ['statusbar_5fmain',['statusbar_main',['../struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2',1,'_RemminaMain']]],
+ ['statuslabel',['statusLabel',['../structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd',1,'mpchanger_params']]],
+ ['store',['store',['../structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73',1,'mpchanger_params']]],
+ ['store_5fpassword',['store_password',['../struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6',1,'_RemminaSecretPlugin']]],
+ ['str',['str',['../structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea',1,'remmina_masterthread_exec_data']]],
+ ['stricthostkeycheck',['stricthostkeycheck',['../struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9',1,'_RemminaSSH']]],
+ ['string_5flist',['string_list',['../remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8',1,'remmina_string_list.c']]],
+ ['strpasswordlabel',['strpasswordlabel',['../structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['supported_5fmime_5ftypes',['supported_mime_types',['../remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12',1,'supported_mime_types():&#160;remmina_main.c'],['../rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12',1,'supported_mime_types():&#160;rmnews.c']]],
+ ['surface',['surface',['../structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b',1,'rf_bitmap::surface()'],['../structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6',1,'rf_context::surface()']]],
+ ['sw',['sw',['../struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb',1,'_RemminaPluginExecData']]],
+ ['sw_5fgdi',['sw_gdi',['../structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2',1,'rf_context']]],
+ ['switch_5foptions_5fdeny_5fscreenshot_5fclipboard',['switch_options_deny_screenshot_clipboard',['../struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d',1,'_RemminaPrefDialog']]],
+ ['switch_5foptions_5fremember_5flast_5fview_5fmode',['switch_options_remember_last_view_mode',['../struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b',1,'_RemminaPrefDialog']]],
+ ['switch_5fpermit_5fsend_5fstats',['switch_permit_send_stats',['../struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18',1,'_RemminaPrefDialog']]],
+ ['switch_5fsecurity_5fuse_5fmaster_5fpassword',['switch_security_use_master_password',['../struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171',1,'_RemminaPrefDialog']]],
+ ['switch_5fterminal_5fbold',['switch_terminal_bold',['../struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980',1,'_RemminaPrefDialog']]],
+ ['switch_5fterminal_5ffont_5fsystem',['switch_terminal_font_system',['../struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46',1,'_RemminaPrefDialog']]],
+ ['sync',['sync',['../structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60',1,'remmina_plugin_rdp_ui_object']]],
+ ['sync_5fwait_5fcond',['sync_wait_cond',['../structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509',1,'remmina_plugin_rdp_ui_object']]],
+ ['sync_5fwait_5fmutex',['sync_wait_mutex',['../structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6',1,'remmina_plugin_rdp_ui_object']]],
+ ['system',['system',['../structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf',1,'rf_clipboard']]],
+ ['systray_2dmenu_2emd',['Systray-menu.md',['../_systray-menu_8md.html',1,'']]]
+];
diff --git a/docs/search/all_13.html b/docs/search/all_13.html
new file mode 100644
index 000000000..b4a8bca69
--- /dev/null
+++ b/docs/search/all_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_13.js b/docs/search/all_13.js
new file mode 100644
index 000000000..6ac8a2766
--- /dev/null
+++ b/docs/search/all_13.js
@@ -0,0 +1,55 @@
+var searchData=
+[
+ ['table_20of_20contents',['Table of contents',['../md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html',1,'']]],
+ ['testing_20under_20ubuntu_20with_20the_20remmina_2dnext_2ddaily_20ppa',['Testing under Ubuntu with the remmina-next-daily PPA',['../md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html',1,'']]],
+ ['tab_5fmode',['tab_mode',['../struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468',1,'_RemminaPref']]],
+ ['table',['table',['../structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2',1,'mpchanger_params']]],
+ ['tango',['TANGO',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508',1,'remmina_ssh_plugin.c']]],
+ ['tango_5fpalette',['tango_palette',['../remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244',1,'remmina_ssh_plugin.c']]],
+ ['targetlist',['targetlist',['../structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475',1,'remmina_plugin_rdp_ui_object']]],
+ ['task',['task',['../structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1',1,'remmina_masterthread_exec_data']]],
+ ['taskid',['taskid',['../struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840',1,'_RemminaFTPTask::taskid()'],['../struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270',1,'_RemminaSFTPClient::taskid()']]],
+ ['tasktype',['tasktype',['../struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce',1,'_RemminaFTPTask']]],
+ ['telepathy_5fchannel_5fhandler_2ec',['telepathy_channel_handler.c',['../telepathy__channel__handler_8c.html',1,'']]],
+ ['telepathy_5fchannel_5fhandler_2eh',['telepathy_channel_handler.h',['../telepathy__channel__handler_8h.html',1,'']]],
+ ['telepathy_5fhandler_2ec',['telepathy_handler.c',['../telepathy__handler_8c.html',1,'']]],
+ ['telepathy_5fhandler_2eh',['telepathy_handler.h',['../telepathy__handler_8h.html',1,'']]],
+ ['telepathy_5fplugin_2ec',['telepathy_plugin.c',['../telepathy__plugin_8c.html',1,'']]],
+ ['term_5flist',['term_list',['../st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a',1,'st_plugin.c']]],
+ ['terminal',['terminal',['../structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1',1,'remmina_masterthread_exec_data']]],
+ ['testing_2dunder_2dubuntu_2dwith_2dthe_2dremmina_2dnext_2ddaily_2dppa_2emd',['Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md',['../_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html',1,'']]],
+ ['text',['text',['../structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de',1,'remmina_masterthread_exec_data::text()'],['../struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30',1,'_RemminaPluginVncCuttextParam::text()'],['../struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65',1,'_RemminaPluginVncEvent::text()'],['../struct___remmina_plugin_vnc_event.html#a17fd02bcca976213ff16edde4b754ec6',1,'_RemminaPluginVncEvent::text()']]],
+ ['textlen',['textlen',['../struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76',1,'_RemminaPluginVncCuttextParam']]],
+ ['theme_5fcheck',['theme_check',['../struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf',1,'_RemminaPluginRdpsetGrid']]],
+ ['thread',['thread',['../struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b',1,'_RemminaSFTPClient::thread()'],['../struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5',1,'_RemminaPluginSftpData::thread()'],['../struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd',1,'_RemminaSSHTunnel::thread()'],['../struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226',1,'_RemminaSSHShell::thread()'],['../struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e',1,'_RemminaPluginSshData::thread()'],['../struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c',1,'_RemminaPluginNxData::thread()'],['../struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6',1,'_RemminaNXSession::thread()'],['../struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095',1,'_RemminaPluginVncData::thread()'],['../struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb',1,'_RemminaPluginXdmcpData::thread()']]],
+ ['thread_5fabort',['thread_abort',['../struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875',1,'_RemminaSFTPClient']]],
+ ['thread_5fcancelled',['thread_cancelled',['../structrf__context.html#aa574515edb4966117f539d26e26f0a62',1,'rf_context']]],
+ ['timer',['timer',['../remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0',1,'timer():&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0',1,'timer():&#160;remmina_unlock.c']]],
+ ['times',['times',['../remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d',1,'remmina_file.c']]],
+ ['title',['title',['../structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['todo_20list',['Todo List',['../todo.html',1,'']]],
+ ['toolbar_5fpin_5fdown',['toolbar_pin_down',['../struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449',1,'_RemminaPref']]],
+ ['toolbar_5fplace',['toolbar_place',['../struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d',1,'_RemminaConnectionWindowClass']]],
+ ['toolbar_5fplacement',['toolbar_placement',['../struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133',1,'_RemminaPref']]],
+ ['toolbar_5fplacement_5fbottom',['TOOLBAR_PLACEMENT_BOTTOM',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5fleft',['TOOLBAR_PLACEMENT_LEFT',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5fright',['TOOLBAR_PLACEMENT_RIGHT',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5ftop',['TOOLBAR_PLACEMENT_TOP',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f',1,'remmina_pref.h']]],
+ ['toolbarplace_5fsignal',['TOOLBARPLACE_SIGNAL',['../rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668',1,'rcw.c']]],
+ ['tooltip',['tooltip',['../struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667',1,'_RemminaFTPTask']]],
+ ['top',['top',['../structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070',1,'remmina_plugin_rdp_ui_object']]],
+ ['transfer_5fclip_5fcond',['transfer_clip_cond',['../structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7',1,'rf_clipboard']]],
+ ['transfer_5fclip_5fmutex',['transfer_clip_mutex',['../structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205',1,'rf_clipboard']]],
+ ['translated_5fkeycode',['translated_keycode',['../structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1',1,'remmina_plugin_rdp_keymap_entry']]],
+ ['travis_2dbuild_2esh',['travis-build.sh',['../travis-build_8sh.html',1,'']]],
+ ['tree_5ffiles_5flist',['tree_files_list',['../struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced',1,'_RemminaMain']]],
+ ['treeview_5fitems',['treeview_items',['../struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2',1,'_RemminaStringList']]],
+ ['treeview_5fselection',['treeview_selection',['../struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97',1,'_RemminaStringList']]],
+ ['treeviewcolumn_5fitem',['treeviewcolumn_item',['../struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3',1,'_RemminaStringList']]],
+ ['tunnel_5fentrance_5fhost',['tunnel_entrance_host',['../struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602',1,'_RemminaSSH']]],
+ ['tunnel_5fentrance_5fport',['tunnel_entrance_port',['../struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f',1,'_RemminaSSH']]],
+ ['tunnel_5ftype',['tunnel_type',['../struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df',1,'_RemminaSSHTunnel']]],
+ ['two_5fcolumns',['two_columns',['../struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb',1,'_RemminaStringListPriv']]],
+ ['type',['type',['../struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3',1,'_RemminaPlugin::type()'],['../struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0',1,'_RemminaProtocolPlugin::type()'],['../struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264',1,'_RemminaEntryPlugin::type()'],['../struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494',1,'_RemminaFilePlugin::type()'],['../struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176',1,'_RemminaToolPlugin::type()'],['../struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522',1,'_RemminaPrefPlugin::type()'],['../struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2',1,'_RemminaSecretPlugin::type()'],['../struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9',1,'_RemminaProtocolFeature::type()'],['../struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9',1,'_RemminaProtocolSetting::type()'],['../struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9',1,'_RemminaFTPTask::type()'],['../struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a',1,'_RemminaProtocolSettingOpt::type()'],['../structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126',1,'remmina_plugin_rdp_event::type()'],['../structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b',1,'remmina_plugin_rdp_ui_object::type()']]],
+ ['types_2eh',['types.h',['../types_8h.html',1,'']]]
+];
diff --git a/docs/search/all_14.html b/docs/search/all_14.html
new file mode 100644
index 000000000..fb4d0ecc7
--- /dev/null
+++ b/docs/search/all_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_14.js b/docs/search/all_14.js
new file mode 100644
index 000000000..30e7809fd
--- /dev/null
+++ b/docs/search/all_14.js
@@ -0,0 +1,36 @@
+var searchData=
+[
+ ['update_2dgettext_2dmessages',['Update-gettext-messages',['../md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html',1,'']]],
+ ['using_20colour_20schemes_20in_20remmina_20ssh_20protocol_20plugin',['Using colour schemes in Remmina SSH protocol plugin',['../md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html',1,'']]],
+ ['u',['u',['../remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c',1,'remmina_utils.c']]],
+ ['ubuntu_2dbuild_2esh',['ubuntu-build.sh',['../ubuntu-build_8sh.html',1,'']]],
+ ['ui_5fhandler',['ui_handler',['../structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0',1,'rf_context']]],
+ ['ui_5fqueue',['ui_queue',['../structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3',1,'rf_context']]],
+ ['ui_5fqueue_5fmutex',['ui_queue_mutex',['../structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329',1,'rf_context']]],
+ ['ui_5fregister',['ui_register',['../struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524',1,'_RemminaPluginService']]],
+ ['uid',['uid',['../struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f',1,'_RemminaPref']]],
+ ['undefined_5fmode',['UNDEFINED_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f',1,'remmina_pref.h']]],
+ ['unicode_5fcode',['unicode_code',['../structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b',1,'remmina_plugin_rdp_event']]],
+ ['unlock_5fdynres',['unlock_dynres',['../struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3',1,'_RemminaProtocolWidgetClass::unlock_dynres()'],['../remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e',1,'unlock_dynres():&#160;remmina_protocol_widget.c']]],
+ ['unlock_5finit',['unlock_init',['../struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b',1,'_RemminaUnlockDialog']]],
+ ['unlock_5fpassword',['unlock_password',['../struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc',1,'_RemminaPref::unlock_password()'],['../struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097',1,'_RemminaPrefDialog::unlock_password()']]],
+ ['unlock_5frepassword',['unlock_repassword',['../struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651',1,'_RemminaPref::unlock_repassword()'],['../struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b',1,'_RemminaPrefDialog::unlock_repassword()']]],
+ ['unlock_5ftimeout',['unlock_timeout',['../struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972',1,'_RemminaPref::unlock_timeout()'],['../struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97',1,'_RemminaPrefDialog::unlock_timeout()']]],
+ ['up',['up',['../structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094',1,'remmina_plugin_rdp_event']]],
+ ['update_2dgettext_2dmessages_2emd',['Update-gettext-messages.md',['../_update-gettext-messages_8md.html',1,'']]],
+ ['update_2dtranslations_2esh',['update-translations.sh',['../update-translations_8sh.html',1,'']]],
+ ['update_5falign',['update_align',['../struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99',1,'_RemminaProtocolWidgetClass::update_align()'],['../remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a',1,'update_align():&#160;remmina_protocol_widget.c']]],
+ ['upgrade_5fsshkeys_5f202001',['upgrade_sshkeys_202001',['../remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6',1,'remmina_file.c']]],
+ ['upgrade_5fsshkeys_5f202001_5fmig_5fcommon_5fsetting',['upgrade_sshkeys_202001_mig_common_setting',['../remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960',1,'remmina_file.c']]],
+ ['ureg',['ureg',['../structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d',1,'remmina_plugin_rdp_ui_object']]],
+ ['url',['url',['../struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb',1,'_RemminaPluginWWWData']]],
+ ['use_5fclient_5fkeymap',['use_client_keymap',['../structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8',1,'rf_context']]],
+ ['use_5fclient_5fkeymap_5fcheck',['use_client_keymap_check',['../struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970',1,'_RemminaPluginRdpsetGrid']]],
+ ['use_5fmaster_5fpassword',['use_master_password',['../struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4',1,'_RemminaPref']]],
+ ['use_5fmodifiers',['use_modifiers',['../struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03',1,'_RemminaKeyChooserArguments']]],
+ ['user',['user',['../struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb',1,'_RemminaSSH']]],
+ ['user_5fcancelled',['user_cancelled',['../structrf__context.html#acacad775c2c168f900deaa6c90481319',1,'rf_context']]],
+ ['user_5fdata',['user_data',['../struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d',1,'_RemminaSSHShell']]],
+ ['username',['username',['../structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742',1,'mpchanger_params::username()'],['../struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885',1,'_RemminaProtocolWidgetPriv::username()']]],
+ ['ustats_5ftoggle',['ustats_toggle',['../struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670',1,'_RemminaMain']]]
+];
diff --git a/docs/search/all_15.html b/docs/search/all_15.html
new file mode 100644
index 000000000..8afe9a033
--- /dev/null
+++ b/docs/search/all_15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_15.js b/docs/search/all_15.js
new file mode 100644
index 000000000..65e0a44df
--- /dev/null
+++ b/docs/search/all_15.js
@@ -0,0 +1,31 @@
+var searchData=
+[
+ ['validation_5ffunc',['validation_func',['../struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24',1,'_RemminaStringListPriv']]],
+ ['vbox',['vbox',['../struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77',1,'_RemminaFTPClient::vbox()'],['../struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716',1,'_RemminaPluginSpiceXferWidgets::vbox()']]],
+ ['version',['version',['../struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099',1,'_RemminaPlugin::version()'],['../struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff',1,'_RemminaProtocolPlugin::version()'],['../struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441',1,'_RemminaEntryPlugin::version()'],['../struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8',1,'_RemminaFilePlugin::version()'],['../struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b',1,'_RemminaToolPlugin::version()'],['../struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d',1,'_RemminaPrefPlugin::version()'],['../struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa',1,'_RemminaSecretPlugin::version()'],['../struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7',1,'_RemminaNXSession::version()']]],
+ ['view_5ffile_5fmode',['view_file_mode',['../struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1',1,'_RemminaPref']]],
+ ['view_5fpopup_5fmenu_5fondosomething',['view_popup_menu_onDoSomething',['../remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71',1,'remmina_external_tools.c']]],
+ ['view_5ftoggle_5fbutton',['view_toggle_button',['../struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7',1,'_RemminaMain']]],
+ ['viewport',['viewport',['../struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d',1,'_RemminaConnectionObject']]],
+ ['viewport_5ffullscreen_5fmode',['VIEWPORT_FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955',1,'remmina_pref.h']]],
+ ['viewport_5fmotion',['viewport_motion',['../struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af',1,'_RemminaScrolledViewport']]],
+ ['viewport_5fmotion_5fhandler',['viewport_motion_handler',['../struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966',1,'_RemminaScrolledViewport']]],
+ ['visual',['visual',['../structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999',1,'rf_context']]],
+ ['vnc_2dkey_2dmapping_2dconfiguration_2emd',['vnc-key-mapping-configuration.md',['../vnc-key-mapping-configuration_8md.html',1,'']]],
+ ['vnc_5fbuffer',['vnc_buffer',['../struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fpipe',['vnc_event_pipe',['../struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fqueue',['vnc_event_queue',['../struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fqueue_5fmutex',['vnc_event_queue_mutex',['../struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063',1,'_RemminaPluginVncData']]],
+ ['vnc_5fplugin_2ec',['vnc_plugin.c',['../vnc__plugin_8c.html',1,'']]],
+ ['vnc_5fplugin_2eh',['vnc_plugin.h',['../vnc__plugin_8h.html',1,'']]],
+ ['vte',['vte',['../struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14',1,'_RemminaPluginSshData']]],
+ ['vte_5fallow_5fbold_5ftext',['vte_allow_bold_text',['../struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17',1,'_RemminaPref']]],
+ ['vte_5ffont',['vte_font',['../struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b',1,'_RemminaPref']]],
+ ['vte_5flines',['vte_lines',['../struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850',1,'_RemminaPref']]],
+ ['vte_5fsession_5ffile',['vte_session_file',['../struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91',1,'_RemminaPluginSshData']]],
+ ['vte_5fshortcutkey_5fcopy',['vte_shortcutkey_copy',['../struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457',1,'_RemminaPref']]],
+ ['vte_5fshortcutkey_5fpaste',['vte_shortcutkey_paste',['../struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6',1,'_RemminaPref']]],
+ ['vte_5fshortcutkey_5fselect_5fall',['vte_shortcutkey_select_all',['../struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad',1,'_RemminaPref']]],
+ ['vte_5fsystem_5fcolors',['vte_system_colors',['../struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22',1,'_RemminaPref']]],
+ ['vte_5fterminal_5fset_5fencoding_5fand_5fpty',['vte_terminal_set_encoding_and_pty',['../structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327',1,'remmina_masterthread_exec_data']]]
+];
diff --git a/docs/search/all_16.html b/docs/search/all_16.html
new file mode 100644
index 000000000..e511edbc1
--- /dev/null
+++ b/docs/search/all_16.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_16.js b/docs/search/all_16.js
new file mode 100644
index 000000000..38b217708
--- /dev/null
+++ b/docs/search/all_16.js
@@ -0,0 +1,28 @@
+var searchData=
+[
+ ['w',['w',['../struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8',1,'RemminaMessagePanelPrivate::w()'],['../structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8',1,'onMainThread_cb_data::w()'],['../structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6',1,'region::w()']]],
+ ['wait_5ffor_5fchild',['wait_for_child',['../remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd',1,'remmina_ext_exec.c']]],
+ ['wallpaper_5fcheck',['wallpaper_check',['../struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319',1,'_RemminaPluginRdpsetGrid']]],
+ ['webview',['webview',['../struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690',1,'_RemminaPluginWWWData']]],
+ ['widget',['widget',['../structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783',1,'onMainThread_cb_data']]],
+ ['width',['width',['../struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6',1,'_RemminaPluginScreenshotData::width()'],['../struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93',1,'_RemminaProtocolWidgetPriv::width()'],['../structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b',1,'remmina_plugin_rdp_event::width()'],['../structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f',1,'remmina_plugin_rdp_ui_object::width()'],['../structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4',1,'onMainThread_cb_data::width()']]],
+ ['window',['window',['../struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d',1,'_RemminaConnectionWindow::window()'],['../struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29',1,'_RemminaChatWindow::window()'],['../struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184',1,'_RemminaLogWindow::window()'],['../struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2',1,'_RemminaMain::window()']]],
+ ['window_5fid',['window_id',['../struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc',1,'_RemminaPluginNxData']]],
+ ['windowdrag_5fcheck',['windowdrag_check',['../struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0',1,'_RemminaPluginRdpsetGrid']]],
+ ['www_5fconfig_2eh',['www_config.h',['../www__config_8h.html',1,'']]],
+ ['www_5fplugin_2ec',['www_plugin.c',['../www__plugin_8c.html',1,'']]],
+ ['www_5fplugin_2eh',['www_plugin.h',['../www__plugin_8h.html',1,'']]],
+ ['www_5futils_2ec',['www_utils.c',['../www__utils_8c.html',1,'']]],
+ ['www_5futils_2eh',['www_utils.h',['../www__utils_8h.html',1,'']]],
+ ['www_5futils_5fsend_5fnotification',['www_utils_send_notification',['../www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa',1,'www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;www_utils.c'],['../www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa',1,'www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5ffind',['www_utils_string_find',['../www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf',1,'www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;www_utils.c'],['../www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27',1,'www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5freplace',['www_utils_string_replace',['../www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc',1,'www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;www_utils.c'],['../www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc',1,'www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5freplace_5fall',['www_utils_string_replace_all',['../www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c',1,'www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;www_utils.c'],['../www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c',1,'www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;www_utils.c']]],
+ ['www_5futils_5fstrpos',['www_utils_strpos',['../www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069',1,'www_utils.c']]],
+ ['www_5fweb_5fview_5fdocument_5fhtml',['WWW_WEB_VIEW_DOCUMENT_HTML',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fimage',['WWW_WEB_VIEW_DOCUMENT_IMAGE',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5foctet_5fstream',['WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fother',['WWW_WEB_VIEW_DOCUMENT_OTHER',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fxml',['WWW_WEB_VIEW_DOCUMENT_XML',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569',1,'www_plugin.h']]],
+ ['wwwwebviewdocumenttype',['WWWWebViewDocumentType',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9',1,'www_plugin.h']]]
+];
diff --git a/docs/search/all_17.html b/docs/search/all_17.html
new file mode 100644
index 000000000..5ca9efdcd
--- /dev/null
+++ b/docs/search/all_17.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_17.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_17.js b/docs/search/all_17.js
new file mode 100644
index 000000000..fc4953d57
--- /dev/null
+++ b/docs/search/all_17.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['x',['x',['../structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105',1,'remmina_plugin_rdp_event::x()'],['../structregion.html#ad258e7b02e819b46656294de5e4bd8ad',1,'region::x()'],['../structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9',1,'remmina_plugin_rdp_ui_object::x()'],['../structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222',1,'onMainThread_cb_data::x()'],['../struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8',1,'_RemminaPluginVncEvent::x()'],['../struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a',1,'_RemminaPluginVncCoordinates::x()']]],
+ ['x11_5fchannel',['x11_channel',['../struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d',1,'_RemminaSSHTunnel']]],
+ ['xdmcp_5fplugin_2ec',['xdmcp_plugin.c',['../xdmcp__plugin_8c.html',1,'']]],
+ ['xterm',['XTERM',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56',1,'remmina_ssh_plugin.c']]],
+ ['xterm_5fpalette',['xterm_palette',['../remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/all_18.html b/docs/search/all_18.html
new file mode 100644
index 000000000..069edeb76
--- /dev/null
+++ b/docs/search/all_18.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_18.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_18.js b/docs/search/all_18.js
new file mode 100644
index 000000000..8c4dfea59
--- /dev/null
+++ b/docs/search/all_18.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['y',['y',['../structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf',1,'remmina_plugin_rdp_event::y()'],['../structregion.html#a97015e361d0cbedf7dcab10fbea95b10',1,'region::y()'],['../structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c',1,'remmina_plugin_rdp_ui_object::y()'],['../structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f',1,'onMainThread_cb_data::y()'],['../struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11',1,'_RemminaPluginVncEvent::y()'],['../struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e',1,'_RemminaPluginVncCoordinates::y()']]]
+];
diff --git a/docs/search/all_2.html b/docs/search/all_2.html
new file mode 100644
index 000000000..9543c57b1
--- /dev/null
+++ b/docs/search/all_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_2.js b/docs/search/all_2.js
new file mode 100644
index 000000000..91e89cfc5
--- /dev/null
+++ b/docs/search/all_2.js
@@ -0,0 +1,50 @@
+var searchData=
+[
+ ['background',['background',['../struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49',1,'_RemminaColorPref']]],
+ ['basic_5fsettings',['basic_settings',['../struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d',1,'_RemminaProtocolPlugin']]],
+ ['bindlocalhost',['bindlocalhost',['../struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b',1,'_RemminaSSHTunnel']]],
+ ['bitmap',['bitmap',['../structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507',1,'rf_bitmap::bitmap()'],['../structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1',1,'remmina_plugin_rdp_ui_object::bitmap()']]],
+ ['bitsperpixel',['bitsPerPixel',['../struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d',1,'_RemminaPluginScreenshotData']]],
+ ['box',['box',['../struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db',1,'_RemminaPluginWWWData']]],
+ ['box_5fquick_5fconnect',['box_quick_connect',['../struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95',1,'_RemminaMain']]],
+ ['bpp',['bpp',['../structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b',1,'rf_context']]],
+ ['btn_5fresponse_5fkey',['btn_response_key',['../remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953',1,'remmina_message_panel.c']]],
+ ['btndochange',['btnDoChange',['../structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2',1,'mpchanger_params']]],
+ ['buffer',['buffer',['../struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c',1,'_RemminaPluginScreenshotData::buffer()'],['../struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047',1,'_RemminaSSHTunnel::buffer()']]],
+ ['buffer_5flen',['buffer_len',['../struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb',1,'_RemminaSSHTunnel']]],
+ ['buffer_5fmutex',['buffer_mutex',['../struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89',1,'_RemminaPluginVncData']]],
+ ['build_5fkwallet_5fkey',['build_kwallet_key',['../kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a',1,'kwallet_plugin_main.c']]],
+ ['buildconfig_5fstrstr',['buildconfig_strstr',['../rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591',1,'rdp_plugin.c']]],
+ ['builder',['builder',['../struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1',1,'_RemminaMain::builder()'],['../struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876',1,'_RemminaPrefDialog::builder()'],['../struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd',1,'_RemminaStringList::builder()'],['../struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b',1,'_RemminaUnlockDialog::builder()'],['../struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015',1,'_RemminaNewsDialog::builder()']]],
+ ['bus',['bus',['../struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3',1,'_RemminaTpChannelHandler']]],
+ ['button_5fadd',['button_add',['../struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4',1,'_RemminaStringList']]],
+ ['button_5fcancel',['button_cancel',['../struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e',1,'PCon_Spinner']]],
+ ['button_5fdown',['button_down',['../struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1',1,'_RemminaStringList']]],
+ ['button_5fkeyboard_5fauto_5ffit',['button_keyboard_auto_fit',['../struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fcopy',['button_keyboard_copy',['../struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fdisconnect',['button_keyboard_disconnect',['../struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5ffullscreen',['button_keyboard_fullscreen',['../struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fgrab_5fkeyboard',['button_keyboard_grab_keyboard',['../struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fhost_5fkey',['button_keyboard_host_key',['../struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fminimize',['button_keyboard_minimize',['../struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fpaste',['button_keyboard_paste',['../struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fscaled',['button_keyboard_scaled',['../struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fscreenshot',['button_keyboard_screenshot',['../struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fselect_5fall',['button_keyboard_select_all',['../struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fswitch_5ftab_5fleft',['button_keyboard_switch_tab_left',['../struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fswitch_5ftab_5fright',['button_keyboard_switch_tab_right',['../struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5ftoolbar',['button_keyboard_toolbar',['../struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fviewonly',['button_keyboard_viewonly',['../struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327',1,'_RemminaPrefDialog']]],
+ ['button_5fmake_5fdefault',['button_make_default',['../struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21',1,'_RemminaMain']]],
+ ['button_5fmask',['button_mask',['../struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c',1,'_RemminaPluginVncData::button_mask()'],['../struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32',1,'_RemminaPluginVncEvent::button_mask()']]],
+ ['button_5fnew',['button_new',['../struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e',1,'_RemminaMain']]],
+ ['button_5foptions_5frecent_5fitems_5fclear',['button_options_recent_items_clear',['../struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6',1,'_RemminaPrefDialog']]],
+ ['button_5foptions_5fresolutions',['button_options_resolutions',['../struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903',1,'_RemminaPrefDialog']]],
+ ['button_5fquick_5fconnect',['button_quick_connect',['../struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774',1,'_RemminaMain']]],
+ ['button_5fremove',['button_remove',['../struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500',1,'_RemminaStringList']]],
+ ['button_5fterm_5fcs',['button_term_cs',['../struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6',1,'_RemminaPrefDialog']]],
+ ['button_5funlock',['button_unlock',['../struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d',1,'_RemminaUnlockDialog']]],
+ ['button_5funlock_5fcancel',['button_unlock_cancel',['../struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44',1,'_RemminaUnlockDialog']]],
+ ['button_5fup',['button_up',['../struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65',1,'_RemminaStringList']]],
+ ['bytesperpixel',['bytesPerPixel',['../struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44',1,'_RemminaPluginScreenshotData']]]
+];
diff --git a/docs/search/all_3.html b/docs/search/all_3.html
new file mode 100644
index 000000000..03405c0fb
--- /dev/null
+++ b/docs/search/all_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_3.js b/docs/search/all_3.js
new file mode 100644
index 000000000..03fd62c16
--- /dev/null
+++ b/docs/search/all_3.js
@@ -0,0 +1,162 @@
+var searchData=
+[
+ ['cacert',['cacert',['../struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e',1,'_RemminaProtocolWidgetPriv']]],
+ ['cachedir',['cachedir',['../remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9',1,'remmina_file_manager.c']]],
+ ['cacrl',['cacrl',['../struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4',1,'_RemminaProtocolWidgetPriv']]],
+ ['cairo_5fformat',['cairo_format',['../structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0',1,'rf_context']]],
+ ['call_5ffeature',['call_feature',['../struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1',1,'_RemminaProtocolPlugin']]],
+ ['callback',['callback',['../struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378',1,'_RemminaSSH']]],
+ ['callback_5fdata',['callback_data',['../struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6',1,'_RemminaSSHTunnel']]],
+ ['called_5ffrom_5fsubthread',['called_from_subthread',['../structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['cancel',['cancel',['../struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['cancel_5fconnect_5fxport_5fcb',['cancel_connect_xport_cb',['../remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9',1,'remmina_protocol_widget.c']]],
+ ['cancel_5finit_5ftunnel_5fcb',['cancel_init_tunnel_cb',['../remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fopen_5fconnection_5fcb',['cancel_open_connection_cb',['../remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fstart_5fdirect_5ftunnel_5fcb',['cancel_start_direct_tunnel_cb',['../remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fstart_5freverse_5ftunnel_5fcb',['cancel_start_reverse_tunnel_cb',['../remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac',1,'remmina_protocol_widget.c']]],
+ ['cancel_5ftask',['cancel_task',['../struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93',1,'_RemminaFTPClientClass']]],
+ ['cancel_5ftask_5fsignal',['CANCEL_TASK_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03',1,'remmina_ftp_client.c']]],
+ ['cancelled',['cancelled',['../structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63',1,'remmina_masterthread_exec_data::cancelled()'],['../structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75',1,'onMainThread_cb_data::cancelled()']]],
+ ['cb_5fchild_5fwatch',['cb_child_watch',['../exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71',1,'exec_plugin.c']]],
+ ['cb_5fclosewidget',['cb_closewidget',['../remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a',1,'remmina_exec.c']]],
+ ['cb_5ferr_5fwatch',['cb_err_watch',['../exec__plugin_8c.html#ab43db37b96c68093747620fbde879327',1,'exec_plugin.c']]],
+ ['cb_5ffunc_5fdata',['cb_func_data',['../structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b',1,'rsSchedData']]],
+ ['cb_5ffunc_5fptr',['cb_func_ptr',['../structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646',1,'rsSchedData']]],
+ ['cb_5flasterror_5fconfirmed',['cb_lasterror_confirmed',['../rcw_8c.html#a56e026ede7a3e50374579ad538e33db7',1,'rcw.c']]],
+ ['cb_5fout_5fwatch',['cb_out_watch',['../exec__plugin_8c.html#aa6294507761837488c3777f21096d219',1,'exec_plugin.c']]],
+ ['cellrenderertext_5fitem1',['cellrenderertext_item1',['../struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256',1,'_RemminaStringList']]],
+ ['cellrenderertext_5fitem2',['cellrenderertext_item2',['../struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe',1,'_RemminaStringList']]],
+ ['changed_5fpasswords_5fcount',['changed_passwords_count',['../structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719',1,'mpchanger_params']]],
+ ['changelog_2emd',['CHANGELOG.md',['../_c_h_a_n_g_e_l_o_g_8md.html',1,'']]],
+ ['changenext',['changenext',['../remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839',1,'remmina_mpchange.c']]],
+ ['channel',['channel',['../struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2',1,'_RemminaSSHShell::channel()'],['../struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad',1,'_RemminaNXSession::channel()'],['../struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece',1,'_RemminaTpChannelHandler::channel()']]],
+ ['channel_5fpath',['channel_path',['../struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769',1,'_RemminaTpChannelHandler']]],
+ ['channel_5fproperties',['channel_properties',['../struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632',1,'_RemminaTpChannelHandler']]],
+ ['channels',['channels',['../struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4',1,'_RemminaSSHTunnel']]],
+ ['channels_5fout',['channels_out',['../struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91',1,'_RemminaSSHTunnel']]],
+ ['charset',['charset',['../struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5',1,'_RemminaSSH']]],
+ ['chat_5freceive',['chat_receive',['../structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020',1,'remmina_masterthread_exec_data']]],
+ ['chat_5fwindow',['chat_window',['../struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e',1,'_RemminaProtocolWidgetPriv']]],
+ ['check_5ffor_5fendianness',['check_for_endianness',['../vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751',1,'vnc_plugin.c']]],
+ ['checkbutton_5fappearance_5ffullscreen_5fon_5fauto',['checkbutton_appearance_fullscreen_on_auto',['../struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fhide_5fsearchbar',['checkbutton_appearance_hide_searchbar',['../struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fhide_5ftoolbar',['checkbutton_appearance_hide_toolbar',['../struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fshow_5ftabs',['checkbutton_appearance_show_tabs',['../struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fdisable_5ftray',['checkbutton_applet_disable_tray',['../struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fhide_5ftotals',['checkbutton_applet_hide_totals',['../struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5flight_5ftray',['checkbutton_applet_light_tray',['../struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fnew_5fconnection_5fon_5ftop',['checkbutton_applet_new_connection_on_top',['../struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fstart_5fin_5ftray',['checkbutton_applet_start_in_tray',['../struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5foptions_5fsave_5fsettings',['checkbutton_options_save_settings',['../struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5foptions_5fssh_5fparseconfig',['checkbutton_options_ssh_parseconfig',['../struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc',1,'_RemminaPrefDialog']]],
+ ['ciphers',['ciphers',['../struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0',1,'_RemminaSSH']]],
+ ['client',['client',['../struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040',1,'_RemminaAvahiPriv::client()'],['../structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b',1,'remmina_masterthread_exec_data::client()'],['../structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d',1,'remmina_masterthread_exec_data::client()'],['../struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1',1,'_RemminaSFTPClient::client()'],['../struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f',1,'_RemminaPluginSftpData::client()'],['../struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90',1,'_RemminaPluginVncData::client()']]],
+ ['clientbuild_5flist',['clientbuild_list',['../rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5',1,'rdp_plugin.c']]],
+ ['clientbuild_5ftooltip',['clientbuild_tooltip',['../rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243',1,'rdp_plugin.c']]],
+ ['clientcert',['clientcert',['../struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05',1,'_RemminaProtocolWidgetPriv']]],
+ ['clientkey',['clientkey',['../struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0',1,'_RemminaProtocolWidgetPriv']]],
+ ['clipboard',['clipboard',['../structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a',1,'remmina_plugin_rdp_ui_object::clipboard()'],['../structremmina__plugin__rdp__ui__object.html#a6c993ee64cd27392efb8bc6f53e0dca0',1,'remmina_plugin_rdp_ui_object::clipboard()'],['../structrf__context.html#a72d2a3d60347327237692947df93aea7',1,'rf_context::clipboard()']]],
+ ['clipboard_5fformatdatarequest',['clipboard_formatdatarequest',['../structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fformatdataresponse',['clipboard_formatdataresponse',['../structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fformatlist',['clipboard_formatlist',['../structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fhandler',['clipboard_handler',['../structrf__clipboard.html#a52ca364a1902d7f4095234923feed724',1,'rf_clipboard::clipboard_handler()'],['../struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c',1,'_RemminaPluginVncData::clipboard_handler()']]],
+ ['clipboard_5ftimer',['clipboard_timer',['../struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc',1,'_RemminaPluginVncData']]],
+ ['cliprdr',['cliprdr',['../structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8',1,'rf_context']]],
+ ['close_5fconnection',['close_connection',['../struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2',1,'_RemminaProtocolPlugin']]],
+ ['closed',['closed',['../struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6',1,'_RemminaProtocolWidgetPriv::closed()'],['../struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80',1,'_RemminaSSHShell::closed()']]],
+ ['cnnobj',['cnnobj',['../structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd',1,'remmina_masterthread_exec_data::cnnobj()'],['../struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67',1,'_RemminaProtocolWidget::cnnobj()']]],
+ ['cnnwin',['cnnwin',['../struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328',1,'_RemminaConnectionObject']]],
+ ['codeset',['codeset',['../structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668',1,'remmina_masterthread_exec_data']]],
+ ['col_5ff',['COL_F',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a',1,'remmina_mpchange.c']]],
+ ['col_5ffilename',['COL_FILENAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3',1,'remmina_mpchange.c']]],
+ ['col_5fgroup',['COL_GROUP',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd',1,'remmina_mpchange.c']]],
+ ['col_5fname',['COL_NAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24',1,'remmina_mpchange.c']]],
+ ['col_5fusername',['COL_USERNAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e',1,'remmina_mpchange.c']]],
+ ['color0',['color0',['../struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808',1,'_RemminaColorPref']]],
+ ['color1',['color1',['../struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff',1,'_RemminaColorPref']]],
+ ['color10',['color10',['../struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c',1,'_RemminaColorPref']]],
+ ['color11',['color11',['../struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97',1,'_RemminaColorPref']]],
+ ['color12',['color12',['../struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928',1,'_RemminaColorPref']]],
+ ['color13',['color13',['../struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc',1,'_RemminaColorPref']]],
+ ['color14',['color14',['../struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79',1,'_RemminaColorPref']]],
+ ['color15',['color15',['../struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60',1,'_RemminaColorPref']]],
+ ['color2',['color2',['../struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4',1,'_RemminaColorPref']]],
+ ['color3',['color3',['../struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316',1,'_RemminaColorPref']]],
+ ['color4',['color4',['../struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914',1,'_RemminaColorPref']]],
+ ['color5',['color5',['../struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60',1,'_RemminaColorPref']]],
+ ['color6',['color6',['../struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9',1,'_RemminaColorPref']]],
+ ['color7',['color7',['../struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7',1,'_RemminaColorPref']]],
+ ['color8',['color8',['../struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4',1,'_RemminaColorPref']]],
+ ['color9',['color9',['../struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc',1,'_RemminaColorPref']]],
+ ['color_5fpref',['color_pref',['../struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8',1,'_RemminaPref']]],
+ ['color_5fschemes',['color_schemes',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c',1,'remmina_ssh_plugin.c']]],
+ ['colorbutton_5fbackground',['colorbutton_background',['../struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor0',['colorbutton_color0',['../struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor1',['colorbutton_color1',['../struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor10',['colorbutton_color10',['../struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor11',['colorbutton_color11',['../struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor12',['colorbutton_color12',['../struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor13',['colorbutton_color13',['../struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor14',['colorbutton_color14',['../struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor15',['colorbutton_color15',['../struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor2',['colorbutton_color2',['../struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor3',['colorbutton_color3',['../struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor4',['colorbutton_color4',['../struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor5',['colorbutton_color5',['../struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor6',['colorbutton_color6',['../struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor7',['colorbutton_color7',['../struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor8',['colorbutton_color8',['../struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor9',['colorbutton_color9',['../struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcursor',['colorbutton_cursor',['../struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fforeground',['colorbutton_foreground',['../struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2',1,'_RemminaPrefDialog']]],
+ ['colordepth_5flist',['colordepth_list',['../rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;rdp_plugin.c'],['../vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;vnc_plugin.c'],['../xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;xdmcp_plugin.c']]],
+ ['colormap',['colormap',['../structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523',1,'rf_context']]],
+ ['column_5ffiles_5flist_5fgroup',['column_files_list_group',['../struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc',1,'_RemminaMain']]],
+ ['combo_5fquick_5fconnect_5fprotocol',['combo_quick_connect_protocol',['../struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39',1,'_RemminaMain']]],
+ ['comboboxtext_5fappearance_5ffullscreen_5ftoolbar_5fvisibility',['comboboxtext_appearance_fullscreen_toolbar_visibility',['../struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5fappearance_5ftab_5finterface',['comboboxtext_appearance_tab_interface',['../struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5fappearance_5fview_5fmode',['comboboxtext_appearance_view_mode',['../struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fdouble_5fclick',['comboboxtext_options_double_click',['../struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fscale_5fquality',['comboboxtext_options_scale_quality',['../struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fssh_5floglevel',['comboboxtext_options_ssh_loglevel',['../struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972',1,'_RemminaPrefDialog']]],
+ ['common_5fidentities',['common_identities',['../remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694',1,'remmina_ssh.c']]],
+ ['compact',['compact',['../struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6',1,'_RemminaProtocolSetting::compact()'],['../struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc',1,'_RemminaProtocolSettingOpt::compact()']]],
+ ['compare',['compare',['../remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4',1,'remmina_ssh_plugin.c']]],
+ ['compare_5fsecret_5fplugin_5finit_5forder',['compare_secret_plugin_init_order',['../remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5',1,'remmina_plugin_manager.c']]],
+ ['compilation_2dguide_2dfor_2drhel_2emd',['Compilation-guide-for-RHEL.md',['../_compilation-guide-for-_r_h_e_l_8md.html',1,'']]],
+ ['compilation_2emd',['Compilation.md',['../_compilation_8md.html',1,'']]],
+ ['compile_2don_2darch_2dlinux_2emd',['Compile-on-Arch-Linux.md',['../_compile-on-_arch-_linux_8md.html',1,'']]],
+ ['compile_2don_2ddebian_2d10_2dbuster_2emd',['Compile-on-Debian-10-Buster.md',['../_compile-on-_debian-10-_buster_8md.html',1,'']]],
+ ['compile_2don_2ddebian_2d9_2dstretch_2emd',['Compile-on-Debian-9-Stretch.md',['../_compile-on-_debian-9-_stretch_8md.html',1,'']]],
+ ['compile_2don_2dfreebsd_2emd',['Compile-on-FreeBSD.md',['../_compile-on-_free_b_s_d_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d14_2e04_2emd',['Compile-on-Ubuntu-14.04.md',['../_compile-on-_ubuntu-14_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d16_2e04_2emd',['Compile-on-Ubuntu-16.04.md',['../_compile-on-_ubuntu-16_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d18_2e04_2emd',['Compile-on-Ubuntu-18.04.md',['../_compile-on-_ubuntu-18_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d20_2e04_2emd',['Compile-on-Ubuntu-20.04.md',['../_compile-on-_ubuntu-20_804_8md.html',1,'']]],
+ ['complete',['complete',['../structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9',1,'remmina_masterthread_exec_data::complete()'],['../structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c',1,'remmina_plugin_rdp_ui_object::complete()']]],
+ ['complete_5fcleanup_5fon_5fmain_5fthread',['complete_cleanup_on_main_thread',['../rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5',1,'rdp_plugin.c']]],
+ ['composition_5fcheck',['composition_check',['../struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e',1,'_RemminaPluginRdpsetGrid']]],
+ ['compression',['compression',['../struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870',1,'_RemminaSSH']]],
+ ['conn_5fclosed',['conn_closed',['../remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016',1,'remmina_protocol_widget.c']]],
+ ['conn_5fopened',['conn_opened',['../remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48',1,'remmina_protocol_widget.c']]],
+ ['connect',['connect',['../struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760',1,'_RemminaProtocolWidgetClass']]],
+ ['connect_5ffunc',['connect_func',['../struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660',1,'_RemminaSSHTunnel']]],
+ ['connect_5fmessage_5fpanel',['connect_message_panel',['../struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483',1,'_RemminaProtocolWidgetPriv']]],
+ ['connected',['connected',['../struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d',1,'_RemminaConnectionObject::connected()'],['../structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73',1,'rf_context::connected()'],['../struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95',1,'_RemminaPluginVncData::connected()']]],
+ ['connection',['connection',['../struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981',1,'_RemminaTpChannelHandler']]],
+ ['connection_5fpath',['connection_path',['../struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213',1,'_RemminaTpChannelHandler']]],
+ ['context',['context',['../structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa',1,'rf_clipboard::context()'],['../structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db',1,'remmina_plugin_rdp_ui_object::context()'],['../structrf__context.html#a23192b58404d1dc629d5e7db3fb103be',1,'rf_context::context()'],['../struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068',1,'_RemminaTpChannelHandler::context()'],['../struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e',1,'_RemminaPluginWWWData::context()']]],
+ ['contributing_2emd',['CONTRIBUTING.md',['../_c_o_n_t_r_i_b_u_t_i_n_g_8md.html',1,'']]],
+ ['count',['count',['../structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e',1,'rsSchedData']]],
+ ['credentials',['credentials',['../struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959',1,'_RemminaPluginWWWData']]],
+ ['crlf2lf',['crlf2lf',['../rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859',1,'rdp_cliprdr.c']]],
+ ['cursor',['cursor',['../struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500',1,'_RemminaColorPref::cursor()'],['../structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0',1,'rf_pointer::cursor()'],['../structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a',1,'remmina_plugin_rdp_ui_object::cursor()']]],
+ ['cursorblinking_5fcheck',['cursorblinking_check',['../struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93',1,'_RemminaPluginRdpsetGrid']]],
+ ['cursorshadow_5fcheck',['cursorshadow_check',['../struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29',1,'_RemminaPluginRdpsetGrid']]],
+ ['custom',['CUSTOM',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5',1,'remmina_ssh_plugin.c']]],
+ ['compilation',['Compilation',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html',1,'']]],
+ ['compilation_2dguide_2dfor_2drhel',['Compilation-guide-for-RHEL',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html',1,'']]],
+ ['compiling_20remmina_20on_20freebsd_2011',['Compiling Remmina on FreeBSD 11',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html',1,'']]],
+ ['changelog',['Changelog',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]],
+ ['contributing',['CONTRIBUTING',['../md__c_o_n_t_r_i_b_u_t_i_n_g.html',1,'']]]
+];
diff --git a/docs/search/all_4.html b/docs/search/all_4.html
new file mode 100644
index 000000000..8e1f4b9cd
--- /dev/null
+++ b/docs/search/all_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_4.js b/docs/search/all_4.js
new file mode 100644
index 000000000..7a575eefe
--- /dev/null
+++ b/docs/search/all_4.js
@@ -0,0 +1,69 @@
+var searchData=
+[
+ ['dark_5ftray_5ficon',['dark_tray_icon',['../struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f',1,'_RemminaPref']]],
+ ['data',['data',['../structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624',1,'remmina_plugin_rdp_event::data()'],['../structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181',1,'remmina_plugin_rdp_ui_object::data()']]],
+ ['data_5fmgr',['data_mgr',['../struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab',1,'_RemminaPluginWWWData']]],
+ ['datadir_5fpath',['datadir_path',['../struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011',1,'_RemminaPref']]],
+ ['date_5fcolumn',['DATE_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb',1,'remmina_main.c']]],
+ ['datestr',['datestr',['../struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b',1,'ProfilesData']]],
+ ['datetime',['datetime',['../struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660',1,'_RemminaGroupData']]],
+ ['debug',['debug',['../struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081',1,'_RemminaPluginService']]],
+ ['default_5faction',['default_action',['../struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef',1,'_RemminaPref']]],
+ ['default_5fdomain',['default_domain',['../structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['default_5fkeymap_5fdata',['default_keymap_data',['../remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44',1,'remmina_pref.c']]],
+ ['default_5fkeystrokes',['default_keystrokes',['../remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd',1,'remmina_pref.c']]],
+ ['default_5fmode',['default_mode',['../struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d',1,'_RemminaPref']]],
+ ['default_5fpassword',['default_password',['../structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['default_5fresolutions',['default_resolutions',['../remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290',1,'default_resolutions():&#160;remmina_pref.c'],['../remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290',1,'default_resolutions():&#160;remmina_pref.c']]],
+ ['default_5fresponse',['default_response',['../struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1',1,'_RemminaPluginNxData']]],
+ ['default_5fusername',['default_username',['../structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['defaultcollection',['defaultcollection',['../glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72',1,'glibsecret_plugin.c']]],
+ ['deferred_5fopen_5fsize_5fallocate_5fhandler',['deferred_open_size_allocate_handler',['../struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2',1,'_RemminaConnectionObject']]],
+ ['define_5frdp_5fclient_5fcommon',['DEFINE_RDP_CLIENT_COMMON',['../structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7',1,'rf_context']]],
+ ['delayed_5fmonitor_5flayout_5fhandler',['delayed_monitor_layout_handler',['../structrf__context.html#a957e6f6867170470689210d55770342e',1,'rf_context']]],
+ ['delete_5ffile',['delete_file',['../struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905',1,'_RemminaFTPClientClass']]],
+ ['delete_5ffile_5fsignal',['DELETE_FILE_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114',1,'remmina_ftp_client.c']]],
+ ['delete_5fpassword',['delete_password',['../struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef',1,'_RemminaSecretPlugin']]],
+ ['deny_5fscreenshot_5fclipboard',['deny_screenshot_clipboard',['../struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35',1,'_RemminaPref']]],
+ ['description',['description',['../struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde',1,'_RemminaPlugin::description()'],['../struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70',1,'_RemminaProtocolPlugin::description()'],['../struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4',1,'_RemminaEntryPlugin::description()'],['../struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1',1,'_RemminaFilePlugin::description()'],['../struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9',1,'_RemminaToolPlugin::description()'],['../struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0',1,'_RemminaPrefPlugin::description()'],['../struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659',1,'_RemminaSecretPlugin::description()']]],
+ ['desktop_5forientation_5fcombo',['desktop_orientation_combo',['../struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktop_5forientation_5fstore',['desktop_orientation_store',['../struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktop_5fresize',['desktop_resize',['../struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b',1,'_RemminaProtocolWidgetClass::desktop_resize()'],['../remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565',1,'desktop_resize():&#160;remmina_protocol_widget.c']]],
+ ['desktop_5fscale_5ffactor_5fspin',['desktop_scale_factor_spin',['../struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktoporientation',['desktopOrientation',['../structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0',1,'remmina_plugin_rdp_event']]],
+ ['desktopscalefactor',['desktopScaleFactor',['../structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985',1,'remmina_plugin_rdp_event']]],
+ ['dest',['dest',['../struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da',1,'_RemminaSSHTunnel']]],
+ ['destroy_5ffunc',['destroy_func',['../struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778',1,'_RemminaSSHTunnel']]],
+ ['destroy_5ffunc_5fcallback_5fdata',['destroy_func_callback_data',['../struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795',1,'_RemminaSSHTunnel']]],
+ ['destroyed',['destroyed',['../struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91',1,'MpRunInfo']]],
+ ['development_2dnotes_2emd',['Development-Notes.md',['../_development-_notes_8md.html',1,'']]],
+ ['device_5fscale_5ffactor_5fcombo',['device_scale_factor_combo',['../struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3',1,'_RemminaPluginRdpsetGrid']]],
+ ['device_5fscale_5ffactor_5fstore',['device_scale_factor_store',['../struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860',1,'_RemminaPluginRdpsetGrid']]],
+ ['devicescalefactor',['deviceScaleFactor',['../structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57',1,'remmina_plugin_rdp_event']]],
+ ['dialog',['dialog',['../struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646',1,'PCon_Spinner::dialog()'],['../struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872',1,'_RemminaFileEditor::dialog()'],['../structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568',1,'mpchanger_params::dialog()'],['../struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c',1,'_RemminaPrefDialog::dialog()'],['../struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558',1,'_RemminaStringList::dialog()'],['../struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e',1,'_RemminaUnlockDialog::dialog()'],['../struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f',1,'_RemminaNewsDialog::dialog()']]],
+ ['disable_5frcw_5fdelete_5fconfirm_5fcb',['disable_rcw_delete_confirm_cb',['../remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f',1,'remmina_exec.c']]],
+ ['disable_5ftray_5ficon',['disable_tray_icon',['../struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c',1,'_RemminaPref']]],
+ ['disconnect',['disconnect',['../struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213',1,'_RemminaProtocolWidgetClass']]],
+ ['disconnect_5ffunc',['disconnect_func',['../struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c',1,'_RemminaSSHTunnel']]],
+ ['disconnect_5fhandler',['disconnect_handler',['../struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363',1,'_RemminaTpChannelHandler']]],
+ ['discovered_5fservices',['discovered_services',['../struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675',1,'_RemminaAvahi']]],
+ ['dispcontext',['dispcontext',['../structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174',1,'rf_context']]],
+ ['display',['display',['../struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3',1,'_RemminaPluginNxData::display()'],['../structrf__context.html#a7c4234646c4b584e41e36521b7eab889',1,'rf_context::display()'],['../struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad',1,'_RemminaPluginSpiceData::display()'],['../struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f',1,'_RemminaPluginXdmcpData::display()']]],
+ ['display_5fchannel',['display_channel',['../struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6',1,'_RemminaPluginSpiceData']]],
+ ['distro_5finfo',['distro_info',['../structdistro__info.html',1,'']]],
+ ['distroarray',['distroArray',['../remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478',1,'remmina_utils.c']]],
+ ['distroinfo',['DistroInfo',['../remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1',1,'remmina_utils.c']]],
+ ['dnd_5ftargets_5fftb',['dnd_targets_ftb',['../rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90',1,'rcw.c']]],
+ ['dnd_5ftargets_5ftb',['dnd_targets_tb',['../rcw_8c.html#a7e71031254421ccb10e0c29699cc9523',1,'rcw.c']]],
+ ['document_5ftype',['document_type',['../struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db',1,'_RemminaPluginWWWData']]],
+ ['domain',['domain',['../struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201',1,'_RemminaPlugin::domain()'],['../struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae',1,'_RemminaProtocolPlugin::domain()'],['../struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533',1,'_RemminaEntryPlugin::domain()'],['../struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f',1,'_RemminaFilePlugin::domain()'],['../struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e',1,'_RemminaToolPlugin::domain()'],['../struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf',1,'_RemminaPrefPlugin::domain()'],['../struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e',1,'_RemminaSecretPlugin::domain()'],['../structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c',1,'mpchanger_params::domain()'],['../struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f',1,'_RemminaProtocolWidgetPriv::domain()']]],
+ ['donesize',['donesize',['../struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0',1,'_RemminaFTPTask']]],
+ ['dot_5fcursor_5fx_5fhot',['dot_cursor_x_hot',['../vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff',1,'vnc_plugin.c']]],
+ ['dot_5fcursor_5fxpm',['dot_cursor_xpm',['../vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100',1,'vnc_plugin.c']]],
+ ['dot_5fcursor_5fy_5fhot',['dot_cursor_y_hot',['../vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5',1,'vnc_plugin.c']]],
+ ['drawing_5farea',['drawing_area',['../structrf__context.html#acee2095e72fb2428c498f62e21800026',1,'rf_context::drawing_area()'],['../struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57',1,'_RemminaPluginVncData::drawing_area()']]],
+ ['drdynvc_5fdata',['drdynvc_data',['../structrf__context.html#a2a708b989f3e12af802ab4266af39363',1,'rf_context']]],
+ ['dtype',['dtype',['../structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['dynres_5funlocked',['dynres_unlocked',['../struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a',1,'_RemminaConnectionObject']]],
+ ['development_2dnotes',['Development-Notes',['../md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html',1,'']]]
+];
diff --git a/docs/search/all_5.html b/docs/search/all_5.html
new file mode 100644
index 000000000..89a879ea9
--- /dev/null
+++ b/docs/search/all_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_5.js b/docs/search/all_5.js
new file mode 100644
index 000000000..7f471cb8e
--- /dev/null
+++ b/docs/search/all_5.js
@@ -0,0 +1,48 @@
+var searchData=
+[
+ ['edit_5fitem',['edit_item',['../struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45',1,'_RemminaAppletMenuClass']]],
+ ['edit_5fitem_5fsignal',['EDIT_ITEM_SIGNAL',['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8',1,'remmina_applet_menu.c']]],
+ ['edomain',['eDomain',['../structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed',1,'mpchanger_params']]],
+ ['egroup',['eGroup',['../structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348',1,'mpchanger_params']]],
+ ['enable_5finputs',['enable_inputs',['../remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15',1,'remmina_mpchange.c']]],
+ ['encrypted_5fsettings_5fcache',['encrypted_settings_cache',['../remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49',1,'remmina_plugin_manager.c']]],
+ ['encryption',['encryption',['../struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4',1,'_RemminaNXSession']]],
+ ['entry_5ffunc',['entry_func',['../struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e',1,'_RemminaEntryPlugin']]],
+ ['entry_5foptions_5ffile_5fname',['entry_options_file_name',['../struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5frecent_5fitems',['entry_options_recent_items',['../struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fscreenshot_5fname',['entry_options_screenshot_name',['../struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fscroll',['entry_options_scroll',['../struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5fport',['entry_options_ssh_port',['../struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepcnt',['entry_options_ssh_tcp_keepcnt',['../struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepidle',['entry_options_ssh_tcp_keepidle',['../struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepintvl',['entry_options_ssh_tcp_keepintvl',['../struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fusrtimeout',['entry_options_ssh_tcp_usrtimeout',['../struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7',1,'_RemminaPrefDialog']]],
+ ['entry_5fquick_5fconnect_5fserver',['entry_quick_connect_server',['../struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095',1,'_RemminaMain']]],
+ ['entry_5fscrollback_5flines',['entry_scrollback_lines',['../struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189',1,'_RemminaPrefDialog']]],
+ ['entry_5funlock',['entry_unlock',['../struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109',1,'_RemminaUnlockDialog']]],
+ ['epassword1',['ePassword1',['../structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245',1,'mpchanger_params']]],
+ ['epassword2',['ePassword2',['../structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be',1,'mpchanger_params']]],
+ ['err',['err',['../struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4',1,'_RemminaPluginExecData']]],
+ ['error',['error',['../struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed',1,'_RemminaSSH::error()'],['../struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048',1,'_RemminaNXSession::error()']]],
+ ['error_5ffd',['error_fd',['../struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d',1,'_RemminaPluginXdmcpData']]],
+ ['error_5fmessage',['error_message',['../struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4',1,'_RemminaProtocolWidgetPriv']]],
+ ['eusername',['eUsername',['../structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809',1,'mpchanger_params']]],
+ ['event',['event',['../structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d',1,'remmina_plugin_rdp_ui_object']]],
+ ['event_5fbox',['event_box',['../struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc',1,'_RemminaProtocolWidget::event_box()'],['../struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded',1,'_RemminaScrolledViewport::event_box()']]],
+ ['event_5fdata',['event_data',['../struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6',1,'_RemminaPluginVncEvent']]],
+ ['event_5fhandle',['event_handle',['../structrf__context.html#a522c742a333cf0603dfa7d06a7376669',1,'rf_context']]],
+ ['event_5fpipe',['event_pipe',['../struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d',1,'_RemminaPluginNxData::event_pipe()'],['../structrf__context.html#a539feef609228a91c5e54d5da837bb7a',1,'rf_context::event_pipe()']]],
+ ['event_5fqueue',['event_queue',['../structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565',1,'rf_context']]],
+ ['event_5ftype',['event_type',['../struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0',1,'_RemminaPluginVncEvent']]],
+ ['eweekdays',['eweekdays',['../rmnews_8c.html#af4777302c760225b833206545e9f437d',1,'rmnews.c']]],
+ ['exec',['exec',['../struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7',1,'_RemminaSSHShell']]],
+ ['exec_5ffunc',['exec_func',['../struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17',1,'_RemminaToolPlugin']]],
+ ['exec_5fplugin_2ec',['exec_plugin.c',['../exec__plugin_8c.html',1,'']]],
+ ['exec_5fplugin_5fconfig_2eh',['exec_plugin_config.h',['../exec__plugin__config_8h.html',1,'']]],
+ ['exit_5fcallback',['exit_callback',['../struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a',1,'_RemminaSSHShell']]],
+ ['expanded_5fgroup',['expanded_group',['../struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a',1,'_RemminaMainPriv::expanded_group()'],['../struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5',1,'_RemminaPref::expanded_group()']]],
+ ['export_5ffunc',['export_func',['../struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1',1,'_RemminaFilePlugin']]],
+ ['export_5fhints',['export_hints',['../struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f',1,'_RemminaFilePlugin']]],
+ ['export_5ftest_5ffunc',['export_test_func',['../struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03',1,'_RemminaFilePlugin']]],
+ ['extended',['extended',['../structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e',1,'remmina_plugin_rdp_event']]]
+];
diff --git a/docs/search/all_6.html b/docs/search/all_6.html
new file mode 100644
index 000000000..6afac0662
--- /dev/null
+++ b/docs/search/all_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_6.js b/docs/search/all_6.js
new file mode 100644
index 000000000..aba0f320e
--- /dev/null
+++ b/docs/search/all_6.js
@@ -0,0 +1,59 @@
+var searchData=
+[
+ ['features',['features',['../struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff',1,'_RemminaProtocolPlugin::features()'],['../struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d',1,'_RemminaProtocolWidgetPriv::features()']]],
+ ['fields_5fseparator',['fields_separator',['../struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7',1,'_RemminaStringListPriv']]],
+ ['file_5fget_5fint',['file_get_int',['../struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de',1,'_RemminaPluginService']]],
+ ['file_5fget_5fpath',['file_get_path',['../struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164',1,'_RemminaPluginService']]],
+ ['file_5fget_5fsecret',['file_get_secret',['../struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d',1,'_RemminaPluginService']]],
+ ['file_5fget_5fstring',['file_get_string',['../struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc',1,'_RemminaPluginService::file_get_string()'],['../structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2',1,'remmina_masterthread_exec_data::file_get_string()']]],
+ ['file_5fget_5fuser_5fdatadir',['file_get_user_datadir',['../struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f',1,'_RemminaPluginService']]],
+ ['file_5fmodel',['file_model',['../struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f',1,'_RemminaMainPriv']]],
+ ['file_5fmodel_5ffilter',['file_model_filter',['../struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c',1,'_RemminaMainPriv']]],
+ ['file_5fmodel_5fsort',['file_model_sort',['../struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd',1,'_RemminaMainPriv']]],
+ ['file_5fnew',['file_new',['../struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895',1,'_RemminaPluginService']]],
+ ['file_5fset_5fint',['file_set_int',['../struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb',1,'_RemminaPluginService']]],
+ ['file_5fset_5fstring',['file_set_string',['../struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3',1,'_RemminaPluginService']]],
+ ['file_5ftransfer_5fdialog',['file_transfer_dialog',['../struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e',1,'_RemminaPluginSpiceData']]],
+ ['file_5ftransfers',['file_transfers',['../struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781',1,'_RemminaPluginSpiceData']]],
+ ['file_5funsave_5fpasswords',['file_unsave_passwords',['../struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0',1,'_RemminaPluginService']]],
+ ['filechooserbutton_5foptions_5fdatadir_5fpath',['filechooserbutton_options_datadir_path',['../struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123',1,'_RemminaPrefDialog']]],
+ ['filechooserbutton_5foptions_5fscreenshots_5fpath',['filechooserbutton_options_screenshots_path',['../struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27',1,'_RemminaPrefDialog']]],
+ ['filename',['filename',['../struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674',1,'_RemminaAppletMenuItem::filename()'],['../struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07',1,'_RemminaFile::filename()'],['../structdistro__info.html#a1999084b11586bdb56bc2453fce7f633',1,'distro_info::filename()']]],
+ ['filename_5fcolumn',['FILENAME_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d',1,'remmina_main.c']]],
+ ['find_5fprotocol_5fsetting',['find_protocol_setting',['../remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99',1,'remmina_file.c']]],
+ ['flags',['flags',['../structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c',1,'remmina_plugin_rdp_event']]],
+ ['floating_5ftoolbar_5fplacement',['floating_toolbar_placement',['../struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21',1,'_RemminaPref']]],
+ ['floating_5ftoolbar_5fplacement_5fbottom',['FLOATING_TOOLBAR_PLACEMENT_BOTTOM',['../remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fplacement_5ftop',['FLOATING_TOOLBAR_PLACEMENT_TOP',['../remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5fdisable',['FLOATING_TOOLBAR_VISIBILITY_DISABLE',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5finvisible',['FLOATING_TOOLBAR_VISIBILITY_INVISIBLE',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5fpeeking',['FLOATING_TOOLBAR_VISIBILITY_PEEKING',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e',1,'remmina_pref.h']]],
+ ['fontbutton_5fterminal_5ffont',['fontbutton_terminal_font',['../struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb',1,'_RemminaPrefDialog']]],
+ ['fontsmoothing_5fcheck',['fontsmoothing_check',['../struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6',1,'_RemminaPluginRdpsetGrid']]],
+ ['foreground',['foreground',['../struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867',1,'_RemminaColorPref']]],
+ ['format',['format',['../structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b',1,'rf_clipboard::format()'],['../structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b',1,'remmina_plugin_rdp_ui_object::format()']]],
+ ['formauthenticated',['formauthenticated',['../struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84',1,'_RemminaPluginWWWData']]],
+ ['ftp_5fclient_5fget_5fwaiting_5ftask',['ftp_client_get_waiting_task',['../structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43',1,'remmina_masterthread_exec_data']]],
+ ['ftp_5fclient_5fupdate_5ftask',['ftp_client_update_task',['../structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493',1,'remmina_masterthread_exec_data']]],
+ ['fullscreen_5fmode',['FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3',1,'remmina_pref.h']]],
+ ['fullscreen_5fon_5fauto',['fullscreen_on_auto',['../struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b',1,'_RemminaPref']]],
+ ['fullscreen_5ftoolbar_5fvisibility',['fullscreen_toolbar_visibility',['../struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f',1,'_RemminaPref']]],
+ ['fun',['fun',['../remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24',1,'fun():&#160;remmina_main.c'],['../remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24',1,'fun():&#160;remmina_main.c']]],
+ ['func',['func',['../structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1',1,'remmina_masterthread_exec_data::func()'],['../structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172',1,'onMainThread_cb_data::func()'],['../structon_main_thread__cb__data.html#a2b555e0dc84d0475e25ec578ca05e19b',1,'onMainThread_cb_data::func()']]],
+ ['func_5fchat_5freceive',['FUNC_CHAT_RECEIVE',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537',1,'remmina_masterthread_exec_data']]],
+ ['func_5ffile_5fget_5fstring',['FUNC_FILE_GET_STRING',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10',1,'remmina_masterthread_exec_data']]],
+ ['func_5fftp_5fclient_5fget_5fwaiting_5ftask',['FUNC_FTP_CLIENT_GET_WAITING_TASK',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9',1,'remmina_masterthread_exec_data']]],
+ ['func_5fftp_5fclient_5fupdate_5ftask',['FUNC_FTP_CLIENT_UPDATE_TASK',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82',1,'remmina_masterthread_exec_data']]],
+ ['func_5fgtk_5flabel_5fset_5ftext',['FUNC_GTK_LABEL_SET_TEXT',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a',1,'remmina_masterthread_exec_data']]],
+ ['func_5fgtk_5fsocket_5fadd_5fid',['FUNC_GTK_SOCKET_ADD_ID',['../structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc',1,'onMainThread_cb_data']]],
+ ['func_5finit_5fsave_5fcred',['FUNC_INIT_SAVE_CRED',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5femit_5fsignal',['FUNC_PROTOCOLWIDGET_EMIT_SIGNAL',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpdestroy',['FUNC_PROTOCOLWIDGET_MPDESTROY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpprogress',['FUNC_PROTOCOLWIDGET_MPPROGRESS',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpshowretry',['FUNC_PROTOCOLWIDGET_MPSHOWRETRY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fpanelshowlisten',['FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60',1,'remmina_masterthread_exec_data']]],
+ ['func_5fsftp_5fclient_5fconfirm_5fresume',['FUNC_SFTP_CLIENT_CONFIRM_RESUME',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09',1,'remmina_masterthread_exec_data']]],
+ ['func_5fupdate_5fscale',['FUNC_UPDATE_SCALE',['../structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41',1,'onMainThread_cb_data']]],
+ ['func_5fvte_5fterminal_5fset_5fencoding_5fand_5fpty',['FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605',1,'remmina_masterthread_exec_data']]],
+ ['functions_2esh',['functions.sh',['../functions_8sh.html',1,'']]]
+];
diff --git a/docs/search/all_7.html b/docs/search/all_7.html
new file mode 100644
index 000000000..de1910770
--- /dev/null
+++ b/docs/search/all_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_7.js b/docs/search/all_7.js
new file mode 100644
index 000000000..6e4a54f8d
--- /dev/null
+++ b/docs/search/all_7.js
@@ -0,0 +1,35 @@
+var searchData=
+[
+ ['g_5fdeclare_5fderivable_5ftype',['G_DECLARE_DERIVABLE_TYPE',['../remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156',1,'remmina_message_panel.h']]],
+ ['g_5fdefine_5ftype',['G_DEFINE_TYPE',['../rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec',1,'G_DEFINE_TYPE(RemminaConnectionWindow, rcw, GTK_TYPE_WINDOW):&#160;rcw.c'],['../remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366',1,'G_DEFINE_TYPE(RemminaAppletMenu, remmina_applet_menu, GTK_TYPE_MENU):&#160;remmina_applet_menu.c'],['../remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f',1,'G_DEFINE_TYPE(RemminaAppletMenuItem, remmina_applet_menu_item, GTK_TYPE_MENU_ITEM):&#160;remmina_applet_menu_item.c'],['../remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007',1,'G_DEFINE_TYPE(RemminaChatWindow, remmina_chat_window, GTK_TYPE_WINDOW):&#160;remmina_chat_window.c'],['../remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de',1,'G_DEFINE_TYPE(RemminaFileEditor, remmina_file_editor, GTK_TYPE_DIALOG):&#160;remmina_file_editor.c'],['../remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291',1,'G_DEFINE_TYPE(RemminaFTPClient, remmina_ftp_client, GTK_TYPE_GRID):&#160;remmina_ftp_client.c'],['../remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32',1,'G_DEFINE_TYPE(RemminaProtocolWidget, remmina_protocol_widget, GTK_TYPE_EVENT_BOX):&#160;remmina_protocol_widget.c'],['../remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d',1,'G_DEFINE_TYPE(RemminaScrolledViewport, remmina_scrolled_viewport, GTK_TYPE_EVENT_BOX):&#160;remmina_scrolled_viewport.c'],['../remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8',1,'G_DEFINE_TYPE(RemminaSFTPClient, remmina_sftp_client, REMMINA_TYPE_FTP_CLIENT):&#160;remmina_sftp_client.c']]],
+ ['g_5fdefine_5ftype_5fwith_5fcode',['G_DEFINE_TYPE_WITH_CODE',['../telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8',1,'telepathy_handler.c']]],
+ ['g_5fdefine_5ftype_5fwith_5fprivate',['G_DEFINE_TYPE_WITH_PRIVATE',['../remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e',1,'remmina_message_panel.c']]],
+ ['gcry_5fthread_5foption_5fpthread_5fimpl',['GCRY_THREAD_OPTION_PTHREAD_IMPL',['../remmina_8c.html#a3d760300165528383af409d2964d79d2',1,'remmina.c']]],
+ ['gcrypt_5fthread_5finitialized',['gcrypt_thread_initialized',['../remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104',1,'remmina.c']]],
+ ['get_5fcurrent_5fallowed_5fscale_5fmode',['get_current_allowed_scale_mode',['../rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2',1,'rcw.c']]],
+ ['get_5fpassword',['get_password',['../struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629',1,'_RemminaSecretPlugin']]],
+ ['get_5fplugin_5fscreenshot',['get_plugin_screenshot',['../struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4',1,'_RemminaProtocolPlugin']]],
+ ['get_5fpref_5fbody',['get_pref_body',['../struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989',1,'_RemminaPrefPlugin']]],
+ ['get_5fprofile_5fremote_5fheight',['get_profile_remote_height',['../struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa',1,'_RemminaPluginService']]],
+ ['get_5fprofile_5fremote_5fwidth',['get_profile_remote_width',['../struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a',1,'_RemminaPluginService']]],
+ ['get_5fserver_5fport',['get_server_port',['../struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f',1,'_RemminaPluginService']]],
+ ['gettranslator_2esh',['gettranslator.sh',['../gettranslator_8sh.html',1,'']]],
+ ['gfx_5fh264_5favailable',['gfx_h264_available',['../rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f',1,'rdp_plugin.c']]],
+ ['glibsecret_5fplugin_2ec',['glibsecret_plugin.c',['../glibsecret__plugin_8c.html',1,'']]],
+ ['glibsecret_5fplugin_2eh',['glibsecret_plugin.h',['../glibsecret__plugin_8h.html',1,'']]],
+ ['glyph',['glyph',['../structrf__glyph.html#ac258216d1331ac44afc01a3329357e94',1,'rf_glyph']]],
+ ['gmainthreadid',['gMainThreadID',['../remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0',1,'remmina_masterthread_exec.c']]],
+ ['gp',['gp',['../structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c',1,'remmina_masterthread_exec_data::gp()'],['../struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a',1,'_RemminaProtocolWidgetSignalData::gp()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a',1,'remmina_protocol_widget_dialog_mt_data_t::gp()'],['../struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210',1,'_RemminaSFTPClient::gp()'],['../structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb',1,'onMainThread_cb_data::gp()'],['../struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09',1,'_RemminaPluginVncCuttextParam::gp()']]],
+ ['grid',['grid',['../struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3',1,'_RemminaPluginRdpsetGrid']]],
+ ['group',['group',['../struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e',1,'_RemminaAppletMenuItem::group()'],['../struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09',1,'_RemminaGroupData::group()'],['../structmpchanger__params.html#a098952d194a183d4a505aa065797864b',1,'mpchanger_params::group()']]],
+ ['group_5fcolumn',['GROUP_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b',1,'remmina_main.c']]],
+ ['gruvbox',['GRUVBOX',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c',1,'remmina_ssh_plugin.c']]],
+ ['gruvbox_5fpalette',['gruvbox_palette',['../remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173',1,'remmina_ssh_plugin.c']]],
+ ['gsversion',['gsversion',['../struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c',1,'_RemminaIcon']]],
+ ['gtk_2dversions_2don_2dvarious_2ddistributions_2emd',['GTK-versions-on-various-distributions.md',['../_g_t_k-versions-on-various-distributions_8md.html',1,'']]],
+ ['gtk_5flabel_5fset_5ftext',['gtk_label_set_text',['../structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4',1,'remmina_masterthread_exec_data']]],
+ ['gtk_5fsession',['gtk_session',['../struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69',1,'_RemminaPluginSpiceData']]],
+ ['gtksocket_5favailable',['gtksocket_available',['../struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662',1,'_RemminaPluginService']]],
+ ['gwtransp_5flist',['gwtransp_list',['../rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626',1,'rdp_plugin.c']]],
+ ['gtk_2dversions_2don_2dvarious_2ddistributions',['GTK-versions-on-various-distributions',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html',1,'']]]
+];
diff --git a/docs/search/all_8.html b/docs/search/all_8.html
new file mode 100644
index 000000000..11e27cdb4
--- /dev/null
+++ b/docs/search/all_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_8.js b/docs/search/all_8.js
new file mode 100644
index 000000000..816c63e4d
--- /dev/null
+++ b/docs/search/all_8.js
@@ -0,0 +1,22 @@
+var searchData=
+[
+ ['h',['h',['../structregion.html#a585e1a437e6e8f8a80785aec2f2762c8',1,'region']]],
+ ['has_5ferror',['has_error',['../struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d',1,'_RemminaProtocolWidgetPriv']]],
+ ['has_5fevent',['has_event',['../struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8',1,'_RemminaAvahiPriv']]],
+ ['hbox',['hbox',['../struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['height',['height',['../struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e',1,'_RemminaPluginScreenshotData::height()'],['../struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380',1,'_RemminaProtocolWidgetPriv::height()'],['../structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649',1,'remmina_plugin_rdp_event::height()'],['../structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849',1,'remmina_plugin_rdp_ui_object::height()'],['../structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74',1,'onMainThread_cb_data::height()']]],
+ ['hide_5fconnection_5ftoolbar',['hide_connection_toolbar',['../struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e',1,'_RemminaPref']]],
+ ['hide_5fsearchbar',['hide_searchbar',['../struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101',1,'_RemminaPref']]],
+ ['hide_5ftoolbar',['hide_toolbar',['../struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd',1,'_RemminaPref']]],
+ ['history_5ftext',['history_text',['../struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea',1,'_RemminaChatWindow']]],
+ ['home_2emd',['Home.md',['../_home_8md.html',1,'']]],
+ ['host',['host',['../struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed',1,'_RemminaTpChannelHandler']]],
+ ['hostkey',['hostkey',['../struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797',1,'_RemminaPref']]],
+ ['hostkey_5ffunc',['hostkey_func',['../struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326',1,'_RemminaProtocolWidgetPriv']]],
+ ['hostkeytypes',['hostkeytypes',['../struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a',1,'_RemminaSSH']]],
+ ['how_2dto_2dtranslate_2dremmina_2emd',['How-to-translate-Remmina.md',['../_how-to-translate-_remmina_8md.html',1,'']]],
+ ['howto_2dgenerate_2dthe_2dchangelog_2emd',['HOWTO-generate-the-changelog.md',['../_h_o_w_t_o-generate-the-changelog_8md.html',1,'']]],
+ ['htdestroy',['htdestroy',['../remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86',1,'remmina_plugin_manager.c']]],
+ ['how_2dto_2dtranslate_2dremmina',['How-to-translate-Remmina',['../md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html',1,'']]],
+ ['how_20to_20configure_20key_20mapping_20with_20the_20vnc_20plugin_2e',['How to configure key mapping with the VNC plugin.',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html',1,'']]]
+];
diff --git a/docs/search/all_9.html b/docs/search/all_9.html
new file mode 100644
index 000000000..f8abbbe59
--- /dev/null
+++ b/docs/search/all_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_9.js b/docs/search/all_9.js
new file mode 100644
index 000000000..2b8f07231
--- /dev/null
+++ b/docs/search/all_9.js
@@ -0,0 +1,27 @@
+var searchData=
+[
+ ['i18nstats_2esh',['i18nstats.sh',['../i18nstats_8sh.html',1,'']]],
+ ['icon',['icon',['../struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626',1,'_RemminaIcon::icon()'],['../struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19',1,'_RemminaIcon::icon()']]],
+ ['icon_5fname',['icon_name',['../struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10',1,'_RemminaProtocolPlugin']]],
+ ['icon_5fname_5fssh',['icon_name_ssh',['../struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3',1,'_RemminaProtocolPlugin']]],
+ ['id',['id',['../struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20',1,'_RemminaProtocolFeature']]],
+ ['image_5fmenu_5fitem',['image_menu_item',['../struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4',1,'_RemminaAppletMenuItem']]],
+ ['import_5ffunc',['import_func',['../struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7',1,'_RemminaFilePlugin']]],
+ ['import_5ftest_5ffunc',['import_test_func',['../struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4',1,'_RemminaFilePlugin']]],
+ ['init',['init',['../struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2',1,'_RemminaProtocolPlugin::init()'],['../struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56',1,'_RemminaSecretPlugin::init()']]],
+ ['init_5ffunc',['init_func',['../struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211',1,'_RemminaProtocolWidgetPriv::init_func()'],['../struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d',1,'_RemminaSSHTunnel::init_func()']]],
+ ['init_5forder',['init_order',['../struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09',1,'_RemminaSecretPlugin']]],
+ ['init_5fsave_5fcreds',['init_save_creds',['../structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304',1,'remmina_masterthread_exec_data']]],
+ ['init_5fsettings_5fcache',['init_settings_cache',['../remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046',1,'remmina_plugin_manager.c']]],
+ ['initialized',['initialized',['../struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f',1,'_RemminaMainPriv']]],
+ ['instance',['instance',['../structrf__context.html#a3a32bbd599b6684a3c41db9281863362',1,'rf_context']]],
+ ['interval',['interval',['../structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f',1,'rsSchedData']]],
+ ['is_5fmain_5fthread',['is_main_thread',['../struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b',1,'_RemminaPluginService']]],
+ ['is_5freconnecting',['is_reconnecting',['../structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8',1,'rf_context']]],
+ ['is_5fservice_5favailable',['is_service_available',['../struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4',1,'_RemminaSecretPlugin']]],
+ ['is_5ftunnel',['is_tunnel',['../struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6',1,'_RemminaSSH']]],
+ ['isinit',['isinit',['../remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea',1,'isinit():&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea',1,'isinit():&#160;remmina_unlock.c']]],
+ ['item_5ftype',['item_type',['../struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa',1,'_RemminaAppletMenuItem']]],
+ ['iter',['iter',['../structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46',1,'mpchanger_params::iter()'],['../struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4',1,'_RemminaPluginNxData::iter()']]],
+ ['iterate_5fhandler',['iterate_handler',['../struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0',1,'_RemminaAvahiPriv']]]
+];
diff --git a/docs/search/all_a.html b/docs/search/all_a.html
new file mode 100644
index 000000000..9601fcee1
--- /dev/null
+++ b/docs/search/all_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_a.js b/docs/search/all_a.js
new file mode 100644
index 000000000..7a974c5c6
--- /dev/null
+++ b/docs/search/all_a.js
@@ -0,0 +1,19 @@
+var searchData=
+[
+ ['kex_5falgorithms',['kex_algorithms',['../struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed',1,'_RemminaSSH']]],
+ ['key',['key',['../struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f',1,'_RemminaPluginVncEvent']]],
+ ['key_5fcode',['key_code',['../structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151',1,'remmina_plugin_rdp_event']]],
+ ['key_5fevent',['key_event',['../structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2',1,'remmina_plugin_rdp_event']]],
+ ['keyboard_5flayout',['keyboard_layout',['../rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63',1,'rdp_settings.c']]],
+ ['keyboard_5flayout_5fcombo',['keyboard_layout_combo',['../struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec',1,'_RemminaPluginRdpsetGrid']]],
+ ['keyboard_5flayout_5flabel',['keyboard_layout_label',['../struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5',1,'_RemminaPluginRdpsetGrid']]],
+ ['keyboard_5flayout_5fstore',['keyboard_layout_store',['../struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f',1,'_RemminaPluginRdpsetGrid']]],
+ ['keycode',['keycode',['../struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8',1,'_RemminaKeyVal']]],
+ ['keymap',['keymap',['../structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d',1,'rf_context']]],
+ ['keypress_5flist_5fadd',['keypress_list_add',['../rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2',1,'rdp_event.c']]],
+ ['keystrokes',['keystrokes',['../struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65',1,'_RemminaPref']]],
+ ['keyval',['keyval',['../struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f',1,'_RemminaKeyChooserArguments::keyval()'],['../struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712',1,'_RemminaKeyVal::keyval()'],['../struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87',1,'_RemminaPluginVncEvent::keyval()']]],
+ ['kioskmode',['kioskmode',['../remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae',1,'kioskmode():&#160;remmina.c'],['../remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1',1,'kioskmode():&#160;remmina.c']]],
+ ['kwallet_5fplugin_2eh',['kwallet_plugin.h',['../kwallet__plugin_8h.html',1,'']]],
+ ['kwallet_5fplugin_5fmain_2ec',['kwallet_plugin_main.c',['../kwallet__plugin__main_8c.html',1,'']]]
+];
diff --git a/docs/search/all_b.html b/docs/search/all_b.html
new file mode 100644
index 000000000..0814e4e03
--- /dev/null
+++ b/docs/search/all_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_b.js b/docs/search/all_b.js
new file mode 100644
index 000000000..6f8de6f40
--- /dev/null
+++ b/docs/search/all_b.js
@@ -0,0 +1,39 @@
+var searchData=
+[
+ ['label',['label',['../struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4',1,'_RemminaProtocolSetting::label()'],['../structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6',1,'remmina_masterthread_exec_data::label()'],['../struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed',1,'_RemminaProtocolSettingOpt::label()'],['../struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a',1,'_RemminaPluginSpiceXferWidgets::label()']]],
+ ['label_5fpleasewait',['label_pleasewait',['../struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281',1,'PCon_Spinner']]],
+ ['label_5fstatus',['label_status',['../struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7',1,'_RemminaStringList']]],
+ ['label_5fterminal_5fbackground',['label_terminal_background',['../struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fbright_5fcolors',['label_terminal_bright_colors',['../struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fcursor_5fcolor',['label_terminal_cursor_color',['../struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fforeground',['label_terminal_foreground',['../struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fnormal_5fcolors',['label_terminal_normal_colors',['../struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e',1,'_RemminaPrefDialog']]],
+ ['label_5ftitle',['label_title',['../struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933',1,'_RemminaStringList']]],
+ ['last_5fquickconnect_5fprotocol',['last_quickconnect_protocol',['../struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e',1,'_RemminaPref']]],
+ ['last_5fsignal',['LAST_SIGNAL',['../rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;rcw.c'],['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;remmina_applet_menu.c'],['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;remmina_ftp_client.c']]],
+ ['last_5fsuccess',['last_success',['../struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd',1,'_RemminaPref']]],
+ ['launch_5fitem',['launch_item',['../struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689',1,'_RemminaAppletMenuClass']]],
+ ['launch_5fitem_5fsignal',['LAUNCH_ITEM_SIGNAL',['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7',1,'remmina_applet_menu.c']]],
+ ['launcher_2esh',['launcher.sh',['../launcher_8sh.html',1,'']]],
+ ['left',['left',['../structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559',1,'remmina_plugin_rdp_ui_object']]],
+ ['lf2crlf',['lf2crlf',['../rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772',1,'rdp_cliprdr.c']]],
+ ['linux',['LINUX',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4',1,'remmina_ssh_plugin.c']]],
+ ['linux_5fpalette',['linux_palette',['../remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494',1,'remmina_ssh_plugin.c']]],
+ ['listen_5fmessage_5fpanel',['listen_message_panel',['../struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640',1,'_RemminaProtocolWidgetPriv']]],
+ ['listen_5fsock',['listen_sock',['../struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c',1,'_RemminaPluginVncData']]],
+ ['liststore_5fitems',['liststore_items',['../struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab',1,'_RemminaStringList']]],
+ ['load_5fevent',['load_event',['../struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436',1,'_RemminaPluginWWWData']]],
+ ['localdir',['localdir',['../struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9',1,'_RemminaFTPTask']]],
+ ['localdisplay',['localdisplay',['../struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1',1,'_RemminaSSHTunnel']]],
+ ['localport',['localport',['../struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260',1,'_RemminaSSHTunnel::localport()'],['../struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a',1,'_RemminaNXSession::localport()']]],
+ ['log_5fbuffer',['log_buffer',['../struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232',1,'_RemminaLogWindow::log_buffer()'],['../struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41',1,'_RemminaPluginExecData::log_buffer()']]],
+ ['log_5fcallback',['log_callback',['../struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7',1,'_RemminaNXSession']]],
+ ['log_5fprint',['log_print',['../struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de',1,'_RemminaPluginService']]],
+ ['log_5fprintf',['log_printf',['../struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d',1,'_RemminaPluginService']]],
+ ['log_5ftips',['log_tips',['../remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2',1,'remmina_ssh_plugin.c']]],
+ ['log_5fview',['log_view',['../struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087',1,'_RemminaLogWindow::log_view()'],['../struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1',1,'_RemminaPluginExecData::log_view()']]],
+ ['log_5fwindow',['log_window',['../remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a',1,'remmina_log.c']]],
+ ['loop',['loop',['../struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079',1,'MpRunInfo']]],
+ ['lsb_5fdistro_5finfo',['lsb_distro_info',['../structlsb__distro__info.html',1,'']]],
+ ['lsbdistroinfo',['LSBDistroInfo',['../remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba',1,'remmina_utils.c']]]
+];
diff --git a/docs/search/all_c.html b/docs/search/all_c.html
new file mode 100644
index 000000000..da08c387a
--- /dev/null
+++ b/docs/search/all_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_c.js b/docs/search/all_c.js
new file mode 100644
index 000000000..0b7961c47
--- /dev/null
+++ b/docs/search/all_c.js
@@ -0,0 +1,34 @@
+var searchData=
+[
+ ['main',['main',['../remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97',1,'remmina.c']]],
+ ['main_5factions',['main_actions',['../remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3',1,'remmina_main.c']]],
+ ['main_5fchannel',['main_channel',['../struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f',1,'_RemminaPluginSpiceData']]],
+ ['main_5fheight',['main_height',['../struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875',1,'_RemminaPref']]],
+ ['main_5fmaximize',['main_maximize',['../struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6',1,'_RemminaPref']]],
+ ['main_5fsort_5fcolumn_5fid',['main_sort_column_id',['../struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0',1,'_RemminaPref']]],
+ ['main_5fsort_5forder',['main_sort_order',['../struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4',1,'_RemminaPref']]],
+ ['main_5fwidth',['main_width',['../struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222',1,'_RemminaPref']]],
+ ['manager_5fdialog',['manager_dialog',['../struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b',1,'_RemminaPluginNxData']]],
+ ['manager_5fselected',['manager_selected',['../struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4',1,'_RemminaPluginNxData']]],
+ ['manager_5fstarted',['manager_started',['../struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82',1,'_RemminaPluginNxData']]],
+ ['master',['master',['../structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61',1,'remmina_masterthread_exec_data::master()'],['../struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f',1,'_RemminaSSHShell::master()']]],
+ ['max_5fchannels',['max_channels',['../struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6',1,'_RemminaSSHTunnel']]],
+ ['multi_20monitor_20support',['Multi monitor support',['../md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html',1,'']]],
+ ['menu',['menu',['../struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f',1,'_RemminaAppletMenu']]],
+ ['menu_5fheader_5fbutton',['menu_header_button',['../struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec',1,'_RemminaMain']]],
+ ['menu_5fpopup',['menu_popup',['../struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6',1,'_RemminaMain']]],
+ ['menu_5fpopup_5ffull',['menu_popup_full',['../struct___remmina_main.html#a1575015519fedca001bb26e129331b62',1,'_RemminaMain']]],
+ ['menuanimation_5fcheck',['menuanimation_check',['../struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d',1,'_RemminaPluginRdpsetGrid']]],
+ ['menuitem_5fconnection_5fquit',['menuitem_connection_quit',['../struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a',1,'_RemminaMain']]],
+ ['menuitem_5fview_5fmode_5flist',['menuitem_view_mode_list',['../struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4',1,'_RemminaMain']]],
+ ['menuitem_5fview_5fmode_5ftree',['menuitem_view_mode_tree',['../struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0',1,'_RemminaMain']]],
+ ['message',['message',['../structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1',1,'remmina_masterthread_exec_data::message()'],['../structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e',1,'remmina_plugin_rdp_ui_object::message()']]],
+ ['messagepanel_5fsignals',['messagepanel_signals',['../remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c',1,'remmina_message_panel.c']]],
+ ['monitor_5flayout',['monitor_layout',['../structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948',1,'remmina_plugin_rdp_event']]],
+ ['mouse_5fevent',['mouse_event',['../structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e',1,'remmina_plugin_rdp_event']]],
+ ['mp',['mp',['../structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050',1,'remmina_masterthread_exec_data::mp()'],['../struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5',1,'MpRunInfo::mp()']]],
+ ['mpchanger_5fparams',['mpchanger_params',['../structmpchanger__params.html',1,'']]],
+ ['mpruninfo',['MpRunInfo',['../struct_mp_run_info.html',1,'']]],
+ ['mu',['mu',['../structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc',1,'onMainThread_cb_data']]],
+ ['multi_2dmonitor_2dsupport_2emd',['multi-monitor-support.md',['../multi-monitor-support_8md.html',1,'']]]
+];
diff --git a/docs/search/all_d.html b/docs/search/all_d.html
new file mode 100644
index 000000000..9986c9cbf
--- /dev/null
+++ b/docs/search/all_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_d.js b/docs/search/all_d.js
new file mode 100644
index 000000000..6a32f7f68
--- /dev/null
+++ b/docs/search/all_d.js
@@ -0,0 +1,27 @@
+var searchData=
+[
+ ['n_5f',['N_',['../vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e',1,'vnc_plugin.c']]],
+ ['n_5fcolumns',['N_COLUMNS',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4',1,'remmina_main.c']]],
+ ['name',['name',['../struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582',1,'_RemminaPlugin::name()'],['../struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4',1,'_RemminaProtocolPlugin::name()'],['../struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1',1,'_RemminaEntryPlugin::name()'],['../struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6',1,'_RemminaFilePlugin::name()'],['../struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af',1,'_RemminaToolPlugin::name()'],['../struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b',1,'_RemminaPrefPlugin::name()'],['../struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a',1,'_RemminaSecretPlugin::name()'],['../struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857',1,'_RemminaProtocolSetting::name()'],['../struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c',1,'_RemminaAppletMenuItem::name()'],['../struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd',1,'_RemminaGroupData::name()'],['../struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307',1,'_RemminaFTPTask::name()'],['../struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea',1,'_RemminaProtocolSettingOpt::name()'],['../structlsb__distro__info.html#a251763a49054183774e2082595537e47',1,'lsb_distro_info::name()'],['../structdistro__info.html#a27013edbc763fecb35337ca0affacfc2',1,'distro_info::name()']]],
+ ['name_5fcolumn',['NAME_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c',1,'remmina_main.c']]],
+ ['nb_5ffind_5fpage_5fby_5fcnnobj',['nb_find_page_by_cnnobj',['../rcw_8c.html#a756830638372adda00be33468c8d3ed2',1,'rcw.c']]],
+ ['nb_5fmigrate_5fpage_5fcontent',['nb_migrate_page_content',['../rcw_8c.html#ac21387fbd4b689472e4796467bd50a55',1,'rcw.c']]],
+ ['nb_5fset_5fcurrent_5fpage',['nb_set_current_page',['../rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f',1,'rcw.c']]],
+ ['new_5ftask',['new_task',['../struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343',1,'_RemminaFTPClientClass']]],
+ ['new_5ftask_5fsignal',['NEW_TASK_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0',1,'remmina_ftp_client.c']]],
+ ['newline_5fremove',['newline_remove',['../remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305',1,'remmina_exec.c']]],
+ ['ninvalid',['ninvalid',['../structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb',1,'remmina_plugin_rdp_ui_object']]],
+ ['nocodec',['nocodec',['../structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34',1,'remmina_plugin_rdp_ui_object']]],
+ ['notebook_5fpreferences',['notebook_preferences',['../struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11',1,'_RemminaPrefDialog']]],
+ ['num_5fchannels',['num_channels',['../struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513',1,'_RemminaSSHTunnel']]],
+ ['num_5fcols',['NUM_COLS',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1',1,'remmina_mpchange.c']]],
+ ['nx',['nx',['../struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256',1,'_RemminaPluginNxData']]],
+ ['nx_5fdefault_5fprivate_5fkey',['nx_default_private_key',['../nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c',1,'nx_session.c']]],
+ ['nx_5fhello_5fserver_5fmsg',['nx_hello_server_msg',['../nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d',1,'nx_session.c']]],
+ ['nx_5fplugin_2ec',['nx_plugin.c',['../nx__plugin_8c.html',1,'']]],
+ ['nx_5fplugin_2eh',['nx_plugin.h',['../nx__plugin_8h.html',1,'']]],
+ ['nx_5fsession_2ec',['nx_session.c',['../nx__session_8c.html',1,'']]],
+ ['nx_5fsession_2eh',['nx_session.h',['../nx__session_8h.html',1,'']]],
+ ['nx_5fsession_5fmanager_2ec',['nx_session_manager.c',['../nx__session__manager_8c.html',1,'']]],
+ ['nx_5fsession_5fmanager_2eh',['nx_session_manager.h',['../nx__session__manager_8h.html',1,'']]]
+];
diff --git a/docs/search/all_e.html b/docs/search/all_e.html
new file mode 100644
index 000000000..9fa42bbac
--- /dev/null
+++ b/docs/search/all_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_e.js b/docs/search/all_e.js
new file mode 100644
index 000000000..17988c323
--- /dev/null
+++ b/docs/search/all_e.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['object_5fid_5fseq',['object_id_seq',['../structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960',1,'rf_context']]],
+ ['object_5ftable',['object_table',['../structrf__context.html#aafce196b029d2578151275acd07ccb82',1,'rf_context']]],
+ ['onmainthread_5fcb',['onMainThread_cb',['../nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1',1,'onMainThread_cb(struct onMainThread_cb_data *d):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1',1,'onMainThread_cb(struct onMainThread_cb_data *d):&#160;vnc_plugin.c']]],
+ ['onmainthread_5fcb_5fdata',['onMainThread_cb_data',['../structon_main_thread__cb__data.html',1,'']]],
+ ['onmainthread_5fcleanup_5fhandler',['onMainThread_cleanup_handler',['../nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49',1,'onMainThread_cleanup_handler(gpointer data):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49',1,'onMainThread_cleanup_handler(gpointer data):&#160;vnc_plugin.c']]],
+ ['onmainthread_5fgtk_5fsocket_5fadd_5fid',['onMainThread_gtk_socket_add_id',['../nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43',1,'nx_plugin.c']]],
+ ['onmainthread_5fschedule_5fcallback_5fand_5fwait',['onMainThread_schedule_callback_and_wait',['../nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53',1,'onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53',1,'onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d):&#160;vnc_plugin.c']]],
+ ['open_5fconnection',['open_connection',['../struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd',1,'_RemminaProtocolPlugin::open_connection()'],['../struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef',1,'_RemminaPluginService::open_connection()']]],
+ ['open_5fconnection_5flast_5fstage',['open_connection_last_stage',['../rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd',1,'rcw.c']]],
+ ['open_5fdir',['open_dir',['../struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7',1,'_RemminaFTPClientClass']]],
+ ['open_5fdir_5fsignal',['OPEN_DIR_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64',1,'remmina_ftp_client.c']]],
+ ['opt1',['opt1',['../struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952',1,'_RemminaProtocolFeature::opt1()'],['../struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0',1,'_RemminaProtocolSetting::opt1()'],['../struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20',1,'_RemminaProtocolSettingOpt::opt1()']]],
+ ['opt2',['opt2',['../struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d',1,'_RemminaProtocolFeature::opt2()'],['../struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167',1,'_RemminaProtocolSetting::opt2()'],['../struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867',1,'_RemminaProtocolSettingOpt::opt2()']]],
+ ['opt3',['opt3',['../struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190',1,'_RemminaProtocolFeature']]],
+ ['orig_5fhandler',['orig_handler',['../struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c',1,'_RemminaPluginNxData']]],
+ ['orig_5fkeycode',['orig_keycode',['../structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88',1,'remmina_plugin_rdp_keymap_entry']]],
+ ['orphaned',['orphaned',['../structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4',1,'rf_context']]],
+ ['output_5ffd',['output_fd',['../struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223',1,'_RemminaPluginXdmcpData']]],
+ ['output_5ffile_5fpath',['output_file_path',['../rmnews_8c.html#a565782499953048b5e51934123195e29',1,'rmnews.c']]],
+ ['override_5fview_5ffile_5fmode_5fto_5flist',['override_view_file_mode_to_list',['../struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76',1,'_RemminaMainPriv']]]
+];
diff --git a/docs/search/all_f.html b/docs/search/all_f.html
new file mode 100644
index 000000000..6ecfc0ed8
--- /dev/null
+++ b/docs/search/all_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/all_f.js b/docs/search/all_f.js
new file mode 100644
index 000000000..6513d7038
--- /dev/null
+++ b/docs/search/all_f.js
@@ -0,0 +1,118 @@
+var searchData=
+[
+ ['problems_2dwith_2dwayland',['Problems-with-Wayland',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html',1,'']]],
+ ['p',['p',['../structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92',1,'remmina_masterthread_exec_data']]],
+ ['palette',['palette',['../struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563',1,'_RemminaPluginSshData::palette()'],['../remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5',1,'palette():&#160;remmina_ssh_plugin.c']]],
+ ['panel_5ftype',['panel_type',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373',1,'remmina_protocol_widget.c']]],
+ ['parent',['parent',['../struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510',1,'_RemminaTpHandler']]],
+ ['parent_5fclass',['parent_class',['../struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab',1,'_RemminaConnectionWindowClass::parent_class()'],['../struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5',1,'_RemminaAppletMenuClass::parent_class()'],['../struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a',1,'_RemminaAppletMenuItemClass::parent_class()'],['../struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19',1,'_RemminaChatWindowClass::parent_class()'],['../struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f',1,'_RemminaFileEditorClass::parent_class()'],['../struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279',1,'_RemminaCellRendererPixbufClass::parent_class()'],['../struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce',1,'_RemminaFTPClientClass::parent_class()'],['../struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af',1,'_RemminaLogWindowClass::parent_class()'],['../struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2',1,'_RemminaProtocolWidgetClass::parent_class()'],['../struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f',1,'_RemminaScrolledViewportClass::parent_class()'],['../struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d',1,'_RemminaSFTPClientClass::parent_class()'],['../struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9',1,'_RemminaPluginRdpsetGridClass::parent_class()'],['../struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f',1,'_RemminaTpHandlerClass::parent_class()']]],
+ ['passphrase',['passphrase',['../struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529',1,'_RemminaSSH']]],
+ ['password',['password',['../structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e',1,'mpchanger_params::password()'],['../struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7',1,'_RemminaProtocolWidgetPriv::password()'],['../struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89',1,'_RemminaSSH::password()']]],
+ ['path',['path',['../structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9',1,'remmina_masterthread_exec_data']]],
+ ['pcon_5fspinner',['PCon_Spinner',['../struct_p_con___spinner.html',1,'']]],
+ ['pcount',['pcount',['../struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680',1,'ProfilesData']]],
+ ['pdatestr',['pdatestr',['../struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4',1,'ProfilesData']]],
+ ['periodic_5frmnews_5fget_5fcount',['periodic_rmnews_get_count',['../struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005',1,'_RemminaPref']]],
+ ['periodic_5frmnews_5flast_5fget',['periodic_rmnews_last_get',['../struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6',1,'_RemminaPref']]],
+ ['periodic_5frmnews_5fuuid_5fprefix',['periodic_rmnews_uuid_prefix',['../struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5flast_5fsent',['periodic_usage_stats_last_sent',['../struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5fpermitted',['periodic_usage_stats_permitted',['../struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5fuuid_5fprefix',['periodic_usage_stats_uuid_prefix',['../struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7',1,'_RemminaPref']]],
+ ['pflags',['pflags',['../structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['pformatdatarequest',['pFormatDataRequest',['../structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c',1,'remmina_plugin_rdp_event']]],
+ ['pformatlist',['pFormatList',['../structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082',1,'remmina_plugin_rdp_event']]],
+ ['pid',['pid',['../struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739',1,'_RemminaPluginData::pid()'],['../struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca',1,'_RemminaPluginXdmcpData::pid()']]],
+ ['pixmap',['pixmap',['../structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b',1,'rf_bitmap::pixmap()'],['../structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22',1,'rf_glyph::pixmap()']]],
+ ['plugin',['plugin',['../struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0',1,'_RemminaProtocolWidgetPriv']]],
+ ['plugin_2ec',['plugin.c',['../plugin_8c.html',1,'']]],
+ ['plugin_2eh',['plugin.h',['../plugin_8h.html',1,'']]],
+ ['plugin_5fcan_5fscale',['plugin_can_scale',['../struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250',1,'_RemminaConnectionObject']]],
+ ['plugin_5fcolumn',['PLUGIN_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756',1,'remmina_main.c']]],
+ ['plugin_5fconfig_2eh',['plugin_config.h',['../plugin__config_8h.html',1,'']]],
+ ['pointer',['pointer',['../structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf',1,'rf_pointer::pointer()'],['../structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed',1,'remmina_plugin_rdp_ui_object::pointer()'],['../struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895',1,'_RemminaPluginVncEvent::pointer()']]],
+ ['popup_5ftime',['popup_time',['../struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333',1,'_RemminaIcon']]],
+ ['port',['port',['../structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9',1,'remmina_masterthread_exec_data::port()'],['../struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc',1,'_RemminaSSH::port()'],['../struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc',1,'_RemminaSSHTunnel::port()'],['../struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107',1,'_RemminaTpChannelHandler::port()']]],
+ ['pos',['pos',['../structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e',1,'remmina_plugin_rdp_ui_object']]],
+ ['postconnect_5ferror',['postconnect_error',['../structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48',1,'rf_context']]],
+ ['pref_5fget_5fscale_5fquality',['pref_get_scale_quality',['../struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fssh_5floglevel',['pref_get_ssh_loglevel',['../struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fssh_5fparseconfig',['pref_get_ssh_parseconfig',['../struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fsshtunnel_5fport',['pref_get_sshtunnel_port',['../struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fvalue',['pref_get_value',['../struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9',1,'_RemminaPluginService']]],
+ ['pref_5fkeymap_5fget_5fkeyval',['pref_keymap_get_keyval',['../struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2',1,'_RemminaPluginService']]],
+ ['pref_5flabel',['pref_label',['../struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d',1,'_RemminaPrefPlugin']]],
+ ['pref_5fset_5fvalue',['pref_set_value',['../struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c',1,'_RemminaPluginService']]],
+ ['pressed',['pressed',['../struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8',1,'_RemminaPluginVncEvent']]],
+ ['pressed_5fkeys',['pressed_keys',['../structrf__context.html#a335c40ccb90ae472525b203c832e7701',1,'rf_context::pressed_keys()'],['../struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0',1,'_RemminaPluginVncData::pressed_keys()']]],
+ ['prevent_5fsaving',['prevent_saving',['../struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488',1,'_RemminaFile']]],
+ ['prevent_5fsnap_5fwelcome_5fmessage',['prevent_snap_welcome_message',['../struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7',1,'_RemminaPref']]],
+ ['priv',['priv',['../struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c',1,'_RemminaConnectionWindow::priv()'],['../struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a',1,'_RemminaAppletMenu::priv()'],['../struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb',1,'_RemminaAvahi::priv()'],['../struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a',1,'_RemminaFileEditor::priv()'],['../struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54',1,'_RemminaFTPClient::priv()'],['../struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980',1,'_RemminaMain::priv()'],['../struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb',1,'_RemminaPrefDialog::priv()'],['../struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6',1,'_RemminaProtocolWidget::priv()'],['../struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3',1,'_RemminaStringList::priv()']]],
+ ['privkeyfile',['privkeyfile',['../struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e',1,'_RemminaSSH']]],
+ ['problems_2dwith_2dwayland_2emd',['Problems-with-Wayland.md',['../_problems-with-_wayland_8md.html',1,'']]],
+ ['profile_5fremote_5fheight',['profile_remote_height',['../struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca',1,'_RemminaProtocolWidgetPriv']]],
+ ['profile_5fremote_5fwidth',['profile_remote_width',['../struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10',1,'_RemminaProtocolWidgetPriv']]],
+ ['profilesdata',['ProfilesData',['../struct_profiles_data.html',1,'']]],
+ ['progress',['progress',['../struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['proto',['proto',['../struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995',1,'_RemminaConnectionObject']]],
+ ['proto_5fcount',['proto_count',['../struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef',1,'ProfilesData']]],
+ ['proto_5fdate',['proto_date',['../struct_profiles_data.html#a010a740c75d19daf63572f87565ae956',1,'ProfilesData']]],
+ ['proto_5fwidget',['proto_widget',['../struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545',1,'_RemminaTpChannelHandler']]],
+ ['protocol',['protocol',['../struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e',1,'_RemminaAppletMenuItem::protocol()'],['../struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a',1,'ProfilesData::protocol()'],['../struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659',1,'_RemminaTpChannelHandler::protocol()']]],
+ ['protocol_5fcolumn',['PROTOCOL_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445',1,'remmina_main.c']]],
+ ['protocol_5fplugin_5fchanged_5fcertificate',['protocol_plugin_changed_certificate',['../struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5fclose',['protocol_plugin_chat_close',['../struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5fopen',['protocol_plugin_chat_open',['../struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5freceive',['protocol_plugin_chat_receive',['../struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fdesktop_5fresize',['protocol_plugin_desktop_resize',['../struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5femit_5fsignal',['protocol_plugin_emit_signal',['../struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fexpand',['protocol_plugin_get_expand',['../struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5ffile',['protocol_plugin_get_file',['../struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fheight',['protocol_plugin_get_height',['../struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fwidth',['protocol_plugin_get_width',['../struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fhas_5ferror',['protocol_plugin_has_error',['../struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fauth',['protocol_plugin_init_auth',['../struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fauthx509',['protocol_plugin_init_authx509',['../struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fcertificate',['protocol_plugin_init_certificate',['../struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fcacert',['protocol_plugin_init_get_cacert',['../struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fcacrl',['protocol_plugin_init_get_cacrl',['../struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fclientcert',['protocol_plugin_init_get_clientcert',['../struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fclientkey',['protocol_plugin_init_get_clientkey',['../struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fdomain',['protocol_plugin_init_get_domain',['../struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fpassword',['protocol_plugin_init_get_password',['../struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fsavepassword',['protocol_plugin_init_get_savepassword',['../struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fusername',['protocol_plugin_init_get_username',['../struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fhide',['protocol_plugin_init_hide',['../struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fsave_5fcred',['protocol_plugin_init_save_cred',['../struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow',['protocol_plugin_init_show',['../struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow_5flisten',['protocol_plugin_init_show_listen',['../struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow_5fretry',['protocol_plugin_init_show_retry',['../struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fis_5fclosed',['protocol_plugin_is_closed',['../struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fregister_5fhostkey',['protocol_plugin_register_hostkey',['../struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsend_5fkeys_5fsignals',['protocol_plugin_send_keys_signals',['../struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fdisplay',['protocol_plugin_set_display',['../struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5ferror',['protocol_plugin_set_error',['../struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fexpand',['protocol_plugin_set_expand',['../struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fheight',['protocol_plugin_set_height',['../struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fwidth',['protocol_plugin_set_width',['../struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsignal_5fconnection_5fclosed',['protocol_plugin_signal_connection_closed',['../struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsignal_5fconnection_5fopened',['protocol_plugin_signal_connection_opened',['../struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fssh_5fexec',['protocol_plugin_ssh_exec',['../struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5fdirect_5ftunnel',['protocol_plugin_start_direct_tunnel',['../struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5freverse_5ftunnel',['protocol_plugin_start_reverse_tunnel',['../struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5fxport_5ftunnel',['protocol_plugin_start_xport_tunnel',['../struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5funlock_5fdynres',['protocol_plugin_unlock_dynres',['../struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fupdate_5falign',['protocol_plugin_update_align',['../struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d',1,'_RemminaPluginService']]],
+ ['protocol_5fwidget',['protocol_widget',['../structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3',1,'rf_context']]],
+ ['protocolwidget_5femit_5fsignal',['protocolwidget_emit_signal',['../structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpdestroy',['protocolwidget_mpdestroy',['../structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpprogress',['protocolwidget_mpprogress',['../structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpshowretry',['protocolwidget_mpshowretry',['../structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fpanelshowlisten',['protocolwidget_panelshowlisten',['../structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95',1,'remmina_masterthread_exec_data']]],
+ ['proxy_5fcookie',['proxy_cookie',['../struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5',1,'_RemminaNXSession']]],
+ ['proxy_5fpid',['proxy_pid',['../struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6',1,'_RemminaNXSession']]],
+ ['proxy_5fwatch_5fsource',['proxy_watch_source',['../struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4',1,'_RemminaNXSession']]],
+ ['proxycommand',['proxycommand',['../struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af',1,'_RemminaSSH']]],
+ ['pt_5fcond',['pt_cond',['../structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b',1,'remmina_masterthread_exec_data::pt_cond()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda',1,'remmina_protocol_widget_dialog_mt_data_t::pt_cond()']]],
+ ['pt_5fmutex',['pt_mutex',['../structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319',1,'remmina_masterthread_exec_data::pt_mutex()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf',1,'remmina_protocol_widget_dialog_mt_data_t::pt_mutex()']]],
+ ['pthreadcleanupfunc',['PThreadCleanupFunc',['../remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee',1,'remmina_plugin.h']]]
+];
diff --git a/docs/search/classes_0.html b/docs/search/classes_0.html
new file mode 100644
index 000000000..1c3e406ac
--- /dev/null
+++ b/docs/search/classes_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_0.js b/docs/search/classes_0.js
new file mode 100644
index 000000000..fb66debcc
--- /dev/null
+++ b/docs/search/classes_0.js
@@ -0,0 +1,81 @@
+var searchData=
+[
+ ['_5fremminaappletmenu',['_RemminaAppletMenu',['../struct___remmina_applet_menu.html',1,'']]],
+ ['_5fremminaappletmenuclass',['_RemminaAppletMenuClass',['../struct___remmina_applet_menu_class.html',1,'']]],
+ ['_5fremminaappletmenuitem',['_RemminaAppletMenuItem',['../struct___remmina_applet_menu_item.html',1,'']]],
+ ['_5fremminaappletmenuitemclass',['_RemminaAppletMenuItemClass',['../struct___remmina_applet_menu_item_class.html',1,'']]],
+ ['_5fremminaavahi',['_RemminaAvahi',['../struct___remmina_avahi.html',1,'']]],
+ ['_5fremminaavahipriv',['_RemminaAvahiPriv',['../struct___remmina_avahi_priv.html',1,'']]],
+ ['_5fremminacellrendererpixbuf',['_RemminaCellRendererPixbuf',['../struct___remmina_cell_renderer_pixbuf.html',1,'']]],
+ ['_5fremminacellrendererpixbufclass',['_RemminaCellRendererPixbufClass',['../struct___remmina_cell_renderer_pixbuf_class.html',1,'']]],
+ ['_5fremminachatwindow',['_RemminaChatWindow',['../struct___remmina_chat_window.html',1,'']]],
+ ['_5fremminachatwindowclass',['_RemminaChatWindowClass',['../struct___remmina_chat_window_class.html',1,'']]],
+ ['_5fremminacolorpref',['_RemminaColorPref',['../struct___remmina_color_pref.html',1,'']]],
+ ['_5fremminaconnectionobject',['_RemminaConnectionObject',['../struct___remmina_connection_object.html',1,'']]],
+ ['_5fremminaconnectionwindow',['_RemminaConnectionWindow',['../struct___remmina_connection_window.html',1,'']]],
+ ['_5fremminaconnectionwindowclass',['_RemminaConnectionWindowClass',['../struct___remmina_connection_window_class.html',1,'']]],
+ ['_5fremminaentryplugin',['_RemminaEntryPlugin',['../struct___remmina_entry_plugin.html',1,'']]],
+ ['_5fremminafile',['_RemminaFile',['../struct___remmina_file.html',1,'']]],
+ ['_5fremminafileeditor',['_RemminaFileEditor',['../struct___remmina_file_editor.html',1,'']]],
+ ['_5fremminafileeditorclass',['_RemminaFileEditorClass',['../struct___remmina_file_editor_class.html',1,'']]],
+ ['_5fremminafileplugin',['_RemminaFilePlugin',['../struct___remmina_file_plugin.html',1,'']]],
+ ['_5fremminaftpclient',['_RemminaFTPClient',['../struct___remmina_f_t_p_client.html',1,'']]],
+ ['_5fremminaftpclientclass',['_RemminaFTPClientClass',['../struct___remmina_f_t_p_client_class.html',1,'']]],
+ ['_5fremminaftptask',['_RemminaFTPTask',['../struct___remmina_f_t_p_task.html',1,'']]],
+ ['_5fremminagroupdata',['_RemminaGroupData',['../struct___remmina_group_data.html',1,'']]],
+ ['_5fremminaicon',['_RemminaIcon',['../struct___remmina_icon.html',1,'']]],
+ ['_5fremminakeychooserarguments',['_RemminaKeyChooserArguments',['../struct___remmina_key_chooser_arguments.html',1,'']]],
+ ['_5fremminakeyval',['_RemminaKeyVal',['../struct___remmina_key_val.html',1,'']]],
+ ['_5fremminalogwindow',['_RemminaLogWindow',['../struct___remmina_log_window.html',1,'']]],
+ ['_5fremminalogwindowclass',['_RemminaLogWindowClass',['../struct___remmina_log_window_class.html',1,'']]],
+ ['_5fremminamain',['_RemminaMain',['../struct___remmina_main.html',1,'']]],
+ ['_5fremminamainpriv',['_RemminaMainPriv',['../struct___remmina_main_priv.html',1,'']]],
+ ['_5fremminanewsdialog',['_RemminaNewsDialog',['../struct___remmina_news_dialog.html',1,'']]],
+ ['_5fremminanxsession',['_RemminaNXSession',['../struct___remmina_n_x_session.html',1,'']]],
+ ['_5fremminaplugin',['_RemminaPlugin',['../struct___remmina_plugin.html',1,'']]],
+ ['_5fremminaplugindata',['_RemminaPluginData',['../struct___remmina_plugin_data.html',1,'']]],
+ ['_5fremminapluginexecdata',['_RemminaPluginExecData',['../struct___remmina_plugin_exec_data.html',1,'']]],
+ ['_5fremminapluginnxdata',['_RemminaPluginNxData',['../struct___remmina_plugin_nx_data.html',1,'']]],
+ ['_5fremminapluginrdpsetgrid',['_RemminaPluginRdpsetGrid',['../struct___remmina_plugin_rdpset_grid.html',1,'']]],
+ ['_5fremminapluginrdpsetgridclass',['_RemminaPluginRdpsetGridClass',['../struct___remmina_plugin_rdpset_grid_class.html',1,'']]],
+ ['_5fremminapluginscreenshotdata',['_RemminaPluginScreenshotData',['../struct___remmina_plugin_screenshot_data.html',1,'']]],
+ ['_5fremminapluginservice',['_RemminaPluginService',['../struct___remmina_plugin_service.html',1,'']]],
+ ['_5fremminapluginsftpdata',['_RemminaPluginSftpData',['../struct___remmina_plugin_sftp_data.html',1,'']]],
+ ['_5fremminapluginspicedata',['_RemminaPluginSpiceData',['../struct___remmina_plugin_spice_data.html',1,'']]],
+ ['_5fremminapluginspicexferwidgets',['_RemminaPluginSpiceXferWidgets',['../struct___remmina_plugin_spice_xfer_widgets.html',1,'']]],
+ ['_5fremminapluginsshdata',['_RemminaPluginSshData',['../struct___remmina_plugin_ssh_data.html',1,'']]],
+ ['_5fremminapluginvnccoordinates',['_RemminaPluginVncCoordinates',['../struct___remmina_plugin_vnc_coordinates.html',1,'']]],
+ ['_5fremminapluginvnccuttextparam',['_RemminaPluginVncCuttextParam',['../struct___remmina_plugin_vnc_cuttext_param.html',1,'']]],
+ ['_5fremminapluginvncdata',['_RemminaPluginVncData',['../struct___remmina_plugin_vnc_data.html',1,'']]],
+ ['_5fremminapluginvncevent',['_RemminaPluginVncEvent',['../struct___remmina_plugin_vnc_event.html',1,'']]],
+ ['_5fremminapluginwwwdata',['_RemminaPluginWWWData',['../struct___remmina_plugin_w_w_w_data.html',1,'']]],
+ ['_5fremminapluginxdmcpdata',['_RemminaPluginXdmcpData',['../struct___remmina_plugin_xdmcp_data.html',1,'']]],
+ ['_5fremminapref',['_RemminaPref',['../struct___remmina_pref.html',1,'']]],
+ ['_5fremminaprefdialog',['_RemminaPrefDialog',['../struct___remmina_pref_dialog.html',1,'']]],
+ ['_5fremminaprefdialogpriv',['_RemminaPrefDialogPriv',['../struct___remmina_pref_dialog_priv.html',1,'']]],
+ ['_5fremminaprefplugin',['_RemminaPrefPlugin',['../struct___remmina_pref_plugin.html',1,'']]],
+ ['_5fremminaprotocolfeature',['_RemminaProtocolFeature',['../struct___remmina_protocol_feature.html',1,'']]],
+ ['_5fremminaprotocolplugin',['_RemminaProtocolPlugin',['../struct___remmina_protocol_plugin.html',1,'']]],
+ ['_5fremminaprotocolsetting',['_RemminaProtocolSetting',['../struct___remmina_protocol_setting.html',1,'']]],
+ ['_5fremminaprotocolsettingopt',['_RemminaProtocolSettingOpt',['../struct___remmina_protocol_setting_opt.html',1,'']]],
+ ['_5fremminaprotocolwidget',['_RemminaProtocolWidget',['../struct___remmina_protocol_widget.html',1,'']]],
+ ['_5fremminaprotocolwidgetclass',['_RemminaProtocolWidgetClass',['../struct___remmina_protocol_widget_class.html',1,'']]],
+ ['_5fremminaprotocolwidgetpriv',['_RemminaProtocolWidgetPriv',['../struct___remmina_protocol_widget_priv.html',1,'']]],
+ ['_5fremminaprotocolwidgetsignaldata',['_RemminaProtocolWidgetSignalData',['../struct___remmina_protocol_widget_signal_data.html',1,'']]],
+ ['_5fremminascrolledviewport',['_RemminaScrolledViewport',['../struct___remmina_scrolled_viewport.html',1,'']]],
+ ['_5fremminascrolledviewportclass',['_RemminaScrolledViewportClass',['../struct___remmina_scrolled_viewport_class.html',1,'']]],
+ ['_5fremminasecretplugin',['_RemminaSecretPlugin',['../struct___remmina_secret_plugin.html',1,'']]],
+ ['_5fremminasftp',['_RemminaSFTP',['../struct___remmina_s_f_t_p.html',1,'']]],
+ ['_5fremminasftpclient',['_RemminaSFTPClient',['../struct___remmina_s_f_t_p_client.html',1,'']]],
+ ['_5fremminasftpclientclass',['_RemminaSFTPClientClass',['../struct___remmina_s_f_t_p_client_class.html',1,'']]],
+ ['_5fremminassh',['_RemminaSSH',['../struct___remmina_s_s_h.html',1,'']]],
+ ['_5fremminasshshell',['_RemminaSSHShell',['../struct___remmina_s_s_h_shell.html',1,'']]],
+ ['_5fremminasshtunnel',['_RemminaSSHTunnel',['../struct___remmina_s_s_h_tunnel.html',1,'']]],
+ ['_5fremminastringlist',['_RemminaStringList',['../struct___remmina_string_list.html',1,'']]],
+ ['_5fremminastringlistpriv',['_RemminaStringListPriv',['../struct___remmina_string_list_priv.html',1,'']]],
+ ['_5fremminatoolplugin',['_RemminaToolPlugin',['../struct___remmina_tool_plugin.html',1,'']]],
+ ['_5fremminatpchannelhandler',['_RemminaTpChannelHandler',['../struct___remmina_tp_channel_handler.html',1,'']]],
+ ['_5fremminatphandler',['_RemminaTpHandler',['../struct___remmina_tp_handler.html',1,'']]],
+ ['_5fremminatphandlerclass',['_RemminaTpHandlerClass',['../struct___remmina_tp_handler_class.html',1,'']]],
+ ['_5fremminaunlockdialog',['_RemminaUnlockDialog',['../struct___remmina_unlock_dialog.html',1,'']]]
+];
diff --git a/docs/search/classes_1.html b/docs/search/classes_1.html
new file mode 100644
index 000000000..a8e706950
--- /dev/null
+++ b/docs/search/classes_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_1.js b/docs/search/classes_1.js
new file mode 100644
index 000000000..fd12caa40
--- /dev/null
+++ b/docs/search/classes_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['distro_5finfo',['distro_info',['../structdistro__info.html',1,'']]]
+];
diff --git a/docs/search/classes_2.html b/docs/search/classes_2.html
new file mode 100644
index 000000000..5c09c9691
--- /dev/null
+++ b/docs/search/classes_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_2.js b/docs/search/classes_2.js
new file mode 100644
index 000000000..918234bfa
--- /dev/null
+++ b/docs/search/classes_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['lsb_5fdistro_5finfo',['lsb_distro_info',['../structlsb__distro__info.html',1,'']]]
+];
diff --git a/docs/search/classes_3.html b/docs/search/classes_3.html
new file mode 100644
index 000000000..5faaeba81
--- /dev/null
+++ b/docs/search/classes_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_3.js b/docs/search/classes_3.js
new file mode 100644
index 000000000..114e8bfa8
--- /dev/null
+++ b/docs/search/classes_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['mpchanger_5fparams',['mpchanger_params',['../structmpchanger__params.html',1,'']]],
+ ['mpruninfo',['MpRunInfo',['../struct_mp_run_info.html',1,'']]]
+];
diff --git a/docs/search/classes_4.html b/docs/search/classes_4.html
new file mode 100644
index 000000000..b3f11bc78
--- /dev/null
+++ b/docs/search/classes_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_4.js b/docs/search/classes_4.js
new file mode 100644
index 000000000..2cebca4b9
--- /dev/null
+++ b/docs/search/classes_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['onmainthread_5fcb_5fdata',['onMainThread_cb_data',['../structon_main_thread__cb__data.html',1,'']]]
+];
diff --git a/docs/search/classes_5.html b/docs/search/classes_5.html
new file mode 100644
index 000000000..952ace6f4
--- /dev/null
+++ b/docs/search/classes_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_5.js b/docs/search/classes_5.js
new file mode 100644
index 000000000..5dd8c51c4
--- /dev/null
+++ b/docs/search/classes_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['pcon_5fspinner',['PCon_Spinner',['../struct_p_con___spinner.html',1,'']]],
+ ['profilesdata',['ProfilesData',['../struct_profiles_data.html',1,'']]]
+];
diff --git a/docs/search/classes_6.html b/docs/search/classes_6.html
new file mode 100644
index 000000000..75eef9f42
--- /dev/null
+++ b/docs/search/classes_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_6.js b/docs/search/classes_6.js
new file mode 100644
index 000000000..a11a7aa7c
--- /dev/null
+++ b/docs/search/classes_6.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['region',['region',['../structregion.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_5fdata',['remmina_masterthread_exec_data',['../structremmina__masterthread__exec__data.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fevent',['remmina_plugin_rdp_event',['../structremmina__plugin__rdp__event.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fkeymap_5fentry',['remmina_plugin_rdp_keymap_entry',['../structremmina__plugin__rdp__keymap__entry.html',1,'']]],
+ ['remmina_5fplugin_5frdp_5fui_5fobject',['remmina_plugin_rdp_ui_object',['../structremmina__plugin__rdp__ui__object.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog_5fmt_5fdata_5ft',['remmina_protocol_widget_dialog_mt_data_t',['../structremmina__protocol__widget__dialog__mt__data__t.html',1,'']]],
+ ['remminamessagepanelprivate',['RemminaMessagePanelPrivate',['../struct_remmina_message_panel_private.html',1,'']]],
+ ['rf_5fbitmap',['rf_bitmap',['../structrf__bitmap.html',1,'']]],
+ ['rf_5fclipboard',['rf_clipboard',['../structrf__clipboard.html',1,'']]],
+ ['rf_5fcontext',['rf_context',['../structrf__context.html',1,'']]],
+ ['rf_5fglyph',['rf_glyph',['../structrf__glyph.html',1,'']]],
+ ['rf_5fpointer',['rf_pointer',['../structrf__pointer.html',1,'']]],
+ ['rsscheddata',['rsSchedData',['../structrs_sched_data.html',1,'']]]
+];
diff --git a/docs/search/classes_7.html b/docs/search/classes_7.html
new file mode 100644
index 000000000..745f5f282
--- /dev/null
+++ b/docs/search/classes_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/classes_7.js b/docs/search/classes_7.js
new file mode 100644
index 000000000..6ed55182d
--- /dev/null
+++ b/docs/search/classes_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['sc_5ftdata',['sc_tdata',['../structsc__tdata.html',1,'']]]
+];
diff --git a/docs/search/close.png b/docs/search/close.png
new file mode 100644
index 000000000..9342d3dfe
--- /dev/null
+++ b/docs/search/close.png
Binary files differ
diff --git a/docs/search/enums_0.html b/docs/search/enums_0.html
new file mode 100644
index 000000000..ee343ac0b
--- /dev/null
+++ b/docs/search/enums_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enums_0.js b/docs/search/enums_0.js
new file mode 100644
index 000000000..30d038cc4
--- /dev/null
+++ b/docs/search/enums_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['color_5fschemes',['color_schemes',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807c',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/enums_1.html b/docs/search/enums_1.html
new file mode 100644
index 000000000..3fd210a06
--- /dev/null
+++ b/docs/search/enums_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enums_1.js b/docs/search/enums_1.js
new file mode 100644
index 000000000..5dbce83f3
--- /dev/null
+++ b/docs/search/enums_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['panel_5ftype',['panel_type',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373',1,'remmina_protocol_widget.c']]]
+];
diff --git a/docs/search/enums_2.html b/docs/search/enums_2.html
new file mode 100644
index 000000000..a042e520e
--- /dev/null
+++ b/docs/search/enums_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enums_2.js b/docs/search/enums_2.js
new file mode 100644
index 000000000..6ad140394
--- /dev/null
+++ b/docs/search/enums_2.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['remmina_5fssh_5fauth_5fresult',['remmina_ssh_auth_result',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1',1,'remmina_ssh.h']]],
+ ['remminaappletmenuitemtype',['RemminaAppletMenuItemType',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenunewconnectiontype',['RemminaAppletMenuNewConnectionType',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffb',1,'remmina_applet_menu.h']]],
+ ['remminaauthpwdtype',['RemminaAuthpwdType',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5',1,'types.h']]],
+ ['remminacommandtype',['RemminaCommandType',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0c',1,'remmina_exec.h']]],
+ ['remminacondexittype',['RemminaCondExitType',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5',1,'remmina_exec.h']]],
+ ['remminaconnectionwindowondeleteconfirmmode',['RemminaConnectionWindowOnDeleteConfirmMode',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307f',1,'rcw.h']]],
+ ['remminamessagepanelflags',['RemminaMessagePanelFlags',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486',1,'types.h']]],
+ ['remminanxeventtype',['RemminaNXEventType',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661c',1,'nx_plugin.h']]],
+ ['remminapluginrdpeventtype',['RemminaPluginRdpEventType',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuiclipboardtype',['RemminaPluginRdpUiClipboardType',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuieeventtype',['RemminaPluginRdpUiEeventType',['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuipointertype',['RemminaPluginRdpUiPointerType',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed',1,'rdp_plugin.h']]],
+ ['remminapluginrdpuitype',['RemminaPluginRdpUiType',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072',1,'rdp_plugin.h']]],
+ ['remminaplugintype',['RemminaPluginType',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624a',1,'plugin.h']]],
+ ['remminaprotocolfeaturetype',['RemminaProtocolFeatureType',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5',1,'types.h']]],
+ ['remminaprotocolsettingtype',['RemminaProtocolSettingType',['../types_8h.html#aee1a3e130e6991978acd907b52204350',1,'types.h']]],
+ ['remminaprotocolsshsetting',['RemminaProtocolSSHSetting',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7',1,'types.h']]],
+ ['remminaprotocolwidgetresolutionmode',['RemminaProtocolWidgetResolutionMode',['../types_8h.html#a373ddef8221457d86c64830c26d3f78a',1,'types.h']]],
+ ['remminascalemode',['RemminaScaleMode',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7de',1,'types.h']]]
+];
diff --git a/docs/search/enums_3.html b/docs/search/enums_3.html
new file mode 100644
index 000000000..265e0cb93
--- /dev/null
+++ b/docs/search/enums_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enums_3.js b/docs/search/enums_3.js
new file mode 100644
index 000000000..69eaafd71
--- /dev/null
+++ b/docs/search/enums_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['wwwwebviewdocumenttype',['WWWWebViewDocumentType',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9',1,'www_plugin.h']]]
+];
diff --git a/docs/search/enumvalues_0.html b/docs/search/enumvalues_0.html
new file mode 100644
index 000000000..9387b6a37
--- /dev/null
+++ b/docs/search/enumvalues_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_0.js b/docs/search/enumvalues_0.js
new file mode 100644
index 000000000..6d1ce0689
--- /dev/null
+++ b/docs/search/enumvalues_0.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['cancel_5ftask_5fsignal',['CANCEL_TASK_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a53f24253e039f2efdaa4c7830958df03',1,'remmina_ftp_client.c']]],
+ ['col_5ff',['COL_F',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167baa19a4779198791797a93684c6db7733a',1,'remmina_mpchange.c']]],
+ ['col_5ffilename',['COL_FILENAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167badc0807f00f503edcc8e588a3894af0e3',1,'remmina_mpchange.c']]],
+ ['col_5fgroup',['COL_GROUP',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba0d7f93239dde2b010c5117543a7efcbd',1,'remmina_mpchange.c']]],
+ ['col_5fname',['COL_NAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba621a0fec1bcdb27626ca53cd7e8b8f24',1,'remmina_mpchange.c']]],
+ ['col_5fusername',['COL_USERNAME',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba4c1dc9a16a3183553d83687506a5652e',1,'remmina_mpchange.c']]],
+ ['custom',['CUSTOM',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca945d6010d321d9fe75cbba7b6f37f3b5',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/enumvalues_1.html b/docs/search/enumvalues_1.html
new file mode 100644
index 000000000..f622aba99
--- /dev/null
+++ b/docs/search/enumvalues_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_1.js b/docs/search/enumvalues_1.js
new file mode 100644
index 000000000..edb38816a
--- /dev/null
+++ b/docs/search/enumvalues_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['date_5fcolumn',['DATE_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a6e22c76fbdeaa8f724eb996db2d528bb',1,'remmina_main.c']]],
+ ['delete_5ffile_5fsignal',['DELETE_FILE_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0f7cb0b91760d646450d90ae9d2cb114',1,'remmina_ftp_client.c']]]
+];
diff --git a/docs/search/enumvalues_2.html b/docs/search/enumvalues_2.html
new file mode 100644
index 000000000..d4990784f
--- /dev/null
+++ b/docs/search/enumvalues_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_2.js b/docs/search/enumvalues_2.js
new file mode 100644
index 000000000..c08b89d5d
--- /dev/null
+++ b/docs/search/enumvalues_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['edit_5fitem_5fsignal',['EDIT_ITEM_SIGNAL',['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a1d57a3336e0b3f0ddcaf5bc4f8d6a5e8',1,'remmina_applet_menu.c']]]
+];
diff --git a/docs/search/enumvalues_3.html b/docs/search/enumvalues_3.html
new file mode 100644
index 000000000..b4fc3ee84
--- /dev/null
+++ b/docs/search/enumvalues_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_3.js b/docs/search/enumvalues_3.js
new file mode 100644
index 000000000..1f061548f
--- /dev/null
+++ b/docs/search/enumvalues_3.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+ ['filename_5fcolumn',['FILENAME_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c5d264253ed2fc8f96ffcee508db93d',1,'remmina_main.c']]],
+ ['floating_5ftoolbar_5fplacement_5fbottom',['FLOATING_TOOLBAR_PLACEMENT_BOTTOM',['../remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba7ed1345b9857b7029a8e0c61918dd95d',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fplacement_5ftop',['FLOATING_TOOLBAR_PLACEMENT_TOP',['../remmina__pref_8h.html#a0ed680fdb405e7195d9f14032851eebba9cdc370e02904c1f50681b7fe8bd1796',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5fdisable',['FLOATING_TOOLBAR_VISIBILITY_DISABLE',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4ad947c85d5ea917958d90298dab033b2c',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5finvisible',['FLOATING_TOOLBAR_VISIBILITY_INVISIBLE',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4af179642fefe2ae4787e2d593519010dc',1,'remmina_pref.h']]],
+ ['floating_5ftoolbar_5fvisibility_5fpeeking',['FLOATING_TOOLBAR_VISIBILITY_PEEKING',['../remmina__pref_8h.html#a4caf8d8f829279fba122163d961608a4a3e85ac0b56e926949bc162505d199a2e',1,'remmina_pref.h']]],
+ ['fullscreen_5fmode',['FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a322281fd8bd9d95fb410b43ac9d496a3',1,'remmina_pref.h']]],
+ ['func_5fchat_5freceive',['FUNC_CHAT_RECEIVE',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537',1,'remmina_masterthread_exec_data']]],
+ ['func_5ffile_5fget_5fstring',['FUNC_FILE_GET_STRING',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10',1,'remmina_masterthread_exec_data']]],
+ ['func_5fftp_5fclient_5fget_5fwaiting_5ftask',['FUNC_FTP_CLIENT_GET_WAITING_TASK',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9',1,'remmina_masterthread_exec_data']]],
+ ['func_5fftp_5fclient_5fupdate_5ftask',['FUNC_FTP_CLIENT_UPDATE_TASK',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82',1,'remmina_masterthread_exec_data']]],
+ ['func_5fgtk_5flabel_5fset_5ftext',['FUNC_GTK_LABEL_SET_TEXT',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a',1,'remmina_masterthread_exec_data']]],
+ ['func_5fgtk_5fsocket_5fadd_5fid',['FUNC_GTK_SOCKET_ADD_ID',['../structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc',1,'onMainThread_cb_data']]],
+ ['func_5finit_5fsave_5fcred',['FUNC_INIT_SAVE_CRED',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5femit_5fsignal',['FUNC_PROTOCOLWIDGET_EMIT_SIGNAL',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpdestroy',['FUNC_PROTOCOLWIDGET_MPDESTROY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpprogress',['FUNC_PROTOCOLWIDGET_MPPROGRESS',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fmpshowretry',['FUNC_PROTOCOLWIDGET_MPSHOWRETRY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b',1,'remmina_masterthread_exec_data']]],
+ ['func_5fprotocolwidget_5fpanelshowlisten',['FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60',1,'remmina_masterthread_exec_data']]],
+ ['func_5fsftp_5fclient_5fconfirm_5fresume',['FUNC_SFTP_CLIENT_CONFIRM_RESUME',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09',1,'remmina_masterthread_exec_data']]],
+ ['func_5fupdate_5fscale',['FUNC_UPDATE_SCALE',['../structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41',1,'onMainThread_cb_data']]],
+ ['func_5fvte_5fterminal_5fset_5fencoding_5fand_5fpty',['FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY',['../structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605',1,'remmina_masterthread_exec_data']]]
+];
diff --git a/docs/search/enumvalues_4.html b/docs/search/enumvalues_4.html
new file mode 100644
index 000000000..d6f69ac95
--- /dev/null
+++ b/docs/search/enumvalues_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_4.js b/docs/search/enumvalues_4.js
new file mode 100644
index 000000000..d958df3b0
--- /dev/null
+++ b/docs/search/enumvalues_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['group_5fcolumn',['GROUP_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1704de86134c42b13d2e5fd7cf7c903b',1,'remmina_main.c']]],
+ ['gruvbox',['GRUVBOX',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca3c1607106f03c3be44c0f70a6040604c',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/enumvalues_5.html b/docs/search/enumvalues_5.html
new file mode 100644
index 000000000..43a28d17e
--- /dev/null
+++ b/docs/search/enumvalues_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_5.js b/docs/search/enumvalues_5.js
new file mode 100644
index 000000000..05e31fe18
--- /dev/null
+++ b/docs/search/enumvalues_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['last_5fsignal',['LAST_SIGNAL',['../rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55ba0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;rcw.c'],['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;remmina_applet_menu.c'],['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a0c34d85df8279641afad9e3c9b3a54ce',1,'LAST_SIGNAL():&#160;remmina_ftp_client.c']]],
+ ['launch_5fitem_5fsignal',['LAUNCH_ITEM_SIGNAL',['../remmina__applet__menu_8c.html#adf764cbdea00d65edcd07bb9953ad2b7a55eb85b36d14e6c7a04d613cc49d12a7',1,'remmina_applet_menu.c']]],
+ ['linux',['LINUX',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807caff5bdb06094faa574583542e4068d1c4',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/enumvalues_6.html b/docs/search/enumvalues_6.html
new file mode 100644
index 000000000..7439ee17b
--- /dev/null
+++ b/docs/search/enumvalues_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_6.js b/docs/search/enumvalues_6.js
new file mode 100644
index 000000000..c36ea4098
--- /dev/null
+++ b/docs/search/enumvalues_6.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['n_5fcolumns',['N_COLUMNS',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ac70d28409ca79aa291cc0e58244f1fe4',1,'remmina_main.c']]],
+ ['name_5fcolumn',['NAME_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a1f8f29e04fd120da5a66491ef0a4ff6c',1,'remmina_main.c']]],
+ ['new_5ftask_5fsignal',['NEW_TASK_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04a11012a1ab54537707da11f4e4eb902c0',1,'remmina_ftp_client.c']]],
+ ['num_5fcols',['NUM_COLS',['../remmina__mpchange_8c.html#a7ff5f2dff38e7639981794c43dc9167ba8843686a2923021b5ded06faeaaf66f1',1,'remmina_mpchange.c']]]
+];
diff --git a/docs/search/enumvalues_7.html b/docs/search/enumvalues_7.html
new file mode 100644
index 000000000..ab72ef1f4
--- /dev/null
+++ b/docs/search/enumvalues_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_7.js b/docs/search/enumvalues_7.js
new file mode 100644
index 000000000..535ca02bc
--- /dev/null
+++ b/docs/search/enumvalues_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['open_5fdir_5fsignal',['OPEN_DIR_SIGNAL',['../remmina__ftp__client_8c.html#abc6126af1d45847bc59afa0aa3216b04aab6192f5c24116559ad3f816da0ade64',1,'remmina_ftp_client.c']]]
+];
diff --git a/docs/search/enumvalues_8.html b/docs/search/enumvalues_8.html
new file mode 100644
index 000000000..a0e8f1c80
--- /dev/null
+++ b/docs/search/enumvalues_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_8.js b/docs/search/enumvalues_8.js
new file mode 100644
index 000000000..804965ca3
--- /dev/null
+++ b/docs/search/enumvalues_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['plugin_5fcolumn',['PLUGIN_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57ad68c7d7d2f1cfe0321e87c4a833a0756',1,'remmina_main.c']]],
+ ['protocol_5fcolumn',['PROTOCOL_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a2b637b91fededa6eb7f4be69da080445',1,'remmina_main.c']]]
+];
diff --git a/docs/search/enumvalues_9.html b/docs/search/enumvalues_9.html
new file mode 100644
index 000000000..9051459bf
--- /dev/null
+++ b/docs/search/enumvalues_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_9.js b/docs/search/enumvalues_9.js
new file mode 100644
index 000000000..f7b906192
--- /dev/null
+++ b/docs/search/enumvalues_9.js
@@ -0,0 +1,185 @@
+var searchData=
+[
+ ['rcw_5fondelete_5fconfirm_5fif_5f2_5for_5fmore',['RCW_ONDELETE_CONFIRM_IF_2_OR_MORE',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307fae2b5eff3ff03f3633e217a3c31b3b43b',1,'rcw.h']]],
+ ['rcw_5fondelete_5fnoconfirm',['RCW_ONDELETE_NOCONFIRM',['../rcw_8h.html#a2450dfe27d3ded59370ea879419f307fadd57127d30bc4755bf3a8323045922bc',1,'rcw.h']]],
+ ['remmina_5faction_5fconnect',['REMMINA_ACTION_CONNECT',['../remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fad14d19fdcc60e744406c5f80c1bb840a',1,'remmina_pref.h']]],
+ ['remmina_5faction_5fedit',['REMMINA_ACTION_EDIT',['../remmina__pref_8h.html#a5d76b81b0ad4c19007a781d4edb8181fa84fe14d6d19ab0479931a6886178f2e3',1,'remmina_pref.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fdiscovered',['REMMINA_APPLET_MENU_ITEM_DISCOVERED',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a3a6eab177da4cc0bf8267148c3837bf1',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5ffile',['REMMINA_APPLET_MENU_ITEM_FILE',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9edd77222ca6a7576822feebf0588572',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fnew',['REMMINA_APPLET_MENU_ITEM_NEW',['../remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727a9056a1ad9722374064fe166aa77e69a3',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5fbottom',['REMMINA_APPLET_MENU_NEW_CONNECTION_BOTTOM',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffbaaf18b619bf821f0382085d6c056dbd16',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5fnone',['REMMINA_APPLET_MENU_NEW_CONNECTION_NONE',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba5f086b1da7eb6dabc6247ad85b62d2d3',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fnew_5fconnection_5ftop',['REMMINA_APPLET_MENU_NEW_CONNECTION_TOP',['../remmina__applet__menu_8h.html#a9973b9af06049a506269a6b0c1ed7ffba9c126758f0fed86f015837bab2e0c4c2',1,'remmina_applet_menu.h']]],
+ ['remmina_5fauthpwd_5ftype_5fprotocol',['REMMINA_AUTHPWD_TYPE_PROTOCOL',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2',1,'types.h']]],
+ ['remmina_5fauthpwd_5ftype_5fssh_5fprivkey',['REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920',1,'types.h']]],
+ ['remmina_5fauthpwd_5ftype_5fssh_5fpwd',['REMMINA_AUTHPWD_TYPE_SSH_PWD',['../types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d',1,'types.h']]],
+ ['remmina_5fcommand_5fabout',['REMMINA_COMMAND_ABOUT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacce474bb2b63053b884cc9e639d4372b',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fautostart',['REMMINA_COMMAND_AUTOSTART',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cacc1267f3834ff091be0587522f2182b8',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fconnect',['REMMINA_COMMAND_CONNECT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca3b100b365ea4c523dba34c3a1233e33d',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fedit',['REMMINA_COMMAND_EDIT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caddf76fb98da2a8a197974ac1237dfb65',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fexit',['REMMINA_COMMAND_EXIT',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca5815f1d3742909a0a2a61664ad35300a',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5ffull_5fversion',['REMMINA_COMMAND_FULL_VERSION',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cab9f0b4fd42775c1d2b2311e0b9692885',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fmain',['REMMINA_COMMAND_MAIN',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cae084d7c048c5eb5045210062b225f5e5',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fnew',['REMMINA_COMMAND_NEW',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca2b493ae3acf856c484831767169c41b7',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fnone',['REMMINA_COMMAND_NONE',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca45777bb1a8f6a617da7eca5f7181d224',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fplugin',['REMMINA_COMMAND_PLUGIN',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0cabb2bf3aea0dd6f02ba402ec12a6ccbad',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fpref',['REMMINA_COMMAND_PREF',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0ca822f35bcbc0737231ada0aa4ecfcd704',1,'remmina_exec.h']]],
+ ['remmina_5fcommand_5fversion',['REMMINA_COMMAND_VERSION',['../remmina__exec_8h.html#a23616cb0334a45c2b477be6efd45ee0caa436b39160d5ab6b73f6758dc5c30c06',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fondisconnect',['REMMINA_CONDEXIT_ONDISCONNECT',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a3272be70c922ec6a1eaf498461943c51',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fonmainwindelete',['REMMINA_CONDEXIT_ONMAINWINDELETE',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5ae79d14a54e119795478a6e390d7d3b40',1,'remmina_exec.h']]],
+ ['remmina_5fcondexit_5fonquit',['REMMINA_CONDEXIT_ONQUIT',['../remmina__exec_8h.html#ae9dfd6986f18cb3d846a4933ac792fd5a94dfcc0fcf38aa8060ff843e40799284',1,'remmina_exec.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fgroup',['REMMINA_FTP_FILE_COLUMN_GROUP',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eacf54e8ad0d63c5fec8592d849b04ab50',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fname',['REMMINA_FTP_FILE_COLUMN_NAME',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead3c5b62f4cfbb22a06e68d773791bc96',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fname_5fsort',['REMMINA_FTP_FILE_COLUMN_NAME_SORT',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea6b630a143a7a7a7650474369066a3284',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fpermission',['REMMINA_FTP_FILE_COLUMN_PERMISSION',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea2614fabcb18768b955b3ca3f48e92fa2',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fsize',['REMMINA_FTP_FILE_COLUMN_SIZE',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eafeeb4f65f338c21408c945c9e56e178e',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5ftype',['REMMINA_FTP_FILE_COLUMN_TYPE',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9eadabc78a4390457029d55b5c7b5cda45b',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fcolumn_5fuser',['REMMINA_FTP_FILE_COLUMN_USER',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ea94f0895d8a3338ad10650d7ee827225c',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fn_5fcolumns',['REMMINA_FTP_FILE_N_COLUMNS',['../remmina__ftp__client_8h.html#a61dadd085c1777f559549e05962b2c9ead53bdfbe50ae6f54d6b007ac152aed98',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5fn_5ftypes',['REMMINA_FTP_FILE_N_TYPES',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca1e22c9cea8ce5113d8a99a998858a0b8',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5ftype_5fdir',['REMMINA_FTP_FILE_TYPE_DIR',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06cac30a21a567a13a708ca925cbd2d9c2f0',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ffile_5ftype_5ffile',['REMMINA_FTP_FILE_TYPE_FILE',['../remmina__ftp__client_8h.html#adc29c2ff13d900c2f185ee95427fb06ca23349c8d7bbf1752b813efe9f4f9a6f5',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fdonesize',['REMMINA_FTP_TASK_COLUMN_DONESIZE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a8085eab1e17cb89811a800c74d619a2e',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5flocaldir',['REMMINA_FTP_TASK_COLUMN_LOCALDIR',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a5c89f29ab2bc7ae09dc5415c90c690fe',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fname',['REMMINA_FTP_TASK_COLUMN_NAME',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600ae94ee43f3b29b3b955ffbb5ac0a116ba',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fremotedir',['REMMINA_FTP_TASK_COLUMN_REMOTEDIR',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7133a563aaa2c5615bc886086aea625',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fsize',['REMMINA_FTP_TASK_COLUMN_SIZE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a88470d1d7848297da130c430f3298342',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5fstatus',['REMMINA_FTP_TASK_COLUMN_STATUS',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6d6919118fabe46fb812391b820c66bf',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftaskid',['REMMINA_FTP_TASK_COLUMN_TASKID',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a921c7f22d951974463a4241b79032cae',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftasktype',['REMMINA_FTP_TASK_COLUMN_TASKTYPE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a6e2cf24f3a6700964adc8c71b5ff93d2',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftooltip',['REMMINA_FTP_TASK_COLUMN_TOOLTIP',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a41f3b0defe5205fd1dd01884a33a29ed',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fcolumn_5ftype',['REMMINA_FTP_TASK_COLUMN_TYPE',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600a9bbd6ef91f8d2c5ea197e19f6e11e356',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fn_5fcolumns',['REMMINA_FTP_TASK_N_COLUMNS',['../remmina__ftp__client_8h.html#abed82baf7f470b522273a3e37c24c600af7c135ec7d5c0fad168892379ac45d24',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fn_5fstatuses',['REMMINA_FTP_TASK_N_STATUSES',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da3c736c9f75e548354ea6503f06bb702a',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fn_5ftypes',['REMMINA_FTP_TASK_N_TYPES',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a420a53cd04e2de7ad7e3ccfa969a1c19',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5ferror',['REMMINA_FTP_TASK_STATUS_ERROR',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2dae4187d6c75a5f8cf4c2029a9c25bf01c',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5ffinish',['REMMINA_FTP_TASK_STATUS_FINISH',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daabef9adc2ebc5350feb04fd1f9484fca',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5frun',['REMMINA_FTP_TASK_STATUS_RUN',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2daf88cad1d8f9eaf5e5c1eb8b793729be7',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5fstatus_5fwait',['REMMINA_FTP_TASK_STATUS_WAIT',['../remmina__ftp__client_8h.html#a0411cd49bb5b71852cecd93bcbf0ca2da97234f26b3c350325e2fef2a53871dad',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5ftype_5fdownload',['REMMINA_FTP_TASK_TYPE_DOWNLOAD',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a59857d62a8f1ff623da4d6895d81142d',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5ftask_5ftype_5fupload',['REMMINA_FTP_TASK_TYPE_UPLOAD',['../remmina__ftp__client_8h.html#a726ca809ffd3d67ab4b8476646f26635a3d497be5727d1de77a18ad8b7d24eb24',1,'remmina_ftp_client.h']]],
+ ['remmina_5fmessage_5fpanel_5fbuttontofocus',['REMMINA_MESSAGE_PANEL_BUTTONTOFOCUS',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9439963721ca9d03d1a2371161336725',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fcacertfile',['REMMINA_MESSAGE_PANEL_CACERTFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a10531307d859706670fb6ce4aa7308c7',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fcacrlfile',['REMMINA_MESSAGE_PANEL_CACRLFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a703afb1dece981649f9497a9e910b779',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fclientcertfile',['REMMINA_MESSAGE_PANEL_CLIENTCERTFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a26a6d6b3ac3f4e64662b0c72dc3982f7',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fclientkeyfile',['REMMINA_MESSAGE_PANEL_CLIENTKEYFILE',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a34c1441f93d50321cbabcfb45918c6e3',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fdomain',['REMMINA_MESSAGE_PANEL_DOMAIN',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a9efe2bb3f139ed0baf3833880fc2369a',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fdomain',['REMMINA_MESSAGE_PANEL_FLAG_DOMAIN',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fsavepassword',['REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fusername',['REMMINA_MESSAGE_PANEL_FLAG_USERNAME',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fflag_5fusername_5freadonly',['REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY',['../types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a',1,'types.h']]],
+ ['remmina_5fmessage_5fpanel_5fmaxwidgetid',['REMMINA_MESSAGE_PANEL_MAXWIDGETID',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fpassword',['REMMINA_MESSAGE_PANEL_PASSWORD',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a1d61170572fba5e968305c2ea3b0f9f6',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fsavepassword',['REMMINA_MESSAGE_PANEL_SAVEPASSWORD',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18aa20e0ac03321f7742184c8228b3a8f2e',1,'remmina_message_panel.h']]],
+ ['remmina_5fmessage_5fpanel_5fusername',['REMMINA_MESSAGE_PANEL_USERNAME',['../remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18a5c66a04852163126a3b494abe3e07e25',1,'remmina_message_panel.h']]],
+ ['remmina_5fnx_5fevent_5fattach',['REMMINA_NX_EVENT_ATTACH',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca5ee4e24768406885bf8bf819e7084b0f',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fcancel',['REMMINA_NX_EVENT_CANCEL',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cae5a1b599d5b1d5f2aa74e3a3e7a9085a',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5frestore',['REMMINA_NX_EVENT_RESTORE',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661cab20609de081f08fb66aa853ab2890f24',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fstart',['REMMINA_NX_EVENT_START',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca24faf00563520103a7b89d9a64f2fb21',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fevent_5fterminate',['REMMINA_NX_EVENT_TERMINATE',['../nx__plugin_8h.html#aef3e25a6bbd288f0a417a1fa331e661ca8e33d0950b052ef31232a134cf94a50e',1,'nx_plugin.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fdisplay',['REMMINA_NX_SESSION_COLUMN_DISPLAY',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a3796111b5b1f37b1b9584dfa7c63b8ca',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fid',['REMMINA_NX_SESSION_COLUMN_ID',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a66187a2e641c2817ecdd7d271a4dee9d',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fname',['REMMINA_NX_SESSION_COLUMN_NAME',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798ad61cf9ec71b1f06ceaac651ee1ccd912',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5fstatus',['REMMINA_NX_SESSION_COLUMN_STATUS',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a9566013426ff135eb5cd189124a3b4a9',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fcolumn_5ftype',['REMMINA_NX_SESSION_COLUMN_TYPE',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a8d0dda661a8ed92c2d07ea355cac3431',1,'nx_session.h']]],
+ ['remmina_5fnx_5fsession_5fn_5fcolumns',['REMMINA_NX_SESSION_N_COLUMNS',['../nx__session_8h.html#a77867ab4129f63159b37bca3b652a798a6a93837e5235e3ce71188b1cf82774d1',1,'nx_session.h']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fdisableclipboard',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fresizeguest',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fpref_5fviewonly',['REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5fscale',['REMMINA_PLUGIN_SPICE_FEATURE_SCALE',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5ftool_5fsendctrlaltdel',['REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeature_5ftool_5fusbredir',['REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR',['../spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5ftype_5fentry',['REMMINA_PLUGIN_TYPE_ENTRY',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5ffile',['REMMINA_PLUGIN_TYPE_FILE',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa9af260da7aa2ad0ee90e8dae5439dbac',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fpref',['REMMINA_PLUGIN_TYPE_PREF',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa682ab42b3f4af3dd93452efdb76b8757',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fprotocol',['REMMINA_PLUGIN_TYPE_PROTOCOL',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5fsecret',['REMMINA_PLUGIN_TYPE_SECRET',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aa0d17e841a53921a7a6156f5d30e9f09c',1,'plugin.h']]],
+ ['remmina_5fplugin_5ftype_5ftool',['REMMINA_PLUGIN_TYPE_TOOL',['../plugin_8h.html#aaf53c620d115a4642130227cff4a624aadd037352a609e2dc890595f9d95bd1ac',1,'plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fclose',['REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fopen',['REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fchat_5fsend',['REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fcuttext',['REMMINA_PLUGIN_VNC_EVENT_CUTTEXT',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fkey',['REMMINA_PLUGIN_VNC_EVENT_KEY',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540',1,'vnc_plugin.h']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fpointer',['REMMINA_PLUGIN_VNC_EVENT_POINTER',['../vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f',1,'vnc_plugin.h']]],
+ ['remmina_5fpostconnect_5ferror_5fgdi_5finit',['REMMINA_POSTCONNECT_ERROR_GDI_INIT',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6',1,'rf_context']]],
+ ['remmina_5fpostconnect_5ferror_5fno_5fh264',['REMMINA_POSTCONNECT_ERROR_NO_H264',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982',1,'rf_context']]],
+ ['remmina_5fpostconnect_5ferror_5fok',['REMMINA_POSTCONNECT_ERROR_OK',['../structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68',1,'rf_context']]],
+ ['remmina_5fpref_5fappearance',['REMMINA_PREF_APPEARANCE',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab813650ab0842f29fc9dcf865a2285cb',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fpref_5fapplet_5ftab',['REMMINA_PREF_APPLET_TAB',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556eab2070bbdfe1e9ee12f43a52556f3130c',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fpref_5foptions_5ftab',['REMMINA_PREF_OPTIONS_TAB',['../remmina__pref__dialog_8h.html#a96a58e29e8dbf2b5bdeb775cba46556ea5622b46aa48f22a0c4511f3697e56f4a',1,'remmina_pref_dialog.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fdynresupdate',['REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fend',['REMMINA_PROTOCOL_FEATURE_TYPE_END',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fgtksocket',['REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fpref',['REMMINA_PROTOCOL_FEATURE_TYPE_PREF',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5fscale',['REMMINA_PROTOCOL_FEATURE_TYPE_SCALE',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5ftool',['REMMINA_PROTOCOL_FEATURE_TYPE_TOOL',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507',1,'types.h']]],
+ ['remmina_5fprotocol_5ffeature_5ftype_5funfocus',['REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS',['../types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fcheck',['REMMINA_PROTOCOL_SETTING_TYPE_CHECK',['../types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fcombo',['REMMINA_PROTOCOL_SETTING_TYPE_COMBO',['../types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fend',['REMMINA_PROTOCOL_SETTING_TYPE_END',['../types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ffile',['REMMINA_PROTOCOL_SETTING_TYPE_FILE',['../types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ffolder',['REMMINA_PROTOCOL_SETTING_TYPE_FOLDER',['../types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fkeymap',['REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP',['../types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fpassword',['REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD',['../types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fresolution',['REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION',['../types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fselect',['REMMINA_PROTOCOL_SETTING_TYPE_SELECT',['../types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5fserver',['REMMINA_PROTOCOL_SETTING_TYPE_SERVER',['../types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92',1,'types.h']]],
+ ['remmina_5fprotocol_5fsetting_5ftype_5ftext',['REMMINA_PROTOCOL_SETTING_TYPE_TEXT',['../types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fnone',['REMMINA_PROTOCOL_SSH_SETTING_NONE',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5freverse_5ftunnel',['REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fsftp',['REMMINA_PROTOCOL_SSH_SETTING_SFTP',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5fssh',['REMMINA_PROTOCOL_SSH_SETTING_SSH',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371',1,'types.h']]],
+ ['remmina_5fprotocol_5fssh_5fsetting_5ftunnel',['REMMINA_PROTOCOL_SSH_SETTING_TUNNEL',['../types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fdynres',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fnone',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd',1,'types.h']]],
+ ['remmina_5fprotocol_5fwidget_5fscale_5fmode_5fscaled',['REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED',['../types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20',1,'types.h']]],
+ ['remmina_5frdp_5fevent_5fdisconnect',['REMMINA_RDP_EVENT_DISCONNECT',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a6b5a1dbb05d7f63d451b84ea5ec85c03',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5fdata_5frequest',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a899b766953e73fd8aa148a9d8f28434b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5fdata_5fresponse',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_RESPONSE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a2e49b2022527a7f87ba0115e644d16d6',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fclipboard_5fsend_5fclient_5fformat_5flist',['REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_LIST',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7aebb0df0651989a89f3f05e3c4894dd50',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fmouse',['REMMINA_RDP_EVENT_TYPE_MOUSE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a8c8701fc5ef4ff1196c8d088dd146a5b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fscancode',['REMMINA_RDP_EVENT_TYPE_SCANCODE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ae248ff32977c650df357c079f9d8b6e2',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fscancode_5funicode',['REMMINA_RDP_EVENT_TYPE_SCANCODE_UNICODE',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7ab15f261f1918633711921198fea0029f',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fevent_5ftype_5fsend_5fmonitor_5flayout',['REMMINA_RDP_EVENT_TYPE_SEND_MONITOR_LAYOUT',['../rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7a1973a1fe40811ab9a21bc77c23c42a05',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fdefault',['REMMINA_RDP_POINTER_DEFAULT',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edac1059fb9b7718e2b4b5a86f7b3f92d56',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5ffree',['REMMINA_RDP_POINTER_FREE',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edacd27e44eca0a13a0ca58321afccf3ac2',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fnew',['REMMINA_RDP_POINTER_NEW',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda620780f23115c72eee301705786a3232',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fnull',['REMMINA_RDP_POINTER_NULL',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edae5973cd5d50ab23b1d4c7f2cf6853a49',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fset',['REMMINA_RDP_POINTER_SET',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97eda937325a09de583d50a601a8138a89068',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fpointer_5fsetpos',['REMMINA_RDP_POINTER_SETPOS',['../rdp__plugin_8h.html#a4861d015f803612c279f463095cb97edafc19d281c822242576c7791bc5ef9522',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard',['REMMINA_RDP_UI_CLIPBOARD',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ae312d9684d8fed257ad0a06a80aa806f',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fformatlist',['REMMINA_RDP_UI_CLIPBOARD_FORMATLIST',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a6ed2696cd28620a9d41f501fe22162bc',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fget_5fdata',['REMMINA_RDP_UI_CLIPBOARD_GET_DATA',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d48530ae1a868c40e3804aa2df205c7',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fset_5fcontent',['REMMINA_RDP_UI_CLIPBOARD_SET_CONTENT',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a428268194cfa31b71241bdebf8359bbe',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fclipboard_5fset_5fdata',['REMMINA_RDP_UI_CLIPBOARD_SET_DATA',['../rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6a8d1ee3147da1c703472c152799330dad',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fconnected',['REMMINA_RDP_UI_CONNECTED',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ad3ced07ddeda0100b59ca9c8af47bbe9',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fcursor',['REMMINA_RDP_UI_CURSOR',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072ac32b00c17604d850f95b8117c419dcfe',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fevent',['REMMINA_RDP_UI_EVENT',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072aa5f6f338ffaa4bed53b225cf54b50000',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fevent_5fdestroy_5fcairo_5fsurface',['REMMINA_RDP_UI_EVENT_DESTROY_CAIRO_SURFACE',['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35ad2dd5f6251de0ac7afe2f962c829aa48',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fevent_5fupdate_5fscale',['REMMINA_RDP_UI_EVENT_UPDATE_SCALE',['../rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35a5bec41fd19576fc5c3e397366461dfe4',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fnocodec',['REMMINA_RDP_UI_NOCODEC',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a96cf99f0ed1b7e1a798ebb358eff0d1b',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5freconnect_5fprogress',['REMMINA_RDP_UI_RECONNECT_PROGRESS',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a5b2f8ce562cd1720b7a985f3a7c15ea7',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5frfx',['REMMINA_RDP_UI_RFX',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072a42c10462d6952a2b5cf5898be4aa8d9c',1,'rdp_plugin.h']]],
+ ['remmina_5frdp_5fui_5fupdate_5fregions',['REMMINA_RDP_UI_UPDATE_REGIONS',['../rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072acd86c5f1b34b0d7168c94892cfd2cb9e',1,'rdp_plugin.h']]],
+ ['remmina_5fssh_5fauth_5fauthfailed_5fretry_5fafter_5fprompt',['REMMINA_SSH_AUTH_AUTHFAILED_RETRY_AFTER_PROMPT',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1a61bd3f6b00c5a5cf2983990eb6f0840f',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5ffatal_5ferror',['REMMINA_SSH_AUTH_FATAL_ERROR',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ab4ec94c8b9ef6d9b69d0b836750a8735',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fsuccess',['REMMINA_SSH_AUTH_SUCCESS',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1ae5b80d959def61ac57ee6a919ca87266',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5fusercancel',['REMMINA_SSH_AUTH_USERCANCEL',['../remmina__ssh_8h.html#a879c265f2e8050e4e72a061ab3747ee1aa554c8cad3a99ccb8cf3a48ed9e219ea',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fopen',['REMMINA_SSH_TUNNEL_OPEN',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a78cac65c66c1f72592488c7c5728ea14',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5freverse',['REMMINA_SSH_TUNNEL_REVERSE',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53ae14c0d50235951946ca18866a1329459',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fx11',['REMMINA_SSH_TUNNEL_X11',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53a57b0a0c05bcbc57fc8bc384524803a91',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fxport',['REMMINA_SSH_TUNNEL_XPORT',['../remmina__ssh_8h.html#ab48899087cc647f0f791ed0c459adc53afbca41cd7b252c2594e1d53cd081b326',1,'remmina_ssh.h']]],
+ ['remmina_5ftab_5fall',['REMMINA_TAB_ALL',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5afb68a1eeda5303774bbc922ef8d364e9',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fby_5fgroup',['REMMINA_TAB_BY_GROUP',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5a18b9b9f60fb377c589ff11b5388fee33',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fby_5fprotocol',['REMMINA_TAB_BY_PROTOCOL',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5aedb9eb53656e5315bf173ec9d0f5b558',1,'remmina_pref.h']]],
+ ['remmina_5ftab_5fnone',['REMMINA_TAB_NONE',['../remmina__pref_8h.html#a4790f45dcc812c1b00184a2edccdddf5adc41dc23d32d8955a469953bee975631',1,'remmina_pref.h']]],
+ ['remmina_5fview_5ffile_5flist',['REMMINA_VIEW_FILE_LIST',['../remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8ae2bd62151481c5fa5823aa2d66fb67d7',1,'remmina_pref.h']]],
+ ['remmina_5fview_5ffile_5ftree',['REMMINA_VIEW_FILE_TREE',['../remmina__pref_8h.html#aabfcbcb5ac86a1edac4035264bc7d2b8a46530ebfd659963a54b7dae5702af1df',1,'remmina_pref.h']]],
+ ['res_5finvalid',['RES_INVALID',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724',1,'types.h']]],
+ ['res_5fuse_5fclient',['RES_USE_CLIENT',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d',1,'types.h']]],
+ ['res_5fuse_5fcustom',['RES_USE_CUSTOM',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd',1,'types.h']]],
+ ['res_5fuse_5finitial_5fwindow_5fsize',['RES_USE_INITIAL_WINDOW_SIZE',['../types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef',1,'types.h']]],
+ ['rpwdt_5fauth',['RPWDT_AUTH',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373af288a06859b2eb1df4a011e1c2cba44c',1,'remmina_protocol_widget.c']]],
+ ['rpwdt_5fauthx509',['RPWDT_AUTHX509',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373ab2286d6e72e1c7ddd0e760caa78f47ed',1,'remmina_protocol_widget.c']]],
+ ['rpwdt_5fquestionyesno',['RPWDT_QUESTIONYESNO',['../remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373a622fa08b626cd4dc1faf24c073e15c65',1,'remmina_protocol_widget.c']]]
+];
diff --git a/docs/search/enumvalues_a.html b/docs/search/enumvalues_a.html
new file mode 100644
index 000000000..f10160a65
--- /dev/null
+++ b/docs/search/enumvalues_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_a.js b/docs/search/enumvalues_a.js
new file mode 100644
index 000000000..8cae9b2da
--- /dev/null
+++ b/docs/search/enumvalues_a.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['scdw_5faborting',['SCDW_ABORTING',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b',1,'rf_clipboard']]],
+ ['scdw_5fbusy_5fwait',['SCDW_BUSY_WAIT',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e',1,'rf_clipboard']]],
+ ['scdw_5fnone',['SCDW_NONE',['../structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1',1,'rf_clipboard']]],
+ ['scrolled_5ffullscreen_5fmode',['SCROLLED_FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e41f162b3b7d5bf1df78241ca1073e',1,'remmina_pref.h']]],
+ ['scrolled_5fwindow_5fmode',['SCROLLED_WINDOW_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034af963e665cf74d483ccc74e28531a480a',1,'remmina_pref.h']]],
+ ['server_5fcolumn',['SERVER_COLUMN',['../remmina__main_8c.html#ab04a0655cd1e3bcac5e8f48c18df1a57a8c129f382d9456db6f671e1e6e99d32f',1,'remmina_main.c']]],
+ ['solarized_5fdark',['SOLARIZED_DARK',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0fa0a9e0d9e9802d9efbf77e90ad98ab',1,'remmina_ssh_plugin.c']]],
+ ['solarized_5flight',['SOLARIZED_LIGHT',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807cabfefd4b212ac88606d39713598487e13',1,'remmina_ssh_plugin.c']]],
+ ['ssh_5fauth_5fagent',['SSH_AUTH_AGENT',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a39a8dcea793c406f0fe90f3175c4318e',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fauto_5fpublickey',['SSH_AUTH_AUTO_PUBLICKEY',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a9f6024449a620d679eab2c09ea77877e',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fgssapi',['SSH_AUTH_GSSAPI',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a6264a71469928ad51fa802f65f1a934a',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fpassword',['SSH_AUTH_PASSWORD',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5a7d995a7868d2d2f81e9dd2f898b206fe',1,'remmina_file.h']]],
+ ['ssh_5fauth_5fpublickey',['SSH_AUTH_PUBLICKEY',['../remmina__file_8h.html#a99fb83031ce9923c84392b4e92f956b5aeba5f4ff7657d7b15519556793ee8930',1,'remmina_file.h']]]
+];
diff --git a/docs/search/enumvalues_b.html b/docs/search/enumvalues_b.html
new file mode 100644
index 000000000..0e2cb48c1
--- /dev/null
+++ b/docs/search/enumvalues_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_b.js b/docs/search/enumvalues_b.js
new file mode 100644
index 000000000..27d0ed5f4
--- /dev/null
+++ b/docs/search/enumvalues_b.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['tango',['TANGO',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca930a49faa0823497e3df32bd17bcf508',1,'remmina_ssh_plugin.c']]],
+ ['toolbar_5fplacement_5fbottom',['TOOLBAR_PLACEMENT_BOTTOM',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da95463ce23d03eb31b2bb61c29dab0076',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5fleft',['TOOLBAR_PLACEMENT_LEFT',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da4f58be8cee9e890445909866d5b11eaf',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5fright',['TOOLBAR_PLACEMENT_RIGHT',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291dadb8aecbb1eda207dd5e18e665053ac27',1,'remmina_pref.h']]],
+ ['toolbar_5fplacement_5ftop',['TOOLBAR_PLACEMENT_TOP',['../remmina__pref_8h.html#a0944a4353780132eeab7b06e3e42291da069738542d6980f9594299ab57221a7f',1,'remmina_pref.h']]],
+ ['toolbarplace_5fsignal',['TOOLBARPLACE_SIGNAL',['../rcw_8c.html#a06fc87d81c62e9abb8790b6e5713c55baa9941863b5633ddecb019f793f2f7668',1,'rcw.c']]]
+];
diff --git a/docs/search/enumvalues_c.html b/docs/search/enumvalues_c.html
new file mode 100644
index 000000000..82ba68a4c
--- /dev/null
+++ b/docs/search/enumvalues_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_c.js b/docs/search/enumvalues_c.js
new file mode 100644
index 000000000..955d0feea
--- /dev/null
+++ b/docs/search/enumvalues_c.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['undefined_5fmode',['UNDEFINED_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a86e471283504c1e470e4d0e7b8b5842f',1,'remmina_pref.h']]]
+];
diff --git a/docs/search/enumvalues_d.html b/docs/search/enumvalues_d.html
new file mode 100644
index 000000000..8516692dc
--- /dev/null
+++ b/docs/search/enumvalues_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_d.js b/docs/search/enumvalues_d.js
new file mode 100644
index 000000000..0d699e54b
--- /dev/null
+++ b/docs/search/enumvalues_d.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['viewport_5ffullscreen_5fmode',['VIEWPORT_FULLSCREEN_MODE',['../remmina__pref_8h.html#aac34dfe6c6b73b43a4656c9dce041034a61339886524adf33eaf7b5df6dd57955',1,'remmina_pref.h']]]
+];
diff --git a/docs/search/enumvalues_e.html b/docs/search/enumvalues_e.html
new file mode 100644
index 000000000..d95adb6f0
--- /dev/null
+++ b/docs/search/enumvalues_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_e.js b/docs/search/enumvalues_e.js
new file mode 100644
index 000000000..3ba3d8992
--- /dev/null
+++ b/docs/search/enumvalues_e.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['www_5fweb_5fview_5fdocument_5fhtml',['WWW_WEB_VIEW_DOCUMENT_HTML',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fimage',['WWW_WEB_VIEW_DOCUMENT_IMAGE',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5foctet_5fstream',['WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fother',['WWW_WEB_VIEW_DOCUMENT_OTHER',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b',1,'www_plugin.h']]],
+ ['www_5fweb_5fview_5fdocument_5fxml',['WWW_WEB_VIEW_DOCUMENT_XML',['../www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569',1,'www_plugin.h']]]
+];
diff --git a/docs/search/enumvalues_f.html b/docs/search/enumvalues_f.html
new file mode 100644
index 000000000..1cced59ff
--- /dev/null
+++ b/docs/search/enumvalues_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/enumvalues_f.js b/docs/search/enumvalues_f.js
new file mode 100644
index 000000000..eff413406
--- /dev/null
+++ b/docs/search/enumvalues_f.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['xterm',['XTERM',['../remmina__ssh__plugin_8c.html#a236a29beb2ea51daaeb01fe86d41807ca0a9ecf4938fe6dbd1cb74a7b23865a56',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/files_0.html b/docs/search/files_0.html
new file mode 100644
index 000000000..4f272b83a
--- /dev/null
+++ b/docs/search/files_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_0.js b/docs/search/files_0.js
new file mode 100644
index 000000000..78f627559
--- /dev/null
+++ b/docs/search/files_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['_5fsidebar_2emd',['_sidebar.md',['../__sidebar_8md.html',1,'']]]
+];
diff --git a/docs/search/files_1.html b/docs/search/files_1.html
new file mode 100644
index 000000000..dcce42237
--- /dev/null
+++ b/docs/search/files_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_1.js b/docs/search/files_1.js
new file mode 100644
index 000000000..a4703c45f
--- /dev/null
+++ b/docs/search/files_1.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+ ['changelog_2emd',['CHANGELOG.md',['../_c_h_a_n_g_e_l_o_g_8md.html',1,'']]],
+ ['compilation_2dguide_2dfor_2drhel_2emd',['Compilation-guide-for-RHEL.md',['../_compilation-guide-for-_r_h_e_l_8md.html',1,'']]],
+ ['compilation_2emd',['Compilation.md',['../_compilation_8md.html',1,'']]],
+ ['compile_2don_2darch_2dlinux_2emd',['Compile-on-Arch-Linux.md',['../_compile-on-_arch-_linux_8md.html',1,'']]],
+ ['compile_2don_2ddebian_2d10_2dbuster_2emd',['Compile-on-Debian-10-Buster.md',['../_compile-on-_debian-10-_buster_8md.html',1,'']]],
+ ['compile_2don_2ddebian_2d9_2dstretch_2emd',['Compile-on-Debian-9-Stretch.md',['../_compile-on-_debian-9-_stretch_8md.html',1,'']]],
+ ['compile_2don_2dfreebsd_2emd',['Compile-on-FreeBSD.md',['../_compile-on-_free_b_s_d_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d14_2e04_2emd',['Compile-on-Ubuntu-14.04.md',['../_compile-on-_ubuntu-14_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d16_2e04_2emd',['Compile-on-Ubuntu-16.04.md',['../_compile-on-_ubuntu-16_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d18_2e04_2emd',['Compile-on-Ubuntu-18.04.md',['../_compile-on-_ubuntu-18_804_8md.html',1,'']]],
+ ['compile_2don_2dubuntu_2d20_2e04_2emd',['Compile-on-Ubuntu-20.04.md',['../_compile-on-_ubuntu-20_804_8md.html',1,'']]],
+ ['contributing_2emd',['CONTRIBUTING.md',['../_c_o_n_t_r_i_b_u_t_i_n_g_8md.html',1,'']]]
+];
diff --git a/docs/search/files_10.html b/docs/search/files_10.html
new file mode 100644
index 000000000..d2187f6c6
--- /dev/null
+++ b/docs/search/files_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_10.js b/docs/search/files_10.js
new file mode 100644
index 000000000..64f9536a5
--- /dev/null
+++ b/docs/search/files_10.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['ubuntu_2dbuild_2esh',['ubuntu-build.sh',['../ubuntu-build_8sh.html',1,'']]],
+ ['update_2dgettext_2dmessages_2emd',['Update-gettext-messages.md',['../_update-gettext-messages_8md.html',1,'']]],
+ ['update_2dtranslations_2esh',['update-translations.sh',['../update-translations_8sh.html',1,'']]]
+];
diff --git a/docs/search/files_11.html b/docs/search/files_11.html
new file mode 100644
index 000000000..a5e688813
--- /dev/null
+++ b/docs/search/files_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_11.js b/docs/search/files_11.js
new file mode 100644
index 000000000..944e534a5
--- /dev/null
+++ b/docs/search/files_11.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['vnc_2dkey_2dmapping_2dconfiguration_2emd',['vnc-key-mapping-configuration.md',['../vnc-key-mapping-configuration_8md.html',1,'']]],
+ ['vnc_5fplugin_2ec',['vnc_plugin.c',['../vnc__plugin_8c.html',1,'']]],
+ ['vnc_5fplugin_2eh',['vnc_plugin.h',['../vnc__plugin_8h.html',1,'']]]
+];
diff --git a/docs/search/files_12.html b/docs/search/files_12.html
new file mode 100644
index 000000000..0bfddb7ec
--- /dev/null
+++ b/docs/search/files_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_12.js b/docs/search/files_12.js
new file mode 100644
index 000000000..8c4fffffa
--- /dev/null
+++ b/docs/search/files_12.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['www_5fconfig_2eh',['www_config.h',['../www__config_8h.html',1,'']]],
+ ['www_5fplugin_2ec',['www_plugin.c',['../www__plugin_8c.html',1,'']]],
+ ['www_5fplugin_2eh',['www_plugin.h',['../www__plugin_8h.html',1,'']]],
+ ['www_5futils_2ec',['www_utils.c',['../www__utils_8c.html',1,'']]],
+ ['www_5futils_2eh',['www_utils.h',['../www__utils_8h.html',1,'']]]
+];
diff --git a/docs/search/files_13.html b/docs/search/files_13.html
new file mode 100644
index 000000000..09d9adf3c
--- /dev/null
+++ b/docs/search/files_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_13.js b/docs/search/files_13.js
new file mode 100644
index 000000000..48a70e68e
--- /dev/null
+++ b/docs/search/files_13.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['xdmcp_5fplugin_2ec',['xdmcp_plugin.c',['../xdmcp__plugin_8c.html',1,'']]]
+];
diff --git a/docs/search/files_2.html b/docs/search/files_2.html
new file mode 100644
index 000000000..d5c6c3be3
--- /dev/null
+++ b/docs/search/files_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_2.js b/docs/search/files_2.js
new file mode 100644
index 000000000..46dc10a12
--- /dev/null
+++ b/docs/search/files_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['development_2dnotes_2emd',['Development-Notes.md',['../_development-_notes_8md.html',1,'']]]
+];
diff --git a/docs/search/files_3.html b/docs/search/files_3.html
new file mode 100644
index 000000000..d5a952844
--- /dev/null
+++ b/docs/search/files_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_3.js b/docs/search/files_3.js
new file mode 100644
index 000000000..531e6762d
--- /dev/null
+++ b/docs/search/files_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['exec_5fplugin_2ec',['exec_plugin.c',['../exec__plugin_8c.html',1,'']]],
+ ['exec_5fplugin_5fconfig_2eh',['exec_plugin_config.h',['../exec__plugin__config_8h.html',1,'']]]
+];
diff --git a/docs/search/files_4.html b/docs/search/files_4.html
new file mode 100644
index 000000000..7b4c42a07
--- /dev/null
+++ b/docs/search/files_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_4.js b/docs/search/files_4.js
new file mode 100644
index 000000000..35ecbbb25
--- /dev/null
+++ b/docs/search/files_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['functions_2esh',['functions.sh',['../functions_8sh.html',1,'']]]
+];
diff --git a/docs/search/files_5.html b/docs/search/files_5.html
new file mode 100644
index 000000000..1f77bb121
--- /dev/null
+++ b/docs/search/files_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_5.js b/docs/search/files_5.js
new file mode 100644
index 000000000..cc9d4a611
--- /dev/null
+++ b/docs/search/files_5.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['gettranslator_2esh',['gettranslator.sh',['../gettranslator_8sh.html',1,'']]],
+ ['glibsecret_5fplugin_2ec',['glibsecret_plugin.c',['../glibsecret__plugin_8c.html',1,'']]],
+ ['glibsecret_5fplugin_2eh',['glibsecret_plugin.h',['../glibsecret__plugin_8h.html',1,'']]],
+ ['gtk_2dversions_2don_2dvarious_2ddistributions_2emd',['GTK-versions-on-various-distributions.md',['../_g_t_k-versions-on-various-distributions_8md.html',1,'']]]
+];
diff --git a/docs/search/files_6.html b/docs/search/files_6.html
new file mode 100644
index 000000000..7573254f8
--- /dev/null
+++ b/docs/search/files_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_6.js b/docs/search/files_6.js
new file mode 100644
index 000000000..fe4007ff0
--- /dev/null
+++ b/docs/search/files_6.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['home_2emd',['Home.md',['../_home_8md.html',1,'']]],
+ ['how_2dto_2dtranslate_2dremmina_2emd',['How-to-translate-Remmina.md',['../_how-to-translate-_remmina_8md.html',1,'']]],
+ ['howto_2dgenerate_2dthe_2dchangelog_2emd',['HOWTO-generate-the-changelog.md',['../_h_o_w_t_o-generate-the-changelog_8md.html',1,'']]]
+];
diff --git a/docs/search/files_7.html b/docs/search/files_7.html
new file mode 100644
index 000000000..214b329dc
--- /dev/null
+++ b/docs/search/files_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_7.js b/docs/search/files_7.js
new file mode 100644
index 000000000..0036930ac
--- /dev/null
+++ b/docs/search/files_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['i18nstats_2esh',['i18nstats.sh',['../i18nstats_8sh.html',1,'']]]
+];
diff --git a/docs/search/files_8.html b/docs/search/files_8.html
new file mode 100644
index 000000000..6720c7c35
--- /dev/null
+++ b/docs/search/files_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_8.js b/docs/search/files_8.js
new file mode 100644
index 000000000..e5b0dbc3e
--- /dev/null
+++ b/docs/search/files_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['kwallet_5fplugin_2eh',['kwallet_plugin.h',['../kwallet__plugin_8h.html',1,'']]],
+ ['kwallet_5fplugin_5fmain_2ec',['kwallet_plugin_main.c',['../kwallet__plugin__main_8c.html',1,'']]]
+];
diff --git a/docs/search/files_9.html b/docs/search/files_9.html
new file mode 100644
index 000000000..fc9587792
--- /dev/null
+++ b/docs/search/files_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_9.js b/docs/search/files_9.js
new file mode 100644
index 000000000..bd3d08884
--- /dev/null
+++ b/docs/search/files_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['launcher_2esh',['launcher.sh',['../launcher_8sh.html',1,'']]]
+];
diff --git a/docs/search/files_a.html b/docs/search/files_a.html
new file mode 100644
index 000000000..ffe3e9d64
--- /dev/null
+++ b/docs/search/files_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_a.js b/docs/search/files_a.js
new file mode 100644
index 000000000..86a7d9ac2
--- /dev/null
+++ b/docs/search/files_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['multi_2dmonitor_2dsupport_2emd',['multi-monitor-support.md',['../multi-monitor-support_8md.html',1,'']]]
+];
diff --git a/docs/search/files_b.html b/docs/search/files_b.html
new file mode 100644
index 000000000..32cd2be99
--- /dev/null
+++ b/docs/search/files_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_b.js b/docs/search/files_b.js
new file mode 100644
index 000000000..dd3041de9
--- /dev/null
+++ b/docs/search/files_b.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['nx_5fplugin_2ec',['nx_plugin.c',['../nx__plugin_8c.html',1,'']]],
+ ['nx_5fplugin_2eh',['nx_plugin.h',['../nx__plugin_8h.html',1,'']]],
+ ['nx_5fsession_2ec',['nx_session.c',['../nx__session_8c.html',1,'']]],
+ ['nx_5fsession_2eh',['nx_session.h',['../nx__session_8h.html',1,'']]],
+ ['nx_5fsession_5fmanager_2ec',['nx_session_manager.c',['../nx__session__manager_8c.html',1,'']]],
+ ['nx_5fsession_5fmanager_2eh',['nx_session_manager.h',['../nx__session__manager_8h.html',1,'']]]
+];
diff --git a/docs/search/files_c.html b/docs/search/files_c.html
new file mode 100644
index 000000000..bb8360868
--- /dev/null
+++ b/docs/search/files_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_c.js b/docs/search/files_c.js
new file mode 100644
index 000000000..035c81e7c
--- /dev/null
+++ b/docs/search/files_c.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['plugin_2ec',['plugin.c',['../plugin_8c.html',1,'']]],
+ ['plugin_2eh',['plugin.h',['../plugin_8h.html',1,'']]],
+ ['plugin_5fconfig_2eh',['plugin_config.h',['../plugin__config_8h.html',1,'']]],
+ ['problems_2dwith_2dwayland_2emd',['Problems-with-Wayland.md',['../_problems-with-_wayland_8md.html',1,'']]]
+];
diff --git a/docs/search/files_d.html b/docs/search/files_d.html
new file mode 100644
index 000000000..38bf2b3b8
--- /dev/null
+++ b/docs/search/files_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_d.js b/docs/search/files_d.js
new file mode 100644
index 000000000..d086b7f81
--- /dev/null
+++ b/docs/search/files_d.js
@@ -0,0 +1,118 @@
+var searchData=
+[
+ ['rcw_2ec',['rcw.c',['../rcw_8c.html',1,'']]],
+ ['rcw_2eh',['rcw.h',['../rcw_8h.html',1,'']]],
+ ['rdp_5fchannels_2ec',['rdp_channels.c',['../rdp__channels_8c.html',1,'']]],
+ ['rdp_5fchannels_2eh',['rdp_channels.h',['../rdp__channels_8h.html',1,'']]],
+ ['rdp_5fcliprdr_2ec',['rdp_cliprdr.c',['../rdp__cliprdr_8c.html',1,'']]],
+ ['rdp_5fcliprdr_2eh',['rdp_cliprdr.h',['../rdp__cliprdr_8h.html',1,'']]],
+ ['rdp_5fevent_2ec',['rdp_event.c',['../rdp__event_8c.html',1,'']]],
+ ['rdp_5fevent_2eh',['rdp_event.h',['../rdp__event_8h.html',1,'']]],
+ ['rdp_5ffile_2ec',['rdp_file.c',['../rdp__file_8c.html',1,'']]],
+ ['rdp_5ffile_2eh',['rdp_file.h',['../rdp__file_8h.html',1,'']]],
+ ['rdp_5fgraphics_2ec',['rdp_graphics.c',['../rdp__graphics_8c.html',1,'']]],
+ ['rdp_5fgraphics_2eh',['rdp_graphics.h',['../rdp__graphics_8h.html',1,'']]],
+ ['rdp_5fplugin_2ec',['rdp_plugin.c',['../rdp__plugin_8c.html',1,'']]],
+ ['rdp_5fplugin_2eh',['rdp_plugin.h',['../rdp__plugin_8h.html',1,'']]],
+ ['rdp_5fsettings_2ec',['rdp_settings.c',['../rdp__settings_8c.html',1,'']]],
+ ['rdp_5fsettings_2eh',['rdp_settings.h',['../rdp__settings_8h.html',1,'']]],
+ ['readme_2emd',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]],
+ ['remmina_2drdp_2dand_2dhidpi_2dscaling_2emd',['Remmina-RDP-and-HiDPI-scaling.md',['../_remmina-_r_d_p-and-_hi_d_p_i-scaling_8md.html',1,'']]],
+ ['remmina_2dssh_2dterminal_2dcolour_2dschemes_2emd',['Remmina-SSH-Terminal-colour-schemes.md',['../_remmina-_s_s_h-_terminal-colour-schemes_8md.html',1,'']]],
+ ['remmina_2dusage_2dfaq_2emd',['Remmina-Usage-FAQ.md',['../_remmina-_usage-_f_a_q_8md.html',1,'']]],
+ ['remmina_2duser_27s_2dguide_2emd',['Remmina-User&apos;s-guide.md',['../_remmina-_user's-guide_8md.html',1,'']]],
+ ['remmina_2dvnc_2dto_2draspbian_2dstretch_2emd',['Remmina-VNC-to-Raspbian-Stretch.md',['../_remmina-_v_n_c-to-_raspbian-_stretch_8md.html',1,'']]],
+ ['remmina_2ec',['remmina.c',['../remmina_8c.html',1,'']]],
+ ['remmina_2eh',['remmina.h',['../remmina_8h.html',1,'']]],
+ ['remmina_5fabout_2ec',['remmina_about.c',['../remmina__about_8c.html',1,'']]],
+ ['remmina_5fabout_2eh',['remmina_about.h',['../remmina__about_8h.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_2ec',['remmina_applet_menu.c',['../remmina__applet__menu_8c.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_2eh',['remmina_applet_menu.h',['../remmina__applet__menu_8h.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_5fitem_2ec',['remmina_applet_menu_item.c',['../remmina__applet__menu__item_8c.html',1,'']]],
+ ['remmina_5fapplet_5fmenu_5fitem_2eh',['remmina_applet_menu_item.h',['../remmina__applet__menu__item_8h.html',1,'']]],
+ ['remmina_5favahi_2ec',['remmina_avahi.c',['../remmina__avahi_8c.html',1,'']]],
+ ['remmina_5favahi_2eh',['remmina_avahi.h',['../remmina__avahi_8h.html',1,'']]],
+ ['remmina_5fchat_5fwindow_2ec',['remmina_chat_window.c',['../remmina__chat__window_8c.html',1,'']]],
+ ['remmina_5fchat_5fwindow_2eh',['remmina_chat_window.h',['../remmina__chat__window_8h.html',1,'']]],
+ ['remmina_5fcrypt_2ec',['remmina_crypt.c',['../remmina__crypt_8c.html',1,'']]],
+ ['remmina_5fcrypt_2eh',['remmina_crypt.h',['../remmina__crypt_8h.html',1,'']]],
+ ['remmina_5fexec_2ec',['remmina_exec.c',['../remmina__exec_8c.html',1,'']]],
+ ['remmina_5fexec_2eh',['remmina_exec.h',['../remmina__exec_8h.html',1,'']]],
+ ['remmina_5fext_5fexec_2ec',['remmina_ext_exec.c',['../remmina__ext__exec_8c.html',1,'']]],
+ ['remmina_5fext_5fexec_2eh',['remmina_ext_exec.h',['../remmina__ext__exec_8h.html',1,'']]],
+ ['remmina_5fexternal_5ftools_2ec',['remmina_external_tools.c',['../remmina__external__tools_8c.html',1,'']]],
+ ['remmina_5fexternal_5ftools_2eh',['remmina_external_tools.h',['../remmina__external__tools_8h.html',1,'']]],
+ ['remmina_5ffile_2ec',['remmina_file.c',['../remmina__file_8c.html',1,'']]],
+ ['remmina_5ffile_2eh',['remmina_file.h',['../remmina__file_8h.html',1,'']]],
+ ['remmina_5ffile_5feditor_2ec',['remmina_file_editor.c',['../remmina__file__editor_8c.html',1,'']]],
+ ['remmina_5ffile_5feditor_2eh',['remmina_file_editor.h',['../remmina__file__editor_8h.html',1,'']]],
+ ['remmina_5ffile_5fmanager_2ec',['remmina_file_manager.c',['../remmina__file__manager_8c.html',1,'']]],
+ ['remmina_5ffile_5fmanager_2eh',['remmina_file_manager.h',['../remmina__file__manager_8h.html',1,'']]],
+ ['remmina_5ffilezilla_5fsftp_2esh',['remmina_filezilla_sftp.sh',['../remmina__filezilla__sftp_8sh.html',1,'']]],
+ ['remmina_5ffilezilla_5fsftp_5fpki_2esh',['remmina_filezilla_sftp_pki.sh',['../remmina__filezilla__sftp__pki_8sh.html',1,'']]],
+ ['remmina_5fftp_5fclient_2ec',['remmina_ftp_client.c',['../remmina__ftp__client_8c.html',1,'']]],
+ ['remmina_5fftp_5fclient_2eh',['remmina_ftp_client.h',['../remmina__ftp__client_8h.html',1,'']]],
+ ['remmina_5ficon_2ec',['remmina_icon.c',['../remmina__icon_8c.html',1,'']]],
+ ['remmina_5ficon_2eh',['remmina_icon.h',['../remmina__icon_8h.html',1,'']]],
+ ['remmina_5fkey_5fchooser_2ec',['remmina_key_chooser.c',['../remmina__key__chooser_8c.html',1,'']]],
+ ['remmina_5fkey_5fchooser_2eh',['remmina_key_chooser.h',['../remmina__key__chooser_8h.html',1,'']]],
+ ['remmina_5flog_2ec',['remmina_log.c',['../remmina__log_8c.html',1,'']]],
+ ['remmina_5flog_2eh',['remmina_log.h',['../remmina__log_8h.html',1,'']]],
+ ['remmina_5fmain_2ec',['remmina_main.c',['../remmina__main_8c.html',1,'']]],
+ ['remmina_5fmain_2eh',['remmina_main.h',['../remmina__main_8h.html',1,'']]],
+ ['remmina_5fmarshals_2ec',['remmina_marshals.c',['../remmina__marshals_8c.html',1,'']]],
+ ['remmina_5fmarshals_2eh',['remmina_marshals.h',['../remmina__marshals_8h.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_2ec',['remmina_masterthread_exec.c',['../remmina__masterthread__exec_8c.html',1,'']]],
+ ['remmina_5fmasterthread_5fexec_2eh',['remmina_masterthread_exec.h',['../remmina__masterthread__exec_8h.html',1,'']]],
+ ['remmina_5fmessage_5fpanel_2ec',['remmina_message_panel.c',['../remmina__message__panel_8c.html',1,'']]],
+ ['remmina_5fmessage_5fpanel_2eh',['remmina_message_panel.h',['../remmina__message__panel_8h.html',1,'']]],
+ ['remmina_5fmpchange_2ec',['remmina_mpchange.c',['../remmina__mpchange_8c.html',1,'']]],
+ ['remmina_5fmpchange_2eh',['remmina_mpchange.h',['../remmina__mpchange_8h.html',1,'']]],
+ ['remmina_5fnslookup_2esh',['remmina_nslookup.sh',['../remmina__nslookup_8sh.html',1,'']]],
+ ['remmina_5fping_2esh',['remmina_ping.sh',['../remmina__ping_8sh.html',1,'']]],
+ ['remmina_5fplugin_2eh',['remmina_plugin.h',['../remmina__plugin_8h.html',1,'']]],
+ ['remmina_5fplugin_5fmanager_2ec',['remmina_plugin_manager.c',['../remmina__plugin__manager_8c.html',1,'']]],
+ ['remmina_5fplugin_5fmanager_2eh',['remmina_plugin_manager.h',['../remmina__plugin__manager_8h.html',1,'']]],
+ ['remmina_5fpref_2ec',['remmina_pref.c',['../remmina__pref_8c.html',1,'']]],
+ ['remmina_5fpref_2eh',['remmina_pref.h',['../remmina__pref_8h.html',1,'']]],
+ ['remmina_5fpref_5fdialog_2ec',['remmina_pref_dialog.c',['../remmina__pref__dialog_8c.html',1,'']]],
+ ['remmina_5fpref_5fdialog_2eh',['remmina_pref_dialog.h',['../remmina__pref__dialog_8h.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_2ec',['remmina_protocol_widget.c',['../remmina__protocol__widget_8c.html',1,'']]],
+ ['remmina_5fprotocol_5fwidget_2eh',['remmina_protocol_widget.h',['../remmina__protocol__widget_8h.html',1,'']]],
+ ['remmina_5fpublic_2ec',['remmina_public.c',['../remmina__public_8c.html',1,'']]],
+ ['remmina_5fpublic_2eh',['remmina_public.h',['../remmina__public_8h.html',1,'']]],
+ ['remmina_5fscheduler_2ec',['remmina_scheduler.c',['../remmina__scheduler_8c.html',1,'']]],
+ ['remmina_5fscheduler_2eh',['remmina_scheduler.h',['../remmina__scheduler_8h.html',1,'']]],
+ ['remmina_5fscrolled_5fviewport_2ec',['remmina_scrolled_viewport.c',['../remmina__scrolled__viewport_8c.html',1,'']]],
+ ['remmina_5fscrolled_5fviewport_2eh',['remmina_scrolled_viewport.h',['../remmina__scrolled__viewport_8h.html',1,'']]],
+ ['remmina_5fsftp_5fclient_2ec',['remmina_sftp_client.c',['../remmina__sftp__client_8c.html',1,'']]],
+ ['remmina_5fsftp_5fclient_2eh',['remmina_sftp_client.h',['../remmina__sftp__client_8h.html',1,'']]],
+ ['remmina_5fsftp_5fplugin_2ec',['remmina_sftp_plugin.c',['../remmina__sftp__plugin_8c.html',1,'']]],
+ ['remmina_5fsftp_5fplugin_2eh',['remmina_sftp_plugin.h',['../remmina__sftp__plugin_8h.html',1,'']]],
+ ['remmina_5fsodium_2ec',['remmina_sodium.c',['../remmina__sodium_8c.html',1,'']]],
+ ['remmina_5fsodium_2eh',['remmina_sodium.h',['../remmina__sodium_8h.html',1,'']]],
+ ['remmina_5fssh_2ec',['remmina_ssh.c',['../remmina__ssh_8c.html',1,'']]],
+ ['remmina_5fssh_2eh',['remmina_ssh.h',['../remmina__ssh_8h.html',1,'']]],
+ ['remmina_5fssh_5fplugin_2ec',['remmina_ssh_plugin.c',['../remmina__ssh__plugin_8c.html',1,'']]],
+ ['remmina_5fssh_5fplugin_2eh',['remmina_ssh_plugin.h',['../remmina__ssh__plugin_8h.html',1,'']]],
+ ['remmina_5fstats_2ec',['remmina_stats.c',['../remmina__stats_8c.html',1,'']]],
+ ['remmina_5fstats_2eh',['remmina_stats.h',['../remmina__stats_8h.html',1,'']]],
+ ['remmina_5fstats_5fsender_2ec',['remmina_stats_sender.c',['../remmina__stats__sender_8c.html',1,'']]],
+ ['remmina_5fstats_5fsender_2eh',['remmina_stats_sender.h',['../remmina__stats__sender_8h.html',1,'']]],
+ ['remmina_5fstring_5farray_2ec',['remmina_string_array.c',['../remmina__string__array_8c.html',1,'']]],
+ ['remmina_5fstring_5farray_2eh',['remmina_string_array.h',['../remmina__string__array_8h.html',1,'']]],
+ ['remmina_5fstring_5flist_2ec',['remmina_string_list.c',['../remmina__string__list_8c.html',1,'']]],
+ ['remmina_5fstring_5flist_2eh',['remmina_string_list.h',['../remmina__string__list_8h.html',1,'']]],
+ ['remmina_5fsysinfo_2ec',['remmina_sysinfo.c',['../remmina__sysinfo_8c.html',1,'']]],
+ ['remmina_5fsysinfo_2eh',['remmina_sysinfo.h',['../remmina__sysinfo_8h.html',1,'']]],
+ ['remmina_5ftrace_5fcalls_2eh',['remmina_trace_calls.h',['../remmina__trace__calls_8h.html',1,'']]],
+ ['remmina_5ftraceroute_2esh',['remmina_traceroute.sh',['../remmina__traceroute_8sh.html',1,'']]],
+ ['remmina_5funlock_2ec',['remmina_unlock.c',['../remmina__unlock_8c.html',1,'']]],
+ ['remmina_5funlock_2eh',['remmina_unlock.h',['../remmina__unlock_8h.html',1,'']]],
+ ['remmina_5futils_2ec',['remmina_utils.c',['../remmina__utils_8c.html',1,'']]],
+ ['remmina_5futils_2eh',['remmina_utils.h',['../remmina__utils_8h.html',1,'']]],
+ ['remmina_5fwidget_5fpool_2ec',['remmina_widget_pool.c',['../remmina__widget__pool_8c.html',1,'']]],
+ ['remmina_5fwidget_5fpool_2eh',['remmina_widget_pool.h',['../remmina__widget__pool_8h.html',1,'']]],
+ ['rmnews_2ec',['rmnews.c',['../rmnews_8c.html',1,'']]],
+ ['rmnews_2eh',['rmnews.h',['../rmnews_8h.html',1,'']]]
+];
diff --git a/docs/search/files_e.html b/docs/search/files_e.html
new file mode 100644
index 000000000..6f8476215
--- /dev/null
+++ b/docs/search/files_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_e.js b/docs/search/files_e.js
new file mode 100644
index 000000000..449f5383c
--- /dev/null
+++ b/docs/search/files_e.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['spice_5fplugin_2ec',['spice_plugin.c',['../spice__plugin_8c.html',1,'']]],
+ ['spice_5fplugin_2eh',['spice_plugin.h',['../spice__plugin_8h.html',1,'']]],
+ ['spice_5fplugin_5ffile_5ftransfer_2ec',['spice_plugin_file_transfer.c',['../spice__plugin__file__transfer_8c.html',1,'']]],
+ ['spice_5fplugin_5fusb_2ec',['spice_plugin_usb.c',['../spice__plugin__usb_8c.html',1,'']]],
+ ['st_5fplugin_2ec',['st_plugin.c',['../st__plugin_8c.html',1,'']]],
+ ['st_5fplugin_5fconfig_2eh',['st_plugin_config.h',['../st__plugin__config_8h.html',1,'']]],
+ ['systray_2dmenu_2emd',['Systray-menu.md',['../_systray-menu_8md.html',1,'']]]
+];
diff --git a/docs/search/files_f.html b/docs/search/files_f.html
new file mode 100644
index 000000000..75680638d
--- /dev/null
+++ b/docs/search/files_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/files_f.js b/docs/search/files_f.js
new file mode 100644
index 000000000..7c9287222
--- /dev/null
+++ b/docs/search/files_f.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['telepathy_5fchannel_5fhandler_2ec',['telepathy_channel_handler.c',['../telepathy__channel__handler_8c.html',1,'']]],
+ ['telepathy_5fchannel_5fhandler_2eh',['telepathy_channel_handler.h',['../telepathy__channel__handler_8h.html',1,'']]],
+ ['telepathy_5fhandler_2ec',['telepathy_handler.c',['../telepathy__handler_8c.html',1,'']]],
+ ['telepathy_5fhandler_2eh',['telepathy_handler.h',['../telepathy__handler_8h.html',1,'']]],
+ ['telepathy_5fplugin_2ec',['telepathy_plugin.c',['../telepathy__plugin_8c.html',1,'']]],
+ ['testing_2dunder_2dubuntu_2dwith_2dthe_2dremmina_2dnext_2ddaily_2dppa_2emd',['Testing-under-Ubuntu-with-the-remmina-next-daily-PPA.md',['../_testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a_8md.html',1,'']]],
+ ['travis_2dbuild_2esh',['travis-build.sh',['../travis-build_8sh.html',1,'']]],
+ ['types_2eh',['types.h',['../types_8h.html',1,'']]]
+];
diff --git a/docs/search/functions_0.html b/docs/search/functions_0.html
new file mode 100644
index 000000000..4e6d87d15
--- /dev/null
+++ b/docs/search/functions_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_0.js b/docs/search/functions_0.js
new file mode 100644
index 000000000..6f914a186
--- /dev/null
+++ b/docs/search/functions_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['_5fgpg_5ferror_5fto_5ferrno',['_gpg_error_to_errno',['../remmina_8c.html#a1ecec6e37469e2e927a612747269587c',1,'remmina.c']]]
+];
diff --git a/docs/search/functions_1.html b/docs/search/functions_1.html
new file mode 100644
index 000000000..b343e2db5
--- /dev/null
+++ b/docs/search/functions_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_1.js b/docs/search/functions_1.js
new file mode 100644
index 000000000..3f37ddfdd
--- /dev/null
+++ b/docs/search/functions_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['authpanel_5fmt_5fcb',['authpanel_mt_cb',['../remmina__protocol__widget_8c.html#aa0b0a97022961c198c3343dd2433d7cb',1,'remmina_protocol_widget.c']]]
+];
diff --git a/docs/search/functions_10.html b/docs/search/functions_10.html
new file mode 100644
index 000000000..72bc1ea1f
--- /dev/null
+++ b/docs/search/functions_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_10.js b/docs/search/functions_10.js
new file mode 100644
index 000000000..588ef16c3
--- /dev/null
+++ b/docs/search/functions_10.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['shutdown_5floop',['shutdown_loop',['../remmina__protocol__widget_8c.html#a25797eafabe9d6f5729b56145abe1572',1,'remmina_protocol_widget.c']]],
+ ['soup_5fcallback',['soup_callback',['../remmina__stats__sender_8c.html#a25ee87d9e565079665ced10b7736fb20',1,'remmina_stats_sender.c']]]
+];
diff --git a/docs/search/functions_11.html b/docs/search/functions_11.html
new file mode 100644
index 000000000..6948a6155
--- /dev/null
+++ b/docs/search/functions_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_11.js b/docs/search/functions_11.js
new file mode 100644
index 000000000..95c85b161
--- /dev/null
+++ b/docs/search/functions_11.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['unlock_5fdynres',['unlock_dynres',['../remmina__protocol__widget_8c.html#add3775989fb5ed7a7f1f7c9b5980a94e',1,'remmina_protocol_widget.c']]],
+ ['update_5falign',['update_align',['../remmina__protocol__widget_8c.html#a8565f01f8b5a3f0ee4518bda5f923f9a',1,'remmina_protocol_widget.c']]],
+ ['upgrade_5fsshkeys_5f202001',['upgrade_sshkeys_202001',['../remmina__file_8c.html#a3feeafd4956b364975aef178ef99b7a6',1,'remmina_file.c']]],
+ ['upgrade_5fsshkeys_5f202001_5fmig_5fcommon_5fsetting',['upgrade_sshkeys_202001_mig_common_setting',['../remmina__file_8c.html#a42231fba69c82eb51a4e210c2de76960',1,'remmina_file.c']]]
+];
diff --git a/docs/search/functions_12.html b/docs/search/functions_12.html
new file mode 100644
index 000000000..3df848924
--- /dev/null
+++ b/docs/search/functions_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_12.js b/docs/search/functions_12.js
new file mode 100644
index 000000000..bded5d071
--- /dev/null
+++ b/docs/search/functions_12.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['view_5fpopup_5fmenu_5fondosomething',['view_popup_menu_onDoSomething',['../remmina__external__tools_8c.html#aeb0a4182f2137fe0089737b2522add71',1,'remmina_external_tools.c']]]
+];
diff --git a/docs/search/functions_13.html b/docs/search/functions_13.html
new file mode 100644
index 000000000..febf8e03d
--- /dev/null
+++ b/docs/search/functions_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_13.js b/docs/search/functions_13.js
new file mode 100644
index 000000000..f5ce88acc
--- /dev/null
+++ b/docs/search/functions_13.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['wait_5ffor_5fchild',['wait_for_child',['../remmina__ext__exec_8c.html#aa063217311c67408819a2c1b86ff92dd',1,'remmina_ext_exec.c']]],
+ ['www_5futils_5fsend_5fnotification',['www_utils_send_notification',['../www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa',1,'www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;www_utils.c'],['../www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa',1,'www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5ffind',['www_utils_string_find',['../www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf',1,'www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;www_utils.c'],['../www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27',1,'www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5freplace',['www_utils_string_replace',['../www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc',1,'www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;www_utils.c'],['../www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc',1,'www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;www_utils.c']]],
+ ['www_5futils_5fstring_5freplace_5fall',['www_utils_string_replace_all',['../www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c',1,'www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;www_utils.c'],['../www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c',1,'www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;www_utils.c']]],
+ ['www_5futils_5fstrpos',['www_utils_strpos',['../www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069',1,'www_utils.c']]]
+];
diff --git a/docs/search/functions_2.html b/docs/search/functions_2.html
new file mode 100644
index 000000000..ecce2f318
--- /dev/null
+++ b/docs/search/functions_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_2.js b/docs/search/functions_2.js
new file mode 100644
index 000000000..d7684e06a
--- /dev/null
+++ b/docs/search/functions_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['build_5fkwallet_5fkey',['build_kwallet_key',['../kwallet__plugin__main_8c.html#a864de43408740eb3b6ef58c820773e2a',1,'kwallet_plugin_main.c']]],
+ ['buildconfig_5fstrstr',['buildconfig_strstr',['../rdp__plugin_8c.html#a7031208f6cbf262a2e69fe971f248591',1,'rdp_plugin.c']]]
+];
diff --git a/docs/search/functions_3.html b/docs/search/functions_3.html
new file mode 100644
index 000000000..15f06abdc
--- /dev/null
+++ b/docs/search/functions_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_3.js b/docs/search/functions_3.js
new file mode 100644
index 000000000..5c7798f96
--- /dev/null
+++ b/docs/search/functions_3.js
@@ -0,0 +1,21 @@
+var searchData=
+[
+ ['cancel_5fconnect_5fxport_5fcb',['cancel_connect_xport_cb',['../remmina__protocol__widget_8c.html#a05f9694efc84de6273efa46d232b84f9',1,'remmina_protocol_widget.c']]],
+ ['cancel_5finit_5ftunnel_5fcb',['cancel_init_tunnel_cb',['../remmina__protocol__widget_8c.html#a99ba55ddcb17c9e87ca233fa83787227',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fopen_5fconnection_5fcb',['cancel_open_connection_cb',['../remmina__protocol__widget_8c.html#a4fb4c2252289e8e891376db6279ef8f5',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fstart_5fdirect_5ftunnel_5fcb',['cancel_start_direct_tunnel_cb',['../remmina__protocol__widget_8c.html#a0a93da80662ff18b93270ced59243ce3',1,'remmina_protocol_widget.c']]],
+ ['cancel_5fstart_5freverse_5ftunnel_5fcb',['cancel_start_reverse_tunnel_cb',['../remmina__protocol__widget_8c.html#aeffe07c6412286d99ba04f05fe74aeac',1,'remmina_protocol_widget.c']]],
+ ['cb_5fchild_5fwatch',['cb_child_watch',['../exec__plugin_8c.html#ae5fe6643dc64e9250dc2a33e9f266e71',1,'exec_plugin.c']]],
+ ['cb_5fclosewidget',['cb_closewidget',['../remmina__exec_8c.html#a0ffd51ed283da4640c920e75e89e694a',1,'remmina_exec.c']]],
+ ['cb_5ferr_5fwatch',['cb_err_watch',['../exec__plugin_8c.html#ab43db37b96c68093747620fbde879327',1,'exec_plugin.c']]],
+ ['cb_5flasterror_5fconfirmed',['cb_lasterror_confirmed',['../rcw_8c.html#a56e026ede7a3e50374579ad538e33db7',1,'rcw.c']]],
+ ['cb_5fout_5fwatch',['cb_out_watch',['../exec__plugin_8c.html#aa6294507761837488c3777f21096d219',1,'exec_plugin.c']]],
+ ['changenext',['changenext',['../remmina__mpchange_8c.html#abea63e74b83d3545308d05dfe88e2839',1,'remmina_mpchange.c']]],
+ ['check_5ffor_5fendianness',['check_for_endianness',['../vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751',1,'vnc_plugin.c']]],
+ ['compare',['compare',['../remmina__ssh__plugin_8c.html#a2d76cf254046651d0d5bb36aa83637e4',1,'remmina_ssh_plugin.c']]],
+ ['compare_5fsecret_5fplugin_5finit_5forder',['compare_secret_plugin_init_order',['../remmina__plugin__manager_8c.html#ac90d2ffe3909722ca3daedac28da76e5',1,'remmina_plugin_manager.c']]],
+ ['complete_5fcleanup_5fon_5fmain_5fthread',['complete_cleanup_on_main_thread',['../rdp__plugin_8c.html#a6aa88468d17f574532ca959f554a70c5',1,'rdp_plugin.c']]],
+ ['conn_5fclosed',['conn_closed',['../remmina__protocol__widget_8c.html#a69757e0c39fa9fcf31800f6375772016',1,'remmina_protocol_widget.c']]],
+ ['conn_5fopened',['conn_opened',['../remmina__protocol__widget_8c.html#af4a20ef0ff8cc86feeba345498179e48',1,'remmina_protocol_widget.c']]],
+ ['crlf2lf',['crlf2lf',['../rdp__cliprdr_8c.html#a55dec77cdcdc16a6d85680943eb2a859',1,'rdp_cliprdr.c']]]
+];
diff --git a/docs/search/functions_4.html b/docs/search/functions_4.html
new file mode 100644
index 000000000..8985ff278
--- /dev/null
+++ b/docs/search/functions_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_4.js b/docs/search/functions_4.js
new file mode 100644
index 000000000..e5d634e3d
--- /dev/null
+++ b/docs/search/functions_4.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['define_5frdp_5fclient_5fcommon',['DEFINE_RDP_CLIENT_COMMON',['../structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7',1,'rf_context']]],
+ ['desktop_5fresize',['desktop_resize',['../remmina__protocol__widget_8c.html#aeaf728bb767c1bbdda6a0d8dc3553565',1,'remmina_protocol_widget.c']]],
+ ['disable_5frcw_5fdelete_5fconfirm_5fcb',['disable_rcw_delete_confirm_cb',['../remmina__exec_8c.html#aacc2a2ffd19e56fcb3e4b025d180ab8f',1,'remmina_exec.c']]]
+];
diff --git a/docs/search/functions_5.html b/docs/search/functions_5.html
new file mode 100644
index 000000000..03149184b
--- /dev/null
+++ b/docs/search/functions_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_5.js b/docs/search/functions_5.js
new file mode 100644
index 000000000..fe12a4eff
--- /dev/null
+++ b/docs/search/functions_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['enable_5finputs',['enable_inputs',['../remmina__mpchange_8c.html#a909daa43f234a03b1ec12a58acc51b15',1,'remmina_mpchange.c']]]
+];
diff --git a/docs/search/functions_6.html b/docs/search/functions_6.html
new file mode 100644
index 000000000..c50612362
--- /dev/null
+++ b/docs/search/functions_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_6.js b/docs/search/functions_6.js
new file mode 100644
index 000000000..65c1a1f14
--- /dev/null
+++ b/docs/search/functions_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['find_5fprotocol_5fsetting',['find_protocol_setting',['../remmina__file_8c.html#a1399e5b83aa040b6613cf98be45b4c99',1,'remmina_file.c']]]
+];
diff --git a/docs/search/functions_7.html b/docs/search/functions_7.html
new file mode 100644
index 000000000..83a7b84b7
--- /dev/null
+++ b/docs/search/functions_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_7.js b/docs/search/functions_7.js
new file mode 100644
index 000000000..65d116aae
--- /dev/null
+++ b/docs/search/functions_7.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['g_5fdeclare_5fderivable_5ftype',['G_DECLARE_DERIVABLE_TYPE',['../remmina__message__panel_8h.html#a558c1459208a2a314734a1cf92e8e156',1,'remmina_message_panel.h']]],
+ ['g_5fdefine_5ftype',['G_DEFINE_TYPE',['../rcw_8c.html#a21e0a6e416667f30c2b1599b8b24faec',1,'G_DEFINE_TYPE(RemminaConnectionWindow, rcw, GTK_TYPE_WINDOW):&#160;rcw.c'],['../remmina__applet__menu_8c.html#af54cbc55cb079679067ba20d2b006366',1,'G_DEFINE_TYPE(RemminaAppletMenu, remmina_applet_menu, GTK_TYPE_MENU):&#160;remmina_applet_menu.c'],['../remmina__applet__menu__item_8c.html#a9eea931ac8414d21b4b2d31b295f1f6f',1,'G_DEFINE_TYPE(RemminaAppletMenuItem, remmina_applet_menu_item, GTK_TYPE_MENU_ITEM):&#160;remmina_applet_menu_item.c'],['../remmina__chat__window_8c.html#adffc899d6f8e714c8f7482c71195b007',1,'G_DEFINE_TYPE(RemminaChatWindow, remmina_chat_window, GTK_TYPE_WINDOW):&#160;remmina_chat_window.c'],['../remmina__file__editor_8c.html#abb7466f51c11427405a54c94767a52de',1,'G_DEFINE_TYPE(RemminaFileEditor, remmina_file_editor, GTK_TYPE_DIALOG):&#160;remmina_file_editor.c'],['../remmina__ftp__client_8c.html#a90b05dce320d3ff7b6561b9f0ea8e291',1,'G_DEFINE_TYPE(RemminaFTPClient, remmina_ftp_client, GTK_TYPE_GRID):&#160;remmina_ftp_client.c'],['../remmina__protocol__widget_8c.html#a247c73c70d9c58427022a4dbcd638d32',1,'G_DEFINE_TYPE(RemminaProtocolWidget, remmina_protocol_widget, GTK_TYPE_EVENT_BOX):&#160;remmina_protocol_widget.c'],['../remmina__scrolled__viewport_8c.html#ad01fdfbbca6cbe5328f5fbdac7885a1d',1,'G_DEFINE_TYPE(RemminaScrolledViewport, remmina_scrolled_viewport, GTK_TYPE_EVENT_BOX):&#160;remmina_scrolled_viewport.c'],['../remmina__sftp__client_8c.html#aa43b65303f43a0658201bf8f27e232f8',1,'G_DEFINE_TYPE(RemminaSFTPClient, remmina_sftp_client, REMMINA_TYPE_FTP_CLIENT):&#160;remmina_sftp_client.c']]],
+ ['g_5fdefine_5ftype_5fwith_5fcode',['G_DEFINE_TYPE_WITH_CODE',['../telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8',1,'telepathy_handler.c']]],
+ ['g_5fdefine_5ftype_5fwith_5fprivate',['G_DEFINE_TYPE_WITH_PRIVATE',['../remmina__message__panel_8c.html#ad3ce5558696c03b0355b44b7f1b0d31e',1,'remmina_message_panel.c']]],
+ ['get_5fcurrent_5fallowed_5fscale_5fmode',['get_current_allowed_scale_mode',['../rcw_8c.html#abbc84b2c450f62c288ff827c5d2c5cd2',1,'rcw.c']]]
+];
diff --git a/docs/search/functions_8.html b/docs/search/functions_8.html
new file mode 100644
index 000000000..b55f0e65f
--- /dev/null
+++ b/docs/search/functions_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_8.js b/docs/search/functions_8.js
new file mode 100644
index 000000000..92e76cced
--- /dev/null
+++ b/docs/search/functions_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['htdestroy',['htdestroy',['../remmina__plugin__manager_8c.html#a7e75f54171749cfec5c0cbbb1095ed86',1,'remmina_plugin_manager.c']]]
+];
diff --git a/docs/search/functions_9.html b/docs/search/functions_9.html
new file mode 100644
index 000000000..c73f07bb5
--- /dev/null
+++ b/docs/search/functions_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_9.js b/docs/search/functions_9.js
new file mode 100644
index 000000000..18ca3aae9
--- /dev/null
+++ b/docs/search/functions_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['init_5fsettings_5fcache',['init_settings_cache',['../remmina__plugin__manager_8c.html#a72f0dbafb41acc4a5834f5c0719e6046',1,'remmina_plugin_manager.c']]]
+];
diff --git a/docs/search/functions_a.html b/docs/search/functions_a.html
new file mode 100644
index 000000000..f10ad638c
--- /dev/null
+++ b/docs/search/functions_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_a.js b/docs/search/functions_a.js
new file mode 100644
index 000000000..18c216fa5
--- /dev/null
+++ b/docs/search/functions_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['keypress_5flist_5fadd',['keypress_list_add',['../rdp__event_8c.html#ab6e9a485532ccf8c22005dd7a7137fd2',1,'rdp_event.c']]]
+];
diff --git a/docs/search/functions_b.html b/docs/search/functions_b.html
new file mode 100644
index 000000000..172ea1b31
--- /dev/null
+++ b/docs/search/functions_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_b.js b/docs/search/functions_b.js
new file mode 100644
index 000000000..e48ca8f9d
--- /dev/null
+++ b/docs/search/functions_b.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['lf2crlf',['lf2crlf',['../rdp__cliprdr_8c.html#a4f9d059736e69df00273ec853d15c772',1,'rdp_cliprdr.c']]]
+];
diff --git a/docs/search/functions_c.html b/docs/search/functions_c.html
new file mode 100644
index 000000000..99492ba8e
--- /dev/null
+++ b/docs/search/functions_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_c.js b/docs/search/functions_c.js
new file mode 100644
index 000000000..ee66c551c
--- /dev/null
+++ b/docs/search/functions_c.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['main',['main',['../remmina_8c.html#a0ddf1224851353fc92bfbff6f499fa97',1,'remmina.c']]]
+];
diff --git a/docs/search/functions_d.html b/docs/search/functions_d.html
new file mode 100644
index 000000000..5be9eccb7
--- /dev/null
+++ b/docs/search/functions_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_d.js b/docs/search/functions_d.js
new file mode 100644
index 000000000..d694e9c2a
--- /dev/null
+++ b/docs/search/functions_d.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['n_5f',['N_',['../vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e',1,'vnc_plugin.c']]],
+ ['nb_5ffind_5fpage_5fby_5fcnnobj',['nb_find_page_by_cnnobj',['../rcw_8c.html#a756830638372adda00be33468c8d3ed2',1,'rcw.c']]],
+ ['nb_5fmigrate_5fpage_5fcontent',['nb_migrate_page_content',['../rcw_8c.html#ac21387fbd4b689472e4796467bd50a55',1,'rcw.c']]],
+ ['nb_5fset_5fcurrent_5fpage',['nb_set_current_page',['../rcw_8c.html#a5e70819cad41022a0070c8102dd6dd6f',1,'rcw.c']]],
+ ['newline_5fremove',['newline_remove',['../remmina__exec_8c.html#aca2d356a03e1aac7b716b408183aa305',1,'remmina_exec.c']]]
+];
diff --git a/docs/search/functions_e.html b/docs/search/functions_e.html
new file mode 100644
index 000000000..e256cb630
--- /dev/null
+++ b/docs/search/functions_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_e.js b/docs/search/functions_e.js
new file mode 100644
index 000000000..7c09db739
--- /dev/null
+++ b/docs/search/functions_e.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['onmainthread_5fcb',['onMainThread_cb',['../nx__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1',1,'onMainThread_cb(struct onMainThread_cb_data *d):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1',1,'onMainThread_cb(struct onMainThread_cb_data *d):&#160;vnc_plugin.c']]],
+ ['onmainthread_5fcleanup_5fhandler',['onMainThread_cleanup_handler',['../nx__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49',1,'onMainThread_cleanup_handler(gpointer data):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49',1,'onMainThread_cleanup_handler(gpointer data):&#160;vnc_plugin.c']]],
+ ['onmainthread_5fgtk_5fsocket_5fadd_5fid',['onMainThread_gtk_socket_add_id',['../nx__plugin_8c.html#a31b9185763acddffe0bbdef41380bf43',1,'nx_plugin.c']]],
+ ['onmainthread_5fschedule_5fcallback_5fand_5fwait',['onMainThread_schedule_callback_and_wait',['../nx__plugin_8c.html#a390e3b371156197feb518b737a31cc53',1,'onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d):&#160;nx_plugin.c'],['../vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53',1,'onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d):&#160;vnc_plugin.c']]],
+ ['open_5fconnection_5flast_5fstage',['open_connection_last_stage',['../rcw_8c.html#a80f465cb910660ded402fb0e7bb3a7fd',1,'rcw.c']]]
+];
diff --git a/docs/search/functions_f.html b/docs/search/functions_f.html
new file mode 100644
index 000000000..424126cd7
--- /dev/null
+++ b/docs/search/functions_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/functions_f.js b/docs/search/functions_f.js
new file mode 100644
index 000000000..4c371788e
--- /dev/null
+++ b/docs/search/functions_f.js
@@ -0,0 +1,1160 @@
+var searchData=
+[
+ ['rco_5fcall_5fprotocol_5ffeature_5factivate',['rco_call_protocol_feature_activate',['../rcw_8c.html#a3cc04a8362110361d062a840b8ae5f64',1,'rcw.c']]],
+ ['rco_5fcall_5fprotocol_5ffeature_5fcheck',['rco_call_protocol_feature_check',['../rcw_8c.html#ae09c2a83e973c3041254fb57bd58666f',1,'rcw.c']]],
+ ['rco_5fcall_5fprotocol_5ffeature_5fradio',['rco_call_protocol_feature_radio',['../rcw_8c.html#a3a531286fa321e0931475b5afc86ec49',1,'rcw.c']]],
+ ['rco_5fchange_5fscalemode',['rco_change_scalemode',['../rcw_8c.html#a042a37c7e92f49443ddbdc6dc948b8b5',1,'rcw.c']]],
+ ['rco_5fcheck_5fresize',['rco_check_resize',['../rcw_8c.html#ae1c994940909e60d4f565be0e0478b34',1,'rcw.c']]],
+ ['rco_5fclosewin',['rco_closewin',['../rcw_8c.html#aaef82069514845b2987ac0659993cecd',1,'rcw.c']]],
+ ['rco_5fcreate_5fscrolled_5fcontainer',['rco_create_scrolled_container',['../rcw_8c.html#afcbac7a8924d543a58039037837710ba',1,'rcw.c']]],
+ ['rco_5fcreate_5ftab_5flabel',['rco_create_tab_label',['../rcw_8c.html#a3928a83b083a55e3af1ed81da49b25eb',1,'rcw.c']]],
+ ['rco_5fcreate_5ftab_5fpage',['rco_create_tab_page',['../rcw_8c.html#a1c40706e7ac542d396d2db99ba944dc6',1,'rcw.c']]],
+ ['rco_5fdestroy_5fmessage_5fpanel',['rco_destroy_message_panel',['../rcw_8c.html#a96e821dc68caa7f3380a513eb47aead7',1,'rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c'],['../rcw_8h.html#a96e821dc68caa7f3380a513eb47aead7',1,'rco_destroy_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c']]],
+ ['rco_5fdisconnect_5fcurrent_5fpage',['rco_disconnect_current_page',['../rcw_8c.html#a2690c97a972e458dea9f5c0566ea50b9',1,'rcw.c']]],
+ ['rco_5fenter_5fprotocol_5fwidget',['rco_enter_protocol_widget',['../rcw_8c.html#a0650f31e99dd15c719328345411deba0',1,'rcw.c']]],
+ ['rco_5fget_5fdesktop_5fsize',['rco_get_desktop_size',['../rcw_8c.html#a8cb8bd7679116f409b29399a5d14c527',1,'rcw.c']]],
+ ['rco_5fget_5fmonitor_5fgeometry',['rco_get_monitor_geometry',['../rcw_8c.html#aee06df544a91184cba1fe77c6991065a',1,'rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz):&#160;rcw.c'],['../rcw_8h.html#aee06df544a91184cba1fe77c6991065a',1,'rco_get_monitor_geometry(RemminaConnectionObject *cnnobj, GdkRectangle *sz):&#160;rcw.c']]],
+ ['rco_5fleave_5fprotocol_5fwidget',['rco_leave_protocol_widget',['../rcw_8c.html#ad45e51f5a72b7ffe9bca86d336563757',1,'rcw.c']]],
+ ['rco_5fon_5fclose_5fbutton_5fclicked',['rco_on_close_button_clicked',['../rcw_8c.html#af4bcd597461ffa30d2975cbc6b071ce4',1,'rcw.c']]],
+ ['rco_5fon_5fconnect',['rco_on_connect',['../rcw_8c.html#a3237ef26caa19b9926b485f94132cea7',1,'rcw.c']]],
+ ['rco_5fon_5fdesktop_5fresize',['rco_on_desktop_resize',['../rcw_8c.html#a61b9eae2dd47962c5966d5d32eec9964',1,'rcw.c']]],
+ ['rco_5fon_5fdisconnect',['rco_on_disconnect',['../rcw_8c.html#a029feea88b7ef32425595efe7d270947',1,'rcw.c']]],
+ ['rco_5fon_5funlock_5fdynres',['rco_on_unlock_dynres',['../rcw_8c.html#aa79b4c65a2a416a94c27363324c1cede',1,'rcw.c']]],
+ ['rco_5fon_5fupdate_5falign',['rco_on_update_align',['../rcw_8c.html#adca4317296daf9b6c51c4258a70faf5a',1,'rcw.c']]],
+ ['rco_5fscrolled_5ffullscreen_5fmode',['rco_scrolled_fullscreen_mode',['../rcw_8c.html#a7b60c2cb02c4a893d8d2054f0bb53790',1,'rcw.c']]],
+ ['rco_5fset_5fscrolled_5fpolicy',['rco_set_scrolled_policy',['../rcw_8c.html#ae0f54fdd4d7526ba4e110d04d7fb2844',1,'rcw.c']]],
+ ['rco_5fshow_5fmessage_5fpanel',['rco_show_message_panel',['../rcw_8c.html#ac5eda3a29c88ac88d80b5775e39ffcb4',1,'rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c'],['../rcw_8h.html#ac5eda3a29c88ac88d80b5775e39ffcb4',1,'rco_show_message_panel(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;rcw.c']]],
+ ['rco_5fswitch_5fpage_5factivate',['rco_switch_page_activate',['../rcw_8c.html#acfe9306fecab6d93b5ab51571b69fc6a',1,'rcw.c']]],
+ ['rco_5fupdate_5ftoolbar',['rco_update_toolbar',['../rcw_8c.html#a319e8c05fa25a57aa34875d48e182726',1,'rcw.c']]],
+ ['rco_5fupdate_5ftoolbar_5fautofit_5fbutton',['rco_update_toolbar_autofit_button',['../rcw_8c.html#a23692809213a6dfe683afe3d0dece3aa',1,'rcw.c']]],
+ ['rco_5fviewport_5ffullscreen_5fmode',['rco_viewport_fullscreen_mode',['../rcw_8c.html#a3463779f231df73defb8ff86f27ec9ef',1,'rcw.c']]],
+ ['rcw_5fafter_5fconfigure_5fscrolled',['rcw_after_configure_scrolled',['../rcw_8c.html#a29df78f116c127e22a561beb4d8bae51',1,'rcw.c']]],
+ ['rcw_5fappend_5fnew_5fpage',['rcw_append_new_page',['../rcw_8c.html#ad5a67ac52028302d5681cceaf9ac46bc',1,'rcw.c']]],
+ ['rcw_5fclass_5finit',['rcw_class_init',['../rcw_8c.html#a36b924d7fb7ccb1418912ea4c47620a4',1,'rcw.c']]],
+ ['rcw_5fclose_5fall_5fconnections',['rcw_close_all_connections',['../rcw_8c.html#a6bd6b600564be75e95870a0375c0a4d3',1,'rcw.c']]],
+ ['rcw_5fcreate_5ffloating_5ftoolbar',['rcw_create_floating_toolbar',['../rcw_8c.html#ad3c92ea50f889b1252614586d9f7a23e',1,'rcw.c']]],
+ ['rcw_5fcreate_5ffullscreen',['rcw_create_fullscreen',['../rcw_8c.html#a11bb04a25b6c8a79af3cb34f22e28dd8',1,'rcw.c']]],
+ ['rcw_5fcreate_5fnotebook',['rcw_create_notebook',['../rcw_8c.html#a1fce938658aee966b1ccffb4a0ab4cff',1,'rcw.c']]],
+ ['rcw_5fcreate_5foverlay_5fftb_5foverlay',['rcw_create_overlay_ftb_overlay',['../rcw_8c.html#a0cb504e984baf9ad7ba06b03da6ab746',1,'rcw.c']]],
+ ['rcw_5fcreate_5fscrolled',['rcw_create_scrolled',['../rcw_8c.html#a95c64795004c7778c56068abeb1a6bd0',1,'rcw.c']]],
+ ['rcw_5fcreate_5ftoolbar',['rcw_create_toolbar',['../rcw_8c.html#a2caca4bce3a8ec22a99ede169746af86',1,'rcw.c']]],
+ ['rcw_5fdelayed_5fwindow_5fpresent',['rcw_delayed_window_present',['../rcw_8c.html#add97977d493b64a6ea1c54ee7412f2c9',1,'rcw.c']]],
+ ['rcw_5fdelete',['rcw_delete',['../rcw_8c.html#adae469553aa0647d0df5d88b180e7cd7',1,'rcw_delete(RemminaConnectionWindow *cnnwin):&#160;rcw.c'],['../rcw_8h.html#adae469553aa0647d0df5d88b180e7cd7',1,'rcw_delete(RemminaConnectionWindow *cnnwin):&#160;rcw.c']]],
+ ['rcw_5fdelete_5fevent',['rcw_delete_event',['../rcw_8c.html#a07802fc420dc07560fe937d29172573c',1,'rcw.c']]],
+ ['rcw_5fdestroy',['rcw_destroy',['../rcw_8c.html#aa7de86386944c333dc9f4bf87f819f9c',1,'rcw.c']]],
+ ['rcw_5ffind',['rcw_find',['../rcw_8c.html#a6a61db497c95cf18aea60b2a3a5a31c0',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fhide',['rcw_floating_toolbar_hide',['../rcw_8c.html#a423aaf9a4d3eed6dac67de5a8cc24a18',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fmake_5finvisible',['rcw_floating_toolbar_make_invisible',['../rcw_8c.html#a544a61088b93ffc31a79554c70d97dff',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fon_5fenter',['rcw_floating_toolbar_on_enter',['../rcw_8c.html#a961e539a6f6ccbe73a301869c6960ab6',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fon_5fscroll',['rcw_floating_toolbar_on_scroll',['../rcw_8c.html#a2f4b8ba7f51a4bf6e12a585177d55758',1,'rcw.c']]],
+ ['rcw_5ffloating_5ftoolbar_5fshow',['rcw_floating_toolbar_show',['../rcw_8c.html#a10b9b689406b4b3071ace2b7c8562aa7',1,'rcw.c']]],
+ ['rcw_5ffocus_5fin',['rcw_focus_in',['../rcw_8c.html#a8a789be4e849f79bf8064bc47ba85ea3',1,'rcw.c']]],
+ ['rcw_5ffocus_5fout',['rcw_focus_out',['../rcw_8c.html#a010af24147287ef89f605e71ef315475',1,'rcw.c']]],
+ ['rcw_5fftb_5fdrag_5fbegin',['rcw_ftb_drag_begin',['../rcw_8c.html#a73532ae8f8fa05711035bc3d4c82ac2a',1,'rcw.c']]],
+ ['rcw_5fftb_5fdrag_5fdrop',['rcw_ftb_drag_drop',['../rcw_8c.html#a4ab5e41b9227097a9eec6f73dcb453ea',1,'rcw.c']]],
+ ['rcw_5ffullscreen_5foption_5fpopdown',['rcw_fullscreen_option_popdown',['../rcw_8c.html#a9ffed90419a36560bf0c4d213a853c28',1,'rcw.c']]],
+ ['rcw_5fget_5fcnnobj_5fat_5fpage',['rcw_get_cnnobj_at_page',['../rcw_8c.html#aaad3184fedef1eccd1f92d8ef43cca44',1,'rcw.c']]],
+ ['rcw_5fget_5ftype',['rcw_get_type',['../rcw_8h.html#a2e3ebdd3e3450d651445ab54a7113f8b',1,'rcw.h']]],
+ ['rcw_5fget_5fvisible_5fcnnobj',['rcw_get_visible_cnnobj',['../rcw_8c.html#affd8155adb04dc7ffbb7f4fff379dc47',1,'rcw.c']]],
+ ['rcw_5fgrab_5ffocus',['rcw_grab_focus',['../rcw_8c.html#a7189a0f1289a24fc5cc9fdfaf37244f3',1,'rcw.c']]],
+ ['rcw_5fhostkey_5ffunc',['rcw_hostkey_func',['../rcw_8c.html#acb1b2ab629603837e08f8d8de542316d',1,'rcw.c']]],
+ ['rcw_5finit',['rcw_init',['../rcw_8c.html#a10c64d29db5f199eb4c86b0ae5a5a0bd',1,'rcw.c']]],
+ ['rcw_5fkeyboard_5fgrab',['rcw_keyboard_grab',['../rcw_8c.html#a362cc1f55ba8365460c2ebfc0528e01c',1,'rcw.c']]],
+ ['rcw_5fkeyboard_5fgrab_5fretry',['rcw_keyboard_grab_retry',['../rcw_8c.html#a71284e0ce3acb9fce6d4ecf6fea1a3f5',1,'rcw.c']]],
+ ['rcw_5fkp_5fungrab',['rcw_kp_ungrab',['../rcw_8c.html#a82c93bbb1ab73807b366b86928c37946',1,'rcw.c']]],
+ ['rcw_5fmap_5fevent_5ffullscreen',['rcw_map_event_fullscreen',['../rcw_8c.html#a5f5a9e8173b3ce9831f1771089fe778a',1,'rcw.c']]],
+ ['rcw_5fmigrate',['rcw_migrate',['../rcw_8c.html#a0d4ebd91bc6568257031111f56689a76',1,'rcw.c']]],
+ ['rcw_5fnew',['rcw_new',['../rcw_8c.html#a3f9d79b58064438a513d47b4ff690b73',1,'rcw.c']]],
+ ['rcw_5fnotify_5fwidget_5ftoolbar_5fplacement',['rcw_notify_widget_toolbar_placement',['../rcw_8c.html#a60f9f738cfd988cfc7cc39997538e4e0',1,'rcw.c']]],
+ ['rcw_5fon_5fconfigure',['rcw_on_configure',['../rcw_8c.html#a1aa257faac7a8b75c12a286ad20ce823',1,'rcw.c']]],
+ ['rcw_5fon_5fleave_5fnotify_5fevent',['rcw_on_leave_notify_event',['../rcw_8c.html#a27f545a9630a481f4df747478cd227fb',1,'rcw.c']]],
+ ['rcw_5fon_5fnotebook_5fcreate_5fwindow',['rcw_on_notebook_create_window',['../rcw_8c.html#a6d710132769d5f21989af6844c04b43f',1,'rcw.c']]],
+ ['rcw_5fon_5fpage_5fadded',['rcw_on_page_added',['../rcw_8c.html#ad4d4fa75260167fe894750ecd01ee4e9',1,'rcw.c']]],
+ ['rcw_5fon_5fpage_5fremoved',['rcw_on_page_removed',['../rcw_8c.html#a0aef50fe641f959f5715ab7e01bfd23d',1,'rcw.c']]],
+ ['rcw_5fon_5fswitch_5fpage',['rcw_on_switch_page',['../rcw_8c.html#a8f8175377bfbda4794674e619ca0fa8b',1,'rcw.c']]],
+ ['rcw_5fon_5fswitch_5fpage_5ffinalsel',['rcw_on_switch_page_finalsel',['../rcw_8c.html#af99dc9a4135deff0a11c2d56877bad93',1,'rcw.c']]],
+ ['rcw_5fopen_5ffrom_5ffile',['rcw_open_from_file',['../rcw_8c.html#a1b7a771392e15e527005305e71cc2546',1,'rcw_open_from_file(RemminaFile *remminafile):&#160;rcw.c'],['../rcw_8h.html#a1b7a771392e15e527005305e71cc2546',1,'rcw_open_from_file(RemminaFile *remminafile):&#160;rcw.c']]],
+ ['rcw_5fopen_5ffrom_5ffile_5ffull',['rcw_open_from_file_full',['../rcw_8c.html#ad3c2fe67b137c757bd21b79ad5dcc5ff',1,'rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler):&#160;rcw.c'],['../rcw_8h.html#ad3c2fe67b137c757bd21b79ad5dcc5ff',1,'rcw_open_from_file_full(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler):&#160;rcw.c']]],
+ ['rcw_5fopen_5ffrom_5ffilename',['rcw_open_from_filename',['../rcw_8c.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5',1,'rcw_open_from_filename(const gchar *filename):&#160;rcw.c'],['../rcw_8h.html#aa37f2a9c56df0ce1a0dbc32f8989e4b5',1,'rcw_open_from_filename(const gchar *filename):&#160;rcw.c']]],
+ ['rcw_5fplace_5ftoolbar',['rcw_place_toolbar',['../rcw_8c.html#afc62938ff8bcaad6b743f50ecf36d292',1,'rcw.c']]],
+ ['rcw_5fpointer_5fgrab',['rcw_pointer_grab',['../rcw_8c.html#ac3e012d5e499aebb8fcbef55f505f2f3',1,'rcw.c']]],
+ ['rcw_5fpointer_5fungrab',['rcw_pointer_ungrab',['../rcw_8c.html#a177a2ece80374b29bc26595fff8bed42',1,'rcw.c']]],
+ ['rcw_5fscaler_5fexpand',['rcw_scaler_expand',['../rcw_8c.html#ae747a0b62a922df1de61c62092757b19',1,'rcw.c']]],
+ ['rcw_5fscaler_5fkeep_5faspect',['rcw_scaler_keep_aspect',['../rcw_8c.html#abd0a6de10dd92a8a84f24b8e66da5767',1,'rcw.c']]],
+ ['rcw_5fscaler_5foption_5fpopdown',['rcw_scaler_option_popdown',['../rcw_8c.html#a45ecb24606954e4268f2f3c5d7e2e1e0',1,'rcw.c']]],
+ ['rcw_5fset_5fdelete_5fconfirm_5fmode',['rcw_set_delete_confirm_mode',['../rcw_8c.html#a4204fcd726a60493b290dd5590ec693d',1,'rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode):&#160;rcw.c'],['../rcw_8h.html#a4204fcd726a60493b290dd5590ec693d',1,'rcw_set_delete_confirm_mode(RemminaConnectionWindow *cnnwin, RemminaConnectionWindowOnDeleteConfirmMode mode):&#160;rcw.c']]],
+ ['rcw_5fset_5ftoolbar_5fvisibility',['rcw_set_toolbar_visibility',['../rcw_8c.html#a23d848e45205a65618c84bb70b882b3f',1,'rcw.c']]],
+ ['rcw_5fset_5ftooltip',['rcw_set_tooltip',['../rcw_8c.html#acfa15d238ac64558487dee3c320c3701',1,'rcw.c']]],
+ ['rcw_5fstate_5fevent',['rcw_state_event',['../rcw_8c.html#aa9d246740106aae9643ab7edc32923f3',1,'rcw.c']]],
+ ['rcw_5fswitch_5fviewmode',['rcw_switch_viewmode',['../rcw_8c.html#afec9666876babf3ae115fade7470915e',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5fbegin',['rcw_tb_drag_begin',['../rcw_8c.html#a0ca9e87bf2fc3855699f80315d72314b',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5fdrop',['rcw_tb_drag_drop',['../rcw_8c.html#a70d89903e3279a1650dc0684f26ed9c2',1,'rcw.c']]],
+ ['rcw_5ftb_5fdrag_5ffailed',['rcw_tb_drag_failed',['../rcw_8c.html#a14a8e53afac8e750b7839d74dc50c758',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fautofit',['rcw_toolbar_autofit',['../rcw_8c.html#ab4b9810ed2b9ae62933b969c1d9acf3c',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fautofit_5frestore',['rcw_toolbar_autofit_restore',['../rcw_8c.html#aa1044979d82ce73db51117de1262832f',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fdisconnect',['rcw_toolbar_disconnect',['../rcw_8c.html#a0fbf6bfa4022b5f7b3286a68b0a3c446',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fduplicate',['rcw_toolbar_duplicate',['../rcw_8c.html#ac973ca10137b1f285f45785f93966fd5',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fdynres',['rcw_toolbar_dynres',['../rcw_8c.html#a1af82a0b7f5fd27477d6f4c55ed0898b',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ffullscreen',['rcw_toolbar_fullscreen',['../rcw_8c.html#a0cc69ded61b733b2d01a489f1c3c72d3',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ffullscreen_5foption',['rcw_toolbar_fullscreen_option',['../rcw_8c.html#aaedf05f5ff4fadcb28346d1cfc4accab',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fgrab',['rcw_toolbar_grab',['../rcw_8c.html#aa6e4f2ac3249f0e5e537b65d0a7163d6',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fminimize',['rcw_toolbar_minimize',['../rcw_8c.html#a51bb9efba28252cbf96da6797710c919',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpin',['rcw_toolbar_pin',['../rcw_8c.html#aba6a0bf71cc04aa6ac20920d4dd219d2',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fplace_5fsignal',['rcw_toolbar_place_signal',['../rcw_8c.html#a366b8717c9906fdb1938659dc2ab1b03',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences',['rcw_toolbar_preferences',['../rcw_8c.html#a4482a8c41ac6707436e8eb847867dc1a',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fcheck',['rcw_toolbar_preferences_check',['../rcw_8c.html#a366d1ea1fc39ddc72c384d07d47a25d9',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fpopdown',['rcw_toolbar_preferences_popdown',['../rcw_8c.html#ab4b422fe9972866b74db8b763f8cb42e',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fpreferences_5fradio',['rcw_toolbar_preferences_radio',['../rcw_8c.html#ad13167e478305c3fae8a4cea1d0e2f76',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscaled_5fmode',['rcw_toolbar_scaled_mode',['../rcw_8c.html#a1647e25501f5ee2852dfd27a10e0d8c8',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscaler_5foption',['rcw_toolbar_scaler_option',['../rcw_8c.html#a4cfb767a626e63e3003ddbe0a8fea8a1',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fscreenshot',['rcw_toolbar_screenshot',['../rcw_8c.html#a604971831f6ef8dd750ad6d29abb73a9',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fswitch_5fpage',['rcw_toolbar_switch_page',['../rcw_8c.html#a7d26c5dd2d9e941486a7a9bfe0f81304',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5fswitch_5fpage_5fpopdown',['rcw_toolbar_switch_page_popdown',['../rcw_8c.html#a03311f33ff921f943f6edbbc1867d1ec',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ftools',['rcw_toolbar_tools',['../rcw_8c.html#a7abfab8a6281126baaf5f443ff4adda1',1,'rcw.c']]],
+ ['rcw_5ftoolbar_5ftools_5fpopdown',['rcw_toolbar_tools_popdown',['../rcw_8c.html#ae0243af9dbe4b388a39ea432c3e580e5',1,'rcw.c']]],
+ ['rcw_5fupdate_5fnotebook',['rcw_update_notebook',['../rcw_8c.html#a327f62be43b7f312982f9e22b86a2867',1,'rcw.c']]],
+ ['rcw_5fupdate_5fpin',['rcw_update_pin',['../rcw_8c.html#a0e69db7ebd2d2998d34fbf6853ce2f27',1,'rcw.c']]],
+ ['rcw_5fupdate_5ftag',['rcw_update_tag',['../rcw_8c.html#af8d1a8843f974fb8170d76f945a72080',1,'rcw.c']]],
+ ['rcw_5fupdate_5ftoolbar_5fopacity',['rcw_update_toolbar_opacity',['../rcw_8c.html#a5929f8c1c1513c0fd75a88cd4721b8a4',1,'rcw.c']]],
+ ['remmina_5fabout_5fopen',['remmina_about_open',['../remmina__about_8c.html#a3ad768979e0945a162018c6d596c90f4',1,'remmina_about_open(GtkWindow *parent):&#160;remmina_about.c'],['../remmina__about_8h.html#a290fcc05be17d320f1e5ab8d13f41fb8',1,'remmina_about_open(GtkWindow *parent):&#160;remmina_about.c']]],
+ ['remmina_5fapplet_5fmenu_5fadd_5fgroup',['remmina_applet_menu_add_group',['../remmina__applet__menu_8c.html#a9103d33954ab8afdfe3e3892db7caabb',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fadd_5fitem',['remmina_applet_menu_add_item',['../remmina__applet__menu_8c.html#a261d344be12cd270d8b81a26e1ad9d23',1,'remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#a261d344be12cd270d8b81a26e1ad9d23',1,'remmina_applet_menu_add_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fclass_5finit',['remmina_applet_menu_class_init',['../remmina__applet__menu_8c.html#a81048877782205b26ce08f95e8ca8fa8',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fdestroy',['remmina_applet_menu_destroy',['../remmina__applet__menu_8c.html#ab009d32f845179fb9ab0367b4b13089f',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fget_5ftype',['remmina_applet_menu_get_type',['../remmina__applet__menu_8h.html#a1b16f50f3393c9053ee5b22eec039197',1,'remmina_applet_menu.h']]],
+ ['remmina_5fapplet_5fmenu_5fincrease_5fgroup_5fcount',['remmina_applet_menu_increase_group_count',['../remmina__applet__menu_8c.html#a00ccc046ebf9862d7030dac635a86dc6',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5finit',['remmina_applet_menu_init',['../remmina__applet__menu_8c.html#a373d0689c9970d3c8f0aba53abe272d5',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fclass_5finit',['remmina_applet_menu_item_class_init',['../remmina__applet__menu__item_8c.html#a39098e541e586dd05b5e42022ccf2701',1,'remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fcompare',['remmina_applet_menu_item_compare',['../remmina__applet__menu__item_8c.html#a09acb894371400d720c9e4ce20024f08',1,'remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data):&#160;remmina_applet_menu_item.c'],['../remmina__applet__menu__item_8h.html#a09acb894371400d720c9e4ce20024f08',1,'remmina_applet_menu_item_compare(gconstpointer a, gconstpointer b, gpointer user_data):&#160;remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fget_5ftype',['remmina_applet_menu_item_get_type',['../remmina__applet__menu__item_8h.html#ad77db14bb39fdbf9422f5f4d6be821ef',1,'remmina_applet_menu_item.h']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5finit',['remmina_applet_menu_item_init',['../remmina__applet__menu__item_8c.html#ac9535ef8b78ee42650a60a29b04f38d0',1,'remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fitem_5fnew',['remmina_applet_menu_item_new',['../remmina__applet__menu__item_8c.html#a8518d5abbcb0cf2ff0923e41d55e1a96',1,'remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...):&#160;remmina_applet_menu_item.c'],['../remmina__applet__menu__item_8h.html#a8518d5abbcb0cf2ff0923e41d55e1a96',1,'remmina_applet_menu_item_new(RemminaAppletMenuItemType item_type,...):&#160;remmina_applet_menu_item.c']]],
+ ['remmina_5fapplet_5fmenu_5fnew',['remmina_applet_menu_new',['../remmina__applet__menu_8c.html#adc65e597bc73ddbda587caa929efe872',1,'remmina_applet_menu_new(void):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#adc65e597bc73ddbda587caa929efe872',1,'remmina_applet_menu_new(void):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fon_5fitem_5factivate',['remmina_applet_menu_on_item_activate',['../remmina__applet__menu_8c.html#ae92f8313a24f778e5ef39fdfb92a73f2',1,'remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fpopulate',['remmina_applet_menu_populate',['../remmina__applet__menu_8c.html#a8029065504aef0e850d79f3823d18f66',1,'remmina_applet_menu_populate(RemminaAppletMenu *menu):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#a8029065504aef0e850d79f3823d18f66',1,'remmina_applet_menu_populate(RemminaAppletMenu *menu):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fregister_5fitem',['remmina_applet_menu_register_item',['../remmina__applet__menu_8c.html#abb924051b4e37930bed6aed12b653751',1,'remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#abb924051b4e37930bed6aed12b653751',1,'remmina_applet_menu_register_item(RemminaAppletMenu *menu, RemminaAppletMenuItem *menuitem):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplet_5fmenu_5fset_5fhide_5fcount',['remmina_applet_menu_set_hide_count',['../remmina__applet__menu_8c.html#af2baabd1750dd1a95a0b36e601d99cfe',1,'remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count):&#160;remmina_applet_menu.c'],['../remmina__applet__menu_8h.html#af2baabd1750dd1a95a0b36e601d99cfe',1,'remmina_applet_menu_set_hide_count(RemminaAppletMenu *menu, gboolean hide_count):&#160;remmina_applet_menu.c']]],
+ ['remmina_5fapplication_5fcondexit',['remmina_application_condexit',['../remmina__exec_8c.html#aaa67e07e2426828d7e7b9b30d2038d31',1,'remmina_application_condexit(RemminaCondExitType why):&#160;remmina_exec.c'],['../remmina__exec_8h.html#aaa67e07e2426828d7e7b9b30d2038d31',1,'remmina_application_condexit(RemminaCondExitType why):&#160;remmina_exec.c']]],
+ ['remmina_5favahi_5fbrowse_5fcallback',['remmina_avahi_browse_callback',['../remmina__avahi_8c.html#a1275ffa50fdda727520512496ef6f80d',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fclient_5fcallback',['remmina_avahi_client_callback',['../remmina__avahi_8c.html#a06890e127f3d58d93e6ba31051c816d7',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5ffree',['remmina_avahi_free',['../remmina__avahi_8c.html#a2710b09d09507f1c91ba8a2bd01b0436',1,'remmina_avahi_free(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a2710b09d09507f1c91ba8a2bd01b0436',1,'remmina_avahi_free(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fiterate',['remmina_avahi_iterate',['../remmina__avahi_8c.html#ab7c9f88b990e204955c7e02f6fee17c9',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fnew',['remmina_avahi_new',['../remmina__avahi_8c.html#a43319a5eff255c9b41dc8848cea6185f',1,'remmina_avahi_new(void):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#ad63b4dc3fa2e7fa83bd700ad84608392',1,'remmina_avahi_new(void):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fresolve_5fcallback',['remmina_avahi_resolve_callback',['../remmina__avahi_8c.html#afc3091cc602d3fa0670405c6c17125de',1,'remmina_avahi.c']]],
+ ['remmina_5favahi_5fstart',['remmina_avahi_start',['../remmina__avahi_8c.html#a1ec851b22607dd1171ecdd5cca735b71',1,'remmina_avahi_start(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71',1,'remmina_avahi_start(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5favahi_5fstop',['remmina_avahi_stop',['../remmina__avahi_8c.html#a74b9962d6ef442e9c0a84293e2eaed30',1,'remmina_avahi_stop(RemminaAvahi *ga):&#160;remmina_avahi.c'],['../remmina__avahi_8h.html#a74b9962d6ef442e9c0a84293e2eaed30',1,'remmina_avahi_stop(RemminaAvahi *ga):&#160;remmina_avahi.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5factivate',['remmina_cell_renderer_pixbuf_activate',['../remmina__ftp__client_8c.html#a67ff5ecb780875110ea8df8c9cdb4447',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fclass_5finit',['remmina_cell_renderer_pixbuf_class_init',['../remmina__ftp__client_8c.html#ab879acb7e463e1b62284ee6a24e3a185',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fget_5ftype',['remmina_cell_renderer_pixbuf_get_type',['../remmina__ftp__client_8c.html#a79fcc8693c4264aadb53d36149fae18b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5finit',['remmina_cell_renderer_pixbuf_init',['../remmina__ftp__client_8c.html#a49d1fee26f8c7fb210b46d83f92b08e2',1,'remmina_ftp_client.c']]],
+ ['remmina_5fcell_5frenderer_5fpixbuf_5fnew',['remmina_cell_renderer_pixbuf_new',['../remmina__ftp__client_8c.html#a4b4e260fb27466bfd66cb55e5b135715',1,'remmina_ftp_client.c']]],
+ ['remmina_5fchat_5fwindow_5fappend_5ftext',['remmina_chat_window_append_text',['../remmina__chat__window_8c.html#adfffc86df4856aabe2593de07742985f',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fclass_5finit',['remmina_chat_window_class_init',['../remmina__chat__window_8c.html#a214b78e2cd8f655b1227fcd4ae93d457',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fclear_5fsend_5ftext',['remmina_chat_window_clear_send_text',['../remmina__chat__window_8c.html#a4372d0db2832db8ed190390580f1dd1e',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fget_5ftype',['remmina_chat_window_get_type',['../remmina__chat__window_8h.html#a5388d221b74aacf623628fe5a2f83782',1,'remmina_chat_window.h']]],
+ ['remmina_5fchat_5fwindow_5finit',['remmina_chat_window_init',['../remmina__chat__window_8c.html#a8c57f946c13737687a1cdb9b933509e9',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fnew',['remmina_chat_window_new',['../remmina__chat__window_8c.html#a5e4fa655fddf361fed13bbd759bea24f',1,'remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with):&#160;remmina_chat_window.c'],['../remmina__chat__window_8h.html#a5e4fa655fddf361fed13bbd759bea24f',1,'remmina_chat_window_new(GtkWindow *parent, const gchar *chat_with):&#160;remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5freceive',['remmina_chat_window_receive',['../remmina__chat__window_8c.html#a45724aed5474dd741563ffbf89237022',1,'remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text):&#160;remmina_chat_window.c'],['../remmina__chat__window_8h.html#a45724aed5474dd741563ffbf89237022',1,'remmina_chat_window_receive(RemminaChatWindow *window, const gchar *name, const gchar *text):&#160;remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fscroll_5fproc',['remmina_chat_window_scroll_proc',['../remmina__chat__window_8c.html#a2a4bc3ded8ebf89c8f60d9b565fe2d70',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fsend',['remmina_chat_window_send',['../remmina__chat__window_8c.html#a62d706863c048c8ddb580786c6abcf50',1,'remmina_chat_window.c']]],
+ ['remmina_5fchat_5fwindow_5fsend_5ftext_5fon_5fkey',['remmina_chat_window_send_text_on_key',['../remmina__chat__window_8c.html#a55ac61e450ce6d37e57fcb5ac3ed507a',1,'remmina_chat_window.c']]],
+ ['remmina_5fcrypt_5fdecrypt',['remmina_crypt_decrypt',['../remmina__crypt_8c.html#a3fe2fa245d401146adf02a3a8f996ab9',1,'remmina_crypt_decrypt(const gchar *str):&#160;remmina_crypt.c'],['../remmina__crypt_8h.html#a8e855b5daf93b5b8891afcbe63676f8d',1,'remmina_crypt_decrypt(const gchar *str):&#160;remmina_crypt.c']]],
+ ['remmina_5fcrypt_5fencrypt',['remmina_crypt_encrypt',['../remmina__crypt_8c.html#aa02cf0fed3eb68d6a89815c3ba3bf7b1',1,'remmina_crypt_encrypt(const gchar *str):&#160;remmina_crypt.c'],['../remmina__crypt_8h.html#a04a19371f266a377499c4b0e7c8f32b9',1,'remmina_crypt_encrypt(const gchar *str):&#160;remmina_crypt.c']]],
+ ['remmina_5fcrypt_5finit',['remmina_crypt_init',['../remmina__crypt_8c.html#ae097c169aefdd5d83a57fc1bde511171',1,'remmina_crypt.c']]],
+ ['remmina_5fdebug',['remmina_debug',['../remmina__log_8c.html#aa90e751e7bd5d477179188273c095d9a',1,'remmina_debug(const gchar *fmt,...):&#160;remmina_log.c'],['../remmina__log_8h.html#aa90e751e7bd5d477179188273c095d9a',1,'remmina_debug(const gchar *fmt,...):&#160;remmina_log.c']]],
+ ['remmina_5fexec_5fautostart_5fcb',['remmina_exec_autostart_cb',['../remmina__exec_8c.html#ae3299f9cf136cb759dc052ee799b1f0d',1,'remmina_exec.c']]],
+ ['remmina_5fexec_5fcommand',['remmina_exec_command',['../remmina__exec_8c.html#a424cabdcff647797061e7482049d62a7',1,'remmina_exec_command(RemminaCommandType command, const gchar *data):&#160;remmina_exec.c'],['../remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7',1,'remmina_exec_command(RemminaCommandType command, const gchar *data):&#160;remmina_exec.c']]],
+ ['remmina_5fexec_5fexitremmina',['remmina_exec_exitremmina',['../remmina__exec_8c.html#a206abe0e916081b29c5faa52330e2271',1,'remmina_exec_exitremmina():&#160;remmina_exec.c'],['../remmina__exec_8h.html#adbaf105af1039e44ba503a8d7174535f',1,'remmina_exec_exitremmina(void):&#160;remmina_exec.c']]],
+ ['remmina_5fexec_5fget_5fbuild_5fconfig',['remmina_exec_get_build_config',['../remmina__exec_8c.html#a93f5633a6348dc1df1a5723b3054a2a3',1,'remmina_exec.c']]],
+ ['remmina_5fexec_5fset_5fsetting',['remmina_exec_set_setting',['../remmina__exec_8c.html#a4e202866339a104ffdbfa519cfbcdca9',1,'remmina_exec_set_setting(gchar *profilefilename, gchar **settings):&#160;remmina_exec.c'],['../remmina__exec_8h.html#a4e202866339a104ffdbfa519cfbcdca9',1,'remmina_exec_set_setting(gchar *profilefilename, gchar **settings):&#160;remmina_exec.c']]],
+ ['remmina_5fext_5fexec_5fnew',['remmina_ext_exec_new',['../remmina__ext__exec_8c.html#a7c81795162a70d06294fdf935ea210d7',1,'remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type):&#160;remmina_ext_exec.c'],['../remmina__ext__exec_8h.html#a7c81795162a70d06294fdf935ea210d7',1,'remmina_ext_exec_new(RemminaFile *remminafile, const char *remmina_ext_exec_type):&#160;remmina_ext_exec.c']]],
+ ['remmina_5fexternal_5ftools_5ffrom_5ffilename',['remmina_external_tools_from_filename',['../remmina__external__tools_8c.html#abe70273f7d1cbab092c6f6017695c56d',1,'remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename):&#160;remmina_external_tools.c'],['../remmina__external__tools_8h.html#a32c8a5f638e3a38753d43fbeb3094e85',1,'remmina_external_tools_from_filename(RemminaMain *remminamain, gchar *remminafilename):&#160;remmina_external_tools.c']]],
+ ['remmina_5fexternal_5ftools_5flauncher',['remmina_external_tools_launcher',['../remmina__external__tools_8c.html#ae32c6ba6b03dffd2ccbf70ea7ab60c60',1,'remmina_external_tools.c']]],
+ ['remmina_5ffile_5fcopy',['remmina_file_copy',['../remmina__file_8c.html#ac1685edf35a793a396ce039d7eec5343',1,'remmina_file_copy(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ac1685edf35a793a396ce039d7eec5343',1,'remmina_file_copy(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdelete',['remmina_file_delete',['../remmina__file_8c.html#a55f66f2bb81bf427d6837e1adb7fe1d4',1,'remmina_file_delete(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#a55f66f2bb81bf427d6837e1adb7fe1d4',1,'remmina_file_delete(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdup',['remmina_file_dup',['../remmina__file_8c.html#a3fb992fced83e0f1c4e4e3c8d2206be5',1,'remmina_file_dup(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a3fb992fced83e0f1c4e4e3c8d2206be5',1,'remmina_file_dup(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fdup_5ftemp_5fprotocol',['remmina_file_dup_temp_protocol',['../remmina__file_8c.html#a52a0986eaf54c9e606ce9cdf8bb57e60',1,'remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol):&#160;remmina_file.c'],['../remmina__file_8h.html#a52a0986eaf54c9e606ce9cdf8bb57e60',1,'remmina_file_dup_temp_protocol(RemminaFile *remminafile, const gchar *new_protocol):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5feditor_5fbrowse_5favahi',['remmina_file_editor_browse_avahi',['../remmina__file__editor_8c.html#aa3acf0470349d706d15fa751e982fd05',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fbrowse_5fresolution',['remmina_file_editor_browse_resolution',['../remmina__file__editor_8c.html#a51b9fe336d9068ffc488ef55adc9eac4',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fbutton_5fon_5ftoggled',['remmina_file_editor_button_on_toggled',['../remmina__file__editor_8c.html#a112a0fd5bf7d5693b9cb717c850637cb',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcheck_5fprofile',['remmina_file_editor_check_profile',['../remmina__file__editor_8c.html#add382dd8f40444b928e78b293a86a257',1,'remmina_file_editor_check_profile(RemminaFileEditor *gfe):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#add382dd8f40444b928e78b293a86a257',1,'remmina_file_editor_check_profile(RemminaFileEditor *gfe):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fclass_5finit',['remmina_file_editor_class_init',['../remmina__file__editor_8c.html#a7f1406c817183d78a801668a10d73e0b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fall_5fsettings',['remmina_file_editor_create_all_settings',['../remmina__file__editor_8c.html#a6415f73260076747c4f933af7f9f4b38',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fcheck',['remmina_file_editor_create_check',['../remmina__file__editor_8c.html#a0688fb26bba7dbc0708949bd9993fcb9',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fchooser',['remmina_file_editor_create_chooser',['../remmina__file__editor_8c.html#afadc998c0d7ea8d1bf2883e336e18f89',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fcombo',['remmina_file_editor_create_combo',['../remmina__file__editor_8c.html#afbc933a1aea81d64db71de8ad5ae1355',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fnotebook_5fcontainer',['remmina_file_editor_create_notebook_container',['../remmina__file__editor_8c.html#a3df3718727200d865f9f977435db30ea',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fnotebook_5ftab',['remmina_file_editor_create_notebook_tab',['../remmina__file__editor_8c.html#aecbc005c39cdf4fab4779090f11a3556',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fpassword',['remmina_file_editor_create_password',['../remmina__file__editor_8c.html#a03bb3c4cc7a4be4eeee29dc287e33a23',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fresolution',['remmina_file_editor_create_resolution',['../remmina__file__editor_8c.html#afad358c6e3a5918416c6eb036157d8e5',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fselect',['remmina_file_editor_create_select',['../remmina__file__editor_8c.html#ad80ab042ac78231e88473aab8cfab877',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fserver',['remmina_file_editor_create_server',['../remmina__file__editor_8c.html#af7edb004da0ecc48277c1b656f2649ae',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fsettings',['remmina_file_editor_create_settings',['../remmina__file__editor_8c.html#a727f967cf81d4af3f953046b0c4cf08d',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fssh_5fprivatekey',['remmina_file_editor_create_ssh_privatekey',['../remmina__file__editor_8c.html#ab39d33637d0059aa67c896b90bc316f1',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5fssh_5ftunnel_5ftab',['remmina_file_editor_create_ssh_tunnel_tab',['../remmina__file__editor_8c.html#ab6e562792eb63ec43ed7f9a4b6687c23',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fcreate_5ftext',['remmina_file_editor_create_text',['../remmina__file__editor_8c.html#a15ee56057b40b31f40520048470f404b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fdestroy',['remmina_file_editor_destroy',['../remmina__file__editor_8c.html#a6eb0bcee764064d6a7dd84c015d9ed4f',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fentry_5fon_5fchanged',['remmina_file_editor_entry_on_changed',['../remmina__file__editor_8c.html#a287b79ac0e199393f391655ab5cbb55b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5ffile_5fsave',['remmina_file_editor_file_save',['../remmina__file__editor_8c.html#a3866832d550ceac91d608900df4c8056',1,'remmina_file_editor_file_save(RemminaFileEditor *gfe):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#a3866832d550ceac91d608900df4c8056',1,'remmina_file_editor_file_save(RemminaFileEditor *gfe):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fget_5ftype',['remmina_file_editor_get_type',['../remmina__file__editor_8h.html#ac5b20a46b2d95b1e5e4e09006e0ee04f',1,'remmina_file_editor.h']]],
+ ['remmina_5ffile_5feditor_5finit',['remmina_file_editor_init',['../remmina__file__editor_8c.html#a9afd8d41c66f547320930eb331f3124d',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fiterate_5fprotocol',['remmina_file_editor_iterate_protocol',['../remmina__file__editor_8c.html#afc37e2e9dbe8f0c8bcf1a76d0c54ea1b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew',['remmina_file_editor_new',['../remmina__file__editor_8c.html#aa4e8657ca722e4cce3f3c42c0cfec51e',1,'remmina_file_editor_new(void):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa4e8657ca722e4cce3f3c42c0cfec51e',1,'remmina_file_editor_new(void):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5fcopy',['remmina_file_editor_new_copy',['../remmina__file__editor_8c.html#aa5c50852f8569f075eec5d5db30c2ebf',1,'remmina_file_editor_new_copy(const gchar *filename):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa5c50852f8569f075eec5d5db30c2ebf',1,'remmina_file_editor_new_copy(const gchar *filename):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffrom_5ffile',['remmina_file_editor_new_from_file',['../remmina__file__editor_8c.html#a08327d6951c345808628dbb5784aba06',1,'remmina_file_editor_new_from_file(RemminaFile *remminafile):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#a08327d6951c345808628dbb5784aba06',1,'remmina_file_editor_new_from_file(RemminaFile *remminafile):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffrom_5ffilename',['remmina_file_editor_new_from_filename',['../remmina__file__editor_8c.html#aa9345cfe3fb32d326b652e96ee55eaea',1,'remmina_file_editor_new_from_filename(const gchar *filename):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#aa9345cfe3fb32d326b652e96ee55eaea',1,'remmina_file_editor_new_from_filename(const gchar *filename):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fnew_5ffull',['remmina_file_editor_new_full',['../remmina__file__editor_8c.html#ab563344276cbcdf0fcea05b0b64c7aeb',1,'remmina_file_editor_new_full(const gchar *server, const gchar *protocol):&#160;remmina_file_editor.c'],['../remmina__file__editor_8h.html#ab563344276cbcdf0fcea05b0b64c7aeb',1,'remmina_file_editor_new_full(const gchar *server, const gchar *protocol):&#160;remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fcancel',['remmina_file_editor_on_cancel',['../remmina__file__editor_8c.html#aaa55ab55c6806aef6765eb01577365f3',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fconnect',['remmina_file_editor_on_connect',['../remmina__file__editor_8c.html#a73b8581fd1fd77532b748d91a2951f25',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fdefault',['remmina_file_editor_on_default',['../remmina__file__editor_8c.html#afcc5ee6fcd22686b716fbe595cb210a6',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5frealize',['remmina_file_editor_on_realize',['../remmina__file__editor_8c.html#a880e8e6aee571b91eeb7f5d2f60e210b',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fsave',['remmina_file_editor_on_save',['../remmina__file__editor_8c.html#ac2a5cf9cdcf640986e245eb04be9c4ad',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fon_5fsave_5fconnect',['remmina_file_editor_on_save_connect',['../remmina__file__editor_8c.html#a57224f3f69f04f398de563b71be6b18e',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fprotocol_5fcombo_5fon_5fchanged',['remmina_file_editor_protocol_combo_on_changed',['../remmina__file__editor_8c.html#a333de350f1b07add2d0fd06320c80d16',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fsave_5fssh_5ftunnel_5ftab',['remmina_file_editor_save_ssh_tunnel_tab',['../remmina__file__editor_8c.html#a99984deb4b5a3b873b26c0c9cf8268b7',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fauth_5fpublickey_5fradio_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_auth_publickey_radio_on_toggled',['../remmina__file__editor_8c.html#ad0cf3a5b5f5f83e14f9d73c4f2460dca',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fenabled_5fcheck_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_enabled_check_on_toggled',['../remmina__file__editor_8c.html#a8a7f3ce69255bf413ef8fa841af3d019',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fssh_5ftunnel_5fserver_5fcustom_5fradio_5fon_5ftoggled',['remmina_file_editor_ssh_tunnel_server_custom_radio_on_toggled',['../remmina__file__editor_8c.html#a5ea3f796c3a46aeb01b2f13f4a3d40a9',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate',['remmina_file_editor_update',['../remmina__file__editor_8c.html#ab5583c8b2ff4cfa003d7bdc69cff0067',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate_5fresolution',['remmina_file_editor_update_resolution',['../remmina__file__editor_8c.html#a51a45d872a9e7a0b06d25aef592a6e3a',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5feditor_5fupdate_5fsettings',['remmina_file_editor_update_settings',['../remmina__file__editor_8c.html#a1a88820e6278cc50eb59a6333c7f40dd',1,'remmina_file_editor.c']]],
+ ['remmina_5ffile_5fformat_5fproperties',['remmina_file_format_properties',['../remmina__file_8c.html#afd8b12f3d84b4e201b9f465d5b8e0d03',1,'remmina_file_format_properties(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#afd8b12f3d84b4e201b9f465d5b8e0d03',1,'remmina_file_format_properties(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5ffree',['remmina_file_free',['../remmina__file_8c.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7',1,'remmina_file_free(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#abd2f06bf0a5ddcf7156e5ef7d0c8d4d7',1,'remmina_file_free(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fgenerate_5ffilename',['remmina_file_generate_filename',['../remmina__file_8c.html#ac952f8ddb715314f11cef1ccc513fb7e',1,'remmina_file_generate_filename(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#ac952f8ddb715314f11cef1ccc513fb7e',1,'remmina_file_generate_filename(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fdatadir',['remmina_file_get_datadir',['../remmina__file__manager_8c.html#aa65bc30beb59d607ba430d966e7e27f5',1,'remmina_file_get_datadir(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#aa65bc30beb59d607ba430d966e7e27f5',1,'remmina_file_get_datadir(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fget_5fdatetime',['remmina_file_get_datetime',['../remmina__file_8c.html#a96abbfdc183d1e82fdffd6445d611ffe',1,'remmina_file_get_datetime(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe',1,'remmina_file_get_datetime(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5ffilename',['remmina_file_get_filename',['../remmina__file_8c.html#ad1e4f3a0f64cd98e301044b6c38a1f1d',1,'remmina_file_get_filename(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#ad1e4f3a0f64cd98e301044b6c38a1f1d',1,'remmina_file_get_filename(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5ficon_5fname',['remmina_file_get_icon_name',['../remmina__file_8c.html#a2feb8e9e32f3ff4e2fac836e67a77331',1,'remmina_file_get_icon_name(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a2feb8e9e32f3ff4e2fac836e67a77331',1,'remmina_file_get_icon_name(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fint',['remmina_file_get_int',['../remmina__file_8c.html#a4884356c195dcfb4ceacf641a1e74e66',1,'remmina_file_get_int(RemminaFile *remminafile, const gchar *setting, gint default_value):&#160;remmina_file.c'],['../remmina__file_8h.html#a4884356c195dcfb4ceacf641a1e74e66',1,'remmina_file_get_int(RemminaFile *remminafile, const gchar *setting, gint default_value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fkeyfile',['remmina_file_get_keyfile',['../remmina__file_8c.html#a89ec355adbf6e03ad16d7faf810af46f',1,'remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fsecret',['remmina_file_get_secret',['../remmina__file_8c.html#ad514c2523ff0c919ddf535e3dbad9f3a',1,'remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#ad514c2523ff0c919ddf535e3dbad9f3a',1,'remmina_file_get_secret(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fget_5fstring',['remmina_file_get_string',['../remmina__file_8c.html#a8eb1b213d9d08c6ad13683ce05f4355e',1,'remmina_file_get_string(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c'],['../remmina__file_8h.html#a8eb1b213d9d08c6ad13683ce05f4355e',1,'remmina_file_get_string(RemminaFile *remminafile, const gchar *setting):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fload',['remmina_file_load',['../remmina__file_8c.html#ac1cc2d7f827f7d64c7fd3edf10e9383e',1,'remmina_file_load(const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ac1cc2d7f827f7d64c7fd3edf10e9383e',1,'remmina_file_load(const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fmanager_5fadd_5fgroup',['remmina_file_manager_add_group',['../remmina__file__manager_8c.html#a3b100405380ddccce98669a8b46ecc66',1,'remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fdo_5fcopy',['remmina_file_manager_do_copy',['../remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3',1,'remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5ffree_5fgroup_5ftree',['remmina_file_manager_free_group_tree',['../remmina__file__manager_8c.html#a06196f19abc15526514a5aa59a568798',1,'remmina_file_manager_free_group_tree(GNode *node):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a06196f19abc15526514a5aa59a568798',1,'remmina_file_manager_free_group_tree(GNode *node):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fget_5fgroup_5ftree',['remmina_file_manager_get_group_tree',['../remmina__file__manager_8c.html#a6593a3f297f420f012405fa582819857',1,'remmina_file_manager_get_group_tree(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a6593a3f297f420f012405fa582819857',1,'remmina_file_manager_get_group_tree(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fget_5fgroups',['remmina_file_manager_get_groups',['../remmina__file__manager_8c.html#a536edeef371d907ab3936f4d65c3003d',1,'remmina_file_manager_get_groups(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a536edeef371d907ab3936f4d65c3003d',1,'remmina_file_manager_get_groups(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5finit',['remmina_file_manager_init',['../remmina__file__manager_8c.html#afa2b1889dced4289b0f7d7edffc82e72',1,'remmina_file_manager_init(void):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#afa2b1889dced4289b0f7d7edffc82e72',1,'remmina_file_manager_init(void):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fiterate',['remmina_file_manager_iterate',['../remmina__file__manager_8c.html#a55a717aafc046713380bd2c55f29165a',1,'remmina_file_manager_iterate(GFunc func, gpointer user_data):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#a55a717aafc046713380bd2c55f29165a',1,'remmina_file_manager_iterate(GFunc func, gpointer user_data):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmanager_5fload_5ffile',['remmina_file_manager_load_file',['../remmina__file__manager_8c.html#af7b58659604660eb0cb40b0e0f8348ab',1,'remmina_file_manager_load_file(const gchar *filename):&#160;remmina_file_manager.c'],['../remmina__file__manager_8h.html#af7b58659604660eb0cb40b0e0f8348ab',1,'remmina_file_manager_load_file(const gchar *filename):&#160;remmina_file_manager.c']]],
+ ['remmina_5ffile_5fmultipasswd_5fchanger_5fmt',['remmina_file_multipasswd_changer_mt',['../remmina__mpchange_8c.html#a525273e9a7f849c9d072467d216762b2',1,'remmina_mpchange.c']]],
+ ['remmina_5ffile_5fnew',['remmina_file_new',['../remmina__file_8c.html#a5e421ba636d34e21bba5ece463e98892',1,'remmina_file_new(void):&#160;remmina_file.c'],['../remmina__file_8h.html#a5e421ba636d34e21bba5ece463e98892',1,'remmina_file_new(void):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fnew_5fempty',['remmina_file_new_empty',['../remmina__file_8c.html#adab087b7139756f029020a87a5438cfa',1,'remmina_file.c']]],
+ ['remmina_5ffile_5fremove_5fkey',['remmina_file_remove_key',['../remmina__file_8h.html#a1943b63633f87fd2db0a710341c4827b',1,'remmina_file.h']]],
+ ['remmina_5ffile_5fsave',['remmina_file_save',['../remmina__file_8c.html#a8c893a5deec9bc446bd89cc9973416c7',1,'remmina_file_save(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a8c893a5deec9bc446bd89cc9973416c7',1,'remmina_file_save(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5ffilename',['remmina_file_set_filename',['../remmina__file_8c.html#ab03b042504c09c1ad880ac126a703114',1,'remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename):&#160;remmina_file.c'],['../remmina__file_8h.html#ab03b042504c09c1ad880ac126a703114',1,'remmina_file_set_filename(RemminaFile *remminafile, const gchar *filename):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fint',['remmina_file_set_int',['../remmina__file_8c.html#af153b0d289ac93f6ecdaa15d5f3b9b8c',1,'remmina_file_set_int(RemminaFile *remminafile, const gchar *setting, gint value):&#160;remmina_file.c'],['../remmina__file_8h.html#af153b0d289ac93f6ecdaa15d5f3b9b8c',1,'remmina_file_set_int(RemminaFile *remminafile, const gchar *setting, gint value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fstring',['remmina_file_set_string',['../remmina__file_8c.html#a85ca1ca2d0bf9ef29e490c6f4527a954',1,'remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a85ca1ca2d0bf9ef29e490c6f4527a954',1,'remmina_file_set_string(RemminaFile *remminafile, const gchar *setting, const gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fset_5fstring_5fref',['remmina_file_set_string_ref',['../remmina__file_8c.html#a74951c1067a1a5e1341f5e1c1206dec6',1,'remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a74951c1067a1a5e1341f5e1c1206dec6',1,'remmina_file_set_string_ref(RemminaFile *remminafile, const gchar *setting, gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5fstore_5fsecret_5fplugin_5fpassword',['remmina_file_store_secret_plugin_password',['../remmina__file_8c.html#a3be28ff7f5a9b44dc47f92b883a85ac5',1,'remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value):&#160;remmina_file.c'],['../remmina__file_8h.html#a3be28ff7f5a9b44dc47f92b883a85ac5',1,'remmina_file_store_secret_plugin_password(RemminaFile *remminafile, const gchar *key, const gchar *value):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5ftouch',['remmina_file_touch',['../remmina__file_8c.html#a3d19095f74e9b7c92d74f11bd5a39a8c',1,'remmina_file_touch(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c',1,'remmina_file_touch(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5ffile_5funsave_5fpasswords',['remmina_file_unsave_passwords',['../remmina__file_8c.html#a503e53fe49430a5ed310c342c946c014',1,'remmina_file_unsave_passwords(RemminaFile *remminafile):&#160;remmina_file.c'],['../remmina__file_8h.html#a503e53fe49430a5ed310c342c946c014',1,'remmina_file_unsave_passwords(RemminaFile *remminafile):&#160;remmina_file.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fdelete',['remmina_ftp_client_action_delete',['../remmina__ftp__client_8c.html#a5a433db0f6129e0bc4ec2fdc8f7588f6',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fdownload',['remmina_ftp_client_action_download',['../remmina__ftp__client_8c.html#a3872b49a2c0bea73d51d0500c5cee488',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fhome',['remmina_ftp_client_action_home',['../remmina__ftp__client_8c.html#a132ed69d1311855ddf203c1be2913e43',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fparent',['remmina_ftp_client_action_parent',['../remmina__ftp__client_8c.html#a63a298ab2eaf40a27403d45bbd031372',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5frefresh',['remmina_ftp_client_action_refresh',['../remmina__ftp__client_8c.html#a630692ba90aee542f5504fbd845805ee',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5faction_5fupload',['remmina_ftp_client_action_upload',['../remmina__ftp__client_8c.html#afca2c32cbd85de1f9f59141805f565dd',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fadd_5ffile',['remmina_ftp_client_add_file',['../remmina__ftp__client_8c.html#a2e39a69f60d38b46bc603df0ae368aed',1,'remmina_ftp_client_add_file(RemminaFTPClient *client,...):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a2e39a69f60d38b46bc603df0ae368aed',1,'remmina_ftp_client_add_file(RemminaFTPClient *client,...):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5ffiletype_5fpixbuf',['remmina_ftp_client_cell_data_filetype_pixbuf',['../remmina__ftp__client_8c.html#a27d2465531f2031f521280cbb11d3e89',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fpermission',['remmina_ftp_client_cell_data_permission',['../remmina__ftp__client_8c.html#a5464ddd2c0af8c518cd2fe647696e7a4',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fprogress',['remmina_ftp_client_cell_data_progress',['../remmina__ftp__client_8c.html#a437dba2fc4f44f119501e9b53c688dd1',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fprogress_5fpixbuf',['remmina_ftp_client_cell_data_progress_pixbuf',['../remmina__ftp__client_8c.html#a6d8902cb0a498a91f904183369f04696',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fsize',['remmina_ftp_client_cell_data_size',['../remmina__ftp__client_8c.html#aa421a961d286439948f40e787adb5939',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcell_5fdata_5fsize_5fprogress',['remmina_ftp_client_cell_data_size_progress',['../remmina__ftp__client_8c.html#aea63052ec0540ea9a7053da61dd04b8b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fclass_5finit',['remmina_ftp_client_class_init',['../remmina__ftp__client_8c.html#afad9715ec8784756b34f31c1db71d9cf',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fclear_5ffile_5flist',['remmina_ftp_client_clear_file_list',['../remmina__ftp__client_8c.html#af749de0df07992d5b1f30cc32c3556cc',1,'remmina_ftp_client_clear_file_list(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#af749de0df07992d5b1f30cc32c3556cc',1,'remmina_ftp_client_clear_file_list(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fcreate_5ftoolbar',['remmina_ftp_client_create_toolbar',['../remmina__ftp__client_8c.html#a122b99fdc7197921f6e388cd9bf34e0b',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdestroy',['remmina_ftp_client_destroy',['../remmina__ftp__client_8c.html#a27a70ad185d142086368c637b32e60ba',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdir_5fon_5factivate',['remmina_ftp_client_dir_on_activate',['../remmina__ftp__client_8c.html#a3a2dc5070f06ae0fcd25fbfe1587ab5c',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdir_5fon_5fchanged',['remmina_ftp_client_dir_on_changed',['../remmina__ftp__client_8c.html#a67034d0df1a745cf8befb2a95d8045a4',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fdownload',['remmina_ftp_client_download',['../remmina__ftp__client_8c.html#ae4e945748f44486be2a906ab42c6f805',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffile_5flist_5fon_5fbutton_5fpress',['remmina_ftp_client_file_list_on_button_press',['../remmina__ftp__client_8c.html#a51ca0769a65bac59f16c790eb76330c8',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffile_5fselection_5fon_5fchanged',['remmina_ftp_client_file_selection_on_changed',['../remmina__ftp__client_8c.html#a6da87ca47ccd1cbee44a2d00b856c7fc',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ffilter_5fvisible_5ffunc',['remmina_ftp_client_filter_visible_func',['../remmina__ftp__client_8c.html#a1d9c5e03f84f108f4023fa7ecf1ec73a',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5fdir',['remmina_ftp_client_get_dir',['../remmina__ftp__client_8c.html#a709bf3bb81fba206dac478d08d42aadc',1,'remmina_ftp_client_get_dir(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a709bf3bb81fba206dac478d08d42aadc',1,'remmina_ftp_client_get_dir(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5fdownload_5fdir',['remmina_ftp_client_get_download_dir',['../remmina__ftp__client_8c.html#a651eef678fd9d6d1e3bc0712f4517854',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5foverwrite_5fstatus',['remmina_ftp_client_get_overwrite_status',['../remmina__ftp__client_8c.html#a20d0575c04eb24553aeba7d0316e7a2e',1,'remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a20d0575c04eb24553aeba7d0316e7a2e',1,'remmina_ftp_client_get_overwrite_status(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fget_5ftype',['remmina_ftp_client_get_type',['../remmina__ftp__client_8h.html#a42dd1986557438290f9763a4f7586920',1,'remmina_ftp_client.h']]],
+ ['remmina_5fftp_5fclient_5fget_5fwaiting_5ftask',['remmina_ftp_client_get_waiting_task',['../remmina__ftp__client_8c.html#a33e4993b60c36eae89a6a0a943d28141',1,'remmina_ftp_client_get_waiting_task(RemminaFTPClient *client):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a33e4993b60c36eae89a6a0a943d28141',1,'remmina_ftp_client_get_waiting_task(RemminaFTPClient *client):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5finit',['remmina_ftp_client_init',['../remmina__ftp__client_8c.html#a7eb7af10400725e0dd3da8ec6bda4a10',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fload_5fstate',['remmina_ftp_client_load_state',['../remmina__ftp__client_8c.html#a2aaef09531b1694c183a5ba530fcc2fa',1,'remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a2aaef09531b1694c183a5ba530fcc2fa',1,'remmina_ftp_client_load_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fnew',['remmina_ftp_client_new',['../remmina__ftp__client_8c.html#abb2ad2f78b3dfcd6c9a68834346d0f6d',1,'remmina_ftp_client_new(void):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#abb2ad2f78b3dfcd6c9a68834346d0f6d',1,'remmina_ftp_client_new(void):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fopen_5fdir',['remmina_ftp_client_open_dir',['../remmina__ftp__client_8c.html#aebd9739e88aa215c1dc3d4138219d286',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fpopup_5fmenu',['remmina_ftp_client_popup_menu',['../remmina__ftp__client_8c.html#adaedc425109ff59a35610144513181ac',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fsave_5fstate',['remmina_ftp_client_save_state',['../remmina__ftp__client_8c.html#a28b9006fa53e21e48df9237d68a847f3',1,'remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a28b9006fa53e21e48df9237d68a847f3',1,'remmina_ftp_client_save_state(RemminaFTPClient *client, RemminaFile *remminafile):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5fdir',['remmina_ftp_client_set_dir',['../remmina__ftp__client_8c.html#a1ef77e687209d258ec576c31614ea60f',1,'remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a1ef77e687209d258ec576c31614ea60f',1,'remmina_ftp_client_set_dir(RemminaFTPClient *client, const gchar *dir):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5ffile_5faction_5fsensitive',['remmina_ftp_client_set_file_action_sensitive',['../remmina__ftp__client_8c.html#adb5e2ad5fd93f065bdc5c307df813c36',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5foverwrite_5fstatus',['remmina_ftp_client_set_overwrite_status',['../remmina__ftp__client_8c.html#ae5614fa3b465b83d0a5fa2245a97f45f',1,'remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#ae5614fa3b465b83d0a5fa2245a97f45f',1,'remmina_ftp_client_set_overwrite_status(RemminaFTPClient *client, gboolean status):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fset_5fshow_5fhidden',['remmina_ftp_client_set_show_hidden',['../remmina__ftp__client_8c.html#adb002077547492e9d56c68281a1607d6',1,'remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#adb002077547492e9d56c68281a1607d6',1,'remmina_ftp_client_set_show_hidden(RemminaFTPClient *client, gboolean show_hidden):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fsize_5fto_5fstr',['remmina_ftp_client_size_to_str',['../remmina__ftp__client_8c.html#a01323d02fb338efc6df59b6396b004cb',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftask_5flist_5fcell_5fon_5factivate',['remmina_ftp_client_task_list_cell_on_activate',['../remmina__ftp__client_8c.html#a13529f504158679b5c2fef7f1c25b969',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftask_5flist_5fon_5fquery_5ftooltip',['remmina_ftp_client_task_list_on_query_tooltip',['../remmina__ftp__client_8c.html#a0f8c03ede4800e429e5f4a6894d77510',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fupdate_5ftask',['remmina_ftp_client_update_task',['../remmina__ftp__client_8c.html#ad96358f40ab056c91f796ddda886a1dd',1,'remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#ad96358f40ab056c91f796ddda886a1dd',1,'remmina_ftp_client_update_task(RemminaFTPClient *client, RemminaFTPTask *task):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5fupload_5ffolder_5fon_5ftoggled',['remmina_ftp_client_upload_folder_on_toggled',['../remmina__ftp__client_8c.html#a8bdee1727836cb01a794c4164da50406',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5ftask_5ffree',['remmina_ftp_task_free',['../remmina__ftp__client_8c.html#a659de1105971e3fda3d44d089277d6a7',1,'remmina_ftp_task_free(RemminaFTPTask *task):&#160;remmina_ftp_client.c'],['../remmina__ftp__client_8h.html#a659de1105971e3fda3d44d089277d6a7',1,'remmina_ftp_task_free(RemminaFTPTask *task):&#160;remmina_ftp_client.c']]],
+ ['remmina_5fgen_5frandom_5fuuid',['remmina_gen_random_uuid',['../remmina__utils_8c.html#a483959ec642cece17e1b79506e71b00e',1,'remmina_gen_random_uuid():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a483959ec642cece17e1b79506e71b00e',1,'remmina_gen_random_uuid():&#160;remmina_utils.c']]],
+ ['remmina_5fget_5fkeytype',['remmina_get_keytype',['../nx__session_8c.html#ad3ab1f08fffd57b68fa36360c7ef8135',1,'nx_session.c']]],
+ ['remmina_5fgtk_5fcheck_5fversion',['remmina_gtk_check_version',['../remmina__public_8c.html#ad7c29f17323086e08ac56e1636fd41c3',1,'remmina_gtk_check_version(guint major, guint minor, guint micro):&#160;remmina_public.c'],['../remmina__public_8h.html#ad7c29f17323086e08ac56e1636fd41c3',1,'remmina_gtk_check_version(guint major, guint minor, guint micro):&#160;remmina_public.c']]],
+ ['remmina_5fgtksocket_5favailable',['remmina_gtksocket_available',['../remmina__plugin__manager_8c.html#a1ef27b953decb0c707ec9a18da47a38f',1,'remmina_gtksocket_available():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a1ef27b953decb0c707ec9a18da47a38f',1,'remmina_gtksocket_available():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5ficon_5fabout',['remmina_icon_about',['../remmina__icon_8c.html#a5cdf1958ef01e49889bcee2e90e2cf71',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fcreate_5fautostart_5ffile',['remmina_icon_create_autostart_file',['../remmina__icon_8c.html#a5a3b4f281c19f24645a895d3caab3ea0',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fdestroy',['remmina_icon_destroy',['../remmina__icon_8c.html#a25b1d13f76ddf6a51836d780eda5fab1',1,'remmina_icon_destroy(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a25b1d13f76ddf6a51836d780eda5fab1',1,'remmina_icon_destroy(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fenable_5favahi',['remmina_icon_enable_avahi',['../remmina__icon_8c.html#ac424cc450aa98c2a0fe2494cddff48a6',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5finit',['remmina_icon_init',['../remmina__icon_8c.html#afbd7758d1d43c61a014b7ef00f11fa58',1,'remmina_icon_init(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a741c81815e562f40672c4485172306d6',1,'remmina_icon_init(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fis_5fautostart',['remmina_icon_is_autostart',['../remmina__icon_8c.html#ae477ccd85ab1d878d243aed7fa5e48ae',1,'remmina_icon_is_autostart(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#ae477ccd85ab1d878d243aed7fa5e48ae',1,'remmina_icon_is_autostart(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fis_5favailable',['remmina_icon_is_available',['../remmina__icon_8c.html#a42f087b679b43b8a1d36cd9e9781a8b6',1,'remmina_icon_is_available(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a42f087b679b43b8a1d36cd9e9781a8b6',1,'remmina_icon_is_available(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fmain',['remmina_icon_main',['../remmina__icon_8c.html#a920476110ab6410c8fc8cf734109e497',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5factivate',['remmina_icon_on_activate',['../remmina__icon_8c.html#af175fef31eb95974094088235b3a2b1d',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5fedit_5fitem',['remmina_icon_on_edit_item',['../remmina__icon_8c.html#af8708120906a8dc41a7998ebf9ecd129',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5flaunch_5fitem',['remmina_icon_on_launch_item',['../remmina__icon_8c.html#ad1699688680e12abcfd5c74dd2f76d83',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fon_5fpopup_5fmenu',['remmina_icon_on_popup_menu',['../remmina__icon_8c.html#a95b917790eeb38e48137018796bdda93',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopdown_5fmenu',['remmina_icon_popdown_menu',['../remmina__icon_8c.html#a444be76e3c3a065279c5f9abc7fae833',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fadditional_5fmenu_5fitem',['remmina_icon_populate_additional_menu_item',['../remmina__icon_8c.html#a8aaf73ed94cf20dcce1c7be26262cb56',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fextra_5fmenu_5fitem',['remmina_icon_populate_extra_menu_item',['../remmina__icon_8c.html#a2847311861df3a2f1c8bbcd35cf3fd6f',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fpopulate_5fmenu',['remmina_icon_populate_menu',['../remmina__icon_8c.html#af80ed314f91d653237249d839c7fc3b2',1,'remmina_icon_populate_menu(void):&#160;remmina_icon.c'],['../remmina__icon_8h.html#af80ed314f91d653237249d839c7fc3b2',1,'remmina_icon_populate_menu(void):&#160;remmina_icon.c']]],
+ ['remmina_5ficon_5fpreferences',['remmina_icon_preferences',['../remmina__icon_8c.html#ad3b0e3d12e4854eae05b1afea19da404',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fsave_5fautostart_5ffile',['remmina_icon_save_autostart_file',['../remmina__icon_8c.html#a15b625603bb0eb191fca9e77d2821735',1,'remmina_icon.c']]],
+ ['remmina_5ficon_5fset_5fautostart',['remmina_icon_set_autostart',['../remmina__icon_8c.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d',1,'remmina_icon_set_autostart(gboolean autostart):&#160;remmina_icon.c'],['../remmina__icon_8h.html#a5b1bc5b1130b31ea9c9cb7164fb82f1d',1,'remmina_icon_set_autostart(gboolean autostart):&#160;remmina_icon.c']]],
+ ['remmina_5fkey_5fchooser_5fdialog_5fon_5fkey_5fpress',['remmina_key_chooser_dialog_on_key_press',['../remmina__key__chooser_8c.html#a2dc21f6f759474cbff56dbfaf8b87a46',1,'remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fget_5fkeyval',['remmina_key_chooser_get_keyval',['../remmina__key__chooser_8c.html#ae4901c270a9c35ed2258c92cdc897474',1,'remmina_key_chooser_get_keyval(const gchar *value):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#ae4901c270a9c35ed2258c92cdc897474',1,'remmina_key_chooser_get_keyval(const gchar *value):&#160;remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fget_5fvalue',['remmina_key_chooser_get_value',['../remmina__key__chooser_8c.html#a5aba1462f1026818581e91155b12618f',1,'remmina_key_chooser_get_value(guint keyval, guint state):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#a5aba1462f1026818581e91155b12618f',1,'remmina_key_chooser_get_value(guint keyval, guint state):&#160;remmina_key_chooser.c']]],
+ ['remmina_5fkey_5fchooser_5fnew',['remmina_key_chooser_new',['../remmina__key__chooser_8c.html#a9e8586623c819a2e24b6d7b1d3efde94',1,'remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers):&#160;remmina_key_chooser.c'],['../remmina__key__chooser_8h.html#a9353d33cda8bb123293406e9655c9e36',1,'remmina_key_chooser_new(GtkWindow *parent_window, gboolean use_modifiers):&#160;remmina_key_chooser.c']]],
+ ['remmina_5flog_5fend',['remmina_log_end',['../remmina__log_8c.html#a355067bd2e33d8942ad9d8af60c19f0c',1,'remmina_log.c']]],
+ ['remmina_5flog_5fon_5fkeypress',['remmina_log_on_keypress',['../remmina__log_8c.html#a43a42f51f64b54924564e166c56b39e1',1,'remmina_log.c']]],
+ ['remmina_5flog_5fprint',['remmina_log_print',['../remmina__log_8c.html#aca8f826a273194e22f4467421af9b3aa',1,'remmina_log_print(const gchar *text):&#160;remmina_log.c'],['../remmina__log_8h.html#aca8f826a273194e22f4467421af9b3aa',1,'remmina_log_print(const gchar *text):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fprint_5freal',['remmina_log_print_real',['../remmina__log_8c.html#a7cbb8cc1b0525ae49248a84fb4b2b1a1',1,'remmina_log.c']]],
+ ['remmina_5flog_5fprintf',['remmina_log_printf',['../remmina__log_8c.html#ac7848510c1fe1990c992e28cd31af9d8',1,'remmina_log_printf(const gchar *fmt,...):&#160;remmina_log.c'],['../remmina__log_8h.html#ac7848510c1fe1990c992e28cd31af9d8',1,'remmina_log_printf(const gchar *fmt,...):&#160;remmina_log.c']]],
+ ['remmina_5flog_5frunning',['remmina_log_running',['../remmina__log_8c.html#a96f5bb72acbdcbf8793b4a5f4a6132b5',1,'remmina_log_running(void):&#160;remmina_log.c'],['../remmina__log_8h.html#a96f5bb72acbdcbf8793b4a5f4a6132b5',1,'remmina_log_running(void):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fscroll_5fto_5fend',['remmina_log_scroll_to_end',['../remmina__log_8c.html#a6a5cc60197293b97a0c6fa2a471b221b',1,'remmina_log.c']]],
+ ['remmina_5flog_5fstart',['remmina_log_start',['../remmina__log_8c.html#a72cf53183f3ef89c4208fdccb629003d',1,'remmina_log_start(void):&#160;remmina_log.c'],['../remmina__log_8h.html#a0b1a2e5262436772262a859cc1e23683',1,'remmina_log_start(void):&#160;remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5fget_5ftype',['remmina_log_window_get_type',['../remmina__log_8c.html#a8f8d45cce779ec2a8db7bfdd02097a3e',1,'remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5finit',['remmina_log_window_init',['../remmina__log_8c.html#a1e5960f194353bd36d82bd9476c309bd',1,'remmina_log.c']]],
+ ['remmina_5flog_5fwindow_5fnew',['remmina_log_window_new',['../remmina__log_8c.html#a070042aa580b708536dc793336722660',1,'remmina_log.c']]],
+ ['remmina_5fmain_5faction_5ftools_5fimport_5fon_5fresponse',['remmina_main_action_tools_import_on_response',['../remmina__main_8c.html#a85aa313453e0ecaa17bcce233973998d',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fadd_5ftool_5fplugin',['remmina_main_add_tool_plugin',['../remmina__main_8c.html#a7be10e330f0c2a3f74e119cde443786f',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fclear_5fselection_5fdata',['remmina_main_clear_selection_data',['../remmina__main_8c.html#a9e60326026d7de56882bc83c0084fd12',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fdestroy',['remmina_main_destroy',['../remmina__main_8c.html#a95532ac6d110eeeb2e41d4b2a329797c',1,'remmina_main_destroy():&#160;remmina_main.c'],['../remmina__main_8h.html#a77d974da2ddd1ea7c87f8b9bb1eedda8',1,'remmina_main_destroy(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fdexit',['remmina_main_dexit',['../remmina__main_8c.html#a33ef5745d8b934ef52379c277d3a1ab2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fexpand_5fgroup',['remmina_main_expand_group',['../remmina__main_8c.html#a4a4733c243f20c3ffc27105003f5e30e',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fexpand_5fgroup_5ftraverse',['remmina_main_expand_group_traverse',['../remmina__main_8c.html#a74cb130b886c2b905f651e777644a08c',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5feditor_5fdestroy',['remmina_main_file_editor_destroy',['../remmina__main_8c.html#a6a466d0b07944e619bd9b0e473c8a5bd',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5fbutton_5fpress',['remmina_main_file_list_on_button_press',['../remmina__main_8c.html#ace72fa8f7198020464623e7117a351a9',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5fkey_5fpress',['remmina_main_file_list_on_key_press',['../remmina__main_8c.html#a31102f8ca7440a22c1514bca17933193',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5flist_5fon_5frow_5factivated',['remmina_main_file_list_on_row_activated',['../remmina__main_8c.html#aba1a89a2400c5cc8373c6bd34602ac10',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffile_5fmodel_5fon_5fsort',['remmina_main_file_model_on_sort',['../remmina__main_8c.html#a71fbe206a9c2abb8f348ee598d7751b7',1,'remmina_main.c']]],
+ ['remmina_5fmain_5ffilter_5fvisible_5ffunc',['remmina_main_filter_visible_func',['../remmina__main_8c.html#ab0d22f0e3571eb80886acb0c68005800',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fget_5fwindow',['remmina_main_get_window',['../remmina__main_8c.html#a7740488de65c0e642895cc9dfba07b6e',1,'remmina_main_get_window():&#160;remmina_main.c'],['../remmina__main_8h.html#a3948142732379a3d165f3b0b4d5f5abc',1,'remmina_main_get_window(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fimport_5ffile_5flist',['remmina_main_import_file_list',['../remmina__main_8c.html#ac767825cb87a34531306cfb587216d20',1,'remmina_main.c']]],
+ ['remmina_5fmain_5finit',['remmina_main_init',['../remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5flist_5fcallback',['remmina_main_load_file_list_callback',['../remmina__main_8c.html#a71f485dba1b11bf8cba129920767b5e6',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5fcallback',['remmina_main_load_file_tree_callback',['../remmina__main_8c.html#ae32574ebe06b1a24f135af9379e663b4',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5ffind',['remmina_main_load_file_tree_find',['../remmina__main_8c.html#a847424fdb97ffe35d060409d4d738497',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5fgroup',['remmina_main_load_file_tree_group',['../remmina__main_8c.html#aa46e6b815c241d32a476a29053dbf296',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffile_5ftree_5ftraverse',['remmina_main_load_file_tree_traverse',['../remmina__main_8c.html#a2a6ba822ef89ef8ad9f19340c2c8b7f5',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffiles',['remmina_main_load_files',['../remmina__main_8c.html#a3617295e74fa84edbd41dedc601402a7',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fload_5ffiles_5fcb',['remmina_main_load_files_cb',['../remmina__main_8c.html#a2d8aed506a9e65e444507b6eae74bbb0',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fnew',['remmina_main_new',['../remmina__main_8c.html#af14b1942a754d7b2f5c10266208ebe01',1,'remmina_main_new(void):&#160;remmina_main.c'],['../remmina__main_8h.html#a0c322c3136c4225d5f8d4cee318afce7',1,'remmina_main_new(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fabout',['remmina_main_on_action_application_about',['../remmina__main_8c.html#aac0bb51159be042fecab0103e73a54dc',1,'remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#aac0bb51159be042fecab0103e73a54dc',1,'remmina_main_on_action_application_about(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fdefault',['remmina_main_on_action_application_default',['../remmina__main_8c.html#a05dbb6ce820f3a137949b919d0efa6a1',1,'remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a05dbb6ce820f3a137949b919d0efa6a1',1,'remmina_main_on_action_application_default(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fmpchange',['remmina_main_on_action_application_mpchange',['../remmina__main_8c.html#abf51d42fa2c5ce84164b5514b4634229',1,'remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#abf51d42fa2c5ce84164b5514b4634229',1,'remmina_main_on_action_application_mpchange(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fnews',['remmina_main_on_action_application_news',['../remmina__main_8c.html#a0b4ec1e78b79adaa180a385ac50c20d6',1,'remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0b4ec1e78b79adaa180a385ac50c20d6',1,'remmina_main_on_action_application_news(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fplugins',['remmina_main_on_action_application_plugins',['../remmina__main_8c.html#adf59ad5b0a0ef68e58bbea3701929efc',1,'remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#adf59ad5b0a0ef68e58bbea3701929efc',1,'remmina_main_on_action_application_plugins(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fpreferences',['remmina_main_on_action_application_preferences',['../remmina__main_8c.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92',1,'remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a6ed9f6a588a2d9e3a6cf6884c8d07f92',1,'remmina_main_on_action_application_preferences(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fapplication_5fquit',['remmina_main_on_action_application_quit',['../remmina__main_8c.html#a5445e5568a6fc04d08b620829a59334a',1,'remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a5445e5568a6fc04d08b620829a59334a',1,'remmina_main_on_action_application_quit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fcollapse',['remmina_main_on_action_collapse',['../remmina__main_8c.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a',1,'remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0edcc1d7dc3adcbb7bb36aa0f62dec3a',1,'remmina_main_on_action_collapse(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fconnect',['remmina_main_on_action_connection_connect',['../remmina__main_8c.html#a6b30ed832369f3a7153aa63f98873c9d',1,'remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a6b30ed832369f3a7153aa63f98873c9d',1,'remmina_main_on_action_connection_connect(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fcopy',['remmina_main_on_action_connection_copy',['../remmina__main_8c.html#a44eb44c6391f53a19c6f1fdf9a39a8c1',1,'remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a44eb44c6391f53a19c6f1fdf9a39a8c1',1,'remmina_main_on_action_connection_copy(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fdelete',['remmina_main_on_action_connection_delete',['../remmina__main_8c.html#a10e574723222f5df9db456977e62a093',1,'remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a10e574723222f5df9db456977e62a093',1,'remmina_main_on_action_connection_delete(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fedit',['remmina_main_on_action_connection_edit',['../remmina__main_8c.html#adfbfc580d25b58d09770a7d33ffe03cc',1,'remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#adfbfc580d25b58d09770a7d33ffe03cc',1,'remmina_main_on_action_connection_edit(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fexternal_5ftools',['remmina_main_on_action_connection_external_tools',['../remmina__main_8c.html#abcf8bd8ca57b389264ff9739a61efdc1',1,'remmina_main_on_action_connection_external_tools(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#abcf8bd8ca57b389264ff9739a61efdc1',1,'remmina_main_on_action_connection_external_tools(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fconnection_5fnew',['remmina_main_on_action_connection_new',['../remmina__main_8c.html#a52cc21537ff003b9d0fbdb9040c811af',1,'remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a52cc21537ff003b9d0fbdb9040c811af',1,'remmina_main_on_action_connection_new(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fexpand',['remmina_main_on_action_expand',['../remmina__main_8c.html#ab98d51c96a87fddaa2d5d6d4614bafa8',1,'remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#ab98d51c96a87fddaa2d5d6d4614bafa8',1,'remmina_main_on_action_expand(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fcommunity',['remmina_main_on_action_help_community',['../remmina__main_8c.html#aac3aa116a8d8b527f1aa61b7395b4b32',1,'remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#aac3aa116a8d8b527f1aa61b7395b4b32',1,'remmina_main_on_action_help_community(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fdebug',['remmina_main_on_action_help_debug',['../remmina__main_8c.html#a5db4436cc72b9d5ea3e498f8519efecc',1,'remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a5db4436cc72b9d5ea3e498f8519efecc',1,'remmina_main_on_action_help_debug(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fdonations',['remmina_main_on_action_help_donations',['../remmina__main_8c.html#a2704d643ee15702a84a1c76219dd5277',1,'remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a2704d643ee15702a84a1c76219dd5277',1,'remmina_main_on_action_help_donations(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fhomepage',['remmina_main_on_action_help_homepage',['../remmina__main_8c.html#a7049d977154921f651cc1538f59c5b7a',1,'remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a7049d977154921f651cc1538f59c5b7a',1,'remmina_main_on_action_help_homepage(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5fhelp_5fwiki',['remmina_main_on_action_help_wiki',['../remmina__main_8c.html#a0c32fe66988056b353220128611b9116',1,'remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a0c32fe66988056b353220128611b9116',1,'remmina_main_on_action_help_wiki(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5ftools_5fexport',['remmina_main_on_action_tools_export',['../remmina__main_8c.html#ab203476099a5ad6e889f91c8e05d577d',1,'remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#ab203476099a5ad6e889f91c8e05d577d',1,'remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5faction_5ftools_5fimport',['remmina_main_on_action_tools_import',['../remmina__main_8c.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c',1,'remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c'],['../remmina__main_8h.html#a4b4f0bbdb9e487d6c3809e8a57dc1d1c',1,'remmina_main_on_action_tools_import(GSimpleAction *action, GVariant *param, gpointer data):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdate_5fcolumn_5fsort_5fclicked',['remmina_main_on_date_column_sort_clicked',['../remmina__main_8c.html#a3d60de4c121cae0c82e60b13873073db',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdelete_5fevent',['remmina_main_on_delete_event',['../remmina__main_8c.html#a40493bb60c169e53e2e08a0d0a808302',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fdrag_5fdata_5freceived',['remmina_main_on_drag_data_received',['../remmina__main_8c.html#adf073486149762f547504020484bff70',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fsearch_5ftoggle',['remmina_main_on_search_toggle',['../remmina__main_8c.html#a7a1e318355fd97b304ce2675d02ea8b9',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fshow',['remmina_main_on_show',['../remmina__main_8c.html#aa4d9b76d32fa500f4b9f39a19e4eaaf2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fview_5ftoggle',['remmina_main_on_view_toggle',['../remmina__main_8c.html#ac1a3a51f6d7f6a2411f9b38de860d766',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fon_5fwindow_5fstate_5fevent',['remmina_main_on_window_state_event',['../remmina__main_8c.html#a861de52d1b5ec54591d0592de6289d79',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fenter',['remmina_main_quick_search_enter',['../remmina__main_8c.html#a6c69b2fa6a56869c54f58d7ebae89427',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fon_5fchanged',['remmina_main_quick_search_on_changed',['../remmina__main_8c.html#a1cac4199e40e35bf3fcdb98841615657',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquick_5fsearch_5fon_5ficon_5fpress',['remmina_main_quick_search_on_icon_press',['../remmina__main_8c.html#af51fc7233eb2397a5074ba37b5c5275f',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquickconnect',['remmina_main_quickconnect',['../remmina__main_8c.html#a802458852abacebfb16f1f4295806a01',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fquickconnect_5fon_5fclick',['remmina_main_quickconnect_on_click',['../remmina__main_8c.html#a210e9e04c7c97cc86412044de31f659d',1,'remmina_main.c']]],
+ ['remmina_5fmain_5frmodestroy',['remmina_main_rmodestroy',['../remmina__main_8c.html#a71097b95723932e40835fa00f1b1eba0',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fbefore_5fdestroy',['remmina_main_save_before_destroy',['../remmina__main_8c.html#a009f32092bd1d8dcd8e783d25416f3df',1,'remmina_main_save_before_destroy():&#160;remmina_main.c'],['../remmina__main_8h.html#a95cedb0d631aacbd1b4a5ee1e10a40a5',1,'remmina_main_save_before_destroy(void):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fexpanded_5fgroup',['remmina_main_save_expanded_group',['../remmina__main_8c.html#ad8744dc59ba8072ffdf557b6c94e9f40',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fexpanded_5fgroup_5ffunc',['remmina_main_save_expanded_group_func',['../remmina__main_8c.html#a51880fc109db6457a5d0fc543c2deaf2',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fsave_5fsize',['remmina_main_save_size',['../remmina__main_8c.html#ac448c53d7a2066763d2b747d269f60ee',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fselect_5ffile',['remmina_main_select_file',['../remmina__main_8c.html#aa20963aed43242994c88d5a97a546355',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fselection_5ffunc',['remmina_main_selection_func',['../remmina__main_8c.html#a3c5043279b5d98d4d08635d33402ea66',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fshow_5fsnap_5fwelcome',['remmina_main_show_snap_welcome',['../remmina__main_8c.html#ab08aae433b625c3a84330630fe2bd2d5',1,'remmina_main.c']]],
+ ['remmina_5fmain_5fshow_5fwarning_5fdialog',['remmina_main_show_warning_dialog',['../remmina__main_8c.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7',1,'remmina_main_show_warning_dialog(const gchar *message):&#160;remmina_main.c'],['../remmina__main_8h.html#ad99b9c0bf2fa8c166a8b4a09e06ffdf7',1,'remmina_main_show_warning_dialog(const gchar *message):&#160;remmina_main.c']]],
+ ['remmina_5fmain_5fupdate_5ffile_5fdatetime',['remmina_main_update_file_datetime',['../remmina__main_8c.html#a5ae0372dafe41f96a09097c07d1b270a',1,'remmina_main_update_file_datetime(RemminaFile *file):&#160;remmina_main.c'],['../remmina__main_8h.html#a5ae0372dafe41f96a09097c07d1b270a',1,'remmina_main_update_file_datetime(RemminaFile *file):&#160;remmina_main.c']]],
+ ['remmina_5fmarshal_5fboolean_5f_5fint',['remmina_marshal_BOOLEAN__INT',['../remmina__marshals_8c.html#ae155b6ae758a6b0ef3d89a4458feec99',1,'remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data):&#160;remmina_marshals.c'],['../remmina__marshals_8h.html#ab614355cdc97644b6505743b34a78384',1,'remmina_marshal_BOOLEAN__INT(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data):&#160;remmina_marshals.h']]],
+ ['remmina_5fmarshal_5fboolean_5f_5fint_5fstring',['remmina_marshal_BOOLEAN__INT_STRING',['../remmina__marshals_8c.html#a01460bf2694cb9ef62f1409d465ae70b',1,'remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value G_GNUC_UNUSED, guint n_param_values, const GValue *param_values, gpointer invocation_hint G_GNUC_UNUSED, gpointer marshal_data):&#160;remmina_marshals.c'],['../remmina__marshals_8h.html#af4bf876b1fb721df926edf68ec116761',1,'remmina_marshal_BOOLEAN__INT_STRING(GClosure *closure, GValue *return_value, guint n_param_values, const GValue *param_values, gpointer invocation_hint, gpointer marshal_data):&#160;remmina_marshals.h']]],
+ ['remmina_5fmasterthread_5fexec_5fand_5fwait',['remmina_masterthread_exec_and_wait',['../remmina__masterthread__exec_8c.html#a14628c2470cac50e87916a70ea05c97d',1,'remmina_masterthread_exec_and_wait(RemminaMTExecData *d):&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a14628c2470cac50e87916a70ea05c97d',1,'remmina_masterthread_exec_and_wait(RemminaMTExecData *d):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fcallback',['remmina_masterthread_exec_callback',['../remmina__masterthread__exec_8c.html#ae5c4d736f1856249c255430e010a179f',1,'remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fcleanup_5fhandler',['remmina_masterthread_exec_cleanup_handler',['../remmina__masterthread__exec_8c.html#a94985f15fd0d27c037824ee90b0ecd3c',1,'remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fis_5fmain_5fthread',['remmina_masterthread_exec_is_main_thread',['../remmina__masterthread__exec_8c.html#a3a52e863a3a3da6da6bb5d36c13b7ff4',1,'remmina_masterthread_exec_is_main_thread():&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a7b90b9539fd1bffa1fdace50f9caf29c',1,'remmina_masterthread_exec_is_main_thread(void):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmasterthread_5fexec_5fsave_5fmain_5fthread_5fid',['remmina_masterthread_exec_save_main_thread_id',['../remmina__masterthread__exec_8c.html#a4a595ce198f8adda31fe11348b0f734e',1,'remmina_masterthread_exec_save_main_thread_id():&#160;remmina_masterthread_exec.c'],['../remmina__masterthread__exec_8h.html#a3d6fe9efdc6b84c16d99809003cfc850',1,'remmina_masterthread_exec_save_main_thread_id(void):&#160;remmina_masterthread_exec.c']]],
+ ['remmina_5fmessage_5fpanel_5fbutton_5fclicked_5fcallback',['remmina_message_panel_button_clicked_callback',['../remmina__message__panel_8c.html#abd857d6074d031de315fed1ffe0b6062',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fclass_5finit',['remmina_message_panel_class_init',['../remmina__message__panel_8c.html#a6ed806c022986b81ef4db70e6d89abc9',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5ffilename',['remmina_message_panel_field_get_filename',['../remmina__message__panel_8c.html#ab89dba73bc6832c6c5061a0d8bd0fbb4',1,'remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ab89dba73bc6832c6c5061a0d8bd0fbb4',1,'remmina_message_panel_field_get_filename(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5fstring',['remmina_message_panel_field_get_string',['../remmina__message__panel_8c.html#a44054d029d4615092ae8a2ee1bf81db4',1,'remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a44054d029d4615092ae8a2ee1bf81db4',1,'remmina_message_panel_field_get_string(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fget_5fswitch_5fstate',['remmina_message_panel_field_get_switch_state',['../remmina__message__panel_8c.html#a80bc2fcb39c236da739593c2134c73fa',1,'remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a80bc2fcb39c236da739593c2134c73fa',1,'remmina_message_panel_field_get_switch_state(RemminaMessagePanel *mp, int entryid):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5ffilename',['remmina_message_panel_field_set_filename',['../remmina__message__panel_8c.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff',1,'remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#aec9dcd96d0148fec9cdc9e94cc8dc1ff',1,'remmina_message_panel_field_set_filename(RemminaMessagePanel *mp, int entryid, const gchar *filename):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5fstring',['remmina_message_panel_field_set_string',['../remmina__message__panel_8c.html#a0e20944d484c95036eeb6b5d7775c901',1,'remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a0e20944d484c95036eeb6b5d7775c901',1,'remmina_message_panel_field_set_string(RemminaMessagePanel *mp, int entryid, const gchar *text):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffield_5fset_5fswitch',['remmina_message_panel_field_set_switch',['../remmina__message__panel_8c.html#a67a48217d44350e028ed95b1b55f0b0f',1,'remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#a67a48217d44350e028ed95b1b55f0b0f',1,'remmina_message_panel_field_set_switch(RemminaMessagePanel *mp, int entryid, gboolean state):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5ffocus_5fauth_5fentry',['remmina_message_panel_focus_auth_entry',['../remmina__message__panel_8c.html#aacb1f47e5ad88086c1bda1b0a156c34d',1,'remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#aacb1f47e5ad88086c1bda1b0a156c34d',1,'remmina_message_panel_focus_auth_entry(RemminaMessagePanel *mp):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5finit',['remmina_message_panel_init',['../remmina__message__panel_8c.html#ab6b5ef1f109af9209f76d194dd704a8c',1,'remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fnew',['remmina_message_panel_new',['../remmina__message__panel_8c.html#a7015155d2b1db3e74de4d4d5ef7cca55',1,'remmina_message_panel_new():&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#adf4a7707360c836ba312a2c7286db294',1,'remmina_message_panel_new(void):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fresponse',['remmina_message_panel_response',['../remmina__message__panel_8c.html#af7db7b9f49fe6b83b17471116d363d40',1,'remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#af7db7b9f49fe6b83b17471116d363d40',1,'remmina_message_panel_response(RemminaMessagePanel *mp, gint response_id):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fauth',['remmina_message_panel_setup_auth',['../remmina__message__panel_8c.html#ae2cec8bc8216154388727b7e35200667',1,'remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae2cec8bc8216154388727b7e35200667',1,'remmina_message_panel_setup_auth(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data, const gchar *title, const gchar *password_prompt, unsigned flags):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fauth_5fx509',['remmina_message_panel_setup_auth_x509',['../remmina__message__panel_8c.html#ac10f450f856ca7d9c0b6896261e9c407',1,'remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ac10f450f856ca7d9c0b6896261e9c407',1,'remmina_message_panel_setup_auth_x509(RemminaMessagePanel *mp, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fmessage',['remmina_message_panel_setup_message',['../remmina__message__panel_8c.html#ae01d27ae9f678dc5a4fa32f0b401f434',1,'remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae01d27ae9f678dc5a4fa32f0b401f434',1,'remmina_message_panel_setup_message(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fprogress',['remmina_message_panel_setup_progress',['../remmina__message__panel_8c.html#afae4072b7d8b54392ec08da7d6ead620',1,'remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#afae4072b7d8b54392ec08da7d6ead620',1,'remmina_message_panel_setup_progress(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmessage_5fpanel_5fsetup_5fquestion',['remmina_message_panel_setup_question',['../remmina__message__panel_8c.html#ae5b1825b5d4e56ecc2f25c28bb042c32',1,'remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c'],['../remmina__message__panel_8h.html#ae5b1825b5d4e56ecc2f25c28bb042c32',1,'remmina_message_panel_setup_question(RemminaMessagePanel *mp, const gchar *message, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_message_panel.c']]],
+ ['remmina_5fmpchange_5fcheckbox_5ftoggle',['remmina_mpchange_checkbox_toggle',['../remmina__mpchange_8c.html#aa872ba9de3be7ccd116881cee84c8b85',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fdochange',['remmina_mpchange_dochange',['../remmina__mpchange_8c.html#a24d0569c79b289b5812c5c3019e5f4dd',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fdochange_5fclicked',['remmina_mpchange_dochange_clicked',['../remmina__mpchange_8c.html#a07d130893c0487bb873f2b6986e15a1b',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5ffieldcompare',['remmina_mpchange_fieldcompare',['../remmina__mpchange_8c.html#a506370be386145eeb2c59829fe3e8131',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5ffile_5flist_5fcallback',['remmina_mpchange_file_list_callback',['../remmina__mpchange_8c.html#a26ac0b33bd0b5ea718e16d04923b5ccd',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fschedule',['remmina_mpchange_schedule',['../remmina__mpchange_8c.html#ac84b71e36fe02a6ff8cb295269316960',1,'remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password):&#160;remmina_mpchange.c'],['../remmina__mpchange_8h.html#a8627f0b2ac822c2f57a4eddc843a8fed',1,'remmina_mpchange_schedule(gboolean has_domain, const gchar *group, const gchar *domain, const gchar *username, const gchar *password):&#160;remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fsearchfield_5fchanged',['remmina_mpchange_searchfield_changed',['../remmina__mpchange_8c.html#ad063ddefc518c67ed98f4b4bdf87fa8f',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fsearchfield_5fchanged_5fto',['remmina_mpchange_searchfield_changed_to',['../remmina__mpchange_8c.html#a4bf7e99626c40534641916848253f60f',1,'remmina_mpchange.c']]],
+ ['remmina_5fmpchange_5fstopsearch',['remmina_mpchange_stopsearch',['../remmina__mpchange_8c.html#a1e4f5a537a13face058177dc97e88c8a',1,'remmina_mpchange.c']]],
+ ['remmina_5fnx_5fsession_5fadd_5fcommon_5fparameters',['remmina_nx_session_add_common_parameters',['../nx__session_8c.html#aa1398fd24f8083867db1f8f392638bf0',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fadd_5fparameter',['remmina_nx_session_add_parameter',['../nx__session_8c.html#ae4e00fb7501df9af20b7fdc61331c347',1,'remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...):&#160;nx_session.c'],['../nx__session_8h.html#ae4e00fb7501df9af20b7fdc61331c347',1,'remmina_nx_session_add_parameter(RemminaNXSession *nx, const gchar *name, const gchar *valuefmt,...):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fallow_5fstart',['remmina_nx_session_allow_start',['../nx__session_8c.html#a13c14492f22eda65b325337be14aa3ef',1,'remmina_nx_session_allow_start(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a13c14492f22eda65b325337be14aa3ef',1,'remmina_nx_session_allow_start(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fattach',['remmina_nx_session_attach',['../nx__session_8c.html#aacd5938d1a58872644a3a68bc1cac66d',1,'remmina_nx_session_attach(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aacd5938d1a58872644a3a68bc1cac66d',1,'remmina_nx_session_attach(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fbye',['remmina_nx_session_bye',['../nx__session_8c.html#aaf2a3e4773fb982b8418fd2f147abaea',1,'remmina_nx_session_bye(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aaf2a3e4773fb982b8418fd2f147abaea',1,'remmina_nx_session_bye(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fclear_5ferror',['remmina_nx_session_clear_error',['../nx__session_8c.html#a0279cdfc0ad8129fcb3e1cc26297f866',1,'remmina_nx_session_clear_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a0279cdfc0ad8129fcb3e1cc26297f866',1,'remmina_nx_session_clear_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fexpect_5fstatus',['remmina_nx_session_expect_status',['../nx__session_8c.html#abc225e383dc70c0f6a12baf7b9cc3841',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fexpect_5fstatus2',['remmina_nx_session_expect_status2',['../nx__session_8c.html#ad6ae8dc606c87632bb8b8b477509bcea',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ffree',['remmina_nx_session_free',['../nx__session_8c.html#aa7cec91dde56b12471bbe8acd451d9d3',1,'remmina_nx_session_free(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aa7cec91dde56b12471bbe8acd451d9d3',1,'remmina_nx_session_free(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5ferror',['remmina_nx_session_get_error',['../nx__session_8c.html#ae4e7f359af598b707927c162c3c37e1e',1,'remmina_nx_session_get_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#ae4e7f359af598b707927c162c3c37e1e',1,'remmina_nx_session_get_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fline',['remmina_nx_session_get_line',['../nx__session_8c.html#aa200231bf9d2f3e00a8f92bacddbe09f',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fproxy_5foption',['remmina_nx_session_get_proxy_option',['../nx__session_8c.html#a9a98fead7295fa90624d8a494d3570cf',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fget_5fresponse',['remmina_nx_session_get_response',['../nx__session_8c.html#a880c07dbd498746d06490063159baa4c',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fhas_5ferror',['remmina_nx_session_has_error',['../nx__session_8c.html#aa02aea77cb6428ea4eebddc0d80217e9',1,'remmina_nx_session_has_error(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#aa02aea77cb6428ea4eebddc0d80217e9',1,'remmina_nx_session_has_error(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5finvoke_5fproxy',['remmina_nx_session_invoke_proxy',['../nx__session_8c.html#ad01b66a877f8c30dc4bdf1ba6f3beac0',1,'remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data):&#160;nx_session.c'],['../nx__session_8h.html#ad01b66a877f8c30dc4bdf1ba6f3beac0',1,'remmina_nx_session_invoke_proxy(RemminaNXSession *nx, gint display, GChildWatchFunc exit_func, gpointer user_data):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5ffirst',['remmina_nx_session_iter_first',['../nx__session_8c.html#aadff42154c92ef10a80b403cadec5c1b',1,'remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c'],['../nx__session_8h.html#aadff42154c92ef10a80b403cadec5c1b',1,'remmina_nx_session_iter_first(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fget',['remmina_nx_session_iter_get',['../nx__session_8c.html#a5d6f81a44339efa85a0048f759207825',1,'remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column):&#160;nx_session.c'],['../nx__session_8h.html#a5d6f81a44339efa85a0048f759207825',1,'remmina_nx_session_iter_get(RemminaNXSession *nx, GtkTreeIter *iter, gint column):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fnext',['remmina_nx_session_iter_next',['../nx__session_8c.html#a7d021133105bd538af31817eff263324',1,'remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c'],['../nx__session_8h.html#a7d021133105bd538af31817eff263324',1,'remmina_nx_session_iter_next(RemminaNXSession *nx, GtkTreeIter *iter):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fiter_5fset',['remmina_nx_session_iter_set',['../nx__session_8c.html#a49f2ddc5baaf992f7a39f3d8f6ab061d',1,'remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data):&#160;nx_session.c'],['../nx__session_8h.html#a49f2ddc5baaf992f7a39f3d8f6ab061d',1,'remmina_nx_session_iter_set(RemminaNXSession *nx, GtkTreeIter *iter, gint column, const gchar *data):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5flist',['remmina_nx_session_list',['../nx__session_8c.html#a128499f3768aae8bc5c233f6fb616a76',1,'remmina_nx_session_list(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a128499f3768aae8bc5c233f6fb616a76',1,'remmina_nx_session_list(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5flogin',['remmina_nx_session_login',['../nx__session_8c.html#aa912b495508a0f74fe8e121c5b532f6b',1,'remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password):&#160;nx_session.c'],['../nx__session_8h.html#aa912b495508a0f74fe8e121c5b532f6b',1,'remmina_nx_session_login(RemminaNXSession *nx, const gchar *username, const gchar *password):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fmain',['remmina_nx_session_manager_main',['../nx__session__manager_8c.html#ad065dfe6474f3d04c41c45568b79dc02',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fon_5fresponse',['remmina_nx_session_manager_on_response',['../nx__session__manager_8c.html#a6e1362868bf6ce2402193ee1da978a51',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fon_5frow_5factivated',['remmina_nx_session_manager_on_row_activated',['../nx__session__manager_8c.html#a67942d77023ce617e67c2592f33e9a3e',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fselection_5ffunc',['remmina_nx_session_manager_selection_func',['../nx__session__manager_8c.html#a1da3561ad5f667b639738b9289b73d08',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fsend_5fsignal',['remmina_nx_session_manager_send_signal',['../nx__session__manager_8c.html#abcb80c50ed17b4e6ce51a06fe690602c',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fset_5fsensitive',['remmina_nx_session_manager_set_sensitive',['../nx__session__manager_8c.html#a9d26a9054a74df5137935c6ea7eed911',1,'nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fmanager_5fstart',['remmina_nx_session_manager_start',['../nx__session__manager_8c.html#a5f094257bbcbad3dd9afd970b2de0f2e',1,'remmina_nx_session_manager_start(RemminaProtocolWidget *gp):&#160;nx_session_manager.c'],['../nx__session__manager_8h.html#a24df61d5f718595f3586647718caa3e5',1,'remmina_nx_session_manager_start(RemminaProtocolWidget *gp):&#160;nx_session_manager.c']]],
+ ['remmina_5fnx_5fsession_5fnew',['remmina_nx_session_new',['../nx__session_8c.html#a33e8f6637275c331c86f321bf1da448c',1,'remmina_nx_session_new(void):&#160;nx_session.c'],['../nx__session_8h.html#a33e8f6637275c331c86f321bf1da448c',1,'remmina_nx_session_new(void):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fopen',['remmina_nx_session_open',['../nx__session_8c.html#a6d58e7958d408e2a0abd015688ba912b',1,'remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata):&#160;nx_session.c'],['../nx__session_8h.html#a6d58e7958d408e2a0abd015688ba912b',1,'remmina_nx_session_open(RemminaNXSession *nx, const gchar *server, guint port, const gchar *private_key_file, RemminaNXPassphraseCallback passphrase_func, gpointer userdata):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fline',['remmina_nx_session_parse_line',['../nx__session_8c.html#a1a72f258cb806b8f1150c4719a68af28',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fresponse',['remmina_nx_session_parse_response',['../nx__session_8c.html#a625f0605bf73f0465866b26cf7563eac',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fparse_5fsession_5flist_5fline',['remmina_nx_session_parse_session_list_line',['../nx__session_8c.html#a1d1f38d0bee83fe75e528a7f157c12c0',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5frestore',['remmina_nx_session_restore',['../nx__session_8c.html#a0de55cb12904503503d7d9ab3338aa33',1,'remmina_nx_session_restore(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a0de55cb12904503503d7d9ab3338aa33',1,'remmina_nx_session_restore(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fsend_5fcommand',['remmina_nx_session_send_command',['../nx__session_8c.html#a663b5b339b919527db0c7467123c7f62',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fsend_5fsession_5fcommand',['remmina_nx_session_send_session_command',['../nx__session_8c.html#a563a10864cfa73bffc2899141b6a35ea',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5fapplication_5ferror',['remmina_nx_session_set_application_error',['../nx__session_8c.html#a68bff7bd24db82a337fc00e42942d1c6',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5fencryption',['remmina_nx_session_set_encryption',['../nx__session_8c.html#a36da737bdb6708e5e5e85437cab112f9',1,'remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption):&#160;nx_session.c'],['../nx__session_8h.html#a36da737bdb6708e5e5e85437cab112f9',1,'remmina_nx_session_set_encryption(RemminaNXSession *nx, gint encryption):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5ferror',['remmina_nx_session_set_error',['../nx__session_8c.html#abe9c344eaf302b01759e5bd305cb5abc',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5flocalport',['remmina_nx_session_set_localport',['../nx__session_8c.html#ac97d379b04df53ca7dc166676fcbffb5',1,'remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport):&#160;nx_session.c'],['../nx__session_8h.html#ac97d379b04df53ca7dc166676fcbffb5',1,'remmina_nx_session_set_localport(RemminaNXSession *nx, gint localport):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5flog_5fcallback',['remmina_nx_session_set_log_callback',['../nx__session_8c.html#a8de7b5ae6b68d7e193cd3f55704d32f7',1,'remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback):&#160;nx_session.c'],['../nx__session_8h.html#a8de7b5ae6b68d7e193cd3f55704d32f7',1,'remmina_nx_session_set_log_callback(RemminaNXSession *nx, RemminaNXLogCallback log_callback):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fset_5ftree_5fview',['remmina_nx_session_set_tree_view',['../nx__session_8c.html#a5b9d8589f544d54350a6d96b49275e41',1,'remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree):&#160;nx_session.c'],['../nx__session_8h.html#a5b9d8589f544d54350a6d96b49275e41',1,'remmina_nx_session_set_tree_view(RemminaNXSession *nx, GtkTreeView *tree):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fstart',['remmina_nx_session_start',['../nx__session_8c.html#a2123ed756f82d65c5c6f4062606803c6',1,'remmina_nx_session_start(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a2123ed756f82d65c5c6f4062606803c6',1,'remmina_nx_session_start(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5fterminate',['remmina_nx_session_terminate',['../nx__session_8c.html#ad217fb5180a6ed57c47f174a0b20cf8c',1,'remmina_nx_session_terminate(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#ad217fb5180a6ed57c47f174a0b20cf8c',1,'remmina_nx_session_terminate(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ftunnel_5fmain_5fthread',['remmina_nx_session_tunnel_main_thread',['../nx__session_8c.html#a4bce96ad49020acbbbbe09c3eefa97a6',1,'nx_session.c']]],
+ ['remmina_5fnx_5fsession_5ftunnel_5fopen',['remmina_nx_session_tunnel_open',['../nx__session_8c.html#a7373c5ab0ca53f54c493f9e461ae679d',1,'remmina_nx_session_tunnel_open(RemminaNXSession *nx):&#160;nx_session.c'],['../nx__session_8h.html#a7373c5ab0ca53f54c493f9e461ae679d',1,'remmina_nx_session_tunnel_open(RemminaNXSession *nx):&#160;nx_session.c']]],
+ ['remmina_5fon_5fcommand_5fline',['remmina_on_command_line',['../remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914',1,'remmina.c']]],
+ ['remmina_5fon_5flocal_5fcmdline',['remmina_on_local_cmdline',['../remmina_8c.html#a9e8319f901232eb5fada98335217979c',1,'remmina.c']]],
+ ['remmina_5fon_5fstartup',['remmina_on_startup',['../remmina_8c.html#a26d2c20be18ff44f239b756f1d5be01a',1,'remmina.c']]],
+ ['remmina_5fplugin_5fentry',['remmina_plugin_entry',['../exec__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;exec_plugin.c'],['../kwallet__plugin__main_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;kwallet_plugin_main.c'],['../nx__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;nx_plugin.c'],['../rdp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;rdp_plugin.c'],['../glibsecret__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;glibsecret_plugin.c'],['../spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;spice_plugin.c'],['../st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;st_plugin.c'],['../telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;telepathy_plugin.c'],['../plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;plugin.c'],['../vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;vnc_plugin.c'],['../www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;www_plugin.c'],['../xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208',1,'remmina_plugin_entry(RemminaPluginService *service):&#160;xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5fclose',['remmina_plugin_exec_close',['../exec__plugin_8c.html#a775ebb715d8db084d673e05ae526c088',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5finit',['remmina_plugin_exec_init',['../exec__plugin_8c.html#a53edac9deab20832959582a95bedcafe',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5frun',['remmina_plugin_exec_run',['../exec__plugin_8c.html#a11eddf7a4294b5650382e025f9f2a0ad',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fdelete_5fpassword',['remmina_plugin_glibsecret_delete_password',['../glibsecret__plugin_8c.html#a639cd02e7ee1a797c57e9b14f73e3d1e',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fget_5fpassword',['remmina_plugin_glibsecret_get_password',['../glibsecret__plugin_8c.html#ab0ff9ff94233f3241b8ce555a534a520',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5finit',['remmina_plugin_glibsecret_init',['../glibsecret__plugin_8c.html#a8e3b8fa34a280781409f32433720e682',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fis_5fservice_5favailable',['remmina_plugin_glibsecret_is_service_available',['../glibsecret__plugin_8c.html#a7bcbee29ba82169fba3272b233603ea9',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5fstore_5fpassword',['remmina_plugin_glibsecret_store_password',['../glibsecret__plugin_8c.html#a6b913cc3dd8c30d0acb725e57c6b3853',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret_5funlock_5fsecret_5fservice',['remmina_plugin_glibsecret_unlock_secret_service',['../glibsecret__plugin_8c.html#a4405b2a6e043f5fea85711b560eaa487',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fkwallet_5fdelete_5fpassword',['remmina_plugin_kwallet_delete_password',['../kwallet__plugin__main_8c.html#aebc944531076dba0af8a531abfcd01f6',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fget_5fpassword',['remmina_plugin_kwallet_get_password',['../kwallet__plugin__main_8c.html#ac43da8da793eaf8a37af70c7fe96e2c8',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5finit',['remmina_plugin_kwallet_init',['../kwallet__plugin__main_8c.html#a6ef517573fb85cfca2843c7f8358d14d',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fis_5fservice_5favailable',['remmina_plugin_kwallet_is_service_available',['../kwallet__plugin__main_8c.html#ac1ca29a8219b7e34330c6a10f4ea3d76',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fkwallet_5fstore_5fpassword',['remmina_plugin_kwallet_store_password',['../kwallet__plugin__main_8c.html#af53acf42b7887610820f47a3323aa650',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fmanager_5fcompare_5ffunc',['remmina_plugin_manager_compare_func',['../remmina__plugin__manager_8c.html#ae78fa0b2eab8c987d810c6997b136d2e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5ffor_5feach_5fplugin',['remmina_plugin_manager_for_each_plugin',['../remmina__plugin__manager_8c.html#a13f13a6a4280268656f258cb5aeff031',1,'remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a13f13a6a4280268656f258cb5aeff031',1,'remmina_plugin_manager_for_each_plugin(RemminaPluginType type, RemminaPluginFunc func, gpointer data):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5ffor_5feach_5fplugin_5fstdout',['remmina_plugin_manager_for_each_plugin_stdout',['../remmina__plugin__manager_8h.html#a0b8798c3d17b453bddad4b948e9b0d9a',1,'remmina_plugin_manager.h']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fcanonical_5fsetting_5fname',['remmina_plugin_manager_get_canonical_setting_name',['../remmina__plugin__manager_8c.html#af60b8edfa50563ae4c7593efc3deed55',1,'remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#af60b8edfa50563ae4c7593efc3deed55',1,'remmina_plugin_manager_get_canonical_setting_name(const RemminaProtocolSetting *setting):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fexport_5ffile_5fhandler',['remmina_plugin_manager_get_export_file_handler',['../remmina__plugin__manager_8c.html#afce14b101da527ada9b44a4503e91e07',1,'remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#afce14b101da527ada9b44a4503e91e07',1,'remmina_plugin_manager_get_export_file_handler(RemminaFile *remminafile):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fimport_5ffile_5fhandler',['remmina_plugin_manager_get_import_file_handler',['../remmina__plugin__manager_8c.html#a859348bddc9069f06195915692b65076',1,'remmina_plugin_manager_get_import_file_handler(const gchar *file):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a859348bddc9069f06195915692b65076',1,'remmina_plugin_manager_get_import_file_handler(const gchar *file):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fplugin',['remmina_plugin_manager_get_plugin',['../remmina__plugin__manager_8c.html#a3872c8656a8a3d5147bcc603471c1932',1,'remmina_plugin_manager_get_plugin(RemminaPluginType type, const gchar *name):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a3872c8656a8a3d5147bcc603471c1932',1,'remmina_plugin_manager_get_plugin(RemminaPluginType type, const gchar *name):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fget_5fsecret_5fplugin',['remmina_plugin_manager_get_secret_plugin',['../remmina__plugin__manager_8c.html#ad380a98f6624aa8c830015c8b428b7b4',1,'remmina_plugin_manager_get_secret_plugin(void):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#ad380a98f6624aa8c830015c8b428b7b4',1,'remmina_plugin_manager_get_secret_plugin(void):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5finit',['remmina_plugin_manager_init',['../remmina__plugin__manager_8c.html#a92c2264598a43702594535cebbf4d8cd',1,'remmina_plugin_manager_init(void):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a92c2264598a43702594535cebbf4d8cd',1,'remmina_plugin_manager_init(void):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fis_5fencrypted_5fsetting',['remmina_plugin_manager_is_encrypted_setting',['../remmina__plugin__manager_8c.html#aef243c58b9e8c778232d5acb32c7729b',1,'remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#aef243c58b9e8c778232d5acb32c7729b',1,'remmina_plugin_manager_is_encrypted_setting(RemminaProtocolPlugin *pp, const char *setting):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fload_5fplugin',['remmina_plugin_manager_load_plugin',['../remmina__plugin__manager_8c.html#adfd705f51933350af0f8760d23e85c6e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fquery_5ffeature_5fby_5ftype',['remmina_plugin_manager_query_feature_by_type',['../remmina__plugin__manager_8c.html#a1668951fd7067f2c405e001836855080',1,'remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a1668951fd7067f2c405e001836855080',1,'remmina_plugin_manager_query_feature_by_type(RemminaPluginType ptype, const gchar *name, RemminaProtocolFeatureType ftype):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fregister_5fplugin',['remmina_plugin_manager_register_plugin',['../remmina__plugin__manager_8c.html#ad4cb2d85f9cf76089a082122f2891fb8',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow',['remmina_plugin_manager_show',['../remmina__plugin__manager_8c.html#aedec4e9cf18d99a559aa51065c2bc276',1,'remmina_plugin_manager_show(GtkWindow *parent):&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#aedec4e9cf18d99a559aa51065c2bc276',1,'remmina_plugin_manager_show(GtkWindow *parent):&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5ffor_5feach',['remmina_plugin_manager_show_for_each',['../remmina__plugin__manager_8c.html#a634fadd9871f76bc60c3da0aa95e719c',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5ffor_5feach_5fstdout',['remmina_plugin_manager_show_for_each_stdout',['../remmina__plugin__manager_8c.html#a3fdc160c477f9f5e1d881c0c054d4b07',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fmanager_5fshow_5fstdout',['remmina_plugin_manager_show_stdout',['../remmina__plugin__manager_8c.html#afe0881986b2a64bfb5460981dadcf28d',1,'remmina_plugin_manager_show_stdout():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#afe0881986b2a64bfb5460981dadcf28d',1,'remmina_plugin_manager_show_stdout():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fnx_5fcall_5ffeature',['remmina_plugin_nx_call_feature',['../nx__plugin_8c.html#a3c538a1cbd6efdd4989ae9e142a2de4e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fclose_5fconnection',['remmina_plugin_nx_close_connection',['../nx__plugin_8c.html#a89f57765ecdaf9ce7ee896dc16cd268a',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fdummy_5fhandler',['remmina_plugin_nx_dummy_handler',['../nx__plugin_8c.html#ad4a4c9b55ff6b6b1ffe2acefbf49199d',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5finit',['remmina_plugin_nx_init',['../nx__plugin_8c.html#a79807a1c2a499d75b83d267b8c08cd7e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmain',['remmina_plugin_nx_main',['../nx__plugin_8c.html#aada1c6767dcc37e55c4b4ce3b5d8ebdf',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmain_5fthread',['remmina_plugin_nx_main_thread',['../nx__plugin_8c.html#a747a6fa8ff786ff6539d664ad6e38046',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fmonitor_5fcreate_5fnotify',['remmina_plugin_nx_monitor_create_notify',['../nx__plugin_8c.html#aeb6030365c211465628de098dca1ac17',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fplug_5fadded',['remmina_plugin_nx_on_plug_added',['../nx__plugin_8c.html#a9f17900103bf5e4dfa17ad0c185faf06',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fplug_5fremoved',['remmina_plugin_nx_on_plug_removed',['../nx__plugin_8c.html#a9ad082d04b9e0e374b58d98e8474821e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fon_5fproxy_5fexit',['remmina_plugin_nx_on_proxy_exit',['../nx__plugin_8c.html#a65c4ca70de2ad9bc56a0c2a3cf2e8123',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fopen_5fconnection',['remmina_plugin_nx_open_connection',['../nx__plugin_8c.html#a24d40a7cb7e890449902b5970ab50707',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fquery_5ffeature',['remmina_plugin_nx_query_feature',['../nx__plugin_8c.html#a5f6e5136c200aefda845bb8979babbad',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fremove_5fwindow_5fid',['remmina_plugin_nx_remove_window_id',['../nx__plugin_8c.html#a38661931521f9b3472c6d76b6c201105',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fsend_5fctrlaltdel',['remmina_plugin_nx_send_ctrlaltdel',['../nx__plugin_8c.html#ab7107dd5c7dad8e647489abb6650ed6e',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fssh_5fauth_5fcallback',['remmina_plugin_nx_ssh_auth_callback',['../nx__plugin_8c.html#a3154460257b0cccadad068cff973ce30',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fstart_5fcreate_5fnotify',['remmina_plugin_nx_start_create_notify',['../nx__plugin_8c.html#ae4b790bf7e413fa815f636c1b0fcbe23',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fstart_5fsession',['remmina_plugin_nx_start_session',['../nx__plugin_8c.html#aa471a4e13385a583efb610d33fd9a1b5',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5ftry_5fwindow_5fid',['remmina_plugin_nx_try_window_id',['../nx__plugin_8c.html#a4c034c5e70f4c327eaab63bbd9c9edef',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fwait_5fsignal',['remmina_plugin_nx_wait_signal',['../nx__plugin_8c.html#a259295f4bce4182ccc132e958ea7eb56',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fcall_5ffeature',['remmina_plugin_sftp_call_feature',['../remmina__sftp__plugin_8c.html#a8d16ecc8e6e653a678e7f93b033e5863',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fclient_5fon_5frealize',['remmina_plugin_sftp_client_on_realize',['../remmina__sftp__plugin_8c.html#abed4b9ee1509eb888b9d767b89d9fdb6',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fclose_5fconnection',['remmina_plugin_sftp_close_connection',['../remmina__sftp__plugin_8c.html#acc468c14d98ace55509ad2b8fb502e3a',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5finit',['remmina_plugin_sftp_init',['../remmina__sftp__plugin_8c.html#aa3a2916593de087ed150cd9e00e4b543',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fmain_5fthread',['remmina_plugin_sftp_main_thread',['../remmina__sftp__plugin_8c.html#ab524c406d78b2e32a339884fbdae56a9',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fopen_5fconnection',['remmina_plugin_sftp_open_connection',['../remmina__sftp__plugin_8c.html#a0553d8f4834a1865e3640ec4180e63c4',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fquery_5ffeature',['remmina_plugin_sftp_query_feature',['../remmina__sftp__plugin_8c.html#abd7099f5655a134c598ef95564254323',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5fstart_5fdirect_5ftunnel',['remmina_plugin_sftp_start_direct_tunnel',['../remmina__sftp__plugin_8c.html#a7421d54c8a4a95b6b92de16779d91917',1,'remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport):&#160;remmina_sftp_plugin.c'],['../remmina__sftp__plugin_8h.html#a7421d54c8a4a95b6b92de16779d91917',1,'remmina_plugin_sftp_start_direct_tunnel(RemminaProtocolWidget *gp, char **phost, int *pport):&#160;remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fask_5fauth',['remmina_plugin_spice_ask_auth',['../spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fcall_5ffeature',['remmina_plugin_spice_call_feature',['../spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fchannel_5fnew_5fcb',['remmina_plugin_spice_channel_new_cb',['../spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fclose_5fconnection',['remmina_plugin_spice_close_connection',['../spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fdisplay_5fready_5fcb',['remmina_plugin_spice_display_ready_cb',['../spice__plugin_8c.html#a0524df751040673aec5d62839c76a438',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fcancel_5fcb',['remmina_plugin_spice_file_transfer_cancel_cb',['../spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fdialog_5fresponse_5fcb',['remmina_plugin_spice_file_transfer_dialog_response_cb',['../spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5ffinished_5fcb',['remmina_plugin_spice_file_transfer_finished_cb',['../spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fnew_5fcb',['remmina_plugin_spice_file_transfer_new_cb',['../spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c',1,'remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *, SpiceFileTransferTask *, RemminaProtocolWidget *):&#160;spice_plugin_file_transfer.c'],['../spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9',1,'remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *main_channel, SpiceFileTransferTask *task, RemminaProtocolWidget *gp):&#160;spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5ffile_5ftransfer_5fprogress_5fcb',['remmina_plugin_spice_file_transfer_progress_cb',['../spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5finit',['remmina_plugin_spice_init',['../spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fkeystroke',['remmina_plugin_spice_keystroke',['../spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fmain_5fchannel_5fevent_5fcb',['remmina_plugin_spice_main_channel_event_cb',['../spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fopen_5fconnection',['remmina_plugin_spice_open_connection',['../spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fquery_5ffeature',['remmina_plugin_spice_query_feature',['../spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fselect_5fusb_5fdevices',['remmina_plugin_spice_select_usb_devices',['../spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4',1,'remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *):&#160;spice_plugin_usb.c'],['../spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b',1,'remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *gp):&#160;spice_plugin_usb.c']]],
+ ['remmina_5fplugin_5fspice_5fsend_5fctrlaltdel',['remmina_plugin_spice_send_ctrlaltdel',['../spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fupdate_5fscale',['remmina_plugin_spice_update_scale',['../spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fusb_5fconnect_5ffailed_5fcb',['remmina_plugin_spice_usb_connect_failed_cb',['../spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b',1,'spice_plugin_usb.c']]],
+ ['remmina_5fplugin_5fspice_5fxfer_5fwidgets_5ffree',['remmina_plugin_spice_xfer_widgets_free',['../spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fspice_5fxfer_5fwidgets_5fnew',['remmina_plugin_spice_xfer_widgets_new',['../spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38',1,'spice_plugin_file_transfer.c']]],
+ ['remmina_5fplugin_5fssh_5fcall_5ffeature',['remmina_plugin_ssh_call_feature',['../remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fclose_5fconnection',['remmina_plugin_ssh_close_connection',['../remmina__ssh__plugin_8c.html#a6302047dc754570d415b0ba68fd9c203',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5finit',['remmina_plugin_ssh_init',['../remmina__ssh__plugin_8c.html#a62f9ea89d10bb2e375d70c9578ca95fd',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fmain_5fthread',['remmina_plugin_ssh_main_thread',['../remmina__ssh__plugin_8c.html#a4fa1cd6e50c66d79e727d7264fc454ee',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fon_5ffocus_5fin',['remmina_plugin_ssh_on_focus_in',['../remmina__ssh__plugin_8c.html#a7bf273dcf4cc7f985727150f15fa9046',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fon_5fsize_5fallocate',['remmina_plugin_ssh_on_size_allocate',['../remmina__ssh__plugin_8c.html#ac54051cfe6fedf5d60160f2540917718',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fopen_5fconnection',['remmina_plugin_ssh_open_connection',['../remmina__ssh__plugin_8c.html#a01bb81cfc23add39c9260e888ef1d88f',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fpopup_5fui',['remmina_plugin_ssh_popup_ui',['../remmina__ssh__plugin_8c.html#a4639e47898939f893505f0a30993aead',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fquery_5ffeature',['remmina_plugin_ssh_query_feature',['../remmina__ssh__plugin_8c.html#a31cf1c896508adf4f8f43f70d8e8f599',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fset_5fvte_5fpref',['remmina_plugin_ssh_set_vte_pref',['../remmina__ssh__plugin_8c.html#aa41537b3d8e7ae12f65783f6dfcc7c6f',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fcopy_5fclipboard',['remmina_plugin_ssh_vte_copy_clipboard',['../remmina__ssh__plugin_8c.html#acb6514abadc6fcf387ef91e3c36bb146',1,'remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#acb6514abadc6fcf387ef91e3c36bb146',1,'remmina_plugin_ssh_vte_copy_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fpaste_5fclipboard',['remmina_plugin_ssh_vte_paste_clipboard',['../remmina__ssh__plugin_8c.html#adf8c8f3dd7fa5412d8c580668cc36146',1,'remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#adf8c8f3dd7fa5412d8c580668cc36146',1,'remmina_plugin_ssh_vte_paste_clipboard(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fsave_5fsession',['remmina_plugin_ssh_vte_save_session',['../remmina__ssh__plugin_8c.html#a4fcffcd3b4d288aa52087e48c78d6570',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fselect_5fall',['remmina_plugin_ssh_vte_select_all',['../remmina__ssh__plugin_8c.html#a3290489a1ff9e51fbc013424fbfc8505',1,'remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505',1,'remmina_plugin_ssh_vte_select_all(GtkMenuItem *menuitem, gpointer vte):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5fvte_5fterminal_5fset_5fencoding_5fand_5fpty',['remmina_plugin_ssh_vte_terminal_set_encoding_and_pty',['../remmina__ssh__plugin_8c.html#adc8e3776e67abca9ab913bc33172e4ce',1,'remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#adc8e3776e67abca9ab913bc33172e4ce',1,'remmina_plugin_ssh_vte_terminal_set_encoding_and_pty(VteTerminal *terminal, const char *codeset, int master, int slave):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fclose_5fconnection',['remmina_plugin_st_close_connection',['../st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5finit',['remmina_plugin_st_init',['../st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fon_5fplug_5fadded',['remmina_plugin_st_on_plug_added',['../st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fon_5fplug_5fremoved',['remmina_plugin_st_on_plug_removed',['../st__plugin_8c.html#ae829911e1c265665933ab5318f462466',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fopen_5fconnection',['remmina_plugin_st_open_connection',['../st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5ftelepathy_5fentry',['remmina_plugin_telepathy_entry',['../telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356',1,'telepathy_plugin.c']]],
+ ['remmina_5fplugin_5ftool_5fclose_5fconnection',['remmina_plugin_tool_close_connection',['../plugin_8c.html#aeeb34fbeae9f4974869223f6dd83ddcb',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftool_5finit',['remmina_plugin_tool_init',['../plugin_8c.html#ad7d68793cc9dfffacf0b5e7eda20ad61',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftool_5fopen_5fconnection',['remmina_plugin_tool_open_connection',['../plugin_8c.html#a5109cffc255b24e5a596e94404811f50',1,'plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fbits',['remmina_plugin_vnc_bits',['../vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fcall_5ffeature',['remmina_plugin_vnc_call_feature',['../vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fchat_5fon_5fdestroy',['remmina_plugin_vnc_chat_on_destroy',['../vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fchat_5fon_5fsend',['remmina_plugin_vnc_chat_on_send',['../vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fchat',['remmina_plugin_vnc_close_chat',['../vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fconnection',['remmina_plugin_vnc_close_connection',['../vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fclose_5fconnection_5ftimeout',['remmina_plugin_vnc_close_connection_timeout',['../vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5ffree',['remmina_plugin_vnc_event_free',['../vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5ffree_5fall',['remmina_plugin_vnc_event_free_all',['../vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fpush',['remmina_plugin_vnc_event_push',['../vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fevent_5fqueue_5fpop_5fhead',['remmina_plugin_vnc_event_queue_pop_head',['../vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fincoming_5fconnection',['remmina_plugin_vnc_incoming_connection',['../vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5finit',['remmina_plugin_vnc_init',['../vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fkeystroke',['remmina_plugin_vnc_keystroke',['../vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain',['remmina_plugin_vnc_main',['../vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain_5floop',['remmina_plugin_vnc_main_loop',['../vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fmain_5fthread',['remmina_plugin_vnc_main_thread',['../vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fbutton',['remmina_plugin_vnc_on_button',['../vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fcuttext',['remmina_plugin_vnc_on_cuttext',['../vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fcuttext_5frequest',['remmina_plugin_vnc_on_cuttext_request',['../vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fdraw',['remmina_plugin_vnc_on_draw',['../vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fkey',['remmina_plugin_vnc_on_key',['../vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fmotion',['remmina_plugin_vnc_on_motion',['../vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5frealize',['remmina_plugin_vnc_on_realize',['../vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fon_5fscroll',['remmina_plugin_vnc_on_scroll',['../vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fopen_5fchat',['remmina_plugin_vnc_open_chat',['../vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fopen_5fconnection',['remmina_plugin_vnc_open_connection',['../vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fprocess_5fvnc_5fevent',['remmina_plugin_vnc_process_vnc_event',['../vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fquery_5ffeature',['remmina_plugin_vnc_query_feature',['../vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fcuttext',['remmina_plugin_vnc_queue_cuttext',['../vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fdraw_5farea',['remmina_plugin_vnc_queue_draw_area',['../vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueue_5fdraw_5farea_5freal',['remmina_plugin_vnc_queue_draw_area_real',['../vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fqueuecursor',['remmina_plugin_vnc_queuecursor',['../vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frelease_5fkey',['remmina_plugin_vnc_release_key',['../vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fallocfb',['remmina_plugin_vnc_rfb_allocfb',['../vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fbell',['remmina_plugin_vnc_rfb_bell',['../vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fchat',['remmina_plugin_vnc_rfb_chat',['../vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcredential',['remmina_plugin_vnc_rfb_credential',['../vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcursor_5fshape',['remmina_plugin_vnc_rfb_cursor_shape',['../vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fcuttext',['remmina_plugin_vnc_rfb_cuttext',['../vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5ffill_5fbuffer',['remmina_plugin_vnc_rfb_fill_buffer',['../vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fpassword',['remmina_plugin_vnc_rfb_password',['../vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5frfb_5fupdatefb',['remmina_plugin_vnc_rfb_updatefb',['../vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fscale_5farea',['remmina_plugin_vnc_scale_area',['../vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fscale_5fcoordinates',['remmina_plugin_vnc_scale_coordinates',['../vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fsend_5fctrlaltdel',['remmina_plugin_vnc_send_ctrlaltdel',['../vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fsetcursor',['remmina_plugin_vnc_setcursor',['../vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fcolordepth',['remmina_plugin_vnc_update_colordepth',['../vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fquality',['remmina_plugin_vnc_update_quality',['../vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fupdate_5fscale',['remmina_plugin_vnc_update_scale',['../vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c',1,'remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale):&#160;vnc_plugin.c'],['../vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9',1,'remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale):&#160;vnc_plugin.h']]],
+ ['remmina_5fplugin_5fwww_5fclose_5fconnection',['remmina_plugin_www_close_connection',['../www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fnav',['remmina_plugin_www_decide_nav',['../www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2',1,'remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32',1,'remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fnewwin',['remmina_plugin_www_decide_newwin',['../www__plugin_8c.html#a05218b821edab542795439a87ad9d909',1,'remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#a05218b821edab542795439a87ad9d909',1,'remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fpolicy_5fcb',['remmina_plugin_www_decide_policy_cb',['../www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdecide_5fresource',['remmina_plugin_www_decide_resource',['../www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374',1,'remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374',1,'remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fdownload_5fstarted',['remmina_plugin_www_download_started',['../www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fform_5fauth',['remmina_plugin_www_form_auth',['../www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fget_5fsnapshot',['remmina_plugin_www_get_snapshot',['../www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5finit',['remmina_plugin_www_init',['../www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fload_5ffailed_5ftls_5fcb',['remmina_plugin_www_load_failed_tls_cb',['../www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fnotify_5fdownload',['remmina_plugin_www_notify_download',['../www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d',1,'remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d',1,'remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fon_5fauth',['remmina_plugin_www_on_auth',['../www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fon_5fcreate',['remmina_plugin_www_on_create',['../www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fopen_5fconnection',['remmina_plugin_www_open_connection',['../www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fresponse_5freceived',['remmina_plugin_www_response_received',['../www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b',1,'remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp):&#160;www_plugin.c'],['../www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b',1,'remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp):&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fsave_5fsnapshot',['remmina_plugin_www_save_snapshot',['../www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fcall_5ffeature',['remmina_plugin_xdmcp_call_feature',['../xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fclose_5fconnection',['remmina_plugin_xdmcp_close_connection',['../xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5finit',['remmina_plugin_xdmcp_init',['../xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fmain',['remmina_plugin_xdmcp_main',['../xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fmain_5fthread',['remmina_plugin_xdmcp_main_thread',['../xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fon_5fplug_5fadded',['remmina_plugin_xdmcp_on_plug_added',['../xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fon_5fplug_5fremoved',['remmina_plugin_xdmcp_on_plug_removed',['../xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fopen_5fconnection',['remmina_plugin_xdmcp_open_connection',['../xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fquery_5ffeature',['remmina_plugin_xdmcp_query_feature',['../xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fsend_5fctrlaltdel',['remmina_plugin_xdmcp_send_ctrlaltdel',['../xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fstart_5fxephyr',['remmina_plugin_xdmcp_start_xephyr',['../xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5ftunnel_5finit_5fcallback',['remmina_plugin_xdmcp_tunnel_init_callback',['../xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632',1,'xdmcp_plugin.c']]],
+ ['remmina_5fpref_5fadd_5frecent',['remmina_pref_add_recent',['../remmina__pref_8c.html#ab9e75c6bf39aa93a87d421fc3d742d60',1,'remmina_pref_add_recent(const gchar *protocol, const gchar *server):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ab9e75c6bf39aa93a87d421fc3d742d60',1,'remmina_pref_add_recent(const gchar *protocol, const gchar *server):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fclear_5frecent',['remmina_pref_clear_recent',['../remmina__pref_8c.html#ac3b15f811daf0aaf8bacd67f1b47aa14',1,'remmina_pref_clear_recent(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ac3b15f811daf0aaf8bacd67f1b47aa14',1,'remmina_pref_clear_recent(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fdialog_5fadd_5fpref_5fplugin',['remmina_pref_dialog_add_pref_plugin',['../remmina__pref__dialog_8c.html#add9c48bccc2c61be2f2900a154648dd4',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fclear_5frecent',['remmina_pref_dialog_clear_recent',['../remmina__pref__dialog_8c.html#a470290d26c88259265912a3e0018b662',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fdisable_5ftray_5ficon_5fon_5ftoggled',['remmina_pref_dialog_disable_tray_icon_on_toggled',['../remmina__pref__dialog_8c.html#a18bfbeb5d049a9f37f7624199b2b864a',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fget_5fdialog',['remmina_pref_dialog_get_dialog',['../remmina__pref__dialog_8c.html#af87f153e3fc696f76da732d8e431be5a',1,'remmina_pref_dialog_get_dialog():&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#aa8862957212096ddda372be1310c8bd4',1,'remmina_pref_dialog_get_dialog(void):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5finit',['remmina_pref_dialog_init',['../remmina__pref__dialog_8c.html#a9a050b69e373c90ea7d400aa94f34344',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fnew',['remmina_pref_dialog_new',['../remmina__pref__dialog_8c.html#a16091735af5c6ee31fb794a5fb860342',1,'remmina_pref_dialog_new(gint default_tab, GtkWindow *parent):&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#a482168ebe847fb3d052f940e8b82a69a',1,'remmina_pref_dialog_new(gint default_tab, GtkWindow *parent):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fon_5fclose_5fclicked',['remmina_pref_dialog_on_close_clicked',['../remmina__pref__dialog_8c.html#adc2763311ece7ab6b505d4ec56391f69',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fon_5fkey_5fchooser',['remmina_pref_dialog_on_key_chooser',['../remmina__pref__dialog_8c.html#a7576b68fbb2a0497d7ac51eb0633e877',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fset_5fbutton_5flabel',['remmina_pref_dialog_set_button_label',['../remmina__pref__dialog_8c.html#a384dde55873f855555c0194d45cbfd59',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fdialog_5fvte_5ffont_5fon_5ftoggled',['remmina_pref_dialog_vte_font_on_toggled',['../remmina__pref__dialog_8c.html#a620e1cd173b0c970580c33397c076d6e',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5ffile_5fdo_5fcopy',['remmina_pref_file_do_copy',['../remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5ffile_5fload_5fcolors',['remmina_pref_file_load_colors',['../remmina__pref_8c.html#ad6424eb32c9549eb3e26f167dc58c218',1,'remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ad6424eb32c9549eb3e26f167dc58c218',1,'remmina_pref_file_load_colors(GKeyFile *gkeyfile, RemminaColorPref *color_pref):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fgen_5fsecret',['remmina_pref_gen_secret',['../remmina__pref_8c.html#afc609e167e078f1991320f79e9f9157c',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fboolean',['remmina_pref_get_boolean',['../remmina__pref_8c.html#a9a8d02227eb703bccc3f9296a5d89d6f',1,'remmina_pref_get_boolean(const gchar *key):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a9a8d02227eb703bccc3f9296a5d89d6f',1,'remmina_pref_get_boolean(const gchar *key):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fkeyval_5ffrom_5fstr',['remmina_pref_get_keyval_from_str',['../remmina__pref_8c.html#a0296a8f5b359547a0aa4cbffb914edd3',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5frecent',['remmina_pref_get_recent',['../remmina__pref_8c.html#a0208d5dc8197423da67e5967aafb7a05',1,'remmina_pref_get_recent(const gchar *protocol):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a0208d5dc8197423da67e5967aafb7a05',1,'remmina_pref_get_recent(const gchar *protocol):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fscale_5fquality',['remmina_pref_get_scale_quality',['../remmina__pref_8c.html#a37cd589f00c94cb28eabb1bce4646d0b',1,'remmina_pref_get_scale_quality(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a37cd589f00c94cb28eabb1bce4646d0b',1,'remmina_pref_get_scale_quality(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5floglevel',['remmina_pref_get_ssh_loglevel',['../remmina__pref_8c.html#a12e52ee4ab89912280605e36ee069267',1,'remmina_pref_get_ssh_loglevel(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a12e52ee4ab89912280605e36ee069267',1,'remmina_pref_get_ssh_loglevel(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5fparseconfig',['remmina_pref_get_ssh_parseconfig',['../remmina__pref_8c.html#a98b783e4c5c1dae695fe554f52f94a23',1,'remmina_pref_get_ssh_parseconfig(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a98b783e4c5c1dae695fe554f52f94a23',1,'remmina_pref_get_ssh_parseconfig(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepcnt',['remmina_pref_get_ssh_tcp_keepcnt',['../remmina__pref_8c.html#a781431450dfcf639c8dd96701be3795b',1,'remmina_pref_get_ssh_tcp_keepcnt(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a781431450dfcf639c8dd96701be3795b',1,'remmina_pref_get_ssh_tcp_keepcnt(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepidle',['remmina_pref_get_ssh_tcp_keepidle',['../remmina__pref_8c.html#a5ed143a13f2a3393e44fd5b2c4fee4be',1,'remmina_pref_get_ssh_tcp_keepidle(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a5ed143a13f2a3393e44fd5b2c4fee4be',1,'remmina_pref_get_ssh_tcp_keepidle(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fkeepintvl',['remmina_pref_get_ssh_tcp_keepintvl',['../remmina__pref_8c.html#ad7040b17df053835bfb21eb24ae10414',1,'remmina_pref_get_ssh_tcp_keepintvl(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ad7040b17df053835bfb21eb24ae10414',1,'remmina_pref_get_ssh_tcp_keepintvl(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fssh_5ftcp_5fusrtimeout',['remmina_pref_get_ssh_tcp_usrtimeout',['../remmina__pref_8c.html#a1a695b64e75d6f49de220dc777e57714',1,'remmina_pref_get_ssh_tcp_usrtimeout(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a1a695b64e75d6f49de220dc777e57714',1,'remmina_pref_get_ssh_tcp_usrtimeout(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fsshtunnel_5fport',['remmina_pref_get_sshtunnel_port',['../remmina__pref_8c.html#a6982152fd0492586819ce1760a853e99',1,'remmina_pref_get_sshtunnel_port(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a6982152fd0492586819ce1760a853e99',1,'remmina_pref_get_sshtunnel_port(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fget_5fvalue',['remmina_pref_get_value',['../remmina__pref_8c.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6',1,'remmina_pref_get_value(const gchar *key):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a6bcbf4cc3a58ed4ee9f087b4270d8fd6',1,'remmina_pref_get_value(const gchar *key):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5finit',['remmina_pref_init',['../remmina__pref_8c.html#a400f7319fd3996a13399ef72bcf0a2fd',1,'remmina_pref_init(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a400f7319fd3996a13399ef72bcf0a2fd',1,'remmina_pref_init(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5finit_5fkeymap',['remmina_pref_init_keymap',['../remmina__pref_8c.html#aed7f3859d4306419932df15131987355',1,'remmina_pref.c']]],
+ ['remmina_5fpref_5fis_5frw',['remmina_pref_is_rw',['../remmina__pref_8c.html#a0dd25f5b3a055b936a5fa327bc71f19c',1,'remmina_pref_is_rw(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a0dd25f5b3a055b936a5fa327bc71f19c',1,'remmina_pref_is_rw(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fkeymap_5fget_5fkeyval',['remmina_pref_keymap_get_keyval',['../remmina__pref_8c.html#aaac087c000b0863a296f2739f6344af8',1,'remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval):&#160;remmina_pref.c'],['../remmina__pref_8h.html#aaac087c000b0863a296f2739f6344af8',1,'remmina_pref_keymap_get_keyval(const gchar *keymap, guint keyval):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fkeymap_5fgroups',['remmina_pref_keymap_groups',['../remmina__pref_8c.html#a745bbef1d48a7462f8db997821742395',1,'remmina_pref_keymap_groups(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a745bbef1d48a7462f8db997821742395',1,'remmina_pref_keymap_groups(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fon_5fbutton_5fkeystrokes_5fclicked',['remmina_pref_on_button_keystrokes_clicked',['../remmina__pref__dialog_8c.html#a0c5f28eea2fe32297da5f7833df7b131',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fbutton_5fresolutions_5fclicked',['remmina_pref_on_button_resolutions_clicked',['../remmina__pref__dialog_8c.html#ad4b3f23a900c8f07814fd0fb26f29e5f',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fcolor_5fscheme_5fselected',['remmina_pref_on_color_scheme_selected',['../remmina__pref__dialog_8c.html#a50dcebddc0891688ae179ba940d21fd1',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fon_5fdialog_5fdestroy',['remmina_pref_on_dialog_destroy',['../remmina__pref__dialog_8c.html#ab9776574663e2c3fcb793ec70887336d',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5fsave',['remmina_pref_save',['../remmina__pref_8c.html#ae17aaf37449083a4322b6748c8f3a39f',1,'remmina_pref_save(void):&#160;remmina_pref.c'],['../remmina__pref_8h.html#ae17aaf37449083a4322b6748c8f3a39f',1,'remmina_pref_save(void):&#160;remmina_pref.c']]],
+ ['remmina_5fpref_5fset_5fvalue',['remmina_pref_set_value',['../remmina__pref_8c.html#a4fbb2aff07d1fef416352d8b80d79e02',1,'remmina_pref_set_value(const gchar *key, const gchar *value):&#160;remmina_pref.c'],['../remmina__pref_8h.html#a4fbb2aff07d1fef416352d8b80d79e02',1,'remmina_pref_set_value(const gchar *key, const gchar *value):&#160;remmina_pref.c']]],
+ ['remmina_5fprefdiag_5funlock_5frepwd_5fon_5fchanged',['remmina_prefdiag_unlock_repwd_on_changed',['../remmina__pref__dialog_8c.html#a19ba9bbbff353b8e36810d423e6f7e8f',1,'remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog):&#160;remmina_pref_dialog.c'],['../remmina__pref__dialog_8h.html#a19ba9bbbff353b8e36810d423e6f7e8f',1,'remmina_prefdiag_unlock_repwd_on_changed(GtkEditable *editable, RemminaPrefDialog *dialog):&#160;remmina_pref_dialog.c']]],
+ ['remmina_5fprofiles_5fget_5fdata',['remmina_profiles_get_data',['../remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328',1,'remmina_stats.c']]],
+ ['remmina_5fprotocol_5fwidget_5fcall_5ffeature_5fby_5fref',['remmina_protocol_widget_call_feature_by_ref',['../remmina__protocol__widget_8c.html#a605b69a9aa4393024369cc5070488692',1,'remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a605b69a9aa4393024369cc5070488692',1,'remmina_protocol_widget_call_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fcall_5ffeature_5fby_5ftype',['remmina_protocol_widget_call_feature_by_type',['../remmina__protocol__widget_8c.html#a6a630e96e5b914d60d678ae8eaad4cd9',1,'remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a6a630e96e5b914d60d678ae8eaad4cd9',1,'remmina_protocol_widget_call_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type, gint id):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fclose',['remmina_protocol_widget_chat_close',['../remmina__protocol__widget_8c.html#a4a3a9ba7422fc302b0b412ac771c9953',1,'remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a4a3a9ba7422fc302b0b412ac771c9953',1,'remmina_protocol_widget_chat_close(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fon_5fdestroy',['remmina_protocol_widget_chat_on_destroy',['../remmina__protocol__widget_8c.html#a04f0a11e50cdbd98ab80984fd5aca16d',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5fopen',['remmina_protocol_widget_chat_open',['../remmina__protocol__widget_8c.html#a66263e6e7da79357ceb80d32b191d9f2',1,'remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp)):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a66263e6e7da79357ceb80d32b191d9f2',1,'remmina_protocol_widget_chat_open(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp)):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fchat_5freceive',['remmina_protocol_widget_chat_receive',['../remmina__protocol__widget_8c.html#ae2522242b3f39ee84ee8cf75170de0c0',1,'remmina_protocol_widget_chat_receive(RemminaProtocolWidget *gp, const gchar *text):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ae2522242b3f39ee84ee8cf75170de0c0',1,'remmina_protocol_widget_chat_receive(RemminaProtocolWidget *gp, const gchar *text):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclass_5finit',['remmina_protocol_widget_class_init',['../remmina__protocol__widget_8c.html#a8c125f58aa4fac0e4c88f293e4d4dd74',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclose_5fall_5ftunnels',['remmina_protocol_widget_close_all_tunnels',['../remmina__protocol__widget_8c.html#a11480396cb379860d16d9d41ef91ecb1',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fclose_5fconnection',['remmina_protocol_widget_close_connection',['../remmina__protocol__widget_8c.html#aa41324b7175c46bb42b978332db95d22',1,'remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa41324b7175c46bb42b978332db95d22',1,'remmina_protocol_widget_close_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdesktop_5fresize',['remmina_protocol_widget_desktop_resize',['../remmina__protocol__widget_8c.html#a9acf045c5a3eec5b7f748678dee0d3ee',1,'remmina_protocol_widget_desktop_resize(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9acf045c5a3eec5b7f748678dee0d3ee',1,'remmina_protocol_widget_desktop_resize(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdestroy',['remmina_protocol_widget_destroy',['../remmina__protocol__widget_8c.html#a7e54d9bb42d2d337527d3af657ef1e1f',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog',['remmina_protocol_widget_dialog',['../remmina__protocol__widget_8c.html#a858e4756aa97ce424ccf12475c225c54',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fdialog_5fmt_5fsetup',['remmina_protocol_widget_dialog_mt_setup',['../remmina__protocol__widget_8c.html#aa9639b76ac0a92647ce08bdfe943d113',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5femit_5fsignal',['remmina_protocol_widget_emit_signal',['../remmina__protocol__widget_8c.html#ac3e5a7f14aef4adb2e57d35e9c180b3b',1,'remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ac3e5a7f14aef4adb2e57d35e9c180b3b',1,'remmina_protocol_widget_emit_signal(RemminaProtocolWidget *gp, const gchar *signal_name):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcacert',['remmina_protocol_widget_get_cacert',['../remmina__protocol__widget_8c.html#a9473da27fd10eb46ef8360f9ad4be86d',1,'remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9473da27fd10eb46ef8360f9ad4be86d',1,'remmina_protocol_widget_get_cacert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcacrl',['remmina_protocol_widget_get_cacrl',['../remmina__protocol__widget_8c.html#a70aecb9af2ea35527e8d058d1d87a0d3',1,'remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a70aecb9af2ea35527e8d058d1d87a0d3',1,'remmina_protocol_widget_get_cacrl(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fclientcert',['remmina_protocol_widget_get_clientcert',['../remmina__protocol__widget_8c.html#ab9632c73b32531b7bea976e10204670b',1,'remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab9632c73b32531b7bea976e10204670b',1,'remmina_protocol_widget_get_clientcert(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fclientkey',['remmina_protocol_widget_get_clientkey',['../remmina__protocol__widget_8c.html#a08d312825fc0de9f9286279d99f763a1',1,'remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a08d312825fc0de9f9286279d99f763a1',1,'remmina_protocol_widget_get_clientkey(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcurrent_5fscale_5fmode',['remmina_protocol_widget_get_current_scale_mode',['../remmina__protocol__widget_8c.html#a5ec62969da54155e24edcb1d998f93f7',1,'remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5ec62969da54155e24edcb1d998f93f7',1,'remmina_protocol_widget_get_current_scale_mode(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fdomain',['remmina_protocol_widget_get_domain',['../remmina__protocol__widget_8c.html#a7c15fa81642c52ef382e1dbe34ffb6ac',1,'remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a7c15fa81642c52ef382e1dbe34ffb6ac',1,'remmina_protocol_widget_get_domain(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ferror_5fmessage',['remmina_protocol_widget_get_error_message',['../remmina__protocol__widget_8c.html#a508044024b303c286a0e643e44d85a29',1,'remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a508044024b303c286a0e643e44d85a29',1,'remmina_protocol_widget_get_error_message(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fexpand',['remmina_protocol_widget_get_expand',['../remmina__protocol__widget_8c.html#a25bcb2ae99449624fed6f770218e3d25',1,'remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a25bcb2ae99449624fed6f770218e3d25',1,'remmina_protocol_widget_get_expand(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ffeatures',['remmina_protocol_widget_get_features',['../remmina__protocol__widget_8c.html#af9b6a2c2665010ab09a6d9943f9850bd',1,'remmina_protocol_widget_get_features(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#af9b6a2c2665010ab09a6d9943f9850bd',1,'remmina_protocol_widget_get_features(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ffile',['remmina_protocol_widget_get_file',['../remmina__protocol__widget_8c.html#a2506e80d482c34532d0e534856452069',1,'remmina_protocol_widget_get_file(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2506e80d482c34532d0e534856452069',1,'remmina_protocol_widget_get_file(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fheight',['remmina_protocol_widget_get_height',['../remmina__protocol__widget_8c.html#ae609b351fff17c235251b0ba7c480da5',1,'remmina_protocol_widget_get_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ae609b351fff17c235251b0ba7c480da5',1,'remmina_protocol_widget_get_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fpassword',['remmina_protocol_widget_get_password',['../remmina__protocol__widget_8c.html#a3fc52d61f77327534286f57e563e0923',1,'remmina_protocol_widget_get_password(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a3fc52d61f77327534286f57e563e0923',1,'remmina_protocol_widget_get_password(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fprofile_5fremote_5fheight',['remmina_protocol_widget_get_profile_remote_height',['../remmina__protocol__widget_8c.html#ad8df6a87e19b7751b26820ef4a668de9',1,'remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad8df6a87e19b7751b26820ef4a668de9',1,'remmina_protocol_widget_get_profile_remote_height(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fprofile_5fremote_5fwidth',['remmina_protocol_widget_get_profile_remote_width',['../remmina__protocol__widget_8c.html#ab4c6435ef92e34a94270069ce1861907',1,'remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab4c6435ef92e34a94270069ce1861907',1,'remmina_protocol_widget_get_profile_remote_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fsavepassword',['remmina_protocol_widget_get_savepassword',['../remmina__protocol__widget_8c.html#a9ed3110b7b030bccd0ff9ed70e86da2d',1,'remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9ed3110b7b030bccd0ff9ed70e86da2d',1,'remmina_protocol_widget_get_savepassword(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5ftype',['remmina_protocol_widget_get_type',['../remmina__protocol__widget_8h.html#aca61c93aaf5f3cbc2046c8267bb84a2e',1,'remmina_protocol_widget.h']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fusername',['remmina_protocol_widget_get_username',['../remmina__protocol__widget_8c.html#a96159bd8e9d70c74967e666e2f188df0',1,'remmina_protocol_widget_get_username(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a96159bd8e9d70c74967e666e2f188df0',1,'remmina_protocol_widget_get_username(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fwidth',['remmina_protocol_widget_get_width',['../remmina__protocol__widget_8c.html#aaf355ea7103fc57a4cbc7b815cde2995',1,'remmina_protocol_widget_get_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aaf355ea7103fc57a4cbc7b815cde2995',1,'remmina_protocol_widget_get_width(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fgrab_5ffocus',['remmina_protocol_widget_grab_focus',['../remmina__protocol__widget_8c.html#a290eb68f0e86de1b7b82e2d98a1494d1',1,'remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a290eb68f0e86de1b7b82e2d98a1494d1',1,'remmina_protocol_widget_grab_focus(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fhas_5ferror',['remmina_protocol_widget_has_error',['../remmina__protocol__widget_8c.html#aab2f304822ccfd4979854ef1afd81771',1,'remmina_protocol_widget_has_error(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aab2f304822ccfd4979854ef1afd81771',1,'remmina_protocol_widget_has_error(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5finit',['remmina_protocol_widget_init',['../remmina__protocol__widget_8c.html#a0fcec40aae330e115d1bae66aeefb3df',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5finit_5ftunnel',['remmina_protocol_widget_init_tunnel',['../remmina__protocol__widget_8c.html#a5567a5c55d9a880d174faabafcd15fa3',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fis_5fclosed',['remmina_protocol_widget_is_closed',['../remmina__protocol__widget_8c.html#a2830f756dfc3d735b57b0c5753c429e3',1,'remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2830f756dfc3d735b57b0c5753c429e3',1,'remmina_protocol_widget_is_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fmpdestroy',['remmina_protocol_widget_mpdestroy',['../remmina__protocol__widget_8c.html#a97cba8208a4348446159bf465b3233f5',1,'remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a97cba8208a4348446159bf465b3233f5',1,'remmina_protocol_widget_mpdestroy(RemminaConnectionObject *cnnobj, RemminaMessagePanel *mp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fmpprogress',['remmina_protocol_widget_mpprogress',['../remmina__protocol__widget_8c.html#a78b123eca6709bceeacda7d791a94bf1',1,'remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a78b123eca6709bceeacda7d791a94bf1',1,'remmina_protocol_widget_mpprogress(RemminaConnectionObject *cnnobj, const gchar *msg, RemminaMessagePanelCallback response_callback, gpointer response_callback_data):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fnew',['remmina_protocol_widget_new',['../remmina__protocol__widget_8c.html#a5c2137462d3168e90c812f1ce75a6e62',1,'remmina_protocol_widget_new(void):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5c2137462d3168e90c812f1ce75a6e62',1,'remmina_protocol_widget_new(void):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fon_5fkey_5fpress',['remmina_protocol_widget_on_key_press',['../remmina__protocol__widget_8c.html#a1caaa7bea6ef53e5c7e8109f3d0814e1',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fon_5fkey_5frelease',['remmina_protocol_widget_on_key_release',['../remmina__protocol__widget_8c.html#ac1f95eb1e31c05ae0bc4027496ceafb0',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fopen_5fconnection',['remmina_protocol_widget_open_connection',['../remmina__protocol__widget_8c.html#a6399c3828908e36ed6202b5599bd206b',1,'remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a6399c3828908e36ed6202b5599bd206b',1,'remmina_protocol_widget_open_connection(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fopen_5fconnection_5freal',['remmina_protocol_widget_open_connection_real',['../remmina__protocol__widget_8c.html#a76ad91e7f8648699f71c466e203aa6dd',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauth',['remmina_protocol_widget_panel_auth',['../remmina__protocol__widget_8c.html#aebc7c7d34c470081a52aa35d998ce868',1,'remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aebc7c7d34c470081a52aa35d998ce868',1,'remmina_protocol_widget_panel_auth(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauthuserpwd_5fssh_5ftunnel',['remmina_protocol_widget_panel_authuserpwd_ssh_tunnel',['../remmina__protocol__widget_8c.html#ad637ec849c497e4a0d4c723396aa6fba',1,'remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad637ec849c497e4a0d4c723396aa6fba',1,'remmina_protocol_widget_panel_authuserpwd_ssh_tunnel(RemminaProtocolWidget *gp, gboolean want_domain, gboolean allow_password_saving):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fauthx509',['remmina_protocol_widget_panel_authx509',['../remmina__protocol__widget_8c.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31',1,'remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa674c14f3a46dd5eb6b53d6f8ce6bd31',1,'remmina_protocol_widget_panel_authx509(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fchanged_5fcertificate',['remmina_protocol_widget_panel_changed_certificate',['../remmina__protocol__widget_8c.html#acf75fd4bac28a3d53da064b2905f23c1',1,'remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#acf75fd4bac28a3d53da064b2905f23c1',1,'remmina_protocol_widget_panel_changed_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fdestroy',['remmina_protocol_widget_panel_destroy',['../remmina__protocol__widget_8h.html#a78069d2e4c2773685126fc3127b26dae',1,'remmina_protocol_widget.h']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fhide',['remmina_protocol_widget_panel_hide',['../remmina__protocol__widget_8c.html#a8ef0523afadadc9984d53fb02ecc01ad',1,'remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a8ef0523afadadc9984d53fb02ecc01ad',1,'remmina_protocol_widget_panel_hide(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fnew_5fcertificate',['remmina_protocol_widget_panel_new_certificate',['../remmina__protocol__widget_8c.html#a262d75d6b535bd8c623e607805db4084',1,'remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a262d75d6b535bd8c623e607805db4084',1,'remmina_protocol_widget_panel_new_certificate(RemminaProtocolWidget *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fquestion_5fyesno',['remmina_protocol_widget_panel_question_yesno',['../remmina__protocol__widget_8c.html#a9092c29f585fdabaf0ce7e865670053b',1,'remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9092c29f585fdabaf0ce7e865670053b',1,'remmina_protocol_widget_panel_question_yesno(RemminaProtocolWidget *gp, const char *msg):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow',['remmina_protocol_widget_panel_show',['../remmina__protocol__widget_8c.html#a843c2455a10c9382aee454515f9e7f8b',1,'remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a843c2455a10c9382aee454515f9e7f8b',1,'remmina_protocol_widget_panel_show(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow_5flisten',['remmina_protocol_widget_panel_show_listen',['../remmina__protocol__widget_8c.html#a278e13b53a4fdb65498e00e908edb98d',1,'remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a278e13b53a4fdb65498e00e908edb98d',1,'remmina_protocol_widget_panel_show_listen(RemminaProtocolWidget *gp, gint port):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fpanel_5fshow_5fretry',['remmina_protocol_widget_panel_show_retry',['../remmina__protocol__widget_8c.html#a7ed85f4ea19e0660dbf46f4f3dc4b895',1,'remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a7ed85f4ea19e0660dbf46f4f3dc4b895',1,'remmina_protocol_widget_panel_show_retry(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fplugin_5freceives_5fkeystrokes',['remmina_protocol_widget_plugin_receives_keystrokes',['../remmina__protocol__widget_8c.html#a480f842fac65440c367bf3c3d87d2601',1,'remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a480f842fac65440c367bf3c3d87d2601',1,'remmina_protocol_widget_plugin_receives_keystrokes(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fplugin_5fscreenshot',['remmina_protocol_widget_plugin_screenshot',['../remmina__protocol__widget_8c.html#a57ac13fc4a2653c40e0601183628c0ca',1,'remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a57ac13fc4a2653c40e0601183628c0ca',1,'remmina_protocol_widget_plugin_screenshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fquery_5ffeature_5fby_5fref',['remmina_protocol_widget_query_feature_by_ref',['../remmina__protocol__widget_8c.html#a4017a800d7803a40d606ffce2578509a',1,'remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a4017a800d7803a40d606ffce2578509a',1,'remmina_protocol_widget_query_feature_by_ref(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fquery_5ffeature_5fby_5ftype',['remmina_protocol_widget_query_feature_by_type',['../remmina__protocol__widget_8c.html#adbe15328275677cb38bd8c8a2d5e039d',1,'remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#adbe15328275677cb38bd8c8a2d5e039d',1,'remmina_protocol_widget_query_feature_by_type(RemminaProtocolWidget *gp, RemminaProtocolFeatureType type):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fregister_5fhostkey',['remmina_protocol_widget_register_hostkey',['../remmina__protocol__widget_8c.html#a13e14fa81f7ca52942415a7caf5b932c',1,'remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a13e14fa81f7ca52942415a7caf5b932c',1,'remmina_protocol_widget_register_hostkey(RemminaProtocolWidget *gp, GtkWidget *widget):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsave_5fcred',['remmina_protocol_widget_save_cred',['../remmina__protocol__widget_8c.html#ab863cc1442a992adfa323bc77ab88504',1,'remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ab863cc1442a992adfa323bc77ab88504',1,'remmina_protocol_widget_save_cred(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsend_5fkeys_5fsignals',['remmina_protocol_widget_send_keys_signals',['../remmina__protocol__widget_8c.html#a9bcd0d356c7215dc0f791c9744360705',1,'remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9bcd0d356c7215dc0f791c9744360705',1,'remmina_protocol_widget_send_keys_signals(GtkWidget *widget, const guint *keyvals, int keyvals_length, GdkEventType action):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsend_5fkeystrokes',['remmina_protocol_widget_send_keystrokes',['../remmina__protocol__widget_8c.html#affb2413c00f0681fe08f90523f7e1471',1,'remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#affb2413c00f0681fe08f90523f7e1471',1,'remmina_protocol_widget_send_keystrokes(RemminaProtocolWidget *gp, GtkMenuItem *widget):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fcurrent_5fscale_5fmode',['remmina_protocol_widget_set_current_scale_mode',['../remmina__protocol__widget_8c.html#ad6e2d00646e8268aa0e8bbe31b77db48',1,'remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ad6e2d00646e8268aa0e8bbe31b77db48',1,'remmina_protocol_widget_set_current_scale_mode(RemminaProtocolWidget *gp, RemminaScaleMode scalemode):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fdisplay',['remmina_protocol_widget_set_display',['../remmina__protocol__widget_8c.html#a15368afcbeb770f8cf25941bd49e7b54',1,'remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a15368afcbeb770f8cf25941bd49e7b54',1,'remmina_protocol_widget_set_display(RemminaProtocolWidget *gp, gint display):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5ferror',['remmina_protocol_widget_set_error',['../remmina__protocol__widget_8c.html#a95088334da86faf9520383629fff48af',1,'remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a95088334da86faf9520383629fff48af',1,'remmina_protocol_widget_set_error(RemminaProtocolWidget *gp, const gchar *fmt,...):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fexpand',['remmina_protocol_widget_set_expand',['../remmina__protocol__widget_8c.html#a0b19dbe685e4465e7f06706270e120fa',1,'remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a0b19dbe685e4465e7f06706270e120fa',1,'remmina_protocol_widget_set_expand(RemminaProtocolWidget *gp, gboolean expand):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fheight',['remmina_protocol_widget_set_height',['../remmina__protocol__widget_8c.html#aadd106cec729a80405c6097e4c662044',1,'remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aadd106cec729a80405c6097e4c662044',1,'remmina_protocol_widget_set_height(RemminaProtocolWidget *gp, gint height):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fhostkey_5ffunc',['remmina_protocol_widget_set_hostkey_func',['../remmina__protocol__widget_8c.html#a5aaadd752a3275a0a8e0018a3dd669f8',1,'remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a5aaadd752a3275a0a8e0018a3dd669f8',1,'remmina_protocol_widget_set_hostkey_func(RemminaProtocolWidget *gp, RemminaHostkeyFunc func):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fset_5fwidth',['remmina_protocol_widget_set_width',['../remmina__protocol__widget_8c.html#a41b62f211a8a8e960bc80aa1ba6b0380',1,'remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a41b62f211a8a8e960bc80aa1ba6b0380',1,'remmina_protocol_widget_set_width(RemminaProtocolWidget *gp, gint width):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsetup',['remmina_protocol_widget_setup',['../remmina__protocol__widget_8c.html#ac705ffa194e3c3457e9a0a1bd6c79be8',1,'remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#ac705ffa194e3c3457e9a0a1bd6c79be8',1,'remmina_protocol_widget_setup(RemminaProtocolWidget *gp, RemminaFile *remminafile, RemminaConnectionObject *cnnobj):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsignal_5fconnection_5fclosed',['remmina_protocol_widget_signal_connection_closed',['../remmina__protocol__widget_8c.html#a1cae52cad394f317c712eb4fd709d261',1,'remmina_protocol_widget_signal_connection_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a1cae52cad394f317c712eb4fd709d261',1,'remmina_protocol_widget_signal_connection_closed(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fsignal_5fconnection_5fopened',['remmina_protocol_widget_signal_connection_opened',['../remmina__protocol__widget_8c.html#a05b5edfc3d3d0dcff1745d1d35aaca5c',1,'remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a05b5edfc3d3d0dcff1745d1d35aaca5c',1,'remmina_protocol_widget_signal_connection_opened(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fssh_5fexec',['remmina_protocol_widget_ssh_exec',['../remmina__protocol__widget_8c.html#a12eddf3428a53201ee0a2ec422d2fa4a',1,'remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a12eddf3428a53201ee0a2ec422d2fa4a',1,'remmina_protocol_widget_ssh_exec(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5fdirect_5ftunnel',['remmina_protocol_widget_start_direct_tunnel',['../remmina__protocol__widget_8c.html#a9d55210413d6a313478f81cf76ecf1b7',1,'remmina_protocol_widget_start_direct_tunnel(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a9d55210413d6a313478f81cf76ecf1b7',1,'remmina_protocol_widget_start_direct_tunnel(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5freverse_5ftunnel',['remmina_protocol_widget_start_reverse_tunnel',['../remmina__protocol__widget_8c.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c',1,'remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa6d9f2f558fcd9e7fe58eefcde1c3c5c',1,'remmina_protocol_widget_start_reverse_tunnel(RemminaProtocolWidget *gp, gint local_port):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fstart_5fxport_5ftunnel',['remmina_protocol_widget_start_xport_tunnel',['../remmina__protocol__widget_8c.html#a172fa9cf2ce196c9846a3e47ea9036b4',1,'remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a172fa9cf2ce196c9846a3e47ea9036b4',1,'remmina_protocol_widget_start_xport_tunnel(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5ftunnel_5fdestroy',['remmina_protocol_widget_tunnel_destroy',['../remmina__protocol__widget_8c.html#aecd801fbe5399bbeb5832657bce193cb',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5funlock_5fdynres',['remmina_protocol_widget_unlock_dynres',['../remmina__protocol__widget_8c.html#a2551dd6f53480609596d2695040fba5d',1,'remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a2551dd6f53480609596d2695040fba5d',1,'remmina_protocol_widget_unlock_dynres(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5falign',['remmina_protocol_widget_update_align',['../remmina__protocol__widget_8c.html#aa88afa1e3f04974974a8be324b0a930e',1,'remmina_protocol_widget_update_align(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#aa88afa1e3f04974974a8be324b0a930e',1,'remmina_protocol_widget_update_align(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5falignment',['remmina_protocol_widget_update_alignment',['../rcw_8c.html#ab7dc553cbd2005feb77163cf79f48f6d',1,'rcw.c']]],
+ ['remmina_5fprotocol_5fwidget_5fupdate_5fremote_5fresolution',['remmina_protocol_widget_update_remote_resolution',['../remmina__protocol__widget_8c.html#a14684e3222e6afb1b43d77634a174767',1,'remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c'],['../remmina__protocol__widget_8h.html#a14684e3222e6afb1b43d77634a174767',1,'remmina_protocol_widget_update_remote_resolution(RemminaProtocolWidget *gp):&#160;remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5fconnect_5fcallback',['remmina_protocol_widget_xport_tunnel_connect_callback',['../remmina__protocol__widget_8c.html#adfac12e7a563dc06fb2f0c8307f40fee',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5fdisconnect_5fcallback',['remmina_protocol_widget_xport_tunnel_disconnect_callback',['../remmina__protocol__widget_8c.html#a450fbca7e27c952b6aaba6e33192051d',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fprotocol_5fwidget_5fxport_5ftunnel_5finit_5fcallback',['remmina_protocol_widget_xport_tunnel_init_callback',['../remmina__protocol__widget_8c.html#aeaa588b63800d3762b738fbbfd4a1736',1,'remmina_protocol_widget.c']]],
+ ['remmina_5fpublic_5fcombine_5fpath',['remmina_public_combine_path',['../remmina__public_8c.html#a86940733e5b9cf77b276084e437dcac0',1,'remmina_public_combine_path(const gchar *path1, const gchar *path2):&#160;remmina_public.c'],['../remmina__public_8h.html#a86940733e5b9cf77b276084e437dcac0',1,'remmina_public_combine_path(const gchar *path1, const gchar *path2):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcombo_5fget_5factive_5ftext',['remmina_public_combo_get_active_text',['../remmina__public_8c.html#af1679d83834c8409f23e00c555d677fb',1,'remmina_public_combo_get_active_text(GtkComboBox *combo):&#160;remmina_public.c'],['../remmina__public_8h.html#af1679d83834c8409f23e00c555d677fb',1,'remmina_public_combo_get_active_text(GtkComboBox *combo):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo',['remmina_public_create_combo',['../remmina__public_8c.html#ab4a593956dfe89aba3242a5c264a681f',1,'remmina_public_create_combo(gboolean use_icon):&#160;remmina_public.c'],['../remmina__public_8h.html#ab4a593956dfe89aba3242a5c264a681f',1,'remmina_public_create_combo(gboolean use_icon):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fentry',['remmina_public_create_combo_entry',['../remmina__public_8c.html#a9ec86f1e9caea5ebc867a90230d6b51a',1,'remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending):&#160;remmina_public.c'],['../remmina__public_8h.html#ab28356392468fbd147814f09cda6e168',1,'remmina_public_create_combo_entry(const gchar *text, const gchar *def, gboolean descending):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fmap',['remmina_public_create_combo_map',['../remmina__public_8c.html#a616258d3226ec1f1ecee6ce18aba535b',1,'remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c'],['../remmina__public_8h.html#a616258d3226ec1f1ecee6ce18aba535b',1,'remmina_public_create_combo_map(const gpointer *key_value_list, const gchar *def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5fmapint',['remmina_public_create_combo_mapint',['../remmina__public_8c.html#ad1feef5a6d19225b8fcbfd0f9555306b',1,'remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c'],['../remmina__public_8h.html#ad1feef5a6d19225b8fcbfd0f9555306b',1,'remmina_public_create_combo_mapint(const gpointer *key_value_list, gint def, gboolean use_icon, const gchar *domain):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fcombo_5ftext_5fd',['remmina_public_create_combo_text_d',['../remmina__public_8c.html#a3796b536244067e9a85923b1cefa6cde',1,'remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c'],['../remmina__public_8h.html#a3796b536244067e9a85923b1cefa6cde',1,'remmina_public_create_combo_text_d(const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fcreate_5fgroup',['remmina_public_create_group',['../remmina__public_8c.html#af9c70a727bfeb32730b98ce5cf7a3739',1,'remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols):&#160;remmina_public.c'],['../remmina__public_8h.html#af9c70a727bfeb32730b98ce5cf7a3739',1,'remmina_public_create_group(GtkGrid *grid, const gchar *group, gint row, gint rows, gint cols):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fcurrent_5fworkspace',['remmina_public_get_current_workspace',['../remmina__public_8c.html#a7ff5e5c4dabc3fb001125a6da14ad758',1,'remmina_public_get_current_workspace(GdkScreen *screen):&#160;remmina_public.c'],['../remmina__public_8h.html#a7ff5e5c4dabc3fb001125a6da14ad758',1,'remmina_public_get_current_workspace(GdkScreen *screen):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fkeycode_5ffor_5fkeyval',['remmina_public_get_keycode_for_keyval',['../remmina__public_8c.html#a95f1d68c7ab3e2a6b158db45f63538fb',1,'remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval):&#160;remmina_public.c'],['../remmina__public_8h.html#a95f1d68c7ab3e2a6b158db45f63538fb',1,'remmina_public_get_keycode_for_keyval(GdkKeymap *keymap, guint keyval):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fmodifier_5ffor_5fkeycode',['remmina_public_get_modifier_for_keycode',['../remmina__public_8c.html#a1fac51670815da6a72700a10866c179a',1,'remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode):&#160;remmina_public.c'],['../remmina__public_8h.html#a1fac51670815da6a72700a10866c179a',1,'remmina_public_get_modifier_for_keycode(GdkKeymap *keymap, guint16 keycode):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fserver_5fport',['remmina_public_get_server_port',['../remmina__public_8c.html#adc8b77823386e00e610527d6b0b61149',1,'remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port):&#160;remmina_public.c'],['../remmina__public_8h.html#adc8b77823386e00e610527d6b0b61149',1,'remmina_public_get_server_port(const gchar *server, gint defaultport, gchar **host, gint *port):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fwindow_5fworkspace',['remmina_public_get_window_workspace',['../remmina__public_8c.html#a9c0688cfe4ec55f8b563943aab570b25',1,'remmina_public_get_window_workspace(GtkWindow *gtkwindow):&#160;remmina_public.c'],['../remmina__public_8h.html#a9c0688cfe4ec55f8b563943aab570b25',1,'remmina_public_get_window_workspace(GtkWindow *gtkwindow):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fget_5fxauth_5fcookie',['remmina_public_get_xauth_cookie',['../remmina__public_8c.html#a12ba081432e5f32cf8287231d4779ecf',1,'remmina_public_get_xauth_cookie(const gchar *display, gchar **msg):&#160;remmina_public.c'],['../remmina__public_8h.html#a12ba081432e5f32cf8287231d4779ecf',1,'remmina_public_get_xauth_cookie(const gchar *display, gchar **msg):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fgtk_5fbuilder_5fnew_5ffrom_5ffile',['remmina_public_gtk_builder_new_from_file',['../remmina__public_8c.html#a3031598a6e4f67d1519d8e5afba7da41',1,'remmina_public_gtk_builder_new_from_file(gchar *filename):&#160;remmina_public.c'],['../remmina__public_8h.html#a3031598a6e4f67d1519d8e5afba7da41',1,'remmina_public_gtk_builder_new_from_file(gchar *filename):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fgtk_5fwidget_5freparent',['remmina_public_gtk_widget_reparent',['../remmina__public_8c.html#ac0f480277a5929212d389b4bcdd56912',1,'remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container):&#160;remmina_public.c'],['../remmina__public_8h.html#ac0f480277a5929212d389b4bcdd56912',1,'remmina_public_gtk_widget_reparent(GtkWidget *widget, GtkContainer *container):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fload_5fcombo_5ftext_5fd',['remmina_public_load_combo_text_d',['../remmina__public_8c.html#aa5eacff7c9dab7457dd65525d01047f8',1,'remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c'],['../remmina__public_8h.html#aa5eacff7c9dab7457dd65525d01047f8',1,'remmina_public_load_combo_text_d(GtkWidget *combo, const gchar *text, const gchar *def, const gchar *empty_choice):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fopen_5fxdisplay',['remmina_public_open_xdisplay',['../remmina__public_8c.html#a52656bbe00a83068f36337f449bdc767',1,'remmina_public_open_xdisplay(const gchar *disp):&#160;remmina_public.c'],['../remmina__public_8h.html#a52656bbe00a83068f36337f449bdc767',1,'remmina_public_open_xdisplay(const gchar *disp):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fpopup_5fposition',['remmina_public_popup_position',['../remmina__public_8c.html#a92025b5f6512955f9c29608b5451a12c',1,'remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data):&#160;remmina_public.c'],['../remmina__public_8h.html#a92025b5f6512955f9c29608b5451a12c',1,'remmina_public_popup_position(GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fresolution_5fvalidation_5ffunc',['remmina_public_resolution_validation_func',['../remmina__public_8c.html#a098786d3aa6991aeba43a61e29d534d0',1,'remmina_public_resolution_validation_func(const gchar *new_str, gchar **error):&#160;remmina_public.c'],['../remmina__public_8h.html#a098786d3aa6991aeba43a61e29d534d0',1,'remmina_public_resolution_validation_func(const gchar *new_str, gchar **error):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fsend_5fnotification',['remmina_public_send_notification',['../remmina__public_8c.html#a893f0cfe2d694ab700975f4f427ee2f6',1,'remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;remmina_public.c'],['../remmina__public_8h.html#a893f0cfe2d694ab700975f4f427ee2f6',1,'remmina_public_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fsplit_5fresolution_5fstring',['remmina_public_split_resolution_string',['../remmina__public_8c.html#aaf3fdb980c24cd06965b85ebcdd79173',1,'remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h):&#160;remmina_public.c'],['../remmina__public_8h.html#aaf3fdb980c24cd06965b85ebcdd79173',1,'remmina_public_split_resolution_string(const char *resolution_string, int *w, int *h):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fstr_5freplace',['remmina_public_str_replace',['../remmina__public_8c.html#aea7547abe3a67e6126addc9ed91af640',1,'remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c'],['../remmina__public_8h.html#aea7547abe3a67e6126addc9ed91af640',1,'remmina_public_str_replace(const gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c']]],
+ ['remmina_5fpublic_5fstr_5freplace_5fin_5fplace',['remmina_public_str_replace_in_place',['../remmina__public_8c.html#a8d7d9b3c8050545469b1af9a35b043a2',1,'remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c'],['../remmina__public_8h.html#a8d7d9b3c8050545469b1af9a35b043a2',1,'remmina_public_str_replace_in_place(gchar *string, const gchar *search, const gchar *replacement):&#160;remmina_public.c']]],
+ ['remmina_5frdp_5fauthenticate',['remmina_rdp_authenticate',['../rdp__plugin_8c.html#af33e88ae9c13745eb6d36f36418e3676',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fcall_5ffeature',['remmina_rdp_call_feature',['../rdp__plugin_8c.html#a3b63a366a0db4fddced3f2cffa353b19',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fchannel_5fcliprdr_5fprocess',['remmina_rdp_channel_cliprdr_process',['../rdp__cliprdr_8h.html#a6c70042cad3c959e8a408402c9dcd5ff',1,'rdp_cliprdr.h']]],
+ ['remmina_5frdp_5fclipboard_5fabort_5ftransfer',['remmina_rdp_clipboard_abort_transfer',['../rdp__cliprdr_8c.html#a96bb65801a72ddb0b043438da7654130',1,'remmina_rdp_clipboard_abort_transfer(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a96bb65801a72ddb0b043438da7654130',1,'remmina_rdp_clipboard_abort_transfer(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclipboard_5ffree',['remmina_rdp_clipboard_free',['../rdp__cliprdr_8c.html#a4da95b96bf2c86b8f4cc63dcafdd1365',1,'remmina_rdp_clipboard_free(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a4da95b96bf2c86b8f4cc63dcafdd1365',1,'remmina_rdp_clipboard_free(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclipboard_5finit',['remmina_rdp_clipboard_init',['../rdp__cliprdr_8c.html#ac3300142e3c2f416896948681ecd45f3',1,'remmina_rdp_clipboard_init(rfContext *rfi):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#ac3300142e3c2f416896948681ecd45f3',1,'remmina_rdp_clipboard_init(rfContext *rfi):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fdetach_5fowner',['remmina_rdp_cliprdr_detach_owner',['../rdp__cliprdr_8c.html#a7d911246d8a6efed5a64b7ecd7b059bf',1,'remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a7d911246d8a6efed5a64b7ecd7b059bf',1,'remmina_rdp_cliprdr_detach_owner(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fempty_5fclipboard',['remmina_rdp_cliprdr_empty_clipboard',['../rdp__cliprdr_8c.html#a719b6820f66508f8acb943a1bf1a495d',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fclient_5fformat_5flist',['remmina_rdp_cliprdr_get_client_format_list',['../rdp__cliprdr_8c.html#accb7cad54767b8f658b8ea438690ef4f',1,'remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#accb7cad54767b8f658b8ea438690ef4f',1,'remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolWidget *gp):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fclipboard_5fdata',['remmina_rdp_cliprdr_get_clipboard_data',['../rdp__cliprdr_8c.html#a1875ac25f73dd93e4b716746e7c6b8d5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5fformat_5ffrom_5fgdkatom',['remmina_rdp_cliprdr_get_format_from_gdkatom',['../rdp__cliprdr_8c.html#a7eb7cd7eeab0e52c33721cc0564964ea',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fget_5ftarget_5ftypes',['remmina_rdp_cliprdr_get_target_types',['../rdp__cliprdr_8c.html#a5378f6a230a35d2a84e94ee029a10af4',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5finit',['remmina_rdp_cliprdr_init',['../rdp__cliprdr_8c.html#a2c900a8369c1081e3084f5b17efbe47d',1,'remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#a2c900a8369c1081e3084f5b17efbe47d',1,'remmina_rdp_cliprdr_init(rfContext *rfi, CliprdrClientContext *cliprdr):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fmonitor_5fready',['remmina_rdp_cliprdr_monitor_ready',['../rdp__cliprdr_8c.html#aa3ee3696d9fdb72f994184eee168b2ca',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fmt_5fget_5fformat_5flist',['remmina_rdp_cliprdr_mt_get_format_list',['../rdp__cliprdr_8c.html#a9d9b4fd8f4efbac086e3a2a274647ce5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5frequest_5fdata',['remmina_rdp_cliprdr_request_data',['../rdp__cliprdr_8c.html#a48904924b1064d1bb3bfb6116bac6bd3',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fsend_5fclient_5fcapabilities',['remmina_rdp_cliprdr_send_client_capabilities',['../rdp__cliprdr_8c.html#a1c95eb50a82dbeac3c43374eaad8e489',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fsend_5fclient_5fformat_5flist',['remmina_rdp_cliprdr_send_client_format_list',['../rdp__cliprdr_8c.html#a8afec91e9f54fc3a0ea8f25d8349bd8b',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fcapabilities',['remmina_rdp_cliprdr_server_capabilities',['../rdp__cliprdr_8c.html#ad6e572dab05b136136db71d93dbc0945',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5ffile_5fcontents_5frequest',['remmina_rdp_cliprdr_server_file_contents_request',['../rdp__cliprdr_8c.html#aca54116b93ed1fb466951e51a32f6934',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5ffile_5fcontents_5fresponse',['remmina_rdp_cliprdr_server_file_contents_response',['../rdp__cliprdr_8c.html#a660e39f442c17f4668addc15ea5f6b9b',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5fdata_5frequest',['remmina_rdp_cliprdr_server_format_data_request',['../rdp__cliprdr_8c.html#ad8007d48887352097a80379b413dd054',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5fdata_5fresponse',['remmina_rdp_cliprdr_server_format_data_response',['../rdp__cliprdr_8c.html#a0542c0eaa15930e06e9afac5d0f88c42',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5flist',['remmina_rdp_cliprdr_server_format_list',['../rdp__cliprdr_8c.html#a0399ec83bd5f5ba0a939594971a5a0d4',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fserver_5fformat_5flist_5fresponse',['remmina_rdp_cliprdr_server_format_list_response',['../rdp__cliprdr_8c.html#a8a791b93cbc96849e21dfd481d3639f8',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fset_5fclipboard_5fcontent',['remmina_rdp_cliprdr_set_clipboard_content',['../rdp__cliprdr_8c.html#ac3bc1f06354bf50b72d770f6d14ce0b3',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fcliprdr_5fset_5fclipboard_5fdata',['remmina_rdp_cliprdr_set_clipboard_data',['../rdp__cliprdr_8c.html#a007ce9136242f75dc148bd4e2ee5fde5',1,'rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fclose_5fconnection',['remmina_rdp_close_connection',['../rdp__plugin_8c.html#a1beaae641f40fc4fbcafe84846a2eb76',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fevent_5fconnected',['remmina_rdp_event_connected',['../rdp__event_8c.html#abe98674433c473136ccd28aab85a7748',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcreate_5fcairo_5fsurface',['remmina_rdp_event_create_cairo_surface',['../rdp__event_8c.html#a789ec99777755da7cae468216a74095a',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcreate_5fcursor',['remmina_rdp_event_create_cursor',['../rdp__event_8c.html#ae8ef8118379a8bb6a6f99a8bbc0cbcfc',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fcursor',['remmina_rdp_event_cursor',['../rdp__event_8c.html#a064c56982a401aff33a8c723eb157016',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fdelayed_5fmonitor_5flayout',['remmina_rdp_event_delayed_monitor_layout',['../rdp__event_8c.html#a35376ff50915de1c14285e6326bc943e',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fevent_5fpush',['remmina_rdp_event_event_push',['../rdp__event_8c.html#ad446d6471bddba97f8bfcee8c51e4580',1,'remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e):&#160;rdp_event.c'],['../rdp__plugin_8h.html#ad446d6471bddba97f8bfcee8c51e4580',1,'remmina_rdp_event_event_push(RemminaProtocolWidget *gp, const RemminaPluginRdpEvent *e):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ffree_5fcursor',['remmina_rdp_event_free_cursor',['../rdp__event_8c.html#a740d33b9c229ada638eeeebe2ffca461',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ffree_5fevent',['remmina_rdp_event_free_event',['../rdp__event_8c.html#a40b4fd190055c10d5d2248a6eca5f50f',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5finit',['remmina_rdp_event_init',['../rdp__event_8c.html#af3a991a02d35fb09c85f2e752a5393ca',1,'remmina_rdp_event_init(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#afba21c241e7abe9fe72f6e5aeeaa99cc',1,'remmina_rdp_event_init(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5finit_5fkeymap',['remmina_rdp_event_init_keymap',['../rdp__event_8c.html#a4eeb2bd828f9fae2c549f3ef8a1e20c0',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fbutton',['remmina_rdp_event_on_button',['../rdp__event_8c.html#a0caf4ffb4011d001301ea10f2c3f75e6',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fclipboard',['remmina_rdp_event_on_clipboard',['../rdp__event_8c.html#a2bd3d6559182ac1132927435ba9abc6a',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fconfigure',['remmina_rdp_event_on_configure',['../rdp__event_8c.html#a3a722112276948dbc5823a9adec2e225',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fdraw',['remmina_rdp_event_on_draw',['../rdp__event_8c.html#acafb03695febd86fc16d64545d74ef9c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5ffocus_5fin',['remmina_rdp_event_on_focus_in',['../rdp__event_8c.html#a6e3d726d9c6e27d25538c8ae665e8b58',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fkey',['remmina_rdp_event_on_key',['../rdp__event_8c.html#ad8f0d0f1b1b75646523f3b241f124e56',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fmotion',['remmina_rdp_event_on_motion',['../rdp__event_8c.html#ac27328f2796bd021d174c0f4b172c024',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fon_5fscroll',['remmina_rdp_event_on_scroll',['../rdp__event_8c.html#a9d63c3ac635001e62851ec4bc5fb7469',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fclipboard',['remmina_rdp_event_process_clipboard',['../rdp__cliprdr_8c.html#ad4fad618198e7746ea1e4ebd01a9b173',1,'remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_cliprdr.c'],['../rdp__cliprdr_8h.html#ad4fad618198e7746ea1e4ebd01a9b173',1,'remmina_rdp_event_process_clipboard(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_cliprdr.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fevent',['remmina_rdp_event_process_event',['../rdp__event_8c.html#a5f5fcd2a5c81d0c8bec609e0428735c5',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fui_5fevent',['remmina_rdp_event_process_ui_event',['../rdp__event_8c.html#a6929ce2effcc3cf2be6d5ec8b19d5466',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fprocess_5fui_5fqueue',['remmina_rdp_event_process_ui_queue',['../rdp__event_8c.html#abfa1d5d0b0494818fb5e1a549c0acd23',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui',['remmina_rdp_event_queue_ui',['../rdp__event_8c.html#a2b91746b782b7782432bd1d23c6a9945',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fasync',['remmina_rdp_event_queue_ui_async',['../rdp__event_8c.html#ae445fd0a84c7c9414a177a69c86cf325',1,'remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#ae445fd0a84c7c9414a177a69c86cf325',1,'remmina_rdp_event_queue_ui_async(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fsync_5fretint',['remmina_rdp_event_queue_ui_sync_retint',['../rdp__event_8c.html#ab5fe43c1b1b77c39f118d2581942eb81',1,'remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#ab5fe43c1b1b77c39f118d2581942eb81',1,'remmina_rdp_event_queue_ui_sync_retint(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fqueue_5fui_5fsync_5fretptr',['remmina_rdp_event_queue_ui_sync_retptr',['../rdp__event_8c.html#adaaf3de8342309cc52668f318a473350',1,'remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c'],['../rdp__event_8h.html#adaaf3de8342309cc52668f318a473350',1,'remmina_rdp_event_queue_ui_sync_retptr(RemminaProtocolWidget *gp, RemminaPluginRdpUiObject *ui):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5freconnect_5fprogress',['remmina_rdp_event_reconnect_progress',['../rdp__event_8c.html#ab7cbdc2f8cf829e2f09ecfa605a92d65',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5frelease_5fall_5fkeys',['remmina_rdp_event_release_all_keys',['../rdp__event_8c.html#a113ce593d4a96413b9330c471ee51554',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5frelease_5fkey',['remmina_rdp_event_release_key',['../rdp__event_8c.html#a062f6feb8f4b29ad0ad84717e6646e0c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5freverse_5ftranslate_5fpos_5freverse',['remmina_rdp_event_reverse_translate_pos_reverse',['../rdp__event_8c.html#a20d5fac8955f4f813759ca5c32078b7c',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fscale_5farea',['remmina_rdp_event_scale_area',['../rdp__event_8c.html#a080ab4a0a8f592bb5484202175beaaa5',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fsend_5fdelayed_5fmonitor_5flayout',['remmina_rdp_event_send_delayed_monitor_layout',['../rdp__event_8c.html#ac7c8d626470553c1659312697811dbfe',1,'remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#ac7c8d626470553c1659312697811dbfe',1,'remmina_rdp_event_send_delayed_monitor_layout(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fset_5fpointer_5fposition',['remmina_rdp_event_set_pointer_position',['../rdp__event_8c.html#a34c7d3a1bb411e84d3b4e30fcccc9cd8',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5ftranslate_5fpos',['remmina_rdp_event_translate_pos',['../rdp__event_8c.html#afe3b6a9e7d9319bca7021ddd29d39332',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5funfocus',['remmina_rdp_event_unfocus',['../rdp__event_8c.html#a4da10c12b28edc28403766994d6ef29c',1,'remmina_rdp_event_unfocus(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a4da10c12b28edc28403766994d6ef29c',1,'remmina_rdp_event_unfocus(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5funinit',['remmina_rdp_event_uninit',['../rdp__event_8c.html#a65eef99dc99f77be815a5da804ed94fc',1,'remmina_rdp_event_uninit(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a65eef99dc99f77be815a5da804ed94fc',1,'remmina_rdp_event_uninit(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5frect',['remmina_rdp_event_update_rect',['../rdp__event_8c.html#a712a9b04decd8b928d71db44b9b14fc9',1,'remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h):&#160;rdp_event.c'],['../rdp__event_8h.html#a712a9b04decd8b928d71db44b9b14fc9',1,'remmina_rdp_event_update_rect(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fregions',['remmina_rdp_event_update_regions',['../rdp__event_8c.html#a2ff2e46de1ad42c9aa8f792d629e0a89',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fscale',['remmina_rdp_event_update_scale',['../rdp__event_8c.html#a64ce0c66bb4cb6ddaee263ce8563f497',1,'remmina_rdp_event_update_scale(RemminaProtocolWidget *gp):&#160;rdp_event.c'],['../rdp__event_8h.html#a64ce0c66bb4cb6ddaee263ce8563f497',1,'remmina_rdp_event_update_scale(RemminaProtocolWidget *gp):&#160;rdp_event.c']]],
+ ['remmina_5frdp_5fevent_5fupdate_5fscale_5ffactor',['remmina_rdp_event_update_scale_factor',['../rdp__event_8c.html#a6076424eb759c91ca9c8da59432c66d6',1,'rdp_event.c']]],
+ ['remmina_5frdp_5ffile_5fexport',['remmina_rdp_file_export',['../rdp__file_8c.html#a263e269a1f8cfb21ba78d4b57ce2c47b',1,'remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file):&#160;rdp_file.c'],['../rdp__file_8h.html#a263e269a1f8cfb21ba78d4b57ce2c47b',1,'remmina_rdp_file_export(RemminaFile *remminafile, const gchar *to_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fexport_5fchannel',['remmina_rdp_file_export_channel',['../rdp__file_8c.html#af8f66ae61f0a025b3f69cd8e08d2c229',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fexport_5ftest',['remmina_rdp_file_export_test',['../rdp__file_8c.html#a6d00c37987b9f5b09959944d01142310',1,'remmina_rdp_file_export_test(RemminaFile *remminafile):&#160;rdp_file.c'],['../rdp__file_8h.html#a6d00c37987b9f5b09959944d01142310',1,'remmina_rdp_file_export_test(RemminaFile *remminafile):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport',['remmina_rdp_file_import',['../rdp__file_8c.html#aae001941e15e94a2d6456cc02e5ef75c',1,'remmina_rdp_file_import(const gchar *from_file):&#160;rdp_file.c'],['../rdp__file_8h.html#aae001941e15e94a2d6456cc02e5ef75c',1,'remmina_rdp_file_import(const gchar *from_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5fchannel',['remmina_rdp_file_import_channel',['../rdp__file_8c.html#a03125699e25c5b81dbe148815a10d642',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5ffield',['remmina_rdp_file_import_field',['../rdp__file_8c.html#a9f46df2588faa5b2e9fe8590df9d1313',1,'rdp_file.c']]],
+ ['remmina_5frdp_5ffile_5fimport_5ftest',['remmina_rdp_file_import_test',['../rdp__file_8c.html#a8b1b44a7a6367e3bca60a6ba6fd086ce',1,'remmina_rdp_file_import_test(const gchar *from_file):&#160;rdp_file.c'],['../rdp__file_8h.html#ab039802c1223cb138b2785689baf8b1b',1,'remmina_rdp_file_import_test(const gchar *from_file):&#160;rdp_file.c']]],
+ ['remmina_5frdp_5ffind_5fprdriver',['remmina_rdp_find_prdriver',['../rdp__plugin_8c.html#ac3d5598ae09c52f3ad0546c7de641f9f',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fget_5fscreenshot',['remmina_rdp_get_screenshot',['../rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fgw_5fauthenticate',['remmina_rdp_gw_authenticate',['../rdp__plugin_8c.html#a71166233c6c9e4714cbdb0d74ce7c579',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5finit',['remmina_rdp_init',['../rdp__plugin_8c.html#a6dd204e4f7a63fdcdfb6cd3066cbf309',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fkeystroke',['remmina_rdp_keystroke',['../rdp__plugin_8c.html#addffb9c5555027536804d8ef47b65f3b',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fload_5fstatic_5fchannel_5faddin',['remmina_rdp_load_static_channel_addin',['../rdp__plugin_8c.html#aaa5eb17481ba534c9f334d2a61a68ab2',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain',['remmina_rdp_main',['../rdp__plugin_8c.html#a12e0199d082d510648cb27168486f4e0',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain_5floop',['remmina_rdp_main_loop',['../rdp__plugin_8c.html#adb2d2f801618ad1e5ff14b4ebf2a9eb9',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fmain_5fthread',['remmina_rdp_main_thread',['../rdp__plugin_8c.html#a3b62e33da1cb6cfa69c44f565ad53c54',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fonchannelconnectedeventhandler',['remmina_rdp_OnChannelConnectedEventHandler',['../rdp__channels_8c.html#ad702816cc7dd625f0518f58fc5405c12',1,'remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c'],['../rdp__channels_8h.html#a759a6601ddb16301f0f6c39a6e88425a',1,'remmina_rdp_OnChannelConnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c']]],
+ ['remmina_5frdp_5fonchanneldisconnectedeventhandler',['remmina_rdp_OnChannelDisconnectedEventHandler',['../rdp__channels_8c.html#a5850b939a52886321d6e4c3e5e62f97d',1,'remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c'],['../rdp__channels_8h.html#a5850b939a52886321d6e4c3e5e62f97d',1,'remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext *context, ChannelConnectedEventArgs *e):&#160;rdp_channels.c']]],
+ ['remmina_5frdp_5fopen_5fconnection',['remmina_rdp_open_connection',['../rdp__plugin_8c.html#a5f88cb338f10185c43bfc7d711dddee5',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpost_5fconnect',['remmina_rdp_post_connect',['../rdp__plugin_8c.html#ac8d1ec82167ad20b7634ed545d4badbc',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpost_5fdisconnect',['remmina_rdp_post_disconnect',['../rdp__plugin_8c.html#ab9e7535ac53b25e8923a3b9fd1622046',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fpre_5fconnect',['remmina_rdp_pre_connect',['../rdp__plugin_8c.html#a0bc4113554537fd1a9e4c8bb9201e789',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fquery_5ffeature',['remmina_rdp_query_feature',['../rdp__plugin_8c.html#a0291f2233b3d82a3f1d521bfc1fabd43',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fsend_5fctrlaltdel',['remmina_rdp_send_ctrlaltdel',['../rdp__plugin_8c.html#a04920ffa78f21d63806d544fcca9c56e',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fset_5fprinters',['remmina_rdp_set_printers',['../rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fsettings_5fappscale_5fon_5fchanged',['remmina_rdp_settings_appscale_on_changed',['../rdp__settings_8c.html#ab69390b3995c4b4fed872d5bb363d9d5',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fget_5fkeyboard_5flayout',['remmina_rdp_settings_get_keyboard_layout',['../rdp__settings_8c.html#a4052ab6359b14e8f9a4cf76bed4da90c',1,'remmina_rdp_settings_get_keyboard_layout(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a4052ab6359b14e8f9a4cf76bed4da90c',1,'remmina_rdp_settings_get_keyboard_layout(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fget_5forientation_5fscale_5fprefs',['remmina_rdp_settings_get_orientation_scale_prefs',['../rdp__settings_8c.html#a5f05047cf10611ffb7a23a248650cb4c',1,'remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a5f05047cf10611ffb7a23a248650cb4c',1,'remmina_rdp_settings_get_orientation_scale_prefs(int *desktopOrientation, int *desktopScaleFactor, int *deviceScaleFactor):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fdestroy',['remmina_rdp_settings_grid_destroy',['../rdp__settings_8c.html#a407235521d446266678392af62bd05a2',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fget_5ftype',['remmina_rdp_settings_grid_get_type',['../rdp__settings_8c.html#ab75cf9f565cf282e7fc2d2d80a5150ea',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5finit',['remmina_rdp_settings_grid_init',['../rdp__settings_8c.html#a5303ffdbd1873d9d0097b50baef1972d',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fdesktoporientation_5fcombo',['remmina_rdp_settings_grid_load_desktoporientation_combo',['../rdp__settings_8c.html#af89ffbe792a083122e09a276f2295463',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fdevicescalefactor_5fcombo',['remmina_rdp_settings_grid_load_devicescalefactor_combo',['../rdp__settings_8c.html#ab07ddb91bc3e60f3bbc95d2a048f4fa7',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5flayout',['remmina_rdp_settings_grid_load_layout',['../rdp__settings_8c.html#a87769608a9bc40e8f05db66198e9153c',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fgrid_5fload_5fquality',['remmina_rdp_settings_grid_load_quality',['../rdp__settings_8c.html#a1180d1f04b8a7bc00f58c770ecadc4dc',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5finit',['remmina_rdp_settings_init',['../rdp__settings_8c.html#acf37368f3376add8547723d13443cccb',1,'remmina_rdp_settings_init(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#a028a6997c2546d0399858e4479b4be87',1,'remmina_rdp_settings_init(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fkbd_5finit',['remmina_rdp_settings_kbd_init',['../rdp__settings_8c.html#a6ed11971f5d908da70e3104067efe485',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fnew',['remmina_rdp_settings_new',['../rdp__settings_8c.html#adc5f59377e21db6e1aef8bfc2da24b53',1,'remmina_rdp_settings_new(void):&#160;rdp_settings.c'],['../rdp__settings_8h.html#adc5f59377e21db6e1aef8bfc2da24b53',1,'remmina_rdp_settings_new(void):&#160;rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fquality_5fon_5fchanged',['remmina_rdp_settings_quality_on_changed',['../rdp__settings_8c.html#a06bfe79d2df19ff863a1ed66c53fea35',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fquality_5foption_5fon_5ftoggled',['remmina_rdp_settings_quality_option_on_toggled',['../rdp__settings_8c.html#a93a69764a9bcb6eb014542009271d222',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5fsettings_5fset_5fcombo_5factive_5fitem',['remmina_rdp_settings_set_combo_active_item',['../rdp__settings_8c.html#acf62b97c1b4a42513a9204350030ed13',1,'rdp_settings.c']]],
+ ['remmina_5frdp_5ftunnel_5finit',['remmina_rdp_tunnel_init',['../rdp__plugin_8c.html#af95e15a376e56355da6c52e85d8553af',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fui_5fevent_5fdestroy_5fcairo_5fsurface',['remmina_rdp_ui_event_destroy_cairo_surface',['../rdp__event_8c.html#acd5f1bd57553006fdbc60d62af433e31',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fui_5fevent_5fupdate_5fscale',['remmina_rdp_ui_event_update_scale',['../rdp__event_8c.html#ae0e0d42524cb165cd6d26553c104dbde',1,'rdp_event.c']]],
+ ['remmina_5frdp_5fverify_5fcertificate',['remmina_rdp_verify_certificate',['../rdp__plugin_8c.html#a646b2d4e7ebd09e205ca70c75616a797',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fverify_5fchanged_5fcertificate',['remmina_rdp_verify_changed_certificate',['../rdp__plugin_8c.html#a120a18b1b32575381f934580ad5a42c5',1,'rdp_plugin.c']]],
+ ['remmina_5fschedluer_5fremove',['remmina_schedluer_remove',['../remmina__scheduler_8c.html#a7ec9e251c8905474dc8581fe7729839b',1,'remmina_scheduler.c']]],
+ ['remmina_5fscheduler_5fperiodic_5fcheck',['remmina_scheduler_periodic_check',['../remmina__scheduler_8c.html#abdee2f0b202662d50de1f6e5835f81f1',1,'remmina_scheduler.c']]],
+ ['remmina_5fscheduler_5fsetup',['remmina_scheduler_setup',['../remmina__scheduler_8c.html#a8ee49eb86004b98070d1514c2612251a',1,'remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval):&#160;remmina_scheduler.c'],['../remmina__scheduler_8h.html#a5d69b073538851d85534b3090cf75da6',1,'remmina_scheduler_setup(GSourceFunc cb, gpointer cb_data, guint first_interval, guint interval):&#160;remmina_scheduler.c']]],
+ ['remmina_5fscrolled_5fviewport_5fclass_5finit',['remmina_scrolled_viewport_class_init',['../remmina__scrolled__viewport_8c.html#a9efdaaa5d040cbad9f03bd2100caf011',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fdestroy',['remmina_scrolled_viewport_destroy',['../remmina__scrolled__viewport_8c.html#a4125a8458ff5e18fb10be420921e01c7',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fenter',['remmina_scrolled_viewport_enter',['../remmina__scrolled__viewport_8c.html#ac06419d58d2ab93bc593ead674eb7cb5',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fget_5fpreferred_5fheight',['remmina_scrolled_viewport_get_preferred_height',['../remmina__scrolled__viewport_8c.html#a93b878c7daeeaf0d90e6795921e21ca0',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fget_5ftype',['remmina_scrolled_viewport_get_type',['../remmina__scrolled__viewport_8h.html#a233033bbbbeb18a654ca3610ab319312',1,'remmina_scrolled_viewport.h']]],
+ ['remmina_5fscrolled_5fviewport_5finit',['remmina_scrolled_viewport_init',['../remmina__scrolled__viewport_8c.html#a9c516b192a3a2f00b6f2185bf0f7bd9b',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fleave',['remmina_scrolled_viewport_leave',['../remmina__scrolled__viewport_8c.html#a9d6732462f9ec91d0c00e96bd0c3692e',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fmotion_5ftimeout',['remmina_scrolled_viewport_motion_timeout',['../remmina__scrolled__viewport_8c.html#ab6821a1bbe2dbd787512236a68493b4f',1,'remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fnew',['remmina_scrolled_viewport_new',['../remmina__scrolled__viewport_8c.html#aadfe00c3960eab12d17bdb47495dd1ee',1,'remmina_scrolled_viewport_new(void):&#160;remmina_scrolled_viewport.c'],['../remmina__scrolled__viewport_8h.html#aadfe00c3960eab12d17bdb47495dd1ee',1,'remmina_scrolled_viewport_new(void):&#160;remmina_scrolled_viewport.c']]],
+ ['remmina_5fscrolled_5fviewport_5fremove_5fmotion',['remmina_scrolled_viewport_remove_motion',['../remmina__scrolled__viewport_8c.html#a0ba56f429a9c1ec05b093f5f78be692c',1,'remmina_scrolled_viewport_remove_motion(RemminaScrolledViewport *gsv):&#160;remmina_scrolled_viewport.c'],['../remmina__scrolled__viewport_8h.html#a0ba56f429a9c1ec05b093f5f78be692c',1,'remmina_scrolled_viewport_remove_motion(RemminaScrolledViewport *gsv):&#160;remmina_scrolled_viewport.c']]],
+ ['remmina_5fsftp_5fclient_5fconfirm_5fresume',['remmina_sftp_client_confirm_resume',['../remmina__sftp__client_8c.html#a138904893cb9c7f6535b8dfc7ba17e33',1,'remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a138904893cb9c7f6535b8dfc7ba17e33',1,'remmina_sftp_client_confirm_resume(RemminaSFTPClient *client, const gchar *path):&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fdestroy',['remmina_sftp_client_destroy',['../remmina__sftp__client_8c.html#a396c50263fbc60962481655bdb7b24f2',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fget_5ftype',['remmina_sftp_client_get_type',['../remmina__sftp__client_8h.html#acc0b1ad0ee4ba202095b0ec1e961555d',1,'remmina_sftp_client.h']]],
+ ['remmina_5fsftp_5fclient_5finit',['remmina_sftp_client_init',['../remmina__sftp__client_8c.html#a52b86e14d8abd0a5b6ddeb464a22a5f0',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fnew',['remmina_sftp_client_new',['../remmina__sftp__client_8c.html#ac2b4d83fed9c42029fee134684601aba',1,'remmina_sftp_client_new(void):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a0a3d678ad99a04a8b6aa3d958d60dc7d',1,'remmina_sftp_client_new():&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fcanceltask',['remmina_sftp_client_on_canceltask',['../remmina__sftp__client_8c.html#ad2d75d3cee69addbb691a85ac864db0f',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fdeletefile',['remmina_sftp_client_on_deletefile',['../remmina__sftp__client_8c.html#a0a7129a1bf066b4aa5106c9599a84a6b',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fnewtask',['remmina_sftp_client_on_newtask',['../remmina__sftp__client_8c.html#a788420fb944ee5059cbc53f8648e9636',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fon_5fopendir',['remmina_sftp_client_on_opendir',['../remmina__sftp__client_8c.html#a476effba1e0cf529dab3f75a501341ea',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fopen',['remmina_sftp_client_open',['../remmina__sftp__client_8c.html#a9fb6d25e4676b2fa574f958a5ba271a1',1,'remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp):&#160;remmina_sftp_client.c'],['../remmina__sftp__client_8h.html#a9fb6d25e4676b2fa574f958a5ba271a1',1,'remmina_sftp_client_open(RemminaSFTPClient *client, RemminaSFTP *sftp):&#160;remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5frefresh',['remmina_sftp_client_refresh',['../remmina__sftp__client_8c.html#ae87948f1c87c6eb6b16664665cac9a2c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fsftp_5fsession_5fclosedir',['remmina_sftp_client_sftp_session_closedir',['../remmina__sftp__client_8c.html#a3d87ea9dbecdeba8ddcf17a7ab1b783c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fsftp_5fsession_5fopendir',['remmina_sftp_client_sftp_session_opendir',['../remmina__sftp__client_8c.html#a57ff0c0ad7c9b5201a90020953b3bd31',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fdownload_5ffile',['remmina_sftp_client_thread_download_file',['../remmina__sftp__client_8c.html#a7b25ac5d22898d2e8a16d8d62bb62ae4',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fget_5ftask',['remmina_sftp_client_thread_get_task',['../remmina__sftp__client_8c.html#ac063368992734eda25c7632e5af7ef05',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fmain',['remmina_sftp_client_thread_main',['../remmina__sftp__client_8c.html#aea3e3b72fb51d466fee78af11234d7b7',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fmkdir',['remmina_sftp_client_thread_mkdir',['../remmina__sftp__client_8c.html#a4fc3715741ac2e3dcea0efd5a74a3cf3',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5frecursive_5fdir',['remmina_sftp_client_thread_recursive_dir',['../remmina__sftp__client_8c.html#adcbfd655b050ff016dedfe177c9e0dee',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5frecursive_5flocaldir',['remmina_sftp_client_thread_recursive_localdir',['../remmina__sftp__client_8c.html#a7313e39f8344821d578a23ef1308aa5c',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fset_5ferror',['remmina_sftp_client_thread_set_error',['../remmina__sftp__client_8c.html#a6088c2a389358dcda0a65e1984b456fa',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fset_5ffinish',['remmina_sftp_client_thread_set_finish',['../remmina__sftp__client_8c.html#a313b03e3a3718a3ccd5dc35d7123e112',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fupdate_5ftask',['remmina_sftp_client_thread_update_task',['../remmina__sftp__client_8c.html#a96c70def014ba9a0a7177d7efc1da830',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5fclient_5fthread_5fupload_5ffile',['remmina_sftp_client_thread_upload_file',['../remmina__sftp__client_8c.html#a989f55fb6d44337caba7bbf98e93f3ce',1,'remmina_sftp_client.c']]],
+ ['remmina_5fsftp_5ffree',['remmina_sftp_free',['../remmina__ssh_8h.html#aaaf171c31b73f06f1026239253d9f6b9',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fnew_5ffrom_5ffile',['remmina_sftp_new_from_file',['../remmina__ssh_8h.html#a3d7138d9cbbe44aea15440436ce85d6e',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fnew_5ffrom_5fssh',['remmina_sftp_new_from_ssh',['../remmina__ssh_8h.html#a1500d65d1f0751812f237c1cb4d15188',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fopen',['remmina_sftp_open',['../remmina__ssh_8h.html#a1e09b32044c240a7dce0ad8afcbf0ff2',1,'remmina_ssh.h']]],
+ ['remmina_5fsftp_5fplugin_5fregister',['remmina_sftp_plugin_register',['../remmina__sftp__plugin_8c.html#a14a447ab8a10b109967d92c8d2db0ff9',1,'remmina_sftp_plugin_register(void):&#160;remmina_sftp_plugin.c'],['../remmina__sftp__plugin_8h.html#ac06b00323f7ac1e7faea66d135bffba4',1,'remmina_sftp_plugin_register(void):&#160;remmina_sftp_plugin.c']]],
+ ['remmina_5fsha1_5ffile',['remmina_sha1_file',['../remmina__utils_8c.html#aff7d3597f23cae366973218cc01a2ae8',1,'remmina_sha1_file(const gchar *filename):&#160;remmina_utils.c'],['../remmina__utils_8h.html#aff7d3597f23cae366973218cc01a2ae8',1,'remmina_sha1_file(const gchar *filename):&#160;remmina_utils.c']]],
+ ['remmina_5fsodium_5finit',['remmina_sodium_init',['../remmina__sodium_8c.html#a17d17beeb57808af1c4299e3b4b94e9a',1,'remmina_sodium_init(void):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a17d17beeb57808af1c4299e3b4b94e9a',1,'remmina_sodium_init(void):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash',['remmina_sodium_pwhash',['../remmina__sodium_8c.html#ae661257deabb27ca05747be21aac253c',1,'remmina_sodium_pwhash(const gchar *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#ae661257deabb27ca05747be21aac253c',1,'remmina_sodium_pwhash(const gchar *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash_5fstr',['remmina_sodium_pwhash_str',['../remmina__sodium_8c.html#a42b49fa9a654cb061a02f52577171e1e',1,'remmina_sodium_pwhash_str(const gchar *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a42b49fa9a654cb061a02f52577171e1e',1,'remmina_sodium_pwhash_str(const gchar *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fsodium_5fpwhash_5fstr_5fverify',['remmina_sodium_pwhash_str_verify',['../remmina__sodium_8c.html#a6df48c8b8aafee07bfe41fb89581aa5f',1,'remmina_sodium_pwhash_str_verify(const char *key, const char *pass):&#160;remmina_sodium.c'],['../remmina__sodium_8h.html#a6df48c8b8aafee07bfe41fb89581aa5f',1,'remmina_sodium_pwhash_str_verify(const char *key, const char *pass):&#160;remmina_sodium.c']]],
+ ['remmina_5fssh_5fauth',['remmina_ssh_auth',['../remmina__ssh_8c.html#aad84c6609cb431d48121ae5e0902441b',1,'remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b',1,'remmina_ssh_auth(RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fagent',['remmina_ssh_auth_agent',['../remmina__ssh_8c.html#a6e57a1b5ba4a3886c4cb79ece8894796',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fauto_5fpubkey',['remmina_ssh_auth_auto_pubkey',['../remmina__ssh_8c.html#aa8aee72091b09cde34c0e0efadde719a',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fgssapi',['remmina_ssh_auth_gssapi',['../remmina__ssh_8c.html#a0eb19f950b34b360b28243a0b1883d67',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fgui',['remmina_ssh_auth_gui',['../remmina__ssh_8h.html#acf69725720378340e1a51c87e7638a7f',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fauth_5finteractive',['remmina_ssh_auth_interactive',['../remmina__ssh_8c.html#a976d3c1a549c17f00a64eb05d4e0823c',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fpassword',['remmina_ssh_auth_password',['../remmina__ssh_8c.html#ad6f3f5c196175412049af0c440414e65',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fauth_5fpubkey',['remmina_ssh_auth_pubkey',['../remmina__ssh_8c.html#a553ee462228e3b6284297b5ab89c6156',1,'remmina_ssh.c']]],
+ ['remmina_5fssh_5fconvert',['remmina_ssh_convert',['../remmina__ssh_8h.html#a09bd4aee40b6e8d6ba8ffaa84dc95330',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ffind_5fidentity',['remmina_ssh_find_identity',['../remmina__ssh_8c.html#ab6d8bdad543b3caead2b2b0339484798',1,'remmina_ssh_find_identity(void):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#ab6d8bdad543b3caead2b2b0339484798',1,'remmina_ssh_find_identity(void):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5ffree',['remmina_ssh_free',['../remmina__ssh_8h.html#acdb9f57d2f9b47913715a8d8a0ea0c02',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fidentity_5fpath',['remmina_ssh_identity_path',['../remmina__ssh_8c.html#a72a58e416c4eeb9d17eaf76360ebee42',1,'remmina_ssh_identity_path(const gchar *id):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#a72a58e416c4eeb9d17eaf76360ebee42',1,'remmina_ssh_identity_path(const gchar *id):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5finit_5ffrom_5ffile',['remmina_ssh_init_from_file',['../remmina__ssh_8h.html#a6815a78f65795cbc6795ca1c59e73102',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5finit_5fsession',['remmina_ssh_init_session',['../remmina__ssh_8h.html#a624b8ac30ddcd00ebda0b51d504f5a33',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fkeystroke',['remmina_ssh_keystroke',['../remmina__ssh__plugin_8c.html#ab670417882185f0d1eb558ca80b91229',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_5fload_5fterminal_5fpalettes',['remmina_ssh_plugin_load_terminal_palettes',['../remmina__ssh__plugin_8c.html#a0633a83ce0cbf7ed58d2b37ec6fd26b4',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_5fpopup_5fmenu',['remmina_ssh_plugin_popup_menu',['../remmina__ssh__plugin_8c.html#a3e8e08f2a9b05530e85962f9b8c556e9',1,'remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#a3e8e08f2a9b05530e85962f9b8c556e9',1,'remmina_ssh_plugin_popup_menu(GtkWidget *widget, GdkEvent *event, GtkWidget *menu):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fplugin_5fregister',['remmina_ssh_plugin_register',['../remmina__ssh__plugin_8c.html#a6f594d157e09639e09b1f32a420da96c',1,'remmina_ssh_plugin_register(void):&#160;remmina_ssh_plugin.c'],['../remmina__ssh__plugin_8h.html#af9f9487a10fb1a9c4b494ce3657359b9',1,'remmina_ssh_plugin_register(void):&#160;remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fset_5fapplication_5ferror',['remmina_ssh_set_application_error',['../remmina__ssh_8c.html#a1f3297263703b4259c1c9607d710995d',1,'remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#a1f3297263703b4259c1c9607d710995d',1,'remmina_ssh_set_application_error(RemminaSSH *ssh, const gchar *fmt,...):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fset_5ferror',['remmina_ssh_set_error',['../remmina__ssh_8c.html#abc556f0a4335083436f6e19c204fa553',1,'remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt):&#160;remmina_ssh.c'],['../remmina__ssh_8h.html#abc556f0a4335083436f6e19c204fa553',1,'remmina_ssh_set_error(RemminaSSH *ssh, const gchar *fmt):&#160;remmina_ssh.c']]],
+ ['remmina_5fssh_5fshell_5ffree',['remmina_ssh_shell_free',['../remmina__ssh_8h.html#a316f97b879e147ec52967344f6ad1d84',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fnew_5ffrom_5ffile',['remmina_ssh_shell_new_from_file',['../remmina__ssh_8h.html#a30412e0b4302f5ae0b9be2749390a48d',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fnew_5ffrom_5fssh',['remmina_ssh_shell_new_from_ssh',['../remmina__ssh_8h.html#ae0792ddb4adcaafefc1a4604cefdd8f4',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fopen',['remmina_ssh_shell_open',['../remmina__ssh_8h.html#a1c095a955af21b3ed9952ba2ea94691b',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5fshell_5fset_5fsize',['remmina_ssh_shell_set_size',['../remmina__ssh_8h.html#ac2d3f3b6550e4d1fe4caabe1df6af508',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fcancel_5faccept',['remmina_ssh_tunnel_cancel_accept',['../remmina__ssh_8h.html#ae9f52b1a3a545acae8c93007e20ec909',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5ffree',['remmina_ssh_tunnel_free',['../remmina__ssh_8h.html#a223f8dd7a678bcec2ece40a2d8f7ea06',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fnew_5ffrom_5ffile',['remmina_ssh_tunnel_new_from_file',['../remmina__ssh_8h.html#abf04fd329ab77bbd4f6aa1cb1eaa349d',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fopen',['remmina_ssh_tunnel_open',['../remmina__ssh_8h.html#a52b3f47eac79f2781ba81d61505f4f53',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5freverse',['remmina_ssh_tunnel_reverse',['../remmina__ssh_8h.html#ae47c8270267b02b9c0ff5b36074101c2',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fterminated',['remmina_ssh_tunnel_terminated',['../remmina__ssh_8h.html#aeb20d31243a4d30e469a34fe01684e38',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fx11',['remmina_ssh_tunnel_x11',['../remmina__ssh_8h.html#ac6d58beb4df141c6353e897c39748146',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5ftunnel_5fxport',['remmina_ssh_tunnel_xport',['../remmina__ssh_8h.html#aba49db2ced40e21e8adfad69dcfda2c4',1,'remmina_ssh.h']]],
+ ['remmina_5fssh_5funconvert',['remmina_ssh_unconvert',['../remmina__ssh_8h.html#aeccf94afb57bcad37b4241d45fcb3fea',1,'remmina_ssh.h']]],
+ ['remmina_5fst_5fquery_5ffeature',['remmina_st_query_feature',['../st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01',1,'st_plugin.c']]],
+ ['remmina_5fstat_5fsender_5fcan_5fsend',['remmina_stat_sender_can_send',['../remmina__stats__sender_8c.html#a5aa2104ccded08aa02dd2886f87af516',1,'remmina_stat_sender_can_send():&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#ab1d347e3ecedef03345aaf308db8f4ff',1,'remmina_stat_sender_can_send(void):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fcollector',['remmina_stats_collector',['../remmina__stats__sender_8c.html#a9fb1f78014c902387de47961e8245518',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fcollector_5fdone',['remmina_stats_collector_done',['../remmina__stats__sender_8c.html#a38aa59201bec4b28dd8af8273063dce7',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fget_5fall',['remmina_stats_get_all',['../remmina__stats_8c.html#a7398b36347e3621772776c466b565641',1,'remmina_stats_get_all():&#160;remmina_stats.c'],['../remmina__stats_8h.html#a7a1c9ab1abc1fdf78239d11b802843ae',1,'remmina_stats_get_all(void):&#160;remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fgtk_5fbackend',['remmina_stats_get_gtk_backend',['../remmina__stats_8c.html#a73fbf1064af209f1f7272d737168971c',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fgtk_5fversion',['remmina_stats_get_gtk_version',['../remmina__stats_8c.html#aed3a8dd3e01a05d96d6cf3625bb28731',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5findicator',['remmina_stats_get_indicator',['../remmina__stats_8c.html#aee2ea5acceb2fbc3aa4ff21d136c5734',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fkiosk_5fmode',['remmina_stats_get_kiosk_mode',['../remmina__stats_8c.html#a56956b7db0c631121151b19b920176da',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fmaster_5fpassword_5fstatus',['remmina_stats_get_master_password_status',['../remmina__stats_8c.html#abc355028bb11bee06b5aab5b5ae16dd3',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fos_5finfo',['remmina_stats_get_os_info',['../remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fprofiles',['remmina_stats_get_profiles',['../remmina__stats_8c.html#a65500d6b5d93cc7e3fc3d72329ff3847',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fsecret_5fplugin',['remmina_stats_get_secret_plugin',['../remmina__stats_8c.html#afe9ad8b63938e3486cf09ebbbe2e549c',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fuid',['remmina_stats_get_uid',['../remmina__stats_8c.html#ac6adbf6560625e2bf54037fcd039319d',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fuser_5fenv',['remmina_stats_get_user_env',['../remmina__stats_8c.html#a42f0554bf8eacb253a023d601cd59648',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fversion',['remmina_stats_get_version',['../remmina__stats_8c.html#ab248458a3face2634bab909ffeb8291e',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fget_5fwm_5fname',['remmina_stats_get_wm_name',['../remmina__stats_8c.html#ae596da7901fb3b45b7290a1d70b3ea3a',1,'remmina_stats.c']]],
+ ['remmina_5fstats_5fsender_5fperiodic_5fcheck',['remmina_stats_sender_periodic_check',['../remmina__stats__sender_8c.html#a9893f8bc18fa81d40fabcf60e7353bb2',1,'remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fsender_5fschedule',['remmina_stats_sender_schedule',['../remmina__stats__sender_8c.html#a03db556341f727fb2fe482cae80351a9',1,'remmina_stats_sender_schedule():&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#ab800d60b2014cf18c0791de01cf33802',1,'remmina_stats_sender_schedule(void):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstats_5fsender_5fsend',['remmina_stats_sender_send',['../remmina__stats__sender_8c.html#adcfe144769bc83b3a6cc216eb3589919',1,'remmina_stats_sender_send(gboolean show_only):&#160;remmina_stats_sender.c'],['../remmina__stats__sender_8h.html#adcfe144769bc83b3a6cc216eb3589919',1,'remmina_stats_sender_send(gboolean show_only):&#160;remmina_stats_sender.c']]],
+ ['remmina_5fstring_5farray_5fadd',['remmina_string_array_add',['../remmina__string__array_8c.html#a2aaacca7db4b86f836486cfb559398f0',1,'remmina_string_array_add(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a2aaacca7db4b86f836486cfb559398f0',1,'remmina_string_array_add(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fcompare_5ffunc',['remmina_string_array_compare_func',['../remmina__string__array_8c.html#a404140e205363c778476feb6f320f5f5',1,'remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5ffind',['remmina_string_array_find',['../remmina__string__array_8c.html#ab93a69850cfb4117c223a3f145ced986',1,'remmina_string_array_find(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#ab93a69850cfb4117c223a3f145ced986',1,'remmina_string_array_find(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5ffree',['remmina_string_array_free',['../remmina__string__array_8c.html#a8ab78913d299df665a408a8a5ec51bbe',1,'remmina_string_array_free(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a8ab78913d299df665a408a8a5ec51bbe',1,'remmina_string_array_free(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fintersect',['remmina_string_array_intersect',['../remmina__string__array_8c.html#abf64b35316d6e97f5c5001913b307308',1,'remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#abf64b35316d6e97f5c5001913b307308',1,'remmina_string_array_intersect(RemminaStringArray *array, const gchar *dest_strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew',['remmina_string_array_new',['../remmina__string__array_8c.html#aff90e964c6541b1af02adf7ea39e6e02',1,'remmina_string_array_new(void):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#aff90e964c6541b1af02adf7ea39e6e02',1,'remmina_string_array_new(void):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew_5ffrom_5fallocated_5fstring',['remmina_string_array_new_from_allocated_string',['../remmina__string__array_8c.html#a462a635b3a55cc0e3af087ff996fba9a',1,'remmina_string_array_new_from_allocated_string(gchar *strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a462a635b3a55cc0e3af087ff996fba9a',1,'remmina_string_array_new_from_allocated_string(gchar *strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fnew_5ffrom_5fstring',['remmina_string_array_new_from_string',['../remmina__string__array_8c.html#a7f1c8e427a25c2d5cede3952b1d0ad90',1,'remmina_string_array_new_from_string(const gchar *strs):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a7f1c8e427a25c2d5cede3952b1d0ad90',1,'remmina_string_array_new_from_string(const gchar *strs):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fremove',['remmina_string_array_remove',['../remmina__string__array_8c.html#a2a8a9753ebf61c9418a77ba3dd654ff3',1,'remmina_string_array_remove(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a2a8a9753ebf61c9418a77ba3dd654ff3',1,'remmina_string_array_remove(RemminaStringArray *array, const gchar *str):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fremove_5findex',['remmina_string_array_remove_index',['../remmina__string__array_8c.html#a40811c036e46f6544ab6c4cff445454b',1,'remmina_string_array_remove_index(RemminaStringArray *array, gint i):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a40811c036e46f6544ab6c4cff445454b',1,'remmina_string_array_remove_index(RemminaStringArray *array, gint i):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fsort',['remmina_string_array_sort',['../remmina__string__array_8c.html#a3eab4bae72ff130ad10ec8fc7364ce70',1,'remmina_string_array_sort(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a3eab4bae72ff130ad10ec8fc7364ce70',1,'remmina_string_array_sort(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5farray_5fto_5fstring',['remmina_string_array_to_string',['../remmina__string__array_8c.html#a96f7bec7ce32de6cf5deadcd5aec51ec',1,'remmina_string_array_to_string(RemminaStringArray *array):&#160;remmina_string_array.c'],['../remmina__string__array_8h.html#a96f7bec7ce32de6cf5deadcd5aec51ec',1,'remmina_string_array_to_string(RemminaStringArray *array):&#160;remmina_string_array.c']]],
+ ['remmina_5fstring_5flist_5fget_5ftext',['remmina_string_list_get_text',['../remmina__string__list_8c.html#a74058eac0af28c05a55d041103457aec',1,'remmina_string_list_get_text(void):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a74058eac0af28c05a55d041103457aec',1,'remmina_string_list_get_text(void):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5finit',['remmina_string_list_init',['../remmina__string__list_8c.html#a3c7633dffb5b6bab089c71c44506d8ab',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fmove_5fiter',['remmina_string_list_move_iter',['../remmina__string__list_8c.html#a5709fae6d1ab7827d9537715791fa819',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fnew',['remmina_string_list_new',['../remmina__string__list_8c.html#a11147c41297537effe55f18a63ce9f7e',1,'remmina_string_list_new(gboolean two_columns, const gchar *fields_separator):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a26bc63cdb43ed3fda2d86ac1d95a5029',1,'remmina_string_list_new(gboolean two_columns, const gchar *fields_separator):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fadd',['remmina_string_list_on_action_add',['../remmina__string__list_8c.html#a4f02ba383d1c5376606dd494771d5a1b',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fdown',['remmina_string_list_on_action_down',['../remmina__string__list_8c.html#ae29b09ef2fd47b3bf33163fc7b295481',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fremove',['remmina_string_list_on_action_remove',['../remmina__string__list_8c.html#a45c42dcabd4f5365e26b77a7ab5f18ae',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5faction_5fup',['remmina_string_list_on_action_up',['../remmina__string__list_8c.html#a20d8786221c0baa00f1c55b4131cc5c3',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fon_5fcell_5fedited',['remmina_string_list_on_cell_edited',['../remmina__string__list_8c.html#afa74f7320b1d5b8487eaadcd97d0d085',1,'remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5ftext',['remmina_string_list_set_text',['../remmina__string__list_8c.html#ab1bacc097f59c20b477d954bb863a5e0',1,'remmina_string_list_set_text(const gchar *text, const gboolean clear_data):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#ab1bacc097f59c20b477d954bb863a5e0',1,'remmina_string_list_set_text(const gchar *text, const gboolean clear_data):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5ftitles',['remmina_string_list_set_titles',['../remmina__string__list_8c.html#aa9ca6ccf40b954051a0daa5c1efeef87',1,'remmina_string_list_set_titles(gchar *title1, gchar *title2):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#aa9ca6ccf40b954051a0daa5c1efeef87',1,'remmina_string_list_set_titles(gchar *title1, gchar *title2):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fset_5fvalidation_5ffunc',['remmina_string_list_set_validation_func',['../remmina__string__list_8c.html#a500b85eafd23280f998d2980d1eba80e',1,'remmina_string_list_set_validation_func(RemminaStringListValidationFunc func):&#160;remmina_string_list.c'],['../remmina__string__list_8h.html#a500b85eafd23280f998d2980d1eba80e',1,'remmina_string_list_set_validation_func(RemminaStringListValidationFunc func):&#160;remmina_string_list.c']]],
+ ['remmina_5fstring_5flist_5fupdate_5fbuttons_5fstate',['remmina_string_list_update_buttons_state',['../remmina__string__list_8c.html#a777917055c80821e9bde6ac8fd06e2ff',1,'remmina_string_list.c']]],
+ ['remmina_5fsysinfo_5fget_5fgnome_5fshell_5fversion',['remmina_sysinfo_get_gnome_shell_version',['../remmina__sysinfo_8c.html#a79fd36823613c320001f0cdd2a97490f',1,'remmina_sysinfo_get_gnome_shell_version():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a9f1ea6410d45aaf5603439a5919aa1cb',1,'remmina_sysinfo_get_gnome_shell_version(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5fsysinfo_5fget_5fwm_5fname',['remmina_sysinfo_get_wm_name',['../remmina__sysinfo_8c.html#ae4441d62bb4075d1618b5750fea064b4',1,'remmina_sysinfo_get_wm_name():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a5e08ab3a66f27ada8e700ae42a181b6a',1,'remmina_sysinfo_get_wm_name(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5fsysinfo_5fis_5fappindicator_5favailable',['remmina_sysinfo_is_appindicator_available',['../remmina__sysinfo_8c.html#ae6ecf91edb905f3b2b39e33e05325590',1,'remmina_sysinfo_is_appindicator_available():&#160;remmina_sysinfo.c'],['../remmina__sysinfo_8h.html#a9e89ac64e13b47a651554d6a77af6b23',1,'remmina_sysinfo_is_appindicator_available(void):&#160;remmina_sysinfo.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5faccept',['remmina_tp_channel_handler_accept',['../telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5faccount_5fready',['remmina_tp_channel_handler_account_ready',['../telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fchannel_5fclosed',['remmina_tp_channel_handler_channel_closed',['../telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fchannel_5fready',['remmina_tp_channel_handler_channel_ready',['../telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fconnect',['remmina_tp_channel_handler_connect',['../telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fconnection_5fready',['remmina_tp_channel_handler_connection_ready',['../telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5ffree',['remmina_tp_channel_handler_free',['../telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fget_5fcontacts',['remmina_tp_channel_handler_get_contacts',['../telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fget_5fservice',['remmina_tp_channel_handler_get_service',['../telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fnew',['remmina_tp_channel_handler_new',['../telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404',1,'remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context):&#160;telepathy_channel_handler.c'],['../telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c',1,'remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context):&#160;telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fon_5fdisconnect',['remmina_tp_channel_handler_on_disconnect',['../telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fchannel_5fhandler_5fon_5fresponse',['remmina_tp_channel_handler_on_response',['../telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e',1,'telepathy_channel_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fclass_5finit',['remmina_tp_handler_class_init',['../telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fhandle_5fchannels',['remmina_tp_handler_handle_channels',['../telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fiface_5finit',['remmina_tp_handler_iface_init',['../telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5finit',['remmina_tp_handler_init',['../telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c',1,'telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fnew',['remmina_tp_handler_new',['../telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6',1,'remmina_tp_handler_new(void):&#160;telepathy_handler.c'],['../telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6',1,'remmina_tp_handler_new(void):&#160;telepathy_handler.c']]],
+ ['remmina_5ftp_5fhandler_5fregister',['remmina_tp_handler_register',['../telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9',1,'telepathy_handler.c']]],
+ ['remmina_5funlock_5fcancel_5fclicked',['remmina_unlock_cancel_clicked',['../remmina__unlock_8c.html#ac6e3a59f765b6d8012cb61005f1a3d18',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5fnew',['remmina_unlock_new',['../remmina__unlock_8c.html#a81e79e5c1c230b7e2bf27b2457801d4e',1,'remmina_unlock_new(GtkWindow *parent):&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#a65839c333c02d3c1d7a4aad5b1098ef7',1,'remmina_unlock_new(GtkWindow *parent):&#160;remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5fdestroy',['remmina_unlock_timer_destroy',['../remmina__unlock_8c.html#af24c3977f6a1806914d22fead301a0cd',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5finit',['remmina_unlock_timer_init',['../remmina__unlock_8c.html#a4c971264cea7aae8a5ba885f1e2430c2',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5ftimer_5freset',['remmina_unlock_timer_reset',['../remmina__unlock_8c.html#ab8dc92ad404209441f4346a3417cc55e',1,'remmina_unlock.c']]],
+ ['remmina_5funlock_5funlock_5fclicked',['remmina_unlock_unlock_clicked',['../remmina__unlock_8c.html#a10e43559c46ea3ba409c0b97a43c93b3',1,'remmina_unlock.c']]],
+ ['remmina_5futils_5fget_5fetc_5frelease',['remmina_utils_get_etc_release',['../remmina__utils_8c.html#a54cee350c4ecc6e77af835c4ba90df4c',1,'remmina_utils_get_etc_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a54cee350c4ecc6e77af835c4ba90df4c',1,'remmina_utils_get_etc_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5farch',['remmina_utils_get_kernel_arch',['../remmina__utils_8c.html#a116e7cd4565386fe531d3a6d1a3d3730',1,'remmina_utils_get_kernel_arch():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a116e7cd4565386fe531d3a6d1a3d3730',1,'remmina_utils_get_kernel_arch():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5fname',['remmina_utils_get_kernel_name',['../remmina__utils_8c.html#abfc722d07d9936711794411bfbed0522',1,'remmina_utils_get_kernel_name():&#160;remmina_utils.c'],['../remmina__utils_8h.html#abfc722d07d9936711794411bfbed0522',1,'remmina_utils_get_kernel_name():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fkernel_5frelease',['remmina_utils_get_kernel_release',['../remmina__utils_8c.html#a57603aa88df56e77e1a6de0f215f21aa',1,'remmina_utils_get_kernel_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a57603aa88df56e77e1a6de0f215f21aa',1,'remmina_utils_get_kernel_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flang',['remmina_utils_get_lang',['../remmina__utils_8c.html#a0f10e190a6dd212fcb0cf36ce81c8324',1,'remmina_utils_get_lang():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a0f10e190a6dd212fcb0cf36ce81c8324',1,'remmina_utils_get_lang():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fcodename',['remmina_utils_get_lsb_codename',['../remmina__utils_8c.html#a2b4dbb0da7c8ba4bd86877097b85d10c',1,'remmina_utils_get_lsb_codename():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a2b4dbb0da7c8ba4bd86877097b85d10c',1,'remmina_utils_get_lsb_codename():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fdescription',['remmina_utils_get_lsb_description',['../remmina__utils_8c.html#ac00cb21c5cb5efcf7afc6eeae2147a75',1,'remmina_utils_get_lsb_description():&#160;remmina_utils.c'],['../remmina__utils_8h.html#ac00cb21c5cb5efcf7afc6eeae2147a75',1,'remmina_utils_get_lsb_description():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5fid',['remmina_utils_get_lsb_id',['../remmina__utils_8c.html#aa768b6fe171695d212da4c6eaf74cf22',1,'remmina_utils_get_lsb_id():&#160;remmina_utils.c'],['../remmina__utils_8h.html#aa768b6fe171695d212da4c6eaf74cf22',1,'remmina_utils_get_lsb_id():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5flsb_5frelease',['remmina_utils_get_lsb_release',['../remmina__utils_8c.html#a5ee50df5d7585d229a154a712c9161ca',1,'remmina_utils_get_lsb_release():&#160;remmina_utils.c'],['../remmina__utils_8h.html#a5ee50df5d7585d229a154a712c9161ca',1,'remmina_utils_get_lsb_release():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fget_5fos_5finfo',['remmina_utils_get_os_info',['../remmina__utils_8c.html#af1acfeca84e3efd47ab1ef8365f94f99',1,'remmina_utils_get_os_info():&#160;remmina_utils.c'],['../remmina__utils_8h.html#af1acfeca84e3efd47ab1ef8365f94f99',1,'remmina_utils_get_os_info():&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fread_5fdistrofile',['remmina_utils_read_distrofile',['../remmina__utils_8c.html#a297576937e5f9be372f1861a87c41dfa',1,'remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5ffind',['remmina_utils_string_find',['../remmina__utils_8c.html#a75eb5f79df692dfe4db221d03a5fa355',1,'remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;remmina_utils.c'],['../remmina__utils_8h.html#a3ce53eeb3b090f86cfcdbce3e7cf71be',1,'remmina_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5freplace',['remmina_utils_string_replace',['../remmina__utils_8c.html#aa6859a61aa28f46591750c9afdef66f4',1,'remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;remmina_utils.c'],['../remmina__utils_8h.html#aa6859a61aa28f46591750c9afdef66f4',1,'remmina_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5freplace_5fall',['remmina_utils_string_replace_all',['../remmina__utils_8c.html#ac804e6111e538ee2fa425b8b6fd1fb66',1,'remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;remmina_utils.c'],['../remmina__utils_8h.html#ac804e6111e538ee2fa425b8b6fd1fb66',1,'remmina_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstring_5fstrip',['remmina_utils_string_strip',['../remmina__utils_8c.html#afe83bd0997a1054045e17d3f66c8bb0d',1,'remmina_utils_string_strip(const gchar *s):&#160;remmina_utils.c'],['../remmina__utils_8h.html#afe83bd0997a1054045e17d3f66c8bb0d',1,'remmina_utils_string_strip(const gchar *s):&#160;remmina_utils.c']]],
+ ['remmina_5futils_5fstrpos',['remmina_utils_strpos',['../remmina__utils_8c.html#ae4318060ee81f8fbd907904892dd71d3',1,'remmina_utils.c']]],
+ ['remmina_5fwidget_5fpool_5fcount',['remmina_widget_pool_count',['../remmina__widget__pool_8c.html#a9cbb5b8d01a6d44ba7b46434467c02f8',1,'remmina_widget_pool_count():&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#af888e4e0c2d590e61c72608a7482f18a',1,'remmina_widget_pool_count(void):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5ffind',['remmina_widget_pool_find',['../remmina__widget__pool_8c.html#ab776b24a3b829a1d5dd7974cb8582c05',1,'remmina_widget_pool_find(GType type, const gchar *tag):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#ab776b24a3b829a1d5dd7974cb8582c05',1,'remmina_widget_pool_find(GType type, const gchar *tag):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5ffind_5fby_5fwindow',['remmina_widget_pool_find_by_window',['../remmina__widget__pool_8c.html#a0a6a2069cdbbb920fb09f95bec3e997e',1,'remmina_widget_pool_find_by_window(GType type, GdkWindow *window):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#a0a6a2069cdbbb920fb09f95bec3e997e',1,'remmina_widget_pool_find_by_window(GType type, GdkWindow *window):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fforeach',['remmina_widget_pool_foreach',['../remmina__widget__pool_8c.html#a53fad3994b2550300cfd4fd8bb2a2b5b',1,'remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#a53fad3994b2550300cfd4fd8bb2a2b5b',1,'remmina_widget_pool_foreach(RemminaWidgetPoolForEachFunc callback, gpointer data):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5finit',['remmina_widget_pool_init',['../remmina__widget__pool_8c.html#aadc178f8f991ba939827d235aae8ad09',1,'remmina_widget_pool_init(void):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#aadc178f8f991ba939827d235aae8ad09',1,'remmina_widget_pool_init(void):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fon_5fwidget_5fdestroy',['remmina_widget_pool_on_widget_destroy',['../remmina__widget__pool_8c.html#aa5fd17580202843eab40cabb258d2664',1,'remmina_widget_pool.c']]],
+ ['remmina_5fwidget_5fpool_5fregister',['remmina_widget_pool_register',['../remmina__widget__pool_8c.html#ae3c9c9853eb5bedbfeadbfac1d495b95',1,'remmina_widget_pool_register(GtkWidget *widget):&#160;remmina_widget_pool.c'],['../remmina__widget__pool_8h.html#ae3c9c9853eb5bedbfeadbfac1d495b95',1,'remmina_widget_pool_register(GtkWidget *widget):&#160;remmina_widget_pool.c']]],
+ ['remmina_5fwww_5fquery_5ffeature',['remmina_www_query_feature',['../www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4',1,'www_plugin.c']]],
+ ['remmina_5fwww_5fweb_5fview_5fjs_5ffinished',['remmina_www_web_view_js_finished',['../www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb',1,'www_plugin.c']]],
+ ['rf_5fauto_5freconnect',['rf_auto_reconnect',['../rdp__plugin_8c.html#a6dc42bd40842f63939e962828c19cfc7',1,'rdp_plugin.c']]],
+ ['rf_5fbegin_5fpaint',['rf_begin_paint',['../rdp__plugin_8c.html#a2d4d5d48fa23ed0ae59466f5d3f1dacf',1,'rdp_plugin.c']]],
+ ['rf_5fbitmap_5fdecompress',['rf_Bitmap_Decompress',['../rdp__graphics_8c.html#a29763c1856c87650bbfc4b9ecd177718',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5ffree',['rf_Bitmap_Free',['../rdp__graphics_8c.html#ad508926c64816572be8a97eee5cac60d',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fnew',['rf_Bitmap_New',['../rdp__graphics_8c.html#ac987bcf2b68b2a9fdf0c66ce27b25633',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fpaint',['rf_Bitmap_Paint',['../rdp__graphics_8c.html#a93a58a3f560a61e7bf76e58bec20194e',1,'rdp_graphics.c']]],
+ ['rf_5fbitmap_5fsetsurface',['rf_Bitmap_SetSurface',['../rdp__graphics_8c.html#af6d895caa2a7569082dacd7ef0a48d28',1,'rdp_graphics.c']]],
+ ['rf_5fcheck_5ffds',['rf_check_fds',['../rdp__plugin_8h.html#a69548c1c051b84912d45d57d4dc34098',1,'rdp_plugin.h']]],
+ ['rf_5fdesktop_5fresize',['rf_desktop_resize',['../rdp__plugin_8c.html#a992a905d014d83a8de736ffbd85fe901',1,'rdp_plugin.c']]],
+ ['rf_5fend_5fpaint',['rf_end_paint',['../rdp__plugin_8c.html#ab5b2b1181588e07e68c083c9539fa84f',1,'rdp_plugin.c']]],
+ ['rf_5fget_5ffds',['rf_get_fds',['../rdp__plugin_8h.html#abf232991d87607c920a7a72d9aa459dc',1,'rdp_plugin.h']]],
+ ['rf_5fglyph_5fbegindraw',['rf_Glyph_BeginDraw',['../rdp__graphics_8c.html#a3421f83355f450de66f14e997d770a9e',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fdraw',['rf_Glyph_Draw',['../rdp__graphics_8c.html#aeb45441fb6688ed52556c1cb803033e3',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fenddraw',['rf_Glyph_EndDraw',['../rdp__graphics_8c.html#a7e9fd3bd2eeb6fe398ce64b72c12ba2c',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5ffree',['rf_Glyph_Free',['../rdp__graphics_8c.html#a8dda0e3bc313c165f38efd3954f69af9',1,'rdp_graphics.c']]],
+ ['rf_5fglyph_5fnew',['rf_Glyph_New',['../rdp__graphics_8c.html#af84263a9a942535283edbc8c541336ce',1,'rdp_graphics.c']]],
+ ['rf_5finit',['rf_init',['../rdp__plugin_8h.html#ae498dd186f5003596bc2aa64deb87ca7',1,'rdp_plugin.h']]],
+ ['rf_5fkeyboard_5fset_5fime_5fstatus',['rf_keyboard_set_ime_status',['../rdp__plugin_8c.html#a0b14775d97715a4ca01f21d81170151b',1,'rdp_plugin.c']]],
+ ['rf_5fkeyboard_5fset_5findicators',['rf_keyboard_set_indicators',['../rdp__plugin_8c.html#a1b89199f25081137222e72a4be577ea4',1,'rdp_plugin.c']]],
+ ['rf_5fobject_5ffree',['rf_object_free',['../rdp__plugin_8h.html#a20775c6e0192fca892cf442e8e264433',1,'rdp_plugin.h']]],
+ ['rf_5fplay_5fsound',['rf_play_sound',['../rdp__plugin_8c.html#a0d029a3287dd4abf1e7c602e3c556cde',1,'rdp_plugin.c']]],
+ ['rf_5fpointer_5ffree',['rf_Pointer_Free',['../rdp__graphics_8c.html#afe709335471a30a29f9c97587d43088f',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fnew',['rf_Pointer_New',['../rdp__graphics_8c.html#a9fb6fb540ec75254cb763ae974fb5129',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fset',['rf_Pointer_Set',['../rdp__graphics_8c.html#aee54ac34465e6b70a5a7bbd799e9b747',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetdefault',['rf_Pointer_SetDefault',['../rdp__graphics_8c.html#ac2abd9da136bc6f446c836a3d53ab8b6',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetnull',['rf_Pointer_SetNull',['../rdp__graphics_8c.html#aeb108afe0c6da4dfa5a485137921437a',1,'rdp_graphics.c']]],
+ ['rf_5fpointer_5fsetposition',['rf_Pointer_SetPosition',['../rdp__graphics_8c.html#a4c2407f4e8db3ae44123066c373b705c',1,'rdp_graphics.c']]],
+ ['rf_5fprocess_5fevent_5fqueue',['rf_process_event_queue',['../rdp__plugin_8c.html#a8b9e88d2925be5eee2025f4c3ede1e29',1,'rdp_plugin.c']]],
+ ['rf_5fregister_5fgraphics',['rf_register_graphics',['../rdp__graphics_8c.html#a95732c40c35499f3440715b6526279b1',1,'rf_register_graphics(rdpGraphics *graphics):&#160;rdp_graphics.c'],['../rdp__graphics_8h.html#a95732c40c35499f3440715b6526279b1',1,'rf_register_graphics(rdpGraphics *graphics):&#160;rdp_graphics.c']]],
+ ['rf_5funinit',['rf_uninit',['../rdp__plugin_8h.html#ab113687b2d454d2ef5865de40a9cabbb',1,'rdp_plugin.h']]],
+ ['rfi_5funinit',['rfi_uninit',['../rdp__plugin_8c.html#af22c947a2ae21ce29170be003585e06b',1,'rdp_plugin.c']]],
+ ['rmnews_5fclose_5fclicked',['rmnews_close_clicked',['../rmnews_8c.html#aaa3ec81813c3b38be1f75885e6005a00',1,'rmnews.c']]],
+ ['rmnews_5fdefaultcl_5fon_5fclick',['rmnews_defaultcl_on_click',['../rmnews_8c.html#a7825b2c9facea97439f5780d83e86798',1,'rmnews.c']]],
+ ['rmnews_5fdialog_5fdeleted',['rmnews_dialog_deleted',['../rmnews_8c.html#adf38ed099d3ac477aea7e3bbd6d95bd4',1,'rmnews.c']]],
+ ['rmnews_5fget_5ffile_5fcontents',['rmnews_get_file_contents',['../rmnews_8c.html#a11d7277ba911522ac40656774cbe41b9',1,'rmnews.c']]],
+ ['rmnews_5fget_5fnews',['rmnews_get_news',['../rmnews_8c.html#a26cb497eeb30a956dcdc5790b393a301',1,'rmnews.c']]],
+ ['rmnews_5fget_5fuid',['rmnews_get_uid',['../rmnews_8c.html#a59416d6e8999802e8b145b0338331081',1,'rmnews.c']]],
+ ['rmnews_5fget_5furl',['rmnews_get_url',['../rmnews_8c.html#a341ebc424e040f8f8a2e5e46b1920c7e',1,'rmnews_get_url(const char *url):&#160;rmnews.c'],['../rmnews_8h.html#a341ebc424e040f8f8a2e5e46b1920c7e',1,'rmnews_get_url(const char *url):&#160;rmnews.c']]],
+ ['rmnews_5fget_5furl_5fcb',['rmnews_get_url_cb',['../rmnews_8c.html#aa360ccd2808c76aab98c1fc4bc336c38',1,'rmnews.c']]],
+ ['rmnews_5fperiodic_5fcheck',['rmnews_periodic_check',['../rmnews_8c.html#a88b2d9ce9e7bc64373e2eb7f904a0814',1,'rmnews.c']]],
+ ['rmnews_5fschedule',['rmnews_schedule',['../rmnews_8c.html#a8433da15acb3138804b4816189e8fc3a',1,'rmnews_schedule():&#160;rmnews.c'],['../rmnews_8h.html#ace3fdfea434b950bc89b72b8ebd6c888',1,'rmnews_schedule():&#160;rmnews.c']]],
+ ['rmnews_5fshow_5fnews',['rmnews_show_news',['../rmnews_8c.html#af58ee02676e8c920a6e9b4676bb86abe',1,'rmnews_show_news(GtkWindow *parent):&#160;rmnews.c'],['../rmnews_8h.html#a356f4b0242f21bcbefb2ace3a15873af',1,'rmnews_show_news():&#160;rmnews.h']]],
+ ['rmnews_5fstats_5fswitch_5fstate_5fset_5fcb',['rmnews_stats_switch_state_set_cb',['../rmnews_8c.html#a3dea59fd6d970a1cabeaf47543d871ce',1,'rmnews.c']]],
+ ['rp_5fkwallet_5fdelete_5fpassword',['rp_kwallet_delete_password',['../kwallet__plugin_8h.html#ad44ed3af2cdfb051e5122b85604cd0cd',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fget_5fpassword',['rp_kwallet_get_password',['../kwallet__plugin_8h.html#ab0039ed9f1ecfa8937bed720fe408ae5',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5finit',['rp_kwallet_init',['../kwallet__plugin_8h.html#a1cce5ef9ceee5e678840c92b4bb0a4a9',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fis_5fservice_5favailable',['rp_kwallet_is_service_available',['../kwallet__plugin_8h.html#ad91b525d838f1f2d62734c84a9f890ba',1,'kwallet_plugin.h']]],
+ ['rp_5fkwallet_5fstore_5fpassword',['rp_kwallet_store_password',['../kwallet__plugin_8h.html#ae088299c1e5a756c6a178e1dd1becfe3',1,'kwallet_plugin.h']]],
+ ['rpw_5fsize_5fallocated_5fon_5fconnection',['rpw_size_allocated_on_connection',['../rcw_8c.html#ad5ac9d52e0afc18834da73ef2bf18edd',1,'rcw.c']]],
+ ['rsa_5fencrypt_5fstring',['rsa_encrypt_string',['../remmina__stats__sender_8c.html#a2423312953c64a318fbe8d44fd2d4fb7',1,'remmina_stats_sender.c']]],
+ ['run_5fdestroy_5fhandler',['run_destroy_handler',['../remmina__protocol__widget_8c.html#a7b1e83afd68c2b7301fc4d6da6a8f6d8',1,'remmina_protocol_widget.c']]],
+ ['run_5fresponse_5fhandler',['run_response_handler',['../remmina__protocol__widget_8c.html#a122e28e59acb89200937ff823b82ddaf',1,'remmina_protocol_widget.c']]],
+ ['run_5funmap_5fhandler',['run_unmap_handler',['../remmina__protocol__widget_8c.html#ac9abaedb8cc35838ef1444423a81507d',1,'remmina_protocol_widget.c']]]
+];
diff --git a/docs/search/mag_sel.png b/docs/search/mag_sel.png
new file mode 100644
index 000000000..81f6040a2
--- /dev/null
+++ b/docs/search/mag_sel.png
Binary files differ
diff --git a/docs/search/nomatches.html b/docs/search/nomatches.html
new file mode 100644
index 000000000..b1ded27e9
--- /dev/null
+++ b/docs/search/nomatches.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="NoMatches">No Matches</div>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_0.html b/docs/search/pages_0.html
new file mode 100644
index 000000000..4955b9e4f
--- /dev/null
+++ b/docs/search/pages_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_0.js b/docs/search/pages_0.js
new file mode 100644
index 000000000..51eb89af8
--- /dev/null
+++ b/docs/search/pages_0.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['compilation',['Compilation',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation.html',1,'']]],
+ ['compilation_2dguide_2dfor_2drhel',['Compilation-guide-for-RHEL',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compilation-guide-for-_r_h_e_l.html',1,'']]],
+ ['compiling_20remmina_20on_20freebsd_2011',['Compiling Remmina on FreeBSD 11',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_free_b_s_d.html',1,'']]],
+ ['changelog',['Changelog',['../md__c_h_a_n_g_e_l_o_g.html',1,'']]],
+ ['contributing',['CONTRIBUTING',['../md__c_o_n_t_r_i_b_u_t_i_n_g.html',1,'']]]
+];
diff --git a/docs/search/pages_1.html b/docs/search/pages_1.html
new file mode 100644
index 000000000..aedb14ee2
--- /dev/null
+++ b/docs/search/pages_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_1.js b/docs/search/pages_1.js
new file mode 100644
index 000000000..7803cf3cc
--- /dev/null
+++ b/docs/search/pages_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['development_2dnotes',['Development-Notes',['../md__builds__remmina_remmina-ci__remmina_8wiki__development__development-_notes.html',1,'']]]
+];
diff --git a/docs/search/pages_2.html b/docs/search/pages_2.html
new file mode 100644
index 000000000..bd9159398
--- /dev/null
+++ b/docs/search/pages_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_2.js b/docs/search/pages_2.js
new file mode 100644
index 000000000..3ccb86f1f
--- /dev/null
+++ b/docs/search/pages_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['gtk_2dversions_2don_2dvarious_2ddistributions',['GTK-versions-on-various-distributions',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__g_t_k-versions-on-various-distributions.html',1,'']]]
+];
diff --git a/docs/search/pages_3.html b/docs/search/pages_3.html
new file mode 100644
index 000000000..bc0e37f20
--- /dev/null
+++ b/docs/search/pages_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_3.js b/docs/search/pages_3.js
new file mode 100644
index 000000000..38280f15b
--- /dev/null
+++ b/docs/search/pages_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['how_2dto_2dtranslate_2dremmina',['How-to-translate-Remmina',['../md__builds__remmina_remmina-ci__remmina_8wiki__localisation__how-to-translate-_remmina.html',1,'']]],
+ ['how_20to_20configure_20key_20mapping_20with_20the_20vnc_20plugin_2e',['How to configure key mapping with the VNC plugin.',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks_vnc-key-mapping-configuration.html',1,'']]]
+];
diff --git a/docs/search/pages_4.html b/docs/search/pages_4.html
new file mode 100644
index 000000000..d4c3e8e9f
--- /dev/null
+++ b/docs/search/pages_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_4.js b/docs/search/pages_4.js
new file mode 100644
index 000000000..f523ffc80
--- /dev/null
+++ b/docs/search/pages_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['multi_20monitor_20support',['Multi monitor support',['../md__builds__remmina_remmina-ci__remmina_8wiki__development_multi-monitor-support.html',1,'']]]
+];
diff --git a/docs/search/pages_5.html b/docs/search/pages_5.html
new file mode 100644
index 000000000..af17efeb8
--- /dev/null
+++ b/docs/search/pages_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_5.js b/docs/search/pages_5.js
new file mode 100644
index 000000000..d4bdc9f23
--- /dev/null
+++ b/docs/search/pages_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['problems_2dwith_2dwayland',['Problems-with-Wayland',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__problems-with-_wayland.html',1,'']]]
+];
diff --git a/docs/search/pages_6.html b/docs/search/pages_6.html
new file mode 100644
index 000000000..52583b33e
--- /dev/null
+++ b/docs/search/pages_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_6.js b/docs/search/pages_6.js
new file mode 100644
index 000000000..b22c4fb11
--- /dev/null
+++ b/docs/search/pages_6.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20arch',['Quick and dirty guide for compiling remmina on Arch',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_arch-_linux.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20debian_2010',['Quick and dirty guide for compiling remmina on Debian 10',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-10-_buster.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20debian_209',['Quick and dirty guide for compiling remmina on Debian 9',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_debian-9-_stretch.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2014_2e04',['Quick and dirty guide for compiling remmina on ubuntu 14.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-14_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2016_2e04',['Quick and dirty guide for compiling remmina on ubuntu 16.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-16_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2018_2e04',['Quick and dirty guide for compiling remmina on ubuntu 18.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-18_804.html',1,'']]],
+ ['quick_20and_20dirty_20guide_20for_20compiling_20remmina_20on_20ubuntu_2018_2e04',['Quick and dirty guide for compiling remmina on ubuntu 18.04',['../md__builds__remmina_remmina-ci__remmina_8wiki__compilation__compile-on-_ubuntu-20_804.html',1,'']]]
+];
diff --git a/docs/search/pages_7.html b/docs/search/pages_7.html
new file mode 100644
index 000000000..7d4b8fe9b
--- /dev/null
+++ b/docs/search/pages_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_7.js b/docs/search/pages_7.js
new file mode 100644
index 000000000..adef45795
--- /dev/null
+++ b/docs/search/pages_7.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['requirements',['Requirements',['../md__builds__remmina_remmina-ci__remmina_8wiki__contribution__h_o_w_t_o-generate-the-changelog.html',1,'']]],
+ ['remmina_2drdp_2dand_2dhidpi_2dscaling',['Remmina-RDP-and-HiDPI-scaling',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_r_d_p-and-_hi_d_p_i-scaling.html',1,'']]],
+ ['remmina_2dvnc_2dto_2draspbian_2dstretch',['Remmina-VNC-to-Raspbian-Stretch',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__remmina-_v_n_c-to-_raspbian-_stretch.html',1,'']]],
+ ['remmina_20usage_20faq',['Remmina Usage FAQ',['../md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_usage-_f_a_q.html',1,'']]]
+];
diff --git a/docs/search/pages_8.html b/docs/search/pages_8.html
new file mode 100644
index 000000000..b704407b4
--- /dev/null
+++ b/docs/search/pages_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_8.js b/docs/search/pages_8.js
new file mode 100644
index 000000000..310de877b
--- /dev/null
+++ b/docs/search/pages_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['systray_20menu',['Systray menu',['../md__builds__remmina_remmina-ci__remmina_8wiki__problems-and-tweaks__systray-menu.html',1,'']]]
+];
diff --git a/docs/search/pages_9.html b/docs/search/pages_9.html
new file mode 100644
index 000000000..751a30fcf
--- /dev/null
+++ b/docs/search/pages_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_9.js b/docs/search/pages_9.js
new file mode 100644
index 000000000..8288830a3
--- /dev/null
+++ b/docs/search/pages_9.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['table_20of_20contents',['Table of contents',['../md__builds__remmina_remmina-ci__remmina_8wiki__sidebar.html',1,'']]],
+ ['testing_20under_20ubuntu_20with_20the_20remmina_2dnext_2ddaily_20ppa',['Testing under Ubuntu with the remmina-next-daily PPA',['../md__builds__remmina_remmina-ci__remmina_8wiki__testing__testing-under-_ubuntu-with-the-remmina-next-daily-_p_p_a.html',1,'']]],
+ ['todo_20list',['Todo List',['../todo.html',1,'']]]
+];
diff --git a/docs/search/pages_a.html b/docs/search/pages_a.html
new file mode 100644
index 000000000..ac6274de3
--- /dev/null
+++ b/docs/search/pages_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/pages_a.js b/docs/search/pages_a.js
new file mode 100644
index 000000000..087ad767e
--- /dev/null
+++ b/docs/search/pages_a.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['update_2dgettext_2dmessages',['Update-gettext-messages',['../md__builds__remmina_remmina-ci__remmina_8wiki__localisation__update-gettext-messages.html',1,'']]],
+ ['using_20colour_20schemes_20in_20remmina_20ssh_20protocol_20plugin',['Using colour schemes in Remmina SSH protocol plugin',['../md__builds__remmina_remmina-ci__remmina_8wiki__usage__remmina-_s_s_h-_terminal-colour-schemes.html',1,'']]]
+];
diff --git a/docs/search/search.css b/docs/search/search.css
new file mode 100644
index 000000000..3cf9df94a
--- /dev/null
+++ b/docs/search/search.css
@@ -0,0 +1,271 @@
+/*---------------- Search Box */
+
+#FSearchBox {
+ float: left;
+}
+
+#MSearchBox {
+ white-space : nowrap;
+ float: none;
+ margin-top: 8px;
+ right: 0px;
+ width: 170px;
+ height: 24px;
+ z-index: 102;
+}
+
+#MSearchBox .left
+{
+ display:block;
+ position:absolute;
+ left:10px;
+ width:20px;
+ height:19px;
+ background:url('search_l.png') no-repeat;
+ background-position:right;
+}
+
+#MSearchSelect {
+ display:block;
+ position:absolute;
+ width:20px;
+ height:19px;
+}
+
+.left #MSearchSelect {
+ left:4px;
+}
+
+.right #MSearchSelect {
+ right:5px;
+}
+
+#MSearchField {
+ display:block;
+ position:absolute;
+ height:19px;
+ background:url('search_m.png') repeat-x;
+ border:none;
+ width:115px;
+ margin-left:20px;
+ padding-left:4px;
+ color: #909090;
+ outline: none;
+ font: 9pt Arial, Verdana, sans-serif;
+ -webkit-border-radius: 0px;
+}
+
+#FSearchBox #MSearchField {
+ margin-left:15px;
+}
+
+#MSearchBox .right {
+ display:block;
+ position:absolute;
+ right:10px;
+ top:8px;
+ width:20px;
+ height:19px;
+ background:url('search_r.png') no-repeat;
+ background-position:left;
+}
+
+#MSearchClose {
+ display: none;
+ position: absolute;
+ top: 4px;
+ background : none;
+ border: none;
+ margin: 0px 4px 0px 0px;
+ padding: 0px 0px;
+ outline: none;
+}
+
+.left #MSearchClose {
+ left: 6px;
+}
+
+.right #MSearchClose {
+ right: 2px;
+}
+
+.MSearchBoxActive #MSearchField {
+ color: #000000;
+}
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #90A5CE;
+ background-color: #F9FAFC;
+ z-index: 10001;
+ padding-top: 4px;
+ padding-bottom: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+ font: 8pt Arial, Verdana, sans-serif;
+ padding-left: 2px;
+ padding-right: 12px;
+ border: 0px;
+}
+
+span.SelectionMark {
+ margin-right: 4px;
+ font-family: monospace;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem {
+ display: block;
+ outline-style: none;
+ color: #000000;
+ text-decoration: none;
+ padding-left: 6px;
+ padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+ color: #000000;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem:hover {
+ color: #FFFFFF;
+ background-color: #3D578C;
+ outline-style: none;
+ text-decoration: none;
+ cursor: pointer;
+ display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+ width: 60ex;
+ height: 15em;
+}
+
+#MSearchResultsWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #000;
+ background-color: #EEF1F7;
+ z-index:10000;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+ clear:both;
+ padding-bottom: 15px;
+}
+
+.SREntry {
+ font-size: 10pt;
+ padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+ font-size: 8pt;
+ padding: 1px 5px;
+}
+
+body.SRPage {
+ margin: 5px 2px;
+}
+
+.SRChildren {
+ padding-left: 3ex; padding-bottom: .5em
+}
+
+.SRPage .SRChildren {
+ display: none;
+}
+
+.SRSymbol {
+ font-weight: bold;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRScope {
+ display: block;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+ text-decoration: underline;
+}
+
+span.SRScope {
+ padding-left: 4px;
+}
+
+.SRPage .SRStatus {
+ padding: 2px 5px;
+ font-size: 8pt;
+ font-style: italic;
+}
+
+.SRResult {
+ display: none;
+}
+
+DIV.searchresults {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.searchresult {
+ background-color: #F0F3F8;
+}
+
+.pages b {
+ color: white;
+ padding: 5px 5px 3px 5px;
+ background-image: url("../tab_a.png");
+ background-repeat: repeat-x;
+ text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+ line-height: 17px;
+ margin-left: 4px;
+ text-decoration: none;
+}
+
+.hl {
+ font-weight: bold;
+}
+
+#searchresults {
+ margin-bottom: 20px;
+}
+
+.searchpages {
+ margin-top: 10px;
+}
+
diff --git a/docs/search/search.js b/docs/search/search.js
new file mode 100644
index 000000000..dedce3bf0
--- /dev/null
+++ b/docs/search/search.js
@@ -0,0 +1,791 @@
+function convertToId(search)
+{
+ var result = '';
+ for (i=0;i<search.length;i++)
+ {
+ var c = search.charAt(i);
+ var cn = c.charCodeAt(0);
+ if (c.match(/[a-z0-9\u0080-\uFFFF]/))
+ {
+ result+=c;
+ }
+ else if (cn<16)
+ {
+ result+="_0"+cn.toString(16);
+ }
+ else
+ {
+ result+="_"+cn.toString(16);
+ }
+ }
+ return result;
+}
+
+function getXPos(item)
+{
+ var x = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ x += item.offsetLeft;
+ item = item.offsetParent;
+ }
+ }
+ return x;
+}
+
+function getYPos(item)
+{
+ var y = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ y += item.offsetTop;
+ item = item.offsetParent;
+ }
+ }
+ return y;
+}
+
+/* A class handling everything associated with the search panel.
+
+ Parameters:
+ name - The name of the global variable that will be
+ storing this instance. Is needed to be able to set timeouts.
+ resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, inFrame, label)
+{
+ if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
+
+ // ---------- Instance variables
+ this.name = name;
+ this.resultsPath = resultsPath;
+ this.keyTimeout = 0;
+ this.keyTimeoutLength = 500;
+ this.closeSelectionTimeout = 300;
+ this.lastSearchValue = "";
+ this.lastResultsPage = "";
+ this.hideTimeout = 0;
+ this.searchIndex = 0;
+ this.searchActive = false;
+ this.insideFrame = inFrame;
+ this.searchLabel = label;
+
+ // ----------- DOM Elements
+
+ this.DOMSearchField = function()
+ { return document.getElementById("MSearchField"); }
+
+ this.DOMSearchSelect = function()
+ { return document.getElementById("MSearchSelect"); }
+
+ this.DOMSearchSelectWindow = function()
+ { return document.getElementById("MSearchSelectWindow"); }
+
+ this.DOMPopupSearchResults = function()
+ { return document.getElementById("MSearchResults"); }
+
+ this.DOMPopupSearchResultsWindow = function()
+ { return document.getElementById("MSearchResultsWindow"); }
+
+ this.DOMSearchClose = function()
+ { return document.getElementById("MSearchClose"); }
+
+ this.DOMSearchBox = function()
+ { return document.getElementById("MSearchBox"); }
+
+ // ------------ Event Handlers
+
+ // Called when focus is added or removed from the search field.
+ this.OnSearchFieldFocus = function(isActive)
+ {
+ this.Activate(isActive);
+ }
+
+ this.OnSearchSelectShow = function()
+ {
+ var searchSelectWindow = this.DOMSearchSelectWindow();
+ var searchField = this.DOMSearchSelect();
+
+ if (this.insideFrame)
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ left += searchField.offsetWidth + 6;
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ left -= searchSelectWindow.offsetWidth;
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+ else
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+
+ // stop selection hide timer
+ if (this.hideTimeout)
+ {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout=0;
+ }
+ return false; // to avoid "image drag" default event
+ }
+
+ this.OnSearchSelectHide = function()
+ {
+ this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
+ this.closeSelectionTimeout);
+ }
+
+ // Called when the content of the search field is changed.
+ this.OnSearchFieldChange = function(evt)
+ {
+ if (this.keyTimeout) // kill running timer
+ {
+ clearTimeout(this.keyTimeout);
+ this.keyTimeout = 0;
+ }
+
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 || e.keyCode==13)
+ {
+ if (e.shiftKey==1)
+ {
+ this.OnSearchSelectShow();
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ child.focus();
+ return;
+ }
+ }
+ return;
+ }
+ else if (window.frames.MSearchResults.searchResults)
+ {
+ var elem = window.frames.MSearchResults.searchResults.NavNext(0);
+ if (elem) elem.focus();
+ }
+ }
+ else if (e.keyCode==27) // Escape out of the search field
+ {
+ this.DOMSearchField().blur();
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ this.Activate(false);
+ return;
+ }
+
+ // strip whitespaces
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+ if (searchValue != this.lastSearchValue) // search value has changed
+ {
+ if (searchValue != "") // non-empty search
+ {
+ // set timer for search update
+ this.keyTimeout = setTimeout(this.name + '.Search()',
+ this.keyTimeoutLength);
+ }
+ else // empty search field
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ }
+ }
+ }
+
+ this.SelectItemCount = function(id)
+ {
+ var count=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ count++;
+ }
+ }
+ return count;
+ }
+
+ this.SelectItemSet = function(id)
+ {
+ var i,j=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ var node = child.firstChild;
+ if (j==id)
+ {
+ node.innerHTML='&#8226;';
+ }
+ else
+ {
+ node.innerHTML='&#160;';
+ }
+ j++;
+ }
+ }
+ }
+
+ // Called when an search filter selection is made.
+ // set item with index id as the active item
+ this.OnSelectItem = function(id)
+ {
+ this.searchIndex = id;
+ this.SelectItemSet(id);
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+ if (searchValue!="" && this.searchActive) // something was found -> do a search
+ {
+ this.Search();
+ }
+ }
+
+ this.OnSearchSelectKey = function(evt)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
+ {
+ this.searchIndex++;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==38 && this.searchIndex>0) // Up
+ {
+ this.searchIndex--;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==13 || e.keyCode==27)
+ {
+ this.OnSelectItem(this.searchIndex);
+ this.CloseSelectionWindow();
+ this.DOMSearchField().focus();
+ }
+ return false;
+ }
+
+ // --------- Actions
+
+ // Closes the results window.
+ this.CloseResultsWindow = function()
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.Activate(false);
+ }
+
+ this.CloseSelectionWindow = function()
+ {
+ this.DOMSearchSelectWindow().style.display = 'none';
+ }
+
+ // Performs a search.
+ this.Search = function()
+ {
+ this.keyTimeout = 0;
+
+ // strip leading whitespace
+ var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+ var code = searchValue.toLowerCase().charCodeAt(0);
+ var idxChar = searchValue.substr(0, 1).toLowerCase();
+ if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
+ {
+ idxChar = searchValue.substr(0, 2);
+ }
+
+ var resultsPage;
+ var resultsPageWithSearch;
+ var hasResultsPage;
+
+ var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+ if (idx!=-1)
+ {
+ var hexCode=idx.toString(16);
+ resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
+ resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
+ hasResultsPage = true;
+ }
+ else // nothing available for this search term
+ {
+ resultsPage = this.resultsPath + '/nomatches.html';
+ resultsPageWithSearch = resultsPage;
+ hasResultsPage = false;
+ }
+
+ window.frames.MSearchResults.location = resultsPageWithSearch;
+ var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+
+ if (domPopupSearchResultsWindow.style.display!='block')
+ {
+ var domSearchBox = this.DOMSearchBox();
+ this.DOMSearchClose().style.display = 'inline';
+ if (this.insideFrame)
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ domPopupSearchResultsWindow.style.position = 'relative';
+ domPopupSearchResultsWindow.style.display = 'block';
+ var width = document.body.clientWidth - 8; // the -8 is for IE :-(
+ domPopupSearchResultsWindow.style.width = width + 'px';
+ domPopupSearchResults.style.width = width + 'px';
+ }
+ else
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
+ var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
+ domPopupSearchResultsWindow.style.display = 'block';
+ left -= domPopupSearchResults.offsetWidth;
+ domPopupSearchResultsWindow.style.top = top + 'px';
+ domPopupSearchResultsWindow.style.left = left + 'px';
+ }
+ }
+
+ this.lastSearchValue = searchValue;
+ this.lastResultsPage = resultsPage;
+ }
+
+ // -------- Activation Functions
+
+ // Activates or deactivates the search panel, resetting things to
+ // their default values if necessary.
+ this.Activate = function(isActive)
+ {
+ if (isActive || // open it
+ this.DOMPopupSearchResultsWindow().style.display == 'block'
+ )
+ {
+ this.DOMSearchBox().className = 'MSearchBoxActive';
+
+ var searchField = this.DOMSearchField();
+
+ if (searchField.value == this.searchLabel) // clear "Search" term upon entry
+ {
+ searchField.value = '';
+ this.searchActive = true;
+ }
+ }
+ else if (!isActive) // directly remove the panel
+ {
+ this.DOMSearchBox().className = 'MSearchBoxInactive';
+ this.DOMSearchField().value = this.searchLabel;
+ this.searchActive = false;
+ this.lastSearchValue = ''
+ this.lastResultsPage = '';
+ }
+ }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults(name)
+{
+ // The number of matches from the last run of <Search()>.
+ this.lastMatchCount = 0;
+ this.lastKey = 0;
+ this.repeatOn = false;
+
+ // Toggles the visibility of the passed element ID.
+ this.FindChildElement = function(id)
+ {
+ var parentElement = document.getElementById(id);
+ var element = parentElement.firstChild;
+
+ while (element && element!=parentElement)
+ {
+ if (element.nodeName == 'DIV' && element.className == 'SRChildren')
+ {
+ return element;
+ }
+
+ if (element.nodeName == 'DIV' && element.hasChildNodes())
+ {
+ element = element.firstChild;
+ }
+ else if (element.nextSibling)
+ {
+ element = element.nextSibling;
+ }
+ else
+ {
+ do
+ {
+ element = element.parentNode;
+ }
+ while (element && element!=parentElement && !element.nextSibling);
+
+ if (element && element!=parentElement)
+ {
+ element = element.nextSibling;
+ }
+ }
+ }
+ }
+
+ this.Toggle = function(id)
+ {
+ var element = this.FindChildElement(id);
+ if (element)
+ {
+ if (element.style.display == 'block')
+ {
+ element.style.display = 'none';
+ }
+ else
+ {
+ element.style.display = 'block';
+ }
+ }
+ }
+
+ // Searches for the passed string. If there is no parameter,
+ // it takes it from the URL query.
+ //
+ // Always returns true, since other documents may try to call it
+ // and that may or may not be possible.
+ this.Search = function(search)
+ {
+ if (!search) // get search word from URL
+ {
+ search = window.location.search;
+ search = search.substring(1); // Remove the leading '?'
+ search = unescape(search);
+ }
+
+ search = search.replace(/^ +/, ""); // strip leading spaces
+ search = search.replace(/ +$/, ""); // strip trailing spaces
+ search = search.toLowerCase();
+ search = convertToId(search);
+
+ var resultRows = document.getElementsByTagName("div");
+ var matches = 0;
+
+ var i = 0;
+ while (i < resultRows.length)
+ {
+ var row = resultRows.item(i);
+ if (row.className == "SRResult")
+ {
+ var rowMatchName = row.id.toLowerCase();
+ rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+ if (search.length<=rowMatchName.length &&
+ rowMatchName.substr(0, search.length)==search)
+ {
+ row.style.display = 'block';
+ matches++;
+ }
+ else
+ {
+ row.style.display = 'none';
+ }
+ }
+ i++;
+ }
+ document.getElementById("Searching").style.display='none';
+ if (matches == 0) // no results
+ {
+ document.getElementById("NoMatches").style.display='block';
+ }
+ else // at least one result
+ {
+ document.getElementById("NoMatches").style.display='none';
+ }
+ this.lastMatchCount = matches;
+ return true;
+ }
+
+ // return the first item with index index or higher that is visible
+ this.NavNext = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index++;
+ }
+ return focusItem;
+ }
+
+ this.NavPrev = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index--;
+ }
+ return focusItem;
+ }
+
+ this.ProcessKeys = function(e)
+ {
+ if (e.type == "keydown")
+ {
+ this.repeatOn = false;
+ this.lastKey = e.keyCode;
+ }
+ else if (e.type == "keypress")
+ {
+ if (!this.repeatOn)
+ {
+ if (this.lastKey) this.repeatOn = true;
+ return false; // ignore first keypress after keydown
+ }
+ }
+ else if (e.type == "keyup")
+ {
+ this.lastKey = 0;
+ this.repeatOn = false;
+ }
+ return this.lastKey!=0;
+ }
+
+ this.Nav = function(evt,itemIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ var newIndex = itemIndex-1;
+ var focusItem = this.NavPrev(newIndex);
+ if (focusItem)
+ {
+ var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+ if (child && child.style.display == 'block') // children visible
+ {
+ var n=0;
+ var tmpElem;
+ while (1) // search for last child
+ {
+ tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+ if (tmpElem)
+ {
+ focusItem = tmpElem;
+ }
+ else // found it!
+ {
+ break;
+ }
+ n++;
+ }
+ }
+ }
+ if (focusItem)
+ {
+ focusItem.focus();
+ }
+ else // return focus to search field
+ {
+ parent.document.getElementById("MSearchField").focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = itemIndex+1;
+ var focusItem;
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem && elem.style.display == 'block') // children visible
+ {
+ focusItem = document.getElementById('Item'+itemIndex+'_c0');
+ }
+ if (!focusItem) focusItem = this.NavNext(newIndex);
+ if (focusItem) focusItem.focus();
+ }
+ else if (this.lastKey==39) // Right
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'block';
+ }
+ else if (this.lastKey==37) // Left
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'none';
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+
+ this.NavChild = function(evt,itemIndex,childIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ if (childIndex>0)
+ {
+ var newIndex = childIndex-1;
+ document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+ }
+ else // already at first child, jump to parent
+ {
+ document.getElementById('Item'+itemIndex).focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = childIndex+1;
+ var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+ if (!elem) // last child, jump to parent next parent
+ {
+ elem = this.NavNext(itemIndex+1);
+ }
+ if (elem)
+ {
+ elem.focus();
+ }
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+}
+
+function setKeyActions(elem,action)
+{
+ elem.setAttribute('onkeydown',action);
+ elem.setAttribute('onkeypress',action);
+ elem.setAttribute('onkeyup',action);
+}
+
+function setClassAttr(elem,attr)
+{
+ elem.setAttribute('class',attr);
+ elem.setAttribute('className',attr);
+}
+
+function createResults()
+{
+ var results = document.getElementById("SRResults");
+ for (var e=0; e<searchData.length; e++)
+ {
+ var id = searchData[e][0];
+ var srResult = document.createElement('div');
+ srResult.setAttribute('id','SR_'+id);
+ setClassAttr(srResult,'SRResult');
+ var srEntry = document.createElement('div');
+ setClassAttr(srEntry,'SREntry');
+ var srLink = document.createElement('a');
+ srLink.setAttribute('id','Item'+e);
+ setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+ setClassAttr(srLink,'SRSymbol');
+ srLink.innerHTML = searchData[e][1][0];
+ srEntry.appendChild(srLink);
+ if (searchData[e][1].length==2) // single result
+ {
+ srLink.setAttribute('href',searchData[e][1][1][0]);
+ if (searchData[e][1][1][1])
+ {
+ srLink.setAttribute('target','_parent');
+ }
+ var srScope = document.createElement('span');
+ setClassAttr(srScope,'SRScope');
+ srScope.innerHTML = searchData[e][1][1][2];
+ srEntry.appendChild(srScope);
+ }
+ else // multiple results
+ {
+ srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+ var srChildren = document.createElement('div');
+ setClassAttr(srChildren,'SRChildren');
+ for (var c=0; c<searchData[e][1].length-1; c++)
+ {
+ var srChild = document.createElement('a');
+ srChild.setAttribute('id','Item'+e+'_c'+c);
+ setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+ setClassAttr(srChild,'SRScope');
+ srChild.setAttribute('href',searchData[e][1][c+1][0]);
+ if (searchData[e][1][c+1][1])
+ {
+ srChild.setAttribute('target','_parent');
+ }
+ srChild.innerHTML = searchData[e][1][c+1][2];
+ srChildren.appendChild(srChild);
+ }
+ srEntry.appendChild(srChildren);
+ }
+ srResult.appendChild(srEntry);
+ results.appendChild(srResult);
+ }
+}
+
+function init_search()
+{
+ var results = document.getElementById("MSearchSelectWindow");
+ for (var key in indexSectionLabels)
+ {
+ var link = document.createElement('a');
+ link.setAttribute('class','SelectItem');
+ link.setAttribute('onclick','searchBox.OnSelectItem('+key+')');
+ link.href='javascript:void(0)';
+ link.innerHTML='<span class="SelectionMark">&#160;</span>'+indexSectionLabels[key];
+ results.appendChild(link);
+ }
+ searchBox.OnSelectItem(0);
+}
+
diff --git a/docs/search/search_l.png b/docs/search/search_l.png
new file mode 100644
index 000000000..c872f4da4
--- /dev/null
+++ b/docs/search/search_l.png
Binary files differ
diff --git a/docs/search/search_m.png b/docs/search/search_m.png
new file mode 100644
index 000000000..b429a16ba
--- /dev/null
+++ b/docs/search/search_m.png
Binary files differ
diff --git a/docs/search/search_r.png b/docs/search/search_r.png
new file mode 100644
index 000000000..97ee8b439
--- /dev/null
+++ b/docs/search/search_r.png
Binary files differ
diff --git a/docs/search/searchdata.js b/docs/search/searchdata.js
new file mode 100644
index 000000000..260917bba
--- /dev/null
+++ b/docs/search/searchdata.js
@@ -0,0 +1,39 @@
+var indexSectionsWithContent =
+{
+ 0: "_abcdefghiklmnopqrstuvwxy",
+ 1: "_dlmoprs",
+ 2: "_cdefghiklmnprstuvwx",
+ 3: "_abcdefghiklmnorsuvw",
+ 4: "abcdefghiklmnopqrstuvwxy",
+ 5: "dlpr",
+ 6: "cprw",
+ 7: "cdefglnoprstuvwx",
+ 8: "cdghmpqrstu"
+};
+
+var indexSectionNames =
+{
+ 0: "all",
+ 1: "classes",
+ 2: "files",
+ 3: "functions",
+ 4: "variables",
+ 5: "typedefs",
+ 6: "enums",
+ 7: "enumvalues",
+ 8: "pages"
+};
+
+var indexSectionLabels =
+{
+ 0: "All",
+ 1: "Data Structures",
+ 2: "Files",
+ 3: "Functions",
+ 4: "Variables",
+ 5: "Typedefs",
+ 6: "Enumerations",
+ 7: "Enumerator",
+ 8: "Pages"
+};
+
diff --git a/docs/search/typedefs_0.html b/docs/search/typedefs_0.html
new file mode 100644
index 000000000..05722e1cc
--- /dev/null
+++ b/docs/search/typedefs_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/typedefs_0.js b/docs/search/typedefs_0.js
new file mode 100644
index 000000000..af1fe3c69
--- /dev/null
+++ b/docs/search/typedefs_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['distroinfo',['DistroInfo',['../remmina__utils_8c.html#a1371483cedecdda522244523c1bb96b1',1,'remmina_utils.c']]]
+];
diff --git a/docs/search/typedefs_1.html b/docs/search/typedefs_1.html
new file mode 100644
index 000000000..b77c53383
--- /dev/null
+++ b/docs/search/typedefs_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/typedefs_1.js b/docs/search/typedefs_1.js
new file mode 100644
index 000000000..94c4b109c
--- /dev/null
+++ b/docs/search/typedefs_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['lsbdistroinfo',['LSBDistroInfo',['../remmina__utils_8c.html#a376b0273338fd875054d93b329e85fba',1,'remmina_utils.c']]]
+];
diff --git a/docs/search/typedefs_2.html b/docs/search/typedefs_2.html
new file mode 100644
index 000000000..076311dc5
--- /dev/null
+++ b/docs/search/typedefs_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/typedefs_2.js b/docs/search/typedefs_2.js
new file mode 100644
index 000000000..be4f885df
--- /dev/null
+++ b/docs/search/typedefs_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['pthreadcleanupfunc',['PThreadCleanupFunc',['../remmina__plugin_8h.html#a9e23247b6eabdebd2bec63382738fdee',1,'remmina_plugin.h']]]
+];
diff --git a/docs/search/typedefs_3.html b/docs/search/typedefs_3.html
new file mode 100644
index 000000000..a4a727ff1
--- /dev/null
+++ b/docs/search/typedefs_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/typedefs_3.js b/docs/search/typedefs_3.js
new file mode 100644
index 000000000..6e7b7ceb8
--- /dev/null
+++ b/docs/search/typedefs_3.js
@@ -0,0 +1,105 @@
+var searchData=
+[
+ ['remminaappletmenu',['RemminaAppletMenu',['../remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d',1,'remmina_applet_menu.h']]],
+ ['remminaappletmenuclass',['RemminaAppletMenuClass',['../remmina__applet__menu_8h.html#abde8fc7fbf0c08e5846a55f194fbc04a',1,'remmina_applet_menu.h']]],
+ ['remminaappletmenuitem',['RemminaAppletMenuItem',['../remmina__applet__menu__item_8h.html#afdc0486f706728acf384fc38913b46f3',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenuitemclass',['RemminaAppletMenuItemClass',['../remmina__applet__menu__item_8h.html#a48b162462a893a4a84346c9d8606c0e5',1,'remmina_applet_menu_item.h']]],
+ ['remminaappletmenupriv',['RemminaAppletMenuPriv',['../remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423',1,'remmina_applet_menu.h']]],
+ ['remminaavahi',['RemminaAvahi',['../remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663',1,'remmina_avahi.h']]],
+ ['remminaavahipriv',['RemminaAvahiPriv',['../remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba',1,'remmina_avahi.h']]],
+ ['remminacellrendererpixbuf',['RemminaCellRendererPixbuf',['../remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30',1,'remmina_ftp_client.c']]],
+ ['remminacellrendererpixbufclass',['RemminaCellRendererPixbufClass',['../remmina__ftp__client_8c.html#a6f2b57c1b126925a5ff6c6ae037e9e6c',1,'remmina_ftp_client.c']]],
+ ['remminachatwindow',['RemminaChatWindow',['../remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446',1,'remmina_chat_window.h']]],
+ ['remminachatwindowclass',['RemminaChatWindowClass',['../remmina__chat__window_8h.html#ad80f333f09507226276104e015267fb4',1,'remmina_chat_window.h']]],
+ ['remminacolorpref',['RemminaColorPref',['../remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970',1,'remmina_pref.h']]],
+ ['remminaconnectionobject',['RemminaConnectionObject',['../rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517',1,'RemminaConnectionObject():&#160;rcw.c'],['../rcw_8h.html#a4c54d77416105f6b094796316f5360a2',1,'RemminaConnectionObject():&#160;rcw.h']]],
+ ['remminaconnectionwindow',['RemminaConnectionWindow',['../rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7',1,'rcw.h']]],
+ ['remminaconnectionwindowclass',['RemminaConnectionWindowClass',['../rcw_8h.html#a188e61c274e65626077c95e5f426c296',1,'rcw.h']]],
+ ['remminaconnectionwindowpriv',['RemminaConnectionWindowPriv',['../rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec',1,'rcw.h']]],
+ ['remminaentryplugin',['RemminaEntryPlugin',['../plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb',1,'plugin.h']]],
+ ['remminafile',['RemminaFile',['../types_8h.html#a112d7cc6c755209cabb68cf2a62ad515',1,'types.h']]],
+ ['remminafileeditor',['RemminaFileEditor',['../remmina__file__editor_8h.html#a16a58b48a99ec5a073a5fc6f5b0d9498',1,'remmina_file_editor.h']]],
+ ['remminafileeditorclass',['RemminaFileEditorClass',['../remmina__file__editor_8h.html#ad2662b100a2d321db52fc1280c899208',1,'remmina_file_editor.h']]],
+ ['remminafileeditorpriv',['RemminaFileEditorPriv',['../remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530',1,'remmina_file_editor.h']]],
+ ['remminafileplugin',['RemminaFilePlugin',['../plugin_8h.html#a0af573c4b030a452ba1635025a5b7b2e',1,'plugin.h']]],
+ ['remminaftpclient',['RemminaFTPClient',['../remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4',1,'remmina_ftp_client.h']]],
+ ['remminaftpclientclass',['RemminaFTPClientClass',['../remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069',1,'remmina_ftp_client.h']]],
+ ['remminaftpclientpriv',['RemminaFTPClientPriv',['../remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a',1,'remmina_ftp_client.h']]],
+ ['remminaftptask',['RemminaFTPTask',['../remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b',1,'remmina_ftp_client.h']]],
+ ['remminagroupdata',['RemminaGroupData',['../remmina__file__manager_8h.html#a0155f52ba9a28e2aa0ea5d831f5d2c90',1,'remmina_file_manager.h']]],
+ ['remminahostkeyfunc',['RemminaHostkeyFunc',['../remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390',1,'remmina_protocol_widget.h']]],
+ ['remminaicon',['RemminaIcon',['../remmina__icon_8c.html#a7d506eafc267175d941402f28744d2d5',1,'remmina_icon.c']]],
+ ['remminakeychooserarguments',['RemminaKeyChooserArguments',['../remmina__key__chooser_8h.html#a4379a1e87bdb9d8b4c1f67c0bb9c4e27',1,'remmina_key_chooser.h']]],
+ ['remminakeyval',['RemminaKeyVal',['../vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e',1,'vnc_plugin.c']]],
+ ['remminalogwindow',['RemminaLogWindow',['../remmina__log_8c.html#ad5a920aad512279bb932bcb26a2c3c19',1,'remmina_log.c']]],
+ ['remminalogwindowclass',['RemminaLogWindowClass',['../remmina__log_8c.html#a5682db89dd84e1c413326e17a4f79dbe',1,'remmina_log.c']]],
+ ['remminamain',['RemminaMain',['../remmina__main_8h.html#ad17d9a48f2b3f84e17baa91104bc6cb1',1,'remmina_main.h']]],
+ ['remminamainpriv',['RemminaMainPriv',['../remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052',1,'remmina_main.h']]],
+ ['remminamessagepanelcallback',['RemminaMessagePanelCallback',['../remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a',1,'remmina_message_panel.h']]],
+ ['remminamtexecdata',['RemminaMTExecData',['../remmina__masterthread__exec_8h.html#a6ac3d74eb524ac9fb0ff7eef0cb1450e',1,'remmina_masterthread_exec.h']]],
+ ['remminanewsdialog',['RemminaNewsDialog',['../rmnews_8h.html#a408794dbcf4d1034bab0bd0e64fa4709',1,'rmnews.h']]],
+ ['remminanxlogcallback',['RemminaNXLogCallback',['../nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8',1,'nx_session.h']]],
+ ['remminanxpassphrasecallback',['RemminaNXPassphraseCallback',['../nx__session_8h.html#ab69a075e55bbed5a8104a6c319e9a20c',1,'nx_session.h']]],
+ ['remminanxsession',['RemminaNXSession',['../nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff',1,'nx_session.h']]],
+ ['remminaplugin',['RemminaPlugin',['../plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22',1,'plugin.h']]],
+ ['remminaplugindata',['RemminaPluginData',['../st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4',1,'st_plugin.c']]],
+ ['remminapluginentryfunc',['RemminaPluginEntryFunc',['../plugin_8h.html#a59fee7dbde41c8d29059ca64622d1948',1,'plugin.h']]],
+ ['remminapluginexecdata',['RemminaPluginExecData',['../exec__plugin_8c.html#a44fb47f82521cf4e8a802f4042f6edb8',1,'exec_plugin.c']]],
+ ['remminapluginnxdata',['RemminaPluginNxData',['../nx__plugin_8h.html#a2a03ded9a85fd59c27de3053a7cae122',1,'nx_plugin.h']]],
+ ['remminapluginrdpevent',['RemminaPluginRdpEvent',['../rdp__plugin_8h.html#acb304fe0971bc867e3e06cdb96ad3336',1,'rdp_plugin.h']]],
+ ['remminapluginrdpkeymapentry',['RemminaPluginRdpKeymapEntry',['../rdp__plugin_8h.html#a71f1193d9e0f1ed5e97fa6ac39671267',1,'rdp_plugin.h']]],
+ ['remminapluginrdpsetgrid',['RemminaPluginRdpsetGrid',['../rdp__settings_8c.html#afb0bb9a09b27c474802a18b351f1ed4b',1,'rdp_settings.c']]],
+ ['remminapluginrdpsetgridclass',['RemminaPluginRdpsetGridClass',['../rdp__settings_8c.html#a5f02af8e46a0a8766481466400a31ea4',1,'rdp_settings.c']]],
+ ['remminapluginrdpuiobject',['RemminaPluginRdpUiObject',['../rdp__plugin_8h.html#a4a152858aa9c471fcd0b35cfa442a1f1',1,'rdp_plugin.h']]],
+ ['remminapluginscreenshotdata',['RemminaPluginScreenshotData',['../types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1',1,'types.h']]],
+ ['remminapluginservice',['RemminaPluginService',['../plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff',1,'plugin.h']]],
+ ['remminapluginsftpdata',['RemminaPluginSftpData',['../remmina__sftp__plugin_8c.html#a74773791c4dac6cfda77f16a905699e2',1,'remmina_sftp_plugin.c']]],
+ ['remminapluginspicedata',['RemminaPluginSpiceData',['../spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368',1,'spice_plugin.h']]],
+ ['remminapluginspicexferwidgets',['RemminaPluginSpiceXferWidgets',['../spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02',1,'spice_plugin_file_transfer.c']]],
+ ['remminapluginsshdata',['RemminaPluginSshData',['../remmina__ssh__plugin_8c.html#a896596354d8afa9e7f55caa369450de7',1,'remmina_ssh_plugin.c']]],
+ ['remminapluginvnccoordinates',['RemminaPluginVncCoordinates',['../vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18',1,'vnc_plugin.h']]],
+ ['remminapluginvnccuttextparam',['RemminaPluginVncCuttextParam',['../vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307',1,'vnc_plugin.c']]],
+ ['remminapluginvncdata',['RemminaPluginVncData',['../vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9',1,'vnc_plugin.h']]],
+ ['remminapluginvncevent',['RemminaPluginVncEvent',['../vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18',1,'vnc_plugin.h']]],
+ ['remminapluginwwwdata',['RemminaPluginWWWData',['../www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9',1,'www_plugin.c']]],
+ ['remminapluginxdmcpdata',['RemminaPluginXdmcpData',['../xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe',1,'xdmcp_plugin.c']]],
+ ['remminapref',['RemminaPref',['../remmina__pref_8h.html#a4e34cf29f6a4bff2d79cf621b5370c3b',1,'remmina_pref.h']]],
+ ['remminaprefdialog',['RemminaPrefDialog',['../remmina__pref__dialog_8h.html#a5318669e14d555b8bd2adc81a54d97b7',1,'remmina_pref_dialog.h']]],
+ ['remminaprefdialogpriv',['RemminaPrefDialogPriv',['../remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2',1,'remmina_pref_dialog.h']]],
+ ['remminaprefplugin',['RemminaPrefPlugin',['../plugin_8h.html#a8ffdd703265254b90f9a609795b427cc',1,'plugin.h']]],
+ ['remminaprotocolfeature',['RemminaProtocolFeature',['../types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74',1,'types.h']]],
+ ['remminaprotocolplugin',['RemminaProtocolPlugin',['../plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd',1,'plugin.h']]],
+ ['remminaprotocolsetting',['RemminaProtocolSetting',['../types_8h.html#a41c04d02e6a15ad17be8065453cc4933',1,'types.h']]],
+ ['remminaprotocolsettingopt',['RemminaProtocolSettingOpt',['../remmina__ssh__plugin_8h.html#ace3febdfaa8e21a4c6a6108b4c54b5ec',1,'remmina_ssh_plugin.h']]],
+ ['remminaprotocolwidget',['RemminaProtocolWidget',['../types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4',1,'types.h']]],
+ ['remminaprotocolwidgetclass',['RemminaProtocolWidgetClass',['../types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8',1,'types.h']]],
+ ['remminaprotocolwidgetpriv',['RemminaProtocolWidgetPriv',['../remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19',1,'remmina_protocol_widget.h']]],
+ ['remminaprotocolwidgetsignaldata',['RemminaProtocolWidgetSignalData',['../remmina__protocol__widget_8c.html#a91d88c61dd84299369fe3c79e19821b1',1,'remmina_protocol_widget.c']]],
+ ['remminascrolledviewport',['RemminaScrolledViewport',['../remmina__scrolled__viewport_8h.html#a6780b29de78ebf1320efd4726a48080f',1,'remmina_scrolled_viewport.h']]],
+ ['remminascrolledviewportclass',['RemminaScrolledViewportClass',['../remmina__scrolled__viewport_8h.html#a9b7419b88e9d80b9b28effc5ddbbf036',1,'remmina_scrolled_viewport.h']]],
+ ['remminasecretplugin',['RemminaSecretPlugin',['../plugin_8h.html#aec59d37943e501da2d7107c933865782',1,'plugin.h']]],
+ ['remminasftp',['RemminaSFTP',['../remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca',1,'remmina_ssh.h']]],
+ ['remminasftpclient',['RemminaSFTPClient',['../remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6',1,'remmina_sftp_client.h']]],
+ ['remminasftpclientclass',['RemminaSFTPClientClass',['../remmina__sftp__client_8h.html#ac88f745b57a5e415ce3f8bf7c7a32492',1,'remmina_sftp_client.h']]],
+ ['remminassh',['RemminaSSH',['../remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc',1,'remmina_ssh.h']]],
+ ['remminasshexitfunc',['RemminaSSHExitFunc',['../remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01',1,'remmina_ssh.h']]],
+ ['remminasshshell',['RemminaSSHShell',['../remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d',1,'remmina_ssh.h']]],
+ ['remminasshtunnel',['RemminaSSHTunnel',['../remmina__ssh_8h.html#a3f84b047e47b96a0475ac9e9fa60b286',1,'remmina_ssh.h']]],
+ ['remminasshtunnelbuffer',['RemminaSSHTunnelBuffer',['../remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0',1,'remmina_ssh.h']]],
+ ['remminasshtunnelcallback',['RemminaSSHTunnelCallback',['../remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924',1,'remmina_ssh.h']]],
+ ['remminastringlist',['RemminaStringList',['../remmina__string__list_8h.html#a90a2f1348a10e51eae08253e04fd3001',1,'remmina_string_list.h']]],
+ ['remminastringlistpriv',['RemminaStringListPriv',['../remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349',1,'remmina_string_list.h']]],
+ ['remminastringlistvalidationfunc',['RemminaStringListValidationFunc',['../remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb',1,'remmina_string_list.h']]],
+ ['remminatoolplugin',['RemminaToolPlugin',['../plugin_8h.html#a144360664546fcbf4d5aa0457c395f25',1,'plugin.h']]],
+ ['remminatpchannelhandler',['RemminaTpChannelHandler',['../telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84',1,'telepathy_channel_handler.c']]],
+ ['remminatphandler',['RemminaTpHandler',['../telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0',1,'telepathy_handler.h']]],
+ ['remminatphandlerclass',['RemminaTpHandlerClass',['../telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924',1,'telepathy_handler.h']]],
+ ['remminatunnelinitfunc',['RemminaTunnelInitFunc',['../types_8h.html#a1ace68e95e55a30fcf8b991f52332501',1,'types.h']]],
+ ['remminaunlockdialog',['RemminaUnlockDialog',['../remmina__unlock_8h.html#a5d12cce4143b484b0458ff2f81b72720',1,'remmina_unlock.h']]],
+ ['remminaxporttunnelinitfunc',['RemminaXPortTunnelInitFunc',['../types_8h.html#afae2f546eaf9ef8a816a804e830055bf',1,'types.h']]],
+ ['rfbitmap',['rfBitmap',['../rdp__plugin_8h.html#ae9d29fafd5e843f13a94101b67c41b94',1,'rdp_plugin.h']]],
+ ['rfclipboard',['rfClipboard',['../rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea',1,'rdp_plugin.h']]],
+ ['rfcontext',['rfContext',['../rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16',1,'rdp_plugin.h']]],
+ ['rfglyph',['rfGlyph',['../rdp__plugin_8h.html#a8a5bd2872aa895f3a76fa35caf77982a',1,'rdp_plugin.h']]],
+ ['rfpointer',['rfPointer',['../rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf',1,'rdp_plugin.h']]]
+];
diff --git a/docs/search/variables_0.html b/docs/search/variables_0.html
new file mode 100644
index 000000000..74ce80724
--- /dev/null
+++ b/docs/search/variables_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_0.js b/docs/search/variables_0.js
new file mode 100644
index 000000000..d3691ab6e
--- /dev/null
+++ b/docs/search/variables_0.js
@@ -0,0 +1,28 @@
+var searchData=
+[
+ ['accelgroup_5fshortcuts',['accelgroup_shortcuts',['../struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549',1,'_RemminaMain']]],
+ ['account',['account',['../struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8',1,'_RemminaTpChannelHandler']]],
+ ['action_5fview_5fmode_5flist',['action_view_mode_list',['../struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19',1,'_RemminaMain']]],
+ ['action_5fview_5fmode_5ftree',['action_view_mode_tree',['../struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c',1,'_RemminaMain']]],
+ ['action_5fview_5fquick_5fconnect',['action_view_quick_connect',['../struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f',1,'_RemminaMain']]],
+ ['activate',['activate',['../struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1',1,'_RemminaCellRendererPixbufClass']]],
+ ['advanced_5fsettings',['advanced_settings',['../struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db',1,'_RemminaProtocolPlugin']]],
+ ['alias',['alias',['../struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334',1,'_RemminaTpChannelHandler']]],
+ ['allow_5fstart',['allow_start',['../struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82',1,'_RemminaNXSession']]],
+ ['always_5fshow_5ftab',['always_show_tab',['../struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9',1,'_RemminaPref']]],
+ ['applet_5fenable_5favahi',['applet_enable_avahi',['../struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792',1,'_RemminaPref']]],
+ ['applet_5fhide_5fcount',['applet_hide_count',['../struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd',1,'_RemminaPref']]],
+ ['applet_5fnew_5fontop',['applet_new_ontop',['../struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568',1,'_RemminaPref']]],
+ ['aspectframe',['aspectframe',['../struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae',1,'_RemminaConnectionObject']]],
+ ['attach_5fsession',['attach_session',['../struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54',1,'_RemminaPluginNxData']]],
+ ['attempt_5finteractive_5fauthentication',['attempt_interactive_authentication',['../structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3',1,'rf_context']]],
+ ['audio',['audio',['../struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02',1,'_RemminaPluginSpiceData']]],
+ ['auth',['auth',['../struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03',1,'_RemminaSSH']]],
+ ['auth_5fcalled',['auth_called',['../struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97',1,'_RemminaPluginVncData']]],
+ ['auth_5ffirst',['auth_first',['../struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3',1,'_RemminaPluginVncData']]],
+ ['auth_5fmessage_5fpanel',['auth_message_panel',['../struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b',1,'_RemminaProtocolWidgetPriv']]],
+ ['authenticated',['authenticated',['../struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d',1,'_RemminaSSH::authenticated()'],['../struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd',1,'_RemminaPluginWWWData::authenticated()']]],
+ ['auto_5fscroll_5fstep',['auto_scroll_step',['../struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c',1,'_RemminaPref']]],
+ ['autostart_5ffile',['autostart_file',['../struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca',1,'_RemminaIcon']]],
+ ['avahi',['avahi',['../struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2',1,'_RemminaIcon']]]
+];
diff --git a/docs/search/variables_1.html b/docs/search/variables_1.html
new file mode 100644
index 000000000..84237b6e7
--- /dev/null
+++ b/docs/search/variables_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_1.js b/docs/search/variables_1.js
new file mode 100644
index 000000000..59bf3e517
--- /dev/null
+++ b/docs/search/variables_1.js
@@ -0,0 +1,48 @@
+var searchData=
+[
+ ['background',['background',['../struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49',1,'_RemminaColorPref']]],
+ ['basic_5fsettings',['basic_settings',['../struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d',1,'_RemminaProtocolPlugin']]],
+ ['bindlocalhost',['bindlocalhost',['../struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b',1,'_RemminaSSHTunnel']]],
+ ['bitmap',['bitmap',['../structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507',1,'rf_bitmap::bitmap()'],['../structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1',1,'remmina_plugin_rdp_ui_object::bitmap()']]],
+ ['bitsperpixel',['bitsPerPixel',['../struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d',1,'_RemminaPluginScreenshotData']]],
+ ['box',['box',['../struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db',1,'_RemminaPluginWWWData']]],
+ ['box_5fquick_5fconnect',['box_quick_connect',['../struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95',1,'_RemminaMain']]],
+ ['bpp',['bpp',['../structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b',1,'rf_context']]],
+ ['btn_5fresponse_5fkey',['btn_response_key',['../remmina__message__panel_8c.html#ac93f8305d443470b429d0bf723e30953',1,'remmina_message_panel.c']]],
+ ['btndochange',['btnDoChange',['../structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2',1,'mpchanger_params']]],
+ ['buffer',['buffer',['../struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c',1,'_RemminaPluginScreenshotData::buffer()'],['../struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047',1,'_RemminaSSHTunnel::buffer()']]],
+ ['buffer_5flen',['buffer_len',['../struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb',1,'_RemminaSSHTunnel']]],
+ ['buffer_5fmutex',['buffer_mutex',['../struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89',1,'_RemminaPluginVncData']]],
+ ['builder',['builder',['../struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1',1,'_RemminaMain::builder()'],['../struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876',1,'_RemminaPrefDialog::builder()'],['../struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd',1,'_RemminaStringList::builder()'],['../struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b',1,'_RemminaUnlockDialog::builder()'],['../struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015',1,'_RemminaNewsDialog::builder()']]],
+ ['bus',['bus',['../struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3',1,'_RemminaTpChannelHandler']]],
+ ['button_5fadd',['button_add',['../struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4',1,'_RemminaStringList']]],
+ ['button_5fcancel',['button_cancel',['../struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e',1,'PCon_Spinner']]],
+ ['button_5fdown',['button_down',['../struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1',1,'_RemminaStringList']]],
+ ['button_5fkeyboard_5fauto_5ffit',['button_keyboard_auto_fit',['../struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fcopy',['button_keyboard_copy',['../struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fdisconnect',['button_keyboard_disconnect',['../struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5ffullscreen',['button_keyboard_fullscreen',['../struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fgrab_5fkeyboard',['button_keyboard_grab_keyboard',['../struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fhost_5fkey',['button_keyboard_host_key',['../struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fminimize',['button_keyboard_minimize',['../struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fpaste',['button_keyboard_paste',['../struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fscaled',['button_keyboard_scaled',['../struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fscreenshot',['button_keyboard_screenshot',['../struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fselect_5fall',['button_keyboard_select_all',['../struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fswitch_5ftab_5fleft',['button_keyboard_switch_tab_left',['../struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fswitch_5ftab_5fright',['button_keyboard_switch_tab_right',['../struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5ftoolbar',['button_keyboard_toolbar',['../struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5',1,'_RemminaPrefDialog']]],
+ ['button_5fkeyboard_5fviewonly',['button_keyboard_viewonly',['../struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327',1,'_RemminaPrefDialog']]],
+ ['button_5fmake_5fdefault',['button_make_default',['../struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21',1,'_RemminaMain']]],
+ ['button_5fmask',['button_mask',['../struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c',1,'_RemminaPluginVncData::button_mask()'],['../struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32',1,'_RemminaPluginVncEvent::button_mask()']]],
+ ['button_5fnew',['button_new',['../struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e',1,'_RemminaMain']]],
+ ['button_5foptions_5frecent_5fitems_5fclear',['button_options_recent_items_clear',['../struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6',1,'_RemminaPrefDialog']]],
+ ['button_5foptions_5fresolutions',['button_options_resolutions',['../struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903',1,'_RemminaPrefDialog']]],
+ ['button_5fquick_5fconnect',['button_quick_connect',['../struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774',1,'_RemminaMain']]],
+ ['button_5fremove',['button_remove',['../struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500',1,'_RemminaStringList']]],
+ ['button_5fterm_5fcs',['button_term_cs',['../struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6',1,'_RemminaPrefDialog']]],
+ ['button_5funlock',['button_unlock',['../struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d',1,'_RemminaUnlockDialog']]],
+ ['button_5funlock_5fcancel',['button_unlock_cancel',['../struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44',1,'_RemminaUnlockDialog']]],
+ ['button_5fup',['button_up',['../struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65',1,'_RemminaStringList']]],
+ ['bytesperpixel',['bytesPerPixel',['../struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44',1,'_RemminaPluginScreenshotData']]]
+];
diff --git a/docs/search/variables_10.html b/docs/search/variables_10.html
new file mode 100644
index 000000000..548ac843e
--- /dev/null
+++ b/docs/search/variables_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_10.js b/docs/search/variables_10.js
new file mode 100644
index 000000000..d23ad5918
--- /dev/null
+++ b/docs/search/variables_10.js
@@ -0,0 +1,127 @@
+var searchData=
+[
+ ['rcbutton',['rcbutton',['../structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['rcw_5fsignals',['rcw_signals',['../rcw_8c.html#a2ea4e41deacf11e9b9b71e7eac06869e',1,'rcw.c']]],
+ ['rdp_5fkeyboard_5flayout',['rdp_keyboard_layout',['../rdp__settings_8c.html#a526c9f77caff8ae5ba1f00e7c94c7444',1,'rdp_settings.c']]],
+ ['rdpdr_5fdata',['rdpdr_data',['../structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4',1,'rf_context']]],
+ ['rdpgfxchan',['rdpgfxchan',['../structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a',1,'rf_context']]],
+ ['rdpsnd_5foptions',['rdpsnd_options',['../structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f',1,'rf_context']]],
+ ['ready',['ready',['../struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f',1,'_RemminaPluginXdmcpData']]],
+ ['recent_5fmaximum',['recent_maximum',['../struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644',1,'_RemminaPref']]],
+ ['reconnect_5fmaxattempts',['reconnect_maxattempts',['../structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee',1,'rf_context']]],
+ ['reconnect_5fnattempt',['reconnect_nattempt',['../structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413',1,'rf_context']]],
+ ['reg',['reg',['../structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0',1,'remmina_plugin_rdp_ui_object']]],
+ ['register_5fplugin',['register_plugin',['../struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2',1,'_RemminaPluginService']]],
+ ['remmina_5fapplet_5fmenu_5fsignals',['remmina_applet_menu_signals',['../remmina__applet__menu_8c.html#a20b651866ac24047839ee81c714bc596',1,'remmina_applet_menu.c']]],
+ ['remmina_5fchat_5fwindow_5fsignals',['remmina_chat_window_signals',['../remmina__chat__window_8c.html#a49cae8631d5db230a97f9f5f3c66ff87',1,'remmina_chat_window.c']]],
+ ['remmina_5fcolors_5ffile',['remmina_colors_file',['../remmina__pref_8h.html#a94d3cf980275b6e9b0c701972f8b1cce',1,'remmina_pref.h']]],
+ ['remmina_5fdrop_5ftypes',['remmina_drop_types',['../remmina__main_8c.html#a8ccd8303ada6e26880504fc58812fbda',1,'remmina_main.c']]],
+ ['remmina_5ffile',['remmina_file',['../struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c',1,'_RemminaConnectionObject::remmina_file()'],['../struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec',1,'_RemminaProtocolWidgetPriv::remmina_file()']]],
+ ['remmina_5ffile_5fname',['remmina_file_name',['../struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f',1,'_RemminaPref']]],
+ ['remmina_5ffile_5fsecret_5fschema',['remmina_file_secret_schema',['../glibsecret__plugin_8c.html#a4adccd38b5ef09344624c0ba2ac7046f',1,'glibsecret_plugin.c']]],
+ ['remmina_5fftp_5fclient_5fsignals',['remmina_ftp_client_signals',['../remmina__ftp__client_8c.html#a3cb68d802d3c35dff5cee970d3c33bd5',1,'remmina_ftp_client.c']]],
+ ['remmina_5fftp_5fclient_5ftaskid',['remmina_ftp_client_taskid',['../remmina__ftp__client_8c.html#a5a0c3d9452b7b75c3ae49ac7a9851e0a',1,'remmina_ftp_client.c']]],
+ ['remmina_5ficon',['remmina_icon',['../remmina__icon_8c.html#a912ed1addd1481ff94b775aad48731f0',1,'remmina_icon.c']]],
+ ['remmina_5fkbtype',['remmina_kbtype',['../nx__plugin_8c.html#a5e2a04444e5b0f130329705d4a3b8ec0',1,'nx_plugin.c']]],
+ ['remmina_5fkeymap_5ffile',['remmina_keymap_file',['../remmina__pref_8c.html#a10b667eb7a100d6ac8d9544697f22743',1,'remmina_pref.c']]],
+ ['remmina_5fkeymap_5ftable',['remmina_keymap_table',['../remmina__pref_8c.html#ac194a2cb922d4a047b825dc69713cc46',1,'remmina_pref.c']]],
+ ['remmina_5fnx_5finit_5fmutex',['remmina_nx_init_mutex',['../nx__plugin_8c.html#a73d6717ebcde73fb3bedf42f9551adbd',1,'nx_plugin.c']]],
+ ['remmina_5fnx_5fwindow_5fid_5farray',['remmina_nx_window_id_array',['../nx__plugin_8c.html#a808b6bebe5102ad2b80a15224e30ff4f',1,'nx_plugin.c']]],
+ ['remmina_5foptions',['remmina_options',['../remmina_8c.html#a3837fb7dd2ca88b6f7acaecc0d062ac5',1,'remmina.c']]],
+ ['remmina_5fplugin',['remmina_plugin',['../exec__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;exec_plugin.c'],['../st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;st_plugin.c'],['../plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;plugin.c'],['../www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99',1,'remmina_plugin():&#160;www_plugin.c']]],
+ ['remmina_5fplugin_5fexec_5fbasic_5fsettings',['remmina_plugin_exec_basic_settings',['../exec__plugin_8c.html#a89c6ce747f68e963b8c6d21427a352f3',1,'exec_plugin.c']]],
+ ['remmina_5fplugin_5fglibsecret',['remmina_plugin_glibsecret',['../glibsecret__plugin_8c.html#a1b5617378d3f4d61a5150cff19d551dd',1,'glibsecret_plugin.c']]],
+ ['remmina_5fplugin_5fkwallet',['remmina_plugin_kwallet',['../kwallet__plugin__main_8c.html#af31524d2a9ee0747edc915947283b469',1,'kwallet_plugin_main.c']]],
+ ['remmina_5fplugin_5fmanager_5fservice',['remmina_plugin_manager_service',['../remmina__plugin__manager_8c.html#a3996819fdb2c833f3c64c2ad399e5f10',1,'remmina_plugin_manager_service():&#160;remmina_plugin_manager.c'],['../remmina__plugin__manager_8h.html#a3996819fdb2c833f3c64c2ad399e5f10',1,'remmina_plugin_manager_service():&#160;remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fnx',['remmina_plugin_nx',['../nx__plugin_8c.html#a014fb78d715a43890b4d6c720b97a278',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fadvanced_5fsettings',['remmina_plugin_nx_advanced_settings',['../nx__plugin_8c.html#af5037031066cbbf12246587ea27fb508',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fbasic_5fsettings',['remmina_plugin_nx_basic_settings',['../nx__plugin_8c.html#a5a354592d1041bee12f9de4522d446be',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5ffeatures',['remmina_plugin_nx_features',['../nx__plugin_8c.html#a4a6925a5bf78cac68ce04d1fe8293e9f',1,'nx_plugin.c']]],
+ ['remmina_5fplugin_5fnx_5fservice',['remmina_plugin_nx_service',['../nx__plugin_8c.html#af8bb68a7a80a23d5a13203b813ff18bf',1,'remmina_plugin_nx_service():&#160;nx_plugin.c'],['../nx__plugin_8h.html#af8bb68a7a80a23d5a13203b813ff18bf',1,'remmina_plugin_nx_service():&#160;nx_plugin.c']]],
+ ['remmina_5fplugin_5frdp_5fversion',['remmina_plugin_rdp_version',['../rdp__plugin_8c.html#a2986e5b780a080a8a1e2f8d10ece3ac4',1,'rdp_plugin.c']]],
+ ['remmina_5fplugin_5fservice',['remmina_plugin_service',['../remmina__sftp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;remmina_sftp_plugin.c'],['../remmina__ssh__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;remmina_ssh_plugin.c'],['../exec__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;exec_plugin.c'],['../kwallet__plugin__main_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;kwallet_plugin_main.c'],['../rdp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;rdp_plugin.c'],['../rdp__plugin_8h.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;rdp_plugin.c'],['../glibsecret__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;glibsecret_plugin.c'],['../spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;spice_plugin.c'],['../st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;st_plugin.c'],['../plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;plugin.c'],['../vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;vnc_plugin.c'],['../www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;www_plugin.c'],['../xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7',1,'remmina_plugin_service():&#160;xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp',['remmina_plugin_sftp',['../remmina__sftp__plugin_8c.html#a464296b351cd89c358ec77f521c8f7ab',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fsftp_5ffeatures',['remmina_plugin_sftp_features',['../remmina__sftp__plugin_8c.html#a924786df34d61d90471f38dfd37aa855',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fplugin_5fspice',['remmina_plugin_spice',['../spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fadvanced_5fsettings',['remmina_plugin_spice_advanced_settings',['../spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5fbasic_5fsettings',['remmina_plugin_spice_basic_settings',['../spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fspice_5ffeatures',['remmina_plugin_spice_features',['../spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81',1,'spice_plugin.c']]],
+ ['remmina_5fplugin_5fssh',['remmina_plugin_ssh',['../remmina__ssh__plugin_8c.html#a3cab806d9a2a069aa4446c30cbf41599',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fssh_5ffeatures',['remmina_plugin_ssh_features',['../remmina__ssh__plugin_8c.html#aaabfe48db4bcae99b7c2e30d37ff73a0',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fadvanced_5fsettings',['remmina_plugin_st_advanced_settings',['../st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5fst_5fbasic_5fsettings',['remmina_plugin_st_basic_settings',['../st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1',1,'st_plugin.c']]],
+ ['remmina_5fplugin_5ftable',['remmina_plugin_table',['../remmina__plugin__manager_8c.html#a65313d34bb7e940f388e45818fd5889e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5ftelepathy',['remmina_plugin_telepathy',['../telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58',1,'telepathy_plugin.c']]],
+ ['remmina_5fplugin_5ftelepathy_5fservice',['remmina_plugin_telepathy_service',['../telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c'],['../telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c'],['../telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052',1,'remmina_plugin_telepathy_service():&#160;telepathy_plugin.c']]],
+ ['remmina_5fplugin_5fthread',['remmina_plugin_thread',['../structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec',1,'rf_context']]],
+ ['remmina_5fplugin_5ftool_5fbasic_5fsettings',['remmina_plugin_tool_basic_settings',['../plugin_8c.html#a833f9235bae6f4784189b5b825189df6',1,'plugin.c']]],
+ ['remmina_5fplugin_5ftype_5fname',['remmina_plugin_type_name',['../remmina__plugin__manager_8c.html#a719ce18a83ed7ecb3388f179a8590c10',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fplugin_5fvnc',['remmina_plugin_vnc',['../vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fadvanced_5fsettings',['remmina_plugin_vnc_advanced_settings',['../vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fbasic_5fsettings',['remmina_plugin_vnc_basic_settings',['../vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5ffeatures',['remmina_plugin_vnc_features',['../vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnc_5fno_5fencrypt_5fauth_5ftypes',['remmina_plugin_vnc_no_encrypt_auth_types',['../vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnci',['remmina_plugin_vnci',['../vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fvnci_5fbasic_5fsettings',['remmina_plugin_vnci_basic_settings',['../vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57',1,'vnc_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fadvanced_5fsettings',['remmina_plugin_www_advanced_settings',['../www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fwww_5fbasic_5fsettings',['remmina_plugin_www_basic_settings',['../www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb',1,'www_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp',['remmina_plugin_xdmcp',['../xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5fbasic_5fsettings',['remmina_plugin_xdmcp_basic_settings',['../xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d',1,'xdmcp_plugin.c']]],
+ ['remmina_5fplugin_5fxdmcp_5ffeatures',['remmina_plugin_xdmcp_features',['../xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a',1,'xdmcp_plugin.c']]],
+ ['remmina_5fpref',['remmina_pref',['../rcw_8c.html#a29701ae152ba15f6d8921f395174d2df',1,'remmina_pref():&#160;rcw.c'],['../remmina__pref_8h.html#a29701ae152ba15f6d8921f395174d2df',1,'remmina_pref():&#160;rcw.c']]],
+ ['remmina_5fpref_5fdialog',['remmina_pref_dialog',['../remmina__pref__dialog_8c.html#a2e3c32df32107ad3f4b9ea85fc001368',1,'remmina_pref_dialog.c']]],
+ ['remmina_5fpref_5ffile',['remmina_pref_file',['../rcw_8c.html#af657fd4825d16d8d003a8b42fbd0c715',1,'remmina_pref_file():&#160;rcw.c'],['../remmina__pref_8h.html#af657fd4825d16d8d003a8b42fbd0c715',1,'remmina_pref_file():&#160;rcw.c']]],
+ ['remmina_5fprotocol_5fwidget_5fget_5fcurrent_5fscale_5fmode',['remmina_protocol_widget_get_current_scale_mode',['../struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed',1,'_RemminaPluginService']]],
+ ['remmina_5fprotocol_5fwidget_5fsignals',['remmina_protocol_widget_signals',['../remmina__protocol__widget_8c.html#a2c2a41aeee8f3ef6481378a95c02c130',1,'remmina_protocol_widget.c']]],
+ ['remmina_5frdp',['remmina_rdp',['../rdp__plugin_8c.html#a8cad107c77386b752f338d6c7f2b6a0a',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fadvanced_5fsettings',['remmina_rdp_advanced_settings',['../rdp__plugin_8c.html#ad47177412ada547f7cd6cbb9dfcf0f3f',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fbasic_5fsettings',['remmina_rdp_basic_settings',['../rdp__plugin_8c.html#a2b6601868bc70050a57b1025f10225b1',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5ffeatures',['remmina_rdp_features',['../rdp__plugin_8c.html#ac66bd1c0ceb224f7a65f5b712148a43e',1,'rdp_plugin.c']]],
+ ['remmina_5frdp_5fplugin_5fdefault_5fdrive_5fname',['remmina_rdp_plugin_default_drive_name',['../rdp__plugin_8c.html#af3c72bfa3579b1e6cf0fb11566a72f66',1,'rdp_plugin.c']]],
+ ['remmina_5frdpf',['remmina_rdpf',['../rdp__plugin_8c.html#a4d69cf4d703b55b87d1de06493e2a619',1,'rdp_plugin.c']]],
+ ['remmina_5frdps',['remmina_rdps',['../rdp__plugin_8c.html#af43b1397163aab939f9e88ed201d52ba',1,'rdp_plugin.c']]],
+ ['remmina_5frsa_5fpubkey_5fv1',['remmina_RSA_PubKey_v1',['../remmina__stats__sender_8c.html#a53224d477c8323b0f20458c263f46a79',1,'remmina_stats_sender.c']]],
+ ['remmina_5fsecret_5fplugin',['remmina_secret_plugin',['../remmina__plugin__manager_8c.html#a5e79d6abd0b12c1ed2bb33988e41857e',1,'remmina_plugin_manager.c']]],
+ ['remmina_5fsftp_5fbasic_5fsettings',['remmina_sftp_basic_settings',['../remmina__sftp__plugin_8c.html#a999de1dbe291169ccc33dffa123a1315',1,'remmina_sftp_plugin.c']]],
+ ['remmina_5fssh_5fadvanced_5fsettings',['remmina_ssh_advanced_settings',['../remmina__ssh__plugin_8c.html#a51b5159cc5a6833759bc87688221b807',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fssh_5fbasic_5fsettings',['remmina_ssh_basic_settings',['../remmina__ssh__plugin_8c.html#a30ddbf13515b3bdad4e220d75b7912bf',1,'remmina_ssh_plugin.c']]],
+ ['remmina_5fst_5ffeatures',['remmina_st_features',['../st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4',1,'st_plugin.c']]],
+ ['remmina_5ftp_5fhandler',['remmina_tp_handler',['../telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0',1,'telepathy_plugin.c']]],
+ ['remmina_5funlock_5fdialog',['remmina_unlock_dialog',['../remmina__unlock_8c.html#a18d0da78f53c4002601a59e85373f6d7',1,'remmina_unlock.c']]],
+ ['remmina_5fwidget_5fpool',['remmina_widget_pool',['../remmina__widget__pool_8c.html#a904ecc5c259a92edee29d749b3406ac2',1,'remmina_widget_pool.c']]],
+ ['remmina_5fwww_5ffeatures',['remmina_www_features',['../www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8',1,'www_plugin.c']]],
+ ['remminadir',['remminadir',['../remmina__file__manager_8c.html#af83917dac9f2646670733215ba7a3482',1,'remmina_file_manager.c']]],
+ ['remminafile',['remminafile',['../structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9',1,'remmina_masterthread_exec_data']]],
+ ['remminamain',['remminamain',['../remmina__main_8c.html#ab7c680e1f6ffeef21cb928a083d36d89',1,'remmina_main.c']]],
+ ['remminapluginfunc',['RemminaPluginFunc',['../remmina__plugin__manager_8h.html#a68d4ed61b9d039dd06ba4252a8971c18',1,'remmina_plugin_manager.h']]],
+ ['remminastringarray',['RemminaStringArray',['../remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb',1,'remmina_string_array.h']]],
+ ['remminavte',['remminavte',['../remmina__ssh__plugin_8c.html#a666c43eab754dff3be3c80683e9343f1',1,'remmina_ssh_plugin.c']]],
+ ['remminawidgetpoolforeachfunc',['RemminaWidgetPoolForEachFunc',['../remmina__widget__pool_8h.html#a6ced6afec83f47d8ac36b01bff2eb61e',1,'remmina_widget_pool.h']]],
+ ['remotedir',['remotedir',['../struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87',1,'_RemminaFTPTask']]],
+ ['remotedisplay',['remotedisplay',['../struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28',1,'_RemminaSSHTunnel']]],
+ ['renderer',['renderer',['../struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045',1,'_RemminaCellRendererPixbuf']]],
+ ['request',['request',['../struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0',1,'_RemminaPluginWWWData']]],
+ ['requestedformatid',['requestedFormatId',['../structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3',1,'rf_clipboard']]],
+ ['resolutions',['resolutions',['../struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37',1,'_RemminaPref']]],
+ ['resolutions_5flist',['resolutions_list',['../struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05',1,'_RemminaPrefDialogPriv']]],
+ ['response',['response',['../struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7',1,'_RemminaKeyChooserArguments::response()'],['../struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904',1,'MpRunInfo::response()'],['../struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508',1,'_RemminaNXSession::response()']]],
+ ['response_5fcallback',['response_callback',['../structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543',1,'remmina_masterthread_exec_data::response_callback()'],['../struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283',1,'RemminaMessagePanelPrivate::response_callback()']]],
+ ['response_5fcallback_5fdata',['response_callback_data',['../structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658',1,'remmina_masterthread_exec_data::response_callback_data()'],['../struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4',1,'RemminaMessagePanelPrivate::response_callback_data()']]],
+ ['response_5fpos',['response_pos',['../struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3',1,'_RemminaNXSession']]],
+ ['ret_5fmp',['ret_mp',['../structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1',1,'remmina_masterthread_exec_data']]],
+ ['retptr',['retptr',['../structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24',1,'remmina_plugin_rdp_ui_object']]],
+ ['retval',['retval',['../structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15',1,'remmina_masterthread_exec_data::retval()'],['../structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c',1,'remmina_masterthread_exec_data::retval()'],['../structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07',1,'remmina_masterthread_exec_data::retval()'],['../struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235',1,'_RemminaUnlockDialog::retval()'],['../struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813',1,'_RemminaNewsDialog::retval()'],['../structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee',1,'remmina_plugin_rdp_ui_object::retval()']]],
+ ['rfi',['rfi',['../structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68',1,'rf_clipboard']]],
+ ['rfx',['rfx',['../structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7',1,'remmina_plugin_rdp_ui_object']]],
+ ['rfx_5fcontext',['rfx_context',['../structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706',1,'rf_context']]],
+ ['rgb_5fbuffer',['rgb_buffer',['../struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030',1,'_RemminaPluginVncData']]],
+ ['rmnews_5fbutton_5fclose',['rmnews_button_close',['../struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fdefaultcl_5fbutton',['rmnews_defaultcl_button',['../struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fdefaultcl_5flabel',['rmnews_defaultcl_label',['../struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749',1,'_RemminaNewsDialog']]],
+ ['rmnews_5flabel',['rmnews_label',['../struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26',1,'_RemminaNewsDialog']]],
+ ['rmnews_5fnews_5fdialog',['rmnews_news_dialog',['../rmnews_8c.html#ae1bb737d0381441eebbf3652b3ef416d',1,'rmnews.c']]],
+ ['rmnews_5fstats_5fswitch',['rmnews_stats_switch',['../struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7',1,'_RemminaNewsDialog']]],
+ ['rmnews_5ftext_5fview',['rmnews_text_view',['../struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f',1,'_RemminaNewsDialog']]],
+ ['rowref',['rowref',['../struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8',1,'_RemminaFTPTask']]],
+ ['running',['running',['../struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd',1,'_RemminaSSHTunnel::running()'],['../struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874',1,'_RemminaNXSession::running()'],['../struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93',1,'_RemminaPluginVncData::running()']]]
+];
diff --git a/docs/search/variables_11.html b/docs/search/variables_11.html
new file mode 100644
index 000000000..d5be91451
--- /dev/null
+++ b/docs/search/variables_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_11.js b/docs/search/variables_11.js
new file mode 100644
index 000000000..12b23bde4
--- /dev/null
+++ b/docs/search/variables_11.js
@@ -0,0 +1,119 @@
+var searchData=
+[
+ ['save_5fpassword',['save_password',['../struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791',1,'_RemminaProtocolWidgetPriv']]],
+ ['save_5fview_5fmode',['save_view_mode',['../struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676',1,'_RemminaPref']]],
+ ['sb',['sb',['../struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8',1,'_RemminaAvahiPriv']]],
+ ['scale',['scale',['../structrf__context.html#a96c4689f6bc062482536038cb3b24e78',1,'rf_context::scale()'],['../structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242',1,'onMainThread_cb_data::scale()']]],
+ ['scale_5fheight',['scale_height',['../structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169',1,'rf_context']]],
+ ['scale_5fquality',['scale_quality',['../struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e',1,'_RemminaPref']]],
+ ['scale_5fwidth',['scale_width',['../structrf__context.html#aedf6fcd090e6ba788956565ce312ab70',1,'rf_context']]],
+ ['scale_5fx',['scale_x',['../structrf__context.html#a584505347366c40e6efa710353d4264f',1,'rf_context']]],
+ ['scale_5fy',['scale_y',['../structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764',1,'rf_context']]],
+ ['scalemode',['scalemode',['../struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533',1,'_RemminaProtocolWidgetPriv']]],
+ ['scaler_5fexpand',['scaler_expand',['../struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c',1,'_RemminaProtocolWidgetPriv']]],
+ ['scanline_5fpad',['scanline_pad',['../structrf__context.html#a538399f42e4454d5a44effbc59ea9091',1,'rf_context']]],
+ ['scanstring',['scanstring',['../structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7',1,'lsb_distro_info']]],
+ ['screenshot_5fname',['screenshot_name',['../struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6',1,'_RemminaPref']]],
+ ['screenshot_5fpath',['screenshot_path',['../struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c',1,'_RemminaPref']]],
+ ['scrolled_5fcontainer',['scrolled_container',['../struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30',1,'_RemminaConnectionObject']]],
+ ['search_5fbar',['search_bar',['../struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd',1,'_RemminaMain']]],
+ ['search_5ftoggle',['search_toggle',['../struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72',1,'_RemminaMain']]],
+ ['searchentrychange_5ftimeout_5fsource_5fid',['searchentrychange_timeout_source_id',['../structmpchanger__params.html#ac8fdacd94418731904020ff679475918',1,'mpchanger_params']]],
+ ['secret',['secret',['../struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259',1,'_RemminaPref']]],
+ ['secretservice',['secretservice',['../glibsecret__plugin_8c.html#a2bc831bbd1013a039ff4b31a340b3ec7',1,'glibsecret_plugin.c']]],
+ ['security_5flist',['security_list',['../rdp__plugin_8c.html#a2f9e1bbd16e19411adbd6a423a9b571f',1,'rdp_plugin.c']]],
+ ['selected_5ffilename',['selected_filename',['../struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00',1,'_RemminaMainPriv']]],
+ ['selected_5fname',['selected_name',['../struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d',1,'_RemminaMainPriv']]],
+ ['send',['send',['../struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372',1,'_RemminaChatWindowClass']]],
+ ['send_5fkeystrokes',['send_keystrokes',['../struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7',1,'_RemminaProtocolPlugin']]],
+ ['send_5ftext',['send_text',['../struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c',1,'_RemminaChatWindow']]],
+ ['server',['server',['../struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3',1,'_RemminaAppletMenuItem::server()'],['../struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b',1,'_RemminaSSH::server()'],['../struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac',1,'_RemminaNXSession::server()']]],
+ ['server_5fsock',['server_sock',['../struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69',1,'_RemminaSSHTunnel::server_sock()'],['../struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8',1,'_RemminaNXSession::server_sock()']]],
+ ['session',['session',['../struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3',1,'_RemminaSSH::session()'],['../struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f',1,'_RemminaNXSession::session()'],['../struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633',1,'_RemminaPluginSpiceData::session()'],['../rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336',1,'session():&#160;rmnews.c']]],
+ ['session_5fdisplay',['session_display',['../struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f',1,'_RemminaNXSession']]],
+ ['session_5fid',['session_id',['../struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a',1,'_RemminaNXSession']]],
+ ['session_5flist',['session_list',['../struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44',1,'_RemminaNXSession']]],
+ ['session_5flist_5fstate',['session_list_state',['../struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594',1,'_RemminaNXSession']]],
+ ['session_5fmanager_5fstart_5fhandler',['session_manager_start_handler',['../struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b',1,'_RemminaPluginNxData']]],
+ ['session_5fparameters',['session_parameters',['../struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3',1,'_RemminaNXSession']]],
+ ['setting',['setting',['../structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b',1,'remmina_masterthread_exec_data']]],
+ ['settings',['settings',['../struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd',1,'_RemminaFile::settings()'],['../structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d',1,'rf_context::settings()'],['../struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54',1,'_RemminaPluginWWWData::settings()']]],
+ ['sftp',['sftp',['../struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c',1,'_RemminaSFTPClient::sftp()'],['../struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab',1,'_RemminaPluginSftpData::sftp()']]],
+ ['sftp_5fclient_5fconfirm_5fresume',['sftp_client_confirm_resume',['../structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077',1,'remmina_masterthread_exec_data']]],
+ ['sftp_5fsess',['sftp_sess',['../struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df',1,'_RemminaSFTP']]],
+ ['shell',['shell',['../struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae',1,'_RemminaPluginSshData']]],
+ ['shortcutkey_5fautofit',['shortcutkey_autofit',['../struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47',1,'_RemminaPref']]],
+ ['shortcutkey_5fdisconnect',['shortcutkey_disconnect',['../struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7',1,'_RemminaPref']]],
+ ['shortcutkey_5fdynres',['shortcutkey_dynres',['../struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a',1,'_RemminaPref']]],
+ ['shortcutkey_5ffullscreen',['shortcutkey_fullscreen',['../struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f',1,'_RemminaPref']]],
+ ['shortcutkey_5fgrab',['shortcutkey_grab',['../struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc',1,'_RemminaPref']]],
+ ['shortcutkey_5fminimize',['shortcutkey_minimize',['../struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b',1,'_RemminaPref']]],
+ ['shortcutkey_5fnexttab',['shortcutkey_nexttab',['../struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095',1,'_RemminaPref']]],
+ ['shortcutkey_5fprevtab',['shortcutkey_prevtab',['../struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b',1,'_RemminaPref']]],
+ ['shortcutkey_5fscale',['shortcutkey_scale',['../struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765',1,'_RemminaPref']]],
+ ['shortcutkey_5fscreenshot',['shortcutkey_screenshot',['../struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209',1,'_RemminaPref']]],
+ ['shortcutkey_5ftoolbar',['shortcutkey_toolbar',['../struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b',1,'_RemminaPref']]],
+ ['shortcutkey_5fviewonly',['shortcutkey_viewonly',['../struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51',1,'_RemminaPref']]],
+ ['show_5fonly',['show_only',['../structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23',1,'sc_tdata']]],
+ ['sid',['sid',['../structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87',1,'mpchanger_params']]],
+ ['signal_5fname',['signal_name',['../structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910',1,'remmina_masterthread_exec_data::signal_name()'],['../struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada',1,'_RemminaProtocolWidgetSignalData::signal_name()']]],
+ ['simple_5fpoll',['simple_poll',['../struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304',1,'_RemminaAvahiPriv']]],
+ ['size',['size',['../struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7',1,'_RemminaFTPTask::size()'],['../structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba',1,'remmina_plugin_rdp_event::size()']]],
+ ['sk',['sk',['../structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4',1,'onMainThread_cb_data']]],
+ ['slave',['slave',['../structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e',1,'remmina_masterthread_exec_data::slave()'],['../struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6',1,'_RemminaSSHShell::slave()']]],
+ ['small_5ftoolbutton',['small_toolbutton',['../struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0',1,'_RemminaPref']]],
+ ['socket',['socket',['../struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6',1,'_RemminaPluginNxData::socket()'],['../struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835',1,'_RemminaPluginData::socket()'],['../struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f',1,'_RemminaPluginXdmcpData::socket()']]],
+ ['socket_5fid',['socket_id',['../struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645',1,'_RemminaPluginNxData::socket_id()'],['../struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3',1,'_RemminaPluginData::socket_id()'],['../struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496',1,'_RemminaPluginXdmcpData::socket_id()']]],
+ ['socketbuffers',['socketbuffers',['../struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1',1,'_RemminaSSHTunnel']]],
+ ['sockets',['sockets',['../struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3',1,'_RemminaSSHTunnel']]],
+ ['solarized_5fdark_5fpalette',['solarized_dark_palette',['../remmina__ssh__plugin_8c.html#afebc284e31a21ecc0316baf2115aa99f',1,'remmina_ssh_plugin.c']]],
+ ['solarized_5flight_5fpalette',['solarized_light_palette',['../remmina__ssh__plugin_8c.html#a52d414d5ac5f4956b0cabf8b5a5799f7',1,'remmina_ssh_plugin.c']]],
+ ['sound_5flist',['sound_list',['../rdp__plugin_8c.html#a36918dbbfad26310cfe3a3aed5f8f5dc',1,'rdp_plugin.c']]],
+ ['source',['source',['../structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688',1,'rsSchedData']]],
+ ['spinner',['spinner',['../struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046',1,'PCon_Spinner']]],
+ ['spsettings',['spsettings',['../struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5',1,'_RemminaFile']]],
+ ['srcbpp',['srcBpp',['../structrf__context.html#a9d28c775fe1ee90ad48941d753564a76',1,'rf_context']]],
+ ['srv_5fclip_5fdata_5fwait',['srv_clip_data_wait',['../structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026',1,'rf_clipboard']]],
+ ['srv_5fdata',['srv_data',['../structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7',1,'rf_clipboard']]],
+ ['ssh',['ssh',['../struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23',1,'_RemminaSSHTunnel::ssh()'],['../struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e',1,'_RemminaSFTP::ssh()'],['../struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098',1,'_RemminaSSHShell::ssh()']]],
+ ['ssh_5fauth',['ssh_auth',['../remmina__sftp__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19',1,'ssh_auth():&#160;remmina_sftp_plugin.c'],['../remmina__ssh__plugin_8c.html#ab69dae8eb9c3744fcf53a0f482b18f19',1,'ssh_auth():&#160;remmina_ssh_plugin.c']]],
+ ['ssh_5fcharset_5flist',['ssh_charset_list',['../remmina__ssh__plugin_8c.html#a8ebdfc8dcc1306424cbf1ed9dfd30c89',1,'remmina_ssh_plugin.c']]],
+ ['ssh_5floglevel',['ssh_loglevel',['../struct___remmina_pref.html#aac4f34f297a653052752b571777bc001',1,'_RemminaPref']]],
+ ['ssh_5fmutex',['ssh_mutex',['../struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52',1,'_RemminaSSH']]],
+ ['ssh_5fparseconfig',['ssh_parseconfig',['../struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7',1,'_RemminaPref']]],
+ ['ssh_5fsetting',['ssh_setting',['../struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb',1,'_RemminaProtocolPlugin']]],
+ ['ssh_5ftcp_5fkeepcnt',['ssh_tcp_keepcnt',['../struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fkeepidle',['ssh_tcp_keepidle',['../struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fkeepintvl',['ssh_tcp_keepintvl',['../struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd',1,'_RemminaPref']]],
+ ['ssh_5ftcp_5fusrtimeout',['ssh_tcp_usrtimeout',['../struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8',1,'_RemminaPref']]],
+ ['ssh_5fterminal_5fpalette',['ssh_terminal_palette',['../remmina__ssh__plugin_8c.html#add87ff58da9befc10131b00c00dbc8eb',1,'remmina_ssh_plugin.c']]],
+ ['ssh_5ftunnel_5fenabled',['ssh_tunnel_enabled',['../struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3',1,'_RemminaAppletMenuItem']]],
+ ['ssh_5ftunnels',['ssh_tunnels',['../struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116',1,'_RemminaProtocolWidgetPriv']]],
+ ['sshtunnel_5fport',['sshtunnel_port',['../struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400',1,'_RemminaPref']]],
+ ['started',['started',['../struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e',1,'_RemminaAvahi']]],
+ ['state',['state',['../struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c',1,'_RemminaKeyChooserArguments']]],
+ ['statsroot',['statsroot',['../structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b',1,'sc_tdata']]],
+ ['status',['status',['../struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9',1,'_RemminaFTPTask::status()'],['../struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17',1,'_RemminaNXSession::status()']]],
+ ['statusbar_5fmain',['statusbar_main',['../struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2',1,'_RemminaMain']]],
+ ['statuslabel',['statusLabel',['../structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd',1,'mpchanger_params']]],
+ ['store',['store',['../structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73',1,'mpchanger_params']]],
+ ['store_5fpassword',['store_password',['../struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6',1,'_RemminaSecretPlugin']]],
+ ['str',['str',['../structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea',1,'remmina_masterthread_exec_data']]],
+ ['stricthostkeycheck',['stricthostkeycheck',['../struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9',1,'_RemminaSSH']]],
+ ['string_5flist',['string_list',['../remmina__string__list_8c.html#a6f8601a848bb964c1c9caf69d00128b8',1,'remmina_string_list.c']]],
+ ['strpasswordlabel',['strpasswordlabel',['../structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['supported_5fmime_5ftypes',['supported_mime_types',['../remmina__main_8c.html#a8ebbcba2c07af0938b3c29e316747d12',1,'supported_mime_types():&#160;remmina_main.c'],['../rmnews_8c.html#a8ebbcba2c07af0938b3c29e316747d12',1,'supported_mime_types():&#160;rmnews.c']]],
+ ['surface',['surface',['../structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b',1,'rf_bitmap::surface()'],['../structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6',1,'rf_context::surface()']]],
+ ['sw',['sw',['../struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb',1,'_RemminaPluginExecData']]],
+ ['sw_5fgdi',['sw_gdi',['../structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2',1,'rf_context']]],
+ ['switch_5foptions_5fdeny_5fscreenshot_5fclipboard',['switch_options_deny_screenshot_clipboard',['../struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d',1,'_RemminaPrefDialog']]],
+ ['switch_5foptions_5fremember_5flast_5fview_5fmode',['switch_options_remember_last_view_mode',['../struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b',1,'_RemminaPrefDialog']]],
+ ['switch_5fpermit_5fsend_5fstats',['switch_permit_send_stats',['../struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18',1,'_RemminaPrefDialog']]],
+ ['switch_5fsecurity_5fuse_5fmaster_5fpassword',['switch_security_use_master_password',['../struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171',1,'_RemminaPrefDialog']]],
+ ['switch_5fterminal_5fbold',['switch_terminal_bold',['../struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980',1,'_RemminaPrefDialog']]],
+ ['switch_5fterminal_5ffont_5fsystem',['switch_terminal_font_system',['../struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46',1,'_RemminaPrefDialog']]],
+ ['sync',['sync',['../structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60',1,'remmina_plugin_rdp_ui_object']]],
+ ['sync_5fwait_5fcond',['sync_wait_cond',['../structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509',1,'remmina_plugin_rdp_ui_object']]],
+ ['sync_5fwait_5fmutex',['sync_wait_mutex',['../structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6',1,'remmina_plugin_rdp_ui_object']]],
+ ['system',['system',['../structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf',1,'rf_clipboard']]]
+];
diff --git a/docs/search/variables_12.html b/docs/search/variables_12.html
new file mode 100644
index 000000000..b62e1ee13
--- /dev/null
+++ b/docs/search/variables_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_12.js b/docs/search/variables_12.js
new file mode 100644
index 000000000..8b79ebd24
--- /dev/null
+++ b/docs/search/variables_12.js
@@ -0,0 +1,38 @@
+var searchData=
+[
+ ['tab_5fmode',['tab_mode',['../struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468',1,'_RemminaPref']]],
+ ['table',['table',['../structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2',1,'mpchanger_params']]],
+ ['tango_5fpalette',['tango_palette',['../remmina__ssh__plugin_8c.html#a2d4a960ae03e832fb20239f4880a6244',1,'remmina_ssh_plugin.c']]],
+ ['targetlist',['targetlist',['../structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475',1,'remmina_plugin_rdp_ui_object']]],
+ ['task',['task',['../structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1',1,'remmina_masterthread_exec_data']]],
+ ['taskid',['taskid',['../struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840',1,'_RemminaFTPTask::taskid()'],['../struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270',1,'_RemminaSFTPClient::taskid()']]],
+ ['tasktype',['tasktype',['../struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce',1,'_RemminaFTPTask']]],
+ ['term_5flist',['term_list',['../st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a',1,'st_plugin.c']]],
+ ['terminal',['terminal',['../structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1',1,'remmina_masterthread_exec_data']]],
+ ['text',['text',['../structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de',1,'remmina_masterthread_exec_data::text()'],['../struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30',1,'_RemminaPluginVncCuttextParam::text()'],['../struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65',1,'_RemminaPluginVncEvent::text()'],['../struct___remmina_plugin_vnc_event.html#a17fd02bcca976213ff16edde4b754ec6',1,'_RemminaPluginVncEvent::text()']]],
+ ['textlen',['textlen',['../struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76',1,'_RemminaPluginVncCuttextParam']]],
+ ['theme_5fcheck',['theme_check',['../struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf',1,'_RemminaPluginRdpsetGrid']]],
+ ['thread',['thread',['../struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b',1,'_RemminaSFTPClient::thread()'],['../struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5',1,'_RemminaPluginSftpData::thread()'],['../struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd',1,'_RemminaSSHTunnel::thread()'],['../struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226',1,'_RemminaSSHShell::thread()'],['../struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e',1,'_RemminaPluginSshData::thread()'],['../struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c',1,'_RemminaPluginNxData::thread()'],['../struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6',1,'_RemminaNXSession::thread()'],['../struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095',1,'_RemminaPluginVncData::thread()'],['../struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb',1,'_RemminaPluginXdmcpData::thread()']]],
+ ['thread_5fabort',['thread_abort',['../struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875',1,'_RemminaSFTPClient']]],
+ ['thread_5fcancelled',['thread_cancelled',['../structrf__context.html#aa574515edb4966117f539d26e26f0a62',1,'rf_context']]],
+ ['timer',['timer',['../remmina__unlock_8c.html#a74421b834d52c638084568e39a6882c0',1,'timer():&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#a74421b834d52c638084568e39a6882c0',1,'timer():&#160;remmina_unlock.c']]],
+ ['times',['times',['../remmina__file_8c.html#a3793ec19ecbc8c8afc4d1dd8969f880d',1,'remmina_file.c']]],
+ ['title',['title',['../structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['toolbar_5fpin_5fdown',['toolbar_pin_down',['../struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449',1,'_RemminaPref']]],
+ ['toolbar_5fplace',['toolbar_place',['../struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d',1,'_RemminaConnectionWindowClass']]],
+ ['toolbar_5fplacement',['toolbar_placement',['../struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133',1,'_RemminaPref']]],
+ ['tooltip',['tooltip',['../struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667',1,'_RemminaFTPTask']]],
+ ['top',['top',['../structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070',1,'remmina_plugin_rdp_ui_object']]],
+ ['transfer_5fclip_5fcond',['transfer_clip_cond',['../structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7',1,'rf_clipboard']]],
+ ['transfer_5fclip_5fmutex',['transfer_clip_mutex',['../structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205',1,'rf_clipboard']]],
+ ['translated_5fkeycode',['translated_keycode',['../structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1',1,'remmina_plugin_rdp_keymap_entry']]],
+ ['tree_5ffiles_5flist',['tree_files_list',['../struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced',1,'_RemminaMain']]],
+ ['treeview_5fitems',['treeview_items',['../struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2',1,'_RemminaStringList']]],
+ ['treeview_5fselection',['treeview_selection',['../struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97',1,'_RemminaStringList']]],
+ ['treeviewcolumn_5fitem',['treeviewcolumn_item',['../struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3',1,'_RemminaStringList']]],
+ ['tunnel_5fentrance_5fhost',['tunnel_entrance_host',['../struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602',1,'_RemminaSSH']]],
+ ['tunnel_5fentrance_5fport',['tunnel_entrance_port',['../struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f',1,'_RemminaSSH']]],
+ ['tunnel_5ftype',['tunnel_type',['../struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df',1,'_RemminaSSHTunnel']]],
+ ['two_5fcolumns',['two_columns',['../struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb',1,'_RemminaStringListPriv']]],
+ ['type',['type',['../struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3',1,'_RemminaPlugin::type()'],['../struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0',1,'_RemminaProtocolPlugin::type()'],['../struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264',1,'_RemminaEntryPlugin::type()'],['../struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494',1,'_RemminaFilePlugin::type()'],['../struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176',1,'_RemminaToolPlugin::type()'],['../struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522',1,'_RemminaPrefPlugin::type()'],['../struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2',1,'_RemminaSecretPlugin::type()'],['../struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9',1,'_RemminaProtocolFeature::type()'],['../struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9',1,'_RemminaProtocolSetting::type()'],['../struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9',1,'_RemminaFTPTask::type()'],['../struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a',1,'_RemminaProtocolSettingOpt::type()'],['../structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126',1,'remmina_plugin_rdp_event::type()'],['../structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725',1,'remmina_plugin_rdp_ui_object::type()'],['../structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b',1,'remmina_plugin_rdp_ui_object::type()']]]
+];
diff --git a/docs/search/variables_13.html b/docs/search/variables_13.html
new file mode 100644
index 000000000..15437be23
--- /dev/null
+++ b/docs/search/variables_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_13.js b/docs/search/variables_13.js
new file mode 100644
index 000000000..e51b50837
--- /dev/null
+++ b/docs/search/variables_13.js
@@ -0,0 +1,28 @@
+var searchData=
+[
+ ['u',['u',['../remmina__utils_8c.html#a8b6ee6e66fba40ddaf4e735ba9d4208c',1,'remmina_utils.c']]],
+ ['ui_5fhandler',['ui_handler',['../structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0',1,'rf_context']]],
+ ['ui_5fqueue',['ui_queue',['../structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3',1,'rf_context']]],
+ ['ui_5fqueue_5fmutex',['ui_queue_mutex',['../structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329',1,'rf_context']]],
+ ['ui_5fregister',['ui_register',['../struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524',1,'_RemminaPluginService']]],
+ ['uid',['uid',['../struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f',1,'_RemminaPref']]],
+ ['unicode_5fcode',['unicode_code',['../structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b',1,'remmina_plugin_rdp_event']]],
+ ['unlock_5fdynres',['unlock_dynres',['../struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3',1,'_RemminaProtocolWidgetClass']]],
+ ['unlock_5finit',['unlock_init',['../struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b',1,'_RemminaUnlockDialog']]],
+ ['unlock_5fpassword',['unlock_password',['../struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc',1,'_RemminaPref::unlock_password()'],['../struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097',1,'_RemminaPrefDialog::unlock_password()']]],
+ ['unlock_5frepassword',['unlock_repassword',['../struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651',1,'_RemminaPref::unlock_repassword()'],['../struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b',1,'_RemminaPrefDialog::unlock_repassword()']]],
+ ['unlock_5ftimeout',['unlock_timeout',['../struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972',1,'_RemminaPref::unlock_timeout()'],['../struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97',1,'_RemminaPrefDialog::unlock_timeout()']]],
+ ['up',['up',['../structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094',1,'remmina_plugin_rdp_event']]],
+ ['update_5falign',['update_align',['../struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99',1,'_RemminaProtocolWidgetClass']]],
+ ['ureg',['ureg',['../structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d',1,'remmina_plugin_rdp_ui_object']]],
+ ['url',['url',['../struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb',1,'_RemminaPluginWWWData']]],
+ ['use_5fclient_5fkeymap',['use_client_keymap',['../structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8',1,'rf_context']]],
+ ['use_5fclient_5fkeymap_5fcheck',['use_client_keymap_check',['../struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970',1,'_RemminaPluginRdpsetGrid']]],
+ ['use_5fmaster_5fpassword',['use_master_password',['../struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4',1,'_RemminaPref']]],
+ ['use_5fmodifiers',['use_modifiers',['../struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03',1,'_RemminaKeyChooserArguments']]],
+ ['user',['user',['../struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb',1,'_RemminaSSH']]],
+ ['user_5fcancelled',['user_cancelled',['../structrf__context.html#acacad775c2c168f900deaa6c90481319',1,'rf_context']]],
+ ['user_5fdata',['user_data',['../struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d',1,'_RemminaSSHShell']]],
+ ['username',['username',['../structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742',1,'mpchanger_params::username()'],['../struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885',1,'_RemminaProtocolWidgetPriv::username()']]],
+ ['ustats_5ftoggle',['ustats_toggle',['../struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670',1,'_RemminaMain']]]
+];
diff --git a/docs/search/variables_14.html b/docs/search/variables_14.html
new file mode 100644
index 000000000..3745fec35
--- /dev/null
+++ b/docs/search/variables_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_14.js b/docs/search/variables_14.js
new file mode 100644
index 000000000..75cef57dd
--- /dev/null
+++ b/docs/search/variables_14.js
@@ -0,0 +1,26 @@
+var searchData=
+[
+ ['validation_5ffunc',['validation_func',['../struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24',1,'_RemminaStringListPriv']]],
+ ['vbox',['vbox',['../struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77',1,'_RemminaFTPClient::vbox()'],['../struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716',1,'_RemminaPluginSpiceXferWidgets::vbox()']]],
+ ['version',['version',['../struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099',1,'_RemminaPlugin::version()'],['../struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff',1,'_RemminaProtocolPlugin::version()'],['../struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441',1,'_RemminaEntryPlugin::version()'],['../struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8',1,'_RemminaFilePlugin::version()'],['../struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b',1,'_RemminaToolPlugin::version()'],['../struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d',1,'_RemminaPrefPlugin::version()'],['../struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa',1,'_RemminaSecretPlugin::version()'],['../struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7',1,'_RemminaNXSession::version()']]],
+ ['view_5ffile_5fmode',['view_file_mode',['../struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1',1,'_RemminaPref']]],
+ ['view_5ftoggle_5fbutton',['view_toggle_button',['../struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7',1,'_RemminaMain']]],
+ ['viewport',['viewport',['../struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d',1,'_RemminaConnectionObject']]],
+ ['viewport_5fmotion',['viewport_motion',['../struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af',1,'_RemminaScrolledViewport']]],
+ ['viewport_5fmotion_5fhandler',['viewport_motion_handler',['../struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966',1,'_RemminaScrolledViewport']]],
+ ['visual',['visual',['../structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999',1,'rf_context']]],
+ ['vnc_5fbuffer',['vnc_buffer',['../struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fpipe',['vnc_event_pipe',['../struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fqueue',['vnc_event_queue',['../struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a',1,'_RemminaPluginVncData']]],
+ ['vnc_5fevent_5fqueue_5fmutex',['vnc_event_queue_mutex',['../struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063',1,'_RemminaPluginVncData']]],
+ ['vte',['vte',['../struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14',1,'_RemminaPluginSshData']]],
+ ['vte_5fallow_5fbold_5ftext',['vte_allow_bold_text',['../struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17',1,'_RemminaPref']]],
+ ['vte_5ffont',['vte_font',['../struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b',1,'_RemminaPref']]],
+ ['vte_5flines',['vte_lines',['../struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850',1,'_RemminaPref']]],
+ ['vte_5fsession_5ffile',['vte_session_file',['../struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91',1,'_RemminaPluginSshData']]],
+ ['vte_5fshortcutkey_5fcopy',['vte_shortcutkey_copy',['../struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457',1,'_RemminaPref']]],
+ ['vte_5fshortcutkey_5fpaste',['vte_shortcutkey_paste',['../struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6',1,'_RemminaPref']]],
+ ['vte_5fshortcutkey_5fselect_5fall',['vte_shortcutkey_select_all',['../struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad',1,'_RemminaPref']]],
+ ['vte_5fsystem_5fcolors',['vte_system_colors',['../struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22',1,'_RemminaPref']]],
+ ['vte_5fterminal_5fset_5fencoding_5fand_5fpty',['vte_terminal_set_encoding_and_pty',['../structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327',1,'remmina_masterthread_exec_data']]]
+];
diff --git a/docs/search/variables_15.html b/docs/search/variables_15.html
new file mode 100644
index 000000000..7432fd79a
--- /dev/null
+++ b/docs/search/variables_15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_15.js b/docs/search/variables_15.js
new file mode 100644
index 000000000..c67cc8c84
--- /dev/null
+++ b/docs/search/variables_15.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['w',['w',['../struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8',1,'RemminaMessagePanelPrivate::w()'],['../structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8',1,'onMainThread_cb_data::w()'],['../structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6',1,'region::w()']]],
+ ['wallpaper_5fcheck',['wallpaper_check',['../struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319',1,'_RemminaPluginRdpsetGrid']]],
+ ['webview',['webview',['../struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690',1,'_RemminaPluginWWWData']]],
+ ['widget',['widget',['../structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783',1,'onMainThread_cb_data']]],
+ ['width',['width',['../struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6',1,'_RemminaPluginScreenshotData::width()'],['../struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93',1,'_RemminaProtocolWidgetPriv::width()'],['../structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b',1,'remmina_plugin_rdp_event::width()'],['../structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f',1,'remmina_plugin_rdp_ui_object::width()'],['../structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4',1,'onMainThread_cb_data::width()']]],
+ ['window',['window',['../struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d',1,'_RemminaConnectionWindow::window()'],['../struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29',1,'_RemminaChatWindow::window()'],['../struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184',1,'_RemminaLogWindow::window()'],['../struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2',1,'_RemminaMain::window()']]],
+ ['window_5fid',['window_id',['../struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc',1,'_RemminaPluginNxData']]],
+ ['windowdrag_5fcheck',['windowdrag_check',['../struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0',1,'_RemminaPluginRdpsetGrid']]]
+];
diff --git a/docs/search/variables_16.html b/docs/search/variables_16.html
new file mode 100644
index 000000000..737584f9d
--- /dev/null
+++ b/docs/search/variables_16.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_16.js b/docs/search/variables_16.js
new file mode 100644
index 000000000..64791a2a0
--- /dev/null
+++ b/docs/search/variables_16.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['x',['x',['../structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105',1,'remmina_plugin_rdp_event::x()'],['../structregion.html#ad258e7b02e819b46656294de5e4bd8ad',1,'region::x()'],['../structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9',1,'remmina_plugin_rdp_ui_object::x()'],['../structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222',1,'onMainThread_cb_data::x()'],['../struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8',1,'_RemminaPluginVncEvent::x()'],['../struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a',1,'_RemminaPluginVncCoordinates::x()']]],
+ ['x11_5fchannel',['x11_channel',['../struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d',1,'_RemminaSSHTunnel']]],
+ ['xterm_5fpalette',['xterm_palette',['../remmina__ssh__plugin_8c.html#a9cc4363a5dd981de398aca34155b38c0',1,'remmina_ssh_plugin.c']]]
+];
diff --git a/docs/search/variables_17.html b/docs/search/variables_17.html
new file mode 100644
index 000000000..fe5c7ef5f
--- /dev/null
+++ b/docs/search/variables_17.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_17.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_17.js b/docs/search/variables_17.js
new file mode 100644
index 000000000..8c4dfea59
--- /dev/null
+++ b/docs/search/variables_17.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['y',['y',['../structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf',1,'remmina_plugin_rdp_event::y()'],['../structregion.html#a97015e361d0cbedf7dcab10fbea95b10',1,'region::y()'],['../structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c',1,'remmina_plugin_rdp_ui_object::y()'],['../structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f',1,'onMainThread_cb_data::y()'],['../struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11',1,'_RemminaPluginVncEvent::y()'],['../struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e',1,'_RemminaPluginVncCoordinates::y()']]]
+];
diff --git a/docs/search/variables_2.html b/docs/search/variables_2.html
new file mode 100644
index 000000000..5c9de1aab
--- /dev/null
+++ b/docs/search/variables_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_2.js b/docs/search/variables_2.js
new file mode 100644
index 000000000..c2fec87a9
--- /dev/null
+++ b/docs/search/variables_2.js
@@ -0,0 +1,119 @@
+var searchData=
+[
+ ['cacert',['cacert',['../struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e',1,'_RemminaProtocolWidgetPriv']]],
+ ['cachedir',['cachedir',['../remmina__file__manager_8c.html#ace1098aad45256ac0b0155cb042472e9',1,'remmina_file_manager.c']]],
+ ['cacrl',['cacrl',['../struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4',1,'_RemminaProtocolWidgetPriv']]],
+ ['cairo_5fformat',['cairo_format',['../structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0',1,'rf_context']]],
+ ['call_5ffeature',['call_feature',['../struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1',1,'_RemminaProtocolPlugin']]],
+ ['callback',['callback',['../struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378',1,'_RemminaSSH']]],
+ ['callback_5fdata',['callback_data',['../struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6',1,'_RemminaSSHTunnel']]],
+ ['called_5ffrom_5fsubthread',['called_from_subthread',['../structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['cancel',['cancel',['../struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['cancel_5ftask',['cancel_task',['../struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93',1,'_RemminaFTPClientClass']]],
+ ['cancelled',['cancelled',['../structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63',1,'remmina_masterthread_exec_data::cancelled()'],['../structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75',1,'onMainThread_cb_data::cancelled()']]],
+ ['cb_5ffunc_5fdata',['cb_func_data',['../structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b',1,'rsSchedData']]],
+ ['cb_5ffunc_5fptr',['cb_func_ptr',['../structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646',1,'rsSchedData']]],
+ ['cellrenderertext_5fitem1',['cellrenderertext_item1',['../struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256',1,'_RemminaStringList']]],
+ ['cellrenderertext_5fitem2',['cellrenderertext_item2',['../struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe',1,'_RemminaStringList']]],
+ ['changed_5fpasswords_5fcount',['changed_passwords_count',['../structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719',1,'mpchanger_params']]],
+ ['channel',['channel',['../struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2',1,'_RemminaSSHShell::channel()'],['../struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad',1,'_RemminaNXSession::channel()'],['../struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece',1,'_RemminaTpChannelHandler::channel()']]],
+ ['channel_5fpath',['channel_path',['../struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769',1,'_RemminaTpChannelHandler']]],
+ ['channel_5fproperties',['channel_properties',['../struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632',1,'_RemminaTpChannelHandler']]],
+ ['channels',['channels',['../struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4',1,'_RemminaSSHTunnel']]],
+ ['channels_5fout',['channels_out',['../struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91',1,'_RemminaSSHTunnel']]],
+ ['charset',['charset',['../struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5',1,'_RemminaSSH']]],
+ ['chat_5freceive',['chat_receive',['../structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020',1,'remmina_masterthread_exec_data']]],
+ ['chat_5fwindow',['chat_window',['../struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e',1,'_RemminaProtocolWidgetPriv']]],
+ ['checkbutton_5fappearance_5ffullscreen_5fon_5fauto',['checkbutton_appearance_fullscreen_on_auto',['../struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fhide_5fsearchbar',['checkbutton_appearance_hide_searchbar',['../struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fhide_5ftoolbar',['checkbutton_appearance_hide_toolbar',['../struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fappearance_5fshow_5ftabs',['checkbutton_appearance_show_tabs',['../struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fdisable_5ftray',['checkbutton_applet_disable_tray',['../struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fhide_5ftotals',['checkbutton_applet_hide_totals',['../struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5flight_5ftray',['checkbutton_applet_light_tray',['../struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fnew_5fconnection_5fon_5ftop',['checkbutton_applet_new_connection_on_top',['../struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5fapplet_5fstart_5fin_5ftray',['checkbutton_applet_start_in_tray',['../struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5foptions_5fsave_5fsettings',['checkbutton_options_save_settings',['../struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119',1,'_RemminaPrefDialog']]],
+ ['checkbutton_5foptions_5fssh_5fparseconfig',['checkbutton_options_ssh_parseconfig',['../struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc',1,'_RemminaPrefDialog']]],
+ ['ciphers',['ciphers',['../struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0',1,'_RemminaSSH']]],
+ ['client',['client',['../struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040',1,'_RemminaAvahiPriv::client()'],['../structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b',1,'remmina_masterthread_exec_data::client()'],['../structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d',1,'remmina_masterthread_exec_data::client()'],['../struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1',1,'_RemminaSFTPClient::client()'],['../struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f',1,'_RemminaPluginSftpData::client()'],['../struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90',1,'_RemminaPluginVncData::client()']]],
+ ['clientbuild_5flist',['clientbuild_list',['../rdp__plugin_8c.html#a7565748ab340f2e7c66bcb755e006bd5',1,'rdp_plugin.c']]],
+ ['clientbuild_5ftooltip',['clientbuild_tooltip',['../rdp__plugin_8c.html#a6910d98a00cac88fb257d9bb2d080243',1,'rdp_plugin.c']]],
+ ['clientcert',['clientcert',['../struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05',1,'_RemminaProtocolWidgetPriv']]],
+ ['clientkey',['clientkey',['../struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0',1,'_RemminaProtocolWidgetPriv']]],
+ ['clipboard',['clipboard',['../structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a',1,'remmina_plugin_rdp_ui_object::clipboard()'],['../structremmina__plugin__rdp__ui__object.html#a6c993ee64cd27392efb8bc6f53e0dca0',1,'remmina_plugin_rdp_ui_object::clipboard()'],['../structrf__context.html#a72d2a3d60347327237692947df93aea7',1,'rf_context::clipboard()']]],
+ ['clipboard_5fformatdatarequest',['clipboard_formatdatarequest',['../structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fformatdataresponse',['clipboard_formatdataresponse',['../structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fformatlist',['clipboard_formatlist',['../structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0',1,'remmina_plugin_rdp_event']]],
+ ['clipboard_5fhandler',['clipboard_handler',['../structrf__clipboard.html#a52ca364a1902d7f4095234923feed724',1,'rf_clipboard::clipboard_handler()'],['../struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c',1,'_RemminaPluginVncData::clipboard_handler()']]],
+ ['clipboard_5ftimer',['clipboard_timer',['../struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc',1,'_RemminaPluginVncData']]],
+ ['cliprdr',['cliprdr',['../structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8',1,'rf_context']]],
+ ['close_5fconnection',['close_connection',['../struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2',1,'_RemminaProtocolPlugin']]],
+ ['closed',['closed',['../struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6',1,'_RemminaProtocolWidgetPriv::closed()'],['../struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80',1,'_RemminaSSHShell::closed()']]],
+ ['cnnobj',['cnnobj',['../structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd',1,'remmina_masterthread_exec_data::cnnobj()'],['../struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67',1,'_RemminaProtocolWidget::cnnobj()']]],
+ ['cnnwin',['cnnwin',['../struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328',1,'_RemminaConnectionObject']]],
+ ['codeset',['codeset',['../structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668',1,'remmina_masterthread_exec_data']]],
+ ['color0',['color0',['../struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808',1,'_RemminaColorPref']]],
+ ['color1',['color1',['../struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff',1,'_RemminaColorPref']]],
+ ['color10',['color10',['../struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c',1,'_RemminaColorPref']]],
+ ['color11',['color11',['../struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97',1,'_RemminaColorPref']]],
+ ['color12',['color12',['../struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928',1,'_RemminaColorPref']]],
+ ['color13',['color13',['../struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc',1,'_RemminaColorPref']]],
+ ['color14',['color14',['../struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79',1,'_RemminaColorPref']]],
+ ['color15',['color15',['../struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60',1,'_RemminaColorPref']]],
+ ['color2',['color2',['../struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4',1,'_RemminaColorPref']]],
+ ['color3',['color3',['../struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316',1,'_RemminaColorPref']]],
+ ['color4',['color4',['../struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914',1,'_RemminaColorPref']]],
+ ['color5',['color5',['../struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60',1,'_RemminaColorPref']]],
+ ['color6',['color6',['../struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9',1,'_RemminaColorPref']]],
+ ['color7',['color7',['../struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7',1,'_RemminaColorPref']]],
+ ['color8',['color8',['../struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4',1,'_RemminaColorPref']]],
+ ['color9',['color9',['../struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc',1,'_RemminaColorPref']]],
+ ['color_5fpref',['color_pref',['../struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8',1,'_RemminaPref']]],
+ ['colorbutton_5fbackground',['colorbutton_background',['../struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor0',['colorbutton_color0',['../struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor1',['colorbutton_color1',['../struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor10',['colorbutton_color10',['../struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor11',['colorbutton_color11',['../struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor12',['colorbutton_color12',['../struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor13',['colorbutton_color13',['../struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor14',['colorbutton_color14',['../struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor15',['colorbutton_color15',['../struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor2',['colorbutton_color2',['../struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor3',['colorbutton_color3',['../struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor4',['colorbutton_color4',['../struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor5',['colorbutton_color5',['../struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor6',['colorbutton_color6',['../struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor7',['colorbutton_color7',['../struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor8',['colorbutton_color8',['../struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcolor9',['colorbutton_color9',['../struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fcursor',['colorbutton_cursor',['../struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab',1,'_RemminaPrefDialog']]],
+ ['colorbutton_5fforeground',['colorbutton_foreground',['../struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2',1,'_RemminaPrefDialog']]],
+ ['colordepth_5flist',['colordepth_list',['../rdp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;rdp_plugin.c'],['../vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;vnc_plugin.c'],['../xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1',1,'colordepth_list():&#160;xdmcp_plugin.c']]],
+ ['colormap',['colormap',['../structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523',1,'rf_context']]],
+ ['column_5ffiles_5flist_5fgroup',['column_files_list_group',['../struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc',1,'_RemminaMain']]],
+ ['combo_5fquick_5fconnect_5fprotocol',['combo_quick_connect_protocol',['../struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39',1,'_RemminaMain']]],
+ ['comboboxtext_5fappearance_5ffullscreen_5ftoolbar_5fvisibility',['comboboxtext_appearance_fullscreen_toolbar_visibility',['../struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5fappearance_5ftab_5finterface',['comboboxtext_appearance_tab_interface',['../struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5fappearance_5fview_5fmode',['comboboxtext_appearance_view_mode',['../struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fdouble_5fclick',['comboboxtext_options_double_click',['../struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fscale_5fquality',['comboboxtext_options_scale_quality',['../struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d',1,'_RemminaPrefDialog']]],
+ ['comboboxtext_5foptions_5fssh_5floglevel',['comboboxtext_options_ssh_loglevel',['../struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972',1,'_RemminaPrefDialog']]],
+ ['common_5fidentities',['common_identities',['../remmina__ssh_8c.html#a8920b4663823da39661a108f04b33694',1,'remmina_ssh.c']]],
+ ['compact',['compact',['../struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6',1,'_RemminaProtocolSetting::compact()'],['../struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc',1,'_RemminaProtocolSettingOpt::compact()']]],
+ ['complete',['complete',['../structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9',1,'remmina_masterthread_exec_data::complete()'],['../structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c',1,'remmina_plugin_rdp_ui_object::complete()']]],
+ ['composition_5fcheck',['composition_check',['../struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e',1,'_RemminaPluginRdpsetGrid']]],
+ ['compression',['compression',['../struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870',1,'_RemminaSSH']]],
+ ['connect',['connect',['../struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760',1,'_RemminaProtocolWidgetClass']]],
+ ['connect_5ffunc',['connect_func',['../struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660',1,'_RemminaSSHTunnel']]],
+ ['connect_5fmessage_5fpanel',['connect_message_panel',['../struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483',1,'_RemminaProtocolWidgetPriv']]],
+ ['connected',['connected',['../struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d',1,'_RemminaConnectionObject::connected()'],['../structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73',1,'rf_context::connected()'],['../struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95',1,'_RemminaPluginVncData::connected()']]],
+ ['connection',['connection',['../struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981',1,'_RemminaTpChannelHandler']]],
+ ['connection_5fpath',['connection_path',['../struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213',1,'_RemminaTpChannelHandler']]],
+ ['context',['context',['../structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa',1,'rf_clipboard::context()'],['../structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db',1,'remmina_plugin_rdp_ui_object::context()'],['../structrf__context.html#a23192b58404d1dc629d5e7db3fb103be',1,'rf_context::context()'],['../struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068',1,'_RemminaTpChannelHandler::context()'],['../struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e',1,'_RemminaPluginWWWData::context()']]],
+ ['count',['count',['../structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e',1,'rsSchedData']]],
+ ['credentials',['credentials',['../struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959',1,'_RemminaPluginWWWData']]],
+ ['cursor',['cursor',['../struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500',1,'_RemminaColorPref::cursor()'],['../structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0',1,'rf_pointer::cursor()'],['../structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a',1,'remmina_plugin_rdp_ui_object::cursor()']]],
+ ['cursorblinking_5fcheck',['cursorblinking_check',['../struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93',1,'_RemminaPluginRdpsetGrid']]],
+ ['cursorshadow_5fcheck',['cursorshadow_check',['../struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29',1,'_RemminaPluginRdpsetGrid']]]
+];
diff --git a/docs/search/variables_3.html b/docs/search/variables_3.html
new file mode 100644
index 000000000..f95e34c60
--- /dev/null
+++ b/docs/search/variables_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_3.js b/docs/search/variables_3.js
new file mode 100644
index 000000000..d762b054f
--- /dev/null
+++ b/docs/search/variables_3.js
@@ -0,0 +1,61 @@
+var searchData=
+[
+ ['dark_5ftray_5ficon',['dark_tray_icon',['../struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f',1,'_RemminaPref']]],
+ ['data',['data',['../structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624',1,'remmina_plugin_rdp_event::data()'],['../structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181',1,'remmina_plugin_rdp_ui_object::data()']]],
+ ['data_5fmgr',['data_mgr',['../struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab',1,'_RemminaPluginWWWData']]],
+ ['datadir_5fpath',['datadir_path',['../struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011',1,'_RemminaPref']]],
+ ['datestr',['datestr',['../struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b',1,'ProfilesData']]],
+ ['datetime',['datetime',['../struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660',1,'_RemminaGroupData']]],
+ ['debug',['debug',['../struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081',1,'_RemminaPluginService']]],
+ ['default_5faction',['default_action',['../struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef',1,'_RemminaPref']]],
+ ['default_5fdomain',['default_domain',['../structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['default_5fkeymap_5fdata',['default_keymap_data',['../remmina__pref_8c.html#a23aaa111a41eb1c80df5e85af25e7e44',1,'remmina_pref.c']]],
+ ['default_5fkeystrokes',['default_keystrokes',['../remmina__pref_8c.html#a858117f890841ad21d3a153f5b81dbdd',1,'remmina_pref.c']]],
+ ['default_5fmode',['default_mode',['../struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d',1,'_RemminaPref']]],
+ ['default_5fpassword',['default_password',['../structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['default_5fresolutions',['default_resolutions',['../remmina__pref_8c.html#a316f4290c083d28bd3492ee979278290',1,'default_resolutions():&#160;remmina_pref.c'],['../remmina__pref_8h.html#a316f4290c083d28bd3492ee979278290',1,'default_resolutions():&#160;remmina_pref.c']]],
+ ['default_5fresponse',['default_response',['../struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1',1,'_RemminaPluginNxData']]],
+ ['default_5fusername',['default_username',['../structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['defaultcollection',['defaultcollection',['../glibsecret__plugin_8c.html#af10df16880b8942af051968748935d72',1,'glibsecret_plugin.c']]],
+ ['deferred_5fopen_5fsize_5fallocate_5fhandler',['deferred_open_size_allocate_handler',['../struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2',1,'_RemminaConnectionObject']]],
+ ['delayed_5fmonitor_5flayout_5fhandler',['delayed_monitor_layout_handler',['../structrf__context.html#a957e6f6867170470689210d55770342e',1,'rf_context']]],
+ ['delete_5ffile',['delete_file',['../struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905',1,'_RemminaFTPClientClass']]],
+ ['delete_5fpassword',['delete_password',['../struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef',1,'_RemminaSecretPlugin']]],
+ ['deny_5fscreenshot_5fclipboard',['deny_screenshot_clipboard',['../struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35',1,'_RemminaPref']]],
+ ['description',['description',['../struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde',1,'_RemminaPlugin::description()'],['../struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70',1,'_RemminaProtocolPlugin::description()'],['../struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4',1,'_RemminaEntryPlugin::description()'],['../struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1',1,'_RemminaFilePlugin::description()'],['../struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9',1,'_RemminaToolPlugin::description()'],['../struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0',1,'_RemminaPrefPlugin::description()'],['../struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659',1,'_RemminaSecretPlugin::description()']]],
+ ['desktop_5forientation_5fcombo',['desktop_orientation_combo',['../struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktop_5forientation_5fstore',['desktop_orientation_store',['../struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktop_5fresize',['desktop_resize',['../struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b',1,'_RemminaProtocolWidgetClass']]],
+ ['desktop_5fscale_5ffactor_5fspin',['desktop_scale_factor_spin',['../struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b',1,'_RemminaPluginRdpsetGrid']]],
+ ['desktoporientation',['desktopOrientation',['../structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0',1,'remmina_plugin_rdp_event']]],
+ ['desktopscalefactor',['desktopScaleFactor',['../structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985',1,'remmina_plugin_rdp_event']]],
+ ['dest',['dest',['../struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da',1,'_RemminaSSHTunnel']]],
+ ['destroy_5ffunc',['destroy_func',['../struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778',1,'_RemminaSSHTunnel']]],
+ ['destroy_5ffunc_5fcallback_5fdata',['destroy_func_callback_data',['../struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795',1,'_RemminaSSHTunnel']]],
+ ['destroyed',['destroyed',['../struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91',1,'MpRunInfo']]],
+ ['device_5fscale_5ffactor_5fcombo',['device_scale_factor_combo',['../struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3',1,'_RemminaPluginRdpsetGrid']]],
+ ['device_5fscale_5ffactor_5fstore',['device_scale_factor_store',['../struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860',1,'_RemminaPluginRdpsetGrid']]],
+ ['devicescalefactor',['deviceScaleFactor',['../structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57',1,'remmina_plugin_rdp_event']]],
+ ['dialog',['dialog',['../struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646',1,'PCon_Spinner::dialog()'],['../struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872',1,'_RemminaFileEditor::dialog()'],['../structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568',1,'mpchanger_params::dialog()'],['../struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c',1,'_RemminaPrefDialog::dialog()'],['../struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558',1,'_RemminaStringList::dialog()'],['../struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e',1,'_RemminaUnlockDialog::dialog()'],['../struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f',1,'_RemminaNewsDialog::dialog()']]],
+ ['disable_5ftray_5ficon',['disable_tray_icon',['../struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c',1,'_RemminaPref']]],
+ ['disconnect',['disconnect',['../struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213',1,'_RemminaProtocolWidgetClass']]],
+ ['disconnect_5ffunc',['disconnect_func',['../struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c',1,'_RemminaSSHTunnel']]],
+ ['disconnect_5fhandler',['disconnect_handler',['../struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363',1,'_RemminaTpChannelHandler']]],
+ ['discovered_5fservices',['discovered_services',['../struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675',1,'_RemminaAvahi']]],
+ ['dispcontext',['dispcontext',['../structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174',1,'rf_context']]],
+ ['display',['display',['../struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3',1,'_RemminaPluginNxData::display()'],['../structrf__context.html#a7c4234646c4b584e41e36521b7eab889',1,'rf_context::display()'],['../struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad',1,'_RemminaPluginSpiceData::display()'],['../struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f',1,'_RemminaPluginXdmcpData::display()']]],
+ ['display_5fchannel',['display_channel',['../struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6',1,'_RemminaPluginSpiceData']]],
+ ['distroarray',['distroArray',['../remmina__utils_8c.html#a819abe021d49cefa64ffc7981aacc478',1,'remmina_utils.c']]],
+ ['dnd_5ftargets_5fftb',['dnd_targets_ftb',['../rcw_8c.html#a6515e726b5d3e4c0a9aefc3cf20f3d90',1,'rcw.c']]],
+ ['dnd_5ftargets_5ftb',['dnd_targets_tb',['../rcw_8c.html#a7e71031254421ccb10e0c29699cc9523',1,'rcw.c']]],
+ ['document_5ftype',['document_type',['../struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db',1,'_RemminaPluginWWWData']]],
+ ['domain',['domain',['../struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201',1,'_RemminaPlugin::domain()'],['../struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae',1,'_RemminaProtocolPlugin::domain()'],['../struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533',1,'_RemminaEntryPlugin::domain()'],['../struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f',1,'_RemminaFilePlugin::domain()'],['../struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e',1,'_RemminaToolPlugin::domain()'],['../struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf',1,'_RemminaPrefPlugin::domain()'],['../struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e',1,'_RemminaSecretPlugin::domain()'],['../structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c',1,'mpchanger_params::domain()'],['../struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f',1,'_RemminaProtocolWidgetPriv::domain()']]],
+ ['donesize',['donesize',['../struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0',1,'_RemminaFTPTask']]],
+ ['dot_5fcursor_5fx_5fhot',['dot_cursor_x_hot',['../vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff',1,'vnc_plugin.c']]],
+ ['dot_5fcursor_5fxpm',['dot_cursor_xpm',['../vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100',1,'vnc_plugin.c']]],
+ ['dot_5fcursor_5fy_5fhot',['dot_cursor_y_hot',['../vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5',1,'vnc_plugin.c']]],
+ ['drawing_5farea',['drawing_area',['../structrf__context.html#acee2095e72fb2428c498f62e21800026',1,'rf_context::drawing_area()'],['../struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57',1,'_RemminaPluginVncData::drawing_area()']]],
+ ['drdynvc_5fdata',['drdynvc_data',['../structrf__context.html#a2a708b989f3e12af802ab4266af39363',1,'rf_context']]],
+ ['dtype',['dtype',['../structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['dynres_5funlocked',['dynres_unlocked',['../struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a',1,'_RemminaConnectionObject']]]
+];
diff --git a/docs/search/variables_4.html b/docs/search/variables_4.html
new file mode 100644
index 000000000..d7db285ee
--- /dev/null
+++ b/docs/search/variables_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_4.js b/docs/search/variables_4.js
new file mode 100644
index 000000000..0e990bb5e
--- /dev/null
+++ b/docs/search/variables_4.js
@@ -0,0 +1,44 @@
+var searchData=
+[
+ ['edit_5fitem',['edit_item',['../struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45',1,'_RemminaAppletMenuClass']]],
+ ['edomain',['eDomain',['../structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed',1,'mpchanger_params']]],
+ ['egroup',['eGroup',['../structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348',1,'mpchanger_params']]],
+ ['encrypted_5fsettings_5fcache',['encrypted_settings_cache',['../remmina__plugin__manager_8c.html#a150a4a8a8dcd21a51008250bb38bce49',1,'remmina_plugin_manager.c']]],
+ ['encryption',['encryption',['../struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4',1,'_RemminaNXSession']]],
+ ['entry_5ffunc',['entry_func',['../struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e',1,'_RemminaEntryPlugin']]],
+ ['entry_5foptions_5ffile_5fname',['entry_options_file_name',['../struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5frecent_5fitems',['entry_options_recent_items',['../struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fscreenshot_5fname',['entry_options_screenshot_name',['../struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fscroll',['entry_options_scroll',['../struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5fport',['entry_options_ssh_port',['../struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepcnt',['entry_options_ssh_tcp_keepcnt',['../struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepidle',['entry_options_ssh_tcp_keepidle',['../struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fkeepintvl',['entry_options_ssh_tcp_keepintvl',['../struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196',1,'_RemminaPrefDialog']]],
+ ['entry_5foptions_5fssh_5ftcp_5fusrtimeout',['entry_options_ssh_tcp_usrtimeout',['../struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7',1,'_RemminaPrefDialog']]],
+ ['entry_5fquick_5fconnect_5fserver',['entry_quick_connect_server',['../struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095',1,'_RemminaMain']]],
+ ['entry_5fscrollback_5flines',['entry_scrollback_lines',['../struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189',1,'_RemminaPrefDialog']]],
+ ['entry_5funlock',['entry_unlock',['../struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109',1,'_RemminaUnlockDialog']]],
+ ['epassword1',['ePassword1',['../structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245',1,'mpchanger_params']]],
+ ['epassword2',['ePassword2',['../structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be',1,'mpchanger_params']]],
+ ['err',['err',['../struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4',1,'_RemminaPluginExecData']]],
+ ['error',['error',['../struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed',1,'_RemminaSSH::error()'],['../struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048',1,'_RemminaNXSession::error()']]],
+ ['error_5ffd',['error_fd',['../struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d',1,'_RemminaPluginXdmcpData']]],
+ ['error_5fmessage',['error_message',['../struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4',1,'_RemminaProtocolWidgetPriv']]],
+ ['eusername',['eUsername',['../structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809',1,'mpchanger_params']]],
+ ['event',['event',['../structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d',1,'remmina_plugin_rdp_ui_object']]],
+ ['event_5fbox',['event_box',['../struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc',1,'_RemminaProtocolWidget::event_box()'],['../struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded',1,'_RemminaScrolledViewport::event_box()']]],
+ ['event_5fdata',['event_data',['../struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6',1,'_RemminaPluginVncEvent']]],
+ ['event_5fhandle',['event_handle',['../structrf__context.html#a522c742a333cf0603dfa7d06a7376669',1,'rf_context']]],
+ ['event_5fpipe',['event_pipe',['../struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d',1,'_RemminaPluginNxData::event_pipe()'],['../structrf__context.html#a539feef609228a91c5e54d5da837bb7a',1,'rf_context::event_pipe()']]],
+ ['event_5fqueue',['event_queue',['../structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565',1,'rf_context']]],
+ ['event_5ftype',['event_type',['../struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0',1,'_RemminaPluginVncEvent']]],
+ ['eweekdays',['eweekdays',['../rmnews_8c.html#af4777302c760225b833206545e9f437d',1,'rmnews.c']]],
+ ['exec',['exec',['../struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7',1,'_RemminaSSHShell']]],
+ ['exec_5ffunc',['exec_func',['../struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17',1,'_RemminaToolPlugin']]],
+ ['exit_5fcallback',['exit_callback',['../struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a',1,'_RemminaSSHShell']]],
+ ['expanded_5fgroup',['expanded_group',['../struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a',1,'_RemminaMainPriv::expanded_group()'],['../struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5',1,'_RemminaPref::expanded_group()']]],
+ ['export_5ffunc',['export_func',['../struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1',1,'_RemminaFilePlugin']]],
+ ['export_5fhints',['export_hints',['../struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f',1,'_RemminaFilePlugin']]],
+ ['export_5ftest_5ffunc',['export_test_func',['../struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03',1,'_RemminaFilePlugin']]],
+ ['extended',['extended',['../structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e',1,'remmina_plugin_rdp_event']]]
+];
diff --git a/docs/search/variables_5.html b/docs/search/variables_5.html
new file mode 100644
index 000000000..7bbceeb0d
--- /dev/null
+++ b/docs/search/variables_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_5.js b/docs/search/variables_5.js
new file mode 100644
index 000000000..4eb6c902d
--- /dev/null
+++ b/docs/search/variables_5.js
@@ -0,0 +1,35 @@
+var searchData=
+[
+ ['features',['features',['../struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff',1,'_RemminaProtocolPlugin::features()'],['../struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d',1,'_RemminaProtocolWidgetPriv::features()']]],
+ ['fields_5fseparator',['fields_separator',['../struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7',1,'_RemminaStringListPriv']]],
+ ['file_5fget_5fint',['file_get_int',['../struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de',1,'_RemminaPluginService']]],
+ ['file_5fget_5fpath',['file_get_path',['../struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164',1,'_RemminaPluginService']]],
+ ['file_5fget_5fsecret',['file_get_secret',['../struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d',1,'_RemminaPluginService']]],
+ ['file_5fget_5fstring',['file_get_string',['../struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc',1,'_RemminaPluginService::file_get_string()'],['../structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2',1,'remmina_masterthread_exec_data::file_get_string()']]],
+ ['file_5fget_5fuser_5fdatadir',['file_get_user_datadir',['../struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f',1,'_RemminaPluginService']]],
+ ['file_5fmodel',['file_model',['../struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f',1,'_RemminaMainPriv']]],
+ ['file_5fmodel_5ffilter',['file_model_filter',['../struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c',1,'_RemminaMainPriv']]],
+ ['file_5fmodel_5fsort',['file_model_sort',['../struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd',1,'_RemminaMainPriv']]],
+ ['file_5fnew',['file_new',['../struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895',1,'_RemminaPluginService']]],
+ ['file_5fset_5fint',['file_set_int',['../struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb',1,'_RemminaPluginService']]],
+ ['file_5fset_5fstring',['file_set_string',['../struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3',1,'_RemminaPluginService']]],
+ ['file_5ftransfer_5fdialog',['file_transfer_dialog',['../struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e',1,'_RemminaPluginSpiceData']]],
+ ['file_5ftransfers',['file_transfers',['../struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781',1,'_RemminaPluginSpiceData']]],
+ ['file_5funsave_5fpasswords',['file_unsave_passwords',['../struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0',1,'_RemminaPluginService']]],
+ ['filechooserbutton_5foptions_5fdatadir_5fpath',['filechooserbutton_options_datadir_path',['../struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123',1,'_RemminaPrefDialog']]],
+ ['filechooserbutton_5foptions_5fscreenshots_5fpath',['filechooserbutton_options_screenshots_path',['../struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27',1,'_RemminaPrefDialog']]],
+ ['filename',['filename',['../struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674',1,'_RemminaAppletMenuItem::filename()'],['../struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07',1,'_RemminaFile::filename()'],['../structdistro__info.html#a1999084b11586bdb56bc2453fce7f633',1,'distro_info::filename()']]],
+ ['flags',['flags',['../structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c',1,'remmina_plugin_rdp_event']]],
+ ['floating_5ftoolbar_5fplacement',['floating_toolbar_placement',['../struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21',1,'_RemminaPref']]],
+ ['fontbutton_5fterminal_5ffont',['fontbutton_terminal_font',['../struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb',1,'_RemminaPrefDialog']]],
+ ['fontsmoothing_5fcheck',['fontsmoothing_check',['../struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6',1,'_RemminaPluginRdpsetGrid']]],
+ ['foreground',['foreground',['../struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867',1,'_RemminaColorPref']]],
+ ['format',['format',['../structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b',1,'rf_clipboard::format()'],['../structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b',1,'remmina_plugin_rdp_ui_object::format()']]],
+ ['formauthenticated',['formauthenticated',['../struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84',1,'_RemminaPluginWWWData']]],
+ ['ftp_5fclient_5fget_5fwaiting_5ftask',['ftp_client_get_waiting_task',['../structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43',1,'remmina_masterthread_exec_data']]],
+ ['ftp_5fclient_5fupdate_5ftask',['ftp_client_update_task',['../structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493',1,'remmina_masterthread_exec_data']]],
+ ['fullscreen_5fon_5fauto',['fullscreen_on_auto',['../struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b',1,'_RemminaPref']]],
+ ['fullscreen_5ftoolbar_5fvisibility',['fullscreen_toolbar_visibility',['../struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f',1,'_RemminaPref']]],
+ ['fun',['fun',['../remmina__trace__calls_8h.html#a64f3bfdd611684b04321d32f9bbb6c24',1,'fun():&#160;remmina_main.c'],['../remmina__main_8c.html#a64f3bfdd611684b04321d32f9bbb6c24',1,'fun():&#160;remmina_main.c']]],
+ ['func',['func',['../structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1',1,'remmina_masterthread_exec_data::func()'],['../structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172',1,'onMainThread_cb_data::func()'],['../structon_main_thread__cb__data.html#a2b555e0dc84d0475e25ec578ca05e19b',1,'onMainThread_cb_data::func()']]]
+];
diff --git a/docs/search/variables_6.html b/docs/search/variables_6.html
new file mode 100644
index 000000000..4eb162d67
--- /dev/null
+++ b/docs/search/variables_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_6.js b/docs/search/variables_6.js
new file mode 100644
index 000000000..f169badd6
--- /dev/null
+++ b/docs/search/variables_6.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['gcry_5fthread_5foption_5fpthread_5fimpl',['GCRY_THREAD_OPTION_PTHREAD_IMPL',['../remmina_8c.html#a3d760300165528383af409d2964d79d2',1,'remmina.c']]],
+ ['gcrypt_5fthread_5finitialized',['gcrypt_thread_initialized',['../remmina_8c.html#a87cf5ad579b1e914ce7ea788cead4104',1,'remmina.c']]],
+ ['get_5fpassword',['get_password',['../struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629',1,'_RemminaSecretPlugin']]],
+ ['get_5fplugin_5fscreenshot',['get_plugin_screenshot',['../struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4',1,'_RemminaProtocolPlugin']]],
+ ['get_5fpref_5fbody',['get_pref_body',['../struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989',1,'_RemminaPrefPlugin']]],
+ ['get_5fprofile_5fremote_5fheight',['get_profile_remote_height',['../struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa',1,'_RemminaPluginService']]],
+ ['get_5fprofile_5fremote_5fwidth',['get_profile_remote_width',['../struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a',1,'_RemminaPluginService']]],
+ ['get_5fserver_5fport',['get_server_port',['../struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f',1,'_RemminaPluginService']]],
+ ['gfx_5fh264_5favailable',['gfx_h264_available',['../rdp__plugin_8c.html#a18f77c3f0788ca8df08ebc80c72b553f',1,'rdp_plugin.c']]],
+ ['glyph',['glyph',['../structrf__glyph.html#ac258216d1331ac44afc01a3329357e94',1,'rf_glyph']]],
+ ['gmainthreadid',['gMainThreadID',['../remmina__masterthread__exec_8c.html#a8eeacd537241e5af184a2007c476baf0',1,'remmina_masterthread_exec.c']]],
+ ['gp',['gp',['../structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c',1,'remmina_masterthread_exec_data::gp()'],['../struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a',1,'_RemminaProtocolWidgetSignalData::gp()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a',1,'remmina_protocol_widget_dialog_mt_data_t::gp()'],['../struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210',1,'_RemminaSFTPClient::gp()'],['../structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb',1,'onMainThread_cb_data::gp()'],['../struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09',1,'_RemminaPluginVncCuttextParam::gp()']]],
+ ['grid',['grid',['../struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3',1,'_RemminaPluginRdpsetGrid']]],
+ ['group',['group',['../struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e',1,'_RemminaAppletMenuItem::group()'],['../struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09',1,'_RemminaGroupData::group()'],['../structmpchanger__params.html#a098952d194a183d4a505aa065797864b',1,'mpchanger_params::group()']]],
+ ['gruvbox_5fpalette',['gruvbox_palette',['../remmina__ssh__plugin_8c.html#afa1c17a29abc1a6b89929a73b89e7173',1,'remmina_ssh_plugin.c']]],
+ ['gsversion',['gsversion',['../struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c',1,'_RemminaIcon']]],
+ ['gtk_5flabel_5fset_5ftext',['gtk_label_set_text',['../structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4',1,'remmina_masterthread_exec_data']]],
+ ['gtk_5fsession',['gtk_session',['../struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69',1,'_RemminaPluginSpiceData']]],
+ ['gtksocket_5favailable',['gtksocket_available',['../struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662',1,'_RemminaPluginService']]],
+ ['gwtransp_5flist',['gwtransp_list',['../rdp__plugin_8c.html#aa3191c66b2dabbb1a3c3c5474c6e9626',1,'rdp_plugin.c']]]
+];
diff --git a/docs/search/variables_7.html b/docs/search/variables_7.html
new file mode 100644
index 000000000..040882958
--- /dev/null
+++ b/docs/search/variables_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_7.js b/docs/search/variables_7.js
new file mode 100644
index 000000000..89ac6c116
--- /dev/null
+++ b/docs/search/variables_7.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['h',['h',['../structregion.html#a585e1a437e6e8f8a80785aec2f2762c8',1,'region']]],
+ ['has_5ferror',['has_error',['../struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d',1,'_RemminaProtocolWidgetPriv']]],
+ ['has_5fevent',['has_event',['../struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8',1,'_RemminaAvahiPriv']]],
+ ['hbox',['hbox',['../struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['height',['height',['../struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e',1,'_RemminaPluginScreenshotData::height()'],['../struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380',1,'_RemminaProtocolWidgetPriv::height()'],['../structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649',1,'remmina_plugin_rdp_event::height()'],['../structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849',1,'remmina_plugin_rdp_ui_object::height()'],['../structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74',1,'onMainThread_cb_data::height()']]],
+ ['hide_5fconnection_5ftoolbar',['hide_connection_toolbar',['../struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e',1,'_RemminaPref']]],
+ ['hide_5fsearchbar',['hide_searchbar',['../struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101',1,'_RemminaPref']]],
+ ['hide_5ftoolbar',['hide_toolbar',['../struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd',1,'_RemminaPref']]],
+ ['history_5ftext',['history_text',['../struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea',1,'_RemminaChatWindow']]],
+ ['host',['host',['../struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed',1,'_RemminaTpChannelHandler']]],
+ ['hostkey',['hostkey',['../struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797',1,'_RemminaPref']]],
+ ['hostkey_5ffunc',['hostkey_func',['../struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326',1,'_RemminaProtocolWidgetPriv']]],
+ ['hostkeytypes',['hostkeytypes',['../struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a',1,'_RemminaSSH']]]
+];
diff --git a/docs/search/variables_8.html b/docs/search/variables_8.html
new file mode 100644
index 000000000..d54d09666
--- /dev/null
+++ b/docs/search/variables_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_8.js b/docs/search/variables_8.js
new file mode 100644
index 000000000..949c2ebd9
--- /dev/null
+++ b/docs/search/variables_8.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+ ['icon',['icon',['../struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626',1,'_RemminaIcon::icon()'],['../struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19',1,'_RemminaIcon::icon()']]],
+ ['icon_5fname',['icon_name',['../struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10',1,'_RemminaProtocolPlugin']]],
+ ['icon_5fname_5fssh',['icon_name_ssh',['../struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3',1,'_RemminaProtocolPlugin']]],
+ ['id',['id',['../struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20',1,'_RemminaProtocolFeature']]],
+ ['image_5fmenu_5fitem',['image_menu_item',['../struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4',1,'_RemminaAppletMenuItem']]],
+ ['import_5ffunc',['import_func',['../struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7',1,'_RemminaFilePlugin']]],
+ ['import_5ftest_5ffunc',['import_test_func',['../struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4',1,'_RemminaFilePlugin']]],
+ ['init',['init',['../struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2',1,'_RemminaProtocolPlugin::init()'],['../struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56',1,'_RemminaSecretPlugin::init()']]],
+ ['init_5ffunc',['init_func',['../struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211',1,'_RemminaProtocolWidgetPriv::init_func()'],['../struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d',1,'_RemminaSSHTunnel::init_func()']]],
+ ['init_5forder',['init_order',['../struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09',1,'_RemminaSecretPlugin']]],
+ ['init_5fsave_5fcreds',['init_save_creds',['../structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304',1,'remmina_masterthread_exec_data']]],
+ ['initialized',['initialized',['../struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f',1,'_RemminaMainPriv']]],
+ ['instance',['instance',['../structrf__context.html#a3a32bbd599b6684a3c41db9281863362',1,'rf_context']]],
+ ['interval',['interval',['../structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f',1,'rsSchedData']]],
+ ['is_5fmain_5fthread',['is_main_thread',['../struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b',1,'_RemminaPluginService']]],
+ ['is_5freconnecting',['is_reconnecting',['../structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8',1,'rf_context']]],
+ ['is_5fservice_5favailable',['is_service_available',['../struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4',1,'_RemminaSecretPlugin']]],
+ ['is_5ftunnel',['is_tunnel',['../struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6',1,'_RemminaSSH']]],
+ ['isinit',['isinit',['../remmina__unlock_8c.html#ac9ee6d79e7bae171521ccacc8e4c43ea',1,'isinit():&#160;remmina_unlock.c'],['../remmina__unlock_8h.html#ac9ee6d79e7bae171521ccacc8e4c43ea',1,'isinit():&#160;remmina_unlock.c']]],
+ ['item_5ftype',['item_type',['../struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa',1,'_RemminaAppletMenuItem']]],
+ ['iter',['iter',['../structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46',1,'mpchanger_params::iter()'],['../struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4',1,'_RemminaPluginNxData::iter()']]],
+ ['iterate_5fhandler',['iterate_handler',['../struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0',1,'_RemminaAvahiPriv']]]
+];
diff --git a/docs/search/variables_9.html b/docs/search/variables_9.html
new file mode 100644
index 000000000..234dc60a4
--- /dev/null
+++ b/docs/search/variables_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_9.js b/docs/search/variables_9.js
new file mode 100644
index 000000000..bbaef4e2f
--- /dev/null
+++ b/docs/search/variables_9.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['kex_5falgorithms',['kex_algorithms',['../struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed',1,'_RemminaSSH']]],
+ ['key',['key',['../struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f',1,'_RemminaPluginVncEvent']]],
+ ['key_5fcode',['key_code',['../structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151',1,'remmina_plugin_rdp_event']]],
+ ['key_5fevent',['key_event',['../structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2',1,'remmina_plugin_rdp_event']]],
+ ['keyboard_5flayout',['keyboard_layout',['../rdp__settings_8c.html#a75d6e28b9664511ab5b048727befbf63',1,'rdp_settings.c']]],
+ ['keyboard_5flayout_5fcombo',['keyboard_layout_combo',['../struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec',1,'_RemminaPluginRdpsetGrid']]],
+ ['keyboard_5flayout_5flabel',['keyboard_layout_label',['../struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5',1,'_RemminaPluginRdpsetGrid']]],
+ ['keyboard_5flayout_5fstore',['keyboard_layout_store',['../struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f',1,'_RemminaPluginRdpsetGrid']]],
+ ['keycode',['keycode',['../struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8',1,'_RemminaKeyVal']]],
+ ['keymap',['keymap',['../structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d',1,'rf_context']]],
+ ['keystrokes',['keystrokes',['../struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65',1,'_RemminaPref']]],
+ ['keyval',['keyval',['../struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f',1,'_RemminaKeyChooserArguments::keyval()'],['../struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712',1,'_RemminaKeyVal::keyval()'],['../struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87',1,'_RemminaPluginVncEvent::keyval()']]],
+ ['kioskmode',['kioskmode',['../remmina_8c.html#ab4a9a67c5372ff07b71d0558679ab7ae',1,'kioskmode():&#160;remmina.c'],['../remmina_8h.html#a806213b48f3332bbb4bb771ddde38ab1',1,'kioskmode():&#160;remmina.c']]]
+];
diff --git a/docs/search/variables_a.html b/docs/search/variables_a.html
new file mode 100644
index 000000000..089248815
--- /dev/null
+++ b/docs/search/variables_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_a.js b/docs/search/variables_a.js
new file mode 100644
index 000000000..637160a5d
--- /dev/null
+++ b/docs/search/variables_a.js
@@ -0,0 +1,32 @@
+var searchData=
+[
+ ['label',['label',['../struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4',1,'_RemminaProtocolSetting::label()'],['../structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6',1,'remmina_masterthread_exec_data::label()'],['../struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed',1,'_RemminaProtocolSettingOpt::label()'],['../struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a',1,'_RemminaPluginSpiceXferWidgets::label()']]],
+ ['label_5fpleasewait',['label_pleasewait',['../struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281',1,'PCon_Spinner']]],
+ ['label_5fstatus',['label_status',['../struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7',1,'_RemminaStringList']]],
+ ['label_5fterminal_5fbackground',['label_terminal_background',['../struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fbright_5fcolors',['label_terminal_bright_colors',['../struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fcursor_5fcolor',['label_terminal_cursor_color',['../struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fforeground',['label_terminal_foreground',['../struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d',1,'_RemminaPrefDialog']]],
+ ['label_5fterminal_5fnormal_5fcolors',['label_terminal_normal_colors',['../struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e',1,'_RemminaPrefDialog']]],
+ ['label_5ftitle',['label_title',['../struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933',1,'_RemminaStringList']]],
+ ['last_5fquickconnect_5fprotocol',['last_quickconnect_protocol',['../struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e',1,'_RemminaPref']]],
+ ['last_5fsuccess',['last_success',['../struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd',1,'_RemminaPref']]],
+ ['launch_5fitem',['launch_item',['../struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689',1,'_RemminaAppletMenuClass']]],
+ ['left',['left',['../structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559',1,'remmina_plugin_rdp_ui_object']]],
+ ['linux_5fpalette',['linux_palette',['../remmina__ssh__plugin_8c.html#a63257961dac038e3a3989eae9083c494',1,'remmina_ssh_plugin.c']]],
+ ['listen_5fmessage_5fpanel',['listen_message_panel',['../struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640',1,'_RemminaProtocolWidgetPriv']]],
+ ['listen_5fsock',['listen_sock',['../struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c',1,'_RemminaPluginVncData']]],
+ ['liststore_5fitems',['liststore_items',['../struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab',1,'_RemminaStringList']]],
+ ['load_5fevent',['load_event',['../struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436',1,'_RemminaPluginWWWData']]],
+ ['localdir',['localdir',['../struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9',1,'_RemminaFTPTask']]],
+ ['localdisplay',['localdisplay',['../struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1',1,'_RemminaSSHTunnel']]],
+ ['localport',['localport',['../struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260',1,'_RemminaSSHTunnel::localport()'],['../struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a',1,'_RemminaNXSession::localport()']]],
+ ['log_5fbuffer',['log_buffer',['../struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232',1,'_RemminaLogWindow::log_buffer()'],['../struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41',1,'_RemminaPluginExecData::log_buffer()']]],
+ ['log_5fcallback',['log_callback',['../struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7',1,'_RemminaNXSession']]],
+ ['log_5fprint',['log_print',['../struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de',1,'_RemminaPluginService']]],
+ ['log_5fprintf',['log_printf',['../struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d',1,'_RemminaPluginService']]],
+ ['log_5ftips',['log_tips',['../remmina__ssh__plugin_8c.html#a41ec447057568be598d38975bfe016d2',1,'remmina_ssh_plugin.c']]],
+ ['log_5fview',['log_view',['../struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087',1,'_RemminaLogWindow::log_view()'],['../struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1',1,'_RemminaPluginExecData::log_view()']]],
+ ['log_5fwindow',['log_window',['../remmina__log_8c.html#a6c06467e9ec98a4ccc6645291cd5d19a',1,'remmina_log.c']]],
+ ['loop',['loop',['../struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079',1,'MpRunInfo']]]
+];
diff --git a/docs/search/variables_b.html b/docs/search/variables_b.html
new file mode 100644
index 000000000..ea46965c3
--- /dev/null
+++ b/docs/search/variables_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_b.js b/docs/search/variables_b.js
new file mode 100644
index 000000000..f6122b543
--- /dev/null
+++ b/docs/search/variables_b.js
@@ -0,0 +1,29 @@
+var searchData=
+[
+ ['main_5factions',['main_actions',['../remmina__main_8c.html#af146cc1f982c98a9c8a5ac43cc1508f3',1,'remmina_main.c']]],
+ ['main_5fchannel',['main_channel',['../struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f',1,'_RemminaPluginSpiceData']]],
+ ['main_5fheight',['main_height',['../struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875',1,'_RemminaPref']]],
+ ['main_5fmaximize',['main_maximize',['../struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6',1,'_RemminaPref']]],
+ ['main_5fsort_5fcolumn_5fid',['main_sort_column_id',['../struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0',1,'_RemminaPref']]],
+ ['main_5fsort_5forder',['main_sort_order',['../struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4',1,'_RemminaPref']]],
+ ['main_5fwidth',['main_width',['../struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222',1,'_RemminaPref']]],
+ ['manager_5fdialog',['manager_dialog',['../struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b',1,'_RemminaPluginNxData']]],
+ ['manager_5fselected',['manager_selected',['../struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4',1,'_RemminaPluginNxData']]],
+ ['manager_5fstarted',['manager_started',['../struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82',1,'_RemminaPluginNxData']]],
+ ['master',['master',['../structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61',1,'remmina_masterthread_exec_data::master()'],['../struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f',1,'_RemminaSSHShell::master()']]],
+ ['max_5fchannels',['max_channels',['../struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6',1,'_RemminaSSHTunnel']]],
+ ['menu',['menu',['../struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f',1,'_RemminaAppletMenu']]],
+ ['menu_5fheader_5fbutton',['menu_header_button',['../struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec',1,'_RemminaMain']]],
+ ['menu_5fpopup',['menu_popup',['../struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6',1,'_RemminaMain']]],
+ ['menu_5fpopup_5ffull',['menu_popup_full',['../struct___remmina_main.html#a1575015519fedca001bb26e129331b62',1,'_RemminaMain']]],
+ ['menuanimation_5fcheck',['menuanimation_check',['../struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d',1,'_RemminaPluginRdpsetGrid']]],
+ ['menuitem_5fconnection_5fquit',['menuitem_connection_quit',['../struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a',1,'_RemminaMain']]],
+ ['menuitem_5fview_5fmode_5flist',['menuitem_view_mode_list',['../struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4',1,'_RemminaMain']]],
+ ['menuitem_5fview_5fmode_5ftree',['menuitem_view_mode_tree',['../struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0',1,'_RemminaMain']]],
+ ['message',['message',['../structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1',1,'remmina_masterthread_exec_data::message()'],['../structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e',1,'remmina_plugin_rdp_ui_object::message()']]],
+ ['messagepanel_5fsignals',['messagepanel_signals',['../remmina__message__panel_8c.html#ad7824aab39b78f2b1b1ce661213f8f1c',1,'remmina_message_panel.c']]],
+ ['monitor_5flayout',['monitor_layout',['../structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948',1,'remmina_plugin_rdp_event']]],
+ ['mouse_5fevent',['mouse_event',['../structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e',1,'remmina_plugin_rdp_event']]],
+ ['mp',['mp',['../structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050',1,'remmina_masterthread_exec_data::mp()'],['../struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5',1,'MpRunInfo::mp()']]],
+ ['mu',['mu',['../structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc',1,'onMainThread_cb_data']]]
+];
diff --git a/docs/search/variables_c.html b/docs/search/variables_c.html
new file mode 100644
index 000000000..94bf1a67c
--- /dev/null
+++ b/docs/search/variables_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_c.js b/docs/search/variables_c.js
new file mode 100644
index 000000000..ad0d3a2dc
--- /dev/null
+++ b/docs/search/variables_c.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+ ['name',['name',['../struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582',1,'_RemminaPlugin::name()'],['../struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4',1,'_RemminaProtocolPlugin::name()'],['../struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1',1,'_RemminaEntryPlugin::name()'],['../struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6',1,'_RemminaFilePlugin::name()'],['../struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af',1,'_RemminaToolPlugin::name()'],['../struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b',1,'_RemminaPrefPlugin::name()'],['../struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a',1,'_RemminaSecretPlugin::name()'],['../struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857',1,'_RemminaProtocolSetting::name()'],['../struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c',1,'_RemminaAppletMenuItem::name()'],['../struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd',1,'_RemminaGroupData::name()'],['../struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307',1,'_RemminaFTPTask::name()'],['../struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea',1,'_RemminaProtocolSettingOpt::name()'],['../structlsb__distro__info.html#a251763a49054183774e2082595537e47',1,'lsb_distro_info::name()'],['../structdistro__info.html#a27013edbc763fecb35337ca0affacfc2',1,'distro_info::name()']]],
+ ['new_5ftask',['new_task',['../struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343',1,'_RemminaFTPClientClass']]],
+ ['ninvalid',['ninvalid',['../structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb',1,'remmina_plugin_rdp_ui_object']]],
+ ['nocodec',['nocodec',['../structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34',1,'remmina_plugin_rdp_ui_object']]],
+ ['notebook_5fpreferences',['notebook_preferences',['../struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11',1,'_RemminaPrefDialog']]],
+ ['num_5fchannels',['num_channels',['../struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513',1,'_RemminaSSHTunnel']]],
+ ['nx',['nx',['../struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256',1,'_RemminaPluginNxData']]],
+ ['nx_5fdefault_5fprivate_5fkey',['nx_default_private_key',['../nx__session_8c.html#a2dc3db8078c966530a0790f208c9148c',1,'nx_session.c']]],
+ ['nx_5fhello_5fserver_5fmsg',['nx_hello_server_msg',['../nx__session_8c.html#ab16725d4a1ce169180b759b66492fc1d',1,'nx_session.c']]]
+];
diff --git a/docs/search/variables_d.html b/docs/search/variables_d.html
new file mode 100644
index 000000000..b9381e99e
--- /dev/null
+++ b/docs/search/variables_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_d.js b/docs/search/variables_d.js
new file mode 100644
index 000000000..d1bbac34b
--- /dev/null
+++ b/docs/search/variables_d.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['object_5fid_5fseq',['object_id_seq',['../structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960',1,'rf_context']]],
+ ['object_5ftable',['object_table',['../structrf__context.html#aafce196b029d2578151275acd07ccb82',1,'rf_context']]],
+ ['open_5fconnection',['open_connection',['../struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd',1,'_RemminaProtocolPlugin::open_connection()'],['../struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef',1,'_RemminaPluginService::open_connection()']]],
+ ['open_5fdir',['open_dir',['../struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7',1,'_RemminaFTPClientClass']]],
+ ['opt1',['opt1',['../struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952',1,'_RemminaProtocolFeature::opt1()'],['../struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0',1,'_RemminaProtocolSetting::opt1()'],['../struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20',1,'_RemminaProtocolSettingOpt::opt1()']]],
+ ['opt2',['opt2',['../struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d',1,'_RemminaProtocolFeature::opt2()'],['../struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167',1,'_RemminaProtocolSetting::opt2()'],['../struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867',1,'_RemminaProtocolSettingOpt::opt2()']]],
+ ['opt3',['opt3',['../struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190',1,'_RemminaProtocolFeature']]],
+ ['orig_5fhandler',['orig_handler',['../struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c',1,'_RemminaPluginNxData']]],
+ ['orig_5fkeycode',['orig_keycode',['../structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88',1,'remmina_plugin_rdp_keymap_entry']]],
+ ['orphaned',['orphaned',['../structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4',1,'rf_context']]],
+ ['output_5ffd',['output_fd',['../struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223',1,'_RemminaPluginXdmcpData']]],
+ ['output_5ffile_5fpath',['output_file_path',['../rmnews_8c.html#a565782499953048b5e51934123195e29',1,'rmnews.c']]],
+ ['override_5fview_5ffile_5fmode_5fto_5flist',['override_view_file_mode_to_list',['../struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76',1,'_RemminaMainPriv']]]
+];
diff --git a/docs/search/variables_e.html b/docs/search/variables_e.html
new file mode 100644
index 000000000..375ad705d
--- /dev/null
+++ b/docs/search/variables_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_e.js b/docs/search/variables_e.js
new file mode 100644
index 000000000..2d2fd1e81
--- /dev/null
+++ b/docs/search/variables_e.js
@@ -0,0 +1,107 @@
+var searchData=
+[
+ ['p',['p',['../structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92',1,'remmina_masterthread_exec_data']]],
+ ['palette',['palette',['../struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563',1,'_RemminaPluginSshData::palette()'],['../remmina__ssh__plugin_8c.html#aa960839fb967823a40ed5def846496a5',1,'palette():&#160;remmina_ssh_plugin.c']]],
+ ['parent',['parent',['../struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510',1,'_RemminaTpHandler']]],
+ ['parent_5fclass',['parent_class',['../struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab',1,'_RemminaConnectionWindowClass::parent_class()'],['../struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5',1,'_RemminaAppletMenuClass::parent_class()'],['../struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a',1,'_RemminaAppletMenuItemClass::parent_class()'],['../struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19',1,'_RemminaChatWindowClass::parent_class()'],['../struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f',1,'_RemminaFileEditorClass::parent_class()'],['../struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279',1,'_RemminaCellRendererPixbufClass::parent_class()'],['../struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce',1,'_RemminaFTPClientClass::parent_class()'],['../struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af',1,'_RemminaLogWindowClass::parent_class()'],['../struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2',1,'_RemminaProtocolWidgetClass::parent_class()'],['../struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f',1,'_RemminaScrolledViewportClass::parent_class()'],['../struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d',1,'_RemminaSFTPClientClass::parent_class()'],['../struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9',1,'_RemminaPluginRdpsetGridClass::parent_class()'],['../struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f',1,'_RemminaTpHandlerClass::parent_class()']]],
+ ['passphrase',['passphrase',['../struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529',1,'_RemminaSSH']]],
+ ['password',['password',['../structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e',1,'mpchanger_params::password()'],['../struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7',1,'_RemminaProtocolWidgetPriv::password()'],['../struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89',1,'_RemminaSSH::password()']]],
+ ['path',['path',['../structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9',1,'remmina_masterthread_exec_data']]],
+ ['pcount',['pcount',['../struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680',1,'ProfilesData']]],
+ ['pdatestr',['pdatestr',['../struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4',1,'ProfilesData']]],
+ ['periodic_5frmnews_5fget_5fcount',['periodic_rmnews_get_count',['../struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005',1,'_RemminaPref']]],
+ ['periodic_5frmnews_5flast_5fget',['periodic_rmnews_last_get',['../struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6',1,'_RemminaPref']]],
+ ['periodic_5frmnews_5fuuid_5fprefix',['periodic_rmnews_uuid_prefix',['../struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5flast_5fsent',['periodic_usage_stats_last_sent',['../struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5fpermitted',['periodic_usage_stats_permitted',['../struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3',1,'_RemminaPref']]],
+ ['periodic_5fusage_5fstats_5fuuid_5fprefix',['periodic_usage_stats_uuid_prefix',['../struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7',1,'_RemminaPref']]],
+ ['pflags',['pflags',['../structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8',1,'remmina_protocol_widget_dialog_mt_data_t']]],
+ ['pformatdatarequest',['pFormatDataRequest',['../structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c',1,'remmina_plugin_rdp_event']]],
+ ['pformatlist',['pFormatList',['../structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082',1,'remmina_plugin_rdp_event']]],
+ ['pid',['pid',['../struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739',1,'_RemminaPluginData::pid()'],['../struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca',1,'_RemminaPluginXdmcpData::pid()']]],
+ ['pixmap',['pixmap',['../structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b',1,'rf_bitmap::pixmap()'],['../structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22',1,'rf_glyph::pixmap()']]],
+ ['plugin',['plugin',['../struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0',1,'_RemminaProtocolWidgetPriv']]],
+ ['plugin_5fcan_5fscale',['plugin_can_scale',['../struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250',1,'_RemminaConnectionObject']]],
+ ['pointer',['pointer',['../structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf',1,'rf_pointer::pointer()'],['../structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed',1,'remmina_plugin_rdp_ui_object::pointer()'],['../struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895',1,'_RemminaPluginVncEvent::pointer()']]],
+ ['popup_5ftime',['popup_time',['../struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333',1,'_RemminaIcon']]],
+ ['port',['port',['../structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9',1,'remmina_masterthread_exec_data::port()'],['../struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc',1,'_RemminaSSH::port()'],['../struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc',1,'_RemminaSSHTunnel::port()'],['../struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107',1,'_RemminaTpChannelHandler::port()']]],
+ ['pos',['pos',['../structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e',1,'remmina_plugin_rdp_ui_object']]],
+ ['postconnect_5ferror',['postconnect_error',['../structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48',1,'rf_context']]],
+ ['pref_5fget_5fscale_5fquality',['pref_get_scale_quality',['../struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fssh_5floglevel',['pref_get_ssh_loglevel',['../struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fssh_5fparseconfig',['pref_get_ssh_parseconfig',['../struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fsshtunnel_5fport',['pref_get_sshtunnel_port',['../struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5',1,'_RemminaPluginService']]],
+ ['pref_5fget_5fvalue',['pref_get_value',['../struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9',1,'_RemminaPluginService']]],
+ ['pref_5fkeymap_5fget_5fkeyval',['pref_keymap_get_keyval',['../struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2',1,'_RemminaPluginService']]],
+ ['pref_5flabel',['pref_label',['../struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d',1,'_RemminaPrefPlugin']]],
+ ['pref_5fset_5fvalue',['pref_set_value',['../struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c',1,'_RemminaPluginService']]],
+ ['pressed',['pressed',['../struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8',1,'_RemminaPluginVncEvent']]],
+ ['pressed_5fkeys',['pressed_keys',['../structrf__context.html#a335c40ccb90ae472525b203c832e7701',1,'rf_context::pressed_keys()'],['../struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0',1,'_RemminaPluginVncData::pressed_keys()']]],
+ ['prevent_5fsaving',['prevent_saving',['../struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488',1,'_RemminaFile']]],
+ ['prevent_5fsnap_5fwelcome_5fmessage',['prevent_snap_welcome_message',['../struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7',1,'_RemminaPref']]],
+ ['priv',['priv',['../struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c',1,'_RemminaConnectionWindow::priv()'],['../struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a',1,'_RemminaAppletMenu::priv()'],['../struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb',1,'_RemminaAvahi::priv()'],['../struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a',1,'_RemminaFileEditor::priv()'],['../struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54',1,'_RemminaFTPClient::priv()'],['../struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980',1,'_RemminaMain::priv()'],['../struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb',1,'_RemminaPrefDialog::priv()'],['../struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6',1,'_RemminaProtocolWidget::priv()'],['../struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3',1,'_RemminaStringList::priv()']]],
+ ['privkeyfile',['privkeyfile',['../struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e',1,'_RemminaSSH']]],
+ ['profile_5fremote_5fheight',['profile_remote_height',['../struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca',1,'_RemminaProtocolWidgetPriv']]],
+ ['profile_5fremote_5fwidth',['profile_remote_width',['../struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10',1,'_RemminaProtocolWidgetPriv']]],
+ ['progress',['progress',['../struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe',1,'_RemminaPluginSpiceXferWidgets']]],
+ ['proto',['proto',['../struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995',1,'_RemminaConnectionObject']]],
+ ['proto_5fcount',['proto_count',['../struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef',1,'ProfilesData']]],
+ ['proto_5fdate',['proto_date',['../struct_profiles_data.html#a010a740c75d19daf63572f87565ae956',1,'ProfilesData']]],
+ ['proto_5fwidget',['proto_widget',['../struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545',1,'_RemminaTpChannelHandler']]],
+ ['protocol',['protocol',['../struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e',1,'_RemminaAppletMenuItem::protocol()'],['../struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a',1,'ProfilesData::protocol()'],['../struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659',1,'_RemminaTpChannelHandler::protocol()']]],
+ ['protocol_5fplugin_5fchanged_5fcertificate',['protocol_plugin_changed_certificate',['../struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5fclose',['protocol_plugin_chat_close',['../struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5fopen',['protocol_plugin_chat_open',['../struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fchat_5freceive',['protocol_plugin_chat_receive',['../struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fdesktop_5fresize',['protocol_plugin_desktop_resize',['../struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5femit_5fsignal',['protocol_plugin_emit_signal',['../struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fexpand',['protocol_plugin_get_expand',['../struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5ffile',['protocol_plugin_get_file',['../struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fheight',['protocol_plugin_get_height',['../struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fget_5fwidth',['protocol_plugin_get_width',['../struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fhas_5ferror',['protocol_plugin_has_error',['../struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fauth',['protocol_plugin_init_auth',['../struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fauthx509',['protocol_plugin_init_authx509',['../struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fcertificate',['protocol_plugin_init_certificate',['../struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fcacert',['protocol_plugin_init_get_cacert',['../struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fcacrl',['protocol_plugin_init_get_cacrl',['../struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fclientcert',['protocol_plugin_init_get_clientcert',['../struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fclientkey',['protocol_plugin_init_get_clientkey',['../struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fdomain',['protocol_plugin_init_get_domain',['../struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fpassword',['protocol_plugin_init_get_password',['../struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fsavepassword',['protocol_plugin_init_get_savepassword',['../struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fget_5fusername',['protocol_plugin_init_get_username',['../struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fhide',['protocol_plugin_init_hide',['../struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fsave_5fcred',['protocol_plugin_init_save_cred',['../struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow',['protocol_plugin_init_show',['../struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow_5flisten',['protocol_plugin_init_show_listen',['../struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5finit_5fshow_5fretry',['protocol_plugin_init_show_retry',['../struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fis_5fclosed',['protocol_plugin_is_closed',['../struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fregister_5fhostkey',['protocol_plugin_register_hostkey',['../struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsend_5fkeys_5fsignals',['protocol_plugin_send_keys_signals',['../struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fdisplay',['protocol_plugin_set_display',['../struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5ferror',['protocol_plugin_set_error',['../struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fexpand',['protocol_plugin_set_expand',['../struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fheight',['protocol_plugin_set_height',['../struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fset_5fwidth',['protocol_plugin_set_width',['../struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsignal_5fconnection_5fclosed',['protocol_plugin_signal_connection_closed',['../struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fsignal_5fconnection_5fopened',['protocol_plugin_signal_connection_opened',['../struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fssh_5fexec',['protocol_plugin_ssh_exec',['../struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5fdirect_5ftunnel',['protocol_plugin_start_direct_tunnel',['../struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5freverse_5ftunnel',['protocol_plugin_start_reverse_tunnel',['../struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fstart_5fxport_5ftunnel',['protocol_plugin_start_xport_tunnel',['../struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5funlock_5fdynres',['protocol_plugin_unlock_dynres',['../struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e',1,'_RemminaPluginService']]],
+ ['protocol_5fplugin_5fupdate_5falign',['protocol_plugin_update_align',['../struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d',1,'_RemminaPluginService']]],
+ ['protocol_5fwidget',['protocol_widget',['../structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3',1,'rf_context']]],
+ ['protocolwidget_5femit_5fsignal',['protocolwidget_emit_signal',['../structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpdestroy',['protocolwidget_mpdestroy',['../structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpprogress',['protocolwidget_mpprogress',['../structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fmpshowretry',['protocolwidget_mpshowretry',['../structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1',1,'remmina_masterthread_exec_data']]],
+ ['protocolwidget_5fpanelshowlisten',['protocolwidget_panelshowlisten',['../structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95',1,'remmina_masterthread_exec_data']]],
+ ['proxy_5fcookie',['proxy_cookie',['../struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5',1,'_RemminaNXSession']]],
+ ['proxy_5fpid',['proxy_pid',['../struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6',1,'_RemminaNXSession']]],
+ ['proxy_5fwatch_5fsource',['proxy_watch_source',['../struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4',1,'_RemminaNXSession']]],
+ ['proxycommand',['proxycommand',['../struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af',1,'_RemminaSSH']]],
+ ['pt_5fcond',['pt_cond',['../structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b',1,'remmina_masterthread_exec_data::pt_cond()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda',1,'remmina_protocol_widget_dialog_mt_data_t::pt_cond()']]],
+ ['pt_5fmutex',['pt_mutex',['../structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319',1,'remmina_masterthread_exec_data::pt_mutex()'],['../structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf',1,'remmina_protocol_widget_dialog_mt_data_t::pt_mutex()']]]
+];
diff --git a/docs/search/variables_f.html b/docs/search/variables_f.html
new file mode 100644
index 000000000..d37141866
--- /dev/null
+++ b/docs/search/variables_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/docs/search/variables_f.js b/docs/search/variables_f.js
new file mode 100644
index 000000000..4b1a9ed9b
--- /dev/null
+++ b/docs/search/variables_f.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+ ['quality_5fcombo',['quality_combo',['../struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b',1,'_RemminaPluginRdpsetGrid']]],
+ ['quality_5flist',['quality_list',['../nx__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;nx_plugin.c'],['../rdp__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;rdp_plugin.c'],['../vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7',1,'quality_list():&#160;vnc_plugin.c']]],
+ ['quality_5fstore',['quality_store',['../struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621',1,'_RemminaPluginRdpsetGrid']]],
+ ['quality_5fvalues',['quality_values',['../struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af',1,'_RemminaPluginRdpsetGrid']]],
+ ['query_5ffeature',['query_feature',['../struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de',1,'_RemminaProtocolPlugin']]],
+ ['queuecursor_5fhandler',['queuecursor_handler',['../struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fsurface',['queuecursor_surface',['../struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fx',['queuecursor_x',['../struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2',1,'_RemminaPluginVncData']]],
+ ['queuecursor_5fy',['queuecursor_y',['../struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fh',['queuedraw_h',['../struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fhandler',['queuedraw_handler',['../struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fw',['queuedraw_w',['../struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fx',['queuedraw_x',['../struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e',1,'_RemminaPluginVncData']]],
+ ['queuedraw_5fy',['queuedraw_y',['../struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e',1,'_RemminaPluginVncData']]],
+ ['quick_5fconnect_5fplugin_5flist',['quick_connect_plugin_list',['../remmina__main_8c.html#aace9ecdd0b74d392ad6ed541bd605c1c',1,'remmina_main.c']]]
+];
diff --git a/docs/spice__plugin_8c.html b/docs/spice__plugin_8c.html
new file mode 100644
index 000000000..05c9be921
--- /dev/null
+++ b/docs/spice__plugin_8c.html
@@ -0,0 +1,844 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">spice_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="spice__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ae6dceca96ec2c7a1b4aa211264a87ef6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a> = 1,
+<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a>,
+<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a>,
+<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a>,
+<br />
+&#160;&#160;<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a>,
+<a class="el" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a>
+<br />
+ }</td></tr>
+<tr class="separator:ae6dceca96ec2c7a1b4aa211264a87ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3d724d152ea404c75d370514962afebe"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">remmina_plugin_spice_channel_new_cb</a> (SpiceSession *, SpiceChannel *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a3d724d152ea404c75d370514962afebe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88b764fe9df97235875ba7b9f337c41d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a> (SpiceChannel *, SpiceChannelEvent, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a88b764fe9df97235875ba7b9f337c41d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0524df751040673aec5d62839c76a438"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a> (GObject *, GParamSpec *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a0524df751040673aec5d62839c76a438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bb09ec5a9744ac23907a07ad38ef1b9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">remmina_plugin_spice_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a8bb09ec5a9744ac23907a07ad38ef1b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d5d7d8022476b79a9e4b517adefa9a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">remmina_plugin_spice_select_usb_devices</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a4d5d7d8022476b79a9e4b517adefa9a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae54d54d84d43e029308869ff0fdc967c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">remmina_plugin_spice_file_transfer_new_cb</a> (SpiceMainChannel *, SpiceFileTransferTask *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:ae54d54d84d43e029308869ff0fdc967c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c883dd4ccf9e73e7efb763625d662bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4c883dd4ccf9e73e7efb763625d662bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa613e255347fa4f0a7718dd3f96c6ad4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa613e255347fa4f0a7718dd3f96c6ad4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d6055bfb90c38ca9808bcdfd54ab8cb"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2d6055bfb90c38ca9808bcdfd54ab8cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98f60b1a056aa5ab19c8fb5728d4915b"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">remmina_plugin_spice_ask_auth</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a98f60b1a056aa5ab19c8fb5728d4915b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96515e819c13b1eb4c4a1416df215317"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td></tr>
+<tr class="separator:a96515e819c13b1eb4c4a1416df215317"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d5a9190784bce617effa0b90e73a660"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">remmina_plugin_spice_send_ctrlaltdel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4d5a9190784bce617effa0b90e73a660"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6365349678c9474a169dd505d322b81a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a6365349678c9474a169dd505d322b81a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b4ee0d3b22a9a7b505819120fd5ab2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:ad4b4ee0d3b22a9a7b505819120fd5ab2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6772e43af47ffc62ab556770e3cb56c"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a> []</td></tr>
+<tr class="separator:aa6772e43af47ffc62ab556770e3cb56c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3dc7072fd3204a1231025c1ea664409"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a> []</td></tr>
+<tr class="separator:af3dc7072fd3204a1231025c1ea664409"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a656cda0ea6cda6991e94119284d3ae81"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a> []</td></tr>
+<tr class="separator:a656cda0ea6cda6991e94119284d3ae81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a394f5bc2fd2f06247702ffbf27a94998"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998">remmina_plugin_spice</a></td></tr>
+<tr class="separator:a394f5bc2fd2f06247702ffbf27a94998"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="ae6dceca96ec2c7a1b4aa211264a87ef6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6dceca96ec2c7a1b4aa211264a87ef6">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1"></a>REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7"></a>REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d"></a>REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278"></a>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa"></a>REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28"></a>REMMINA_PLUGIN_SPICE_FEATURE_SCALE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00039">39</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00501">501</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a98f60b1a056aa5ab19c8fb5728d4915b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98f60b1a056aa5ab19c8fb5728d4915b">&#9670;&nbsp;</a></span>remmina_plugin_spice_ask_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_spice_ask_auth </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00223">223</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad4b4ee0d3b22a9a7b505819120fd5ab2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4b4ee0d3b22a9a7b505819120fd5ab2">&#9670;&nbsp;</a></span>remmina_plugin_spice_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00385">385</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3d724d152ea404c75d370514962afebe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d724d152ea404c75d370514962afebe">&#9670;&nbsp;</a></span>remmina_plugin_spice_channel_new_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_channel_new_cb </td>
+ <td>(</td>
+ <td class="paramtype">SpiceSession *&#160;</td>
+ <td class="paramname"><em>session</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00174">174</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2d6055bfb90c38ca9808bcdfd54ab8cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d6055bfb90c38ca9808bcdfd54ab8cb">&#9670;&nbsp;</a></span>remmina_plugin_spice_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_spice_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00145">145</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0524df751040673aec5d62839c76a438"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0524df751040673aec5d62839c76a438">&#9670;&nbsp;</a></span>remmina_plugin_spice_display_ready_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_display_ready_cb </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>display</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GParamSpec *&#160;</td>
+ <td class="paramname"><em>param_spec</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00304">304</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae54d54d84d43e029308869ff0fdc967c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae54d54d84d43e029308869ff0fdc967c">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_new_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_spice_file_transfer_new_cb </td>
+ <td>(</td>
+ <td class="paramtype">SpiceMainChannel *&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceFileTransferTask *&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00056">56</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a4c883dd4ccf9e73e7efb763625d662bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c883dd4ccf9e73e7efb763625d662bb">&#9670;&nbsp;</a></span>remmina_plugin_spice_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00062">62</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a96515e819c13b1eb4c4a1416df215317"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96515e819c13b1eb4c4a1416df215317">&#9670;&nbsp;</a></span>remmina_plugin_spice_keystroke()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_keystroke </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint&#160;</td>
+ <td class="paramname"><em>keystrokes</em>[], </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gint&#160;</td>
+ <td class="paramname"><em>keylen</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00331">331</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a88b764fe9df97235875ba7b9f337c41d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88b764fe9df97235875ba7b9f337c41d">&#9670;&nbsp;</a></span>remmina_plugin_spice_main_channel_event_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_main_channel_event_cb </td>
+ <td>(</td>
+ <td class="paramtype">SpiceChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceChannelEvent&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00260">260</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa613e255347fa4f0a7718dd3f96c6ad4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa613e255347fa4f0a7718dd3f96c6ad4">&#9670;&nbsp;</a></span>remmina_plugin_spice_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_spice_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00094">94</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6365349678c9474a169dd505d322b81a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6365349678c9474a169dd505d322b81a">&#9670;&nbsp;</a></span>remmina_plugin_spice_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_spice_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00378">378</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4d5d7d8022476b79a9e4b517adefa9a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d5d7d8022476b79a9e4b517adefa9a4">&#9670;&nbsp;</a></span>remmina_plugin_spice_select_usb_devices()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_spice_select_usb_devices </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__usb_8c_source.html#l00039">39</a> of file <a class="el" href="spice__plugin__usb_8c_source.html">spice_plugin_usb.c</a>.</p>
+
+</div>
+</div>
+<a id="a4d5a9190784bce617effa0b90e73a660"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d5a9190784bce617effa0b90e73a660">&#9670;&nbsp;</a></span>remmina_plugin_spice_send_ctrlaltdel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_send_ctrlaltdel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00345">345</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8bb09ec5a9744ac23907a07ad38ef1b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bb09ec5a9744ac23907a07ad38ef1b9">&#9670;&nbsp;</a></span>remmina_plugin_spice_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00354">354</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00048">48</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a394f5bc2fd2f06247702ffbf27a94998"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a394f5bc2fd2f06247702ffbf27a94998">&#9670;&nbsp;</a></span>remmina_plugin_spice</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_spice</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;SPICE&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SPICE - Simple Protocol for Independent Computing Environments&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <span class="stringliteral">&quot;remmina-spice-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-spice-ssh-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a>, </div><div class="line"> <a class="code" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a>, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="spice__plugin_8c_html_a656cda0ea6cda6991e94119284d3ae81"><div class="ttname"><a href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_spice_features[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00466">spice_plugin.c:466</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a96515e819c13b1eb4c4a1416df215317"><div class="ttname"><a href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a></div><div class="ttdeci">static void remmina_plugin_spice_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00331">spice_plugin.c:331</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a6365349678c9474a169dd505d322b81a"><div class="ttname"><a href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00378">spice_plugin.c:378</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_aa613e255347fa4f0a7718dd3f96c6ad4"><div class="ttname"><a href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00094">spice_plugin.c:94</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_aa6772e43af47ffc62ab556770e3cb56c"><div class="ttname"><a href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_spice_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00434">spice_plugin.c:434</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ad4b4ee0d3b22a9a7b505819120fd5ab2"><div class="ttname"><a href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a></div><div class="ttdeci">static void remmina_plugin_spice_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00385">spice_plugin.c:385</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_af3dc7072fd3204a1231025c1ea664409"><div class="ttname"><a href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_spice_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00453">spice_plugin.c:453</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a4c883dd4ccf9e73e7efb763625d662bb"><div class="ttname"><a href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a></div><div class="ttdeci">static void remmina_plugin_spice_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00062">spice_plugin.c:62</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a2d6055bfb90c38ca9808bcdfd54ab8cb"><div class="ttname"><a href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00145">spice_plugin.c:145</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00478">478</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af3dc7072fd3204a1231025c1ea664409"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3dc7072fd3204a1231025c1ea664409">&#9670;&nbsp;</a></span>remmina_plugin_spice_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_spice_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enableaudio&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Enable audio channel&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;resizeguest&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Resize guest to match window size&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share smart card&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;viewonly&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>), TRUE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, TRUE, NULL, NULL}</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00453">453</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6772e43af47ffc62ab556770e3cb56c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6772e43af47ffc62ab556770e3cb56c">&#9670;&nbsp;</a></span>remmina_plugin_spice_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_spice_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;usetls&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use TLS encryption&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;cacert&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Server CA certificate&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sharefolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share folder&quot;</span>), FALSE, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL}</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</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#l00089">types.h:89</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00434">434</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a656cda0ea6cda6991e94119284d3ae81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a656cda0ea6cda6991e94119284d3ae81">&#9670;&nbsp;</a></span>remmina_plugin_spice_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_spice_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;viewonly&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;resizeguest&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Resize guest to match window size&quot;</span>)},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>)},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Select USB devices for redirection&quot;</span>), NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a>, NULL, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL}</div><div class="line">}</div><div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00044">spice_plugin.c:44</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00041">spice_plugin.c:41</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00043">spice_plugin.c:43</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00045">spice_plugin.c:45</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00040">spice_plugin.c:40</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00042">spice_plugin.c:42</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8c_source.html#l00466">466</a> of file <a class="el" href="spice__plugin_8c_source.html">spice_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin_8c.html">spice_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin_8c.js b/docs/spice__plugin_8c.js
new file mode 100644
index 000000000..130ef4d79
--- /dev/null
+++ b/docs/spice__plugin_8c.js
@@ -0,0 +1,29 @@
+var spice__plugin_8c =
+[
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1", null ],
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7", null ],
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d", null ],
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278", null ],
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa", null ],
+ [ "REMMINA_PLUGIN_SPICE_FEATURE_SCALE", "spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28", null ],
+ [ "remmina_plugin_entry", "spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_spice_ask_auth", "spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b", null ],
+ [ "remmina_plugin_spice_call_feature", "spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2", null ],
+ [ "remmina_plugin_spice_channel_new_cb", "spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe", null ],
+ [ "remmina_plugin_spice_close_connection", "spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb", null ],
+ [ "remmina_plugin_spice_display_ready_cb", "spice__plugin_8c.html#a0524df751040673aec5d62839c76a438", null ],
+ [ "remmina_plugin_spice_file_transfer_new_cb", "spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c", null ],
+ [ "remmina_plugin_spice_init", "spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb", null ],
+ [ "remmina_plugin_spice_keystroke", "spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317", null ],
+ [ "remmina_plugin_spice_main_channel_event_cb", "spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d", null ],
+ [ "remmina_plugin_spice_open_connection", "spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4", null ],
+ [ "remmina_plugin_spice_query_feature", "spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a", null ],
+ [ "remmina_plugin_spice_select_usb_devices", "spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4", null ],
+ [ "remmina_plugin_spice_send_ctrlaltdel", "spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660", null ],
+ [ "remmina_plugin_spice_update_scale", "spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9", null ],
+ [ "remmina_plugin_service", "spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_spice", "spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998", null ],
+ [ "remmina_plugin_spice_advanced_settings", "spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409", null ],
+ [ "remmina_plugin_spice_basic_settings", "spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c", null ],
+ [ "remmina_plugin_spice_features", "spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81", null ]
+]; \ No newline at end of file
diff --git a/docs/spice__plugin_8c_source.html b/docs/spice__plugin_8c_source.html
new file mode 100644
index 000000000..38666693a
--- /dev/null
+++ b/docs/spice__plugin_8c_source.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">spice_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="spice__plugin_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) 2016-2018 Denis Ollier</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="spice__plugin_8h.html">spice_plugin.h</a>&quot;</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">#define XSPICE_DEFAULT_PORT 5900</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">enum</span> {</div><div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1"> 40</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a> = 1,</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7"> 41</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a>,</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d"> 42</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a>,</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278"> 43</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a>,</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa"> 44</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28"> 45</a></span>&#160; <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;};</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="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 48</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">remmina_plugin_spice_channel_new_cb</a>(SpiceSession *, SpiceChannel *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a>(SpiceChannel *, SpiceChannelEvent, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a>(GObject *, GParamSpec *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">remmina_plugin_spice_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">remmina_plugin_spice_select_usb_devices</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#ifdef SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">remmina_plugin_spice_file_transfer_new_cb</a>(SpiceMainChannel *, SpiceFileTransferTask *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"># endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION(0, 31, 0) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION */</span><span class="preprocessor"></span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb"> 62</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a>, 1);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a> = spice_session_new();</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; g_signal_connect(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="stringliteral">&quot;channel-new&quot;</span>,</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">remmina_plugin_spice_channel_new_cb</a>),</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; gp);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="stringliteral">&quot;password&quot;</span>, g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>)),</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="stringliteral">&quot;read-only&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE),</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="stringliteral">&quot;enable-audio&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enableaudio&quot;</span>, FALSE),</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="stringliteral">&quot;enable-smartcard&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, FALSE),</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="stringliteral">&quot;shared-dir&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sharefolder&quot;</span>),</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; NULL);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">gtk_session</a> = spice_gtk_session_get(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">gtk_session</a>,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="stringliteral">&quot;auto-clipboard&quot;</span>,</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; !remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE),</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; NULL);</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;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4"> 94</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; gint port;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">const</span> gchar *cacert;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; gchar *host, *tunnel;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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">/* Setup SSH tunnel if needed */</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; tunnel = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, XSPICE_DEFAULT_PORT, FALSE);</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="keywordflow">if</span> (!tunnel) {</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 111</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(tunnel,</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; XSPICE_DEFAULT_PORT,</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; &amp;host,</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; &amp;port);</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; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="stringliteral">&quot;host&quot;</span>, host, NULL);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; g_free(host);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; g_free(tunnel);</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="comment">/* Unencrypted connection */</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;usetls&quot;</span>, FALSE)) {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="stringliteral">&quot;port&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, port), NULL);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; }</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="comment">/* TLS encrypted connection */</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">else</span>{</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="stringliteral">&quot;tls_port&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, port), NULL);</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="comment">/* Server CA certificate */</span></div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; cacert = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacert&quot;</span>);</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span> (cacert) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="stringliteral">&quot;ca-file&quot;</span>, cacert, NULL);</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; }</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; spice_session_connect(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> * FIXME: Add a waiting loop until the g_signal &quot;channel-event&quot; occurs.</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> * If the event is SPICE_CHANNEL_OPENED, TRUE should be returned,</span></div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> * otherwise FALSE should be returned.</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;}</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb"> 145</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</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"> 150</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">main_channel</a>) {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; g_signal_handlers_disconnect_by_func(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">main_channel</a>,</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a>),</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; gp);</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"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>) {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; spice_session_disconnect(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; g_object_unref(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a> = NULL;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</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="preprocessor">#ifdef SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>) {</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; g_hash_table_unref(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>);</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;<span class="preprocessor"># endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION(0, 31, 0) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION */</span><span class="preprocessor"></span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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"><a class="line" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe"> 174</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">remmina_plugin_spice_channel_new_cb</a>(SpiceSession *<a class="code" href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a>, SpiceChannel *channel, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</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; gint id;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; g_object_get(channel, <span class="stringliteral">&quot;channel-id&quot;</span>, &amp;<span class="keywordtype">id</span>, NULL);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">if</span> (SPICE_IS_MAIN_CHANNEL(channel)) {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">main_channel</a> = SPICE_MAIN_CHANNEL(channel);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; g_signal_connect(channel,</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="stringliteral">&quot;channel-event&quot;</span>,</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a>),</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; gp);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor">#ifdef SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</span></div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; g_signal_connect(channel,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="stringliteral">&quot;new-file-transfer&quot;</span>,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">remmina_plugin_spice_file_transfer_new_cb</a>),</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; gp);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor"># endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION(0, 31, 0) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION */</span><span class="preprocessor"></span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</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; <span class="keywordflow">if</span> (SPICE_IS_DISPLAY_CHANNEL(channel)) {</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">display_channel</a> = SPICE_DISPLAY_CHANNEL(channel);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a> = spice_display_new(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="keywordtype">id</span>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; g_signal_connect(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>,</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="stringliteral">&quot;notify::ready&quot;</span>,</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a>),</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; gp);</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a>(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>), NULL, gp);</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"> 210</span>&#160; <span class="keywordflow">if</span> (SPICE_IS_PLAYBACK_CHANNEL(channel)) {</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enableaudio&quot;</span>, FALSE)) {</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">audio</a> = spice_audio_get(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, NULL);</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="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordflow">if</span> (SPICE_IS_WEBDAV_CHANNEL(channel)) {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;sharefolder&quot;</span>)) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; spice_channel_connect(channel);</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"> 221</span>&#160;}</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"><a class="line" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b"> 223</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">remmina_plugin_spice_ask_auth</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</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; gint ret;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; gchar *s_password;</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; gboolean save;</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; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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"> 235</span>&#160; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</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; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>),</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; _(<span class="stringliteral">&quot;Enter SPICE password&quot;</span>),</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; NULL,</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; NULL,</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; NULL);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; s_password = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, s_password);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</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">else</span> {</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; }</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, <span class="stringliteral">&quot;password&quot;</span>, s_password, NULL);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">return</span> TRUE;</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"><a class="line" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d"> 260</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a>(SpiceChannel *channel, SpiceChannelEvent event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; gchar *server;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; gint port;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">switch</span> (event) {</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_CLOSED:</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>),</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; XSPICE_DEFAULT_PORT,</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; &amp;server,</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; &amp;port);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Disconnected from the SPICE server \&quot;%s\&quot;.&quot;</span>), server);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; g_free(server);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>(gp);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_OPENED:</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_ERROR_AUTH:</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">remmina_plugin_spice_ask_auth</a>(gp)) {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a>(gp);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }<span class="keywordflow">else</span>{</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="comment">/* Connection is cancelled by the user by clicking cancel on auth panel, close it without showing errors */</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="comment">// remmina_plugin_service-&gt;protocol_plugin_set_error(gp, _(&quot;Invalid password.&quot;));</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>(gp);</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; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_ERROR_TLS:</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;TLS connection error.&quot;</span>));</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>(gp);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_ERROR_IO:</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_ERROR_LINK:</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordflow">case</span> SPICE_CHANNEL_ERROR_CONNECT:</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Connection to the SPICE server dropped.&quot;</span>));</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>(gp);</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; }</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;}</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"><a class="line" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438"> 304</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a>(GObject *display, GParamSpec *param_spec, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;{</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; gboolean ready;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; g_object_get(display, <span class="stringliteral">&quot;ready&quot;</span>, &amp;ready, NULL);</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; <span class="keywordflow">if</span> (ready) {</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; g_signal_handlers_disconnect_by_func(display,</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a>),</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; gp);</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; g_object_set(display,</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="stringliteral">&quot;scaling&quot;</span>, (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp) != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>),</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="stringliteral">&quot;resize-guest&quot;</span>, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resizeguest&quot;</span>, FALSE),</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; NULL);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; gtk_container_add(GTK_CONTAINER(gp), GTK_WIDGET(display));</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; gtk_widget_show(GTK_WIDGET(display));</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, GTK_WIDGET(display));</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; }</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;}</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="comment">/* Send a keystroke to the plugin window */</span></div><div class="line"><a name="l00331"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317"> 331</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> guint keystrokes[], <span class="keyword">const</span> gint keylen)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>) {</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; spice_display_send_keys(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>,</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; keystrokes,</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; keylen,</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; SPICE_DISPLAY_KEY_EVENT_CLICK);</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</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;</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment">/* Send CTRL+ALT+DEL keys keystrokes to the plugin socket widget */</span></div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660"> 345</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">remmina_plugin_spice_send_ctrlaltdel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;{</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; guint keys[] = { GDK_KEY_Control_L, GDK_KEY_Alt_L, GDK_KEY_Delete };</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; <a class="code" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a>(gp, keys, G_N_ELEMENTS(keys));</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"><a class="line" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9"> 354</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">remmina_plugin_spice_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;{</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; gint scale, width, height;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; scale = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;scale&quot;</span>, FALSE);</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>, <span class="stringliteral">&quot;scaling&quot;</span>, scale, NULL);</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordflow">if</span> (scale) {</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="comment">/* In scaled mode, the SpiceDisplay will get its dimensions from its parent */</span></div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>), -1, -1 );</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="comment">/* In non scaled mode, the plugins forces dimensions of the SpiceDisplay */</span></div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; g_object_get(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">display_channel</a>,</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="stringliteral">&quot;width&quot;</span>, &amp;width,</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="stringliteral">&quot;height&quot;</span>, &amp;height,</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; NULL);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>), width, height);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; }</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;}</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;</div><div class="line"><a name="l00378"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a"> 378</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</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"> 380</span>&#160; TRACE_CALL(__func__);</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">return</span> TRUE;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;}</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div><div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2"> 385</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a>:</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>,</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="stringliteral">&quot;read-only&quot;</span>,</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE),</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; NULL);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a>:</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>,</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="stringliteral">&quot;resize-guest&quot;</span>,</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;resizeguest&quot;</span>, TRUE),</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; NULL);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a>:</div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; g_object_set(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">gtk_session</a>,</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="stringliteral">&quot;auto-clipboard&quot;</span>,</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; !remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE),</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; NULL);</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; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a>:</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <a class="code" href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">remmina_plugin_spice_update_scale</a>(gp);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a>:</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; <a class="code" href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">remmina_plugin_spice_send_ctrlaltdel</a>(gp);</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; <span class="keywordflow">case</span> <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a>:</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">remmina_plugin_spice_select_usb_devices</a>(gp);</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; }</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;}</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c"> 434</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a>[] =</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; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL},</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;usetls&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use TLS encryption&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>, <span class="stringliteral">&quot;cacert&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Server CA certificate&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>, <span class="stringliteral">&quot;sharefolder&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share folder&quot;</span>), FALSE, NULL, NULL},</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL}</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;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00453"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409"> 453</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a>[] =</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"> 455</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enableaudio&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Enable audio channel&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;resizeguest&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Resize guest to match window size&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;sharesmartcard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Share smart card&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;viewonly&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>), TRUE, NULL, NULL},</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, TRUE, NULL, NULL}</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;};</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81"> 466</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a>[] =</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;{</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;viewonly&quot;</span>,</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>) },</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;resizeguest&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Resize guest to match window size&quot;</span>)},</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a>, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>)},</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL},</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Select USB devices for redirection&quot;</span>), NULL, NULL},</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, <a class="code" href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a>, NULL, NULL, NULL},</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL}</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"><a class="line" href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998"> 478</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998">remmina_plugin_spice</a> =</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; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="stringliteral">&quot;SPICE&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;SPICE - Simple Protocol for Independent Computing Environments&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="stringliteral">&quot;remmina-spice-symbolic&quot;</span>, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="stringliteral">&quot;remmina-spice-ssh-symbolic&quot;</span>, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <a class="code" href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <a class="code" href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <a class="code" href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <a class="code" href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <a class="code" href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <a class="code" href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a>, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; NULL <span class="comment">// No screenshot support available</span></div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;};</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00501"></a><span class="lineno"><a class="line" href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 501</a></span>&#160;<a class="code" href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;{</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_spice)) {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; }</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;}</div><div class="ttc" id="spice__plugin_8c_html_a656cda0ea6cda6991e94119284d3ae81"><div class="ttname"><a href="spice__plugin_8c.html#a656cda0ea6cda6991e94119284d3ae81">remmina_plugin_spice_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_spice_features[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00466">spice_plugin.c:466</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a5f24bd5d68722f7e265c0d61c89257ad"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">_RemminaPluginSpiceData::display</a></div><div class="ttdeci">SpiceDisplay * display</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00055">spice_plugin.h:55</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae97f4052c4bbda628682ae071ada27ed"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService::remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode(* remmina_protocol_widget_get_current_scale_mode)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00154">plugin.h:154</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a913ab805b98fd1f69ee85765733d16aa">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_USBREDIR</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00044">spice_plugin.c:44</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a96515e819c13b1eb4c4a1416df215317"><div class="ttname"><a href="spice__plugin_8c.html#a96515e819c13b1eb4c4a1416df215317">remmina_plugin_spice_keystroke</a></div><div class="ttdeci">static void remmina_plugin_spice_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00331">spice_plugin.c:331</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a394f5bc2fd2f06247702ffbf27a94998"><div class="ttname"><a href="spice__plugin_8c.html#a394f5bc2fd2f06247702ffbf27a94998">remmina_plugin_spice</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_spice</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00478">spice_plugin.c:478</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a88b764fe9df97235875ba7b9f337c41d"><div class="ttname"><a href="spice__plugin_8c.html#a88b764fe9df97235875ba7b9f337c41d">remmina_plugin_spice_main_channel_event_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_main_channel_event_cb(SpiceChannel *, SpiceChannelEvent, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00260">spice_plugin.c:260</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a71709da583c41e2eb47236fc94e310d6"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">_RemminaPluginSpiceData::display_channel</a></div><div class="ttdeci">SpiceDisplayChannel * display_channel</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00056">spice_plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00053">spice_plugin.h:53</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a81609f1f6e0072a78a2df6821e37f7b7">REMMINA_PLUGIN_SPICE_FEATURE_PREF_RESIZEGUEST</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00041">spice_plugin.c:41</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a6365349678c9474a169dd505d322b81a"><div class="ttname"><a href="spice__plugin_8c.html#a6365349678c9474a169dd505d322b81a">remmina_plugin_spice_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00378">spice_plugin.c:378</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a712404956a8e5ca842dd290700250781"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">_RemminaPluginSpiceData::file_transfers</a></div><div class="ttdeci">GHashTable * file_transfers</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00064">spice_plugin.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ab8e58c2e2b8f0c94101c892ff98c4278">REMMINA_PLUGIN_SPICE_FEATURE_TOOL_SENDCTRLALTDEL</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00043">spice_plugin.c:43</a></div></div>
+<div class="ttc" id="spice__plugin_8h_html"><div class="ttname"><a href="spice__plugin_8h.html">spice_plugin.h</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af2b857b2de1af3621f543b810f68b17b"><div class="ttname"><a href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService::protocol_plugin_init_get_savepassword</a></div><div class="ttdeci">gboolean(* protocol_plugin_init_get_savepassword)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00178">plugin.h:178</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a4d5d7d8022476b79a9e4b517adefa9a4"><div class="ttname"><a href="spice__plugin_8c.html#a4d5d7d8022476b79a9e4b517adefa9a4">remmina_plugin_spice_select_usb_devices</a></div><div class="ttdeci">void remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__usb_8c_source.html#l00039">spice_plugin_usb.c:39</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6a67d7c8f0daf1509c7404eb0a9062bf28">REMMINA_PLUGIN_SPICE_FEATURE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00045">spice_plugin.c:45</a></div></div>
+<div class="ttc" id="rmnews_8c_html_a175c6dbec04bf34e3f2a5bd791d2d336"><div class="ttname"><a href="rmnews_8c.html#a175c6dbec04bf34e3f2a5bd791d2d336">session</a></div><div class="ttdeci">static SoupSession * session</div><div class="ttdef"><b>Definition:</b> <a href="rmnews_8c_source.html#l00077">rmnews.c:77</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_aa613e255347fa4f0a7718dd3f96c6ad4"><div class="ttname"><a href="spice__plugin_8c.html#aa613e255347fa4f0a7718dd3f96c6ad4">remmina_plugin_spice_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00094">spice_plugin.c:94</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae54d54d84d43e029308869ff0fdc967c"><div class="ttname"><a href="spice__plugin_8c.html#ae54d54d84d43e029308869ff0fdc967c">remmina_plugin_spice_file_transfer_new_cb</a></div><div class="ttdeci">void remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *, SpiceFileTransferTask *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00056">spice_plugin_file_transfer.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a1420dc8738b8485e95441823b4157f69"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">_RemminaPluginSpiceData::gtk_session</a></div><div class="ttdeci">SpiceGtkSession * gtk_session</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00057">spice_plugin.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9b4cfe0a97a34260e58784feef693704"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService::protocol_plugin_init_auth</a></div><div class="ttdeci">gint(* protocol_plugin_init_auth)(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00172">plugin.h:172</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a0524df751040673aec5d62839c76a438"><div class="ttname"><a href="spice__plugin_8c.html#a0524df751040673aec5d62839c76a438">remmina_plugin_spice_display_ready_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_display_ready_cb(GObject *, GParamSpec *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00304">spice_plugin.c:304</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a1c88ad311d86fb0de1dc441150a7da02"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">_RemminaPluginSpiceData::audio</a></div><div class="ttdeci">SpiceAudio * audio</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00054">spice_plugin.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00118">types.h:118</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_aa6772e43af47ffc62ab556770e3cb56c"><div class="ttname"><a href="spice__plugin_8c.html#aa6772e43af47ffc62ab556770e3cb56c">remmina_plugin_spice_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_spice_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00434">spice_plugin.c:434</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad98eaa3efc0214bc701dc66b5730e174"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService::protocol_plugin_init_get_password</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_password)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00176">plugin.h:176</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a8bb09ec5a9744ac23907a07ad38ef1b9"><div class="ttname"><a href="spice__plugin_8c.html#a8bb09ec5a9744ac23907a07ad38ef1b9">remmina_plugin_spice_update_scale</a></div><div class="ttdeci">static void remmina_plugin_spice_update_scale(RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00354">spice_plugin.c:354</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ad4b4ee0d3b22a9a7b505819120fd5ab2"><div class="ttname"><a href="spice__plugin_8c.html#ad4b4ee0d3b22a9a7b505819120fd5ab2">remmina_plugin_spice_call_feature</a></div><div class="ttdeci">static void remmina_plugin_spice_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00385">spice_plugin.c:385</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a8be20a82752da9a4f7790b3aa8a92633"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">_RemminaPluginSpiceData::session</a></div><div class="ttdeci">SpiceSession * session</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00059">spice_plugin.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a98f60b1a056aa5ab19c8fb5728d4915b"><div class="ttname"><a href="spice__plugin_8c.html#a98f60b1a056aa5ab19c8fb5728d4915b">remmina_plugin_spice_ask_auth</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_ask_auth(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00223">spice_plugin.c:223</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a57a077aa61d1eb205cb23db22ffd891f"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">_RemminaPluginSpiceData::main_channel</a></div><div class="ttdeci">SpiceMainChannel * main_channel</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00058">spice_plugin.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_af3dc7072fd3204a1231025c1ea664409"><div class="ttname"><a href="spice__plugin_8c.html#af3dc7072fd3204a1231025c1ea664409">remmina_plugin_spice_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_spice_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00453">spice_plugin.c:453</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="spice__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00501">spice_plugin.c:501</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6ac0cdff2ecbe3da84d4ed6af8fffd49e1">REMMINA_PLUGIN_SPICE_FEATURE_PREF_VIEWONLY</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00040">spice_plugin.c:40</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d"><div class="ttname"><a href="spice__plugin_8c.html#ae6dceca96ec2c7a1b4aa211264a87ef6aebe753cb882aa4977fd65cf95608c48d">REMMINA_PLUGIN_SPICE_FEATURE_PREF_DISABLECLIPBOARD</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00042">spice_plugin.c:42</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a3d724d152ea404c75d370514962afebe"><div class="ttname"><a href="spice__plugin_8c.html#a3d724d152ea404c75d370514962afebe">remmina_plugin_spice_channel_new_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_channel_new_cb(SpiceSession *, SpiceChannel *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00174">spice_plugin.c:174</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a4d5a9190784bce617effa0b90e73a660"><div class="ttname"><a href="spice__plugin_8c.html#a4d5a9190784bce617effa0b90e73a660">remmina_plugin_spice_send_ctrlaltdel</a></div><div class="ttdeci">static void remmina_plugin_spice_send_ctrlaltdel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00345">spice_plugin.c:345</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a4c883dd4ccf9e73e7efb763625d662bb"><div class="ttname"><a href="spice__plugin_8c.html#a4c883dd4ccf9e73e7efb763625d662bb">remmina_plugin_spice_init</a></div><div class="ttdeci">static void remmina_plugin_spice_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00062">spice_plugin.c:62</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="spice__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00048">spice_plugin.c:48</a></div></div>
+<div class="ttc" id="spice__plugin_8c_html_a2d6055bfb90c38ca9808bcdfd54ab8cb"><div class="ttname"><a href="spice__plugin_8c.html#a2d6055bfb90c38ca9808bcdfd54ab8cb">remmina_plugin_spice_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_spice_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8c_source.html#l00145">spice_plugin.c:145</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin_8c.html">spice_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin_8h.html b/docs/spice__plugin_8h.html
new file mode 100644
index 000000000..1c4ead569
--- /dev/null
+++ b/docs/spice__plugin_8h.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">spice_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="spice__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a1e33d35ec5c4e619baf7c8cc737be368"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">RemminaPluginSpiceData</a></td></tr>
+<tr class="separator:a1e33d35ec5c4e619baf7c8cc737be368"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a1e33d35ec5c4e619baf7c8cc737be368"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e33d35ec5c4e619baf7c8cc737be368">&#9670;&nbsp;</a></span>RemminaPluginSpiceData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a> <a class="el" href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">RemminaPluginSpiceData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin_8h.html">spice_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin_8h.js b/docs/spice__plugin_8h.js
new file mode 100644
index 000000000..6d5658c66
--- /dev/null
+++ b/docs/spice__plugin_8h.js
@@ -0,0 +1,5 @@
+var spice__plugin_8h =
+[
+ [ "_RemminaPluginSpiceData", "struct___remmina_plugin_spice_data.html", "struct___remmina_plugin_spice_data" ],
+ [ "RemminaPluginSpiceData", "spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368", null ]
+]; \ No newline at end of file
diff --git a/docs/spice__plugin_8h_source.html b/docs/spice__plugin_8h_source.html
new file mode 100644
index 000000000..165a3c6c8
--- /dev/null
+++ b/docs/spice__plugin_8h_source.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">spice_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="spice__plugin_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) 2016-2018 Denis Ollier</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;spice-client.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"># include &lt;spice-client-gtk.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"># else</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"># include &lt;spice-widget.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"># include &lt;usb-device-widget.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"># endif</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#else</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"># include &lt;spice-widget.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"># include &lt;usb-device-widget.h&gt;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginSpiceData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;)</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a> {</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02"> 54</a></span>&#160; SpiceAudio * <a class="code" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">audio</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad"> 55</a></span>&#160; SpiceDisplay * <a class="code" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6"> 56</a></span>&#160; SpiceDisplayChannel * <a class="code" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">display_channel</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69"> 57</a></span>&#160; SpiceGtkSession * <a class="code" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">gtk_session</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f"> 58</a></span>&#160; SpiceMainChannel * <a class="code" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">main_channel</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633"> 59</a></span>&#160; SpiceSession * <a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>;</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 SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* key: SpiceFileTransferTask, value: RemminaPluginSpiceXferWidgets */</span></div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781"> 64</a></span>&#160; GHashTable * <a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e"> 65</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"># endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION(0, 31, 0) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION */</span><span class="preprocessor"></span></div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;} <a class="code" href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">RemminaPluginSpiceData</a>;</div><div class="ttc" id="struct___remmina_plugin_spice_data_html_a5f24bd5d68722f7e265c0d61c89257ad"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">_RemminaPluginSpiceData::display</a></div><div class="ttdeci">SpiceDisplay * display</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00055">spice_plugin.h:55</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a71709da583c41e2eb47236fc94e310d6"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">_RemminaPluginSpiceData::display_channel</a></div><div class="ttdeci">SpiceDisplayChannel * display_channel</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00056">spice_plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00053">spice_plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a712404956a8e5ca842dd290700250781"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">_RemminaPluginSpiceData::file_transfers</a></div><div class="ttdeci">GHashTable * file_transfers</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00064">spice_plugin.h:64</a></div></div>
+<div class="ttc" id="spice__plugin_8h_html_a1e33d35ec5c4e619baf7c8cc737be368"><div class="ttname"><a href="spice__plugin_8h.html#a1e33d35ec5c4e619baf7c8cc737be368">RemminaPluginSpiceData</a></div><div class="ttdeci">struct _RemminaPluginSpiceData RemminaPluginSpiceData</div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a9207addf2a7b2fea9bd8b3e7916aa28e"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">_RemminaPluginSpiceData::file_transfer_dialog</a></div><div class="ttdeci">GtkWidget * file_transfer_dialog</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00065">spice_plugin.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a1420dc8738b8485e95441823b4157f69"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">_RemminaPluginSpiceData::gtk_session</a></div><div class="ttdeci">SpiceGtkSession * gtk_session</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00057">spice_plugin.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a1c88ad311d86fb0de1dc441150a7da02"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">_RemminaPluginSpiceData::audio</a></div><div class="ttdeci">SpiceAudio * audio</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00054">spice_plugin.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a8be20a82752da9a4f7790b3aa8a92633"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">_RemminaPluginSpiceData::session</a></div><div class="ttdeci">SpiceSession * session</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00059">spice_plugin.h:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a57a077aa61d1eb205cb23db22ffd891f"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">_RemminaPluginSpiceData::main_channel</a></div><div class="ttdeci">SpiceMainChannel * main_channel</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00058">spice_plugin.h:58</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin_8h.html">spice_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin__file__transfer_8c.html b/docs/spice__plugin__file__transfer_8c.html
new file mode 100644
index 000000000..270f4c707
--- /dev/null
+++ b/docs/spice__plugin__file__transfer_8c.html
@@ -0,0 +1,413 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin_file_transfer.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin__file__transfer_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">spice_plugin_file_transfer.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="spice__plugin__file__transfer_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2cc1ae83d57a5616a840389efe929d02"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a></td></tr>
+<tr class="separator:a2cc1ae83d57a5616a840389efe929d02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a31987484a4b93605462bce59f4833249"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">remmina_plugin_spice_file_transfer_cancel_cb</a> (GtkButton *, SpiceFileTransferTask *)</td></tr>
+<tr class="separator:a31987484a4b93605462bce59f4833249"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaefe8f1222c349626add7c86be98707a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">remmina_plugin_spice_file_transfer_dialog_response_cb</a> (GtkDialog *, gint, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:aaefe8f1222c349626add7c86be98707a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ea32649a7b0bea121deb5a7eca5668"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">remmina_plugin_spice_file_transfer_finished_cb</a> (SpiceFileTransferTask *, GError *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a57ea32649a7b0bea121deb5a7eca5668"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a513dbc015b2f3b9d2a280331fd65c30b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">remmina_plugin_spice_file_transfer_progress_cb</a> (GObject *, GParamSpec *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:a513dbc015b2f3b9d2a280331fd65c30b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26ba6d7eb231b0ebf29759a86f54ff38"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">remmina_plugin_spice_xfer_widgets_new</a> (SpiceFileTransferTask *)</td></tr>
+<tr class="separator:a26ba6d7eb231b0ebf29759a86f54ff38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad856e9ce78b9657cacd06baf2ddd3a19"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">remmina_plugin_spice_xfer_widgets_free</a> (<a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a> *widgets)</td></tr>
+<tr class="separator:ad856e9ce78b9657cacd06baf2ddd3a19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05ca36e21cf5f169d235f1aadb9f1bf9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9">remmina_plugin_spice_file_transfer_new_cb</a> (SpiceMainChannel *main_channel, SpiceFileTransferTask *task, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a05ca36e21cf5f169d235f1aadb9f1bf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a2cc1ae83d57a5616a840389efe929d02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2cc1ae83d57a5616a840389efe929d02">&#9670;&nbsp;</a></span>RemminaPluginSpiceXferWidgets</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a> <a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a31987484a4b93605462bce59f4833249"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31987484a4b93605462bce59f4833249">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_cancel_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_file_transfer_cancel_cb </td>
+ <td>(</td>
+ <td class="paramtype">GtkButton *&#160;</td>
+ <td class="paramname"><em>button</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceFileTransferTask *&#160;</td>
+ <td class="paramname"><em>task</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00164">164</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="aaefe8f1222c349626add7c86be98707a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaefe8f1222c349626add7c86be98707a">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_dialog_response_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_file_transfer_dialog_response_cb </td>
+ <td>(</td>
+ <td class="paramtype">GtkDialog *&#160;</td>
+ <td class="paramname"><em>dialog</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00172">172</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a57ea32649a7b0bea121deb5a7eca5668"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57ea32649a7b0bea121deb5a7eca5668">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_finished_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_file_transfer_finished_cb </td>
+ <td>(</td>
+ <td class="paramtype">SpiceFileTransferTask *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GError *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00204">204</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a05ca36e21cf5f169d235f1aadb9f1bf9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05ca36e21cf5f169d235f1aadb9f1bf9">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_new_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_spice_file_transfer_new_cb </td>
+ <td>(</td>
+ <td class="paramtype">SpiceMainChannel *&#160;</td>
+ <td class="paramname"><em>main_channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceFileTransferTask *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00056">56</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a513dbc015b2f3b9d2a280331fd65c30b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a513dbc015b2f3b9d2a280331fd65c30b">&#9670;&nbsp;</a></span>remmina_plugin_spice_file_transfer_progress_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_file_transfer_progress_cb </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>task</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GParamSpec *&#160;</td>
+ <td class="paramname"><em>param_spec</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00190">190</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="ad856e9ce78b9657cacd06baf2ddd3a19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad856e9ce78b9657cacd06baf2ddd3a19">&#9670;&nbsp;</a></span>remmina_plugin_spice_xfer_widgets_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_xfer_widgets_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a> *&#160;</td>
+ <td class="paramname"><em>widgets</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00155">155</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a26ba6d7eb231b0ebf29759a86f54ff38"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26ba6d7eb231b0ebf29759a86f54ff38">&#9670;&nbsp;</a></span>remmina_plugin_spice_xfer_widgets_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a> * remmina_plugin_spice_xfer_widgets_new </td>
+ <td>(</td>
+ <td class="paramtype">SpiceFileTransferTask *&#160;</td>
+ <td class="paramname"><em>task</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00111">111</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin__file__transfer_8c.html">spice_plugin_file_transfer.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin__file__transfer_8c.js b/docs/spice__plugin__file__transfer_8c.js
new file mode 100644
index 000000000..3bc1a7549
--- /dev/null
+++ b/docs/spice__plugin__file__transfer_8c.js
@@ -0,0 +1,12 @@
+var spice__plugin__file__transfer_8c =
+[
+ [ "_RemminaPluginSpiceXferWidgets", "struct___remmina_plugin_spice_xfer_widgets.html", "struct___remmina_plugin_spice_xfer_widgets" ],
+ [ "RemminaPluginSpiceXferWidgets", "spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02", null ],
+ [ "remmina_plugin_spice_file_transfer_cancel_cb", "spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249", null ],
+ [ "remmina_plugin_spice_file_transfer_dialog_response_cb", "spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a", null ],
+ [ "remmina_plugin_spice_file_transfer_finished_cb", "spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668", null ],
+ [ "remmina_plugin_spice_file_transfer_new_cb", "spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9", null ],
+ [ "remmina_plugin_spice_file_transfer_progress_cb", "spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b", null ],
+ [ "remmina_plugin_spice_xfer_widgets_free", "spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19", null ],
+ [ "remmina_plugin_spice_xfer_widgets_new", "spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38", null ]
+]; \ No newline at end of file
diff --git a/docs/spice__plugin__file__transfer_8c_source.html b/docs/spice__plugin__file__transfer_8c_source.html
new file mode 100644
index 000000000..e60a126a0
--- /dev/null
+++ b/docs/spice__plugin__file__transfer_8c_source.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin_file_transfer.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin__file__transfer_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">spice_plugin_file_transfer.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="spice__plugin__file__transfer_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) 2016-2018 Denis Ollier</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="spice__plugin_8h.html">spice_plugin.h</a>&quot;</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">#ifdef SPICE_GTK_CHECK_VERSION</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"># if SPICE_GTK_CHECK_VERSION(0, 31, 0)</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="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">remmina_plugin_spice_file_transfer_cancel_cb</a>(GtkButton *, SpiceFileTransferTask *);</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">remmina_plugin_spice_file_transfer_dialog_response_cb</a>(GtkDialog *, gint, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">remmina_plugin_spice_file_transfer_finished_cb</a>(SpiceFileTransferTask *, GError *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">remmina_plugin_spice_file_transfer_progress_cb</a>(GObject *, GParamSpec *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a> {</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716"> 46</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c"> 47</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a>;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe"> 48</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a"> 49</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53"> 50</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a>;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> * <a class="code" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">remmina_plugin_spice_xfer_widgets_new</a>(SpiceFileTransferTask *);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">remmina_plugin_spice_xfer_widgets_free</a>(<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> *widgets);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9"> 56</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9">remmina_plugin_spice_file_transfer_new_cb</a>(SpiceMainChannel *main_channel, SpiceFileTransferTask *task, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;{</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; GtkWidget *dialog_content;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> *widgets;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_signal_connect(task,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="stringliteral">&quot;finished&quot;</span>,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">remmina_plugin_spice_file_transfer_finished_cb</a>),</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; gp);</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>) {</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a> = g_hash_table_new_full(g_direct_hash,</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; g_direct_equal,</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; g_object_unref,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; (GDestroyNotify)<a class="code" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">remmina_plugin_spice_xfer_widgets_free</a>);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> * FIXME: Use the RemminaConnectionWindow as transient parent widget</span></div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> * (and add the GTK_DIALOG_DESTROY_WITH_PARENT flag) if it becomes</span></div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> * accessible from the Remmina plugin API.</span></div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a> = gtk_dialog_new_with_buttons(_(<span class="stringliteral">&quot;File Transfers&quot;</span>),</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; NULL, 0,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; _(<span class="stringliteral">&quot;_Cancel&quot;</span>),</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; GTK_RESPONSE_CANCEL,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; NULL);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; dialog_content = gtk_dialog_get_content_area(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>));</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; gtk_widget_set_size_request(dialog_content, 400, -1);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; gtk_window_set_resizable(GTK_WINDOW(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>), FALSE);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_signal_connect(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="stringliteral">&quot;response&quot;</span>,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">remmina_plugin_spice_file_transfer_dialog_response_cb</a>),</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; gp);</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"> 96</span>&#160; widgets = <a class="code" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">remmina_plugin_spice_xfer_widgets_new</a>(task);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; g_hash_table_insert(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>, g_object_ref(task), widgets);</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; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>))),</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>,</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; TRUE, TRUE, 6);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; g_signal_connect(task,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="stringliteral">&quot;notify::progress&quot;</span>,</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">remmina_plugin_spice_file_transfer_progress_cb</a>),</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; gp);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>);</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="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38"> 111</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> * <a class="code" href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">remmina_plugin_spice_xfer_widgets_new</a>(SpiceFileTransferTask *task)</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;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; gchar *filename;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> *widgets = g_new0(<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a>, 1);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a> = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a> = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 6);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; filename = spice_file_transfer_task_get_filename(task);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a> = gtk_label_new(filename);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gtk_widget_set_halign(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a>, GTK_ALIGN_START);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gtk_widget_set_valign(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a>, GTK_ALIGN_BASELINE);</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"> 126</span>&#160; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a> = gtk_progress_bar_new();</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; gtk_widget_set_hexpand(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a>, TRUE);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; gtk_widget_set_valign(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a>, GTK_ALIGN_CENTER);</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; widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a> = gtk_button_new_from_icon_name(<span class="stringliteral">&quot;gtk-cancel&quot;</span>, GTK_ICON_SIZE_SMALL_TOOLBAR);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; g_signal_connect(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a>,</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="stringliteral">&quot;clicked&quot;</span>,</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">remmina_plugin_spice_file_transfer_cancel_cb</a>),</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; task);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; gtk_widget_set_hexpand(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a>, FALSE);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; gtk_widget_set_valign(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a>, GTK_ALIGN_CENTER);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; gtk_box_pack_start(GTK_BOX(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a>), widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a>,</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; TRUE, TRUE, 0);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; gtk_box_pack_start(GTK_BOX(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a>), widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a>,</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; FALSE, TRUE, 0);</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; gtk_box_pack_start(GTK_BOX(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>), widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a>,</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; TRUE, TRUE, 0);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; gtk_box_pack_start(GTK_BOX(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>), widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a>,</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; TRUE, TRUE, 0);</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; gtk_widget_show_all(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>);</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"> 150</span>&#160; g_free(filename);</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; <span class="keywordflow">return</span> widgets;</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="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19"> 155</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">remmina_plugin_spice_xfer_widgets_free</a>(<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> *widgets)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="comment">/* Child widgets will be destroyed automatically */</span></div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; gtk_widget_destroy(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a>);</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; g_free(widgets);</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="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249"> 164</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">remmina_plugin_spice_file_transfer_cancel_cb</a>(GtkButton *button, SpiceFileTransferTask *task)</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;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; spice_file_transfer_task_cancel(task);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;}</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a"> 172</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">remmina_plugin_spice_file_transfer_dialog_response_cb</a>(GtkDialog *dialog, gint response, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</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; GHashTableIter iter;</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; gpointer key, value;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; SpiceFileTransferTask *task;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">if</span> (response == GTK_RESPONSE_CANCEL) {</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; g_hash_table_iter_init(&amp;iter, gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordflow">while</span> (g_hash_table_iter_next(&amp;iter, &amp;key, &amp;value)) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; task = key;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; spice_file_transfer_task_cancel(task);</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b"> 190</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">remmina_plugin_spice_file_transfer_progress_cb</a>(GObject *task, GParamSpec *param_spec, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html">RemminaPluginSpiceXferWidgets</a> *widgets;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; widgets = g_hash_table_lookup(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>, task);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (widgets) {</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; gtk_progress_bar_set_fraction(GTK_PROGRESS_BAR(widgets-&gt;<a class="code" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a>),</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; spice_file_transfer_task_get_progress(SPICE_FILE_TRANSFER_TASK(task)));</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;}</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"><a class="line" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668"> 204</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">remmina_plugin_spice_file_transfer_finished_cb</a>(SpiceFileTransferTask *task, GError *error, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</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; gchar *filename, *notification_message;</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; GNotification *notification;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; <span class="comment">/*</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"> * Send a desktop notification to inform about the outcome of</span></div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment"> * the file transfer.</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; filename = spice_file_transfer_task_get_filename(task);</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; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; notification = g_notification_new(_(<span class="stringliteral">&quot;Transfer error&quot;</span>));</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; notification_message = g_strdup_printf(_(<span class="stringliteral">&quot;%s: %s&quot;</span>),</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; filename, error-&gt;message);</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; notification = g_notification_new(_(<span class="stringliteral">&quot;Transfer completed&quot;</span>));</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; notification_message = g_strdup_printf(_(<span class="stringliteral">&quot;The %s file has been transferred&quot;</span>),</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; filename);</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;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; g_notification_set_body(notification, notification_message);</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; g_application_send_notification(g_application_get_default(),</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="stringliteral">&quot;remmina-plugin-spice-file-transfer-finished&quot;</span>,</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; notification);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; g_hash_table_remove(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>, task);</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"> 235</span>&#160; <span class="keywordflow">if</span> (!g_hash_table_size(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a>)) {</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gtk_widget_hide(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; }</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; g_free(filename);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; g_free(notification_message);</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; g_object_unref(notification);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;}</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor"># endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION(0, 31, 0) */</span><span class="preprocessor"></span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* SPICE_GTK_CHECK_VERSION */</span><span class="preprocessor"></span></div><div class="ttc" id="spice__plugin__file__transfer_8c_html_a57ea32649a7b0bea121deb5a7eca5668"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a57ea32649a7b0bea121deb5a7eca5668">remmina_plugin_spice_file_transfer_finished_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_file_transfer_finished_cb(SpiceFileTransferTask *, GError *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00204">spice_plugin_file_transfer.c:204</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_a05ca36e21cf5f169d235f1aadb9f1bf9"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a05ca36e21cf5f169d235f1aadb9f1bf9">remmina_plugin_spice_file_transfer_new_cb</a></div><div class="ttdeci">void remmina_plugin_spice_file_transfer_new_cb(SpiceMainChannel *main_channel, SpiceFileTransferTask *task, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00056">spice_plugin_file_transfer.c:56</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_a26ba6d7eb231b0ebf29759a86f54ff38"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a26ba6d7eb231b0ebf29759a86f54ff38">remmina_plugin_spice_xfer_widgets_new</a></div><div class="ttdeci">static RemminaPluginSpiceXferWidgets * remmina_plugin_spice_xfer_widgets_new(SpiceFileTransferTask *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00111">spice_plugin_file_transfer.c:111</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_aaefe8f1222c349626add7c86be98707a"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#aaefe8f1222c349626add7c86be98707a">remmina_plugin_spice_file_transfer_dialog_response_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_file_transfer_dialog_response_cb(GtkDialog *, gint, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00172">spice_plugin_file_transfer.c:172</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00053">spice_plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00045">spice_plugin_file_transfer.c:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a712404956a8e5ca842dd290700250781"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">_RemminaPluginSpiceData::file_transfers</a></div><div class="ttdeci">GHashTable * file_transfers</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00064">spice_plugin.h:64</a></div></div>
+<div class="ttc" id="spice__plugin_8h_html"><div class="ttname"><a href="spice__plugin_8h.html">spice_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html_a05fea9bde521ffcb18f9f8a677a73716"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">_RemminaPluginSpiceXferWidgets::vbox</a></div><div class="ttdeci">GtkWidget * vbox</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00046">spice_plugin_file_transfer.c:46</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_ad856e9ce78b9657cacd06baf2ddd3a19"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#ad856e9ce78b9657cacd06baf2ddd3a19">remmina_plugin_spice_xfer_widgets_free</a></div><div class="ttdeci">static void remmina_plugin_spice_xfer_widgets_free(RemminaPluginSpiceXferWidgets *widgets)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00155">spice_plugin_file_transfer.c:155</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a9207addf2a7b2fea9bd8b3e7916aa28e"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">_RemminaPluginSpiceData::file_transfer_dialog</a></div><div class="ttdeci">GtkWidget * file_transfer_dialog</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00065">spice_plugin.h:65</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html_adfef2a32ccfa7152eed3b8e65b48bb53"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">_RemminaPluginSpiceXferWidgets::cancel</a></div><div class="ttdeci">GtkWidget * cancel</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00050">spice_plugin_file_transfer.c:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html_ad05a8f17fb01787453d6e29dc881cbfe"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">_RemminaPluginSpiceXferWidgets::progress</a></div><div class="ttdeci">GtkWidget * progress</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00048">spice_plugin_file_transfer.c:48</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_a2cc1ae83d57a5616a840389efe929d02"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a2cc1ae83d57a5616a840389efe929d02">RemminaPluginSpiceXferWidgets</a></div><div class="ttdeci">struct _RemminaPluginSpiceXferWidgets RemminaPluginSpiceXferWidgets</div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_a31987484a4b93605462bce59f4833249"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a31987484a4b93605462bce59f4833249">remmina_plugin_spice_file_transfer_cancel_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_file_transfer_cancel_cb(GtkButton *, SpiceFileTransferTask *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00164">spice_plugin_file_transfer.c:164</a></div></div>
+<div class="ttc" id="spice__plugin__file__transfer_8c_html_a513dbc015b2f3b9d2a280331fd65c30b"><div class="ttname"><a href="spice__plugin__file__transfer_8c.html#a513dbc015b2f3b9d2a280331fd65c30b">remmina_plugin_spice_file_transfer_progress_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_file_transfer_progress_cb(GObject *, GParamSpec *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00190">spice_plugin_file_transfer.c:190</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html_a46d74da3885207d20372d13a2f4b181c"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">_RemminaPluginSpiceXferWidgets::hbox</a></div><div class="ttdeci">GtkWidget * hbox</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00047">spice_plugin_file_transfer.c:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_xfer_widgets_html_a3ccf00d4d7b46e182c31b7d1f568911a"><div class="ttname"><a href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">_RemminaPluginSpiceXferWidgets::label</a></div><div class="ttdeci">GtkWidget * label</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__file__transfer_8c_source.html#l00049">spice_plugin_file_transfer.c:49</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin__file__transfer_8c.html">spice_plugin_file_transfer.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin__usb_8c.html b/docs/spice__plugin__usb_8c.html
new file mode 100644
index 000000000..e25f9c15a
--- /dev/null
+++ b/docs/spice__plugin__usb_8c.html
@@ -0,0 +1,184 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin_usb.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin__usb_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">spice_plugin_usb.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="spice__plugin__usb_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af6d5cac7fa54b6b8e432cf07b05eed7b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">remmina_plugin_spice_usb_connect_failed_cb</a> (GObject *, SpiceUsbDevice *, GError *, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *)</td></tr>
+<tr class="separator:af6d5cac7fa54b6b8e432cf07b05eed7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cb3e730cd0d7c44d60122aaf77e671b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b">remmina_plugin_spice_select_usb_devices</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4cb3e730cd0d7c44d60122aaf77e671b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a4cb3e730cd0d7c44d60122aaf77e671b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4cb3e730cd0d7c44d60122aaf77e671b">&#9670;&nbsp;</a></span>remmina_plugin_spice_select_usb_devices()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_spice_select_usb_devices </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__usb_8c_source.html#l00039">39</a> of file <a class="el" href="spice__plugin__usb_8c_source.html">spice_plugin_usb.c</a>.</p>
+
+</div>
+</div>
+<a id="af6d5cac7fa54b6b8e432cf07b05eed7b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af6d5cac7fa54b6b8e432cf07b05eed7b">&#9670;&nbsp;</a></span>remmina_plugin_spice_usb_connect_failed_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_spice_usb_connect_failed_cb </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">SpiceUsbDevice *&#160;</td>
+ <td class="paramname"><em>usb_device</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GError *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__usb_8c_source.html#l00075">75</a> of file <a class="el" href="spice__plugin__usb_8c_source.html">spice_plugin_usb.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin__usb_8c.html">spice_plugin_usb.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/spice__plugin__usb_8c.js b/docs/spice__plugin__usb_8c.js
new file mode 100644
index 000000000..a7d6f4070
--- /dev/null
+++ b/docs/spice__plugin__usb_8c.js
@@ -0,0 +1,5 @@
+var spice__plugin__usb_8c =
+[
+ [ "remmina_plugin_spice_select_usb_devices", "spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b", null ],
+ [ "remmina_plugin_spice_usb_connect_failed_cb", "spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b", null ]
+]; \ No newline at end of file
diff --git a/docs/spice__plugin__usb_8c_source.html b/docs/spice__plugin__usb_8c_source.html
new file mode 100644
index 000000000..de6931783
--- /dev/null
+++ b/docs/spice__plugin__usb_8c_source.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: spice_plugin_usb.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('spice__plugin__usb_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">spice_plugin_usb.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="spice__plugin__usb_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) 2016-2018 Denis Ollier</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="spice__plugin_8h.html">spice_plugin.h</a>&quot;</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="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">remmina_plugin_spice_usb_connect_failed_cb</a>(GObject *, SpiceUsbDevice *, GError *, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *);</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b"> 39</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b">remmina_plugin_spice_select_usb_devices</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;{</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; GtkWidget *dialog, *usb_device_widget;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="struct___remmina_plugin_spice_data.html">RemminaPluginSpiceData</a> *gpdata = GET_PLUGIN_DATA(gp);</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"> 46</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> * FIXME: Use the RemminaConnectionWindow as transient parent widget</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> * (and add the GTK_DIALOG_DESTROY_WITH_PARENT flag) if it becomes</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> * accessible from the Remmina plugin API.</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; dialog = gtk_dialog_new_with_buttons(_(<span class="stringliteral">&quot;Select USB devices for redirection&quot;</span>),</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; NULL,</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; GTK_DIALOG_MODAL,</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; _(<span class="stringliteral">&quot;_Close&quot;</span>),</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; GTK_RESPONSE_ACCEPT,</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; NULL);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_ACCEPT);</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; usb_device_widget = spice_usb_device_widget_new(gpdata-&gt;<a class="code" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a>, NULL);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; g_signal_connect(usb_device_widget,</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="stringliteral">&quot;connect-failed&quot;</span>,</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; G_CALLBACK(<a class="code" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">remmina_plugin_spice_usb_connect_failed_cb</a>),</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; gp);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; usb_device_widget,</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; TRUE,</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; TRUE,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; 0);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; gtk_widget_show_all(dialog);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;}</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b"> 75</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">remmina_plugin_spice_usb_connect_failed_cb</a>(GObject *<span class="keywordtype">object</span>, SpiceUsbDevice *usb_device, GError *error, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; GtkWidget *dialog;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (error-&gt;domain == G_IO_ERROR &amp;&amp; error-&gt;code == G_IO_ERROR_CANCELLED) {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</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; <span class="comment">/*</span></div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> * FIXME: Use the RemminaConnectionWindow as transient parent widget</span></div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> * (and add the GTK_DIALOG_DESTROY_WITH_PARENT flag) if it becomes</span></div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> * accessible from the Remmina plugin API.</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; dialog = gtk_message_dialog_new(NULL,</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; GTK_DIALOG_MODAL,</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; GTK_MESSAGE_ERROR,</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; GTK_BUTTONS_CLOSE,</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; _(<span class="stringliteral">&quot;USB redirection error&quot;</span>));</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; gtk_message_dialog_format_secondary_text(GTK_MESSAGE_DIALOG(dialog),</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="stringliteral">&quot;%s&quot;</span>,</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; error-&gt;message);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; gtk_dialog_run(GTK_DIALOG(dialog));</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; gtk_widget_destroy(dialog);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;}</div><div class="ttc" id="struct___remmina_plugin_spice_data_html"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00053">spice_plugin.h:53</a></div></div>
+<div class="ttc" id="spice__plugin__usb_8c_html_af6d5cac7fa54b6b8e432cf07b05eed7b"><div class="ttname"><a href="spice__plugin__usb_8c.html#af6d5cac7fa54b6b8e432cf07b05eed7b">remmina_plugin_spice_usb_connect_failed_cb</a></div><div class="ttdeci">static void remmina_plugin_spice_usb_connect_failed_cb(GObject *, SpiceUsbDevice *, GError *, RemminaProtocolWidget *)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__usb_8c_source.html#l00075">spice_plugin_usb.c:75</a></div></div>
+<div class="ttc" id="spice__plugin_8h_html"><div class="ttname"><a href="spice__plugin_8h.html">spice_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_spice_data_html_a8be20a82752da9a4f7790b3aa8a92633"><div class="ttname"><a href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">_RemminaPluginSpiceData::session</a></div><div class="ttdeci">SpiceSession * session</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin_8h_source.html#l00059">spice_plugin.h:59</a></div></div>
+<div class="ttc" id="spice__plugin__usb_8c_html_a4cb3e730cd0d7c44d60122aaf77e671b"><div class="ttname"><a href="spice__plugin__usb_8c.html#a4cb3e730cd0d7c44d60122aaf77e671b">remmina_plugin_spice_select_usb_devices</a></div><div class="ttdeci">void remmina_plugin_spice_select_usb_devices(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="spice__plugin__usb_8c_source.html#l00039">spice_plugin_usb.c:39</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_025b464d54bdde1478f0775784ca5da1.html">spice</a></li><li class="navelem"><a class="el" href="spice__plugin__usb_8c.html">spice_plugin_usb.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/splitbar.png b/docs/splitbar.png
new file mode 100644
index 000000000..fe895f2c5
--- /dev/null
+++ b/docs/splitbar.png
Binary files differ
diff --git a/docs/st__plugin_8c.html b/docs/st__plugin_8c.html
new file mode 100644
index 000000000..be255811c
--- /dev/null
+++ b/docs/st__plugin_8c.html
@@ -0,0 +1,549 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: st_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('st__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">st_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="st__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_data.html">_RemminaPluginData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a1d05db3e17981752867852820f99b1c4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_data.html">_RemminaPluginData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">RemminaPluginData</a></td></tr>
+<tr class="separator:a1d05db3e17981752867852820f99b1c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a270fb394bd933b0a3fcf53aa55f08b01"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a270fb394bd933b0a3fcf53aa55f08b01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad71e864fed6cf20a01a0dc7c38e98fe7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">remmina_plugin_st_on_plug_added</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad71e864fed6cf20a01a0dc7c38e98fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae829911e1c265665933ab5318f462466"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">remmina_plugin_st_on_plug_removed</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae829911e1c265665933ab5318f462466"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32c62a761eb95bc5c85c433ea4c53f5d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a32c62a761eb95bc5c85c433ea4c53f5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8288a0569d8de6fe991fb5292544430"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af8288a0569d8de6fe991fb5292544430"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb647e0f3bf350dce499eeff97dce73c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acb647e0f3bf350dce499eeff97dce73c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d25ec88a2123202a652978635d8430a"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a> []</td></tr>
+<tr class="separator:a0d25ec88a2123202a652978635d8430a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69a3fe4c39d316ac75da7edf98d73cf1"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a> []</td></tr>
+<tr class="separator:a69a3fe4c39d316ac75da7edf98d73cf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3b746a1bdc4f315310a9c51394d5c46"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a> []</td></tr>
+<tr class="separator:aa3b746a1bdc4f315310a9c51394d5c46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae13f8b88aeee98040a215ecec433a8f4"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a> []</td></tr>
+<tr class="separator:ae13f8b88aeee98040a215ecec433a8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></td></tr>
+<tr class="separator:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a1d05db3e17981752867852820f99b1c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d05db3e17981752867852820f99b1c4">&#9670;&nbsp;</a></span>RemminaPluginData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_data.html">_RemminaPluginData</a> <a class="el" href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">RemminaPluginData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00288">288</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acb647e0f3bf350dce499eeff97dce73c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb647e0f3bf350dce499eeff97dce73c">&#9670;&nbsp;</a></span>remmina_plugin_st_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_st_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00208">208</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a32c62a761eb95bc5c85c433ea4c53f5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32c62a761eb95bc5c85c433ea4c53f5d">&#9670;&nbsp;</a></span>remmina_plugin_st_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_st_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00082">82</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad71e864fed6cf20a01a0dc7c38e98fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad71e864fed6cf20a01a0dc7c38e98fe7">&#9670;&nbsp;</a></span>remmina_plugin_st_on_plug_added()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_st_on_plug_added </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00065">65</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae829911e1c265665933ab5318f462466"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae829911e1c265665933ab5318f462466">&#9670;&nbsp;</a></span>remmina_plugin_st_on_plug_removed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_st_on_plug_removed </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00075">75</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af8288a0569d8de6fe991fb5292544430"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8288a0569d8de6fe991fb5292544430">&#9670;&nbsp;</a></span>remmina_plugin_st_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_st_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00099">99</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a270fb394bd933b0a3fcf53aa55f08b01"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a270fb394bd933b0a3fcf53aa55f08b01">&#9670;&nbsp;</a></span>remmina_st_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_st_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3b53d8bbfcf5bdf5564c8804d211cf99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b53d8bbfcf5bdf5564c8804d211cf99">&#9670;&nbsp;</a></span>remmina_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> PLUGIN_NAME, </div><div class="line"> PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> PLUGIN_VERSION, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> <a class="code" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a>, </div><div class="line"> <a class="code" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a>, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="st__plugin_8c_html_a32c62a761eb95bc5c85c433ea4c53f5d"><div class="ttname"><a href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a></div><div class="ttdeci">static void remmina_plugin_st_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00082">st_plugin.c:82</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_aa3b746a1bdc4f315310a9c51394d5c46"><div class="ttname"><a href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_st_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00251">st_plugin.c:251</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a270fb394bd933b0a3fcf53aa55f08b01"><div class="ttname"><a href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a></div><div class="ttdeci">static gboolean remmina_st_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00058">st_plugin.c:58</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_af8288a0569d8de6fe991fb5292544430"><div class="ttname"><a href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00099">st_plugin.c:99</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_ae13f8b88aeee98040a215ecec433a8f4"><div class="ttname"><a href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_st_features[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00259">st_plugin.c:259</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_acb647e0f3bf350dce499eeff97dce73c"><div class="ttname"><a href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_st_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00208">st_plugin.c:208</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a69a3fe4c39d316ac75da7edf98d73cf1"><div class="ttname"><a href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_st_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00235">st_plugin.c:235</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00266">266</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00056">56</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3b746a1bdc4f315310a9c51394d5c46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3b746a1bdc4f315310a9c51394d5c46">&#9670;&nbsp;</a></span>remmina_plugin_st_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_st_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;detached&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Detached window&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00251">251</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a69a3fe4c39d316ac75da7edf98d73cf1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69a3fe4c39d316ac75da7edf98d73cf1">&#9670;&nbsp;</a></span>remmina_plugin_st_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_st_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;terminal&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Terminal Emulator&quot;</span>), FALSE, <a class="code" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;cmd&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Command to be executed&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a0d25ec88a2123202a652978635d8430a"><div class="ttname"><a href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a></div><div class="ttdeci">static gpointer term_list[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00216">st_plugin.c:216</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00235">235</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae13f8b88aeee98040a215ecec433a8f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae13f8b88aeee98040a215ecec433a8f4">&#9670;&nbsp;</a></span>remmina_st_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_st_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_ST_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL}</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00259">259</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0d25ec88a2123202a652978635d8430a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0d25ec88a2123202a652978635d8430a">&#9670;&nbsp;</a></span>term_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer term_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;st&quot;</span>, <span class="stringliteral">&quot;Suckless Simple Terminal&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;urxvt&quot;</span>, <span class="stringliteral">&quot;rxvt-unicode&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;xterm&quot;</span>, <span class="stringliteral">&quot;Xterm&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;emacs&quot;</span>, <span class="stringliteral">&quot;GNU Emacs&quot;</span>,</div><div class="line"> <span class="stringliteral">&quot;vim&quot;</span>, <span class="stringliteral">&quot;Vim Text Editor&quot;</span>,</div><div class="line"> NULL</div><div class="line">}</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00216">216</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></li><li class="navelem"><a class="el" href="st__plugin_8c.html">st_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/st__plugin_8c.js b/docs/st__plugin_8c.js
new file mode 100644
index 000000000..cc37c4e67
--- /dev/null
+++ b/docs/st__plugin_8c.js
@@ -0,0 +1,18 @@
+var st__plugin_8c =
+[
+ [ "_RemminaPluginData", "struct___remmina_plugin_data.html", "struct___remmina_plugin_data" ],
+ [ "RemminaPluginData", "st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4", null ],
+ [ "remmina_plugin_entry", "st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_st_close_connection", "st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c", null ],
+ [ "remmina_plugin_st_init", "st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d", null ],
+ [ "remmina_plugin_st_on_plug_added", "st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7", null ],
+ [ "remmina_plugin_st_on_plug_removed", "st__plugin_8c.html#ae829911e1c265665933ab5318f462466", null ],
+ [ "remmina_plugin_st_open_connection", "st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430", null ],
+ [ "remmina_st_query_feature", "st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01", null ],
+ [ "remmina_plugin", "st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99", null ],
+ [ "remmina_plugin_service", "st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_st_advanced_settings", "st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46", null ],
+ [ "remmina_plugin_st_basic_settings", "st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1", null ],
+ [ "remmina_st_features", "st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4", null ],
+ [ "term_list", "st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a", null ]
+]; \ No newline at end of file
diff --git a/docs/st__plugin_8c_source.html b/docs/st__plugin_8c_source.html
new file mode 100644
index 000000000..e0f789df5
--- /dev/null
+++ b/docs/st__plugin_8c_source.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: st_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('st__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">st_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="st__plugin_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) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="st__plugin__config_8h.html">st_plugin_config.h</a>&quot;</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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;gtk/gtkx.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;sys/wait.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_ST_FEATURE_GTKSOCKET 1</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_data.html"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_data.html">_RemminaPluginData</a></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835"> 51</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3"> 52</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739"> 53</a></span>&#160; GPid <a class="code" href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739">pid</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">RemminaPluginData</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 56</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01"> 58</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>* gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a>* feature)</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;{</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7"> 65</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">remmina_plugin_st_on_plug_added</a>(GtkSocket *<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 67</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a> *gpdata;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a>*) g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin plug added on socket %d&quot;</span>, PLUGIN_NAME, gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a>);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;}</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466"> 75</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">remmina_plugin_st_on_plug_removed</a>(GtkSocket *<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin plug removed&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;}</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d"> 82</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;{</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin init&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a> *gpdata;</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; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a>, 1);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a> = gtk_socket_new();</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>), <span class="stringliteral">&quot;plug-added&quot;</span>, G_CALLBACK(<a class="code" href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">remmina_plugin_st_on_plug_added</a>), gp);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>), <span class="stringliteral">&quot;plug-removed&quot;</span>, G_CALLBACK(<a class="code" href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">remmina_plugin_st_on_plug_removed</a>), gp);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;}</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"><a class="line" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430"> 99</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin open connection&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#define ADD_ARGUMENT(name, value) \</span></div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"> argv[argc] = g_strdup(name); \</span></div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"> argv_debug[argc] = g_strdup(name); \</span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"> argc++; \</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"> if (value != NULL) \</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"> { \</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"> argv[argc] = value; \</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"> argv_debug[argc++] = g_strdup(g_strcmp0(name, &quot;-p&quot;) != 0 ? value : &quot;XXXXX&quot;); \</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor"> } \</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor"> }</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a> *gpdata;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; gchar *argv[50]; <span class="comment">// Contains all the arguments</span></div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; gchar *argv_debug[50]; <span class="comment">// Contains all the arguments</span></div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; gchar *command_line; <span class="comment">// The whole command line obtained from argv_debug</span></div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">const</span> gchar *term; <span class="comment">// Terminal emulator name from remimna profile.</span></div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">const</span> gchar *wflag = NULL;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keyword">const</span> gchar *command; <span class="comment">// The command to be passed to the terminal (if any)</span></div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; gboolean isterm = FALSE;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; gint argc;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; gint i;</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; gpdata = (<a class="code" href="struct___remmina_plugin_data.html">RemminaPluginData</a>*) g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;detached&quot;</span>, FALSE)) {</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, 640);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, 480);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gp), 640, 480);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a> = gtk_socket_get_id(GTK_SOCKET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a>));</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; term = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;terminal&quot;</span>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(term, <span class="stringliteral">&quot;st&quot;</span>) == 0) {</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="comment">/* on Debian based distros st is packaged as stterm */</span></div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (!g_find_program_in_path(term))</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; term = <span class="stringliteral">&quot;stterm&quot;</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; wflag = <span class="stringliteral">&quot;-w&quot;</span>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; isterm = TRUE;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(term, <span class="stringliteral">&quot;urxvt&quot;</span>) == 0) {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; wflag = <span class="stringliteral">&quot;-embed&quot;</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; isterm = TRUE;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(term, <span class="stringliteral">&quot;xterm&quot;</span>) == 0) {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; wflag = <span class="stringliteral">&quot;-xrm &#39;XTerm*allowSendEvents: true&#39; -into&quot;</span>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; isterm = TRUE;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(term, <span class="stringliteral">&quot;vim&quot;</span>) == 0) {</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; wflag = <span class="stringliteral">&quot;-g --socketid&quot;</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; isterm = FALSE;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }<span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(term, <span class="stringliteral">&quot;emacs&quot;</span>) == 0) {</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; wflag = <span class="stringliteral">&quot;--parent-id&quot;</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; isterm = FALSE;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">if</span> (!g_find_program_in_path(term)) {</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s not found&quot;</span>, term);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">return</span> FALSE;</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; argc = 0;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="comment">// Main executable name</span></div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; ADD_ARGUMENT(g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, term), NULL);</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="comment">// Embed st-window in another window</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a> != 0)</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; ADD_ARGUMENT(g_strdup(wflag), g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a>));</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="comment">// Add eventually any additional arguments set by the user</span></div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; command = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;cmd&quot;</span>);</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">if</span>(command &amp;&amp; isterm)</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; ADD_ARGUMENT(<span class="stringliteral">&quot;-e&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, command));</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">if</span>(command &amp;&amp; !isterm)</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; ADD_ARGUMENT(<span class="stringliteral">&quot;&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%s&quot;</span>, command));</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="comment">// End of the arguments list</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; ADD_ARGUMENT(NULL, NULL);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">// Retrieve the whole command line</span></div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; command_line = g_strjoinv(g_strdup(<span class="stringliteral">&quot; &quot;</span>), (gchar **)&amp;argv_debug[0]);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] starting %s&quot;</span>, PLUGIN_NAME, command_line);</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="comment">// Execute the external process st</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; g_spawn_command_line_async(command_line, &amp;error);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; g_free(command_line);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="comment">// Free the arguments list</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; argc; i++)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; {</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; g_free(argv_debug[i]);</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; g_free(argv[i]);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">// Show error message</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; g_error_free(error);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; }</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">// Show attached window socket ID</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;detached&quot;</span>, FALSE)) {</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] attached window to socket %d&quot;</span>,</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; PLUGIN_NAME, gpdata-&gt;<a class="code" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a>);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span> TRUE;</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">else</span></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">return</span> FALSE;</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;}</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"><a class="line" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c"> 208</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 210</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;[%s] Plugin close connection&quot;</span>, PLUGIN_NAME);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;}</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a"> 216</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a>[] =</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; <span class="stringliteral">&quot;st&quot;</span>, <span class="stringliteral">&quot;Suckless Simple Terminal&quot;</span>,</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="stringliteral">&quot;urxvt&quot;</span>, <span class="stringliteral">&quot;rxvt-unicode&quot;</span>,</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="stringliteral">&quot;xterm&quot;</span>, <span class="stringliteral">&quot;Xterm&quot;</span>,</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="stringliteral">&quot;emacs&quot;</span>, <span class="stringliteral">&quot;GNU Emacs&quot;</span>,</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="stringliteral">&quot;vim&quot;</span>, <span class="stringliteral">&quot;Vim Text Editor&quot;</span>,</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; NULL</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;</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1"> 235</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a>[] =</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; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;terminal&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Terminal Emulator&quot;</span>), FALSE, <a class="code" href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a>, NULL },</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;cmd&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Command to be executed&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;};</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="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46"> 251</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a>[] =</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;{</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;detached&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Detached window&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;};</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4"> 259</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a>[] =</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; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_ST_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL}</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;};</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99"> 266</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a> =</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;{</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; PLUGIN_VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <a class="code" href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; NULL, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; NULL <span class="comment">// Capture screenshot</span></div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;};</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"><a class="line" href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 288</a></span>&#160;G_MODULE_EXPORT gboolean <a class="code" href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *) &amp;remmina_plugin))</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; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;}</div><div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a32c62a761eb95bc5c85c433ea4c53f5d"><div class="ttname"><a href="st__plugin_8c.html#a32c62a761eb95bc5c85c433ea4c53f5d">remmina_plugin_st_init</a></div><div class="ttdeci">static void remmina_plugin_st_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00082">st_plugin.c:82</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_data_html_abdf60b88b5db47a43254fb0a26daf8f3"><div class="ttname"><a href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">_RemminaPluginData::socket_id</a></div><div class="ttdeci">gint socket_id</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00052">st_plugin.c:52</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_aa3b746a1bdc4f315310a9c51394d5c46"><div class="ttname"><a href="st__plugin_8c.html#aa3b746a1bdc4f315310a9c51394d5c46">remmina_plugin_st_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_st_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00251">st_plugin.c:251</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a270fb394bd933b0a3fcf53aa55f08b01"><div class="ttname"><a href="st__plugin_8c.html#a270fb394bd933b0a3fcf53aa55f08b01">remmina_st_query_feature</a></div><div class="ttdeci">static gboolean remmina_st_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00058">st_plugin.c:58</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_ae829911e1c265665933ab5318f462466"><div class="ttname"><a href="st__plugin_8c.html#ae829911e1c265665933ab5318f462466">remmina_plugin_st_on_plug_removed</a></div><div class="ttdeci">static void remmina_plugin_st_on_plug_removed(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00075">st_plugin.c:75</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_af8288a0569d8de6fe991fb5292544430"><div class="ttname"><a href="st__plugin_8c.html#af8288a0569d8de6fe991fb5292544430">remmina_plugin_st_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00099">st_plugin.c:99</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_ae13f8b88aeee98040a215ecec433a8f4"><div class="ttname"><a href="st__plugin_8c.html#ae13f8b88aeee98040a215ecec433a8f4">remmina_st_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_st_features[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00259">st_plugin.c:259</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="st__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00288">st_plugin.c:288</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="st__plugin__config_8h_html"><div class="ttname"><a href="st__plugin__config_8h.html">st_plugin_config.h</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="st__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00056">st_plugin.c:56</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a0d25ec88a2123202a652978635d8430a"><div class="ttname"><a href="st__plugin_8c.html#a0d25ec88a2123202a652978635d8430a">term_list</a></div><div class="ttdeci">static gpointer term_list[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00216">st_plugin.c:216</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_data_html_a4498ac2561ca98c6487cedda48292835"><div class="ttname"><a href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">_RemminaPluginData::socket</a></div><div class="ttdeci">GtkWidget * socket</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00051">st_plugin.c:51</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_data_html"><div class="ttname"><a href="struct___remmina_plugin_data.html">_RemminaPluginData</a></div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00049">st_plugin.c:49</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_ad71e864fed6cf20a01a0dc7c38e98fe7"><div class="ttname"><a href="st__plugin_8c.html#ad71e864fed6cf20a01a0dc7c38e98fe7">remmina_plugin_st_on_plug_added</a></div><div class="ttdeci">static void remmina_plugin_st_on_plug_added(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00065">st_plugin.c:65</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a3b53d8bbfcf5bdf5564c8804d211cf99"><div class="ttname"><a href="st__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00266">st_plugin.c:266</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_acb647e0f3bf350dce499eeff97dce73c"><div class="ttname"><a href="st__plugin_8c.html#acb647e0f3bf350dce499eeff97dce73c">remmina_plugin_st_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_st_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00208">st_plugin.c:208</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_data_html_ade3797ce9b5a52fb53d179e2696e7739"><div class="ttname"><a href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739">_RemminaPluginData::pid</a></div><div class="ttdeci">GPid pid</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00053">st_plugin.c:53</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a69a3fe4c39d316ac75da7edf98d73cf1"><div class="ttname"><a href="st__plugin_8c.html#a69a3fe4c39d316ac75da7edf98d73cf1">remmina_plugin_st_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_st_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="st__plugin_8c_source.html#l00235">st_plugin.c:235</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="st__plugin_8c_html_a1d05db3e17981752867852820f99b1c4"><div class="ttname"><a href="st__plugin_8c.html#a1d05db3e17981752867852820f99b1c4">RemminaPluginData</a></div><div class="ttdeci">struct _RemminaPluginData RemminaPluginData</div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></li><li class="navelem"><a class="el" href="st__plugin_8c.html">st_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/st__plugin__config_8h.html b/docs/st__plugin__config_8h.html
new file mode 100644
index 000000000..e4a73089b
--- /dev/null
+++ b/docs/st__plugin__config_8h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: st_plugin_config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('st__plugin__config_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">st_plugin_config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="st__plugin__config_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></li><li class="navelem"><a class="el" href="st__plugin__config_8h.html">st_plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/st__plugin__config_8h_source.html b/docs/st__plugin__config_8h_source.html
new file mode 100644
index 000000000..57946e4ec
--- /dev/null
+++ b/docs/st__plugin__config_8h_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: st_plugin_config.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('st__plugin__config_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">st_plugin_config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="st__plugin__config_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) 2017-2020 Antenore Gatta</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Initially based on the plugin &quot;Remmina Plugin EXEC&quot;, created and written by</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Fabio Castelli (Muflone) &lt;muflone@vbsimple.net&gt;.</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;<span class="preprocessor">#ifndef __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#define __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define PLUGIN_NAME &quot;ST&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define PLUGIN_DESCRIPTION N_(&quot;Remmina simple terminal&quot;)</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define PLUGIN_VERSION &quot;1.0.0.0&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define PLUGIN_APPICON &quot;remmina-tool-symbolic&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_9662584a5e3ef571a4f03ea844ef6687.html">st</a></li><li class="navelem"><a class="el" href="st__plugin__config_8h.html">st_plugin_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_applet_menu.html b/docs/struct___remmina_applet_menu.html
new file mode 100644
index 000000000..00035c673
--- /dev/null
+++ b/docs/struct___remmina_applet_menu.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAppletMenu Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_applet_menu.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAppletMenu Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a182439d81775304ff252c177a30e246f"><td class="memItemLeft" align="right" valign="top">GtkMenu&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f">menu</a></td></tr>
+<tr class="separator:a182439d81775304ff252c177a30e246f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a021eca99c32a7db802295342c8db006a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a">priv</a></td></tr>
+<tr class="separator:a021eca99c32a7db802295342c8db006a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a182439d81775304ff252c177a30e246f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a182439d81775304ff252c177a30e246f">&#9670;&nbsp;</a></span>menu</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenu _RemminaAppletMenu::menu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<a id="a021eca99c32a7db802295342c8db006a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a021eca99c32a7db802295342c8db006a">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__applet__menu_8h.html#ae1be1dd5e17b8bf09915bebc36d9a423">RemminaAppletMenuPriv</a>* _RemminaAppletMenu::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_applet_menu.html">_RemminaAppletMenu</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_applet_menu.js b/docs/struct___remmina_applet_menu.js
new file mode 100644
index 000000000..26202e961
--- /dev/null
+++ b/docs/struct___remmina_applet_menu.js
@@ -0,0 +1,5 @@
+var struct___remmina_applet_menu =
+[
+ [ "menu", "struct___remmina_applet_menu.html#a182439d81775304ff252c177a30e246f", null ],
+ [ "priv", "struct___remmina_applet_menu.html#a021eca99c32a7db802295342c8db006a", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_applet_menu_class.html b/docs/struct___remmina_applet_menu_class.html
new file mode 100644
index 000000000..53fdf02de
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_class.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAppletMenuClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_applet_menu_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAppletMenuClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aef7303aa0b993f21a3d833e69ccad8e5"><td class="memItemLeft" align="right" valign="top">GtkMenuClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5">parent_class</a></td></tr>
+<tr class="separator:aef7303aa0b993f21a3d833e69ccad8e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5450ba26e2ac6f5d6ef9767151aa0689"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689">launch_item</a> )(<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:a5450ba26e2ac6f5d6ef9767151aa0689"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a874462b2e7f0b07f42bfb589ee742a45"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45">edit_item</a> )(<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td></tr>
+<tr class="separator:a874462b2e7f0b07f42bfb589ee742a45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a874462b2e7f0b07f42bfb589ee742a45"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a874462b2e7f0b07f42bfb589ee742a45">&#9670;&nbsp;</a></span>edit_item</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaAppletMenuClass::edit_item) (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<a id="a5450ba26e2ac6f5d6ef9767151aa0689"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5450ba26e2ac6f5d6ef9767151aa0689">&#9670;&nbsp;</a></span>launch_item</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaAppletMenuClass::launch_item) (<a class="el" href="remmina__applet__menu_8h.html#a91fc5da4ee78e3319009a257b728687d">RemminaAppletMenu</a> *menu)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<a id="aef7303aa0b993f21a3d833e69ccad8e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef7303aa0b993f21a3d833e69ccad8e5">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenuClass _RemminaAppletMenuClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__applet__menu_8h_source.html">remmina_applet_menu.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_applet_menu_class.html">_RemminaAppletMenuClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_applet_menu_class.js b/docs/struct___remmina_applet_menu_class.js
new file mode 100644
index 000000000..7ae2c4f9b
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_class.js
@@ -0,0 +1,6 @@
+var struct___remmina_applet_menu_class =
+[
+ [ "edit_item", "struct___remmina_applet_menu_class.html#a874462b2e7f0b07f42bfb589ee742a45", null ],
+ [ "launch_item", "struct___remmina_applet_menu_class.html#a5450ba26e2ac6f5d6ef9767151aa0689", null ],
+ [ "parent_class", "struct___remmina_applet_menu_class.html#aef7303aa0b993f21a3d833e69ccad8e5", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_applet_menu_item.html b/docs/struct___remmina_applet_menu_item.html
new file mode 100644
index 000000000..feca5ff3a
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_item.html
@@ -0,0 +1,260 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAppletMenuItem Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_applet_menu_item.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAppletMenuItem Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a4bc2551d5d8923cfc232fb64d5cd29d4"><td class="memItemLeft" align="right" valign="top">GtkImageMenuItem&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4">image_menu_item</a></td></tr>
+<tr class="separator:a4bc2551d5d8923cfc232fb64d5cd29d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a770b749c60737542802925cd6f3524fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa">item_type</a></td></tr>
+<tr class="separator:a770b749c60737542802925cd6f3524fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac9b89701606ff0f130f36ec0df55674"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674">filename</a></td></tr>
+<tr class="separator:aac9b89701606ff0f130f36ec0df55674"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfc6c501c400171718ddf4a520154e8c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c">name</a></td></tr>
+<tr class="separator:abfc6c501c400171718ddf4a520154e8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a561b4a6b148ac58ce0fafff8e299fc7e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e">group</a></td></tr>
+<tr class="separator:a561b4a6b148ac58ce0fafff8e299fc7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c122a469388d5000ce5af4ec29a561e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e">protocol</a></td></tr>
+<tr class="separator:a0c122a469388d5000ce5af4ec29a561e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0c498b70034dfb69bbc4ae3ecb2d9a3"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3">server</a></td></tr>
+<tr class="separator:ac0c498b70034dfb69bbc4ae3ecb2d9a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8b3b5815f1b5b665129ab1256cb77e3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3">ssh_tunnel_enabled</a></td></tr>
+<tr class="separator:ae8b3b5815f1b5b665129ab1256cb77e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aac9b89701606ff0f130f36ec0df55674"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac9b89701606ff0f130f36ec0df55674">&#9670;&nbsp;</a></span>filename</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaAppletMenuItem::filename</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="a561b4a6b148ac58ce0fafff8e299fc7e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a561b4a6b148ac58ce0fafff8e299fc7e">&#9670;&nbsp;</a></span>group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaAppletMenuItem::group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="a4bc2551d5d8923cfc232fb64d5cd29d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4bc2551d5d8923cfc232fb64d5cd29d4">&#9670;&nbsp;</a></span>image_menu_item</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkImageMenuItem _RemminaAppletMenuItem::image_menu_item</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00052">52</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="a770b749c60737542802925cd6f3524fa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a770b749c60737542802925cd6f3524fa">&#9670;&nbsp;</a></span>item_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__applet__menu__item_8h.html#a75e42156d38612a96ae48899316b4727">RemminaAppletMenuItemType</a> _RemminaAppletMenuItem::item_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="abfc6c501c400171718ddf4a520154e8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfc6c501c400171718ddf4a520154e8c">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaAppletMenuItem::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="a0c122a469388d5000ce5af4ec29a561e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c122a469388d5000ce5af4ec29a561e">&#9670;&nbsp;</a></span>protocol</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaAppletMenuItem::protocol</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="ac0c498b70034dfb69bbc4ae3ecb2d9a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0c498b70034dfb69bbc4ae3ecb2d9a3">&#9670;&nbsp;</a></span>server</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaAppletMenuItem::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<a id="ae8b3b5815f1b5b665129ab1256cb77e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8b3b5815f1b5b665129ab1256cb77e3">&#9670;&nbsp;</a></span>ssh_tunnel_enabled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaAppletMenuItem::ssh_tunnel_enabled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_applet_menu_item.html">_RemminaAppletMenuItem</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_applet_menu_item.js b/docs/struct___remmina_applet_menu_item.js
new file mode 100644
index 000000000..10b43a4d3
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_item.js
@@ -0,0 +1,11 @@
+var struct___remmina_applet_menu_item =
+[
+ [ "filename", "struct___remmina_applet_menu_item.html#aac9b89701606ff0f130f36ec0df55674", null ],
+ [ "group", "struct___remmina_applet_menu_item.html#a561b4a6b148ac58ce0fafff8e299fc7e", null ],
+ [ "image_menu_item", "struct___remmina_applet_menu_item.html#a4bc2551d5d8923cfc232fb64d5cd29d4", null ],
+ [ "item_type", "struct___remmina_applet_menu_item.html#a770b749c60737542802925cd6f3524fa", null ],
+ [ "name", "struct___remmina_applet_menu_item.html#abfc6c501c400171718ddf4a520154e8c", null ],
+ [ "protocol", "struct___remmina_applet_menu_item.html#a0c122a469388d5000ce5af4ec29a561e", null ],
+ [ "server", "struct___remmina_applet_menu_item.html#ac0c498b70034dfb69bbc4ae3ecb2d9a3", null ],
+ [ "ssh_tunnel_enabled", "struct___remmina_applet_menu_item.html#ae8b3b5815f1b5b665129ab1256cb77e3", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_applet_menu_item_class.html b/docs/struct___remmina_applet_menu_item_class.html
new file mode 100644
index 000000000..62642c881
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_item_class.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAppletMenuItemClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_applet_menu_item_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAppletMenuItemClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae3bd1b45927af62fe3d06575f46e769a"><td class="memItemLeft" align="right" valign="top">GtkImageMenuItemClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a">parent_class</a></td></tr>
+<tr class="separator:ae3bd1b45927af62fe3d06575f46e769a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ae3bd1b45927af62fe3d06575f46e769a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3bd1b45927af62fe3d06575f46e769a">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkImageMenuItemClass _RemminaAppletMenuItemClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__applet__menu__item_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__applet__menu__item_8h_source.html">remmina_applet_menu_item.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_applet_menu_item_class.html">_RemminaAppletMenuItemClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_applet_menu_item_class.js b/docs/struct___remmina_applet_menu_item_class.js
new file mode 100644
index 000000000..fe87aa511
--- /dev/null
+++ b/docs/struct___remmina_applet_menu_item_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_applet_menu_item_class =
+[
+ [ "parent_class", "struct___remmina_applet_menu_item_class.html#ae3bd1b45927af62fe3d06575f46e769a", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_avahi.html b/docs/struct___remmina_avahi.html
new file mode 100644
index 000000000..a09bd97a4
--- /dev/null
+++ b/docs/struct___remmina_avahi.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAvahi Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_avahi.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAvahi Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a52430cc6a84651509f25bc746d31e675"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675">discovered_services</a></td></tr>
+<tr class="separator:a52430cc6a84651509f25bc746d31e675"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab73788ec8ee72842428712efb932d58e"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e">started</a></td></tr>
+<tr class="separator:ab73788ec8ee72842428712efb932d58e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecbc96d4aa70248f15ea9c45e8dec0eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb">priv</a></td></tr>
+<tr class="separator:aecbc96d4aa70248f15ea9c45e8dec0eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a52430cc6a84651509f25bc746d31e675"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52430cc6a84651509f25bc746d31e675">&#9670;&nbsp;</a></span>discovered_services</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaAvahi::discovered_services</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>.</p>
+
+</div>
+</div>
+<a id="aecbc96d4aa70248f15ea9c45e8dec0eb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecbc96d4aa70248f15ea9c45e8dec0eb">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__avahi_8h.html#a7aad6aa551cd2dda96e32390f8b089ba">RemminaAvahiPriv</a>* _RemminaAvahi::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>.</p>
+
+</div>
+</div>
+<a id="ab73788ec8ee72842428712efb932d58e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab73788ec8ee72842428712efb932d58e">&#9670;&nbsp;</a></span>started</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaAvahi::started</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__avahi_8h_source.html">remmina_avahi.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_avahi.html">_RemminaAvahi</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_avahi.js b/docs/struct___remmina_avahi.js
new file mode 100644
index 000000000..1a5e53648
--- /dev/null
+++ b/docs/struct___remmina_avahi.js
@@ -0,0 +1,6 @@
+var struct___remmina_avahi =
+[
+ [ "discovered_services", "struct___remmina_avahi.html#a52430cc6a84651509f25bc746d31e675", null ],
+ [ "priv", "struct___remmina_avahi.html#aecbc96d4aa70248f15ea9c45e8dec0eb", null ],
+ [ "started", "struct___remmina_avahi.html#ab73788ec8ee72842428712efb932d58e", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_avahi_priv.html b/docs/struct___remmina_avahi_priv.html
new file mode 100644
index 000000000..4838e43d3
--- /dev/null
+++ b/docs/struct___remmina_avahi_priv.html
@@ -0,0 +1,204 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaAvahiPriv Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_avahi_priv.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaAvahiPriv Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a1c851271df1130c5e9506223a8a1d304"><td class="memItemLeft" align="right" valign="top">AvahiSimplePoll *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304">simple_poll</a></td></tr>
+<tr class="separator:a1c851271df1130c5e9506223a8a1d304"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad98e9c27645d39dd063259aaa7e81040"><td class="memItemLeft" align="right" valign="top">AvahiClient *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040">client</a></td></tr>
+<tr class="separator:ad98e9c27645d39dd063259aaa7e81040"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabad1866d4f15fe3eb42b0438becffe8"><td class="memItemLeft" align="right" valign="top">AvahiServiceBrowser *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8">sb</a></td></tr>
+<tr class="separator:aabad1866d4f15fe3eb42b0438becffe8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50c8ac85caddd549b65e8b5f56d7b7e0"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0">iterate_handler</a></td></tr>
+<tr class="separator:a50c8ac85caddd549b65e8b5f56d7b7e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3522087756f916a09e25faa681e69cf8"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8">has_event</a></td></tr>
+<tr class="separator:a3522087756f916a09e25faa681e69cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00050">50</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ad98e9c27645d39dd063259aaa7e81040"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad98e9c27645d39dd063259aaa7e81040">&#9670;&nbsp;</a></span>client</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AvahiClient* _RemminaAvahiPriv::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00052">52</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a3522087756f916a09e25faa681e69cf8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3522087756f916a09e25faa681e69cf8">&#9670;&nbsp;</a></span>has_event</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaAvahiPriv::has_event</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a50c8ac85caddd549b65e8b5f56d7b7e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50c8ac85caddd549b65e8b5f56d7b7e0">&#9670;&nbsp;</a></span>iterate_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaAvahiPriv::iterate_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="aabad1866d4f15fe3eb42b0438becffe8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aabad1866d4f15fe3eb42b0438becffe8">&#9670;&nbsp;</a></span>sb</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AvahiServiceBrowser* _RemminaAvahiPriv::sb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<a id="a1c851271df1130c5e9506223a8a1d304"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c851271df1130c5e9506223a8a1d304">&#9670;&nbsp;</a></span>simple_poll</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AvahiSimplePoll* _RemminaAvahiPriv::simple_poll</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__avahi_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__avahi_8c_source.html">remmina_avahi.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_avahi_priv.html">_RemminaAvahiPriv</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_avahi_priv.js b/docs/struct___remmina_avahi_priv.js
new file mode 100644
index 000000000..53e74fb1d
--- /dev/null
+++ b/docs/struct___remmina_avahi_priv.js
@@ -0,0 +1,8 @@
+var struct___remmina_avahi_priv =
+[
+ [ "client", "struct___remmina_avahi_priv.html#ad98e9c27645d39dd063259aaa7e81040", null ],
+ [ "has_event", "struct___remmina_avahi_priv.html#a3522087756f916a09e25faa681e69cf8", null ],
+ [ "iterate_handler", "struct___remmina_avahi_priv.html#a50c8ac85caddd549b65e8b5f56d7b7e0", null ],
+ [ "sb", "struct___remmina_avahi_priv.html#aabad1866d4f15fe3eb42b0438becffe8", null ],
+ [ "simple_poll", "struct___remmina_avahi_priv.html#a1c851271df1130c5e9506223a8a1d304", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_cell_renderer_pixbuf.html b/docs/struct___remmina_cell_renderer_pixbuf.html
new file mode 100644
index 000000000..e46bbbea4
--- /dev/null
+++ b/docs/struct___remmina_cell_renderer_pixbuf.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaCellRendererPixbuf Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_cell_renderer_pixbuf.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaCellRendererPixbuf Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:adc32a5ea949ab492a1d57e64a1adf045"><td class="memItemLeft" align="right" valign="top">GtkCellRendererPixbuf&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045">renderer</a></td></tr>
+<tr class="separator:adc32a5ea949ab492a1d57e64a1adf045"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="adc32a5ea949ab492a1d57e64a1adf045"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc32a5ea949ab492a1d57e64a1adf045">&#9670;&nbsp;</a></span>renderer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCellRendererPixbuf _RemminaCellRendererPixbuf::renderer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_cell_renderer_pixbuf.html">_RemminaCellRendererPixbuf</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_cell_renderer_pixbuf.js b/docs/struct___remmina_cell_renderer_pixbuf.js
new file mode 100644
index 000000000..d9721c6a3
--- /dev/null
+++ b/docs/struct___remmina_cell_renderer_pixbuf.js
@@ -0,0 +1,4 @@
+var struct___remmina_cell_renderer_pixbuf =
+[
+ [ "renderer", "struct___remmina_cell_renderer_pixbuf.html#adc32a5ea949ab492a1d57e64a1adf045", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_cell_renderer_pixbuf_class.html b/docs/struct___remmina_cell_renderer_pixbuf_class.html
new file mode 100644
index 000000000..3dddf9891
--- /dev/null
+++ b/docs/struct___remmina_cell_renderer_pixbuf_class.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaCellRendererPixbufClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_cell_renderer_pixbuf_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaCellRendererPixbufClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac51470401f7cc972ca9b767e3aa15279"><td class="memItemLeft" align="right" valign="top">GtkCellRendererPixbufClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279">parent_class</a></td></tr>
+<tr class="separator:ac51470401f7cc972ca9b767e3aa15279"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7de48233aa52dcdb6cacecc31d2e63e1"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1">activate</a> )(<a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a> *renderer)</td></tr>
+<tr class="separator:a7de48233aa52dcdb6cacecc31d2e63e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00068">68</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a7de48233aa52dcdb6cacecc31d2e63e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7de48233aa52dcdb6cacecc31d2e63e1">&#9670;&nbsp;</a></span>activate</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaCellRendererPixbufClass::activate) (<a class="el" href="remmina__ftp__client_8c.html#aa7761ce5db26b435ced129f5e4fb3d30">RemminaCellRendererPixbuf</a> *renderer)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00071">71</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<a id="ac51470401f7cc972ca9b767e3aa15279"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac51470401f7cc972ca9b767e3aa15279">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCellRendererPixbufClass _RemminaCellRendererPixbufClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ftp__client_8c_source.html">remmina_ftp_client.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_cell_renderer_pixbuf_class.html">_RemminaCellRendererPixbufClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_cell_renderer_pixbuf_class.js b/docs/struct___remmina_cell_renderer_pixbuf_class.js
new file mode 100644
index 000000000..c87be579e
--- /dev/null
+++ b/docs/struct___remmina_cell_renderer_pixbuf_class.js
@@ -0,0 +1,5 @@
+var struct___remmina_cell_renderer_pixbuf_class =
+[
+ [ "activate", "struct___remmina_cell_renderer_pixbuf_class.html#a7de48233aa52dcdb6cacecc31d2e63e1", null ],
+ [ "parent_class", "struct___remmina_cell_renderer_pixbuf_class.html#ac51470401f7cc972ca9b767e3aa15279", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_chat_window.html b/docs/struct___remmina_chat_window.html
new file mode 100644
index 000000000..3da8c27e9
--- /dev/null
+++ b/docs/struct___remmina_chat_window.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaChatWindow Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_chat_window.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaChatWindow Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a60ccf6b47dcaf89b022eb6c2f71dcd29"><td class="memItemLeft" align="right" valign="top">GtkWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29">window</a></td></tr>
+<tr class="separator:a60ccf6b47dcaf89b022eb6c2f71dcd29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac3dfd93816abc268d25268c779719ea"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea">history_text</a></td></tr>
+<tr class="separator:aac3dfd93816abc268d25268c779719ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36b1b309a457128964ca6ebfc99e155c"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c">send_text</a></td></tr>
+<tr class="separator:a36b1b309a457128964ca6ebfc99e155c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aac3dfd93816abc268d25268c779719ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac3dfd93816abc268d25268c779719ea">&#9670;&nbsp;</a></span>history_text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaChatWindow::history_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+
+</div>
+</div>
+<a id="a36b1b309a457128964ca6ebfc99e155c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36b1b309a457128964ca6ebfc99e155c">&#9670;&nbsp;</a></span>send_text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaChatWindow::send_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+
+</div>
+</div>
+<a id="a60ccf6b47dcaf89b022eb6c2f71dcd29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60ccf6b47dcaf89b022eb6c2f71dcd29">&#9670;&nbsp;</a></span>window</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow _RemminaChatWindow::window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_chat_window.html">_RemminaChatWindow</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_chat_window.js b/docs/struct___remmina_chat_window.js
new file mode 100644
index 000000000..d7fc08c93
--- /dev/null
+++ b/docs/struct___remmina_chat_window.js
@@ -0,0 +1,6 @@
+var struct___remmina_chat_window =
+[
+ [ "history_text", "struct___remmina_chat_window.html#aac3dfd93816abc268d25268c779719ea", null ],
+ [ "send_text", "struct___remmina_chat_window.html#a36b1b309a457128964ca6ebfc99e155c", null ],
+ [ "window", "struct___remmina_chat_window.html#a60ccf6b47dcaf89b022eb6c2f71dcd29", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_chat_window_class.html b/docs/struct___remmina_chat_window_class.html
new file mode 100644
index 000000000..12a6a65a4
--- /dev/null
+++ b/docs/struct___remmina_chat_window_class.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaChatWindowClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_chat_window_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaChatWindowClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:abdd29d9a92f995c4fc1664a61bd4cb19"><td class="memItemLeft" align="right" valign="top">GtkWindowClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19">parent_class</a></td></tr>
+<tr class="separator:abdd29d9a92f995c4fc1664a61bd4cb19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac40f2808400f75787b0a1193744e3372"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372">send</a> )(<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td></tr>
+<tr class="separator:ac40f2808400f75787b0a1193744e3372"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="abdd29d9a92f995c4fc1664a61bd4cb19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abdd29d9a92f995c4fc1664a61bd4cb19">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindowClass _RemminaChatWindowClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+
+</div>
+</div>
+<a id="ac40f2808400f75787b0a1193744e3372"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac40f2808400f75787b0a1193744e3372">&#9670;&nbsp;</a></span>send</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaChatWindowClass::send) (<a class="el" href="remmina__chat__window_8h.html#afac452bad12df11e7d37cfaa07488446">RemminaChatWindow</a> *window)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__chat__window_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__chat__window_8h_source.html">remmina_chat_window.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_chat_window_class.html">_RemminaChatWindowClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_chat_window_class.js b/docs/struct___remmina_chat_window_class.js
new file mode 100644
index 000000000..cc1467772
--- /dev/null
+++ b/docs/struct___remmina_chat_window_class.js
@@ -0,0 +1,5 @@
+var struct___remmina_chat_window_class =
+[
+ [ "parent_class", "struct___remmina_chat_window_class.html#abdd29d9a92f995c4fc1664a61bd4cb19", null ],
+ [ "send", "struct___remmina_chat_window_class.html#ac40f2808400f75787b0a1193744e3372", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_color_pref.html b/docs/struct___remmina_color_pref.html
new file mode 100644
index 000000000..e911ee6a7
--- /dev/null
+++ b/docs/struct___remmina_color_pref.html
@@ -0,0 +1,458 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaColorPref Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_color_pref.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaColorPref Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a675a8004488715429fa540dffb330d49"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49">background</a></td></tr>
+<tr class="separator:a675a8004488715429fa540dffb330d49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ae99dc78a80baa14e0407983077c500"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500">cursor</a></td></tr>
+<tr class="separator:a5ae99dc78a80baa14e0407983077c500"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa495bd5170c952a7dccff4e2504f5867"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867">foreground</a></td></tr>
+<tr class="separator:aa495bd5170c952a7dccff4e2504f5867"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a14fc38e73351f9009fe155dd859808"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808">color0</a></td></tr>
+<tr class="separator:a2a14fc38e73351f9009fe155dd859808"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4a65b76fbdc0b3e97d3046f0b48e1ff"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff">color1</a></td></tr>
+<tr class="separator:aa4a65b76fbdc0b3e97d3046f0b48e1ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a897d3fdc112fd9f96d2363f4094fc4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4">color2</a></td></tr>
+<tr class="separator:a3a897d3fdc112fd9f96d2363f4094fc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2b41853bdaaefa3968017819c19d316"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316">color3</a></td></tr>
+<tr class="separator:ab2b41853bdaaefa3968017819c19d316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa7c4748f22173796b35d1d50b6c1914"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914">color4</a></td></tr>
+<tr class="separator:afa7c4748f22173796b35d1d50b6c1914"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d0facd5a0480a450d525ce9ef4fed60"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60">color5</a></td></tr>
+<tr class="separator:a2d0facd5a0480a450d525ce9ef4fed60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d7f02ac9b6890ad675b702708bc4af9"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9">color6</a></td></tr>
+<tr class="separator:a8d7f02ac9b6890ad675b702708bc4af9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d9bd13f411189c9d8d8a08ceb77e8d7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7">color7</a></td></tr>
+<tr class="separator:a1d9bd13f411189c9d8d8a08ceb77e8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d92875f0034e5fc3d360d97d5992bd4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4">color8</a></td></tr>
+<tr class="separator:a5d92875f0034e5fc3d360d97d5992bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8ae5e31836066ac69f7c907f30d2ffc"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc">color9</a></td></tr>
+<tr class="separator:ac8ae5e31836066ac69f7c907f30d2ffc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae26f55ce50c1485cda60106c5f24256c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c">color10</a></td></tr>
+<tr class="separator:ae26f55ce50c1485cda60106c5f24256c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8e90ea1299ef641fbef1495f899cf97"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97">color11</a></td></tr>
+<tr class="separator:ac8e90ea1299ef641fbef1495f899cf97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2ca13ee672a2536665f66d544753928"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928">color12</a></td></tr>
+<tr class="separator:ab2ca13ee672a2536665f66d544753928"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24a8c38ab11389b860d0658812ff7bbc"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc">color13</a></td></tr>
+<tr class="separator:a24a8c38ab11389b860d0658812ff7bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ad947d133d2aa2c94756aacb5031e79"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79">color14</a></td></tr>
+<tr class="separator:a4ad947d133d2aa2c94756aacb5031e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c109e8479617a5e6da0fcaccf511c60"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60">color15</a></td></tr>
+<tr class="separator:a8c109e8479617a5e6da0fcaccf511c60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00088">88</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a675a8004488715429fa540dffb330d49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a675a8004488715429fa540dffb330d49">&#9670;&nbsp;</a></span>background</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::background</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00090">90</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a2a14fc38e73351f9009fe155dd859808"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a14fc38e73351f9009fe155dd859808">&#9670;&nbsp;</a></span>color0</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00093">93</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aa4a65b76fbdc0b3e97d3046f0b48e1ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa4a65b76fbdc0b3e97d3046f0b48e1ff">&#9670;&nbsp;</a></span>color1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00094">94</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ae26f55ce50c1485cda60106c5f24256c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae26f55ce50c1485cda60106c5f24256c">&#9670;&nbsp;</a></span>color10</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color10</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00103">103</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac8e90ea1299ef641fbef1495f899cf97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8e90ea1299ef641fbef1495f899cf97">&#9670;&nbsp;</a></span>color11</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color11</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00104">104</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ab2ca13ee672a2536665f66d544753928"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2ca13ee672a2536665f66d544753928">&#9670;&nbsp;</a></span>color12</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color12</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00105">105</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a24a8c38ab11389b860d0658812ff7bbc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24a8c38ab11389b860d0658812ff7bbc">&#9670;&nbsp;</a></span>color13</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color13</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00106">106</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4ad947d133d2aa2c94756aacb5031e79"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ad947d133d2aa2c94756aacb5031e79">&#9670;&nbsp;</a></span>color14</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color14</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00107">107</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a8c109e8479617a5e6da0fcaccf511c60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c109e8479617a5e6da0fcaccf511c60">&#9670;&nbsp;</a></span>color15</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color15</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00108">108</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a3a897d3fdc112fd9f96d2363f4094fc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a897d3fdc112fd9f96d2363f4094fc4">&#9670;&nbsp;</a></span>color2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00095">95</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ab2b41853bdaaefa3968017819c19d316"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2b41853bdaaefa3968017819c19d316">&#9670;&nbsp;</a></span>color3</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00096">96</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="afa7c4748f22173796b35d1d50b6c1914"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa7c4748f22173796b35d1d50b6c1914">&#9670;&nbsp;</a></span>color4</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00097">97</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a2d0facd5a0480a450d525ce9ef4fed60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d0facd5a0480a450d525ce9ef4fed60">&#9670;&nbsp;</a></span>color5</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color5</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00098">98</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a8d7f02ac9b6890ad675b702708bc4af9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d7f02ac9b6890ad675b702708bc4af9">&#9670;&nbsp;</a></span>color6</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00099">99</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a1d9bd13f411189c9d8d8a08ceb77e8d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d9bd13f411189c9d8d8a08ceb77e8d7">&#9670;&nbsp;</a></span>color7</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color7</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00100">100</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d92875f0034e5fc3d360d97d5992bd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d92875f0034e5fc3d360d97d5992bd4">&#9670;&nbsp;</a></span>color8</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00101">101</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac8ae5e31836066ac69f7c907f30d2ffc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8ae5e31836066ac69f7c907f30d2ffc">&#9670;&nbsp;</a></span>color9</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::color9</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00102">102</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a5ae99dc78a80baa14e0407983077c500"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ae99dc78a80baa14e0407983077c500">&#9670;&nbsp;</a></span>cursor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::cursor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00091">91</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aa495bd5170c952a7dccff4e2504f5867"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa495bd5170c952a7dccff4e2504f5867">&#9670;&nbsp;</a></span>foreground</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaColorPref::foreground</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00092">92</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_color_pref.html">_RemminaColorPref</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_color_pref.js b/docs/struct___remmina_color_pref.js
new file mode 100644
index 000000000..faeb8cf82
--- /dev/null
+++ b/docs/struct___remmina_color_pref.js
@@ -0,0 +1,22 @@
+var struct___remmina_color_pref =
+[
+ [ "background", "struct___remmina_color_pref.html#a675a8004488715429fa540dffb330d49", null ],
+ [ "color0", "struct___remmina_color_pref.html#a2a14fc38e73351f9009fe155dd859808", null ],
+ [ "color1", "struct___remmina_color_pref.html#aa4a65b76fbdc0b3e97d3046f0b48e1ff", null ],
+ [ "color10", "struct___remmina_color_pref.html#ae26f55ce50c1485cda60106c5f24256c", null ],
+ [ "color11", "struct___remmina_color_pref.html#ac8e90ea1299ef641fbef1495f899cf97", null ],
+ [ "color12", "struct___remmina_color_pref.html#ab2ca13ee672a2536665f66d544753928", null ],
+ [ "color13", "struct___remmina_color_pref.html#a24a8c38ab11389b860d0658812ff7bbc", null ],
+ [ "color14", "struct___remmina_color_pref.html#a4ad947d133d2aa2c94756aacb5031e79", null ],
+ [ "color15", "struct___remmina_color_pref.html#a8c109e8479617a5e6da0fcaccf511c60", null ],
+ [ "color2", "struct___remmina_color_pref.html#a3a897d3fdc112fd9f96d2363f4094fc4", null ],
+ [ "color3", "struct___remmina_color_pref.html#ab2b41853bdaaefa3968017819c19d316", null ],
+ [ "color4", "struct___remmina_color_pref.html#afa7c4748f22173796b35d1d50b6c1914", null ],
+ [ "color5", "struct___remmina_color_pref.html#a2d0facd5a0480a450d525ce9ef4fed60", null ],
+ [ "color6", "struct___remmina_color_pref.html#a8d7f02ac9b6890ad675b702708bc4af9", null ],
+ [ "color7", "struct___remmina_color_pref.html#a1d9bd13f411189c9d8d8a08ceb77e8d7", null ],
+ [ "color8", "struct___remmina_color_pref.html#a5d92875f0034e5fc3d360d97d5992bd4", null ],
+ [ "color9", "struct___remmina_color_pref.html#ac8ae5e31836066ac69f7c907f30d2ffc", null ],
+ [ "cursor", "struct___remmina_color_pref.html#a5ae99dc78a80baa14e0407983077c500", null ],
+ [ "foreground", "struct___remmina_color_pref.html#aa495bd5170c952a7dccff4e2504f5867", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_connection_object.html b/docs/struct___remmina_connection_object.html
new file mode 100644
index 000000000..3ff2a0df6
--- /dev/null
+++ b/docs/struct___remmina_connection_object.html
@@ -0,0 +1,294 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaConnectionObject Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_connection_object.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaConnectionObject Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a871e61a40fb0acd54b10191a3942d328"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328">cnnwin</a></td></tr>
+<tr class="separator:a871e61a40fb0acd54b10191a3942d328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a431b19fa993d0810e88cc973a307303c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c">remmina_file</a></td></tr>
+<tr class="separator:a431b19fa993d0810e88cc973a307303c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea86c673d5c1600844e0d1642c856995"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995">proto</a></td></tr>
+<tr class="separator:aea86c673d5c1600844e0d1642c856995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45652d9f81875c51991ddf6942d7b2ae"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae">aspectframe</a></td></tr>
+<tr class="separator:a45652d9f81875c51991ddf6942d7b2ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a016a7b65f9db00458f3fc000c7e3a89d"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d">viewport</a></td></tr>
+<tr class="separator:a016a7b65f9db00458f3fc000c7e3a89d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef266e6ae11db020512b3dec8f689d30"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30">scrolled_container</a></td></tr>
+<tr class="separator:aef266e6ae11db020512b3dec8f689d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f3920f6710917d6944491ae1d7b1250"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250">plugin_can_scale</a></td></tr>
+<tr class="separator:a1f3920f6710917d6944491ae1d7b1250"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed1d667ed3085ee229c0dfdcf715084d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d">connected</a></td></tr>
+<tr class="separator:aed1d667ed3085ee229c0dfdcf715084d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71136a01b1cc4d14e0047b32ec4d8a4a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a">dynres_unlocked</a></td></tr>
+<tr class="separator:a71136a01b1cc4d14e0047b32ec4d8a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09f89d6c0e4e52905aba1dd093e5c7f2"><td class="memItemLeft" align="right" valign="top">gulong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2">deferred_open_size_allocate_handler</a></td></tr>
+<tr class="separator:a09f89d6c0e4e52905aba1dd093e5c7f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00152">152</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a45652d9f81875c51991ddf6942d7b2ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45652d9f81875c51991ddf6942d7b2ae">&#9670;&nbsp;</a></span>aspectframe</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaConnectionObject::aspectframe</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00157">157</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a871e61a40fb0acd54b10191a3942d328"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a871e61a40fb0acd54b10191a3942d328">&#9670;&nbsp;</a></span>cnnwin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a>* _RemminaConnectionObject::cnnwin</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00153">153</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aed1d667ed3085ee229c0dfdcf715084d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed1d667ed3085ee229c0dfdcf715084d">&#9670;&nbsp;</a></span>connected</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaConnectionObject::connected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00164">164</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a09f89d6c0e4e52905aba1dd093e5c7f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09f89d6c0e4e52905aba1dd093e5c7f2">&#9670;&nbsp;</a></span>deferred_open_size_allocate_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gulong _RemminaConnectionObject::deferred_open_size_allocate_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00167">167</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a71136a01b1cc4d14e0047b32ec4d8a4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71136a01b1cc4d14e0047b32ec4d8a4a">&#9670;&nbsp;</a></span>dynres_unlocked</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaConnectionObject::dynres_unlocked</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00165">165</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a1f3920f6710917d6944491ae1d7b1250"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f3920f6710917d6944491ae1d7b1250">&#9670;&nbsp;</a></span>plugin_can_scale</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaConnectionObject::plugin_can_scale</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00162">162</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aea86c673d5c1600844e0d1642c856995"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea86c673d5c1600844e0d1642c856995">&#9670;&nbsp;</a></span>proto</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaConnectionObject::proto</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00156">156</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a431b19fa993d0810e88cc973a307303c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a431b19fa993d0810e88cc973a307303c">&#9670;&nbsp;</a></span>remmina_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* _RemminaConnectionObject::remmina_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00154">154</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="aef266e6ae11db020512b3dec8f689d30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef266e6ae11db020512b3dec8f689d30">&#9670;&nbsp;</a></span>scrolled_container</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaConnectionObject::scrolled_container</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00160">160</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<a id="a016a7b65f9db00458f3fc000c7e3a89d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a016a7b65f9db00458f3fc000c7e3a89d">&#9670;&nbsp;</a></span>viewport</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaConnectionObject::viewport</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8c_source.html#l00158">158</a> of file <a class="el" href="rcw_8c_source.html">rcw.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rcw_8c_source.html">rcw.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_connection_object.html">_RemminaConnectionObject</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_connection_object.js b/docs/struct___remmina_connection_object.js
new file mode 100644
index 000000000..f54f8adae
--- /dev/null
+++ b/docs/struct___remmina_connection_object.js
@@ -0,0 +1,13 @@
+var struct___remmina_connection_object =
+[
+ [ "aspectframe", "struct___remmina_connection_object.html#a45652d9f81875c51991ddf6942d7b2ae", null ],
+ [ "cnnwin", "struct___remmina_connection_object.html#a871e61a40fb0acd54b10191a3942d328", null ],
+ [ "connected", "struct___remmina_connection_object.html#aed1d667ed3085ee229c0dfdcf715084d", null ],
+ [ "deferred_open_size_allocate_handler", "struct___remmina_connection_object.html#a09f89d6c0e4e52905aba1dd093e5c7f2", null ],
+ [ "dynres_unlocked", "struct___remmina_connection_object.html#a71136a01b1cc4d14e0047b32ec4d8a4a", null ],
+ [ "plugin_can_scale", "struct___remmina_connection_object.html#a1f3920f6710917d6944491ae1d7b1250", null ],
+ [ "proto", "struct___remmina_connection_object.html#aea86c673d5c1600844e0d1642c856995", null ],
+ [ "remmina_file", "struct___remmina_connection_object.html#a431b19fa993d0810e88cc973a307303c", null ],
+ [ "scrolled_container", "struct___remmina_connection_object.html#aef266e6ae11db020512b3dec8f689d30", null ],
+ [ "viewport", "struct___remmina_connection_object.html#a016a7b65f9db00458f3fc000c7e3a89d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_connection_window.html b/docs/struct___remmina_connection_window.html
new file mode 100644
index 000000000..75943e9a6
--- /dev/null
+++ b/docs/struct___remmina_connection_window.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaConnectionWindow Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_connection_window.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaConnectionWindow Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rcw_8h_source.html">rcw.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a587c1131f16856f8b114d0a51d261d0d"><td class="memItemLeft" align="right" valign="top">GtkWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d">window</a></td></tr>
+<tr class="separator:a587c1131f16856f8b114d0a51d261d0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05faadfc5f0372cca2f4552b1882813c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c">priv</a></td></tr>
+<tr class="separator:a05faadfc5f0372cca2f4552b1882813c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00053">53</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a05faadfc5f0372cca2f4552b1882813c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05faadfc5f0372cca2f4552b1882813c">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rcw_8h.html#a4bfcfdfd9d43712dd05d90ed3fd47dec">RemminaConnectionWindowPriv</a>* _RemminaConnectionWindow::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00055">55</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<a id="a587c1131f16856f8b114d0a51d261d0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a587c1131f16856f8b114d0a51d261d0d">&#9670;&nbsp;</a></span>window</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow _RemminaConnectionWindow::window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00054">54</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rcw_8h_source.html">rcw.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_connection_window.html">_RemminaConnectionWindow</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_connection_window.js b/docs/struct___remmina_connection_window.js
new file mode 100644
index 000000000..77b377241
--- /dev/null
+++ b/docs/struct___remmina_connection_window.js
@@ -0,0 +1,5 @@
+var struct___remmina_connection_window =
+[
+ [ "priv", "struct___remmina_connection_window.html#a05faadfc5f0372cca2f4552b1882813c", null ],
+ [ "window", "struct___remmina_connection_window.html#a587c1131f16856f8b114d0a51d261d0d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_connection_window_class.html b/docs/struct___remmina_connection_window_class.html
new file mode 100644
index 000000000..6b86e19f1
--- /dev/null
+++ b/docs/struct___remmina_connection_window_class.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaConnectionWindowClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_connection_window_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaConnectionWindowClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rcw_8h_source.html">rcw.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a2096ee805de905a622754cf5d31170ab"><td class="memItemLeft" align="right" valign="top">GtkWindowClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab">parent_class</a></td></tr>
+<tr class="separator:a2096ee805de905a622754cf5d31170ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb815c87f3bddad607a61d293eef661d"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d">toolbar_place</a> )(<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *gp)</td></tr>
+<tr class="separator:aeb815c87f3bddad607a61d293eef661d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00058">58</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a2096ee805de905a622754cf5d31170ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2096ee805de905a622754cf5d31170ab">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindowClass _RemminaConnectionWindowClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00059">59</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<a id="aeb815c87f3bddad607a61d293eef661d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb815c87f3bddad607a61d293eef661d">&#9670;&nbsp;</a></span>toolbar_place</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaConnectionWindowClass::toolbar_place) (<a class="el" href="rcw_8h.html#aed2c8083c39e5e137651f1a7db750fe7">RemminaConnectionWindow</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rcw_8h_source.html#l00060">60</a> of file <a class="el" href="rcw_8h_source.html">rcw.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rcw_8h_source.html">rcw.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_connection_window_class.html">_RemminaConnectionWindowClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_connection_window_class.js b/docs/struct___remmina_connection_window_class.js
new file mode 100644
index 000000000..8c52d5416
--- /dev/null
+++ b/docs/struct___remmina_connection_window_class.js
@@ -0,0 +1,5 @@
+var struct___remmina_connection_window_class =
+[
+ [ "parent_class", "struct___remmina_connection_window_class.html#a2096ee805de905a622754cf5d31170ab", null ],
+ [ "toolbar_place", "struct___remmina_connection_window_class.html#aeb815c87f3bddad607a61d293eef661d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_entry_plugin.html b/docs/struct___remmina_entry_plugin.html
new file mode 100644
index 000000000..dd4c29c34
--- /dev/null
+++ b/docs/struct___remmina_entry_plugin.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaEntryPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_entry_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaEntryPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a96038d752844e137a47f8e2aa1e67264"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264">type</a></td></tr>
+<tr class="separator:a96038d752844e137a47f8e2aa1e67264"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c4f13e65c7b64ba2d8bc019fd00e6a1"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1">name</a></td></tr>
+<tr class="separator:a4c4f13e65c7b64ba2d8bc019fd00e6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abec2e8cc2551f64eda4ee21d553accd4"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4">description</a></td></tr>
+<tr class="separator:abec2e8cc2551f64eda4ee21d553accd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44723a4f75f1a2ac3e029212fe0e8533"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533">domain</a></td></tr>
+<tr class="separator:a44723a4f75f1a2ac3e029212fe0e8533"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afb8b164b36f2a9cff50176befbc23441"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441">version</a></td></tr>
+<tr class="separator:afb8b164b36f2a9cff50176befbc23441"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8e4f49e821e5ca062d08726d976785e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e">entry_func</a> )(void)</td></tr>
+<tr class="separator:af8e4f49e821e5ca062d08726d976785e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00084">84</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="abec2e8cc2551f64eda4ee21d553accd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abec2e8cc2551f64eda4ee21d553accd4">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaEntryPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00087">87</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a44723a4f75f1a2ac3e029212fe0e8533"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44723a4f75f1a2ac3e029212fe0e8533">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaEntryPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00088">88</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af8e4f49e821e5ca062d08726d976785e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af8e4f49e821e5ca062d08726d976785e">&#9670;&nbsp;</a></span>entry_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaEntryPlugin::entry_func) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00091">91</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c4f13e65c7b64ba2d8bc019fd00e6a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c4f13e65c7b64ba2d8bc019fd00e6a1">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaEntryPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00086">86</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a96038d752844e137a47f8e2aa1e67264"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96038d752844e137a47f8e2aa1e67264">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaEntryPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00085">85</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="afb8b164b36f2a9cff50176befbc23441"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afb8b164b36f2a9cff50176befbc23441">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaEntryPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00089">89</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_entry_plugin.js b/docs/struct___remmina_entry_plugin.js
new file mode 100644
index 000000000..b029ebcbe
--- /dev/null
+++ b/docs/struct___remmina_entry_plugin.js
@@ -0,0 +1,9 @@
+var struct___remmina_entry_plugin =
+[
+ [ "description", "struct___remmina_entry_plugin.html#abec2e8cc2551f64eda4ee21d553accd4", null ],
+ [ "domain", "struct___remmina_entry_plugin.html#a44723a4f75f1a2ac3e029212fe0e8533", null ],
+ [ "entry_func", "struct___remmina_entry_plugin.html#af8e4f49e821e5ca062d08726d976785e", null ],
+ [ "name", "struct___remmina_entry_plugin.html#a4c4f13e65c7b64ba2d8bc019fd00e6a1", null ],
+ [ "type", "struct___remmina_entry_plugin.html#a96038d752844e137a47f8e2aa1e67264", null ],
+ [ "version", "struct___remmina_entry_plugin.html#afb8b164b36f2a9cff50176befbc23441", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_f_t_p_client.html b/docs/struct___remmina_f_t_p_client.html
new file mode 100644
index 000000000..28c8c8aec
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_client.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFTPClient Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_f_t_p_client.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFTPClient Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3eec2ebafca433ebd11bdd842cbb5f77"><td class="memItemLeft" align="right" valign="top">GtkVBox&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77">vbox</a></td></tr>
+<tr class="separator:a3eec2ebafca433ebd11bdd842cbb5f77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61c9dbffff97bf4c7a734694d25ccd54"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54">priv</a></td></tr>
+<tr class="separator:a61c9dbffff97bf4c7a734694d25ccd54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a61c9dbffff97bf4c7a734694d25ccd54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61c9dbffff97bf4c7a734694d25ccd54">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#ab0911922a4cacc72610b6c2c8874f41a">RemminaFTPClientPriv</a>* _RemminaFTPClient::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a3eec2ebafca433ebd11bdd842cbb5f77"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3eec2ebafca433ebd11bdd842cbb5f77">&#9670;&nbsp;</a></span>vbox</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkVBox _RemminaFTPClient::vbox</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_f_t_p_client.html">_RemminaFTPClient</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_f_t_p_client.js b/docs/struct___remmina_f_t_p_client.js
new file mode 100644
index 000000000..97cf75a69
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_client.js
@@ -0,0 +1,5 @@
+var struct___remmina_f_t_p_client =
+[
+ [ "priv", "struct___remmina_f_t_p_client.html#a61c9dbffff97bf4c7a734694d25ccd54", null ],
+ [ "vbox", "struct___remmina_f_t_p_client.html#a3eec2ebafca433ebd11bdd842cbb5f77", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_f_t_p_client_class.html b/docs/struct___remmina_f_t_p_client_class.html
new file mode 100644
index 000000000..c029ce1e4
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_client_class.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFTPClientClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_f_t_p_client_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFTPClientClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aa4cb68b2d9fe79007367c5f5365129ce"><td class="memItemLeft" align="right" valign="top">GtkVBoxClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce">parent_class</a></td></tr>
+<tr class="separator:aa4cb68b2d9fe79007367c5f5365129ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50c3b5a263a2b348c6a192c0e138aab7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7">open_dir</a> )(<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a50c3b5a263a2b348c6a192c0e138aab7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad65a4bb9e31b05cfe0038eebfda46343"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343">new_task</a> )(<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:ad65a4bb9e31b05cfe0038eebfda46343"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99fedf4b912c0bb38662644fe4798a93"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93">cancel_task</a> )(<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a99fedf4b912c0bb38662644fe4798a93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ea513b3c48abc246d714dc125b2c905"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905">delete_file</a> )(<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td></tr>
+<tr class="separator:a6ea513b3c48abc246d714dc125b2c905"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a99fedf4b912c0bb38662644fe4798a93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99fedf4b912c0bb38662644fe4798a93">&#9670;&nbsp;</a></span>cancel_task</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaFTPClientClass::cancel_task) (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a6ea513b3c48abc246d714dc125b2c905"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ea513b3c48abc246d714dc125b2c905">&#9670;&nbsp;</a></span>delete_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaFTPClientClass::delete_file) (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="ad65a4bb9e31b05cfe0038eebfda46343"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad65a4bb9e31b05cfe0038eebfda46343">&#9670;&nbsp;</a></span>new_task</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaFTPClientClass::new_task) (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a50c3b5a263a2b348c6a192c0e138aab7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50c3b5a263a2b348c6a192c0e138aab7">&#9670;&nbsp;</a></span>open_dir</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaFTPClientClass::open_dir) (<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *client)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="aa4cb68b2d9fe79007367c5f5365129ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa4cb68b2d9fe79007367c5f5365129ce">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkVBoxClass _RemminaFTPClientClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_f_t_p_client_class.html">_RemminaFTPClientClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_f_t_p_client_class.js b/docs/struct___remmina_f_t_p_client_class.js
new file mode 100644
index 000000000..d0149ab02
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_client_class.js
@@ -0,0 +1,8 @@
+var struct___remmina_f_t_p_client_class =
+[
+ [ "cancel_task", "struct___remmina_f_t_p_client_class.html#a99fedf4b912c0bb38662644fe4798a93", null ],
+ [ "delete_file", "struct___remmina_f_t_p_client_class.html#a6ea513b3c48abc246d714dc125b2c905", null ],
+ [ "new_task", "struct___remmina_f_t_p_client_class.html#ad65a4bb9e31b05cfe0038eebfda46343", null ],
+ [ "open_dir", "struct___remmina_f_t_p_client_class.html#a50c3b5a263a2b348c6a192c0e138aab7", null ],
+ [ "parent_class", "struct___remmina_f_t_p_client_class.html#aa4cb68b2d9fe79007367c5f5365129ce", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_f_t_p_task.html b/docs/struct___remmina_f_t_p_task.html
new file mode 100644
index 000000000..dd6a270d0
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_task.html
@@ -0,0 +1,314 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFTPTask Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_f_t_p_task.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFTPTask Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a9af7875a6abd79732abd2346371f8fc9"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9">type</a></td></tr>
+<tr class="separator:a9af7875a6abd79732abd2346371f8fc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8facf6f7974c51e238abd7096c729307"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307">name</a></td></tr>
+<tr class="separator:a8facf6f7974c51e238abd7096c729307"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f55ef18c144344076af038501f36840"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840">taskid</a></td></tr>
+<tr class="separator:a0f55ef18c144344076af038501f36840"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a210a60fe2706ad22adce6ea8f16e4bce"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce">tasktype</a></td></tr>
+<tr class="separator:a210a60fe2706ad22adce6ea8f16e4bce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff3ca859a6687076313869aeb569dd87"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87">remotedir</a></td></tr>
+<tr class="separator:aff3ca859a6687076313869aeb569dd87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a179a26ffe6977ede5aa084619e29eba9"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9">localdir</a></td></tr>
+<tr class="separator:a179a26ffe6977ede5aa084619e29eba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e2d8b5a795eff39aaa5678ee371cea8"><td class="memItemLeft" align="right" valign="top">GtkTreeRowReference *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8">rowref</a></td></tr>
+<tr class="separator:a0e2d8b5a795eff39aaa5678ee371cea8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48fdf499ca63ec9f1f7e9af86f19a3f7"><td class="memItemLeft" align="right" valign="top">gfloat&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7">size</a></td></tr>
+<tr class="separator:a48fdf499ca63ec9f1f7e9af86f19a3f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6985d2da0ed09c6b69c6360091d5b6c9"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9">status</a></td></tr>
+<tr class="separator:a6985d2da0ed09c6b69c6360091d5b6c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec622571acc15e022f458efffcc275b0"><td class="memItemLeft" align="right" valign="top">gfloat&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0">donesize</a></td></tr>
+<tr class="separator:aec622571acc15e022f458efffcc275b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2b00cace6fd885736792664843be667"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667">tooltip</a></td></tr>
+<tr class="separator:ac2b00cace6fd885736792664843be667"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00109">109</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aec622571acc15e022f458efffcc275b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec622571acc15e022f458efffcc275b0">&#9670;&nbsp;</a></span>donesize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gfloat _RemminaFTPTask::donesize</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00121">121</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a179a26ffe6977ede5aa084619e29eba9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a179a26ffe6977ede5aa084619e29eba9">&#9670;&nbsp;</a></span>localdir</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaFTPTask::localdir</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00116">116</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a8facf6f7974c51e238abd7096c729307"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8facf6f7974c51e238abd7096c729307">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaFTPTask::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00112">112</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="aff3ca859a6687076313869aeb569dd87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff3ca859a6687076313869aeb569dd87">&#9670;&nbsp;</a></span>remotedir</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaFTPTask::remotedir</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00115">115</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a0e2d8b5a795eff39aaa5678ee371cea8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e2d8b5a795eff39aaa5678ee371cea8">&#9670;&nbsp;</a></span>rowref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeRowReference* _RemminaFTPTask::rowref</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00117">117</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a48fdf499ca63ec9f1f7e9af86f19a3f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48fdf499ca63ec9f1f7e9af86f19a3f7">&#9670;&nbsp;</a></span>size</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gfloat _RemminaFTPTask::size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00119">119</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a6985d2da0ed09c6b69c6360091d5b6c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6985d2da0ed09c6b69c6360091d5b6c9">&#9670;&nbsp;</a></span>status</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaFTPTask::status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00120">120</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a0f55ef18c144344076af038501f36840"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f55ef18c144344076af038501f36840">&#9670;&nbsp;</a></span>taskid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaFTPTask::taskid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00113">113</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a210a60fe2706ad22adce6ea8f16e4bce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a210a60fe2706ad22adce6ea8f16e4bce">&#9670;&nbsp;</a></span>tasktype</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaFTPTask::tasktype</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00114">114</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="ac2b00cace6fd885736792664843be667"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2b00cace6fd885736792664843be667">&#9670;&nbsp;</a></span>tooltip</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaFTPTask::tooltip</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00122">122</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a9af7875a6abd79732abd2346371f8fc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9af7875a6abd79732abd2346371f8fc9">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaFTPTask::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ftp__client_8h_source.html#l00111">111</a> of file <a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ftp__client_8h_source.html">remmina_ftp_client.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_f_t_p_task.html">_RemminaFTPTask</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_f_t_p_task.js b/docs/struct___remmina_f_t_p_task.js
new file mode 100644
index 000000000..e6243ca38
--- /dev/null
+++ b/docs/struct___remmina_f_t_p_task.js
@@ -0,0 +1,14 @@
+var struct___remmina_f_t_p_task =
+[
+ [ "donesize", "struct___remmina_f_t_p_task.html#aec622571acc15e022f458efffcc275b0", null ],
+ [ "localdir", "struct___remmina_f_t_p_task.html#a179a26ffe6977ede5aa084619e29eba9", null ],
+ [ "name", "struct___remmina_f_t_p_task.html#a8facf6f7974c51e238abd7096c729307", null ],
+ [ "remotedir", "struct___remmina_f_t_p_task.html#aff3ca859a6687076313869aeb569dd87", null ],
+ [ "rowref", "struct___remmina_f_t_p_task.html#a0e2d8b5a795eff39aaa5678ee371cea8", null ],
+ [ "size", "struct___remmina_f_t_p_task.html#a48fdf499ca63ec9f1f7e9af86f19a3f7", null ],
+ [ "status", "struct___remmina_f_t_p_task.html#a6985d2da0ed09c6b69c6360091d5b6c9", null ],
+ [ "taskid", "struct___remmina_f_t_p_task.html#a0f55ef18c144344076af038501f36840", null ],
+ [ "tasktype", "struct___remmina_f_t_p_task.html#a210a60fe2706ad22adce6ea8f16e4bce", null ],
+ [ "tooltip", "struct___remmina_f_t_p_task.html#ac2b00cace6fd885736792664843be667", null ],
+ [ "type", "struct___remmina_f_t_p_task.html#a9af7875a6abd79732abd2346371f8fc9", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_file.html b/docs/struct___remmina_file.html
new file mode 100644
index 000000000..378459caf
--- /dev/null
+++ b/docs/struct___remmina_file.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFile Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_file.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFile Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a5edb4595f0c83cae611b557bfba02a07"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07">filename</a></td></tr>
+<tr class="separator:a5edb4595f0c83cae611b557bfba02a07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa090f1969b90157a3df6067e8e13ffcd"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd">settings</a></td></tr>
+<tr class="separator:aa090f1969b90157a3df6067e8e13ffcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60428714b1064110accd7752aed1f8a5"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5">spsettings</a></td></tr>
+<tr class="separator:a60428714b1064110accd7752aed1f8a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af70ba06ac6baad2b128d4818a4aa6488"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488">prevent_saving</a></td></tr>
+<tr class="separator:af70ba06ac6baad2b128d4818a4aa6488"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a5edb4595f0c83cae611b557bfba02a07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5edb4595f0c83cae611b557bfba02a07">&#9670;&nbsp;</a></span>filename</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaFile::filename</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+
+</div>
+</div>
+<a id="af70ba06ac6baad2b128d4818a4aa6488"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af70ba06ac6baad2b128d4818a4aa6488">&#9670;&nbsp;</a></span>prevent_saving</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaFile::prevent_saving</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+
+</div>
+</div>
+<a id="aa090f1969b90157a3df6067e8e13ffcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa090f1969b90157a3df6067e8e13ffcd">&#9670;&nbsp;</a></span>settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaFile::settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00045">45</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+
+</div>
+</div>
+<a id="a60428714b1064110accd7752aed1f8a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60428714b1064110accd7752aed1f8a5">&#9670;&nbsp;</a></span>spsettings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaFile::spsettings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__file_8h_source.html">remmina_file.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__file_8h_source.html">remmina_file.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_file.html">_RemminaFile</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_file.js b/docs/struct___remmina_file.js
new file mode 100644
index 000000000..942f54b25
--- /dev/null
+++ b/docs/struct___remmina_file.js
@@ -0,0 +1,7 @@
+var struct___remmina_file =
+[
+ [ "filename", "struct___remmina_file.html#a5edb4595f0c83cae611b557bfba02a07", null ],
+ [ "prevent_saving", "struct___remmina_file.html#af70ba06ac6baad2b128d4818a4aa6488", null ],
+ [ "settings", "struct___remmina_file.html#aa090f1969b90157a3df6067e8e13ffcd", null ],
+ [ "spsettings", "struct___remmina_file.html#a60428714b1064110accd7752aed1f8a5", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_file_editor.html b/docs/struct___remmina_file_editor.html
new file mode 100644
index 000000000..1cb575955
--- /dev/null
+++ b/docs/struct___remmina_file_editor.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFileEditor Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_file_editor.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFileEditor Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad33dd514275a054042ab1ac258092872"><td class="memItemLeft" align="right" valign="top">GtkDialog&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872">dialog</a></td></tr>
+<tr class="separator:ad33dd514275a054042ab1ac258092872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8517b06116569fad2bb71b99c2f75f6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a">priv</a></td></tr>
+<tr class="separator:a8517b06116569fad2bb71b99c2f75f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ad33dd514275a054042ab1ac258092872"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad33dd514275a054042ab1ac258092872">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog _RemminaFileEditor::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+
+</div>
+</div>
+<a id="a8517b06116569fad2bb71b99c2f75f6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8517b06116569fad2bb71b99c2f75f6a">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__file__editor_8h.html#abbeeb0b88810f1f479ffb1fadfbf6530">RemminaFileEditorPriv</a>* _RemminaFileEditor::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_file_editor.html">_RemminaFileEditor</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_file_editor.js b/docs/struct___remmina_file_editor.js
new file mode 100644
index 000000000..e03d0ae85
--- /dev/null
+++ b/docs/struct___remmina_file_editor.js
@@ -0,0 +1,5 @@
+var struct___remmina_file_editor =
+[
+ [ "dialog", "struct___remmina_file_editor.html#ad33dd514275a054042ab1ac258092872", null ],
+ [ "priv", "struct___remmina_file_editor.html#a8517b06116569fad2bb71b99c2f75f6a", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_file_editor_class.html b/docs/struct___remmina_file_editor_class.html
new file mode 100644
index 000000000..bb044f9f4
--- /dev/null
+++ b/docs/struct___remmina_file_editor_class.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFileEditorClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_file_editor_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFileEditorClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3c652db10d3aab6c698273c846fc743f"><td class="memItemLeft" align="right" valign="top">GtkDialogClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f">parent_class</a></td></tr>
+<tr class="separator:a3c652db10d3aab6c698273c846fc743f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a3c652db10d3aab6c698273c846fc743f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c652db10d3aab6c698273c846fc743f">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialogClass _RemminaFileEditorClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__editor_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__file__editor_8h_source.html">remmina_file_editor.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_file_editor_class.html">_RemminaFileEditorClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_file_editor_class.js b/docs/struct___remmina_file_editor_class.js
new file mode 100644
index 000000000..b826da3be
--- /dev/null
+++ b/docs/struct___remmina_file_editor_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_file_editor_class =
+[
+ [ "parent_class", "struct___remmina_file_editor_class.html#a3c652db10d3aab6c698273c846fc743f", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_file_plugin.html b/docs/struct___remmina_file_plugin.html
new file mode 100644
index 000000000..53b80c061
--- /dev/null
+++ b/docs/struct___remmina_file_plugin.html
@@ -0,0 +1,296 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaFilePlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_file_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaFilePlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3ff85e56bf902817630aafea67e3e494"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494">type</a></td></tr>
+<tr class="separator:a3ff85e56bf902817630aafea67e3e494"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ef191449f269aec279e9097cadb7ee6"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6">name</a></td></tr>
+<tr class="separator:a8ef191449f269aec279e9097cadb7ee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36c131a8e8c0180950faa80f497f23c1"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1">description</a></td></tr>
+<tr class="separator:a36c131a8e8c0180950faa80f497f23c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1de86485b3c4db138b0fcd264884483f"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f">domain</a></td></tr>
+<tr class="separator:a1de86485b3c4db138b0fcd264884483f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57bf1f4e71c86165cbac2563309e35b8"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8">version</a></td></tr>
+<tr class="separator:a57bf1f4e71c86165cbac2563309e35b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac00efb2a471517b35fbd386c29ee18f4"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4">import_test_func</a> )(const gchar *from_file)</td></tr>
+<tr class="separator:ac00efb2a471517b35fbd386c29ee18f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1bc6a2734ca8060af2943bf0dfca8d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7">import_func</a> )(const gchar *from_file)</td></tr>
+<tr class="separator:af1bc6a2734ca8060af2943bf0dfca8d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafae42901b54bcb08f0cb24451836b03"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03">export_test_func</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</td></tr>
+<tr class="separator:aafae42901b54bcb08f0cb24451836b03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab721bcec1729b6681a71c2fb196878f1"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1">export_func</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file, const gchar *to_file)</td></tr>
+<tr class="separator:ab721bcec1729b6681a71c2fb196878f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4f2b0118490cede0577aaee9f2e0b5f"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f">export_hints</a></td></tr>
+<tr class="separator:ac4f2b0118490cede0577aaee9f2e0b5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00094">94</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a36c131a8e8c0180950faa80f497f23c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36c131a8e8c0180950faa80f497f23c1">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaFilePlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00097">97</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1de86485b3c4db138b0fcd264884483f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1de86485b3c4db138b0fcd264884483f">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaFilePlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00098">98</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab721bcec1729b6681a71c2fb196878f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab721bcec1729b6681a71c2fb196878f1">&#9670;&nbsp;</a></span>export_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaFilePlugin::export_func) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file, const gchar *to_file)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00104">104</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac4f2b0118490cede0577aaee9f2e0b5f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4f2b0118490cede0577aaee9f2e0b5f">&#9670;&nbsp;</a></span>export_hints</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaFilePlugin::export_hints</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00105">105</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aafae42901b54bcb08f0cb24451836b03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafae42901b54bcb08f0cb24451836b03">&#9670;&nbsp;</a></span>export_test_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaFilePlugin::export_test_func) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *file)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00103">103</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af1bc6a2734ca8060af2943bf0dfca8d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1bc6a2734ca8060af2943bf0dfca8d7">&#9670;&nbsp;</a></span>import_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>*(* _RemminaFilePlugin::import_func) (const gchar *from_file)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00102">102</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac00efb2a471517b35fbd386c29ee18f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac00efb2a471517b35fbd386c29ee18f4">&#9670;&nbsp;</a></span>import_test_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaFilePlugin::import_test_func) (const gchar *from_file)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00101">101</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8ef191449f269aec279e9097cadb7ee6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8ef191449f269aec279e9097cadb7ee6">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaFilePlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00096">96</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3ff85e56bf902817630aafea67e3e494"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ff85e56bf902817630aafea67e3e494">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaFilePlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00095">95</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a57bf1f4e71c86165cbac2563309e35b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57bf1f4e71c86165cbac2563309e35b8">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaFilePlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00099">99</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_file_plugin.html">_RemminaFilePlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_file_plugin.js b/docs/struct___remmina_file_plugin.js
new file mode 100644
index 000000000..8ce48ef31
--- /dev/null
+++ b/docs/struct___remmina_file_plugin.js
@@ -0,0 +1,13 @@
+var struct___remmina_file_plugin =
+[
+ [ "description", "struct___remmina_file_plugin.html#a36c131a8e8c0180950faa80f497f23c1", null ],
+ [ "domain", "struct___remmina_file_plugin.html#a1de86485b3c4db138b0fcd264884483f", null ],
+ [ "export_func", "struct___remmina_file_plugin.html#ab721bcec1729b6681a71c2fb196878f1", null ],
+ [ "export_hints", "struct___remmina_file_plugin.html#ac4f2b0118490cede0577aaee9f2e0b5f", null ],
+ [ "export_test_func", "struct___remmina_file_plugin.html#aafae42901b54bcb08f0cb24451836b03", null ],
+ [ "import_func", "struct___remmina_file_plugin.html#af1bc6a2734ca8060af2943bf0dfca8d7", null ],
+ [ "import_test_func", "struct___remmina_file_plugin.html#ac00efb2a471517b35fbd386c29ee18f4", null ],
+ [ "name", "struct___remmina_file_plugin.html#a8ef191449f269aec279e9097cadb7ee6", null ],
+ [ "type", "struct___remmina_file_plugin.html#a3ff85e56bf902817630aafea67e3e494", null ],
+ [ "version", "struct___remmina_file_plugin.html#a57bf1f4e71c86165cbac2563309e35b8", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_group_data.html b/docs/struct___remmina_group_data.html
new file mode 100644
index 000000000..a1faeb8cd
--- /dev/null
+++ b/docs/struct___remmina_group_data.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaGroupData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_group_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaGroupData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a99391f3397e53db88f8e2d543d862bcd"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd">name</a></td></tr>
+<tr class="separator:a99391f3397e53db88f8e2d543d862bcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0044a7fb68569135efeb5769229d7f09"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09">group</a></td></tr>
+<tr class="separator:a0044a7fb68569135efeb5769229d7f09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae75855c3c4f9d899200cc2c4aa994660"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660">datetime</a></td></tr>
+<tr class="separator:ae75855c3c4f9d899200cc2c4aa994660"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ae75855c3c4f9d899200cc2c4aa994660"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae75855c3c4f9d899200cc2c4aa994660">&#9670;&nbsp;</a></span>datetime</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaGroupData::datetime</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8h_source.html#l00045">45</a> of file <a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a>.</p>
+
+</div>
+</div>
+<a id="a0044a7fb68569135efeb5769229d7f09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0044a7fb68569135efeb5769229d7f09">&#9670;&nbsp;</a></span>group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaGroupData::group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a>.</p>
+
+</div>
+</div>
+<a id="a99391f3397e53db88f8e2d543d862bcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99391f3397e53db88f8e2d543d862bcd">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaGroupData::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__file__manager_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__file__manager_8h_source.html">remmina_file_manager.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_group_data.html">_RemminaGroupData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_group_data.js b/docs/struct___remmina_group_data.js
new file mode 100644
index 000000000..9c30953ea
--- /dev/null
+++ b/docs/struct___remmina_group_data.js
@@ -0,0 +1,6 @@
+var struct___remmina_group_data =
+[
+ [ "datetime", "struct___remmina_group_data.html#ae75855c3c4f9d899200cc2c4aa994660", null ],
+ [ "group", "struct___remmina_group_data.html#a0044a7fb68569135efeb5769229d7f09", null ],
+ [ "name", "struct___remmina_group_data.html#a99391f3397e53db88f8e2d543d862bcd", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_icon.html b/docs/struct___remmina_icon.html
new file mode 100644
index 000000000..7615c1830
--- /dev/null
+++ b/docs/struct___remmina_icon.html
@@ -0,0 +1,222 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaIcon Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_icon.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaIcon Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a6cf75146df2cbab7d5ae3046a62fd626"><td class="memItemLeft" align="right" valign="top">AppIndicator *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626">icon</a></td></tr>
+<tr class="separator:a6cf75146df2cbab7d5ae3046a62fd626"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0d59295a7d21596ab989acfb36eba19"><td class="memItemLeft" align="right" valign="top">GtkStatusIcon *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19">icon</a></td></tr>
+<tr class="separator:af0d59295a7d21596ab989acfb36eba19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f2c31cd1f9af1feefc6b7ba7480f5d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2">avahi</a></td></tr>
+<tr class="separator:a1f2c31cd1f9af1feefc6b7ba7480f5d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40565240018bc9fb3392dc6e57070333"><td class="memItemLeft" align="right" valign="top">guint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333">popup_time</a></td></tr>
+<tr class="separator:a40565240018bc9fb3392dc6e57070333"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebee73e3ede3fd37332d4d0bf6eb1cca"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca">autostart_file</a></td></tr>
+<tr class="separator:aebee73e3ede3fd37332d4d0bf6eb1cca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee3da1b92eed8cec42813a737e482b2c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c">gsversion</a></td></tr>
+<tr class="separator:aee3da1b92eed8cec42813a737e482b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aebee73e3ede3fd37332d4d0bf6eb1cca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebee73e3ede3fd37332d4d0bf6eb1cca">&#9670;&nbsp;</a></span>autostart_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaIcon::autostart_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a1f2c31cd1f9af1feefc6b7ba7480f5d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f2c31cd1f9af1feefc6b7ba7480f5d2">&#9670;&nbsp;</a></span>avahi</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__avahi_8h.html#a6e8eaffd2965830d8a665a12eed58663">RemminaAvahi</a>* _RemminaIcon::avahi</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="aee3da1b92eed8cec42813a737e482b2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee3da1b92eed8cec42813a737e482b2c">&#9670;&nbsp;</a></span>gsversion</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaIcon::gsversion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00068">68</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a6cf75146df2cbab7d5ae3046a62fd626"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cf75146df2cbab7d5ae3046a62fd626">&#9670;&nbsp;</a></span>icon <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">AppIndicator* _RemminaIcon::icon</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="af0d59295a7d21596ab989acfb36eba19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0d59295a7d21596ab989acfb36eba19">&#9670;&nbsp;</a></span>icon <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkStatusIcon* _RemminaIcon::icon</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00063">63</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<a id="a40565240018bc9fb3392dc6e57070333"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40565240018bc9fb3392dc6e57070333">&#9670;&nbsp;</a></span>popup_time</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint32 _RemminaIcon::popup_time</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__icon_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__icon_8c_source.html">remmina_icon.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_icon.html">_RemminaIcon</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_icon.js b/docs/struct___remmina_icon.js
new file mode 100644
index 000000000..d7db3a4da
--- /dev/null
+++ b/docs/struct___remmina_icon.js
@@ -0,0 +1,9 @@
+var struct___remmina_icon =
+[
+ [ "autostart_file", "struct___remmina_icon.html#aebee73e3ede3fd37332d4d0bf6eb1cca", null ],
+ [ "avahi", "struct___remmina_icon.html#a1f2c31cd1f9af1feefc6b7ba7480f5d2", null ],
+ [ "gsversion", "struct___remmina_icon.html#aee3da1b92eed8cec42813a737e482b2c", null ],
+ [ "icon", "struct___remmina_icon.html#a6cf75146df2cbab7d5ae3046a62fd626", null ],
+ [ "icon", "struct___remmina_icon.html#af0d59295a7d21596ab989acfb36eba19", null ],
+ [ "popup_time", "struct___remmina_icon.html#a40565240018bc9fb3392dc6e57070333", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_key_chooser_arguments.html b/docs/struct___remmina_key_chooser_arguments.html
new file mode 100644
index 000000000..50eacecc5
--- /dev/null
+++ b/docs/struct___remmina_key_chooser_arguments.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaKeyChooserArguments Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_key_chooser_arguments.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaKeyChooserArguments Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad6bf8db773a58c4b73ce7902f76a860f"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f">keyval</a></td></tr>
+<tr class="separator:ad6bf8db773a58c4b73ce7902f76a860f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3b1c476480609afbbe21a2bb507e14c"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c">state</a></td></tr>
+<tr class="separator:ac3b1c476480609afbbe21a2bb507e14c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9afcfe09663fddc96755b08e5a62ef03"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03">use_modifiers</a></td></tr>
+<tr class="separator:a9afcfe09663fddc96755b08e5a62ef03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2fd9e4d001913994dd7ffee24563bde7"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7">response</a></td></tr>
+<tr class="separator:a2fd9e4d001913994dd7ffee24563bde7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ad6bf8db773a58c4b73ce7902f76a860f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6bf8db773a58c4b73ce7902f76a860f">&#9670;&nbsp;</a></span>keyval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaKeyChooserArguments::keyval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>.</p>
+
+</div>
+</div>
+<a id="a2fd9e4d001913994dd7ffee24563bde7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2fd9e4d001913994dd7ffee24563bde7">&#9670;&nbsp;</a></span>response</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaKeyChooserArguments::response</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>.</p>
+
+</div>
+</div>
+<a id="ac3b1c476480609afbbe21a2bb507e14c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3b1c476480609afbbe21a2bb507e14c">&#9670;&nbsp;</a></span>state</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaKeyChooserArguments::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>.</p>
+
+</div>
+</div>
+<a id="a9afcfe09663fddc96755b08e5a62ef03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9afcfe09663fddc96755b08e5a62ef03">&#9670;&nbsp;</a></span>use_modifiers</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaKeyChooserArguments::use_modifiers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__key__chooser_8h_source.html#l00049">49</a> of file <a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__key__chooser_8h_source.html">remmina_key_chooser.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_key_chooser_arguments.html">_RemminaKeyChooserArguments</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_key_chooser_arguments.js b/docs/struct___remmina_key_chooser_arguments.js
new file mode 100644
index 000000000..4f2ceb409
--- /dev/null
+++ b/docs/struct___remmina_key_chooser_arguments.js
@@ -0,0 +1,7 @@
+var struct___remmina_key_chooser_arguments =
+[
+ [ "keyval", "struct___remmina_key_chooser_arguments.html#ad6bf8db773a58c4b73ce7902f76a860f", null ],
+ [ "response", "struct___remmina_key_chooser_arguments.html#a2fd9e4d001913994dd7ffee24563bde7", null ],
+ [ "state", "struct___remmina_key_chooser_arguments.html#ac3b1c476480609afbbe21a2bb507e14c", null ],
+ [ "use_modifiers", "struct___remmina_key_chooser_arguments.html#a9afcfe09663fddc96755b08e5a62ef03", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_key_val.html b/docs/struct___remmina_key_val.html
new file mode 100644
index 000000000..b59568298
--- /dev/null
+++ b/docs/struct___remmina_key_val.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaKeyVal Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_key_val.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaKeyVal Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a682fb6be0c09c0dd457b279796eec712"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">keyval</a></td></tr>
+<tr class="separator:a682fb6be0c09c0dd457b279796eec712"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d3b8298be454a8f6d9a678e2a14e2e8"><td class="memItemLeft" align="right" valign="top">guint16&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">keycode</a></td></tr>
+<tr class="separator:a9d3b8298be454a8f6d9a678e2a14e2e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00293">293</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a9d3b8298be454a8f6d9a678e2a14e2e8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d3b8298be454a8f6d9a678e2a14e2e8">&#9670;&nbsp;</a></span>keycode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint16 _RemminaKeyVal::keycode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00295">295</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a682fb6be0c09c0dd457b279796eec712"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a682fb6be0c09c0dd457b279796eec712">&#9670;&nbsp;</a></span>keyval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaKeyVal::keyval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00294">294</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_key_val.html">_RemminaKeyVal</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_key_val.js b/docs/struct___remmina_key_val.js
new file mode 100644
index 000000000..5770be8ff
--- /dev/null
+++ b/docs/struct___remmina_key_val.js
@@ -0,0 +1,5 @@
+var struct___remmina_key_val =
+[
+ [ "keycode", "struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8", null ],
+ [ "keyval", "struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_log_window.html b/docs/struct___remmina_log_window.html
new file mode 100644
index 000000000..01f16ded7
--- /dev/null
+++ b/docs/struct___remmina_log_window.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaLogWindow Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_log_window.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaLogWindow Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae287dadd2c2a5bf704d7c494bcc74184"><td class="memItemLeft" align="right" valign="top">GtkWindow&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184">window</a></td></tr>
+<tr class="separator:ae287dadd2c2a5bf704d7c494bcc74184"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfbb6314130ad100aba258087d9d4087"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087">log_view</a></td></tr>
+<tr class="separator:abfbb6314130ad100aba258087d9d4087"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06774ea75d0ea07580555d34abbb8232"><td class="memItemLeft" align="right" valign="top">GtkTextBuffer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232">log_buffer</a></td></tr>
+<tr class="separator:a06774ea75d0ea07580555d34abbb8232"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00052">52</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a06774ea75d0ea07580555d34abbb8232"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06774ea75d0ea07580555d34abbb8232">&#9670;&nbsp;</a></span>log_buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTextBuffer* _RemminaLogWindow::log_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="abfbb6314130ad100aba258087d9d4087"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfbb6314130ad100aba258087d9d4087">&#9670;&nbsp;</a></span>log_view</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaLogWindow::log_view</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<a id="ae287dadd2c2a5bf704d7c494bcc74184"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae287dadd2c2a5bf704d7c494bcc74184">&#9670;&nbsp;</a></span>window</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow _RemminaLogWindow::window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__log_8c_source.html">remmina_log.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_log_window.html">_RemminaLogWindow</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_log_window.js b/docs/struct___remmina_log_window.js
new file mode 100644
index 000000000..26323659b
--- /dev/null
+++ b/docs/struct___remmina_log_window.js
@@ -0,0 +1,6 @@
+var struct___remmina_log_window =
+[
+ [ "log_buffer", "struct___remmina_log_window.html#a06774ea75d0ea07580555d34abbb8232", null ],
+ [ "log_view", "struct___remmina_log_window.html#abfbb6314130ad100aba258087d9d4087", null ],
+ [ "window", "struct___remmina_log_window.html#ae287dadd2c2a5bf704d7c494bcc74184", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_log_window_class.html b/docs/struct___remmina_log_window_class.html
new file mode 100644
index 000000000..52c195015
--- /dev/null
+++ b/docs/struct___remmina_log_window_class.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaLogWindowClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_log_window_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaLogWindowClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:af63588f4d71726fcda17ae5c2adcf2af"><td class="memItemLeft" align="right" valign="top">GtkWindowClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af">parent_class</a></td></tr>
+<tr class="separator:af63588f4d71726fcda17ae5c2adcf2af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="af63588f4d71726fcda17ae5c2adcf2af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af63588f4d71726fcda17ae5c2adcf2af">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindowClass _RemminaLogWindowClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__log_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__log_8c_source.html">remmina_log.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__log_8c_source.html">remmina_log.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_log_window_class.html">_RemminaLogWindowClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_log_window_class.js b/docs/struct___remmina_log_window_class.js
new file mode 100644
index 000000000..1e4226632
--- /dev/null
+++ b/docs/struct___remmina_log_window_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_log_window_class =
+[
+ [ "parent_class", "struct___remmina_log_window_class.html#af63588f4d71726fcda17ae5c2adcf2af", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_main.html b/docs/struct___remmina_main.html
new file mode 100644
index 000000000..67a727cf0
--- /dev/null
+++ b/docs/struct___remmina_main.html
@@ -0,0 +1,584 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaMain Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_main.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaMain Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ab7c6aebff1b06ef97c36bfa9d360b0c1"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1">builder</a></td></tr>
+<tr class="separator:ab7c6aebff1b06ef97c36bfa9d360b0c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82aa6f22340fc4f3df185aba7b01afc2"><td class="memItemLeft" align="right" valign="top">GtkWindow *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2">window</a></td></tr>
+<tr class="separator:a82aa6f22340fc4f3df185aba7b01afc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d6960ab62869638a77d2fe5bd72c7f6"><td class="memItemLeft" align="right" valign="top">GtkMenu *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6">menu_popup</a></td></tr>
+<tr class="separator:a2d6960ab62869638a77d2fe5bd72c7f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3be770af5f21758fa641b274ca967ec"><td class="memItemLeft" align="right" valign="top">GtkMenuButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec">menu_header_button</a></td></tr>
+<tr class="separator:ab3be770af5f21758fa641b274ca967ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1575015519fedca001bb26e129331b62"><td class="memItemLeft" align="right" valign="top">GtkMenu *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a1575015519fedca001bb26e129331b62">menu_popup_full</a></td></tr>
+<tr class="separator:a1575015519fedca001bb26e129331b62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6288ed69d372d1047ce94c74e77e0fd4"><td class="memItemLeft" align="right" valign="top">GtkRadioMenuItem *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4">menuitem_view_mode_list</a></td></tr>
+<tr class="separator:a6288ed69d372d1047ce94c74e77e0fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a670425eaf7430854a172ee0f41c4e5e0"><td class="memItemLeft" align="right" valign="top">GtkRadioMenuItem *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0">menuitem_view_mode_tree</a></td></tr>
+<tr class="separator:a670425eaf7430854a172ee0f41c4e5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37436a0fbd3d64082192826328fe063a"><td class="memItemLeft" align="right" valign="top">GtkMenuItem *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a">menuitem_connection_quit</a></td></tr>
+<tr class="separator:a37436a0fbd3d64082192826328fe063a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4db5c4960c9dbe3e798528bacb31456e"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e">button_new</a></td></tr>
+<tr class="separator:a4db5c4960c9dbe3e798528bacb31456e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a641297035bda72ca18ffe13816a44b21"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21">button_make_default</a></td></tr>
+<tr class="separator:a641297035bda72ca18ffe13816a44b21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd8f3437eee668a2b8d905a16a16be72"><td class="memItemLeft" align="right" valign="top">GtkToggleButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72">search_toggle</a></td></tr>
+<tr class="separator:acd8f3437eee668a2b8d905a16a16be72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3c2c0b9855bb44b5b9a27a3178d32e7"><td class="memItemLeft" align="right" valign="top">GtkToggleButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7">view_toggle_button</a></td></tr>
+<tr class="separator:ae3c2c0b9855bb44b5b9a27a3178d32e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1e811e50525f5a74bb781f8c8a10670"><td class="memItemLeft" align="right" valign="top">GtkToggleButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670">ustats_toggle</a></td></tr>
+<tr class="separator:aa1e811e50525f5a74bb781f8c8a10670"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecb54d7c3dd1e86a16e24ea2e00d4ddd"><td class="memItemLeft" align="right" valign="top">GtkSearchBar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd">search_bar</a></td></tr>
+<tr class="separator:aecb54d7c3dd1e86a16e24ea2e00d4ddd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b03d239c21141a202d0698492cfae95"><td class="memItemLeft" align="right" valign="top">GtkBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95">box_quick_connect</a></td></tr>
+<tr class="separator:a7b03d239c21141a202d0698492cfae95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35f10af8065b3b64ba6f26db60061d39"><td class="memItemLeft" align="right" valign="top">GtkComboBoxText *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39">combo_quick_connect_protocol</a></td></tr>
+<tr class="separator:a35f10af8065b3b64ba6f26db60061d39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2eff9c56cc7830bcf9ca4bfdf216095"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095">entry_quick_connect_server</a></td></tr>
+<tr class="separator:ac2eff9c56cc7830bcf9ca4bfdf216095"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebb188bd83f8dcfb80cad10e43181774"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774">button_quick_connect</a></td></tr>
+<tr class="separator:aebb188bd83f8dcfb80cad10e43181774"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81f987e527d521be54aaf3f46dfe7ced"><td class="memItemLeft" align="right" valign="top">GtkTreeView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced">tree_files_list</a></td></tr>
+<tr class="separator:a81f987e527d521be54aaf3f46dfe7ced"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56ac6ffe61c0d3663ebc6b26e65a8cbc"><td class="memItemLeft" align="right" valign="top">GtkTreeViewColumn *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc">column_files_list_group</a></td></tr>
+<tr class="separator:a56ac6ffe61c0d3663ebc6b26e65a8cbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acacd90f3e6df6a864154edba01464ae2"><td class="memItemLeft" align="right" valign="top">GtkStatusbar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2">statusbar_main</a></td></tr>
+<tr class="separator:acacd90f3e6df6a864154edba01464ae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0baa48aa1ed260cead7af434c3f69549"><td class="memItemLeft" align="right" valign="top">GtkAccelGroup *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549">accelgroup_shortcuts</a></td></tr>
+<tr class="separator:a0baa48aa1ed260cead7af434c3f69549"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adec4d2fed2242dde029d46dac791e50f"><td class="memItemLeft" align="right" valign="top">GtkToggleAction *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f">action_view_quick_connect</a></td></tr>
+<tr class="separator:adec4d2fed2242dde029d46dac791e50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5303ae9f0ad38b2648ed0d9d43909d19"><td class="memItemLeft" align="right" valign="top">GtkToggleAction *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19">action_view_mode_list</a></td></tr>
+<tr class="separator:a5303ae9f0ad38b2648ed0d9d43909d19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33b48d282a8e7a692efdd354707fd28c"><td class="memItemLeft" align="right" valign="top">GtkToggleAction *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c">action_view_mode_tree</a></td></tr>
+<tr class="separator:a33b48d282a8e7a692efdd354707fd28c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45e6df8230d849a78e547fd542d76980"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">RemminaMainPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980">priv</a></td></tr>
+<tr class="separator:a45e6df8230d849a78e547fd542d76980"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00045">45</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a0baa48aa1ed260cead7af434c3f69549"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0baa48aa1ed260cead7af434c3f69549">&#9670;&nbsp;</a></span>accelgroup_shortcuts</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkAccelGroup* _RemminaMain::accelgroup_shortcuts</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00073">73</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a5303ae9f0ad38b2648ed0d9d43909d19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5303ae9f0ad38b2648ed0d9d43909d19">&#9670;&nbsp;</a></span>action_view_mode_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleAction* _RemminaMain::action_view_mode_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00076">76</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a33b48d282a8e7a692efdd354707fd28c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33b48d282a8e7a692efdd354707fd28c">&#9670;&nbsp;</a></span>action_view_mode_tree</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleAction* _RemminaMain::action_view_mode_tree</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00077">77</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="adec4d2fed2242dde029d46dac791e50f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adec4d2fed2242dde029d46dac791e50f">&#9670;&nbsp;</a></span>action_view_quick_connect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleAction* _RemminaMain::action_view_quick_connect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00075">75</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a7b03d239c21141a202d0698492cfae95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7b03d239c21141a202d0698492cfae95">&#9670;&nbsp;</a></span>box_quick_connect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBox* _RemminaMain::box_quick_connect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="ab7c6aebff1b06ef97c36bfa9d360b0c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7c6aebff1b06ef97c36bfa9d360b0c1">&#9670;&nbsp;</a></span>builder</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* _RemminaMain::builder</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a641297035bda72ca18ffe13816a44b21"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a641297035bda72ca18ffe13816a44b21">&#9670;&nbsp;</a></span>button_make_default</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaMain::button_make_default</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a4db5c4960c9dbe3e798528bacb31456e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4db5c4960c9dbe3e798528bacb31456e">&#9670;&nbsp;</a></span>button_new</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaMain::button_new</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="aebb188bd83f8dcfb80cad10e43181774"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebb188bd83f8dcfb80cad10e43181774">&#9670;&nbsp;</a></span>button_quick_connect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaMain::button_quick_connect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00067">67</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a56ac6ffe61c0d3663ebc6b26e65a8cbc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56ac6ffe61c0d3663ebc6b26e65a8cbc">&#9670;&nbsp;</a></span>column_files_list_group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeViewColumn* _RemminaMain::column_files_list_group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00070">70</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a35f10af8065b3b64ba6f26db60061d39"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a35f10af8065b3b64ba6f26db60061d39">&#9670;&nbsp;</a></span>combo_quick_connect_protocol</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBoxText* _RemminaMain::combo_quick_connect_protocol</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="ac2eff9c56cc7830bcf9ca4bfdf216095"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac2eff9c56cc7830bcf9ca4bfdf216095">&#9670;&nbsp;</a></span>entry_quick_connect_server</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaMain::entry_quick_connect_server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00066">66</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="ab3be770af5f21758fa641b274ca967ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3be770af5f21758fa641b274ca967ec">&#9670;&nbsp;</a></span>menu_header_button</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenuButton* _RemminaMain::menu_header_button</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a2d6960ab62869638a77d2fe5bd72c7f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d6960ab62869638a77d2fe5bd72c7f6">&#9670;&nbsp;</a></span>menu_popup</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenu* _RemminaMain::menu_popup</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00049">49</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a1575015519fedca001bb26e129331b62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1575015519fedca001bb26e129331b62">&#9670;&nbsp;</a></span>menu_popup_full</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenu* _RemminaMain::menu_popup_full</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a37436a0fbd3d64082192826328fe063a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37436a0fbd3d64082192826328fe063a">&#9670;&nbsp;</a></span>menuitem_connection_quit</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkMenuItem* _RemminaMain::menuitem_connection_quit</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a6288ed69d372d1047ce94c74e77e0fd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6288ed69d372d1047ce94c74e77e0fd4">&#9670;&nbsp;</a></span>menuitem_view_mode_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkRadioMenuItem* _RemminaMain::menuitem_view_mode_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00052">52</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a670425eaf7430854a172ee0f41c4e5e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a670425eaf7430854a172ee0f41c4e5e0">&#9670;&nbsp;</a></span>menuitem_view_mode_tree</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkRadioMenuItem* _RemminaMain::menuitem_view_mode_tree</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a45e6df8230d849a78e547fd542d76980"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45e6df8230d849a78e547fd542d76980">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__main_8h.html#a49e7c1b5d4dcfd155886e39d78b3d052">RemminaMainPriv</a>* _RemminaMain::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00078">78</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="aecb54d7c3dd1e86a16e24ea2e00d4ddd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecb54d7c3dd1e86a16e24ea2e00d4ddd">&#9670;&nbsp;</a></span>search_bar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSearchBar* _RemminaMain::search_bar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="acd8f3437eee668a2b8d905a16a16be72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd8f3437eee668a2b8d905a16a16be72">&#9670;&nbsp;</a></span>search_toggle</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleButton* _RemminaMain::search_toggle</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="acacd90f3e6df6a864154edba01464ae2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acacd90f3e6df6a864154edba01464ae2">&#9670;&nbsp;</a></span>statusbar_main</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkStatusbar* _RemminaMain::statusbar_main</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00071">71</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a81f987e527d521be54aaf3f46dfe7ced"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81f987e527d521be54aaf3f46dfe7ced">&#9670;&nbsp;</a></span>tree_files_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeView* _RemminaMain::tree_files_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="aa1e811e50525f5a74bb781f8c8a10670"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1e811e50525f5a74bb781f8c8a10670">&#9670;&nbsp;</a></span>ustats_toggle</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleButton* _RemminaMain::ustats_toggle</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="ae3c2c0b9855bb44b5b9a27a3178d32e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3c2c0b9855bb44b5b9a27a3178d32e7">&#9670;&nbsp;</a></span>view_toggle_button</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkToggleButton* _RemminaMain::view_toggle_button</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a82aa6f22340fc4f3df185aba7b01afc2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a82aa6f22340fc4f3df185aba7b01afc2">&#9670;&nbsp;</a></span>window</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWindow* _RemminaMain::window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__main_8h_source.html">remmina_main.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_main.html">_RemminaMain</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_main.js b/docs/struct___remmina_main.js
new file mode 100644
index 000000000..a8358019c
--- /dev/null
+++ b/docs/struct___remmina_main.js
@@ -0,0 +1,29 @@
+var struct___remmina_main =
+[
+ [ "accelgroup_shortcuts", "struct___remmina_main.html#a0baa48aa1ed260cead7af434c3f69549", null ],
+ [ "action_view_mode_list", "struct___remmina_main.html#a5303ae9f0ad38b2648ed0d9d43909d19", null ],
+ [ "action_view_mode_tree", "struct___remmina_main.html#a33b48d282a8e7a692efdd354707fd28c", null ],
+ [ "action_view_quick_connect", "struct___remmina_main.html#adec4d2fed2242dde029d46dac791e50f", null ],
+ [ "box_quick_connect", "struct___remmina_main.html#a7b03d239c21141a202d0698492cfae95", null ],
+ [ "builder", "struct___remmina_main.html#ab7c6aebff1b06ef97c36bfa9d360b0c1", null ],
+ [ "button_make_default", "struct___remmina_main.html#a641297035bda72ca18ffe13816a44b21", null ],
+ [ "button_new", "struct___remmina_main.html#a4db5c4960c9dbe3e798528bacb31456e", null ],
+ [ "button_quick_connect", "struct___remmina_main.html#aebb188bd83f8dcfb80cad10e43181774", null ],
+ [ "column_files_list_group", "struct___remmina_main.html#a56ac6ffe61c0d3663ebc6b26e65a8cbc", null ],
+ [ "combo_quick_connect_protocol", "struct___remmina_main.html#a35f10af8065b3b64ba6f26db60061d39", null ],
+ [ "entry_quick_connect_server", "struct___remmina_main.html#ac2eff9c56cc7830bcf9ca4bfdf216095", null ],
+ [ "menu_header_button", "struct___remmina_main.html#ab3be770af5f21758fa641b274ca967ec", null ],
+ [ "menu_popup", "struct___remmina_main.html#a2d6960ab62869638a77d2fe5bd72c7f6", null ],
+ [ "menu_popup_full", "struct___remmina_main.html#a1575015519fedca001bb26e129331b62", null ],
+ [ "menuitem_connection_quit", "struct___remmina_main.html#a37436a0fbd3d64082192826328fe063a", null ],
+ [ "menuitem_view_mode_list", "struct___remmina_main.html#a6288ed69d372d1047ce94c74e77e0fd4", null ],
+ [ "menuitem_view_mode_tree", "struct___remmina_main.html#a670425eaf7430854a172ee0f41c4e5e0", null ],
+ [ "priv", "struct___remmina_main.html#a45e6df8230d849a78e547fd542d76980", null ],
+ [ "search_bar", "struct___remmina_main.html#aecb54d7c3dd1e86a16e24ea2e00d4ddd", null ],
+ [ "search_toggle", "struct___remmina_main.html#acd8f3437eee668a2b8d905a16a16be72", null ],
+ [ "statusbar_main", "struct___remmina_main.html#acacd90f3e6df6a864154edba01464ae2", null ],
+ [ "tree_files_list", "struct___remmina_main.html#a81f987e527d521be54aaf3f46dfe7ced", null ],
+ [ "ustats_toggle", "struct___remmina_main.html#aa1e811e50525f5a74bb781f8c8a10670", null ],
+ [ "view_toggle_button", "struct___remmina_main.html#ae3c2c0b9855bb44b5b9a27a3178d32e7", null ],
+ [ "window", "struct___remmina_main.html#a82aa6f22340fc4f3df185aba7b01afc2", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_main_priv.html b/docs/struct___remmina_main_priv.html
new file mode 100644
index 000000000..642057887
--- /dev/null
+++ b/docs/struct___remmina_main_priv.html
@@ -0,0 +1,260 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaMainPriv Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_main_priv.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaMainPriv Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aec4c4540e9463a45b22a5c0b9108bc6f"><td class="memItemLeft" align="right" valign="top">GtkTreeModel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f">file_model</a></td></tr>
+<tr class="separator:aec4c4540e9463a45b22a5c0b9108bc6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1e1d579bdb2517bd0f86408b9d5f97c"><td class="memItemLeft" align="right" valign="top">GtkTreeModel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c">file_model_filter</a></td></tr>
+<tr class="separator:ae1e1d579bdb2517bd0f86408b9d5f97c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87a88c763f806d76fdee5a233c3ad7cd"><td class="memItemLeft" align="right" valign="top">GtkTreeModel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd">file_model_sort</a></td></tr>
+<tr class="separator:a87a88c763f806d76fdee5a233c3ad7cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a4eb201dd185ba606af5c486ef55e7f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f">initialized</a></td></tr>
+<tr class="separator:a7a4eb201dd185ba606af5c486ef55e7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a092aebd62ba9fe50c899e416361c1d00"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00">selected_filename</a></td></tr>
+<tr class="separator:a092aebd62ba9fe50c899e416361c1d00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a606c7e6dc78219e8e5536519db723a4d"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d">selected_name</a></td></tr>
+<tr class="separator:a606c7e6dc78219e8e5536519db723a4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0307278dd7770ab490f4687f2eb00e76"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76">override_view_file_mode_to_list</a></td></tr>
+<tr class="separator:a0307278dd7770ab490f4687f2eb00e76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a467cf8ebc87ccdb68b9f88bce95c9f3a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a">expanded_group</a></td></tr>
+<tr class="separator:a467cf8ebc87ccdb68b9f88bce95c9f3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00081">81</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a467cf8ebc87ccdb68b9f88bce95c9f3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a467cf8ebc87ccdb68b9f88bce95c9f3a">&#9670;&nbsp;</a></span>expanded_group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__array_8h.html#a62228cb0bc959307e3268cff98e1f7bb">RemminaStringArray</a>* _RemminaMainPriv::expanded_group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00091">91</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="aec4c4540e9463a45b22a5c0b9108bc6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec4c4540e9463a45b22a5c0b9108bc6f">&#9670;&nbsp;</a></span>file_model</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeModel* _RemminaMainPriv::file_model</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00082">82</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="ae1e1d579bdb2517bd0f86408b9d5f97c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1e1d579bdb2517bd0f86408b9d5f97c">&#9670;&nbsp;</a></span>file_model_filter</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeModel* _RemminaMainPriv::file_model_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00083">83</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a87a88c763f806d76fdee5a233c3ad7cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87a88c763f806d76fdee5a233c3ad7cd">&#9670;&nbsp;</a></span>file_model_sort</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeModel* _RemminaMainPriv::file_model_sort</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00084">84</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a7a4eb201dd185ba606af5c486ef55e7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a4eb201dd185ba606af5c486ef55e7f">&#9670;&nbsp;</a></span>initialized</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaMainPriv::initialized</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00086">86</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a0307278dd7770ab490f4687f2eb00e76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0307278dd7770ab490f4687f2eb00e76">&#9670;&nbsp;</a></span>override_view_file_mode_to_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaMainPriv::override_view_file_mode_to_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00090">90</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a092aebd62ba9fe50c899e416361c1d00"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a092aebd62ba9fe50c899e416361c1d00">&#9670;&nbsp;</a></span>selected_filename</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaMainPriv::selected_filename</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00088">88</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<a id="a606c7e6dc78219e8e5536519db723a4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a606c7e6dc78219e8e5536519db723a4d">&#9670;&nbsp;</a></span>selected_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaMainPriv::selected_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__main_8h_source.html#l00089">89</a> of file <a class="el" href="remmina__main_8h_source.html">remmina_main.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__main_8h_source.html">remmina_main.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_main_priv.html">_RemminaMainPriv</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_main_priv.js b/docs/struct___remmina_main_priv.js
new file mode 100644
index 000000000..c1e8b944b
--- /dev/null
+++ b/docs/struct___remmina_main_priv.js
@@ -0,0 +1,11 @@
+var struct___remmina_main_priv =
+[
+ [ "expanded_group", "struct___remmina_main_priv.html#a467cf8ebc87ccdb68b9f88bce95c9f3a", null ],
+ [ "file_model", "struct___remmina_main_priv.html#aec4c4540e9463a45b22a5c0b9108bc6f", null ],
+ [ "file_model_filter", "struct___remmina_main_priv.html#ae1e1d579bdb2517bd0f86408b9d5f97c", null ],
+ [ "file_model_sort", "struct___remmina_main_priv.html#a87a88c763f806d76fdee5a233c3ad7cd", null ],
+ [ "initialized", "struct___remmina_main_priv.html#a7a4eb201dd185ba606af5c486ef55e7f", null ],
+ [ "override_view_file_mode_to_list", "struct___remmina_main_priv.html#a0307278dd7770ab490f4687f2eb00e76", null ],
+ [ "selected_filename", "struct___remmina_main_priv.html#a092aebd62ba9fe50c899e416361c1d00", null ],
+ [ "selected_name", "struct___remmina_main_priv.html#a606c7e6dc78219e8e5536519db723a4d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_n_x_session.html b/docs/struct___remmina_n_x_session.html
new file mode 100644
index 000000000..5f7019f34
--- /dev/null
+++ b/docs/struct___remmina_n_x_session.html
@@ -0,0 +1,528 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaNXSession Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_n_x_session.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaNXSession Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ade30ec7b3ab10db3c0d944ff0f93a64f"><td class="memItemLeft" align="right" valign="top">ssh_session&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f">session</a></td></tr>
+<tr class="separator:ade30ec7b3ab10db3c0d944ff0f93a64f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18ace4f039f5580e24147bb5db1b2aad"><td class="memItemLeft" align="right" valign="top">ssh_channel&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad">channel</a></td></tr>
+<tr class="separator:a18ace4f039f5580e24147bb5db1b2aad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fd55eec41ac937d5f92b76af7112dac"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac">server</a></td></tr>
+<tr class="separator:a3fd55eec41ac937d5f92b76af7112dac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8265fdd8a96b911b5cd8092599992048"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048">error</a></td></tr>
+<tr class="separator:a8265fdd8a96b911b5cd8092599992048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2e716ee1eb3d039e99d79f6988946e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7">log_callback</a></td></tr>
+<tr class="separator:ae2e716ee1eb3d039e99d79f6988946e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4c9bb12c639ebd1b661cdbc5ebc2bc6"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">thread</a></td></tr>
+<tr class="separator:ae4c9bb12c639ebd1b661cdbc5ebc2bc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a48b762c4eefbc6f48b93d336dd0874"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874">running</a></td></tr>
+<tr class="separator:a7a48b762c4eefbc6f48b93d336dd0874"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8191b8b242c369a1287df3333ff9d8"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8">server_sock</a></td></tr>
+<tr class="separator:adc8191b8b242c369a1287df3333ff9d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a301e9e32110ea5c3269025921f9b11a3"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3">session_parameters</a></td></tr>
+<tr class="separator:a301e9e32110ea5c3269025921f9b11a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94f4baa1c4a6befb0c0a84f1b87d8508"><td class="memItemLeft" align="right" valign="top">GString *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508">response</a></td></tr>
+<tr class="separator:a94f4baa1c4a6befb0c0a84f1b87d8508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a320798f97f2c662fd0005cbc7ae606b3"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3">response_pos</a></td></tr>
+<tr class="separator:a320798f97f2c662fd0005cbc7ae606b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a061c5a4413fae2bd0b856cb5a079bf17"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17">status</a></td></tr>
+<tr class="separator:a061c5a4413fae2bd0b856cb5a079bf17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a625c909bea52f8e22d277fdf64d67fa4"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4">encryption</a></td></tr>
+<tr class="separator:a625c909bea52f8e22d277fdf64d67fa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e8a2518c6717188f2acda9dd4f5188a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a">localport</a></td></tr>
+<tr class="separator:a6e8a2518c6717188f2acda9dd4f5188a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38fc966f870cf85028243a968356aee7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7">version</a></td></tr>
+<tr class="separator:a38fc966f870cf85028243a968356aee7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7db217f1b651367e3f2b99d2823c22a"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a">session_id</a></td></tr>
+<tr class="separator:ae7db217f1b651367e3f2b99d2823c22a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a792e500d6555092699d0a1ad117f627f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f">session_display</a></td></tr>
+<tr class="separator:a792e500d6555092699d0a1ad117f627f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3d1942fc8672cb8e1ad62e26ae162c5"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5">proxy_cookie</a></td></tr>
+<tr class="separator:ae3d1942fc8672cb8e1ad62e26ae162c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb432c33574cfe82012c70d34a495b82"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82">allow_start</a></td></tr>
+<tr class="separator:acb432c33574cfe82012c70d34a495b82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d82270696558ff011d0f1583e8e5b44"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44">session_list</a></td></tr>
+<tr class="separator:a5d82270696558ff011d0f1583e8e5b44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96a06206abbe66cc159c9c2900501594"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594">session_list_state</a></td></tr>
+<tr class="separator:a96a06206abbe66cc159c9c2900501594"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a936a3e78f90b86fc1d6fbb1ad82e41d6"><td class="memItemLeft" align="right" valign="top">GPid&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6">proxy_pid</a></td></tr>
+<tr class="separator:a936a3e78f90b86fc1d6fbb1ad82e41d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b4b40924bf991f5c889a90ee7fd48b4"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4">proxy_watch_source</a></td></tr>
+<tr class="separator:a2b4b40924bf991f5c889a90ee7fd48b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00093">93</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="acb432c33574cfe82012c70d34a495b82"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb432c33574cfe82012c70d34a495b82">&#9670;&nbsp;</a></span>allow_start</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaNXSession::allow_start</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00120">120</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a18ace4f039f5580e24147bb5db1b2aad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18ace4f039f5580e24147bb5db1b2aad">&#9670;&nbsp;</a></span>channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_channel _RemminaNXSession::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00096">96</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a625c909bea52f8e22d277fdf64d67fa4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a625c909bea52f8e22d277fdf64d67fa4">&#9670;&nbsp;</a></span>encryption</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::encryption</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00112">112</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a8265fdd8a96b911b5cd8092599992048"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8265fdd8a96b911b5cd8092599992048">&#9670;&nbsp;</a></span>error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaNXSession::error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00098">98</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a6e8a2518c6717188f2acda9dd4f5188a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e8a2518c6717188f2acda9dd4f5188a">&#9670;&nbsp;</a></span>localport</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::localport</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00113">113</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae2e716ee1eb3d039e99d79f6988946e7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2e716ee1eb3d039e99d79f6988946e7">&#9670;&nbsp;</a></span>log_callback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="nx__session_8h.html#ab3c48efc4625d0f41dc99a6e383943a8">RemminaNXLogCallback</a> _RemminaNXSession::log_callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00099">99</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae3d1942fc8672cb8e1ad62e26ae162c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3d1942fc8672cb8e1ad62e26ae162c5">&#9670;&nbsp;</a></span>proxy_cookie</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaNXSession::proxy_cookie</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00118">118</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a936a3e78f90b86fc1d6fbb1ad82e41d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a936a3e78f90b86fc1d6fbb1ad82e41d6">&#9670;&nbsp;</a></span>proxy_pid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPid _RemminaNXSession::proxy_pid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00124">124</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b4b40924bf991f5c889a90ee7fd48b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b4b40924bf991f5c889a90ee7fd48b4">&#9670;&nbsp;</a></span>proxy_watch_source</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaNXSession::proxy_watch_source</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00125">125</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a94f4baa1c4a6befb0c0a84f1b87d8508"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94f4baa1c4a6befb0c0a84f1b87d8508">&#9670;&nbsp;</a></span>response</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GString* _RemminaNXSession::response</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00109">109</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a320798f97f2c662fd0005cbc7ae606b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a320798f97f2c662fd0005cbc7ae606b3">&#9670;&nbsp;</a></span>response_pos</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::response_pos</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00110">110</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a7a48b762c4eefbc6f48b93d336dd0874"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a48b762c4eefbc6f48b93d336dd0874">&#9670;&nbsp;</a></span>running</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaNXSession::running</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00103">103</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a3fd55eec41ac937d5f92b76af7112dac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fd55eec41ac937d5f92b76af7112dac">&#9670;&nbsp;</a></span>server</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaNXSession::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00097">97</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="adc8191b8b242c369a1287df3333ff9d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc8191b8b242c369a1287df3333ff9d8">&#9670;&nbsp;</a></span>server_sock</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::server_sock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00104">104</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ade30ec7b3ab10db3c0d944ff0f93a64f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade30ec7b3ab10db3c0d944ff0f93a64f">&#9670;&nbsp;</a></span>session</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_session _RemminaNXSession::session</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00095">95</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a792e500d6555092699d0a1ad117f627f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a792e500d6555092699d0a1ad117f627f">&#9670;&nbsp;</a></span>session_display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::session_display</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00117">117</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae7db217f1b651367e3f2b99d2823c22a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7db217f1b651367e3f2b99d2823c22a">&#9670;&nbsp;</a></span>session_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaNXSession::session_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00116">116</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a5d82270696558ff011d0f1583e8e5b44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d82270696558ff011d0f1583e8e5b44">&#9670;&nbsp;</a></span>session_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaNXSession::session_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00121">121</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a96a06206abbe66cc159c9c2900501594"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96a06206abbe66cc159c9c2900501594">&#9670;&nbsp;</a></span>session_list_state</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::session_list_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00122">122</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a301e9e32110ea5c3269025921f9b11a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a301e9e32110ea5c3269025921f9b11a3">&#9670;&nbsp;</a></span>session_parameters</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaNXSession::session_parameters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00107">107</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a061c5a4413fae2bd0b856cb5a079bf17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a061c5a4413fae2bd0b856cb5a079bf17">&#9670;&nbsp;</a></span>status</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNXSession::status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00111">111</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="ae4c9bb12c639ebd1b661cdbc5ebc2bc6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4c9bb12c639ebd1b661cdbc5ebc2bc6">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaNXSession::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00102">102</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<a id="a38fc966f870cf85028243a968356aee7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38fc966f870cf85028243a968356aee7">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaNXSession::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__session_8c_source.html#l00115">115</a> of file <a class="el" href="nx__session_8c_source.html">nx_session.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="nx__session_8c_source.html">nx_session.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_n_x_session.html">_RemminaNXSession</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_n_x_session.js b/docs/struct___remmina_n_x_session.js
new file mode 100644
index 000000000..aa55ca12a
--- /dev/null
+++ b/docs/struct___remmina_n_x_session.js
@@ -0,0 +1,26 @@
+var struct___remmina_n_x_session =
+[
+ [ "allow_start", "struct___remmina_n_x_session.html#acb432c33574cfe82012c70d34a495b82", null ],
+ [ "channel", "struct___remmina_n_x_session.html#a18ace4f039f5580e24147bb5db1b2aad", null ],
+ [ "encryption", "struct___remmina_n_x_session.html#a625c909bea52f8e22d277fdf64d67fa4", null ],
+ [ "error", "struct___remmina_n_x_session.html#a8265fdd8a96b911b5cd8092599992048", null ],
+ [ "localport", "struct___remmina_n_x_session.html#a6e8a2518c6717188f2acda9dd4f5188a", null ],
+ [ "log_callback", "struct___remmina_n_x_session.html#ae2e716ee1eb3d039e99d79f6988946e7", null ],
+ [ "proxy_cookie", "struct___remmina_n_x_session.html#ae3d1942fc8672cb8e1ad62e26ae162c5", null ],
+ [ "proxy_pid", "struct___remmina_n_x_session.html#a936a3e78f90b86fc1d6fbb1ad82e41d6", null ],
+ [ "proxy_watch_source", "struct___remmina_n_x_session.html#a2b4b40924bf991f5c889a90ee7fd48b4", null ],
+ [ "response", "struct___remmina_n_x_session.html#a94f4baa1c4a6befb0c0a84f1b87d8508", null ],
+ [ "response_pos", "struct___remmina_n_x_session.html#a320798f97f2c662fd0005cbc7ae606b3", null ],
+ [ "running", "struct___remmina_n_x_session.html#a7a48b762c4eefbc6f48b93d336dd0874", null ],
+ [ "server", "struct___remmina_n_x_session.html#a3fd55eec41ac937d5f92b76af7112dac", null ],
+ [ "server_sock", "struct___remmina_n_x_session.html#adc8191b8b242c369a1287df3333ff9d8", null ],
+ [ "session", "struct___remmina_n_x_session.html#ade30ec7b3ab10db3c0d944ff0f93a64f", null ],
+ [ "session_display", "struct___remmina_n_x_session.html#a792e500d6555092699d0a1ad117f627f", null ],
+ [ "session_id", "struct___remmina_n_x_session.html#ae7db217f1b651367e3f2b99d2823c22a", null ],
+ [ "session_list", "struct___remmina_n_x_session.html#a5d82270696558ff011d0f1583e8e5b44", null ],
+ [ "session_list_state", "struct___remmina_n_x_session.html#a96a06206abbe66cc159c9c2900501594", null ],
+ [ "session_parameters", "struct___remmina_n_x_session.html#a301e9e32110ea5c3269025921f9b11a3", null ],
+ [ "status", "struct___remmina_n_x_session.html#a061c5a4413fae2bd0b856cb5a079bf17", null ],
+ [ "thread", "struct___remmina_n_x_session.html#ae4c9bb12c639ebd1b661cdbc5ebc2bc6", null ],
+ [ "version", "struct___remmina_n_x_session.html#a38fc966f870cf85028243a968356aee7", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_news_dialog.html b/docs/struct___remmina_news_dialog.html
new file mode 100644
index 000000000..8971c9f6f
--- /dev/null
+++ b/docs/struct___remmina_news_dialog.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaNewsDialog Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_news_dialog.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaNewsDialog Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rmnews_8h_source.html">rmnews.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a04d61af97919ea321ca384711edd2015"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015">builder</a></td></tr>
+<tr class="separator:a04d61af97919ea321ca384711edd2015"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a652393d5775f6abb7a3b97e1d250797f"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f">dialog</a></td></tr>
+<tr class="separator:a652393d5775f6abb7a3b97e1d250797f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94584de47018f068c242e5f527e3b84f"><td class="memItemLeft" align="right" valign="top">GtkTextView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f">rmnews_text_view</a></td></tr>
+<tr class="separator:a94584de47018f068c242e5f527e3b84f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4b71b4e789e65063db67f51ce4feb26"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26">rmnews_label</a></td></tr>
+<tr class="separator:ae4b71b4e789e65063db67f51ce4feb26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24dd17da12072e324ce165a9873d59ad"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad">rmnews_button_close</a></td></tr>
+<tr class="separator:a24dd17da12072e324ce165a9873d59ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68e9f8a20af9ff18a4446005042c35f7"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7">rmnews_stats_switch</a></td></tr>
+<tr class="separator:a68e9f8a20af9ff18a4446005042c35f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a041c5c6f7776a3cdfd1fbcc700dfc749"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749">rmnews_defaultcl_label</a></td></tr>
+<tr class="separator:a041c5c6f7776a3cdfd1fbcc700dfc749"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f1f924669db7285fac6087e08d6ce19"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19">rmnews_defaultcl_button</a></td></tr>
+<tr class="separator:a5f1f924669db7285fac6087e08d6ce19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa44d2c89a170a509ebb082082efac813"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813">retval</a></td></tr>
+<tr class="separator:aa44d2c89a170a509ebb082082efac813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00035">35</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a04d61af97919ea321ca384711edd2015"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04d61af97919ea321ca384711edd2015">&#9670;&nbsp;</a></span>builder</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* _RemminaNewsDialog::builder</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00036">36</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a652393d5775f6abb7a3b97e1d250797f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a652393d5775f6abb7a3b97e1d250797f">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* _RemminaNewsDialog::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00037">37</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="aa44d2c89a170a509ebb082082efac813"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa44d2c89a170a509ebb082082efac813">&#9670;&nbsp;</a></span>retval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaNewsDialog::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00047">47</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a24dd17da12072e324ce165a9873d59ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24dd17da12072e324ce165a9873d59ad">&#9670;&nbsp;</a></span>rmnews_button_close</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaNewsDialog::rmnews_button_close</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00041">41</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a5f1f924669db7285fac6087e08d6ce19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f1f924669db7285fac6087e08d6ce19">&#9670;&nbsp;</a></span>rmnews_defaultcl_button</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaNewsDialog::rmnews_defaultcl_button</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00045">45</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a041c5c6f7776a3cdfd1fbcc700dfc749"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a041c5c6f7776a3cdfd1fbcc700dfc749">&#9670;&nbsp;</a></span>rmnews_defaultcl_label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaNewsDialog::rmnews_defaultcl_label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00044">44</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="ae4b71b4e789e65063db67f51ce4feb26"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae4b71b4e789e65063db67f51ce4feb26">&#9670;&nbsp;</a></span>rmnews_label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaNewsDialog::rmnews_label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00040">40</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a68e9f8a20af9ff18a4446005042c35f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a68e9f8a20af9ff18a4446005042c35f7">&#9670;&nbsp;</a></span>rmnews_stats_switch</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaNewsDialog::rmnews_stats_switch</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00043">43</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<a id="a94584de47018f068c242e5f527e3b84f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94584de47018f068c242e5f527e3b84f">&#9670;&nbsp;</a></span>rmnews_text_view</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTextView* _RemminaNewsDialog::rmnews_text_view</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rmnews_8h_source.html#l00039">39</a> of file <a class="el" href="rmnews_8h_source.html">rmnews.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rmnews_8h_source.html">rmnews.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_news_dialog.html">_RemminaNewsDialog</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_news_dialog.js b/docs/struct___remmina_news_dialog.js
new file mode 100644
index 000000000..c5d5713da
--- /dev/null
+++ b/docs/struct___remmina_news_dialog.js
@@ -0,0 +1,12 @@
+var struct___remmina_news_dialog =
+[
+ [ "builder", "struct___remmina_news_dialog.html#a04d61af97919ea321ca384711edd2015", null ],
+ [ "dialog", "struct___remmina_news_dialog.html#a652393d5775f6abb7a3b97e1d250797f", null ],
+ [ "retval", "struct___remmina_news_dialog.html#aa44d2c89a170a509ebb082082efac813", null ],
+ [ "rmnews_button_close", "struct___remmina_news_dialog.html#a24dd17da12072e324ce165a9873d59ad", null ],
+ [ "rmnews_defaultcl_button", "struct___remmina_news_dialog.html#a5f1f924669db7285fac6087e08d6ce19", null ],
+ [ "rmnews_defaultcl_label", "struct___remmina_news_dialog.html#a041c5c6f7776a3cdfd1fbcc700dfc749", null ],
+ [ "rmnews_label", "struct___remmina_news_dialog.html#ae4b71b4e789e65063db67f51ce4feb26", null ],
+ [ "rmnews_stats_switch", "struct___remmina_news_dialog.html#a68e9f8a20af9ff18a4446005042c35f7", null ],
+ [ "rmnews_text_view", "struct___remmina_news_dialog.html#a94584de47018f068c242e5f527e3b84f", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin.html b/docs/struct___remmina_plugin.html
new file mode 100644
index 000000000..11d636e39
--- /dev/null
+++ b/docs/struct___remmina_plugin.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac7f294cb3a5e989e95f619780ede87d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3">type</a></td></tr>
+<tr class="separator:ac7f294cb3a5e989e95f619780ede87d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f09b29bb3b0c044780d56a8b1a51582"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582">name</a></td></tr>
+<tr class="separator:a3f09b29bb3b0c044780d56a8b1a51582"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ac66b7ebefb9bd8167737eb1af83cde"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde">description</a></td></tr>
+<tr class="separator:a4ac66b7ebefb9bd8167737eb1af83cde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a024d3e6d752dd29828b31c60c8c7c201"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201">domain</a></td></tr>
+<tr class="separator:a024d3e6d752dd29828b31c60c8c7c201"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecdad5d7ff5bdfbf0ce80b4b73f65099"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099">version</a></td></tr>
+<tr class="separator:aecdad5d7ff5bdfbf0ce80b4b73f65099"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00053">53</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a4ac66b7ebefb9bd8167737eb1af83cde"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ac66b7ebefb9bd8167737eb1af83cde">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00056">56</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a024d3e6d752dd29828b31c60c8c7c201"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a024d3e6d752dd29828b31c60c8c7c201">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00057">57</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3f09b29bb3b0c044780d56a8b1a51582"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f09b29bb3b0c044780d56a8b1a51582">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00055">55</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac7f294cb3a5e989e95f619780ede87d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7f294cb3a5e989e95f619780ede87d3">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00054">54</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aecdad5d7ff5bdfbf0ce80b4b73f65099"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecdad5d7ff5bdfbf0ce80b4b73f65099">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00058">58</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin.html">_RemminaPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin.js b/docs/struct___remmina_plugin.js
new file mode 100644
index 000000000..a21c363e8
--- /dev/null
+++ b/docs/struct___remmina_plugin.js
@@ -0,0 +1,8 @@
+var struct___remmina_plugin =
+[
+ [ "description", "struct___remmina_plugin.html#a4ac66b7ebefb9bd8167737eb1af83cde", null ],
+ [ "domain", "struct___remmina_plugin.html#a024d3e6d752dd29828b31c60c8c7c201", null ],
+ [ "name", "struct___remmina_plugin.html#a3f09b29bb3b0c044780d56a8b1a51582", null ],
+ [ "type", "struct___remmina_plugin.html#ac7f294cb3a5e989e95f619780ede87d3", null ],
+ [ "version", "struct___remmina_plugin.html#aecdad5d7ff5bdfbf0ce80b4b73f65099", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_data.html b/docs/struct___remmina_plugin_data.html
new file mode 100644
index 000000000..62ef33872
--- /dev/null
+++ b/docs/struct___remmina_plugin_data.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a4498ac2561ca98c6487cedda48292835"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835">socket</a></td></tr>
+<tr class="separator:a4498ac2561ca98c6487cedda48292835"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdf60b88b5db47a43254fb0a26daf8f3"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3">socket_id</a></td></tr>
+<tr class="separator:abdf60b88b5db47a43254fb0a26daf8f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade3797ce9b5a52fb53d179e2696e7739"><td class="memItemLeft" align="right" valign="top">GPid&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739">pid</a></td></tr>
+<tr class="separator:ade3797ce9b5a52fb53d179e2696e7739"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00049">49</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ade3797ce9b5a52fb53d179e2696e7739"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade3797ce9b5a52fb53d179e2696e7739">&#9670;&nbsp;</a></span>pid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPid _RemminaPluginData::pid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00053">53</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4498ac2561ca98c6487cedda48292835"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4498ac2561ca98c6487cedda48292835">&#9670;&nbsp;</a></span>socket</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginData::socket</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00051">51</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="abdf60b88b5db47a43254fb0a26daf8f3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abdf60b88b5db47a43254fb0a26daf8f3">&#9670;&nbsp;</a></span>socket_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginData::socket_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="st__plugin_8c_source.html#l00052">52</a> of file <a class="el" href="st__plugin_8c_source.html">st_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="st__plugin_8c_source.html">st_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_data.html">_RemminaPluginData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_data.js b/docs/struct___remmina_plugin_data.js
new file mode 100644
index 000000000..1a44bdac1
--- /dev/null
+++ b/docs/struct___remmina_plugin_data.js
@@ -0,0 +1,6 @@
+var struct___remmina_plugin_data =
+[
+ [ "pid", "struct___remmina_plugin_data.html#ade3797ce9b5a52fb53d179e2696e7739", null ],
+ [ "socket", "struct___remmina_plugin_data.html#a4498ac2561ca98c6487cedda48292835", null ],
+ [ "socket_id", "struct___remmina_plugin_data.html#abdf60b88b5db47a43254fb0a26daf8f3", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_exec_data.html b/docs/struct___remmina_plugin_exec_data.html
new file mode 100644
index 000000000..33cb1c762
--- /dev/null
+++ b/docs/struct___remmina_plugin_exec_data.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginExecData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_exec_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginExecData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac7ad166ff0ad398b004d39b72a5aa2e1"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1">log_view</a></td></tr>
+<tr class="separator:ac7ad166ff0ad398b004d39b72a5aa2e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9adc6a977b68bd6fc1dc1f60c834ed41"><td class="memItemLeft" align="right" valign="top">GtkTextBuffer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41">log_buffer</a></td></tr>
+<tr class="separator:a9adc6a977b68bd6fc1dc1f60c834ed41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ff6bc2fe9796bdc74fda1677ebf80c4"><td class="memItemLeft" align="right" valign="top">GtkTextBuffer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4">err</a></td></tr>
+<tr class="separator:a9ff6bc2fe9796bdc74fda1677ebf80c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59117466c585cabdc32c363083867bbb"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb">sw</a></td></tr>
+<tr class="separator:a59117466c585cabdc32c363083867bbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00051">51</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a9ff6bc2fe9796bdc74fda1677ebf80c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ff6bc2fe9796bdc74fda1677ebf80c4">&#9670;&nbsp;</a></span>err</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTextBuffer* _RemminaPluginExecData::err</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00054">54</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9adc6a977b68bd6fc1dc1f60c834ed41"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9adc6a977b68bd6fc1dc1f60c834ed41">&#9670;&nbsp;</a></span>log_buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTextBuffer* _RemminaPluginExecData::log_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00053">53</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7ad166ff0ad398b004d39b72a5aa2e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7ad166ff0ad398b004d39b72a5aa2e1">&#9670;&nbsp;</a></span>log_view</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginExecData::log_view</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00052">52</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a59117466c585cabdc32c363083867bbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59117466c585cabdc32c363083867bbb">&#9670;&nbsp;</a></span>sw</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginExecData::sw</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="exec__plugin_8c_source.html#l00055">55</a> of file <a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="exec__plugin_8c_source.html">exec_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_exec_data.html">_RemminaPluginExecData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_exec_data.js b/docs/struct___remmina_plugin_exec_data.js
new file mode 100644
index 000000000..a597a8458
--- /dev/null
+++ b/docs/struct___remmina_plugin_exec_data.js
@@ -0,0 +1,7 @@
+var struct___remmina_plugin_exec_data =
+[
+ [ "err", "struct___remmina_plugin_exec_data.html#a9ff6bc2fe9796bdc74fda1677ebf80c4", null ],
+ [ "log_buffer", "struct___remmina_plugin_exec_data.html#a9adc6a977b68bd6fc1dc1f60c834ed41", null ],
+ [ "log_view", "struct___remmina_plugin_exec_data.html#ac7ad166ff0ad398b004d39b72a5aa2e1", null ],
+ [ "sw", "struct___remmina_plugin_exec_data.html#a59117466c585cabdc32c363083867bbb", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_nx_data.html b/docs/struct___remmina_plugin_nx_data.html
new file mode 100644
index 000000000..59e7b7902
--- /dev/null
+++ b/docs/struct___remmina_plugin_nx_data.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginNxData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_nx_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginNxData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a5e30cb652981c14d8270c31c566d95a6"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6">socket</a></td></tr>
+<tr class="separator:a5e30cb652981c14d8270c31c566d95a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8ebf2192bfc7378c0e6375931373645"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645">socket_id</a></td></tr>
+<tr class="separator:ae8ebf2192bfc7378c0e6375931373645"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10edf199cbe51034a9f4e571f903a48c"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c">thread</a></td></tr>
+<tr class="separator:a10edf199cbe51034a9f4e571f903a48c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2a0f845613b6728a4e2dfef4a335256"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256">nx</a></td></tr>
+<tr class="separator:ab2a0f845613b6728a4e2dfef4a335256"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1f2562fd244eea96de8431713bf0fd3"><td class="memItemLeft" align="right" valign="top">Display *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3">display</a></td></tr>
+<tr class="separator:ad1f2562fd244eea96de8431713bf0fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec544598d9e3b88543a8f2f4d042a4fc"><td class="memItemLeft" align="right" valign="top">Window&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc">window_id</a></td></tr>
+<tr class="separator:aec544598d9e3b88543a8f2f4d042a4fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4248d0cfbac9b21095e70c33980e51c"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c">orig_handler</a> )(Display *, XErrorEvent *)</td></tr>
+<tr class="separator:ab4248d0cfbac9b21095e70c33980e51c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb992195207fc2b42f7a49890f429f82"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82">manager_started</a></td></tr>
+<tr class="separator:adb992195207fc2b42f7a49890f429f82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b685983e65896aa7af74a1fa24076b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b">manager_dialog</a></td></tr>
+<tr class="separator:a85b685983e65896aa7af74a1fa24076b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c7c10613fa45f91a9082bb72341e2e4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4">manager_selected</a></td></tr>
+<tr class="separator:a4c7c10613fa45f91a9082bb72341e2e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1022be897e129b97a7cdf609129fc68d"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d">event_pipe</a> [2]</td></tr>
+<tr class="separator:a1022be897e129b97a7cdf609129fc68d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1abb925da85e0240f20009e8bd1b1e0b"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b">session_manager_start_handler</a></td></tr>
+<tr class="separator:a1abb925da85e0240f20009e8bd1b1e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad23fdec26a110b8974c90650dfe05e54"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54">attach_session</a></td></tr>
+<tr class="separator:ad23fdec26a110b8974c90650dfe05e54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd24d873a255b1a1e8158114d3ce2fe4"><td class="memItemLeft" align="right" valign="top">GtkTreeIter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4">iter</a></td></tr>
+<tr class="separator:acd24d873a255b1a1e8158114d3ce2fe4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e4e9e8356abb5e1bceb9d677bb45ba1"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1">default_response</a></td></tr>
+<tr class="separator:a0e4e9e8356abb5e1bceb9d677bb45ba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00053">53</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ad23fdec26a110b8974c90650dfe05e54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad23fdec26a110b8974c90650dfe05e54">&#9670;&nbsp;</a></span>attach_session</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginNxData::attach_session</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00073">73</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0e4e9e8356abb5e1bceb9d677bb45ba1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e4e9e8356abb5e1bceb9d677bb45ba1">&#9670;&nbsp;</a></span>default_response</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginNxData::default_response</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00075">75</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad1f2562fd244eea96de8431713bf0fd3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad1f2562fd244eea96de8431713bf0fd3">&#9670;&nbsp;</a></span>display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Display* _RemminaPluginNxData::display</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00061">61</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1022be897e129b97a7cdf609129fc68d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1022be897e129b97a7cdf609129fc68d">&#9670;&nbsp;</a></span>event_pipe</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginNxData::event_pipe[2]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00071">71</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acd24d873a255b1a1e8158114d3ce2fe4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd24d873a255b1a1e8158114d3ce2fe4">&#9670;&nbsp;</a></span>iter</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeIter _RemminaPluginNxData::iter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00074">74</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a85b685983e65896aa7af74a1fa24076b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85b685983e65896aa7af74a1fa24076b">&#9670;&nbsp;</a></span>manager_dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginNxData::manager_dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00067">67</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c7c10613fa45f91a9082bb72341e2e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c7c10613fa45f91a9082bb72341e2e4">&#9670;&nbsp;</a></span>manager_selected</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginNxData::manager_selected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00068">68</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="adb992195207fc2b42f7a49890f429f82"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb992195207fc2b42f7a49890f429f82">&#9670;&nbsp;</a></span>manager_started</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginNxData::manager_started</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00066">66</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab2a0f845613b6728a4e2dfef4a335256"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2a0f845613b6728a4e2dfef4a335256">&#9670;&nbsp;</a></span>nx</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="nx__session_8h.html#a07d927acbda6a5ca8beecdda9fdf9fff">RemminaNXSession</a>* _RemminaPluginNxData::nx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00059">59</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab4248d0cfbac9b21095e70c33980e51c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4248d0cfbac9b21095e70c33980e51c">&#9670;&nbsp;</a></span>orig_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* _RemminaPluginNxData::orig_handler) (Display *, XErrorEvent *)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00063">63</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1abb925da85e0240f20009e8bd1b1e0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1abb925da85e0240f20009e8bd1b1e0b">&#9670;&nbsp;</a></span>session_manager_start_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPluginNxData::session_manager_start_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00072">72</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5e30cb652981c14d8270c31c566d95a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e30cb652981c14d8270c31c566d95a6">&#9670;&nbsp;</a></span>socket</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginNxData::socket</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00054">54</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae8ebf2192bfc7378c0e6375931373645"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8ebf2192bfc7378c0e6375931373645">&#9670;&nbsp;</a></span>socket_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginNxData::socket_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00055">55</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a10edf199cbe51034a9f4e571f903a48c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10edf199cbe51034a9f4e571f903a48c">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaPluginNxData::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00057">57</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aec544598d9e3b88543a8f2f4d042a4fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec544598d9e3b88543a8f2f4d042a4fc">&#9670;&nbsp;</a></span>window_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Window _RemminaPluginNxData::window_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8h_source.html#l00062">62</a> of file <a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="nx__plugin_8h_source.html">nx_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_nx_data.html">_RemminaPluginNxData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_nx_data.js b/docs/struct___remmina_plugin_nx_data.js
new file mode 100644
index 000000000..06fb991a1
--- /dev/null
+++ b/docs/struct___remmina_plugin_nx_data.js
@@ -0,0 +1,18 @@
+var struct___remmina_plugin_nx_data =
+[
+ [ "attach_session", "struct___remmina_plugin_nx_data.html#ad23fdec26a110b8974c90650dfe05e54", null ],
+ [ "default_response", "struct___remmina_plugin_nx_data.html#a0e4e9e8356abb5e1bceb9d677bb45ba1", null ],
+ [ "display", "struct___remmina_plugin_nx_data.html#ad1f2562fd244eea96de8431713bf0fd3", null ],
+ [ "event_pipe", "struct___remmina_plugin_nx_data.html#a1022be897e129b97a7cdf609129fc68d", null ],
+ [ "iter", "struct___remmina_plugin_nx_data.html#acd24d873a255b1a1e8158114d3ce2fe4", null ],
+ [ "manager_dialog", "struct___remmina_plugin_nx_data.html#a85b685983e65896aa7af74a1fa24076b", null ],
+ [ "manager_selected", "struct___remmina_plugin_nx_data.html#a4c7c10613fa45f91a9082bb72341e2e4", null ],
+ [ "manager_started", "struct___remmina_plugin_nx_data.html#adb992195207fc2b42f7a49890f429f82", null ],
+ [ "nx", "struct___remmina_plugin_nx_data.html#ab2a0f845613b6728a4e2dfef4a335256", null ],
+ [ "orig_handler", "struct___remmina_plugin_nx_data.html#ab4248d0cfbac9b21095e70c33980e51c", null ],
+ [ "session_manager_start_handler", "struct___remmina_plugin_nx_data.html#a1abb925da85e0240f20009e8bd1b1e0b", null ],
+ [ "socket", "struct___remmina_plugin_nx_data.html#a5e30cb652981c14d8270c31c566d95a6", null ],
+ [ "socket_id", "struct___remmina_plugin_nx_data.html#ae8ebf2192bfc7378c0e6375931373645", null ],
+ [ "thread", "struct___remmina_plugin_nx_data.html#a10edf199cbe51034a9f4e571f903a48c", null ],
+ [ "window_id", "struct___remmina_plugin_nx_data.html#aec544598d9e3b88543a8f2f4d042a4fc", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_rdpset_grid.html b/docs/struct___remmina_plugin_rdpset_grid.html
new file mode 100644
index 000000000..a9bc95b5c
--- /dev/null
+++ b/docs/struct___remmina_plugin_rdpset_grid.html
@@ -0,0 +1,492 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginRdpsetGrid Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_rdpset_grid.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginRdpsetGrid Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:adf5582328d395582e4c364d64c3561a3"><td class="memItemLeft" align="right" valign="top">GtkGrid&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3">grid</a></td></tr>
+<tr class="separator:adf5582328d395582e4c364d64c3561a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a785392cdbf938812c96ce67ec87d55c5"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5">keyboard_layout_label</a></td></tr>
+<tr class="separator:a785392cdbf938812c96ce67ec87d55c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99ba668180c8cf5e5bfc2d899aee73ec"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec">keyboard_layout_combo</a></td></tr>
+<tr class="separator:a99ba668180c8cf5e5bfc2d899aee73ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefce226217c7ca11de97f9511ae8150f"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f">keyboard_layout_store</a></td></tr>
+<tr class="separator:aefce226217c7ca11de97f9511ae8150f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a06aa388c5b2a6d50d921b169b3723b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b">quality_combo</a></td></tr>
+<tr class="separator:a9a06aa388c5b2a6d50d921b169b3723b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a136e2daf6819eb2b3d83d20dab6f6621"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621">quality_store</a></td></tr>
+<tr class="separator:a136e2daf6819eb2b3d83d20dab6f6621"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedf291b1b5cf61eb25731605e42fc319"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319">wallpaper_check</a></td></tr>
+<tr class="separator:aedf291b1b5cf61eb25731605e42fc319"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04a3bee67aa51808a69ded75e643e4c0"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0">windowdrag_check</a></td></tr>
+<tr class="separator:a04a3bee67aa51808a69ded75e643e4c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ed6dc93d2f43db961c3c0a3a92f2d4d"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d">menuanimation_check</a></td></tr>
+<tr class="separator:a5ed6dc93d2f43db961c3c0a3a92f2d4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5744e97f282983eabf61572022702bf"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf">theme_check</a></td></tr>
+<tr class="separator:ae5744e97f282983eabf61572022702bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade8c5db180127c00e8413ec0c110da29"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29">cursorshadow_check</a></td></tr>
+<tr class="separator:ade8c5db180127c00e8413ec0c110da29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a515323687d10da1af50cee93ea2c9b93"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93">cursorblinking_check</a></td></tr>
+<tr class="separator:a515323687d10da1af50cee93ea2c9b93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadd548c398b9094ea862f189d0f088c6"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6">fontsmoothing_check</a></td></tr>
+<tr class="separator:aadd548c398b9094ea862f189d0f088c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaddc109b8404a5bbca0c8b0810ae922e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e">composition_check</a></td></tr>
+<tr class="separator:aaddc109b8404a5bbca0c8b0810ae922e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff981af8772341c9c7adc7515bec3970"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970">use_client_keymap_check</a></td></tr>
+<tr class="separator:aff981af8772341c9c7adc7515bec3970"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7390f86f6f634e4571db112662182a5b"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b">desktop_scale_factor_spin</a></td></tr>
+<tr class="separator:a7390f86f6f634e4571db112662182a5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e5ba950872f1a5db42a7b077cb02860"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860">device_scale_factor_store</a></td></tr>
+<tr class="separator:a2e5ba950872f1a5db42a7b077cb02860"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad64fd1c5a1230a98afaff86ece884ff3"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3">device_scale_factor_combo</a></td></tr>
+<tr class="separator:ad64fd1c5a1230a98afaff86ece884ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7278fb4de2fb55e20ca0cc9ccffd5372"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372">desktop_orientation_store</a></td></tr>
+<tr class="separator:a7278fb4de2fb55e20ca0cc9ccffd5372"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2614c8e9f649cde3e0184228cb227cf4"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4">desktop_orientation_combo</a></td></tr>
+<tr class="separator:a2614c8e9f649cde3e0184228cb227cf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a220634fcc8fcda079d8443b4898093af"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af">quality_values</a> [10]</td></tr>
+<tr class="separator:a220634fcc8fcda079d8443b4898093af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00079">79</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aaddc109b8404a5bbca0c8b0810ae922e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaddc109b8404a5bbca0c8b0810ae922e">&#9670;&nbsp;</a></span>composition_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::composition_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00095">95</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a515323687d10da1af50cee93ea2c9b93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a515323687d10da1af50cee93ea2c9b93">&#9670;&nbsp;</a></span>cursorblinking_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::cursorblinking_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00093">93</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="ade8c5db180127c00e8413ec0c110da29"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade8c5db180127c00e8413ec0c110da29">&#9670;&nbsp;</a></span>cursorshadow_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::cursorshadow_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00092">92</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a2614c8e9f649cde3e0184228cb227cf4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2614c8e9f649cde3e0184228cb227cf4">&#9670;&nbsp;</a></span>desktop_orientation_combo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::desktop_orientation_combo</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00105">105</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a7278fb4de2fb55e20ca0cc9ccffd5372"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7278fb4de2fb55e20ca0cc9ccffd5372">&#9670;&nbsp;</a></span>desktop_orientation_store</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaPluginRdpsetGrid::desktop_orientation_store</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00104">104</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a7390f86f6f634e4571db112662182a5b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7390f86f6f634e4571db112662182a5b">&#9670;&nbsp;</a></span>desktop_scale_factor_spin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::desktop_scale_factor_spin</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00099">99</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="ad64fd1c5a1230a98afaff86ece884ff3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad64fd1c5a1230a98afaff86ece884ff3">&#9670;&nbsp;</a></span>device_scale_factor_combo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::device_scale_factor_combo</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00102">102</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a2e5ba950872f1a5db42a7b077cb02860"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2e5ba950872f1a5db42a7b077cb02860">&#9670;&nbsp;</a></span>device_scale_factor_store</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaPluginRdpsetGrid::device_scale_factor_store</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00101">101</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="aadd548c398b9094ea862f189d0f088c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aadd548c398b9094ea862f189d0f088c6">&#9670;&nbsp;</a></span>fontsmoothing_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::fontsmoothing_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00094">94</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="adf5582328d395582e4c364d64c3561a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf5582328d395582e4c364d64c3561a3">&#9670;&nbsp;</a></span>grid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkGrid _RemminaPluginRdpsetGrid::grid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00080">80</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a99ba668180c8cf5e5bfc2d899aee73ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99ba668180c8cf5e5bfc2d899aee73ec">&#9670;&nbsp;</a></span>keyboard_layout_combo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::keyboard_layout_combo</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00083">83</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a785392cdbf938812c96ce67ec87d55c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a785392cdbf938812c96ce67ec87d55c5">&#9670;&nbsp;</a></span>keyboard_layout_label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::keyboard_layout_label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00082">82</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="aefce226217c7ca11de97f9511ae8150f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aefce226217c7ca11de97f9511ae8150f">&#9670;&nbsp;</a></span>keyboard_layout_store</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaPluginRdpsetGrid::keyboard_layout_store</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00084">84</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a5ed6dc93d2f43db961c3c0a3a92f2d4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ed6dc93d2f43db961c3c0a3a92f2d4d">&#9670;&nbsp;</a></span>menuanimation_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::menuanimation_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00090">90</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a06aa388c5b2a6d50d921b169b3723b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a06aa388c5b2a6d50d921b169b3723b">&#9670;&nbsp;</a></span>quality_combo</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::quality_combo</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00086">86</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a136e2daf6819eb2b3d83d20dab6f6621"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a136e2daf6819eb2b3d83d20dab6f6621">&#9670;&nbsp;</a></span>quality_store</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaPluginRdpsetGrid::quality_store</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00087">87</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a220634fcc8fcda079d8443b4898093af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a220634fcc8fcda079d8443b4898093af">&#9670;&nbsp;</a></span>quality_values</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPluginRdpsetGrid::quality_values[10]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00107">107</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5744e97f282983eabf61572022702bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5744e97f282983eabf61572022702bf">&#9670;&nbsp;</a></span>theme_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::theme_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00091">91</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="aff981af8772341c9c7adc7515bec3970"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aff981af8772341c9c7adc7515bec3970">&#9670;&nbsp;</a></span>use_client_keymap_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::use_client_keymap_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00096">96</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="aedf291b1b5cf61eb25731605e42fc319"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedf291b1b5cf61eb25731605e42fc319">&#9670;&nbsp;</a></span>wallpaper_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::wallpaper_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00088">88</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<a id="a04a3bee67aa51808a69ded75e643e4c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a04a3bee67aa51808a69ded75e643e4c0">&#9670;&nbsp;</a></span>windowdrag_check</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginRdpsetGrid::windowdrag_check</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00089">89</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_rdpset_grid.html">_RemminaPluginRdpsetGrid</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_rdpset_grid.js b/docs/struct___remmina_plugin_rdpset_grid.js
new file mode 100644
index 000000000..c16932b25
--- /dev/null
+++ b/docs/struct___remmina_plugin_rdpset_grid.js
@@ -0,0 +1,24 @@
+var struct___remmina_plugin_rdpset_grid =
+[
+ [ "composition_check", "struct___remmina_plugin_rdpset_grid.html#aaddc109b8404a5bbca0c8b0810ae922e", null ],
+ [ "cursorblinking_check", "struct___remmina_plugin_rdpset_grid.html#a515323687d10da1af50cee93ea2c9b93", null ],
+ [ "cursorshadow_check", "struct___remmina_plugin_rdpset_grid.html#ade8c5db180127c00e8413ec0c110da29", null ],
+ [ "desktop_orientation_combo", "struct___remmina_plugin_rdpset_grid.html#a2614c8e9f649cde3e0184228cb227cf4", null ],
+ [ "desktop_orientation_store", "struct___remmina_plugin_rdpset_grid.html#a7278fb4de2fb55e20ca0cc9ccffd5372", null ],
+ [ "desktop_scale_factor_spin", "struct___remmina_plugin_rdpset_grid.html#a7390f86f6f634e4571db112662182a5b", null ],
+ [ "device_scale_factor_combo", "struct___remmina_plugin_rdpset_grid.html#ad64fd1c5a1230a98afaff86ece884ff3", null ],
+ [ "device_scale_factor_store", "struct___remmina_plugin_rdpset_grid.html#a2e5ba950872f1a5db42a7b077cb02860", null ],
+ [ "fontsmoothing_check", "struct___remmina_plugin_rdpset_grid.html#aadd548c398b9094ea862f189d0f088c6", null ],
+ [ "grid", "struct___remmina_plugin_rdpset_grid.html#adf5582328d395582e4c364d64c3561a3", null ],
+ [ "keyboard_layout_combo", "struct___remmina_plugin_rdpset_grid.html#a99ba668180c8cf5e5bfc2d899aee73ec", null ],
+ [ "keyboard_layout_label", "struct___remmina_plugin_rdpset_grid.html#a785392cdbf938812c96ce67ec87d55c5", null ],
+ [ "keyboard_layout_store", "struct___remmina_plugin_rdpset_grid.html#aefce226217c7ca11de97f9511ae8150f", null ],
+ [ "menuanimation_check", "struct___remmina_plugin_rdpset_grid.html#a5ed6dc93d2f43db961c3c0a3a92f2d4d", null ],
+ [ "quality_combo", "struct___remmina_plugin_rdpset_grid.html#a9a06aa388c5b2a6d50d921b169b3723b", null ],
+ [ "quality_store", "struct___remmina_plugin_rdpset_grid.html#a136e2daf6819eb2b3d83d20dab6f6621", null ],
+ [ "quality_values", "struct___remmina_plugin_rdpset_grid.html#a220634fcc8fcda079d8443b4898093af", null ],
+ [ "theme_check", "struct___remmina_plugin_rdpset_grid.html#ae5744e97f282983eabf61572022702bf", null ],
+ [ "use_client_keymap_check", "struct___remmina_plugin_rdpset_grid.html#aff981af8772341c9c7adc7515bec3970", null ],
+ [ "wallpaper_check", "struct___remmina_plugin_rdpset_grid.html#aedf291b1b5cf61eb25731605e42fc319", null ],
+ [ "windowdrag_check", "struct___remmina_plugin_rdpset_grid.html#a04a3bee67aa51808a69ded75e643e4c0", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_rdpset_grid_class.html b/docs/struct___remmina_plugin_rdpset_grid_class.html
new file mode 100644
index 000000000..696fddd14
--- /dev/null
+++ b/docs/struct___remmina_plugin_rdpset_grid_class.html
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginRdpsetGridClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_rdpset_grid_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginRdpsetGridClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3ebf87a7ad92e0d8877f222bb9c4f0c9"><td class="memItemLeft" align="right" valign="top">GtkGridClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9">parent_class</a></td></tr>
+<tr class="separator:a3ebf87a7ad92e0d8877f222bb9c4f0c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00110">110</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a3ebf87a7ad92e0d8877f222bb9c4f0c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ebf87a7ad92e0d8877f222bb9c4f0c9">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkGridClass _RemminaPluginRdpsetGridClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__settings_8c_source.html#l00111">111</a> of file <a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__settings_8c_source.html">rdp_settings.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_rdpset_grid_class.html">_RemminaPluginRdpsetGridClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_rdpset_grid_class.js b/docs/struct___remmina_plugin_rdpset_grid_class.js
new file mode 100644
index 000000000..3bed88b6b
--- /dev/null
+++ b/docs/struct___remmina_plugin_rdpset_grid_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_plugin_rdpset_grid_class =
+[
+ [ "parent_class", "struct___remmina_plugin_rdpset_grid_class.html#a3ebf87a7ad92e0d8877f222bb9c4f0c9", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_screenshot_data.html b/docs/struct___remmina_plugin_screenshot_data.html
new file mode 100644
index 000000000..6e752b55b
--- /dev/null
+++ b/docs/struct___remmina_plugin_screenshot_data.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginScreenshotData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_screenshot_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginScreenshotData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="types_8h_source.html">types.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a757f692624e3e110eaa5bf0c05ac2a6c"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a></td></tr>
+<tr class="separator:a757f692624e3e110eaa5bf0c05ac2a6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc352444c31929a1ef7aee2a0e37827d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a></td></tr>
+<tr class="separator:acc352444c31929a1ef7aee2a0e37827d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0f78eb9b36ba248c2e368684903ae44"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">bytesPerPixel</a></td></tr>
+<tr class="separator:aa0f78eb9b36ba248c2e368684903ae44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5d115d8f9fc675f2419d38cdd424ce6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">width</a></td></tr>
+<tr class="separator:ab5d115d8f9fc675f2419d38cdd424ce6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9274a9d62e527ca25683af512505242e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">height</a></td></tr>
+<tr class="separator:a9274a9d62e527ca25683af512505242e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00064">64</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="acc352444c31929a1ef7aee2a0e37827d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc352444c31929a1ef7aee2a0e37827d">&#9670;&nbsp;</a></span>bitsPerPixel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int _RemminaPluginScreenshotData::bitsPerPixel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00066">66</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a757f692624e3e110eaa5bf0c05ac2a6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a757f692624e3e110eaa5bf0c05ac2a6c">&#9670;&nbsp;</a></span>buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* _RemminaPluginScreenshotData::buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00065">65</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="aa0f78eb9b36ba248c2e368684903ae44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa0f78eb9b36ba248c2e368684903ae44">&#9670;&nbsp;</a></span>bytesPerPixel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int _RemminaPluginScreenshotData::bytesPerPixel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00067">67</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a9274a9d62e527ca25683af512505242e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9274a9d62e527ca25683af512505242e">&#9670;&nbsp;</a></span>height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int _RemminaPluginScreenshotData::height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00069">69</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="ab5d115d8f9fc675f2419d38cdd424ce6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5d115d8f9fc675f2419d38cdd424ce6">&#9670;&nbsp;</a></span>width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int _RemminaPluginScreenshotData::width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00068">68</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="types_8h_source.html">types.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_screenshot_data.js b/docs/struct___remmina_plugin_screenshot_data.js
new file mode 100644
index 000000000..81e1a3fa9
--- /dev/null
+++ b/docs/struct___remmina_plugin_screenshot_data.js
@@ -0,0 +1,8 @@
+var struct___remmina_plugin_screenshot_data =
+[
+ [ "bitsPerPixel", "struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d", null ],
+ [ "buffer", "struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c", null ],
+ [ "bytesPerPixel", "struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44", null ],
+ [ "height", "struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e", null ],
+ [ "width", "struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_service.html b/docs/struct___remmina_plugin_service.html
new file mode 100644
index 000000000..9c178c06a
--- /dev/null
+++ b/docs/struct___remmina_plugin_service.html
@@ -0,0 +1,1394 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginService Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_service.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginService Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a529cc64f67b16f13f0445add690a8df2"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a> )(<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin)</td></tr>
+<tr class="separator:a529cc64f67b16f13f0445add690a8df2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf255b7ceaec6a51fc9269cf824a02ce"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:adf255b7ceaec6a51fc9269cf824a02ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abaf7f57e2336f6e5c257e9c30fedc047"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint width)</td></tr>
+<tr class="separator:abaf7f57e2336f6e5c257e9c30fedc047"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa159850f20499e5bc1067f533d2fa820"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa159850f20499e5bc1067f533d2fa820"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a258d391bcfff1409d27bee0743aec6c1"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint height)</td></tr>
+<tr class="separator:a258d391bcfff1409d27bee0743aec6c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae97f4052c4bbda628682ae071ada27ed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae97f4052c4bbda628682ae071ada27ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8dd2494f449abd9b0c532e69a7aa4057"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057">protocol_plugin_get_expand</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8dd2494f449abd9b0c532e69a7aa4057"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4558dbff70064da3de58a6d684611fad"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad">protocol_plugin_set_expand</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean expand)</td></tr>
+<tr class="separator:a4558dbff70064da3de58a6d684611fad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfb79da3d96ca4aa219eae9c73b0b53f"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">protocol_plugin_has_error</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:abfb79da3d96ca4aa219eae9c73b0b53f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ac875d202f1ccd0ae85bb60ee3222c1"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *fmt,...)</td></tr>
+<tr class="separator:a7ac875d202f1ccd0ae85bb60ee3222c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eac7cd317ef677917c2fa7b1859a189"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189">protocol_plugin_is_closed</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4eac7cd317ef677917c2fa7b1859a189"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1409dcc143ddc35de86b792df095cfc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1409dcc143ddc35de86b792df095cfc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d39a5300472a230a65d44ac16391186"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186">protocol_plugin_emit_signal</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *signal_name)</td></tr>
+<tr class="separator:a4d39a5300472a230a65d44ac16391186"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3fc04c8c7b20c35122e2786d9e8fc34"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkWidget *widget)</td></tr>
+<tr class="separator:ac3fc04c8c7b20c35122e2786d9e8fc34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae95121f8f944c058d4f0683073f79183"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus)</td></tr>
+<tr class="separator:ae95121f8f944c058d4f0683073f79183"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0f29c76e2ec9ea145faab2313e94749"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749">protocol_plugin_start_reverse_tunnel</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint local_port)</td></tr>
+<tr class="separator:ad0f29c76e2ec9ea145faab2313e94749"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1205c4396dc54b38e572f8e01a5c560d"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d">protocol_plugin_start_xport_tunnel</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func)</td></tr>
+<tr class="separator:a1205c4396dc54b38e572f8e01a5c560d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a832a6822f6aa011f476300d14e738d72"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72">protocol_plugin_set_display</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint display)</td></tr>
+<tr class="separator:a832a6822f6aa011f476300d14e738d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab58b7bf5f91c5f60349a8242e6322f7f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab58b7bf5f91c5f60349a8242e6322f7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab212bed4baf8cba148fadb5773148ad6"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab212bed4baf8cba148fadb5773148ad6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaadab3f5fde957f5faa7ee6347bb1c6d"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">protocol_plugin_update_align</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaadab3f5fde957f5faa7ee6347bb1c6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa129753441dbfb630cbdb92e447f1d1e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e">protocol_plugin_unlock_dynres</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aa129753441dbfb630cbdb92e447f1d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a734f491f20072acdcbebb41e36bafe2f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">protocol_plugin_desktop_resize</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a734f491f20072acdcbebb41e36bafe2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b4cfe0a97a34260e58784feef693704"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</td></tr>
+<tr class="separator:a9b4cfe0a97a34260e58784feef693704"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaf95501d1d2ce27589cfdf69511009c"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c">protocol_plugin_init_certificate</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</td></tr>
+<tr class="separator:aeaf95501d1d2ce27589cfdf69511009c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af45af14b2b083a7093f36b8cafda1cee"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee">protocol_plugin_changed_certificate</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</td></tr>
+<tr class="separator:af45af14b2b083a7093f36b8cafda1cee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac892dd297fae87868752a1f86e07937d"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac892dd297fae87868752a1f86e07937d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad98eaa3efc0214bc701dc66b5730e174"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad98eaa3efc0214bc701dc66b5730e174"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa37f5061689c3663087a19f598e550b"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b">protocol_plugin_init_get_domain</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaa37f5061689c3663087a19f598e550b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2b857b2de1af3621f543b810f68b17b"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af2b857b2de1af3621f543b810f68b17b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54c773d5581087b272a9377893b92999"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999">protocol_plugin_init_authx509</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a54c773d5581087b272a9377893b92999"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e481e56c9970b741a109c0af04c650d"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d">protocol_plugin_init_get_cacert</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a9e481e56c9970b741a109c0af04c650d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d1c34496a6def21e5ad7d871cd581b5"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5">protocol_plugin_init_get_cacrl</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8d1c34496a6def21e5ad7d871cd581b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83e35d80f04cb3d6a8cc883f6a089a24"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24">protocol_plugin_init_get_clientcert</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a83e35d80f04cb3d6a8cc883f6a089a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c5de526e0adaee6df2654987d92a834"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834">protocol_plugin_init_get_clientkey</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7c5de526e0adaee6df2654987d92a834"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac432221a82ead6babe045cbf18061a0b"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">protocol_plugin_init_save_cred</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac432221a82ead6babe045cbf18061a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a2ce8e15512459b816ce22cfe5c0550"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550">protocol_plugin_init_show_listen</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint port)</td></tr>
+<tr class="separator:a2a2ce8e15512459b816ce22cfe5c0550"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63683e6046384d902a573e150801e0d3"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3">protocol_plugin_init_show_retry</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a63683e6046384d902a573e150801e0d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56d9c128a36c1713ddb2dc88033ae7ea"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea">protocol_plugin_init_show</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a56d9c128a36c1713ddb2dc88033ae7ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8dab22a850ab394e261bd8d013dc5a3"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3">protocol_plugin_init_hide</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ac8dab22a850ab394e261bd8d013dc5a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07b9812071a528428d200e2ddc295f8e"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">protocol_plugin_ssh_exec</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean wait, const gchar *fmt,...)</td></tr>
+<tr class="separator:a07b9812071a528428d200e2ddc295f8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8bbe7ce317cb9e97da8bf0e34459030"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030">protocol_plugin_chat_open</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *name, void(*on_send)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text), void(*on_destroy)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp))</td></tr>
+<tr class="separator:ab8bbe7ce317cb9e97da8bf0e34459030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83f3c05d16949a06cdddb5c7432b5053"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053">protocol_plugin_chat_close</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a83f3c05d16949a06cdddb5c7432b5053"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a881a79477d6e122c0aed7d5528ab6b9a"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a">protocol_plugin_chat_receive</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)</td></tr>
+<tr class="separator:a881a79477d6e122c0aed7d5528ab6b9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d6704aa58ecc18ecc178ea418addd87"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a> )(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</td></tr>
+<tr class="separator:a2d6704aa58ecc18ecc178ea418addd87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2919b48fd95b772b590b430a03ecb98f"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f">file_get_user_datadir</a> )(void)</td></tr>
+<tr class="separator:a2919b48fd95b772b590b430a03ecb98f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0c0e810cad311a80cb73746bc299895"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">file_new</a> )(void)</td></tr>
+<tr class="separator:ad0c0e810cad311a80cb73746bc299895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa413711beeac32a453068c0faf75f164"><td class="memItemLeft" align="right" valign="top">const gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:aa413711beeac32a453068c0faf75f164"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4880fb57479708bc1cb47bf6b4dcabc3"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, const gchar *value)</td></tr>
+<tr class="separator:a4880fb57479708bc1cb47bf6b4dcabc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a673ff4320377c3b440dfd24a796c69fc"><td class="memItemLeft" align="right" valign="top">const gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:a673ff4320377c3b440dfd24a796c69fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3d1b8239f999ebc0a3b8f5e8754c66d"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d">file_get_secret</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td></tr>
+<tr class="separator:ae3d1b8239f999ebc0a3b8f5e8754c66d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4da50fa364ddf1fcf22def341f61a7cb"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint value)</td></tr>
+<tr class="separator:a4da50fa364ddf1fcf22def341f61a7cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c7eab256e1b1fdf84be44e28cddc3de"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint default_value)</td></tr>
+<tr class="separator:a0c7eab256e1b1fdf84be44e28cddc3de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cf031e840ea76da2d17cfcd8d20c4e0"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0">file_unsave_passwords</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td></tr>
+<tr class="separator:a2cf031e840ea76da2d17cfcd8d20c4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a387f974b25c4164811f661128e200c8c"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c">pref_set_value</a> )(const gchar *key, const gchar *value)</td></tr>
+<tr class="separator:a387f974b25c4164811f661128e200c8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a860dc4e2fc1479ec1cbdcc53236df9e9"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a> )(const gchar *key)</td></tr>
+<tr class="separator:a860dc4e2fc1479ec1cbdcc53236df9e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb85b1a32dbf23822400111c30d45290"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290">pref_get_scale_quality</a> )(void)</td></tr>
+<tr class="separator:abb85b1a32dbf23822400111c30d45290"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae431bee04c6b084082394687909c83e5"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5">pref_get_sshtunnel_port</a> )(void)</td></tr>
+<tr class="separator:ae431bee04c6b084082394687909c83e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac929847020ee699a60771167dae3936b"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b">pref_get_ssh_loglevel</a> )(void)</td></tr>
+<tr class="separator:ac929847020ee699a60771167dae3936b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956bb502b45a484a22281ca96708beb2"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2">pref_get_ssh_parseconfig</a> )(void)</td></tr>
+<tr class="separator:a956bb502b45a484a22281ca96708beb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0884b2124ba4ea3f747f00bbe91135d2"><td class="memItemLeft" align="right" valign="top">guint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2">pref_keymap_get_keyval</a> )(const gchar *keymap, guint keyval)</td></tr>
+<tr class="separator:a0884b2124ba4ea3f747f00bbe91135d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d7133e80857fc6cbed99b8c42ff0081"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a> )(const gchar *fmt,...)</td></tr>
+<tr class="separator:a6d7133e80857fc6cbed99b8c42ff0081"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b8a0b0bec032f01906ab197678204de"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de">log_print</a> )(const gchar *text)</td></tr>
+<tr class="separator:a2b8a0b0bec032f01906ab197678204de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb9ee3ae6a1b3e4b2db9f117a1a9930d"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d">log_printf</a> )(const gchar *fmt,...)</td></tr>
+<tr class="separator:aeb9ee3ae6a1b3e4b2db9f117a1a9930d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7120dead43af37f0128ef273aaa99524"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524">ui_register</a> )(GtkWidget *widget)</td></tr>
+<tr class="separator:a7120dead43af37f0128ef273aaa99524"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cc8cc627e22e71e257afa9c74d373ef"><td class="memItemLeft" align="right" valign="top">GtkWidget *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</td></tr>
+<tr class="separator:a8cc8cc627e22e71e257afa9c74d373ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fdfd3063906f49157225f536537bb0f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a> )(const gchar *server, gint defaultport, gchar **host, gint *port)</td></tr>
+<tr class="separator:a6fdfd3063906f49157225f536537bb0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a997a36825f2338b8e06bcd59becef61b"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">is_main_thread</a> )(void)</td></tr>
+<tr class="separator:a997a36825f2338b8e06bcd59becef61b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae990775845392eace305018b4cd87662"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">gtksocket_available</a> )(void)</td></tr>
+<tr class="separator:ae990775845392eace305018b4cd87662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe3c32a421cd5dcc735b99318ff8844a"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:afe3c32a421cd5dcc735b99318ff8844a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b75137f9d7739c0d7881ee16e2aabfa"><td class="memItemLeft" align="right" valign="top">gint(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2b75137f9d7739c0d7881ee16e2aabfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00147">147</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6d7133e80857fc6cbed99b8c42ff0081"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d7133e80857fc6cbed99b8c42ff0081">&#9670;&nbsp;</a></span>debug</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::debug) (const gchar *fmt,...)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00214">214</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0c7eab256e1b1fdf84be44e28cddc3de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0c7eab256e1b1fdf84be44e28cddc3de">&#9670;&nbsp;</a></span>file_get_int</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::file_get_int) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint default_value)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00203">203</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa413711beeac32a453068c0faf75f164"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa413711beeac32a453068c0faf75f164">&#9670;&nbsp;</a></span>file_get_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar*(* _RemminaPluginService::file_get_path) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00198">198</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae3d1b8239f999ebc0a3b8f5e8754c66d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3d1b8239f999ebc0a3b8f5e8754c66d">&#9670;&nbsp;</a></span>file_get_secret</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::file_get_secret) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00201">201</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a673ff4320377c3b440dfd24a796c69fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a673ff4320377c3b440dfd24a796c69fc">&#9670;&nbsp;</a></span>file_get_string</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar*(* _RemminaPluginService::file_get_string) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00200">200</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2919b48fd95b772b590b430a03ecb98f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2919b48fd95b772b590b430a03ecb98f">&#9670;&nbsp;</a></span>file_get_user_datadir</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::file_get_user_datadir) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00195">195</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad0c0e810cad311a80cb73746bc299895"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0c0e810cad311a80cb73746bc299895">&#9670;&nbsp;</a></span>file_new</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>*(* _RemminaPluginService::file_new) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00197">197</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4da50fa364ddf1fcf22def341f61a7cb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4da50fa364ddf1fcf22def341f61a7cb">&#9670;&nbsp;</a></span>file_set_int</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::file_set_int) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, gint value)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00202">202</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4880fb57479708bc1cb47bf6b4dcabc3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4880fb57479708bc1cb47bf6b4dcabc3">&#9670;&nbsp;</a></span>file_set_string</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::file_set_string) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *setting, const gchar *value)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00199">199</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2cf031e840ea76da2d17cfcd8d20c4e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2cf031e840ea76da2d17cfcd8d20c4e0">&#9670;&nbsp;</a></span>file_unsave_passwords</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::file_unsave_passwords) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00204">204</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2b75137f9d7739c0d7881ee16e2aabfa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b75137f9d7739c0d7881ee16e2aabfa">&#9670;&nbsp;</a></span>get_profile_remote_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::get_profile_remote_height) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00225">225</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="afe3c32a421cd5dcc735b99318ff8844a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afe3c32a421cd5dcc735b99318ff8844a">&#9670;&nbsp;</a></span>get_profile_remote_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::get_profile_remote_width) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00224">224</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a6fdfd3063906f49157225f536537bb0f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6fdfd3063906f49157225f536537bb0f">&#9670;&nbsp;</a></span>get_server_port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::get_server_port) (const gchar *server, gint defaultport, gchar **host, gint *port)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00221">221</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae990775845392eace305018b4cd87662"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae990775845392eace305018b4cd87662">&#9670;&nbsp;</a></span>gtksocket_available</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::gtksocket_available) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00223">223</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a997a36825f2338b8e06bcd59becef61b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a997a36825f2338b8e06bcd59becef61b">&#9670;&nbsp;</a></span>is_main_thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::is_main_thread) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00222">222</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2b8a0b0bec032f01906ab197678204de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b8a0b0bec032f01906ab197678204de">&#9670;&nbsp;</a></span>log_print</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::log_print) (const gchar *text)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00215">215</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aeb9ee3ae6a1b3e4b2db9f117a1a9930d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb9ee3ae6a1b3e4b2db9f117a1a9930d">&#9670;&nbsp;</a></span>log_printf</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::log_printf) (const gchar *fmt,...)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00216">216</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8cc8cc627e22e71e257afa9c74d373ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cc8cc627e22e71e257afa9c74d373ef">&#9670;&nbsp;</a></span>open_connection</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget*(* _RemminaPluginService::open_connection) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00220">220</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="abb85b1a32dbf23822400111c30d45290"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb85b1a32dbf23822400111c30d45290">&#9670;&nbsp;</a></span>pref_get_scale_quality</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::pref_get_scale_quality) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00208">208</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac929847020ee699a60771167dae3936b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac929847020ee699a60771167dae3936b">&#9670;&nbsp;</a></span>pref_get_ssh_loglevel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::pref_get_ssh_loglevel) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00210">210</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a956bb502b45a484a22281ca96708beb2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a956bb502b45a484a22281ca96708beb2">&#9670;&nbsp;</a></span>pref_get_ssh_parseconfig</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::pref_get_ssh_parseconfig) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00211">211</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae431bee04c6b084082394687909c83e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae431bee04c6b084082394687909c83e5">&#9670;&nbsp;</a></span>pref_get_sshtunnel_port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::pref_get_sshtunnel_port) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00209">209</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a860dc4e2fc1479ec1cbdcc53236df9e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a860dc4e2fc1479ec1cbdcc53236df9e9">&#9670;&nbsp;</a></span>pref_get_value</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::pref_get_value) (const gchar *key)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00207">207</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0884b2124ba4ea3f747f00bbe91135d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0884b2124ba4ea3f747f00bbe91135d2">&#9670;&nbsp;</a></span>pref_keymap_get_keyval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint(* _RemminaPluginService::pref_keymap_get_keyval) (const gchar *keymap, guint keyval)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00212">212</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a387f974b25c4164811f661128e200c8c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a387f974b25c4164811f661128e200c8c">&#9670;&nbsp;</a></span>pref_set_value</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::pref_set_value) (const gchar *key, const gchar *value)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00206">206</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af45af14b2b083a7093f36b8cafda1cee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af45af14b2b083a7093f36b8cafda1cee">&#9670;&nbsp;</a></span>protocol_plugin_changed_certificate</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_changed_certificate) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *new_fingerprint, const gchar *old_fingerprint)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00174">174</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a83f3c05d16949a06cdddb5c7432b5053"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83f3c05d16949a06cdddb5c7432b5053">&#9670;&nbsp;</a></span>protocol_plugin_chat_close</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_chat_close) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00191">191</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab8bbe7ce317cb9e97da8bf0e34459030"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab8bbe7ce317cb9e97da8bf0e34459030">&#9670;&nbsp;</a></span>protocol_plugin_chat_open</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_chat_open) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *name, void(*on_send)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text), void(*on_destroy)(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00190">190</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a881a79477d6e122c0aed7d5528ab6b9a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a881a79477d6e122c0aed7d5528ab6b9a">&#9670;&nbsp;</a></span>protocol_plugin_chat_receive</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_chat_receive) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00192">192</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a734f491f20072acdcbebb41e36bafe2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a734f491f20072acdcbebb41e36bafe2f">&#9670;&nbsp;</a></span>protocol_plugin_desktop_resize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_desktop_resize) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00171">171</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4d39a5300472a230a65d44ac16391186"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d39a5300472a230a65d44ac16391186">&#9670;&nbsp;</a></span>protocol_plugin_emit_signal</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_emit_signal) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *signal_name)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00161">161</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8dd2494f449abd9b0c532e69a7aa4057"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8dd2494f449abd9b0c532e69a7aa4057">&#9670;&nbsp;</a></span>protocol_plugin_get_expand</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_get_expand) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00155">155</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1409dcc143ddc35de86b792df095cfc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1409dcc143ddc35de86b792df095cfc4">&#9670;&nbsp;</a></span>protocol_plugin_get_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>*(* _RemminaPluginService::protocol_plugin_get_file) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00160">160</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa159850f20499e5bc1067f533d2fa820"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa159850f20499e5bc1067f533d2fa820">&#9670;&nbsp;</a></span>protocol_plugin_get_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_get_height) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00152">152</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="adf255b7ceaec6a51fc9269cf824a02ce"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf255b7ceaec6a51fc9269cf824a02ce">&#9670;&nbsp;</a></span>protocol_plugin_get_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_get_width) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00150">150</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="abfb79da3d96ca4aa219eae9c73b0b53f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abfb79da3d96ca4aa219eae9c73b0b53f">&#9670;&nbsp;</a></span>protocol_plugin_has_error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_has_error) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00157">157</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9b4cfe0a97a34260e58784feef693704"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9b4cfe0a97a34260e58784feef693704">&#9670;&nbsp;</a></span>protocol_plugin_init_auth</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_init_auth) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00172">172</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a54c773d5581087b272a9377893b92999"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a54c773d5581087b272a9377893b92999">&#9670;&nbsp;</a></span>protocol_plugin_init_authx509</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_init_authx509) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00179">179</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aeaf95501d1d2ce27589cfdf69511009c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeaf95501d1d2ce27589cfdf69511009c">&#9670;&nbsp;</a></span>protocol_plugin_init_certificate</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint(* _RemminaPluginService::protocol_plugin_init_certificate) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *subject, const gchar *issuer, const gchar *fingerprint)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00173">173</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9e481e56c9970b741a109c0af04c650d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e481e56c9970b741a109c0af04c650d">&#9670;&nbsp;</a></span>protocol_plugin_init_get_cacert</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_cacert) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00180">180</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8d1c34496a6def21e5ad7d871cd581b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d1c34496a6def21e5ad7d871cd581b5">&#9670;&nbsp;</a></span>protocol_plugin_init_get_cacrl</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_cacrl) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00181">181</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a83e35d80f04cb3d6a8cc883f6a089a24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83e35d80f04cb3d6a8cc883f6a089a24">&#9670;&nbsp;</a></span>protocol_plugin_init_get_clientcert</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_clientcert) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00182">182</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7c5de526e0adaee6df2654987d92a834"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c5de526e0adaee6df2654987d92a834">&#9670;&nbsp;</a></span>protocol_plugin_init_get_clientkey</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_clientkey) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00183">183</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa37f5061689c3663087a19f598e550b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa37f5061689c3663087a19f598e550b">&#9670;&nbsp;</a></span>protocol_plugin_init_get_domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_domain) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00177">177</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad98eaa3efc0214bc701dc66b5730e174"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad98eaa3efc0214bc701dc66b5730e174">&#9670;&nbsp;</a></span>protocol_plugin_init_get_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_password) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00176">176</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af2b857b2de1af3621f543b810f68b17b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af2b857b2de1af3621f543b810f68b17b">&#9670;&nbsp;</a></span>protocol_plugin_init_get_savepassword</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_init_get_savepassword) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00178">178</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac892dd297fae87868752a1f86e07937d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac892dd297fae87868752a1f86e07937d">&#9670;&nbsp;</a></span>protocol_plugin_init_get_username</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_init_get_username) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00175">175</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac8dab22a850ab394e261bd8d013dc5a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8dab22a850ab394e261bd8d013dc5a3">&#9670;&nbsp;</a></span>protocol_plugin_init_hide</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_init_hide) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00188">188</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac432221a82ead6babe045cbf18061a0b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac432221a82ead6babe045cbf18061a0b">&#9670;&nbsp;</a></span>protocol_plugin_init_save_cred</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_init_save_cred) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00184">184</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a56d9c128a36c1713ddb2dc88033ae7ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56d9c128a36c1713ddb2dc88033ae7ea">&#9670;&nbsp;</a></span>protocol_plugin_init_show</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_init_show) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00187">187</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2a2ce8e15512459b816ce22cfe5c0550"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a2ce8e15512459b816ce22cfe5c0550">&#9670;&nbsp;</a></span>protocol_plugin_init_show_listen</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_init_show_listen) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint port)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00185">185</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a63683e6046384d902a573e150801e0d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63683e6046384d902a573e150801e0d3">&#9670;&nbsp;</a></span>protocol_plugin_init_show_retry</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_init_show_retry) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00186">186</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4eac7cd317ef677917c2fa7b1859a189"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4eac7cd317ef677917c2fa7b1859a189">&#9670;&nbsp;</a></span>protocol_plugin_is_closed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_is_closed) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00159">159</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac3fc04c8c7b20c35122e2786d9e8fc34"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac3fc04c8c7b20c35122e2786d9e8fc34">&#9670;&nbsp;</a></span>protocol_plugin_register_hostkey</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_register_hostkey) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, GtkWidget *widget)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00162">162</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2d6704aa58ecc18ecc178ea418addd87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d6704aa58ecc18ecc178ea418addd87">&#9670;&nbsp;</a></span>protocol_plugin_send_keys_signals</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_send_keys_signals) (GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00193">193</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a832a6822f6aa011f476300d14e738d72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a832a6822f6aa011f476300d14e738d72">&#9670;&nbsp;</a></span>protocol_plugin_set_display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_set_display) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint display)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00166">166</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7ac875d202f1ccd0ae85bb60ee3222c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ac875d202f1ccd0ae85bb60ee3222c1">&#9670;&nbsp;</a></span>protocol_plugin_set_error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_set_error) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *fmt,...)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00158">158</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4558dbff70064da3de58a6d684611fad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4558dbff70064da3de58a6d684611fad">&#9670;&nbsp;</a></span>protocol_plugin_set_expand</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_set_expand) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean expand)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00156">156</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a258d391bcfff1409d27bee0743aec6c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a258d391bcfff1409d27bee0743aec6c1">&#9670;&nbsp;</a></span>protocol_plugin_set_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_set_height) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint height)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00153">153</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="abaf7f57e2336f6e5c257e9c30fedc047"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abaf7f57e2336f6e5c257e9c30fedc047">&#9670;&nbsp;</a></span>protocol_plugin_set_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_set_width) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint width)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00151">151</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab58b7bf5f91c5f60349a8242e6322f7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab58b7bf5f91c5f60349a8242e6322f7f">&#9670;&nbsp;</a></span>protocol_plugin_signal_connection_closed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_signal_connection_closed) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00167">167</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab212bed4baf8cba148fadb5773148ad6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab212bed4baf8cba148fadb5773148ad6">&#9670;&nbsp;</a></span>protocol_plugin_signal_connection_opened</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_signal_connection_opened) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00168">168</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a07b9812071a528428d200e2ddc295f8e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07b9812071a528428d200e2ddc295f8e">&#9670;&nbsp;</a></span>protocol_plugin_ssh_exec</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_ssh_exec) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean wait, const gchar *fmt,...)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00189">189</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae95121f8f944c058d4f0683073f79183"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae95121f8f944c058d4f0683073f79183">&#9670;&nbsp;</a></span>protocol_plugin_start_direct_tunnel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaPluginService::protocol_plugin_start_direct_tunnel) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint default_port, gboolean port_plus)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00163">163</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad0f29c76e2ec9ea145faab2313e94749"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad0f29c76e2ec9ea145faab2313e94749">&#9670;&nbsp;</a></span>protocol_plugin_start_reverse_tunnel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_start_reverse_tunnel) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint local_port)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00164">164</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1205c4396dc54b38e572f8e01a5c560d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1205c4396dc54b38e572f8e01a5c560d">&#9670;&nbsp;</a></span>protocol_plugin_start_xport_tunnel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::protocol_plugin_start_xport_tunnel) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a> init_func)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00165">165</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa129753441dbfb630cbdb92e447f1d1e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa129753441dbfb630cbdb92e447f1d1e">&#9670;&nbsp;</a></span>protocol_plugin_unlock_dynres</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_unlock_dynres) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00170">170</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aaadab3f5fde957f5faa7ee6347bb1c6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaadab3f5fde957f5faa7ee6347bb1c6d">&#9670;&nbsp;</a></span>protocol_plugin_update_align</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::protocol_plugin_update_align) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00169">169</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a529cc64f67b16f13f0445add690a8df2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a529cc64f67b16f13f0445add690a8df2">&#9670;&nbsp;</a></span>register_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaPluginService::register_plugin) (<a class="el" href="plugin_8h.html#a55c60503140443d4fec9e84c33dfdd22">RemminaPlugin</a> *plugin)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00148">148</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae97f4052c4bbda628682ae071ada27ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae97f4052c4bbda628682ae071ada27ed">&#9670;&nbsp;</a></span>remmina_protocol_widget_get_current_scale_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>(* _RemminaPluginService::remmina_protocol_widget_get_current_scale_mode) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00154">154</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7120dead43af37f0128ef273aaa99524"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7120dead43af37f0128ef273aaa99524">&#9670;&nbsp;</a></span>ui_register</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaPluginService::ui_register) (GtkWidget *widget)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00218">218</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_service.html">_RemminaPluginService</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_service.js b/docs/struct___remmina_plugin_service.js
new file mode 100644
index 000000000..438e57bfc
--- /dev/null
+++ b/docs/struct___remmina_plugin_service.js
@@ -0,0 +1,74 @@
+var struct___remmina_plugin_service =
+[
+ [ "debug", "struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081", null ],
+ [ "file_get_int", "struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de", null ],
+ [ "file_get_path", "struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164", null ],
+ [ "file_get_secret", "struct___remmina_plugin_service.html#ae3d1b8239f999ebc0a3b8f5e8754c66d", null ],
+ [ "file_get_string", "struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc", null ],
+ [ "file_get_user_datadir", "struct___remmina_plugin_service.html#a2919b48fd95b772b590b430a03ecb98f", null ],
+ [ "file_new", "struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895", null ],
+ [ "file_set_int", "struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb", null ],
+ [ "file_set_string", "struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3", null ],
+ [ "file_unsave_passwords", "struct___remmina_plugin_service.html#a2cf031e840ea76da2d17cfcd8d20c4e0", null ],
+ [ "get_profile_remote_height", "struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa", null ],
+ [ "get_profile_remote_width", "struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a", null ],
+ [ "get_server_port", "struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f", null ],
+ [ "gtksocket_available", "struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662", null ],
+ [ "is_main_thread", "struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b", null ],
+ [ "log_print", "struct___remmina_plugin_service.html#a2b8a0b0bec032f01906ab197678204de", null ],
+ [ "log_printf", "struct___remmina_plugin_service.html#aeb9ee3ae6a1b3e4b2db9f117a1a9930d", null ],
+ [ "open_connection", "struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef", null ],
+ [ "pref_get_scale_quality", "struct___remmina_plugin_service.html#abb85b1a32dbf23822400111c30d45290", null ],
+ [ "pref_get_ssh_loglevel", "struct___remmina_plugin_service.html#ac929847020ee699a60771167dae3936b", null ],
+ [ "pref_get_ssh_parseconfig", "struct___remmina_plugin_service.html#a956bb502b45a484a22281ca96708beb2", null ],
+ [ "pref_get_sshtunnel_port", "struct___remmina_plugin_service.html#ae431bee04c6b084082394687909c83e5", null ],
+ [ "pref_get_value", "struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9", null ],
+ [ "pref_keymap_get_keyval", "struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2", null ],
+ [ "pref_set_value", "struct___remmina_plugin_service.html#a387f974b25c4164811f661128e200c8c", null ],
+ [ "protocol_plugin_changed_certificate", "struct___remmina_plugin_service.html#af45af14b2b083a7093f36b8cafda1cee", null ],
+ [ "protocol_plugin_chat_close", "struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053", null ],
+ [ "protocol_plugin_chat_open", "struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030", null ],
+ [ "protocol_plugin_chat_receive", "struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a", null ],
+ [ "protocol_plugin_desktop_resize", "struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f", null ],
+ [ "protocol_plugin_emit_signal", "struct___remmina_plugin_service.html#a4d39a5300472a230a65d44ac16391186", null ],
+ [ "protocol_plugin_get_expand", "struct___remmina_plugin_service.html#a8dd2494f449abd9b0c532e69a7aa4057", null ],
+ [ "protocol_plugin_get_file", "struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4", null ],
+ [ "protocol_plugin_get_height", "struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820", null ],
+ [ "protocol_plugin_get_width", "struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce", null ],
+ [ "protocol_plugin_has_error", "struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f", null ],
+ [ "protocol_plugin_init_auth", "struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704", null ],
+ [ "protocol_plugin_init_authx509", "struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999", null ],
+ [ "protocol_plugin_init_certificate", "struct___remmina_plugin_service.html#aeaf95501d1d2ce27589cfdf69511009c", null ],
+ [ "protocol_plugin_init_get_cacert", "struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d", null ],
+ [ "protocol_plugin_init_get_cacrl", "struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5", null ],
+ [ "protocol_plugin_init_get_clientcert", "struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24", null ],
+ [ "protocol_plugin_init_get_clientkey", "struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834", null ],
+ [ "protocol_plugin_init_get_domain", "struct___remmina_plugin_service.html#aaa37f5061689c3663087a19f598e550b", null ],
+ [ "protocol_plugin_init_get_password", "struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174", null ],
+ [ "protocol_plugin_init_get_savepassword", "struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b", null ],
+ [ "protocol_plugin_init_get_username", "struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d", null ],
+ [ "protocol_plugin_init_hide", "struct___remmina_plugin_service.html#ac8dab22a850ab394e261bd8d013dc5a3", null ],
+ [ "protocol_plugin_init_save_cred", "struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b", null ],
+ [ "protocol_plugin_init_show", "struct___remmina_plugin_service.html#a56d9c128a36c1713ddb2dc88033ae7ea", null ],
+ [ "protocol_plugin_init_show_listen", "struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550", null ],
+ [ "protocol_plugin_init_show_retry", "struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3", null ],
+ [ "protocol_plugin_is_closed", "struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189", null ],
+ [ "protocol_plugin_register_hostkey", "struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34", null ],
+ [ "protocol_plugin_send_keys_signals", "struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87", null ],
+ [ "protocol_plugin_set_display", "struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72", null ],
+ [ "protocol_plugin_set_error", "struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1", null ],
+ [ "protocol_plugin_set_expand", "struct___remmina_plugin_service.html#a4558dbff70064da3de58a6d684611fad", null ],
+ [ "protocol_plugin_set_height", "struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1", null ],
+ [ "protocol_plugin_set_width", "struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047", null ],
+ [ "protocol_plugin_signal_connection_closed", "struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f", null ],
+ [ "protocol_plugin_signal_connection_opened", "struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6", null ],
+ [ "protocol_plugin_ssh_exec", "struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e", null ],
+ [ "protocol_plugin_start_direct_tunnel", "struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183", null ],
+ [ "protocol_plugin_start_reverse_tunnel", "struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749", null ],
+ [ "protocol_plugin_start_xport_tunnel", "struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d", null ],
+ [ "protocol_plugin_unlock_dynres", "struct___remmina_plugin_service.html#aa129753441dbfb630cbdb92e447f1d1e", null ],
+ [ "protocol_plugin_update_align", "struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d", null ],
+ [ "register_plugin", "struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2", null ],
+ [ "remmina_protocol_widget_get_current_scale_mode", "struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed", null ],
+ [ "ui_register", "struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_sftp_data.html b/docs/struct___remmina_plugin_sftp_data.html
new file mode 100644
index 000000000..8141f6ed8
--- /dev/null
+++ b/docs/struct___remmina_plugin_sftp_data.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginSftpData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_sftp_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginSftpData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aef8517c9af56f33ac9933815930e335f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f">client</a></td></tr>
+<tr class="separator:aef8517c9af56f33ac9933815930e335f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac68cbef0e07b34da2b0dc8e5f022bda5"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5">thread</a></td></tr>
+<tr class="separator:ac68cbef0e07b34da2b0dc8e5f022bda5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa1aca33155a3bee87984568651bc5ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab">sftp</a></td></tr>
+<tr class="separator:afa1aca33155a3bee87984568651bc5ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aef8517c9af56f33ac9933815930e335f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef8517c9af56f33ac9933815930e335f">&#9670;&nbsp;</a></span>client</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>* _RemminaPluginSftpData::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="afa1aca33155a3bee87984568651bc5ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa1aca33155a3bee87984568651bc5ab">&#9670;&nbsp;</a></span>sftp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a>* _RemminaPluginSftpData::sftp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac68cbef0e07b34da2b0dc8e5f022bda5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac68cbef0e07b34da2b0dc8e5f022bda5">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaPluginSftpData::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__plugin_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__sftp__plugin_8c_source.html">remmina_sftp_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_sftp_data.html">_RemminaPluginSftpData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_sftp_data.js b/docs/struct___remmina_plugin_sftp_data.js
new file mode 100644
index 000000000..1638d2f04
--- /dev/null
+++ b/docs/struct___remmina_plugin_sftp_data.js
@@ -0,0 +1,6 @@
+var struct___remmina_plugin_sftp_data =
+[
+ [ "client", "struct___remmina_plugin_sftp_data.html#aef8517c9af56f33ac9933815930e335f", null ],
+ [ "sftp", "struct___remmina_plugin_sftp_data.html#afa1aca33155a3bee87984568651bc5ab", null ],
+ [ "thread", "struct___remmina_plugin_sftp_data.html#ac68cbef0e07b34da2b0dc8e5f022bda5", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_spice_data.html b/docs/struct___remmina_plugin_spice_data.html
new file mode 100644
index 000000000..af9c0dd58
--- /dev/null
+++ b/docs/struct___remmina_plugin_spice_data.html
@@ -0,0 +1,260 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginSpiceData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_spice_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginSpiceData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a1c88ad311d86fb0de1dc441150a7da02"><td class="memItemLeft" align="right" valign="top">SpiceAudio *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02">audio</a></td></tr>
+<tr class="separator:a1c88ad311d86fb0de1dc441150a7da02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f24bd5d68722f7e265c0d61c89257ad"><td class="memItemLeft" align="right" valign="top">SpiceDisplay *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad">display</a></td></tr>
+<tr class="separator:a5f24bd5d68722f7e265c0d61c89257ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71709da583c41e2eb47236fc94e310d6"><td class="memItemLeft" align="right" valign="top">SpiceDisplayChannel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6">display_channel</a></td></tr>
+<tr class="separator:a71709da583c41e2eb47236fc94e310d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1420dc8738b8485e95441823b4157f69"><td class="memItemLeft" align="right" valign="top">SpiceGtkSession *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69">gtk_session</a></td></tr>
+<tr class="separator:a1420dc8738b8485e95441823b4157f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57a077aa61d1eb205cb23db22ffd891f"><td class="memItemLeft" align="right" valign="top">SpiceMainChannel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f">main_channel</a></td></tr>
+<tr class="separator:a57a077aa61d1eb205cb23db22ffd891f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8be20a82752da9a4f7790b3aa8a92633"><td class="memItemLeft" align="right" valign="top">SpiceSession *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633">session</a></td></tr>
+<tr class="separator:a8be20a82752da9a4f7790b3aa8a92633"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a712404956a8e5ca842dd290700250781"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781">file_transfers</a></td></tr>
+<tr class="separator:a712404956a8e5ca842dd290700250781"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9207addf2a7b2fea9bd8b3e7916aa28e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e">file_transfer_dialog</a></td></tr>
+<tr class="separator:a9207addf2a7b2fea9bd8b3e7916aa28e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00053">53</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a1c88ad311d86fb0de1dc441150a7da02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c88ad311d86fb0de1dc441150a7da02">&#9670;&nbsp;</a></span>audio</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceAudio* _RemminaPluginSpiceData::audio</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00054">54</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5f24bd5d68722f7e265c0d61c89257ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f24bd5d68722f7e265c0d61c89257ad">&#9670;&nbsp;</a></span>display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceDisplay* _RemminaPluginSpiceData::display</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00055">55</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a71709da583c41e2eb47236fc94e310d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71709da583c41e2eb47236fc94e310d6">&#9670;&nbsp;</a></span>display_channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceDisplayChannel* _RemminaPluginSpiceData::display_channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00056">56</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9207addf2a7b2fea9bd8b3e7916aa28e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9207addf2a7b2fea9bd8b3e7916aa28e">&#9670;&nbsp;</a></span>file_transfer_dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceData::file_transfer_dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00065">65</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a712404956a8e5ca842dd290700250781"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a712404956a8e5ca842dd290700250781">&#9670;&nbsp;</a></span>file_transfers</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaPluginSpiceData::file_transfers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00064">64</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1420dc8738b8485e95441823b4157f69"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1420dc8738b8485e95441823b4157f69">&#9670;&nbsp;</a></span>gtk_session</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceGtkSession* _RemminaPluginSpiceData::gtk_session</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00057">57</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a57a077aa61d1eb205cb23db22ffd891f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57a077aa61d1eb205cb23db22ffd891f">&#9670;&nbsp;</a></span>main_channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceMainChannel* _RemminaPluginSpiceData::main_channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00058">58</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8be20a82752da9a4f7790b3aa8a92633"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8be20a82752da9a4f7790b3aa8a92633">&#9670;&nbsp;</a></span>session</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SpiceSession* _RemminaPluginSpiceData::session</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin_8h_source.html#l00059">59</a> of file <a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="spice__plugin_8h_source.html">spice_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_spice_data.html">_RemminaPluginSpiceData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_spice_data.js b/docs/struct___remmina_plugin_spice_data.js
new file mode 100644
index 000000000..fbcb74e5d
--- /dev/null
+++ b/docs/struct___remmina_plugin_spice_data.js
@@ -0,0 +1,11 @@
+var struct___remmina_plugin_spice_data =
+[
+ [ "audio", "struct___remmina_plugin_spice_data.html#a1c88ad311d86fb0de1dc441150a7da02", null ],
+ [ "display", "struct___remmina_plugin_spice_data.html#a5f24bd5d68722f7e265c0d61c89257ad", null ],
+ [ "display_channel", "struct___remmina_plugin_spice_data.html#a71709da583c41e2eb47236fc94e310d6", null ],
+ [ "file_transfer_dialog", "struct___remmina_plugin_spice_data.html#a9207addf2a7b2fea9bd8b3e7916aa28e", null ],
+ [ "file_transfers", "struct___remmina_plugin_spice_data.html#a712404956a8e5ca842dd290700250781", null ],
+ [ "gtk_session", "struct___remmina_plugin_spice_data.html#a1420dc8738b8485e95441823b4157f69", null ],
+ [ "main_channel", "struct___remmina_plugin_spice_data.html#a57a077aa61d1eb205cb23db22ffd891f", null ],
+ [ "session", "struct___remmina_plugin_spice_data.html#a8be20a82752da9a4f7790b3aa8a92633", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_spice_xfer_widgets.html b/docs/struct___remmina_plugin_spice_xfer_widgets.html
new file mode 100644
index 000000000..29f7e735c
--- /dev/null
+++ b/docs/struct___remmina_plugin_spice_xfer_widgets.html
@@ -0,0 +1,204 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginSpiceXferWidgets Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_spice_xfer_widgets.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginSpiceXferWidgets Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a05fea9bde521ffcb18f9f8a677a73716"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716">vbox</a></td></tr>
+<tr class="separator:a05fea9bde521ffcb18f9f8a677a73716"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46d74da3885207d20372d13a2f4b181c"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c">hbox</a></td></tr>
+<tr class="separator:a46d74da3885207d20372d13a2f4b181c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad05a8f17fb01787453d6e29dc881cbfe"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe">progress</a></td></tr>
+<tr class="separator:ad05a8f17fb01787453d6e29dc881cbfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ccf00d4d7b46e182c31b7d1f568911a"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a">label</a></td></tr>
+<tr class="separator:a3ccf00d4d7b46e182c31b7d1f568911a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfef2a32ccfa7152eed3b8e65b48bb53"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53">cancel</a></td></tr>
+<tr class="separator:adfef2a32ccfa7152eed3b8e65b48bb53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00045">45</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="adfef2a32ccfa7152eed3b8e65b48bb53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adfef2a32ccfa7152eed3b8e65b48bb53">&#9670;&nbsp;</a></span>cancel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceXferWidgets::cancel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00050">50</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a46d74da3885207d20372d13a2f4b181c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46d74da3885207d20372d13a2f4b181c">&#9670;&nbsp;</a></span>hbox</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceXferWidgets::hbox</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00047">47</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a3ccf00d4d7b46e182c31b7d1f568911a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ccf00d4d7b46e182c31b7d1f568911a">&#9670;&nbsp;</a></span>label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceXferWidgets::label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00049">49</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="ad05a8f17fb01787453d6e29dc881cbfe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad05a8f17fb01787453d6e29dc881cbfe">&#9670;&nbsp;</a></span>progress</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceXferWidgets::progress</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00048">48</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<a id="a05fea9bde521ffcb18f9f8a677a73716"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05fea9bde521ffcb18f9f8a677a73716">&#9670;&nbsp;</a></span>vbox</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSpiceXferWidgets::vbox</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="spice__plugin__file__transfer_8c_source.html#l00046">46</a> of file <a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="spice__plugin__file__transfer_8c_source.html">spice_plugin_file_transfer.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_spice_xfer_widgets.html">_RemminaPluginSpiceXferWidgets</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_spice_xfer_widgets.js b/docs/struct___remmina_plugin_spice_xfer_widgets.js
new file mode 100644
index 000000000..5c74050f0
--- /dev/null
+++ b/docs/struct___remmina_plugin_spice_xfer_widgets.js
@@ -0,0 +1,8 @@
+var struct___remmina_plugin_spice_xfer_widgets =
+[
+ [ "cancel", "struct___remmina_plugin_spice_xfer_widgets.html#adfef2a32ccfa7152eed3b8e65b48bb53", null ],
+ [ "hbox", "struct___remmina_plugin_spice_xfer_widgets.html#a46d74da3885207d20372d13a2f4b181c", null ],
+ [ "label", "struct___remmina_plugin_spice_xfer_widgets.html#a3ccf00d4d7b46e182c31b7d1f568911a", null ],
+ [ "progress", "struct___remmina_plugin_spice_xfer_widgets.html#ad05a8f17fb01787453d6e29dc881cbfe", null ],
+ [ "vbox", "struct___remmina_plugin_spice_xfer_widgets.html#a05fea9bde521ffcb18f9f8a677a73716", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_ssh_data.html b/docs/struct___remmina_plugin_ssh_data.html
new file mode 100644
index 000000000..e9afc23d0
--- /dev/null
+++ b/docs/struct___remmina_plugin_ssh_data.html
@@ -0,0 +1,208 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginSshData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_ssh_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginSshData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The SSH plugin implementation.
+ <a href="struct___remmina_plugin_ssh_data.html#details">More...</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a9e34d029c0a2b22affd19ae005e541ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae">shell</a></td></tr>
+<tr class="separator:a9e34d029c0a2b22affd19ae005e541ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7d7b1e2393255bf247b940c5f7d4a91"><td class="memItemLeft" align="right" valign="top">GFile *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91">vte_session_file</a></td></tr>
+<tr class="separator:af7d7b1e2393255bf247b940c5f7d4a91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a274af863ce43b84bb4b0624cecc02a14"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14">vte</a></td></tr>
+<tr class="separator:a274af863ce43b84bb4b0624cecc02a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee4bcd1a586ebaab74b062d2d40e563"><td class="memItemLeft" align="right" valign="top">const GdkRGBA *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563">palette</a></td></tr>
+<tr class="separator:a9ee4bcd1a586ebaab74b062d2d40e563"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacebb7f6d617f5a753db5ceb450de45e"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e">thread</a></td></tr>
+<tr class="separator:aacebb7f6d617f5a753db5ceb450de45e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>The SSH plugin implementation. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00197">197</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a9ee4bcd1a586ebaab74b062d2d40e563"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ee4bcd1a586ebaab74b062d2d40e563">&#9670;&nbsp;</a></span>palette</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const GdkRGBA* _RemminaPluginSshData::palette</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00202">202</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9e34d029c0a2b22affd19ae005e541ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e34d029c0a2b22affd19ae005e541ae">&#9670;&nbsp;</a></span>shell</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a1dd627c6195e879ba5ca12f5d590b10d">RemminaSSHShell</a>* _RemminaPluginSshData::shell</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00198">198</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aacebb7f6d617f5a753db5ceb450de45e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacebb7f6d617f5a753db5ceb450de45e">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaPluginSshData::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00204">204</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a274af863ce43b84bb4b0624cecc02a14"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a274af863ce43b84bb4b0624cecc02a14">&#9670;&nbsp;</a></span>vte</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginSshData::vte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00200">200</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af7d7b1e2393255bf247b940c5f7d4a91"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7d7b1e2393255bf247b940c5f7d4a91">&#9670;&nbsp;</a></span>vte_session_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GFile* _RemminaPluginSshData::vte_session_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8c_source.html#l00199">199</a> of file <a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh__plugin_8c_source.html">remmina_ssh_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_ssh_data.html">_RemminaPluginSshData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_ssh_data.js b/docs/struct___remmina_plugin_ssh_data.js
new file mode 100644
index 000000000..90accf7e5
--- /dev/null
+++ b/docs/struct___remmina_plugin_ssh_data.js
@@ -0,0 +1,8 @@
+var struct___remmina_plugin_ssh_data =
+[
+ [ "palette", "struct___remmina_plugin_ssh_data.html#a9ee4bcd1a586ebaab74b062d2d40e563", null ],
+ [ "shell", "struct___remmina_plugin_ssh_data.html#a9e34d029c0a2b22affd19ae005e541ae", null ],
+ [ "thread", "struct___remmina_plugin_ssh_data.html#aacebb7f6d617f5a753db5ceb450de45e", null ],
+ [ "vte", "struct___remmina_plugin_ssh_data.html#a274af863ce43b84bb4b0624cecc02a14", null ],
+ [ "vte_session_file", "struct___remmina_plugin_ssh_data.html#af7d7b1e2393255bf247b940c5f7d4a91", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_vnc_coordinates.html b/docs/struct___remmina_plugin_vnc_coordinates.html
new file mode 100644
index 000000000..3023dab16
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_coordinates.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginVncCoordinates Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_vnc_coordinates.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginVncCoordinates Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a33c99179134cf900b66103767766ed3a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a></td></tr>
+<tr class="separator:a33c99179134cf900b66103767766ed3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad385abd59c1f49bdb244fd679efb5b3e"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a></td></tr>
+<tr class="separator:ad385abd59c1f49bdb244fd679efb5b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00118">118</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a33c99179134cf900b66103767766ed3a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33c99179134cf900b66103767766ed3a">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncCoordinates::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00119">119</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad385abd59c1f49bdb244fd679efb5b3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad385abd59c1f49bdb244fd679efb5b3e">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncCoordinates::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00119">119</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_vnc_coordinates.js b/docs/struct___remmina_plugin_vnc_coordinates.js
new file mode 100644
index 000000000..5822cc0f1
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_coordinates.js
@@ -0,0 +1,5 @@
+var struct___remmina_plugin_vnc_coordinates =
+[
+ [ "x", "struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a", null ],
+ [ "y", "struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_vnc_cuttext_param.html b/docs/struct___remmina_plugin_vnc_cuttext_param.html
new file mode 100644
index 000000000..4b6537c37
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_cuttext_param.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginVncCuttextParam Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_vnc_cuttext_param.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginVncCuttextParam Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3acb975cf5fb33970f68bed221978a09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">gp</a></td></tr>
+<tr class="separator:a3acb975cf5fb33970f68bed221978a09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a435d7b845e1d90c3bfbe5e5a7be19b30"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a></td></tr>
+<tr class="separator:a435d7b845e1d90c3bfbe5e5a7be19b30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3623cf203470ce741397e972fb12ab76"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">textlen</a></td></tr>
+<tr class="separator:a3623cf203470ce741397e972fb12ab76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00365">365</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a3acb975cf5fb33970f68bed221978a09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3acb975cf5fb33970f68bed221978a09">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* _RemminaPluginVncCuttextParam::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00366">366</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a435d7b845e1d90c3bfbe5e5a7be19b30"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a435d7b845e1d90c3bfbe5e5a7be19b30">&#9670;&nbsp;</a></span>text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPluginVncCuttextParam::text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00367">367</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3623cf203470ce741397e972fb12ab76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3623cf203470ce741397e972fb12ab76">&#9670;&nbsp;</a></span>textlen</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncCuttextParam::textlen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00368">368</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_vnc_cuttext_param.js b/docs/struct___remmina_plugin_vnc_cuttext_param.js
new file mode 100644
index 000000000..d78d88080
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_cuttext_param.js
@@ -0,0 +1,6 @@
+var struct___remmina_plugin_vnc_cuttext_param =
+[
+ [ "gp", "struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09", null ],
+ [ "text", "struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30", null ],
+ [ "textlen", "struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_vnc_data.html b/docs/struct___remmina_plugin_vnc_data.html
new file mode 100644
index 000000000..762fad7d5
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_data.html
@@ -0,0 +1,602 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginVncData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_vnc_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginVncData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ab105fe07330946ed3687ad2d06fabe95"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a></td></tr>
+<tr class="separator:ab105fe07330946ed3687ad2d06fabe95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4e1f4b6fc95c31896cc50f315312f93"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a></td></tr>
+<tr class="separator:ac4e1f4b6fc95c31896cc50f315312f93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a782a902d036e12eb08bfcd1006c12b97"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a></td></tr>
+<tr class="separator:a782a902d036e12eb08bfcd1006c12b97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b17067fb2b9437f1fdf607334dfade3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a></td></tr>
+<tr class="separator:a5b17067fb2b9437f1fdf607334dfade3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf12d2c89046160dddcae35af84e5e57"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a></td></tr>
+<tr class="separator:acf12d2c89046160dddcae35af84e5e57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b85e81358d36bc4772b95cb9856e2ca"><td class="memItemLeft" align="right" valign="top">guchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a></td></tr>
+<tr class="separator:a5b85e81358d36bc4772b95cb9856e2ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5412ada4c656d0053f0656bed890c030"><td class="memItemLeft" align="right" valign="top">cairo_surface_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a></td></tr>
+<tr class="separator:a5412ada4c656d0053f0656bed890c030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c4413fdc098cf2dd9a1ff336c20356e"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a></td></tr>
+<tr class="separator:a3c4413fdc098cf2dd9a1ff336c20356e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09a73e5d8e44a505154432e91cc8af4e"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a></td></tr>
+<tr class="separator:a09a73e5d8e44a505154432e91cc8af4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14aaefd3fdb0038689972d672a87f6d2"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a></td></tr>
+<tr class="separator:a14aaefd3fdb0038689972d672a87f6d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4de43e091ed0b511921b87f2d456e990"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a></td></tr>
+<tr class="separator:a4de43e091ed0b511921b87f2d456e990"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c3e9e03bc8b3ed04ee93a2c0281b5c6"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a></td></tr>
+<tr class="separator:a8c3e9e03bc8b3ed04ee93a2c0281b5c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af834392929e0be100534bcc4a4d6df3c"><td class="memItemLeft" align="right" valign="top">gulong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a></td></tr>
+<tr class="separator:af834392929e0be100534bcc4a4d6df3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fc1c7e877a675b10282918e418c9bbc"><td class="memItemLeft" align="right" valign="top">GTimeVal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a></td></tr>
+<tr class="separator:a9fc1c7e877a675b10282918e418c9bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d655f538f7a29657c664bdd0117dcfb"><td class="memItemLeft" align="right" valign="top">cairo_surface_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a></td></tr>
+<tr class="separator:a5d655f538f7a29657c664bdd0117dcfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a673281e9b313ad358b1a426dcf6238c2"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">queuecursor_x</a></td></tr>
+<tr class="separator:a673281e9b313ad358b1a426dcf6238c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeae081d32acaa79294cba7adaf6c57dd"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">queuecursor_y</a></td></tr>
+<tr class="separator:aeae081d32acaa79294cba7adaf6c57dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7838da89b30d194de8d5571e2130364"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a></td></tr>
+<tr class="separator:af7838da89b30d194de8d5571e2130364"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33bc751b1d5728b624bfa57814504f90"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a></td></tr>
+<tr class="separator:a33bc751b1d5728b624bfa57814504f90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41dc885437b90c87b6a8b4367b0ba63c"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a></td></tr>
+<tr class="separator:a41dc885437b90c87b6a8b4367b0ba63c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4047890129d7177dc5f813f2947e7a3c"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a></td></tr>
+<tr class="separator:a4047890129d7177dc5f813f2947e7a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0453c0a0676675e91ba19318dc9b06e0"><td class="memItemLeft" align="right" valign="top">GPtrArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a></td></tr>
+<tr class="separator:a0453c0a0676675e91ba19318dc9b06e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f8bcbfe873d4949852e9624e1c43063"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a></td></tr>
+<tr class="separator:a5f8bcbfe873d4949852e9624e1c43063"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e175ab5a31b720d9d7dfc6923ce3c6a"><td class="memItemLeft" align="right" valign="top">GQueue *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a></td></tr>
+<tr class="separator:a0e175ab5a31b720d9d7dfc6923ce3c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a625ea21fb2d92cb8489d3c9e5a2477ea"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a> [2]</td></tr>
+<tr class="separator:a625ea21fb2d92cb8489d3c9e5a2477ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2958d10774cc6fc28a0bfa0b1c843095"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a></td></tr>
+<tr class="separator:a2958d10774cc6fc28a0bfa0b1c843095"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a824b3ab6d51d0ba65abdbd0e788edb89"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">buffer_mutex</a></td></tr>
+<tr class="separator:a824b3ab6d51d0ba65abdbd0e788edb89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00052">52</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a782a902d036e12eb08bfcd1006c12b97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a782a902d036e12eb08bfcd1006c12b97">&#9670;&nbsp;</a></span>auth_called</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginVncData::auth_called</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00058">58</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5b17067fb2b9437f1fdf607334dfade3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b17067fb2b9437f1fdf607334dfade3">&#9670;&nbsp;</a></span>auth_first</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginVncData::auth_first</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00060">60</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a824b3ab6d51d0ba65abdbd0e788edb89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a824b3ab6d51d0ba65abdbd0e788edb89">&#9670;&nbsp;</a></span>buffer_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t _RemminaPluginVncData::buffer_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00088">88</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4047890129d7177dc5f813f2947e7a3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4047890129d7177dc5f813f2947e7a3c">&#9670;&nbsp;</a></span>button_mask</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::button_mask</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00079">79</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a33bc751b1d5728b624bfa57814504f90"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33bc751b1d5728b624bfa57814504f90">&#9670;&nbsp;</a></span>client</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaPluginVncData::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00076">76</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af834392929e0be100534bcc4a4d6df3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af834392929e0be100534bcc4a4d6df3c">&#9670;&nbsp;</a></span>clipboard_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gulong _RemminaPluginVncData::clipboard_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00069">69</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9fc1c7e877a675b10282918e418c9bbc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9fc1c7e877a675b10282918e418c9bbc">&#9670;&nbsp;</a></span>clipboard_timer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GTimeVal _RemminaPluginVncData::clipboard_timer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00070">70</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab105fe07330946ed3687ad2d06fabe95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab105fe07330946ed3687ad2d06fabe95">&#9670;&nbsp;</a></span>connected</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginVncData::connected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00054">54</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acf12d2c89046160dddcae35af84e5e57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf12d2c89046160dddcae35af84e5e57">&#9670;&nbsp;</a></span>drawing_area</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginVncData::drawing_area</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00062">62</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a41dc885437b90c87b6a8b4367b0ba63c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41dc885437b90c87b6a8b4367b0ba63c">&#9670;&nbsp;</a></span>listen_sock</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::listen_sock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00077">77</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0453c0a0676675e91ba19318dc9b06e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0453c0a0676675e91ba19318dc9b06e0">&#9670;&nbsp;</a></span>pressed_keys</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPtrArray* _RemminaPluginVncData::pressed_keys</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00081">81</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af7838da89b30d194de8d5571e2130364"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af7838da89b30d194de8d5571e2130364">&#9670;&nbsp;</a></span>queuecursor_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPluginVncData::queuecursor_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00074">74</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d655f538f7a29657c664bdd0117dcfb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d655f538f7a29657c664bdd0117dcfb">&#9670;&nbsp;</a></span>queuecursor_surface</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">cairo_surface_t* _RemminaPluginVncData::queuecursor_surface</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00072">72</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a673281e9b313ad358b1a426dcf6238c2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a673281e9b313ad358b1a426dcf6238c2">&#9670;&nbsp;</a></span>queuecursor_x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuecursor_x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00073">73</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aeae081d32acaa79294cba7adaf6c57dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeae081d32acaa79294cba7adaf6c57dd">&#9670;&nbsp;</a></span>queuecursor_y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuecursor_y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00073">73</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4de43e091ed0b511921b87f2d456e990"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4de43e091ed0b511921b87f2d456e990">&#9670;&nbsp;</a></span>queuedraw_h</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuedraw_h</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00066">66</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8c3e9e03bc8b3ed04ee93a2c0281b5c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">&#9670;&nbsp;</a></span>queuedraw_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPluginVncData::queuedraw_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00067">67</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a14aaefd3fdb0038689972d672a87f6d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14aaefd3fdb0038689972d672a87f6d2">&#9670;&nbsp;</a></span>queuedraw_w</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuedraw_w</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00066">66</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3c4413fdc098cf2dd9a1ff336c20356e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c4413fdc098cf2dd9a1ff336c20356e">&#9670;&nbsp;</a></span>queuedraw_x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuedraw_x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00066">66</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a09a73e5d8e44a505154432e91cc8af4e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a09a73e5d8e44a505154432e91cc8af4e">&#9670;&nbsp;</a></span>queuedraw_y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::queuedraw_y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00066">66</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5412ada4c656d0053f0656bed890c030"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5412ada4c656d0053f0656bed890c030">&#9670;&nbsp;</a></span>rgb_buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">cairo_surface_t* _RemminaPluginVncData::rgb_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00064">64</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac4e1f4b6fc95c31896cc50f315312f93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4e1f4b6fc95c31896cc50f315312f93">&#9670;&nbsp;</a></span>running</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginVncData::running</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00056">56</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2958d10774cc6fc28a0bfa0b1c843095"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2958d10774cc6fc28a0bfa0b1c843095">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaPluginVncData::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00087">87</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5b85e81358d36bc4772b95cb9856e2ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b85e81358d36bc4772b95cb9856e2ca">&#9670;&nbsp;</a></span>vnc_buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guchar* _RemminaPluginVncData::vnc_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00063">63</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a625ea21fb2d92cb8489d3c9e5a2477ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a625ea21fb2d92cb8489d3c9e5a2477ea">&#9670;&nbsp;</a></span>vnc_event_pipe</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncData::vnc_event_pipe[2]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00085">85</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0e175ab5a31b720d9d7dfc6923ce3c6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0e175ab5a31b720d9d7dfc6923ce3c6a">&#9670;&nbsp;</a></span>vnc_event_queue</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GQueue* _RemminaPluginVncData::vnc_event_queue</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00084">84</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5f8bcbfe873d4949852e9624e1c43063"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5f8bcbfe873d4949852e9624e1c43063">&#9670;&nbsp;</a></span>vnc_event_queue_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t _RemminaPluginVncData::vnc_event_queue_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00083">83</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_vnc_data.js b/docs/struct___remmina_plugin_vnc_data.js
new file mode 100644
index 000000000..d5fe6b163
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_data.js
@@ -0,0 +1,30 @@
+var struct___remmina_plugin_vnc_data =
+[
+ [ "auth_called", "struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97", null ],
+ [ "auth_first", "struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3", null ],
+ [ "buffer_mutex", "struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89", null ],
+ [ "button_mask", "struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c", null ],
+ [ "client", "struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90", null ],
+ [ "clipboard_handler", "struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c", null ],
+ [ "clipboard_timer", "struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc", null ],
+ [ "connected", "struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95", null ],
+ [ "drawing_area", "struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57", null ],
+ [ "listen_sock", "struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c", null ],
+ [ "pressed_keys", "struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0", null ],
+ [ "queuecursor_handler", "struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364", null ],
+ [ "queuecursor_surface", "struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb", null ],
+ [ "queuecursor_x", "struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2", null ],
+ [ "queuecursor_y", "struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd", null ],
+ [ "queuedraw_h", "struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990", null ],
+ [ "queuedraw_handler", "struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6", null ],
+ [ "queuedraw_w", "struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2", null ],
+ [ "queuedraw_x", "struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e", null ],
+ [ "queuedraw_y", "struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e", null ],
+ [ "rgb_buffer", "struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030", null ],
+ [ "running", "struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93", null ],
+ [ "thread", "struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095", null ],
+ [ "vnc_buffer", "struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca", null ],
+ [ "vnc_event_pipe", "struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea", null ],
+ [ "vnc_event_queue", "struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a", null ],
+ [ "vnc_event_queue_mutex", "struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_vnc_event.html b/docs/struct___remmina_plugin_vnc_event.html
new file mode 100644
index 000000000..07d62be2a
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_event.html
@@ -0,0 +1,310 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginVncEvent Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_vnc_event.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginVncEvent Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a0ffbaa26908fd25e653dfaf5ad8ccff0"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">event_type</a></td></tr>
+<tr class="separator:a0ffbaa26908fd25e653dfaf5ad8ccff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eb3f92397d52e5e8c8e778450d1dcd6"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a1fbb89b1ea35b8ca3597191c02f50dc4"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ad138b0f4c3e3a3d048ef670a04cf25b8"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;guint&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87">keyval</a></td></tr>
+<tr class="separator:ad138b0f4c3e3a3d048ef670a04cf25b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80722c38fe9cddbd80bdf54bcba37b06"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gboolean&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8">pressed</a></td></tr>
+<tr class="separator:a80722c38fe9cddbd80bdf54bcba37b06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fbb89b1ea35b8ca3597191c02f50dc4"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">key</a></td></tr>
+<tr class="separator:a1fbb89b1ea35b8ca3597191c02f50dc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a2836622f7d6d30063bfa2bd177a21a"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a7c334ff0fa4359ec975aac833bfd1d97"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8">x</a></td></tr>
+<tr class="separator:a7c334ff0fa4359ec975aac833bfd1d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61b86cd5a6154576e9080da371096e02"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11">y</a></td></tr>
+<tr class="separator:a61b86cd5a6154576e9080da371096e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af383383e07a14a164cb801c3366e6209"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32">button_mask</a></td></tr>
+<tr class="separator:af383383e07a14a164cb801c3366e6209"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a2836622f7d6d30063bfa2bd177a21a"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">pointer</a></td></tr>
+<tr class="separator:a0a2836622f7d6d30063bfa2bd177a21a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74499ba5b51c34c804c6ffd8ba3a3a97"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a414b61361af18dba057429a272bd243b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gchar *&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a></td></tr>
+<tr class="separator:a414b61361af18dba057429a272bd243b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74499ba5b51c34c804c6ffd8ba3a3a97"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="struct___remmina_plugin_vnc_event.html#a17fd02bcca976213ff16edde4b754ec6">text</a></td></tr>
+<tr class="separator:a74499ba5b51c34c804c6ffd8ba3a3a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eb3f92397d52e5e8c8e778450d1dcd6"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a></td></tr>
+<tr class="separator:a3eb3f92397d52e5e8c8e778450d1dcd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00100">100</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a03809ddab0aea8b6d2796641d4ccda32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a03809ddab0aea8b6d2796641d4ccda32">&#9670;&nbsp;</a></span>button_mask</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncEvent::button_mask</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00110">110</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3eb3f92397d52e5e8c8e778450d1dcd6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3eb3f92397d52e5e8c8e778450d1dcd6">&#9670;&nbsp;</a></span>event_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } _RemminaPluginVncEvent::event_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a0ffbaa26908fd25e653dfaf5ad8ccff0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ffbaa26908fd25e653dfaf5ad8ccff0">&#9670;&nbsp;</a></span>event_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncEvent::event_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00101">101</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a464a014fb0aef74b464587f351cdf49f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a464a014fb0aef74b464587f351cdf49f">&#9670;&nbsp;</a></span>key</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } _RemminaPluginVncEvent::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae2a04bad3d386a453554a431f9e9ad87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2a04bad3d386a453554a431f9e9ad87">&#9670;&nbsp;</a></span>keyval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPluginVncEvent::keyval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00104">104</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab96d7c0c53fbe95aa88610b319aad895"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab96d7c0c53fbe95aa88610b319aad895">&#9670;&nbsp;</a></span>pointer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } _RemminaPluginVncEvent::pointer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a264ea1e41624de1e4a0e9cad031f0ac8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a264ea1e41624de1e4a0e9cad031f0ac8">&#9670;&nbsp;</a></span>pressed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginVncEvent::pressed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00105">105</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a79891d24c0e6257efceeefb3c10d8c65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a79891d24c0e6257efceeefb3c10d8c65">&#9670;&nbsp;</a></span>text <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPluginVncEvent::text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00113">113</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a17fd02bcca976213ff16edde4b754ec6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17fd02bcca976213ff16edde4b754ec6">&#9670;&nbsp;</a></span>text <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } _RemminaPluginVncEvent::text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a66390bbb63e42d25f8fa8e0be7f7dee8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66390bbb63e42d25f8fa8e0be7f7dee8">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncEvent::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00108">108</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a35d3190915553df1cfc65fb951403c11"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a35d3190915553df1cfc65fb951403c11">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginVncEvent::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00109">109</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_vnc_event.js b/docs/struct___remmina_plugin_vnc_event.js
new file mode 100644
index 000000000..bb391fb9d
--- /dev/null
+++ b/docs/struct___remmina_plugin_vnc_event.js
@@ -0,0 +1,14 @@
+var struct___remmina_plugin_vnc_event =
+[
+ [ "button_mask", "struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32", null ],
+ [ "event_data", "struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6", null ],
+ [ "event_type", "struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0", null ],
+ [ "key", "struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f", null ],
+ [ "keyval", "struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87", null ],
+ [ "pointer", "struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895", null ],
+ [ "pressed", "struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8", null ],
+ [ "text", "struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65", null ],
+ [ "text", "struct___remmina_plugin_vnc_event.html#a17fd02bcca976213ff16edde4b754ec6", null ],
+ [ "x", "struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8", null ],
+ [ "y", "struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_w_w_w_data.html b/docs/struct___remmina_plugin_w_w_w_data.html
new file mode 100644
index 000000000..e17a52252
--- /dev/null
+++ b/docs/struct___remmina_plugin_w_w_w_data.html
@@ -0,0 +1,330 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginWWWData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_w_w_w_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginWWWData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aa3e07f92f32ee3bab1b0e33c33e619db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">document_type</a></td></tr>
+<tr class="separator:aa3e07f92f32ee3bab1b0e33c33e619db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ff4ea7c6ceb2351c6248427cf83a4db"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a></td></tr>
+<tr class="separator:a6ff4ea7c6ceb2351c6248427cf83a4db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f740cb467c00cb8f17ff2546498fa54"><td class="memItemLeft" align="right" valign="top">WebKitSettings *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a></td></tr>
+<tr class="separator:a3f740cb467c00cb8f17ff2546498fa54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22010474535695604f1e05498e726f3e"><td class="memItemLeft" align="right" valign="top">WebKitWebContext *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a></td></tr>
+<tr class="separator:a22010474535695604f1e05498e726f3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d54a3dc838528c104eaea91d4f777ab"><td class="memItemLeft" align="right" valign="top">WebKitWebsiteDataManager *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a></td></tr>
+<tr class="separator:a9d54a3dc838528c104eaea91d4f777ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8ef80ab8bb8cae8d56890720dd58959"><td class="memItemLeft" align="right" valign="top">WebKitCredential *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">credentials</a></td></tr>
+<tr class="separator:aa8ef80ab8bb8cae8d56890720dd58959"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7390cf88e14b015713ea1f0980909f0"><td class="memItemLeft" align="right" valign="top">WebKitAuthenticationRequest *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">request</a></td></tr>
+<tr class="separator:ac7390cf88e14b015713ea1f0980909f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32adefd1fb55dd7237b907923d2a3690"><td class="memItemLeft" align="right" valign="top">WebKitWebView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a></td></tr>
+<tr class="separator:a32adefd1fb55dd7237b907923d2a3690"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4e4fcc5e49437cb5c2c1d949aaa9436"><td class="memItemLeft" align="right" valign="top">WebKitLoadEvent&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">load_event</a></td></tr>
+<tr class="separator:ab4e4fcc5e49437cb5c2c1d949aaa9436"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d2341e2d7c157b0ff64835d1ade6fbb"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a></td></tr>
+<tr class="separator:a6d2341e2d7c157b0ff64835d1ade6fbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaaf9e6e616dea9d366b151e575ddedcd"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a></td></tr>
+<tr class="separator:aaaf9e6e616dea9d366b151e575ddedcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80b04541339086a453fad32295806f84"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a></td></tr>
+<tr class="separator:a80b04541339086a453fad32295806f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00057">57</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aaaf9e6e616dea9d366b151e575ddedcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaaf9e6e616dea9d366b151e575ddedcd">&#9670;&nbsp;</a></span>authenticated</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginWWWData::authenticated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00069">69</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6ff4ea7c6ceb2351c6248427cf83a4db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ff4ea7c6ceb2351c6248427cf83a4db">&#9670;&nbsp;</a></span>box</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginWWWData::box</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00059">59</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a22010474535695604f1e05498e726f3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a22010474535695604f1e05498e726f3e">&#9670;&nbsp;</a></span>context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitWebContext* _RemminaPluginWWWData::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00061">61</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa8ef80ab8bb8cae8d56890720dd58959"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8ef80ab8bb8cae8d56890720dd58959">&#9670;&nbsp;</a></span>credentials</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitCredential* _RemminaPluginWWWData::credentials</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00063">63</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9d54a3dc838528c104eaea91d4f777ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d54a3dc838528c104eaea91d4f777ab">&#9670;&nbsp;</a></span>data_mgr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitWebsiteDataManager* _RemminaPluginWWWData::data_mgr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00062">62</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa3e07f92f32ee3bab1b0e33c33e619db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3e07f92f32ee3bab1b0e33c33e619db">&#9670;&nbsp;</a></span>document_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a> _RemminaPluginWWWData::document_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00058">58</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a80b04541339086a453fad32295806f84"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80b04541339086a453fad32295806f84">&#9670;&nbsp;</a></span>formauthenticated</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginWWWData::formauthenticated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00070">70</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab4e4fcc5e49437cb5c2c1d949aaa9436"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4e4fcc5e49437cb5c2c1d949aaa9436">&#9670;&nbsp;</a></span>load_event</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitLoadEvent _RemminaPluginWWWData::load_event</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00066">66</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac7390cf88e14b015713ea1f0980909f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7390cf88e14b015713ea1f0980909f0">&#9670;&nbsp;</a></span>request</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitAuthenticationRequest* _RemminaPluginWWWData::request</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00064">64</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3f740cb467c00cb8f17ff2546498fa54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f740cb467c00cb8f17ff2546498fa54">&#9670;&nbsp;</a></span>settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitSettings* _RemminaPluginWWWData::settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00060">60</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d2341e2d7c157b0ff64835d1ade6fbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d2341e2d7c157b0ff64835d1ade6fbb">&#9670;&nbsp;</a></span>url</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPluginWWWData::url</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00068">68</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a32adefd1fb55dd7237b907923d2a3690"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32adefd1fb55dd7237b907923d2a3690">&#9670;&nbsp;</a></span>webview</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">WebKitWebView* _RemminaPluginWWWData::webview</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00065">65</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="www__plugin_8c_source.html">www_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_w_w_w_data.js b/docs/struct___remmina_plugin_w_w_w_data.js
new file mode 100644
index 000000000..e19b6dadd
--- /dev/null
+++ b/docs/struct___remmina_plugin_w_w_w_data.js
@@ -0,0 +1,15 @@
+var struct___remmina_plugin_w_w_w_data =
+[
+ [ "authenticated", "struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd", null ],
+ [ "box", "struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db", null ],
+ [ "context", "struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e", null ],
+ [ "credentials", "struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959", null ],
+ [ "data_mgr", "struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab", null ],
+ [ "document_type", "struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db", null ],
+ [ "formauthenticated", "struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84", null ],
+ [ "load_event", "struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436", null ],
+ [ "request", "struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0", null ],
+ [ "settings", "struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54", null ],
+ [ "url", "struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb", null ],
+ [ "webview", "struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_plugin_xdmcp_data.html b/docs/struct___remmina_plugin_xdmcp_data.html
new file mode 100644
index 000000000..c2f7178e0
--- /dev/null
+++ b/docs/struct___remmina_plugin_xdmcp_data.html
@@ -0,0 +1,258 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPluginXdmcpData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_plugin_xdmcp_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPluginXdmcpData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae6a009bdb4dfe6a4106cb6a39be7844f"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a></td></tr>
+<tr class="separator:ae6a009bdb4dfe6a4106cb6a39be7844f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97724f69f01a2198b840af7573b49496"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">socket_id</a></td></tr>
+<tr class="separator:a97724f69f01a2198b840af7573b49496"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa98de02bb0de59df23792d3055558aca"><td class="memItemLeft" align="right" valign="top">GPid&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a></td></tr>
+<tr class="separator:aa98de02bb0de59df23792d3055558aca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd39d173751fe0c5035439d0abbda223"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223">output_fd</a></td></tr>
+<tr class="separator:abd39d173751fe0c5035439d0abbda223"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3720e11a9a646f6f2558e84e8d8e0f6d"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d">error_fd</a></td></tr>
+<tr class="separator:a3720e11a9a646f6f2558e84e8d8e0f6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d69bc84bea67c73c99b6d7eaba05b8f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a></td></tr>
+<tr class="separator:a3d69bc84bea67c73c99b6d7eaba05b8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a033837f5ffbe75e7f945528830e1578f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">ready</a></td></tr>
+<tr class="separator:a033837f5ffbe75e7f945528830e1578f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a05b19cdc0d2833bb951e5ae53a3beb"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a></td></tr>
+<tr class="separator:a9a05b19cdc0d2833bb951e5ae53a3beb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00050">50</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a3d69bc84bea67c73c99b6d7eaba05b8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d69bc84bea67c73c99b6d7eaba05b8f">&#9670;&nbsp;</a></span>display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginXdmcpData::display</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00056">56</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3720e11a9a646f6f2558e84e8d8e0f6d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3720e11a9a646f6f2558e84e8d8e0f6d">&#9670;&nbsp;</a></span>error_fd</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginXdmcpData::error_fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00055">55</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="abd39d173751fe0c5035439d0abbda223"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd39d173751fe0c5035439d0abbda223">&#9670;&nbsp;</a></span>output_fd</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginXdmcpData::output_fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00054">54</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa98de02bb0de59df23792d3055558aca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa98de02bb0de59df23792d3055558aca">&#9670;&nbsp;</a></span>pid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPid _RemminaPluginXdmcpData::pid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00053">53</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a033837f5ffbe75e7f945528830e1578f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a033837f5ffbe75e7f945528830e1578f">&#9670;&nbsp;</a></span>ready</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPluginXdmcpData::ready</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00057">57</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae6a009bdb4dfe6a4106cb6a39be7844f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6a009bdb4dfe6a4106cb6a39be7844f">&#9670;&nbsp;</a></span>socket</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPluginXdmcpData::socket</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00051">51</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a97724f69f01a2198b840af7573b49496"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97724f69f01a2198b840af7573b49496">&#9670;&nbsp;</a></span>socket_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPluginXdmcpData::socket_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00052">52</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a05b19cdc0d2833bb951e5ae53a3beb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a05b19cdc0d2833bb951e5ae53a3beb">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaPluginXdmcpData::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00059">59</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_plugin_xdmcp_data.js b/docs/struct___remmina_plugin_xdmcp_data.js
new file mode 100644
index 000000000..9f40a8c9e
--- /dev/null
+++ b/docs/struct___remmina_plugin_xdmcp_data.js
@@ -0,0 +1,11 @@
+var struct___remmina_plugin_xdmcp_data =
+[
+ [ "display", "struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f", null ],
+ [ "error_fd", "struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d", null ],
+ [ "output_fd", "struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223", null ],
+ [ "pid", "struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca", null ],
+ [ "ready", "struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f", null ],
+ [ "socket", "struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f", null ],
+ [ "socket_id", "struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496", null ],
+ [ "thread", "struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_pref.html b/docs/struct___remmina_pref.html
new file mode 100644
index 000000000..74f75228f
--- /dev/null
+++ b/docs/struct___remmina_pref.html
@@ -0,0 +1,1538 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPref Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_pref.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPref Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a920221c2f304bfa278d0944bbbb6e011"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011">datadir_path</a></td></tr>
+<tr class="separator:a920221c2f304bfa278d0944bbbb6e011"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1544a98f03088dc260ed98f2deac94f"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f">remmina_file_name</a></td></tr>
+<tr class="separator:aa1544a98f03088dc260ed98f2deac94f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3df98a686c4e2703455c1a786d3f1f5c"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c">screenshot_path</a></td></tr>
+<tr class="separator:a3df98a686c4e2703455c1a786d3f1f5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae63c0c0ec8dbfe8bf665221868661b35"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35">deny_screenshot_clipboard</a></td></tr>
+<tr class="separator:ae63c0c0ec8dbfe8bf665221868661b35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2267a1de362addcee0c5801612dc5d6"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6">screenshot_name</a></td></tr>
+<tr class="separator:ae2267a1de362addcee0c5801612dc5d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad6660781f636788d5f05b3bac85d676"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676">save_view_mode</a></td></tr>
+<tr class="separator:aad6660781f636788d5f05b3bac85d676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59d72ae63a434fbb978934e4592417c4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4">use_master_password</a></td></tr>
+<tr class="separator:a59d72ae63a434fbb978934e4592417c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65b01db52636d3fb896cd8a5c68eb2fc"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc">unlock_password</a></td></tr>
+<tr class="separator:a65b01db52636d3fb896cd8a5c68eb2fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac001e6ac3d70ae6adca7d918898a9651"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651">unlock_repassword</a></td></tr>
+<tr class="separator:ac001e6ac3d70ae6adca7d918898a9651"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef2fe0f203dd68ed30d12e3b22a4f972"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972">unlock_timeout</a></td></tr>
+<tr class="separator:aef2fe0f203dd68ed30d12e3b22a4f972"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a054a55a2c39181609150cbb4d22413ef"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef">default_action</a></td></tr>
+<tr class="separator:a054a55a2c39181609150cbb4d22413ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a095f19f07c5ebeb47a89b1bfe23cc21e"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e">scale_quality</a></td></tr>
+<tr class="separator:a095f19f07c5ebeb47a89b1bfe23cc21e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65a1f2b90d033425fd0c041fccae320c"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c">auto_scroll_step</a></td></tr>
+<tr class="separator:a65a1f2b90d033425fd0c041fccae320c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab78e34f426da9a37b467efbdf2183644"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644">recent_maximum</a></td></tr>
+<tr class="separator:ab78e34f426da9a37b467efbdf2183644"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59eebf1d365ef192de8e14da2c381f37"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37">resolutions</a></td></tr>
+<tr class="separator:a59eebf1d365ef192de8e14da2c381f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a086c9b0fe4bcfe0e5349422d17886d65"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65">keystrokes</a></td></tr>
+<tr class="separator:a086c9b0fe4bcfe0e5349422d17886d65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a74d72f34e960155c489e0f91574d2b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b">fullscreen_on_auto</a></td></tr>
+<tr class="separator:a4a74d72f34e960155c489e0f91574d2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d77a2663675f01670ed7cc2f14e39c9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9">always_show_tab</a></td></tr>
+<tr class="separator:a6d77a2663675f01670ed7cc2f14e39c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9258f6c3c18f14b4abb148aa43e6bc0e"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e">hide_connection_toolbar</a></td></tr>
+<tr class="separator:a9258f6c3c18f14b4abb148aa43e6bc0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae293a1fa591d3db78bd587c5af9c9101"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101">hide_searchbar</a></td></tr>
+<tr class="separator:ae293a1fa591d3db78bd587c5af9c9101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0928bd64388cb1ced2f542d3b35019d"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d">default_mode</a></td></tr>
+<tr class="separator:ab0928bd64388cb1ced2f542d3b35019d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecbe4c6a13ec6eda818c9f74c6f63468"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468">tab_mode</a></td></tr>
+<tr class="separator:aecbe4c6a13ec6eda818c9f74c6f63468"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97ad6670df5c399df233f0a74f5c148f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f">fullscreen_toolbar_visibility</a></td></tr>
+<tr class="separator:a97ad6670df5c399df233f0a74f5c148f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a999b74e3aab2e7fbc4431e803511b568"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568">applet_new_ontop</a></td></tr>
+<tr class="separator:a999b74e3aab2e7fbc4431e803511b568"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acee9d7384a5e3949df53cdf54390bbcd"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd">applet_hide_count</a></td></tr>
+<tr class="separator:acee9d7384a5e3949df53cdf54390bbcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcd157a6f3bddb4b23b4e328cd18358c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c">disable_tray_icon</a></td></tr>
+<tr class="separator:afcd157a6f3bddb4b23b4e328cd18358c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4d1bd34e31b36bd9306d0a5770a4e8f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f">dark_tray_icon</a></td></tr>
+<tr class="separator:ad4d1bd34e31b36bd9306d0a5770a4e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac4f34f297a653052752b571777bc001"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aac4f34f297a653052752b571777bc001">ssh_loglevel</a></td></tr>
+<tr class="separator:aac4f34f297a653052752b571777bc001"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d7deb091e0d51a8d7885ad9e22dc9a7"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7">ssh_parseconfig</a></td></tr>
+<tr class="separator:a1d7deb091e0d51a8d7885ad9e22dc9a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af348bb968fd98ba269c4e253750e2400"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400">sshtunnel_port</a></td></tr>
+<tr class="separator:af348bb968fd98ba269c4e253750e2400"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bf96a40b9f63300d02e158b26546203"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203">ssh_tcp_keepidle</a></td></tr>
+<tr class="separator:a2bf96a40b9f63300d02e158b26546203"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a793ae9c3e2f88eed85551c85d6832ebd"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd">ssh_tcp_keepintvl</a></td></tr>
+<tr class="separator:a793ae9c3e2f88eed85551c85d6832ebd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a082f698b8aa7cec3c1cb0fd987d4358f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f">ssh_tcp_keepcnt</a></td></tr>
+<tr class="separator:a082f698b8aa7cec3c1cb0fd987d4358f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad92d70d47d7ad80298efe591955fa8b8"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8">ssh_tcp_usrtimeout</a></td></tr>
+<tr class="separator:ad92d70d47d7ad80298efe591955fa8b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ae707cecd1f6660d8e2168d7422b797"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797">hostkey</a></td></tr>
+<tr class="separator:a6ae707cecd1f6660d8e2168d7422b797"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a10b1f3d9b49687c09ec5dd98a0577d7f"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f">shortcutkey_fullscreen</a></td></tr>
+<tr class="separator:a10b1f3d9b49687c09ec5dd98a0577d7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5c3a7fd35cc51f658dda67052440b47"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47">shortcutkey_autofit</a></td></tr>
+<tr class="separator:ae5c3a7fd35cc51f658dda67052440b47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45d70bbebf5163081d67df3dbb73cc1b"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b">shortcutkey_prevtab</a></td></tr>
+<tr class="separator:a45d70bbebf5163081d67df3dbb73cc1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a712773f926eb2ec030d6af80cdc33095"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095">shortcutkey_nexttab</a></td></tr>
+<tr class="separator:a712773f926eb2ec030d6af80cdc33095"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cc56c093d45511af91c6b05c522c45a"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a">shortcutkey_dynres</a></td></tr>
+<tr class="separator:a2cc56c093d45511af91c6b05c522c45a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2859598ef2f87afb5a970a197a503765"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765">shortcutkey_scale</a></td></tr>
+<tr class="separator:a2859598ef2f87afb5a970a197a503765"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a363642437f5920c93fe35c07ef3601cc"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc">shortcutkey_grab</a></td></tr>
+<tr class="separator:a363642437f5920c93fe35c07ef3601cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eb866c8e08104362aa51f14f5894e51"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51">shortcutkey_viewonly</a></td></tr>
+<tr class="separator:a4eb866c8e08104362aa51f14f5894e51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b5f4704fb50b67ff1e3daaf7d7d3209"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209">shortcutkey_screenshot</a></td></tr>
+<tr class="separator:a1b5f4704fb50b67ff1e3daaf7d7d3209"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a887cbbd379d159cd0ac1acea7173d07b"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b">shortcutkey_minimize</a></td></tr>
+<tr class="separator:a887cbbd379d159cd0ac1acea7173d07b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a17bfba7a11836808719d33d5f6edbdc7"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7">shortcutkey_disconnect</a></td></tr>
+<tr class="separator:a17bfba7a11836808719d33d5f6edbdc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3dc5f8676c4747f2fcaf9a68d16d11b"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b">shortcutkey_toolbar</a></td></tr>
+<tr class="separator:aa3dc5f8676c4747f2fcaf9a68d16d11b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac342b87e3992a20833d39e864e8ab85b"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b">vte_font</a></td></tr>
+<tr class="separator:ac342b87e3992a20833d39e864e8ab85b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52f5fa8b2b4500c3ab9ae35f0d410f17"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17">vte_allow_bold_text</a></td></tr>
+<tr class="separator:a52f5fa8b2b4500c3ab9ae35f0d410f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57e104c8ff60943f4a03e2e15c6b2a22"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22">vte_system_colors</a></td></tr>
+<tr class="separator:a57e104c8ff60943f4a03e2e15c6b2a22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9c8b60418a9dc795230e4ebb084f850"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850">vte_lines</a></td></tr>
+<tr class="separator:af9c8b60418a9dc795230e4ebb084f850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a579fae9094500d743c26d03f4c34d457"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457">vte_shortcutkey_copy</a></td></tr>
+<tr class="separator:a579fae9094500d743c26d03f4c34d457"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a901034949132f369eb34c4f1ded3a0a6"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6">vte_shortcutkey_paste</a></td></tr>
+<tr class="separator:a901034949132f369eb34c4f1ded3a0a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c5171c5d8a61cc48171065644613cad"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad">vte_shortcutkey_select_all</a></td></tr>
+<tr class="separator:a9c5171c5d8a61cc48171065644613cad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cbf300dc913d51365c93f928e0d02fd"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd">hide_toolbar</a></td></tr>
+<tr class="separator:a8cbf300dc913d51365c93f928e0d02fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a293541cc884cabe4f9b2b3181b3ea9c0"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0">small_toolbutton</a></td></tr>
+<tr class="separator:a293541cc884cabe4f9b2b3181b3ea9c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab43c3da7d8551c9df726996c540726f1"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1">view_file_mode</a></td></tr>
+<tr class="separator:ab43c3da7d8551c9df726996c540726f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbd08ed0c74b8f216e633aae6b141792"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792">applet_enable_avahi</a></td></tr>
+<tr class="separator:abbd08ed0c74b8f216e633aae6b141792"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6318ff8e2f73d36fb8b35cbed503c222"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222">main_width</a></td></tr>
+<tr class="separator:a6318ff8e2f73d36fb8b35cbed503c222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb86dc8005c98ce2eab57bd900467875"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875">main_height</a></td></tr>
+<tr class="separator:aeb86dc8005c98ce2eab57bd900467875"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8edfd2a9a9a06b1fd876fbe8742b9ff6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6">main_maximize</a></td></tr>
+<tr class="separator:a8edfd2a9a9a06b1fd876fbe8742b9ff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac13f1310a2625b29defdf5b0ba8fd2d0"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0">main_sort_column_id</a></td></tr>
+<tr class="separator:ac13f1310a2625b29defdf5b0ba8fd2d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4504684f0e67bb50157fd6862182e2c4"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4">main_sort_order</a></td></tr>
+<tr class="separator:a4504684f0e67bb50157fd6862182e2c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8d4c923cb9ca1be451436d1790e8ee5"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5">expanded_group</a></td></tr>
+<tr class="separator:aa8d4c923cb9ca1be451436d1790e8ee5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62b161b504422d53a766abb3444f8449"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449">toolbar_pin_down</a></td></tr>
+<tr class="separator:a62b161b504422d53a766abb3444f8449"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac95fed56e8995e3361928ebf87505f21"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21">floating_toolbar_placement</a></td></tr>
+<tr class="separator:ac95fed56e8995e3361928ebf87505f21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0242e9fcc63d6d24257f63fc23077133"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133">toolbar_placement</a></td></tr>
+<tr class="separator:a0242e9fcc63d6d24257f63fc23077133"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18872e092d22f5d3accb66d6a22845d7"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7">prevent_snap_welcome_message</a></td></tr>
+<tr class="separator:a18872e092d22f5d3accb66d6a22845d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac31f888a39eec7ef6de922c7b53d044e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e">last_quickconnect_protocol</a></td></tr>
+<tr class="separator:ac31f888a39eec7ef6de922c7b53d044e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99a34af002da68036758fab3ceb08259"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259">secret</a></td></tr>
+<tr class="separator:a99a34af002da68036758fab3ceb08259"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49c21f0374af5abd5c3034cbc665a17f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f">uid</a></td></tr>
+<tr class="separator:a49c21f0374af5abd5c3034cbc665a17f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85e3d3ef34fb8969211860df159a04d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8">color_pref</a></td></tr>
+<tr class="separator:a85e3d3ef34fb8969211860df159a04d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5127551ff44a7a2d7b660fbdbd00afe3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3">periodic_usage_stats_permitted</a></td></tr>
+<tr class="separator:a5127551ff44a7a2d7b660fbdbd00afe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9fb2bee26f8054c373fbc6ad0ccf736"><td class="memItemLeft" align="right" valign="top">glong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736">periodic_usage_stats_last_sent</a></td></tr>
+<tr class="separator:ad9fb2bee26f8054c373fbc6ad0ccf736"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affa1d02e2b0d9f6fc7b006fd74a52ad7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7">periodic_usage_stats_uuid_prefix</a></td></tr>
+<tr class="separator:affa1d02e2b0d9f6fc7b006fd74a52ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb4afc1d03afffed838149645eccc9dd"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd">last_success</a></td></tr>
+<tr class="separator:aeb4afc1d03afffed838149645eccc9dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58fce08bda1efaeefd8b65f6463f67c6"><td class="memItemLeft" align="right" valign="top">glong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6">periodic_rmnews_last_get</a></td></tr>
+<tr class="separator:a58fce08bda1efaeefd8b65f6463f67c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b13dc96ccf8ebad045f02c58eb1d005"><td class="memItemLeft" align="right" valign="top">glong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005">periodic_rmnews_get_count</a></td></tr>
+<tr class="separator:a1b13dc96ccf8ebad045f02c58eb1d005"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87044f758cc0e9c975b02c3f94147e06"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06">periodic_rmnews_uuid_prefix</a></td></tr>
+<tr class="separator:a87044f758cc0e9c975b02c3f94147e06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00111">111</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6d77a2663675f01670ed7cc2f14e39c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d77a2663675f01670ed7cc2f14e39c9">&#9670;&nbsp;</a></span>always_show_tab</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::always_show_tab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00131">131</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="abbd08ed0c74b8f216e633aae6b141792"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbd08ed0c74b8f216e633aae6b141792">&#9670;&nbsp;</a></span>applet_enable_avahi</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::applet_enable_avahi</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00177">177</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="acee9d7384a5e3949df53cdf54390bbcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acee9d7384a5e3949df53cdf54390bbcd">&#9670;&nbsp;</a></span>applet_hide_count</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::applet_hide_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00139">139</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a999b74e3aab2e7fbc4431e803511b568"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a999b74e3aab2e7fbc4431e803511b568">&#9670;&nbsp;</a></span>applet_new_ontop</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::applet_new_ontop</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00138">138</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a65a1f2b90d033425fd0c041fccae320c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65a1f2b90d033425fd0c041fccae320c">&#9670;&nbsp;</a></span>auto_scroll_step</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::auto_scroll_step</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00125">125</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a85e3d3ef34fb8969211860df159a04d8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85e3d3ef34fb8969211860df159a04d8">&#9670;&nbsp;</a></span>color_pref</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__pref_8h.html#a058ab9dfe6100245f7c578c2e41d5970">RemminaColorPref</a> _RemminaPref::color_pref</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00197">197</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ad4d1bd34e31b36bd9306d0a5770a4e8f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4d1bd34e31b36bd9306d0a5770a4e8f">&#9670;&nbsp;</a></span>dark_tray_icon</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::dark_tray_icon</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00141">141</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a920221c2f304bfa278d0944bbbb6e011"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a920221c2f304bfa278d0944bbbb6e011">&#9670;&nbsp;</a></span>datadir_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::datadir_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00113">113</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a054a55a2c39181609150cbb4d22413ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a054a55a2c39181609150cbb4d22413ef">&#9670;&nbsp;</a></span>default_action</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::default_action</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00123">123</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ab0928bd64388cb1ced2f542d3b35019d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0928bd64388cb1ced2f542d3b35019d">&#9670;&nbsp;</a></span>default_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::default_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00134">134</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ae63c0c0ec8dbfe8bf665221868661b35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae63c0c0ec8dbfe8bf665221868661b35">&#9670;&nbsp;</a></span>deny_screenshot_clipboard</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::deny_screenshot_clipboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00116">116</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="afcd157a6f3bddb4b23b4e328cd18358c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afcd157a6f3bddb4b23b4e328cd18358c">&#9670;&nbsp;</a></span>disable_tray_icon</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::disable_tray_icon</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00140">140</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aa8d4c923cb9ca1be451436d1790e8ee5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8d4c923cb9ca1be451436d1790e8ee5">&#9670;&nbsp;</a></span>expanded_group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::expanded_group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00184">184</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac95fed56e8995e3361928ebf87505f21"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac95fed56e8995e3361928ebf87505f21">&#9670;&nbsp;</a></span>floating_toolbar_placement</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::floating_toolbar_placement</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00186">186</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4a74d72f34e960155c489e0f91574d2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a74d72f34e960155c489e0f91574d2b">&#9670;&nbsp;</a></span>fullscreen_on_auto</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::fullscreen_on_auto</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00130">130</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a97ad6670df5c399df233f0a74f5c148f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97ad6670df5c399df233f0a74f5c148f">&#9670;&nbsp;</a></span>fullscreen_toolbar_visibility</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::fullscreen_toolbar_visibility</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00136">136</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a9258f6c3c18f14b4abb148aa43e6bc0e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9258f6c3c18f14b4abb148aa43e6bc0e">&#9670;&nbsp;</a></span>hide_connection_toolbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::hide_connection_toolbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00132">132</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ae293a1fa591d3db78bd587c5af9c9101"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae293a1fa591d3db78bd587c5af9c9101">&#9670;&nbsp;</a></span>hide_searchbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::hide_searchbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00133">133</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a8cbf300dc913d51365c93f928e0d02fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cbf300dc913d51365c93f928e0d02fd">&#9670;&nbsp;</a></span>hide_toolbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::hide_toolbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00173">173</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a6ae707cecd1f6660d8e2168d7422b797"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6ae707cecd1f6660d8e2168d7422b797">&#9670;&nbsp;</a></span>hostkey</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::hostkey</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00151">151</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a086c9b0fe4bcfe0e5349422d17886d65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a086c9b0fe4bcfe0e5349422d17886d65">&#9670;&nbsp;</a></span>keystrokes</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::keystrokes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00128">128</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac31f888a39eec7ef6de922c7b53d044e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac31f888a39eec7ef6de922c7b53d044e">&#9670;&nbsp;</a></span>last_quickconnect_protocol</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::last_quickconnect_protocol</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00189">189</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aeb4afc1d03afffed838149645eccc9dd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb4afc1d03afffed838149645eccc9dd">&#9670;&nbsp;</a></span>last_success</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::last_success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00203">203</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aeb86dc8005c98ce2eab57bd900467875"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeb86dc8005c98ce2eab57bd900467875">&#9670;&nbsp;</a></span>main_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::main_height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00180">180</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a8edfd2a9a9a06b1fd876fbe8742b9ff6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8edfd2a9a9a06b1fd876fbe8742b9ff6">&#9670;&nbsp;</a></span>main_maximize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::main_maximize</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00181">181</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac13f1310a2625b29defdf5b0ba8fd2d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac13f1310a2625b29defdf5b0ba8fd2d0">&#9670;&nbsp;</a></span>main_sort_column_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::main_sort_column_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00182">182</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4504684f0e67bb50157fd6862182e2c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4504684f0e67bb50157fd6862182e2c4">&#9670;&nbsp;</a></span>main_sort_order</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::main_sort_order</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00183">183</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a6318ff8e2f73d36fb8b35cbed503c222"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6318ff8e2f73d36fb8b35cbed503c222">&#9670;&nbsp;</a></span>main_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::main_width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00179">179</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a1b13dc96ccf8ebad045f02c58eb1d005"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b13dc96ccf8ebad045f02c58eb1d005">&#9670;&nbsp;</a></span>periodic_rmnews_get_count</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">glong _RemminaPref::periodic_rmnews_get_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00207">207</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a58fce08bda1efaeefd8b65f6463f67c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a58fce08bda1efaeefd8b65f6463f67c6">&#9670;&nbsp;</a></span>periodic_rmnews_last_get</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">glong _RemminaPref::periodic_rmnews_last_get</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00206">206</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a87044f758cc0e9c975b02c3f94147e06"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87044f758cc0e9c975b02c3f94147e06">&#9670;&nbsp;</a></span>periodic_rmnews_uuid_prefix</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::periodic_rmnews_uuid_prefix</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00208">208</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ad9fb2bee26f8054c373fbc6ad0ccf736"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9fb2bee26f8054c373fbc6ad0ccf736">&#9670;&nbsp;</a></span>periodic_usage_stats_last_sent</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">glong _RemminaPref::periodic_usage_stats_last_sent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00201">201</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a5127551ff44a7a2d7b660fbdbd00afe3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5127551ff44a7a2d7b660fbdbd00afe3">&#9670;&nbsp;</a></span>periodic_usage_stats_permitted</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::periodic_usage_stats_permitted</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00200">200</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="affa1d02e2b0d9f6fc7b006fd74a52ad7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#affa1d02e2b0d9f6fc7b006fd74a52ad7">&#9670;&nbsp;</a></span>periodic_usage_stats_uuid_prefix</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::periodic_usage_stats_uuid_prefix</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00202">202</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a18872e092d22f5d3accb66d6a22845d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18872e092d22f5d3accb66d6a22845d7">&#9670;&nbsp;</a></span>prevent_snap_welcome_message</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::prevent_snap_welcome_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00188">188</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ab78e34f426da9a37b467efbdf2183644"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab78e34f426da9a37b467efbdf2183644">&#9670;&nbsp;</a></span>recent_maximum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::recent_maximum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00126">126</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aa1544a98f03088dc260ed98f2deac94f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1544a98f03088dc260ed98f2deac94f">&#9670;&nbsp;</a></span>remmina_file_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::remmina_file_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00114">114</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a59eebf1d365ef192de8e14da2c381f37"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59eebf1d365ef192de8e14da2c381f37">&#9670;&nbsp;</a></span>resolutions</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::resolutions</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00127">127</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aad6660781f636788d5f05b3bac85d676"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad6660781f636788d5f05b3bac85d676">&#9670;&nbsp;</a></span>save_view_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::save_view_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00118">118</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a095f19f07c5ebeb47a89b1bfe23cc21e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a095f19f07c5ebeb47a89b1bfe23cc21e">&#9670;&nbsp;</a></span>scale_quality</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::scale_quality</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00124">124</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ae2267a1de362addcee0c5801612dc5d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2267a1de362addcee0c5801612dc5d6">&#9670;&nbsp;</a></span>screenshot_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::screenshot_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00117">117</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a3df98a686c4e2703455c1a786d3f1f5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3df98a686c4e2703455c1a786d3f1f5c">&#9670;&nbsp;</a></span>screenshot_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::screenshot_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00115">115</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a99a34af002da68036758fab3ceb08259"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a99a34af002da68036758fab3ceb08259">&#9670;&nbsp;</a></span>secret</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::secret</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00192">192</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ae5c3a7fd35cc51f658dda67052440b47"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5c3a7fd35cc51f658dda67052440b47">&#9670;&nbsp;</a></span>shortcutkey_autofit</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_autofit</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00153">153</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a17bfba7a11836808719d33d5f6edbdc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a17bfba7a11836808719d33d5f6edbdc7">&#9670;&nbsp;</a></span>shortcutkey_disconnect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_disconnect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00162">162</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a2cc56c093d45511af91c6b05c522c45a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2cc56c093d45511af91c6b05c522c45a">&#9670;&nbsp;</a></span>shortcutkey_dynres</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_dynres</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00156">156</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a10b1f3d9b49687c09ec5dd98a0577d7f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10b1f3d9b49687c09ec5dd98a0577d7f">&#9670;&nbsp;</a></span>shortcutkey_fullscreen</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_fullscreen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00152">152</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a363642437f5920c93fe35c07ef3601cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a363642437f5920c93fe35c07ef3601cc">&#9670;&nbsp;</a></span>shortcutkey_grab</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_grab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00158">158</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a887cbbd379d159cd0ac1acea7173d07b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a887cbbd379d159cd0ac1acea7173d07b">&#9670;&nbsp;</a></span>shortcutkey_minimize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_minimize</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00161">161</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a712773f926eb2ec030d6af80cdc33095"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a712773f926eb2ec030d6af80cdc33095">&#9670;&nbsp;</a></span>shortcutkey_nexttab</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_nexttab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00155">155</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a45d70bbebf5163081d67df3dbb73cc1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a45d70bbebf5163081d67df3dbb73cc1b">&#9670;&nbsp;</a></span>shortcutkey_prevtab</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_prevtab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00154">154</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a2859598ef2f87afb5a970a197a503765"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2859598ef2f87afb5a970a197a503765">&#9670;&nbsp;</a></span>shortcutkey_scale</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_scale</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00157">157</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a1b5f4704fb50b67ff1e3daaf7d7d3209"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b5f4704fb50b67ff1e3daaf7d7d3209">&#9670;&nbsp;</a></span>shortcutkey_screenshot</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_screenshot</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00160">160</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aa3dc5f8676c4747f2fcaf9a68d16d11b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3dc5f8676c4747f2fcaf9a68d16d11b">&#9670;&nbsp;</a></span>shortcutkey_toolbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_toolbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00163">163</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a4eb866c8e08104362aa51f14f5894e51"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4eb866c8e08104362aa51f14f5894e51">&#9670;&nbsp;</a></span>shortcutkey_viewonly</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::shortcutkey_viewonly</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00159">159</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a293541cc884cabe4f9b2b3181b3ea9c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a293541cc884cabe4f9b2b3181b3ea9c0">&#9670;&nbsp;</a></span>small_toolbutton</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::small_toolbutton</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00174">174</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aac4f34f297a653052752b571777bc001"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac4f34f297a653052752b571777bc001">&#9670;&nbsp;</a></span>ssh_loglevel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::ssh_loglevel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00143">143</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a1d7deb091e0d51a8d7885ad9e22dc9a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d7deb091e0d51a8d7885ad9e22dc9a7">&#9670;&nbsp;</a></span>ssh_parseconfig</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::ssh_parseconfig</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00144">144</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a082f698b8aa7cec3c1cb0fd987d4358f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a082f698b8aa7cec3c1cb0fd987d4358f">&#9670;&nbsp;</a></span>ssh_tcp_keepcnt</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::ssh_tcp_keepcnt</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00148">148</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a2bf96a40b9f63300d02e158b26546203"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2bf96a40b9f63300d02e158b26546203">&#9670;&nbsp;</a></span>ssh_tcp_keepidle</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::ssh_tcp_keepidle</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00146">146</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a793ae9c3e2f88eed85551c85d6832ebd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a793ae9c3e2f88eed85551c85d6832ebd">&#9670;&nbsp;</a></span>ssh_tcp_keepintvl</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::ssh_tcp_keepintvl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00147">147</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ad92d70d47d7ad80298efe591955fa8b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad92d70d47d7ad80298efe591955fa8b8">&#9670;&nbsp;</a></span>ssh_tcp_usrtimeout</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::ssh_tcp_usrtimeout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00149">149</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="af348bb968fd98ba269c4e253750e2400"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af348bb968fd98ba269c4e253750e2400">&#9670;&nbsp;</a></span>sshtunnel_port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::sshtunnel_port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00145">145</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aecbe4c6a13ec6eda818c9f74c6f63468"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aecbe4c6a13ec6eda818c9f74c6f63468">&#9670;&nbsp;</a></span>tab_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::tab_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00135">135</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a62b161b504422d53a766abb3444f8449"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62b161b504422d53a766abb3444f8449">&#9670;&nbsp;</a></span>toolbar_pin_down</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::toolbar_pin_down</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00185">185</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a0242e9fcc63d6d24257f63fc23077133"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0242e9fcc63d6d24257f63fc23077133">&#9670;&nbsp;</a></span>toolbar_placement</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::toolbar_placement</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00187">187</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a49c21f0374af5abd5c3034cbc665a17f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49c21f0374af5abd5c3034cbc665a17f">&#9670;&nbsp;</a></span>uid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::uid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00195">195</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a65b01db52636d3fb896cd8a5c68eb2fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65b01db52636d3fb896cd8a5c68eb2fc">&#9670;&nbsp;</a></span>unlock_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::unlock_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00120">120</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac001e6ac3d70ae6adca7d918898a9651"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac001e6ac3d70ae6adca7d918898a9651">&#9670;&nbsp;</a></span>unlock_repassword</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPref::unlock_repassword</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00121">121</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="aef2fe0f203dd68ed30d12e3b22a4f972"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aef2fe0f203dd68ed30d12e3b22a4f972">&#9670;&nbsp;</a></span>unlock_timeout</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::unlock_timeout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00122">122</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a59d72ae63a434fbb978934e4592417c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59d72ae63a434fbb978934e4592417c4">&#9670;&nbsp;</a></span>use_master_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::use_master_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00119">119</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ab43c3da7d8551c9df726996c540726f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab43c3da7d8551c9df726996c540726f1">&#9670;&nbsp;</a></span>view_file_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::view_file_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00175">175</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a52f5fa8b2b4500c3ab9ae35f0d410f17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52f5fa8b2b4500c3ab9ae35f0d410f17">&#9670;&nbsp;</a></span>vte_allow_bold_text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::vte_allow_bold_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00166">166</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="ac342b87e3992a20833d39e864e8ab85b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac342b87e3992a20833d39e864e8ab85b">&#9670;&nbsp;</a></span>vte_font</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaPref::vte_font</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00165">165</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="af9c8b60418a9dc795230e4ebb084f850"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9c8b60418a9dc795230e4ebb084f850">&#9670;&nbsp;</a></span>vte_lines</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaPref::vte_lines</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00168">168</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a579fae9094500d743c26d03f4c34d457"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a579fae9094500d743c26d03f4c34d457">&#9670;&nbsp;</a></span>vte_shortcutkey_copy</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::vte_shortcutkey_copy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00169">169</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a901034949132f369eb34c4f1ded3a0a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a901034949132f369eb34c4f1ded3a0a6">&#9670;&nbsp;</a></span>vte_shortcutkey_paste</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::vte_shortcutkey_paste</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00170">170</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a9c5171c5d8a61cc48171065644613cad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c5171c5d8a61cc48171065644613cad">&#9670;&nbsp;</a></span>vte_shortcutkey_select_all</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaPref::vte_shortcutkey_select_all</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00171">171</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<a id="a57e104c8ff60943f4a03e2e15c6b2a22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57e104c8ff60943f4a03e2e15c6b2a22">&#9670;&nbsp;</a></span>vte_system_colors</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaPref::vte_system_colors</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref_8h_source.html#l00167">167</a> of file <a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__pref_8h_source.html">remmina_pref.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_pref.html">_RemminaPref</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_pref.js b/docs/struct___remmina_pref.js
new file mode 100644
index 000000000..315915d16
--- /dev/null
+++ b/docs/struct___remmina_pref.js
@@ -0,0 +1,82 @@
+var struct___remmina_pref =
+[
+ [ "always_show_tab", "struct___remmina_pref.html#a6d77a2663675f01670ed7cc2f14e39c9", null ],
+ [ "applet_enable_avahi", "struct___remmina_pref.html#abbd08ed0c74b8f216e633aae6b141792", null ],
+ [ "applet_hide_count", "struct___remmina_pref.html#acee9d7384a5e3949df53cdf54390bbcd", null ],
+ [ "applet_new_ontop", "struct___remmina_pref.html#a999b74e3aab2e7fbc4431e803511b568", null ],
+ [ "auto_scroll_step", "struct___remmina_pref.html#a65a1f2b90d033425fd0c041fccae320c", null ],
+ [ "color_pref", "struct___remmina_pref.html#a85e3d3ef34fb8969211860df159a04d8", null ],
+ [ "dark_tray_icon", "struct___remmina_pref.html#ad4d1bd34e31b36bd9306d0a5770a4e8f", null ],
+ [ "datadir_path", "struct___remmina_pref.html#a920221c2f304bfa278d0944bbbb6e011", null ],
+ [ "default_action", "struct___remmina_pref.html#a054a55a2c39181609150cbb4d22413ef", null ],
+ [ "default_mode", "struct___remmina_pref.html#ab0928bd64388cb1ced2f542d3b35019d", null ],
+ [ "deny_screenshot_clipboard", "struct___remmina_pref.html#ae63c0c0ec8dbfe8bf665221868661b35", null ],
+ [ "disable_tray_icon", "struct___remmina_pref.html#afcd157a6f3bddb4b23b4e328cd18358c", null ],
+ [ "expanded_group", "struct___remmina_pref.html#aa8d4c923cb9ca1be451436d1790e8ee5", null ],
+ [ "floating_toolbar_placement", "struct___remmina_pref.html#ac95fed56e8995e3361928ebf87505f21", null ],
+ [ "fullscreen_on_auto", "struct___remmina_pref.html#a4a74d72f34e960155c489e0f91574d2b", null ],
+ [ "fullscreen_toolbar_visibility", "struct___remmina_pref.html#a97ad6670df5c399df233f0a74f5c148f", null ],
+ [ "hide_connection_toolbar", "struct___remmina_pref.html#a9258f6c3c18f14b4abb148aa43e6bc0e", null ],
+ [ "hide_searchbar", "struct___remmina_pref.html#ae293a1fa591d3db78bd587c5af9c9101", null ],
+ [ "hide_toolbar", "struct___remmina_pref.html#a8cbf300dc913d51365c93f928e0d02fd", null ],
+ [ "hostkey", "struct___remmina_pref.html#a6ae707cecd1f6660d8e2168d7422b797", null ],
+ [ "keystrokes", "struct___remmina_pref.html#a086c9b0fe4bcfe0e5349422d17886d65", null ],
+ [ "last_quickconnect_protocol", "struct___remmina_pref.html#ac31f888a39eec7ef6de922c7b53d044e", null ],
+ [ "last_success", "struct___remmina_pref.html#aeb4afc1d03afffed838149645eccc9dd", null ],
+ [ "main_height", "struct___remmina_pref.html#aeb86dc8005c98ce2eab57bd900467875", null ],
+ [ "main_maximize", "struct___remmina_pref.html#a8edfd2a9a9a06b1fd876fbe8742b9ff6", null ],
+ [ "main_sort_column_id", "struct___remmina_pref.html#ac13f1310a2625b29defdf5b0ba8fd2d0", null ],
+ [ "main_sort_order", "struct___remmina_pref.html#a4504684f0e67bb50157fd6862182e2c4", null ],
+ [ "main_width", "struct___remmina_pref.html#a6318ff8e2f73d36fb8b35cbed503c222", null ],
+ [ "periodic_rmnews_get_count", "struct___remmina_pref.html#a1b13dc96ccf8ebad045f02c58eb1d005", null ],
+ [ "periodic_rmnews_last_get", "struct___remmina_pref.html#a58fce08bda1efaeefd8b65f6463f67c6", null ],
+ [ "periodic_rmnews_uuid_prefix", "struct___remmina_pref.html#a87044f758cc0e9c975b02c3f94147e06", null ],
+ [ "periodic_usage_stats_last_sent", "struct___remmina_pref.html#ad9fb2bee26f8054c373fbc6ad0ccf736", null ],
+ [ "periodic_usage_stats_permitted", "struct___remmina_pref.html#a5127551ff44a7a2d7b660fbdbd00afe3", null ],
+ [ "periodic_usage_stats_uuid_prefix", "struct___remmina_pref.html#affa1d02e2b0d9f6fc7b006fd74a52ad7", null ],
+ [ "prevent_snap_welcome_message", "struct___remmina_pref.html#a18872e092d22f5d3accb66d6a22845d7", null ],
+ [ "recent_maximum", "struct___remmina_pref.html#ab78e34f426da9a37b467efbdf2183644", null ],
+ [ "remmina_file_name", "struct___remmina_pref.html#aa1544a98f03088dc260ed98f2deac94f", null ],
+ [ "resolutions", "struct___remmina_pref.html#a59eebf1d365ef192de8e14da2c381f37", null ],
+ [ "save_view_mode", "struct___remmina_pref.html#aad6660781f636788d5f05b3bac85d676", null ],
+ [ "scale_quality", "struct___remmina_pref.html#a095f19f07c5ebeb47a89b1bfe23cc21e", null ],
+ [ "screenshot_name", "struct___remmina_pref.html#ae2267a1de362addcee0c5801612dc5d6", null ],
+ [ "screenshot_path", "struct___remmina_pref.html#a3df98a686c4e2703455c1a786d3f1f5c", null ],
+ [ "secret", "struct___remmina_pref.html#a99a34af002da68036758fab3ceb08259", null ],
+ [ "shortcutkey_autofit", "struct___remmina_pref.html#ae5c3a7fd35cc51f658dda67052440b47", null ],
+ [ "shortcutkey_disconnect", "struct___remmina_pref.html#a17bfba7a11836808719d33d5f6edbdc7", null ],
+ [ "shortcutkey_dynres", "struct___remmina_pref.html#a2cc56c093d45511af91c6b05c522c45a", null ],
+ [ "shortcutkey_fullscreen", "struct___remmina_pref.html#a10b1f3d9b49687c09ec5dd98a0577d7f", null ],
+ [ "shortcutkey_grab", "struct___remmina_pref.html#a363642437f5920c93fe35c07ef3601cc", null ],
+ [ "shortcutkey_minimize", "struct___remmina_pref.html#a887cbbd379d159cd0ac1acea7173d07b", null ],
+ [ "shortcutkey_nexttab", "struct___remmina_pref.html#a712773f926eb2ec030d6af80cdc33095", null ],
+ [ "shortcutkey_prevtab", "struct___remmina_pref.html#a45d70bbebf5163081d67df3dbb73cc1b", null ],
+ [ "shortcutkey_scale", "struct___remmina_pref.html#a2859598ef2f87afb5a970a197a503765", null ],
+ [ "shortcutkey_screenshot", "struct___remmina_pref.html#a1b5f4704fb50b67ff1e3daaf7d7d3209", null ],
+ [ "shortcutkey_toolbar", "struct___remmina_pref.html#aa3dc5f8676c4747f2fcaf9a68d16d11b", null ],
+ [ "shortcutkey_viewonly", "struct___remmina_pref.html#a4eb866c8e08104362aa51f14f5894e51", null ],
+ [ "small_toolbutton", "struct___remmina_pref.html#a293541cc884cabe4f9b2b3181b3ea9c0", null ],
+ [ "ssh_loglevel", "struct___remmina_pref.html#aac4f34f297a653052752b571777bc001", null ],
+ [ "ssh_parseconfig", "struct___remmina_pref.html#a1d7deb091e0d51a8d7885ad9e22dc9a7", null ],
+ [ "ssh_tcp_keepcnt", "struct___remmina_pref.html#a082f698b8aa7cec3c1cb0fd987d4358f", null ],
+ [ "ssh_tcp_keepidle", "struct___remmina_pref.html#a2bf96a40b9f63300d02e158b26546203", null ],
+ [ "ssh_tcp_keepintvl", "struct___remmina_pref.html#a793ae9c3e2f88eed85551c85d6832ebd", null ],
+ [ "ssh_tcp_usrtimeout", "struct___remmina_pref.html#ad92d70d47d7ad80298efe591955fa8b8", null ],
+ [ "sshtunnel_port", "struct___remmina_pref.html#af348bb968fd98ba269c4e253750e2400", null ],
+ [ "tab_mode", "struct___remmina_pref.html#aecbe4c6a13ec6eda818c9f74c6f63468", null ],
+ [ "toolbar_pin_down", "struct___remmina_pref.html#a62b161b504422d53a766abb3444f8449", null ],
+ [ "toolbar_placement", "struct___remmina_pref.html#a0242e9fcc63d6d24257f63fc23077133", null ],
+ [ "uid", "struct___remmina_pref.html#a49c21f0374af5abd5c3034cbc665a17f", null ],
+ [ "unlock_password", "struct___remmina_pref.html#a65b01db52636d3fb896cd8a5c68eb2fc", null ],
+ [ "unlock_repassword", "struct___remmina_pref.html#ac001e6ac3d70ae6adca7d918898a9651", null ],
+ [ "unlock_timeout", "struct___remmina_pref.html#aef2fe0f203dd68ed30d12e3b22a4f972", null ],
+ [ "use_master_password", "struct___remmina_pref.html#a59d72ae63a434fbb978934e4592417c4", null ],
+ [ "view_file_mode", "struct___remmina_pref.html#ab43c3da7d8551c9df726996c540726f1", null ],
+ [ "vte_allow_bold_text", "struct___remmina_pref.html#a52f5fa8b2b4500c3ab9ae35f0d410f17", null ],
+ [ "vte_font", "struct___remmina_pref.html#ac342b87e3992a20833d39e864e8ab85b", null ],
+ [ "vte_lines", "struct___remmina_pref.html#af9c8b60418a9dc795230e4ebb084f850", null ],
+ [ "vte_shortcutkey_copy", "struct___remmina_pref.html#a579fae9094500d743c26d03f4c34d457", null ],
+ [ "vte_shortcutkey_paste", "struct___remmina_pref.html#a901034949132f369eb34c4f1ded3a0a6", null ],
+ [ "vte_shortcutkey_select_all", "struct___remmina_pref.html#a9c5171c5d8a61cc48171065644613cad", null ],
+ [ "vte_system_colors", "struct___remmina_pref.html#a57e104c8ff60943f4a03e2e15c6b2a22", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_pref_dialog.html b/docs/struct___remmina_pref_dialog.html
new file mode 100644
index 000000000..bae2bb27f
--- /dev/null
+++ b/docs/struct___remmina_pref_dialog.html
@@ -0,0 +1,1646 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPrefDialog Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_pref_dialog.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPrefDialog Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a597cc3d6e631babe57df7a472cbb2876"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876">builder</a></td></tr>
+<tr class="separator:a597cc3d6e631babe57df7a472cbb2876"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af145d83f411becab1a1f35787dd2196c"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c">dialog</a></td></tr>
+<tr class="separator:af145d83f411becab1a1f35787dd2196c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07e738aa428d0aa99503058e1c0a5f11"><td class="memItemLeft" align="right" valign="top">GtkNotebook *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11">notebook_preferences</a></td></tr>
+<tr class="separator:a07e738aa428d0aa99503058e1c0a5f11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4c71aaab278901ae411d68abf97a123"><td class="memItemLeft" align="right" valign="top">GtkFileChooser *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123">filechooserbutton_options_datadir_path</a></td></tr>
+<tr class="separator:ab4c71aaab278901ae411d68abf97a123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d87faf3df58b2fc1e09a33fd07c4d0c"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c">entry_options_file_name</a></td></tr>
+<tr class="separator:a5d87faf3df58b2fc1e09a33fd07c4d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae766dd561f1bf23723306f7a70015f27"><td class="memItemLeft" align="right" valign="top">GtkFileChooser *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27">filechooserbutton_options_screenshots_path</a></td></tr>
+<tr class="separator:ae766dd561f1bf23723306f7a70015f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e763bfa2b2c507744f4773cd81f3571"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571">entry_options_screenshot_name</a></td></tr>
+<tr class="separator:a6e763bfa2b2c507744f4773cd81f3571"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad92dc760283fa996f40a976bcc3f3d2d"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d">switch_options_deny_screenshot_clipboard</a></td></tr>
+<tr class="separator:ad92dc760283fa996f40a976bcc3f3d2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ab49071b369069912565f3e0a8b000b"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b">switch_options_remember_last_view_mode</a></td></tr>
+<tr class="separator:a7ab49071b369069912565f3e0a8b000b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9cc0aee7b72d2b3da5a193b8e7b0171"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171">switch_security_use_master_password</a></td></tr>
+<tr class="separator:af9cc0aee7b72d2b3da5a193b8e7b0171"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b6b038291c02fd29f2fc6cd04135b97"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97">unlock_timeout</a></td></tr>
+<tr class="separator:a0b6b038291c02fd29f2fc6cd04135b97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4592c110729ee7d530712da1d7fdc097"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097">unlock_password</a></td></tr>
+<tr class="separator:a4592c110729ee7d530712da1d7fdc097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66b5ccfa48e93ed57dd5aae00039c39b"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b">unlock_repassword</a></td></tr>
+<tr class="separator:a66b5ccfa48e93ed57dd5aae00039c39b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26ad416987608d6c6f0a98ba9d611119"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119">checkbutton_options_save_settings</a></td></tr>
+<tr class="separator:a26ad416987608d6c6f0a98ba9d611119"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad87514b86ed3f9b5980bf6c565343b87"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87">checkbutton_appearance_fullscreen_on_auto</a></td></tr>
+<tr class="separator:ad87514b86ed3f9b5980bf6c565343b87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a120e306368b8fc06841c2fc2d48778c5"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5">checkbutton_appearance_show_tabs</a></td></tr>
+<tr class="separator:a120e306368b8fc06841c2fc2d48778c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c6b01300d82ee50a036fc9fb758cb1f"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f">checkbutton_appearance_hide_toolbar</a></td></tr>
+<tr class="separator:a4c6b01300d82ee50a036fc9fb758cb1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41f551c6f21f4a448e4c5ec1186240fd"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd">checkbutton_appearance_hide_searchbar</a></td></tr>
+<tr class="separator:a41f551c6f21f4a448e4c5ec1186240fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7aa4cc48f6f7ecf608f5fcf2b4147b18"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18">switch_permit_send_stats</a></td></tr>
+<tr class="separator:a7aa4cc48f6f7ecf608f5fcf2b4147b18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86e2ecb7e448ef661c2857de7b724061"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061">comboboxtext_options_double_click</a></td></tr>
+<tr class="separator:a86e2ecb7e448ef661c2857de7b724061"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a917c214ab0662ebd06db3eb7f7c47bf2"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2">comboboxtext_appearance_view_mode</a></td></tr>
+<tr class="separator:a917c214ab0662ebd06db3eb7f7c47bf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a8bc03207480e0e616794ea5efc71f6"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6">comboboxtext_appearance_tab_interface</a></td></tr>
+<tr class="separator:a4a8bc03207480e0e616794ea5efc71f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e3df5e92bbf0aec0f317216de88681d"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d">comboboxtext_options_scale_quality</a></td></tr>
+<tr class="separator:a5e3df5e92bbf0aec0f317216de88681d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a517186be14ab61d72d6212592b958972"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972">comboboxtext_options_ssh_loglevel</a></td></tr>
+<tr class="separator:a517186be14ab61d72d6212592b958972"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7af362b8421b6f066d4d9d737a01ebfb"><td class="memItemLeft" align="right" valign="top">GtkComboBox *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb">comboboxtext_appearance_fullscreen_toolbar_visibility</a></td></tr>
+<tr class="separator:a7af362b8421b6f066d4d9d737a01ebfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad290cb37b80d5295452ad1fd4322acc"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc">checkbutton_options_ssh_parseconfig</a></td></tr>
+<tr class="separator:aad290cb37b80d5295452ad1fd4322acc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a745d3114e3cef2c572b859530926ad40"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40">entry_options_ssh_port</a></td></tr>
+<tr class="separator:a745d3114e3cef2c572b859530926ad40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cea3c4860e9889953a6a22c72672d32"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32">entry_options_ssh_tcp_keepidle</a></td></tr>
+<tr class="separator:a6cea3c4860e9889953a6a22c72672d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a76560d15a613524e38d22934843196"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196">entry_options_ssh_tcp_keepintvl</a></td></tr>
+<tr class="separator:a2a76560d15a613524e38d22934843196"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a269ccc996f2b110e1aa33228ca3db0"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0">entry_options_ssh_tcp_keepcnt</a></td></tr>
+<tr class="separator:a7a269ccc996f2b110e1aa33228ca3db0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e7984859dc88bab77503b175fc4d8c7"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7">entry_options_ssh_tcp_usrtimeout</a></td></tr>
+<tr class="separator:a9e7984859dc88bab77503b175fc4d8c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac15ed49a7e4ab8926bf4385737e0382b"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b">entry_options_scroll</a></td></tr>
+<tr class="separator:ac15ed49a7e4ab8926bf4385737e0382b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b8819ff553f86a5ad8f7fd1a7aa531"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531">entry_options_recent_items</a></td></tr>
+<tr class="separator:a85b8819ff553f86a5ad8f7fd1a7aa531"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a159eb84f43ce9ed81b92b6e260839af6"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6">button_options_recent_items_clear</a></td></tr>
+<tr class="separator:a159eb84f43ce9ed81b92b6e260839af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fb085d3efced0a38d3d7d38e1eb5903"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903">button_options_resolutions</a></td></tr>
+<tr class="separator:a6fb085d3efced0a38d3d7d38e1eb5903"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e7d1f3f754e55464a80fcd8d448c47c"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c">checkbutton_applet_new_connection_on_top</a></td></tr>
+<tr class="separator:a7e7d1f3f754e55464a80fcd8d448c47c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6e591a542ea2a29a5a00e2bf411d2c6"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6">checkbutton_applet_hide_totals</a></td></tr>
+<tr class="separator:aa6e591a542ea2a29a5a00e2bf411d2c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acaf49bcad1a8975b1ab0de2c241ff912"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912">checkbutton_applet_disable_tray</a></td></tr>
+<tr class="separator:acaf49bcad1a8975b1ab0de2c241ff912"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a277ea20324585713697f7d9572b965f1"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1">checkbutton_applet_light_tray</a></td></tr>
+<tr class="separator:a277ea20324585713697f7d9572b965f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a830a938ddb7dde8a580e108a7ad028"><td class="memItemLeft" align="right" valign="top">GtkCheckButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028">checkbutton_applet_start_in_tray</a></td></tr>
+<tr class="separator:a3a830a938ddb7dde8a580e108a7ad028"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cf1e8aa7d474aacc471b625d6330826"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826">button_keyboard_host_key</a></td></tr>
+<tr class="separator:a6cf1e8aa7d474aacc471b625d6330826"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33d785a31072bb4ce865ae048cc14fc2"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2">button_keyboard_fullscreen</a></td></tr>
+<tr class="separator:a33d785a31072bb4ce865ae048cc14fc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa618b528fc78d3253f0fc2c5ffacbde2"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2">button_keyboard_auto_fit</a></td></tr>
+<tr class="separator:aa618b528fc78d3253f0fc2c5ffacbde2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cd6e07816b16f7f94f55193426af4e0"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0">button_keyboard_switch_tab_left</a></td></tr>
+<tr class="separator:a9cd6e07816b16f7f94f55193426af4e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2c902d8ab3e2cb84eaec25d597afac8"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8">button_keyboard_switch_tab_right</a></td></tr>
+<tr class="separator:ae2c902d8ab3e2cb84eaec25d597afac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc48fc8abfc2c8e06fea5d42d9790ec9"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9">button_keyboard_scaled</a></td></tr>
+<tr class="separator:adc48fc8abfc2c8e06fea5d42d9790ec9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f34c1336ad9efc4679c6e449bec7a97"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97">button_keyboard_grab_keyboard</a></td></tr>
+<tr class="separator:a8f34c1336ad9efc4679c6e449bec7a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e24f37d348137f4ee4fa783180f7b94"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94">button_keyboard_screenshot</a></td></tr>
+<tr class="separator:a6e24f37d348137f4ee4fa783180f7b94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3245723de79398df91fe0e440c0e327"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327">button_keyboard_viewonly</a></td></tr>
+<tr class="separator:af3245723de79398df91fe0e440c0e327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1138eed66b8fe0a2386ee07ec33557be"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be">button_keyboard_minimize</a></td></tr>
+<tr class="separator:a1138eed66b8fe0a2386ee07ec33557be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6eb4e606ae2e199435754728d723ce1"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1">button_keyboard_disconnect</a></td></tr>
+<tr class="separator:ae6eb4e606ae2e199435754728d723ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8077d5e8254495ddee87c6baafb07a5"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5">button_keyboard_toolbar</a></td></tr>
+<tr class="separator:aa8077d5e8254495ddee87c6baafb07a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1628fda7c9fc362575002733d4adf46"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46">switch_terminal_font_system</a></td></tr>
+<tr class="separator:ac1628fda7c9fc362575002733d4adf46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3997f4513793f2b6ba71a54c55c78bb"><td class="memItemLeft" align="right" valign="top">GtkFontButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb">fontbutton_terminal_font</a></td></tr>
+<tr class="separator:af3997f4513793f2b6ba71a54c55c78bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a01f6f8247a97a94b8855902a14a980"><td class="memItemLeft" align="right" valign="top">GtkSwitch *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980">switch_terminal_bold</a></td></tr>
+<tr class="separator:a6a01f6f8247a97a94b8855902a14a980"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341e052b4a78587530b63975b7edc92d"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d">label_terminal_foreground</a></td></tr>
+<tr class="separator:a341e052b4a78587530b63975b7edc92d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956db17e48d1c446df7677d3e9f917e2"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2">colorbutton_foreground</a></td></tr>
+<tr class="separator:a956db17e48d1c446df7677d3e9f917e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a066bf2941261efad64c5942a69a6e33d"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d">label_terminal_background</a></td></tr>
+<tr class="separator:a066bf2941261efad64c5942a69a6e33d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adda92d5335d281571b58a40f3ebe95d4"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4">colorbutton_background</a></td></tr>
+<tr class="separator:adda92d5335d281571b58a40f3ebe95d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae26ffa1d95468ab0e3a85a22aa074189"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189">entry_scrollback_lines</a></td></tr>
+<tr class="separator:ae26ffa1d95468ab0e3a85a22aa074189"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b100c8bbb0b01229b240a035defd45f"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f">button_keyboard_copy</a></td></tr>
+<tr class="separator:a1b100c8bbb0b01229b240a035defd45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0b14d180d9dcabf9e79b98094bbae74"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74">button_keyboard_paste</a></td></tr>
+<tr class="separator:af0b14d180d9dcabf9e79b98094bbae74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afccd66623eb7bb1ec233a241e97e80f0"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0">button_keyboard_select_all</a></td></tr>
+<tr class="separator:afccd66623eb7bb1ec233a241e97e80f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16f07e2dad152f37ebbabdba18346ff3"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3">label_terminal_cursor_color</a></td></tr>
+<tr class="separator:a16f07e2dad152f37ebbabdba18346ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62227d6671d78e7387e727c92d79c92e"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e">label_terminal_normal_colors</a></td></tr>
+<tr class="separator:a62227d6671d78e7387e727c92d79c92e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca3d7c47a24dc2722496670937a57cbb"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb">label_terminal_bright_colors</a></td></tr>
+<tr class="separator:aca3d7c47a24dc2722496670937a57cbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bf0904ad661465e2a522b7dced372ab"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab">colorbutton_cursor</a></td></tr>
+<tr class="separator:a6bf0904ad661465e2a522b7dced372ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a877c22a6809bb846cc6555c4100ef877"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877">colorbutton_color0</a></td></tr>
+<tr class="separator:a877c22a6809bb846cc6555c4100ef877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d88c38e27116711851bfb573e90b811"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811">colorbutton_color1</a></td></tr>
+<tr class="separator:a8d88c38e27116711851bfb573e90b811"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95129b25f045ca6f0bc90323b755aebb"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb">colorbutton_color2</a></td></tr>
+<tr class="separator:a95129b25f045ca6f0bc90323b755aebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ce8a15918b4f58702d1063afbbc5a4a"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a">colorbutton_color3</a></td></tr>
+<tr class="separator:a2ce8a15918b4f58702d1063afbbc5a4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa66945e979adc91f4956efb11115a2f"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f">colorbutton_color4</a></td></tr>
+<tr class="separator:afa66945e979adc91f4956efb11115a2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f80906dcdf81e03e383e38b8ca568a3"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3">colorbutton_color5</a></td></tr>
+<tr class="separator:a4f80906dcdf81e03e383e38b8ca568a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9088c8f060e1fe7e12445fb2f9b99bc3"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3">colorbutton_color6</a></td></tr>
+<tr class="separator:a9088c8f060e1fe7e12445fb2f9b99bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf1125853e83c16e1ce9704c761d7b9c"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c">colorbutton_color7</a></td></tr>
+<tr class="separator:adf1125853e83c16e1ce9704c761d7b9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b6e2744506a9e396d8cbae0529356bb"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb">colorbutton_color8</a></td></tr>
+<tr class="separator:a1b6e2744506a9e396d8cbae0529356bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a280cb6d6e959c7e395a887defde7a485"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485">colorbutton_color9</a></td></tr>
+<tr class="separator:a280cb6d6e959c7e395a887defde7a485"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9ea2466137b35ccef6896126954bc1a"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a">colorbutton_color10</a></td></tr>
+<tr class="separator:ad9ea2466137b35ccef6896126954bc1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46e2af690d5d39c6d3ec2c07431d76a8"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8">colorbutton_color11</a></td></tr>
+<tr class="separator:a46e2af690d5d39c6d3ec2c07431d76a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a995f847743fb828f3400559cea4fff35"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35">colorbutton_color12</a></td></tr>
+<tr class="separator:a995f847743fb828f3400559cea4fff35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a61d9daaf87c47c073e474498a1a15c"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c">colorbutton_color13</a></td></tr>
+<tr class="separator:a7a61d9daaf87c47c073e474498a1a15c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b8e7072d5c4b5c8b5e57714130f973d"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d">colorbutton_color14</a></td></tr>
+<tr class="separator:a4b8e7072d5c4b5c8b5e57714130f973d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa63edd53778f0eba2e610690fb8002a3"><td class="memItemLeft" align="right" valign="top">GtkColorButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3">colorbutton_color15</a></td></tr>
+<tr class="separator:aa63edd53778f0eba2e610690fb8002a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fe278a66ed7fba91a944df3c60dd7b6"><td class="memItemLeft" align="right" valign="top">GtkFileChooser *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6">button_term_cs</a></td></tr>
+<tr class="separator:a3fe278a66ed7fba91a944df3c60dd7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a270f2b3596d5f836b0db47b21b049fcb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb">priv</a></td></tr>
+<tr class="separator:a270f2b3596d5f836b0db47b21b049fcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a597cc3d6e631babe57df7a472cbb2876"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a597cc3d6e631babe57df7a472cbb2876">&#9670;&nbsp;</a></span>builder</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* _RemminaPrefDialog::builder</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aa618b528fc78d3253f0fc2c5ffacbde2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa618b528fc78d3253f0fc2c5ffacbde2">&#9670;&nbsp;</a></span>button_keyboard_auto_fit</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_auto_fit</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00092">92</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a1b100c8bbb0b01229b240a035defd45f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b100c8bbb0b01229b240a035defd45f">&#9670;&nbsp;</a></span>button_keyboard_copy</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_copy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00111">111</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ae6eb4e606ae2e199435754728d723ce1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6eb4e606ae2e199435754728d723ce1">&#9670;&nbsp;</a></span>button_keyboard_disconnect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_disconnect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00100">100</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a33d785a31072bb4ce865ae048cc14fc2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33d785a31072bb4ce865ae048cc14fc2">&#9670;&nbsp;</a></span>button_keyboard_fullscreen</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_fullscreen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00091">91</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a8f34c1336ad9efc4679c6e449bec7a97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f34c1336ad9efc4679c6e449bec7a97">&#9670;&nbsp;</a></span>button_keyboard_grab_keyboard</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_grab_keyboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00096">96</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6cf1e8aa7d474aacc471b625d6330826"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cf1e8aa7d474aacc471b625d6330826">&#9670;&nbsp;</a></span>button_keyboard_host_key</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_host_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00090">90</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a1138eed66b8fe0a2386ee07ec33557be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1138eed66b8fe0a2386ee07ec33557be">&#9670;&nbsp;</a></span>button_keyboard_minimize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_minimize</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00099">99</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="af0b14d180d9dcabf9e79b98094bbae74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0b14d180d9dcabf9e79b98094bbae74">&#9670;&nbsp;</a></span>button_keyboard_paste</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_paste</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00112">112</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="adc48fc8abfc2c8e06fea5d42d9790ec9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc48fc8abfc2c8e06fea5d42d9790ec9">&#9670;&nbsp;</a></span>button_keyboard_scaled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_scaled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00095">95</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6e24f37d348137f4ee4fa783180f7b94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e24f37d348137f4ee4fa783180f7b94">&#9670;&nbsp;</a></span>button_keyboard_screenshot</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_screenshot</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00097">97</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="afccd66623eb7bb1ec233a241e97e80f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afccd66623eb7bb1ec233a241e97e80f0">&#9670;&nbsp;</a></span>button_keyboard_select_all</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_select_all</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00113">113</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a9cd6e07816b16f7f94f55193426af4e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9cd6e07816b16f7f94f55193426af4e0">&#9670;&nbsp;</a></span>button_keyboard_switch_tab_left</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_switch_tab_left</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00093">93</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ae2c902d8ab3e2cb84eaec25d597afac8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2c902d8ab3e2cb84eaec25d597afac8">&#9670;&nbsp;</a></span>button_keyboard_switch_tab_right</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_switch_tab_right</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00094">94</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aa8077d5e8254495ddee87c6baafb07a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8077d5e8254495ddee87c6baafb07a5">&#9670;&nbsp;</a></span>button_keyboard_toolbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_toolbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00101">101</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="af3245723de79398df91fe0e440c0e327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3245723de79398df91fe0e440c0e327">&#9670;&nbsp;</a></span>button_keyboard_viewonly</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_keyboard_viewonly</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00098">98</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a159eb84f43ce9ed81b92b6e260839af6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a159eb84f43ce9ed81b92b6e260839af6">&#9670;&nbsp;</a></span>button_options_recent_items_clear</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_options_recent_items_clear</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00081">81</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6fb085d3efced0a38d3d7d38e1eb5903"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6fb085d3efced0a38d3d7d38e1eb5903">&#9670;&nbsp;</a></span>button_options_resolutions</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaPrefDialog::button_options_resolutions</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00082">82</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a3fe278a66ed7fba91a944df3c60dd7b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fe278a66ed7fba91a944df3c60dd7b6">&#9670;&nbsp;</a></span>button_term_cs</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkFileChooser* _RemminaPrefDialog::button_term_cs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00134">134</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ad87514b86ed3f9b5980bf6c565343b87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad87514b86ed3f9b5980bf6c565343b87">&#9670;&nbsp;</a></span>checkbutton_appearance_fullscreen_on_auto</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_appearance_fullscreen_on_auto</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a41f551c6f21f4a448e4c5ec1186240fd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41f551c6f21f4a448e4c5ec1186240fd">&#9670;&nbsp;</a></span>checkbutton_appearance_hide_searchbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_appearance_hide_searchbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c6b01300d82ee50a036fc9fb758cb1f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c6b01300d82ee50a036fc9fb758cb1f">&#9670;&nbsp;</a></span>checkbutton_appearance_hide_toolbar</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_appearance_hide_toolbar</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a120e306368b8fc06841c2fc2d48778c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a120e306368b8fc06841c2fc2d48778c5">&#9670;&nbsp;</a></span>checkbutton_appearance_show_tabs</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_appearance_show_tabs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="acaf49bcad1a8975b1ab0de2c241ff912"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acaf49bcad1a8975b1ab0de2c241ff912">&#9670;&nbsp;</a></span>checkbutton_applet_disable_tray</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_applet_disable_tray</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00086">86</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aa6e591a542ea2a29a5a00e2bf411d2c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6e591a542ea2a29a5a00e2bf411d2c6">&#9670;&nbsp;</a></span>checkbutton_applet_hide_totals</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_applet_hide_totals</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00085">85</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a277ea20324585713697f7d9572b965f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a277ea20324585713697f7d9572b965f1">&#9670;&nbsp;</a></span>checkbutton_applet_light_tray</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_applet_light_tray</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00087">87</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7e7d1f3f754e55464a80fcd8d448c47c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e7d1f3f754e55464a80fcd8d448c47c">&#9670;&nbsp;</a></span>checkbutton_applet_new_connection_on_top</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_applet_new_connection_on_top</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00084">84</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a3a830a938ddb7dde8a580e108a7ad028"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a830a938ddb7dde8a580e108a7ad028">&#9670;&nbsp;</a></span>checkbutton_applet_start_in_tray</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_applet_start_in_tray</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00088">88</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a26ad416987608d6c6f0a98ba9d611119"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a26ad416987608d6c6f0a98ba9d611119">&#9670;&nbsp;</a></span>checkbutton_options_save_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_options_save_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aad290cb37b80d5295452ad1fd4322acc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aad290cb37b80d5295452ad1fd4322acc">&#9670;&nbsp;</a></span>checkbutton_options_ssh_parseconfig</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCheckButton* _RemminaPrefDialog::checkbutton_options_ssh_parseconfig</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00073">73</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="adda92d5335d281571b58a40f3ebe95d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adda92d5335d281571b58a40f3ebe95d4">&#9670;&nbsp;</a></span>colorbutton_background</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_background</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00109">109</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a877c22a6809bb846cc6555c4100ef877"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a877c22a6809bb846cc6555c4100ef877">&#9670;&nbsp;</a></span>colorbutton_color0</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00118">118</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a8d88c38e27116711851bfb573e90b811"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8d88c38e27116711851bfb573e90b811">&#9670;&nbsp;</a></span>colorbutton_color1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00119">119</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ad9ea2466137b35ccef6896126954bc1a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9ea2466137b35ccef6896126954bc1a">&#9670;&nbsp;</a></span>colorbutton_color10</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color10</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00128">128</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a46e2af690d5d39c6d3ec2c07431d76a8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46e2af690d5d39c6d3ec2c07431d76a8">&#9670;&nbsp;</a></span>colorbutton_color11</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color11</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00129">129</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a995f847743fb828f3400559cea4fff35"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a995f847743fb828f3400559cea4fff35">&#9670;&nbsp;</a></span>colorbutton_color12</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color12</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00130">130</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7a61d9daaf87c47c073e474498a1a15c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a61d9daaf87c47c073e474498a1a15c">&#9670;&nbsp;</a></span>colorbutton_color13</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color13</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00131">131</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a4b8e7072d5c4b5c8b5e57714130f973d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4b8e7072d5c4b5c8b5e57714130f973d">&#9670;&nbsp;</a></span>colorbutton_color14</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color14</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00132">132</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aa63edd53778f0eba2e610690fb8002a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa63edd53778f0eba2e610690fb8002a3">&#9670;&nbsp;</a></span>colorbutton_color15</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color15</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00133">133</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a95129b25f045ca6f0bc90323b755aebb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95129b25f045ca6f0bc90323b755aebb">&#9670;&nbsp;</a></span>colorbutton_color2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00120">120</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a2ce8a15918b4f58702d1063afbbc5a4a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ce8a15918b4f58702d1063afbbc5a4a">&#9670;&nbsp;</a></span>colorbutton_color3</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00121">121</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="afa66945e979adc91f4956efb11115a2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa66945e979adc91f4956efb11115a2f">&#9670;&nbsp;</a></span>colorbutton_color4</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00122">122</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a4f80906dcdf81e03e383e38b8ca568a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f80906dcdf81e03e383e38b8ca568a3">&#9670;&nbsp;</a></span>colorbutton_color5</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color5</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00123">123</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a9088c8f060e1fe7e12445fb2f9b99bc3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9088c8f060e1fe7e12445fb2f9b99bc3">&#9670;&nbsp;</a></span>colorbutton_color6</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00124">124</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="adf1125853e83c16e1ce9704c761d7b9c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf1125853e83c16e1ce9704c761d7b9c">&#9670;&nbsp;</a></span>colorbutton_color7</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color7</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00125">125</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a1b6e2744506a9e396d8cbae0529356bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1b6e2744506a9e396d8cbae0529356bb">&#9670;&nbsp;</a></span>colorbutton_color8</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00126">126</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a280cb6d6e959c7e395a887defde7a485"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a280cb6d6e959c7e395a887defde7a485">&#9670;&nbsp;</a></span>colorbutton_color9</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_color9</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00127">127</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6bf0904ad661465e2a522b7dced372ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6bf0904ad661465e2a522b7dced372ab">&#9670;&nbsp;</a></span>colorbutton_cursor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_cursor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00117">117</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a956db17e48d1c446df7677d3e9f917e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a956db17e48d1c446df7677d3e9f917e2">&#9670;&nbsp;</a></span>colorbutton_foreground</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkColorButton* _RemminaPrefDialog::colorbutton_foreground</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00107">107</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7af362b8421b6f066d4d9d737a01ebfb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7af362b8421b6f066d4d9d737a01ebfb">&#9670;&nbsp;</a></span>comboboxtext_appearance_fullscreen_toolbar_visibility</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_appearance_fullscreen_toolbar_visibility</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00072">72</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a4a8bc03207480e0e616794ea5efc71f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a8bc03207480e0e616794ea5efc71f6">&#9670;&nbsp;</a></span>comboboxtext_appearance_tab_interface</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_appearance_tab_interface</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a917c214ab0662ebd06db3eb7f7c47bf2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a917c214ab0662ebd06db3eb7f7c47bf2">&#9670;&nbsp;</a></span>comboboxtext_appearance_view_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_appearance_view_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a86e2ecb7e448ef661c2857de7b724061"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86e2ecb7e448ef661c2857de7b724061">&#9670;&nbsp;</a></span>comboboxtext_options_double_click</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_options_double_click</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00067">67</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a5e3df5e92bbf0aec0f317216de88681d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e3df5e92bbf0aec0f317216de88681d">&#9670;&nbsp;</a></span>comboboxtext_options_scale_quality</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_options_scale_quality</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00070">70</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a517186be14ab61d72d6212592b958972"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a517186be14ab61d72d6212592b958972">&#9670;&nbsp;</a></span>comboboxtext_options_ssh_loglevel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkComboBox* _RemminaPrefDialog::comboboxtext_options_ssh_loglevel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00071">71</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="af145d83f411becab1a1f35787dd2196c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af145d83f411becab1a1f35787dd2196c">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* _RemminaPrefDialog::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d87faf3df58b2fc1e09a33fd07c4d0c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d87faf3df58b2fc1e09a33fd07c4d0c">&#9670;&nbsp;</a></span>entry_options_file_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_file_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00052">52</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a85b8819ff553f86a5ad8f7fd1a7aa531"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a85b8819ff553f86a5ad8f7fd1a7aa531">&#9670;&nbsp;</a></span>entry_options_recent_items</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_recent_items</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00080">80</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6e763bfa2b2c507744f4773cd81f3571"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e763bfa2b2c507744f4773cd81f3571">&#9670;&nbsp;</a></span>entry_options_screenshot_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_screenshot_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ac15ed49a7e4ab8926bf4385737e0382b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac15ed49a7e4ab8926bf4385737e0382b">&#9670;&nbsp;</a></span>entry_options_scroll</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_scroll</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00079">79</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a745d3114e3cef2c572b859530926ad40"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a745d3114e3cef2c572b859530926ad40">&#9670;&nbsp;</a></span>entry_options_ssh_port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_ssh_port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00074">74</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7a269ccc996f2b110e1aa33228ca3db0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a269ccc996f2b110e1aa33228ca3db0">&#9670;&nbsp;</a></span>entry_options_ssh_tcp_keepcnt</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_ssh_tcp_keepcnt</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00077">77</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6cea3c4860e9889953a6a22c72672d32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cea3c4860e9889953a6a22c72672d32">&#9670;&nbsp;</a></span>entry_options_ssh_tcp_keepidle</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_ssh_tcp_keepidle</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00075">75</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a2a76560d15a613524e38d22934843196"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a76560d15a613524e38d22934843196">&#9670;&nbsp;</a></span>entry_options_ssh_tcp_keepintvl</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_ssh_tcp_keepintvl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00076">76</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a9e7984859dc88bab77503b175fc4d8c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9e7984859dc88bab77503b175fc4d8c7">&#9670;&nbsp;</a></span>entry_options_ssh_tcp_usrtimeout</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_options_ssh_tcp_usrtimeout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00078">78</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ae26ffa1d95468ab0e3a85a22aa074189"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae26ffa1d95468ab0e3a85a22aa074189">&#9670;&nbsp;</a></span>entry_scrollback_lines</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::entry_scrollback_lines</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00110">110</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ab4c71aaab278901ae411d68abf97a123"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4c71aaab278901ae411d68abf97a123">&#9670;&nbsp;</a></span>filechooserbutton_options_datadir_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkFileChooser* _RemminaPrefDialog::filechooserbutton_options_datadir_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ae766dd561f1bf23723306f7a70015f27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae766dd561f1bf23723306f7a70015f27">&#9670;&nbsp;</a></span>filechooserbutton_options_screenshots_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkFileChooser* _RemminaPrefDialog::filechooserbutton_options_screenshots_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="af3997f4513793f2b6ba71a54c55c78bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3997f4513793f2b6ba71a54c55c78bb">&#9670;&nbsp;</a></span>fontbutton_terminal_font</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkFontButton* _RemminaPrefDialog::fontbutton_terminal_font</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00104">104</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a066bf2941261efad64c5942a69a6e33d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a066bf2941261efad64c5942a69a6e33d">&#9670;&nbsp;</a></span>label_terminal_background</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaPrefDialog::label_terminal_background</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00108">108</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="aca3d7c47a24dc2722496670937a57cbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca3d7c47a24dc2722496670937a57cbb">&#9670;&nbsp;</a></span>label_terminal_bright_colors</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaPrefDialog::label_terminal_bright_colors</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00116">116</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a16f07e2dad152f37ebbabdba18346ff3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16f07e2dad152f37ebbabdba18346ff3">&#9670;&nbsp;</a></span>label_terminal_cursor_color</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaPrefDialog::label_terminal_cursor_color</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00114">114</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a341e052b4a78587530b63975b7edc92d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a341e052b4a78587530b63975b7edc92d">&#9670;&nbsp;</a></span>label_terminal_foreground</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaPrefDialog::label_terminal_foreground</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00106">106</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a62227d6671d78e7387e727c92d79c92e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62227d6671d78e7387e727c92d79c92e">&#9670;&nbsp;</a></span>label_terminal_normal_colors</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaPrefDialog::label_terminal_normal_colors</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00115">115</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a07e738aa428d0aa99503058e1c0a5f11"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a07e738aa428d0aa99503058e1c0a5f11">&#9670;&nbsp;</a></span>notebook_preferences</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkNotebook* _RemminaPrefDialog::notebook_preferences</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00049">49</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a270f2b3596d5f836b0db47b21b049fcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a270f2b3596d5f836b0db47b21b049fcb">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__pref__dialog_8h.html#aeba55bfe8ab83707f2e68034061a3dd2">RemminaPrefDialogPriv</a>* _RemminaPrefDialog::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00136">136</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ad92dc760283fa996f40a976bcc3f3d2d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad92dc760283fa996f40a976bcc3f3d2d">&#9670;&nbsp;</a></span>switch_options_deny_screenshot_clipboard</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_options_deny_screenshot_clipboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7ab49071b369069912565f3e0a8b000b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7ab49071b369069912565f3e0a8b000b">&#9670;&nbsp;</a></span>switch_options_remember_last_view_mode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_options_remember_last_view_mode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a7aa4cc48f6f7ecf608f5fcf2b4147b18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7aa4cc48f6f7ecf608f5fcf2b4147b18">&#9670;&nbsp;</a></span>switch_permit_send_stats</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_permit_send_stats</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00066">66</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="af9cc0aee7b72d2b3da5a193b8e7b0171"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9cc0aee7b72d2b3da5a193b8e7b0171">&#9670;&nbsp;</a></span>switch_security_use_master_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_security_use_master_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a6a01f6f8247a97a94b8855902a14a980"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a01f6f8247a97a94b8855902a14a980">&#9670;&nbsp;</a></span>switch_terminal_bold</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_terminal_bold</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00105">105</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="ac1628fda7c9fc362575002733d4adf46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1628fda7c9fc362575002733d4adf46">&#9670;&nbsp;</a></span>switch_terminal_font_system</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSwitch* _RemminaPrefDialog::switch_terminal_font_system</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00103">103</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a4592c110729ee7d530712da1d7fdc097"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4592c110729ee7d530712da1d7fdc097">&#9670;&nbsp;</a></span>unlock_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::unlock_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a66b5ccfa48e93ed57dd5aae00039c39b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66b5ccfa48e93ed57dd5aae00039c39b">&#9670;&nbsp;</a></span>unlock_repassword</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::unlock_repassword</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<a id="a0b6b038291c02fd29f2fc6cd04135b97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b6b038291c02fd29f2fc6cd04135b97">&#9670;&nbsp;</a></span>unlock_timeout</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaPrefDialog::unlock_timeout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_pref_dialog.html">_RemminaPrefDialog</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_pref_dialog.js b/docs/struct___remmina_pref_dialog.js
new file mode 100644
index 000000000..3378b1e33
--- /dev/null
+++ b/docs/struct___remmina_pref_dialog.js
@@ -0,0 +1,88 @@
+var struct___remmina_pref_dialog =
+[
+ [ "builder", "struct___remmina_pref_dialog.html#a597cc3d6e631babe57df7a472cbb2876", null ],
+ [ "button_keyboard_auto_fit", "struct___remmina_pref_dialog.html#aa618b528fc78d3253f0fc2c5ffacbde2", null ],
+ [ "button_keyboard_copy", "struct___remmina_pref_dialog.html#a1b100c8bbb0b01229b240a035defd45f", null ],
+ [ "button_keyboard_disconnect", "struct___remmina_pref_dialog.html#ae6eb4e606ae2e199435754728d723ce1", null ],
+ [ "button_keyboard_fullscreen", "struct___remmina_pref_dialog.html#a33d785a31072bb4ce865ae048cc14fc2", null ],
+ [ "button_keyboard_grab_keyboard", "struct___remmina_pref_dialog.html#a8f34c1336ad9efc4679c6e449bec7a97", null ],
+ [ "button_keyboard_host_key", "struct___remmina_pref_dialog.html#a6cf1e8aa7d474aacc471b625d6330826", null ],
+ [ "button_keyboard_minimize", "struct___remmina_pref_dialog.html#a1138eed66b8fe0a2386ee07ec33557be", null ],
+ [ "button_keyboard_paste", "struct___remmina_pref_dialog.html#af0b14d180d9dcabf9e79b98094bbae74", null ],
+ [ "button_keyboard_scaled", "struct___remmina_pref_dialog.html#adc48fc8abfc2c8e06fea5d42d9790ec9", null ],
+ [ "button_keyboard_screenshot", "struct___remmina_pref_dialog.html#a6e24f37d348137f4ee4fa783180f7b94", null ],
+ [ "button_keyboard_select_all", "struct___remmina_pref_dialog.html#afccd66623eb7bb1ec233a241e97e80f0", null ],
+ [ "button_keyboard_switch_tab_left", "struct___remmina_pref_dialog.html#a9cd6e07816b16f7f94f55193426af4e0", null ],
+ [ "button_keyboard_switch_tab_right", "struct___remmina_pref_dialog.html#ae2c902d8ab3e2cb84eaec25d597afac8", null ],
+ [ "button_keyboard_toolbar", "struct___remmina_pref_dialog.html#aa8077d5e8254495ddee87c6baafb07a5", null ],
+ [ "button_keyboard_viewonly", "struct___remmina_pref_dialog.html#af3245723de79398df91fe0e440c0e327", null ],
+ [ "button_options_recent_items_clear", "struct___remmina_pref_dialog.html#a159eb84f43ce9ed81b92b6e260839af6", null ],
+ [ "button_options_resolutions", "struct___remmina_pref_dialog.html#a6fb085d3efced0a38d3d7d38e1eb5903", null ],
+ [ "button_term_cs", "struct___remmina_pref_dialog.html#a3fe278a66ed7fba91a944df3c60dd7b6", null ],
+ [ "checkbutton_appearance_fullscreen_on_auto", "struct___remmina_pref_dialog.html#ad87514b86ed3f9b5980bf6c565343b87", null ],
+ [ "checkbutton_appearance_hide_searchbar", "struct___remmina_pref_dialog.html#a41f551c6f21f4a448e4c5ec1186240fd", null ],
+ [ "checkbutton_appearance_hide_toolbar", "struct___remmina_pref_dialog.html#a4c6b01300d82ee50a036fc9fb758cb1f", null ],
+ [ "checkbutton_appearance_show_tabs", "struct___remmina_pref_dialog.html#a120e306368b8fc06841c2fc2d48778c5", null ],
+ [ "checkbutton_applet_disable_tray", "struct___remmina_pref_dialog.html#acaf49bcad1a8975b1ab0de2c241ff912", null ],
+ [ "checkbutton_applet_hide_totals", "struct___remmina_pref_dialog.html#aa6e591a542ea2a29a5a00e2bf411d2c6", null ],
+ [ "checkbutton_applet_light_tray", "struct___remmina_pref_dialog.html#a277ea20324585713697f7d9572b965f1", null ],
+ [ "checkbutton_applet_new_connection_on_top", "struct___remmina_pref_dialog.html#a7e7d1f3f754e55464a80fcd8d448c47c", null ],
+ [ "checkbutton_applet_start_in_tray", "struct___remmina_pref_dialog.html#a3a830a938ddb7dde8a580e108a7ad028", null ],
+ [ "checkbutton_options_save_settings", "struct___remmina_pref_dialog.html#a26ad416987608d6c6f0a98ba9d611119", null ],
+ [ "checkbutton_options_ssh_parseconfig", "struct___remmina_pref_dialog.html#aad290cb37b80d5295452ad1fd4322acc", null ],
+ [ "colorbutton_background", "struct___remmina_pref_dialog.html#adda92d5335d281571b58a40f3ebe95d4", null ],
+ [ "colorbutton_color0", "struct___remmina_pref_dialog.html#a877c22a6809bb846cc6555c4100ef877", null ],
+ [ "colorbutton_color1", "struct___remmina_pref_dialog.html#a8d88c38e27116711851bfb573e90b811", null ],
+ [ "colorbutton_color10", "struct___remmina_pref_dialog.html#ad9ea2466137b35ccef6896126954bc1a", null ],
+ [ "colorbutton_color11", "struct___remmina_pref_dialog.html#a46e2af690d5d39c6d3ec2c07431d76a8", null ],
+ [ "colorbutton_color12", "struct___remmina_pref_dialog.html#a995f847743fb828f3400559cea4fff35", null ],
+ [ "colorbutton_color13", "struct___remmina_pref_dialog.html#a7a61d9daaf87c47c073e474498a1a15c", null ],
+ [ "colorbutton_color14", "struct___remmina_pref_dialog.html#a4b8e7072d5c4b5c8b5e57714130f973d", null ],
+ [ "colorbutton_color15", "struct___remmina_pref_dialog.html#aa63edd53778f0eba2e610690fb8002a3", null ],
+ [ "colorbutton_color2", "struct___remmina_pref_dialog.html#a95129b25f045ca6f0bc90323b755aebb", null ],
+ [ "colorbutton_color3", "struct___remmina_pref_dialog.html#a2ce8a15918b4f58702d1063afbbc5a4a", null ],
+ [ "colorbutton_color4", "struct___remmina_pref_dialog.html#afa66945e979adc91f4956efb11115a2f", null ],
+ [ "colorbutton_color5", "struct___remmina_pref_dialog.html#a4f80906dcdf81e03e383e38b8ca568a3", null ],
+ [ "colorbutton_color6", "struct___remmina_pref_dialog.html#a9088c8f060e1fe7e12445fb2f9b99bc3", null ],
+ [ "colorbutton_color7", "struct___remmina_pref_dialog.html#adf1125853e83c16e1ce9704c761d7b9c", null ],
+ [ "colorbutton_color8", "struct___remmina_pref_dialog.html#a1b6e2744506a9e396d8cbae0529356bb", null ],
+ [ "colorbutton_color9", "struct___remmina_pref_dialog.html#a280cb6d6e959c7e395a887defde7a485", null ],
+ [ "colorbutton_cursor", "struct___remmina_pref_dialog.html#a6bf0904ad661465e2a522b7dced372ab", null ],
+ [ "colorbutton_foreground", "struct___remmina_pref_dialog.html#a956db17e48d1c446df7677d3e9f917e2", null ],
+ [ "comboboxtext_appearance_fullscreen_toolbar_visibility", "struct___remmina_pref_dialog.html#a7af362b8421b6f066d4d9d737a01ebfb", null ],
+ [ "comboboxtext_appearance_tab_interface", "struct___remmina_pref_dialog.html#a4a8bc03207480e0e616794ea5efc71f6", null ],
+ [ "comboboxtext_appearance_view_mode", "struct___remmina_pref_dialog.html#a917c214ab0662ebd06db3eb7f7c47bf2", null ],
+ [ "comboboxtext_options_double_click", "struct___remmina_pref_dialog.html#a86e2ecb7e448ef661c2857de7b724061", null ],
+ [ "comboboxtext_options_scale_quality", "struct___remmina_pref_dialog.html#a5e3df5e92bbf0aec0f317216de88681d", null ],
+ [ "comboboxtext_options_ssh_loglevel", "struct___remmina_pref_dialog.html#a517186be14ab61d72d6212592b958972", null ],
+ [ "dialog", "struct___remmina_pref_dialog.html#af145d83f411becab1a1f35787dd2196c", null ],
+ [ "entry_options_file_name", "struct___remmina_pref_dialog.html#a5d87faf3df58b2fc1e09a33fd07c4d0c", null ],
+ [ "entry_options_recent_items", "struct___remmina_pref_dialog.html#a85b8819ff553f86a5ad8f7fd1a7aa531", null ],
+ [ "entry_options_screenshot_name", "struct___remmina_pref_dialog.html#a6e763bfa2b2c507744f4773cd81f3571", null ],
+ [ "entry_options_scroll", "struct___remmina_pref_dialog.html#ac15ed49a7e4ab8926bf4385737e0382b", null ],
+ [ "entry_options_ssh_port", "struct___remmina_pref_dialog.html#a745d3114e3cef2c572b859530926ad40", null ],
+ [ "entry_options_ssh_tcp_keepcnt", "struct___remmina_pref_dialog.html#a7a269ccc996f2b110e1aa33228ca3db0", null ],
+ [ "entry_options_ssh_tcp_keepidle", "struct___remmina_pref_dialog.html#a6cea3c4860e9889953a6a22c72672d32", null ],
+ [ "entry_options_ssh_tcp_keepintvl", "struct___remmina_pref_dialog.html#a2a76560d15a613524e38d22934843196", null ],
+ [ "entry_options_ssh_tcp_usrtimeout", "struct___remmina_pref_dialog.html#a9e7984859dc88bab77503b175fc4d8c7", null ],
+ [ "entry_scrollback_lines", "struct___remmina_pref_dialog.html#ae26ffa1d95468ab0e3a85a22aa074189", null ],
+ [ "filechooserbutton_options_datadir_path", "struct___remmina_pref_dialog.html#ab4c71aaab278901ae411d68abf97a123", null ],
+ [ "filechooserbutton_options_screenshots_path", "struct___remmina_pref_dialog.html#ae766dd561f1bf23723306f7a70015f27", null ],
+ [ "fontbutton_terminal_font", "struct___remmina_pref_dialog.html#af3997f4513793f2b6ba71a54c55c78bb", null ],
+ [ "label_terminal_background", "struct___remmina_pref_dialog.html#a066bf2941261efad64c5942a69a6e33d", null ],
+ [ "label_terminal_bright_colors", "struct___remmina_pref_dialog.html#aca3d7c47a24dc2722496670937a57cbb", null ],
+ [ "label_terminal_cursor_color", "struct___remmina_pref_dialog.html#a16f07e2dad152f37ebbabdba18346ff3", null ],
+ [ "label_terminal_foreground", "struct___remmina_pref_dialog.html#a341e052b4a78587530b63975b7edc92d", null ],
+ [ "label_terminal_normal_colors", "struct___remmina_pref_dialog.html#a62227d6671d78e7387e727c92d79c92e", null ],
+ [ "notebook_preferences", "struct___remmina_pref_dialog.html#a07e738aa428d0aa99503058e1c0a5f11", null ],
+ [ "priv", "struct___remmina_pref_dialog.html#a270f2b3596d5f836b0db47b21b049fcb", null ],
+ [ "switch_options_deny_screenshot_clipboard", "struct___remmina_pref_dialog.html#ad92dc760283fa996f40a976bcc3f3d2d", null ],
+ [ "switch_options_remember_last_view_mode", "struct___remmina_pref_dialog.html#a7ab49071b369069912565f3e0a8b000b", null ],
+ [ "switch_permit_send_stats", "struct___remmina_pref_dialog.html#a7aa4cc48f6f7ecf608f5fcf2b4147b18", null ],
+ [ "switch_security_use_master_password", "struct___remmina_pref_dialog.html#af9cc0aee7b72d2b3da5a193b8e7b0171", null ],
+ [ "switch_terminal_bold", "struct___remmina_pref_dialog.html#a6a01f6f8247a97a94b8855902a14a980", null ],
+ [ "switch_terminal_font_system", "struct___remmina_pref_dialog.html#ac1628fda7c9fc362575002733d4adf46", null ],
+ [ "unlock_password", "struct___remmina_pref_dialog.html#a4592c110729ee7d530712da1d7fdc097", null ],
+ [ "unlock_repassword", "struct___remmina_pref_dialog.html#a66b5ccfa48e93ed57dd5aae00039c39b", null ],
+ [ "unlock_timeout", "struct___remmina_pref_dialog.html#a0b6b038291c02fd29f2fc6cd04135b97", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_pref_dialog_priv.html b/docs/struct___remmina_pref_dialog_priv.html
new file mode 100644
index 000000000..63691848b
--- /dev/null
+++ b/docs/struct___remmina_pref_dialog_priv.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPrefDialogPriv Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_pref_dialog_priv.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPrefDialogPriv Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae835f35a6211b2858701e4a3be835f05"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05">resolutions_list</a></td></tr>
+<tr class="separator:ae835f35a6211b2858701e4a3be835f05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ae835f35a6211b2858701e4a3be835f05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae835f35a6211b2858701e4a3be835f05">&#9670;&nbsp;</a></span>resolutions_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaPrefDialogPriv::resolutions_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__pref__dialog_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__pref__dialog_8h_source.html">remmina_pref_dialog.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_pref_dialog_priv.html">_RemminaPrefDialogPriv</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_pref_dialog_priv.js b/docs/struct___remmina_pref_dialog_priv.js
new file mode 100644
index 000000000..c0212f8bd
--- /dev/null
+++ b/docs/struct___remmina_pref_dialog_priv.js
@@ -0,0 +1,4 @@
+var struct___remmina_pref_dialog_priv =
+[
+ [ "resolutions_list", "struct___remmina_pref_dialog_priv.html#ae835f35a6211b2858701e4a3be835f05", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_pref_plugin.html b/docs/struct___remmina_pref_plugin.html
new file mode 100644
index 000000000..474240cd0
--- /dev/null
+++ b/docs/struct___remmina_pref_plugin.html
@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaPrefPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_pref_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaPrefPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ade323f1200f3aae6e5b580c764467522"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522">type</a></td></tr>
+<tr class="separator:ade323f1200f3aae6e5b580c764467522"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab77d73c001e013228ed77b1418a210b"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b">name</a></td></tr>
+<tr class="separator:aab77d73c001e013228ed77b1418a210b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31f24f29db7e806ccf65f19fb88133b0"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0">description</a></td></tr>
+<tr class="separator:a31f24f29db7e806ccf65f19fb88133b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a036be229f8b3797c3e0ad4913c7cdf"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf">domain</a></td></tr>
+<tr class="separator:a4a036be229f8b3797c3e0ad4913c7cdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dcdfe2a1aa15b61834d0146a3367c3d"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d">version</a></td></tr>
+<tr class="separator:a5dcdfe2a1aa15b61834d0146a3367c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ea805605a462db2ce7912ef05a4fd9d"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d">pref_label</a></td></tr>
+<tr class="separator:a9ea805605a462db2ce7912ef05a4fd9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a691d1ca711b31813c15a58e18161b989"><td class="memItemLeft" align="right" valign="top">GtkWidget *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989">get_pref_body</a> )(void)</td></tr>
+<tr class="separator:a691d1ca711b31813c15a58e18161b989"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00118">118</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a31f24f29db7e806ccf65f19fb88133b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a31f24f29db7e806ccf65f19fb88133b0">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPrefPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00121">121</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4a036be229f8b3797c3e0ad4913c7cdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4a036be229f8b3797c3e0ad4913c7cdf">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPrefPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00122">122</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a691d1ca711b31813c15a58e18161b989"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a691d1ca711b31813c15a58e18161b989">&#9670;&nbsp;</a></span>get_pref_body</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget*(* _RemminaPrefPlugin::get_pref_body) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00126">126</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aab77d73c001e013228ed77b1418a210b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab77d73c001e013228ed77b1418a210b">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPrefPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00120">120</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9ea805605a462db2ce7912ef05a4fd9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ea805605a462db2ce7912ef05a4fd9d">&#9670;&nbsp;</a></span>pref_label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPrefPlugin::pref_label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00125">125</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ade323f1200f3aae6e5b580c764467522"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade323f1200f3aae6e5b580c764467522">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaPrefPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00119">119</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5dcdfe2a1aa15b61834d0146a3367c3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5dcdfe2a1aa15b61834d0146a3367c3d">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaPrefPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00123">123</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_pref_plugin.html">_RemminaPrefPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_pref_plugin.js b/docs/struct___remmina_pref_plugin.js
new file mode 100644
index 000000000..b94f1aabc
--- /dev/null
+++ b/docs/struct___remmina_pref_plugin.js
@@ -0,0 +1,10 @@
+var struct___remmina_pref_plugin =
+[
+ [ "description", "struct___remmina_pref_plugin.html#a31f24f29db7e806ccf65f19fb88133b0", null ],
+ [ "domain", "struct___remmina_pref_plugin.html#a4a036be229f8b3797c3e0ad4913c7cdf", null ],
+ [ "get_pref_body", "struct___remmina_pref_plugin.html#a691d1ca711b31813c15a58e18161b989", null ],
+ [ "name", "struct___remmina_pref_plugin.html#aab77d73c001e013228ed77b1418a210b", null ],
+ [ "pref_label", "struct___remmina_pref_plugin.html#a9ea805605a462db2ce7912ef05a4fd9d", null ],
+ [ "type", "struct___remmina_pref_plugin.html#ade323f1200f3aae6e5b580c764467522", null ],
+ [ "version", "struct___remmina_pref_plugin.html#a5dcdfe2a1aa15b61834d0146a3367c3d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_feature.html b/docs/struct___remmina_protocol_feature.html
new file mode 100644
index 000000000..a0b907505
--- /dev/null
+++ b/docs/struct___remmina_protocol_feature.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolFeature Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_feature.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolFeature Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="types_8h_source.html">types.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a1826baafd2d7b5dc8a009ef4fcad77e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a></td></tr>
+<tr class="separator:a1826baafd2d7b5dc8a009ef4fcad77e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36b55faeba78528ac9708dfa66667e20"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a></td></tr>
+<tr class="separator:a36b55faeba78528ac9708dfa66667e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ac5ec9d95867734619583a2049e952"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a></td></tr>
+<tr class="separator:aa7ac5ec9d95867734619583a2049e952"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab44850c13a7e5e20a02603ae173d53d"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a></td></tr>
+<tr class="separator:aab44850c13a7e5e20a02603ae173d53d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3c15094a16418c5951c5382c8a44190"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a></td></tr>
+<tr class="separator:ab3c15094a16418c5951c5382c8a44190"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00056">56</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a36b55faeba78528ac9708dfa66667e20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36b55faeba78528ac9708dfa66667e20">&#9670;&nbsp;</a></span>id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaProtocolFeature::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00058">58</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="aa7ac5ec9d95867734619583a2049e952"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa7ac5ec9d95867734619583a2049e952">&#9670;&nbsp;</a></span>opt1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaProtocolFeature::opt1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00059">59</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="aab44850c13a7e5e20a02603ae173d53d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab44850c13a7e5e20a02603ae173d53d">&#9670;&nbsp;</a></span>opt2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaProtocolFeature::opt2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00060">60</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="ab3c15094a16418c5951c5382c8a44190"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3c15094a16418c5951c5382c8a44190">&#9670;&nbsp;</a></span>opt3</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaProtocolFeature::opt3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00061">61</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a1826baafd2d7b5dc8a009ef4fcad77e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1826baafd2d7b5dc8a009ef4fcad77e9">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> _RemminaProtocolFeature::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00057">57</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="types_8h_source.html">types.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_feature.js b/docs/struct___remmina_protocol_feature.js
new file mode 100644
index 000000000..8b8b84bea
--- /dev/null
+++ b/docs/struct___remmina_protocol_feature.js
@@ -0,0 +1,8 @@
+var struct___remmina_protocol_feature =
+[
+ [ "id", "struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20", null ],
+ [ "opt1", "struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952", null ],
+ [ "opt2", "struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d", null ],
+ [ "opt3", "struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190", null ],
+ [ "type", "struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_plugin.html b/docs/struct___remmina_protocol_plugin.html
new file mode 100644
index 000000000..f3e77e3e6
--- /dev/null
+++ b/docs/struct___remmina_protocol_plugin.html
@@ -0,0 +1,440 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac783acfaf93007d0100bd02f1faff7f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0">type</a></td></tr>
+<tr class="separator:ac783acfaf93007d0100bd02f1faff7f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e04143450eeb71e3d0b2c14983860a4"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a></td></tr>
+<tr class="separator:a6e04143450eeb71e3d0b2c14983860a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bac82016e8b61d3c63b2e427be3ec70"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70">description</a></td></tr>
+<tr class="separator:a9bac82016e8b61d3c63b2e427be3ec70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61bee777a81714c80bed22d0cf8e13ae"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae">domain</a></td></tr>
+<tr class="separator:a61bee777a81714c80bed22d0cf8e13ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f3cd7ad27c78a1670de3f42414861ff"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff">version</a></td></tr>
+<tr class="separator:a3f3cd7ad27c78a1670de3f42414861ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9552c70a10eea2b8263dbc7d05e2fb10"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10">icon_name</a></td></tr>
+<tr class="separator:a9552c70a10eea2b8263dbc7d05e2fb10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a4c7d195e85a1428abf82e952ff4df3"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3">icon_name_ssh</a></td></tr>
+<tr class="separator:a8a4c7d195e85a1428abf82e952ff4df3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae09a7e2c978cc36e85d0f295518978d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d">basic_settings</a></td></tr>
+<tr class="separator:aae09a7e2c978cc36e85d0f295518978d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aceb00d9dff794500ccb04a1373eb32db"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db">advanced_settings</a></td></tr>
+<tr class="separator:aceb00d9dff794500ccb04a1373eb32db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5727804eb3f5cd4a4a40acb98df76bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb">ssh_setting</a></td></tr>
+<tr class="separator:aa5727804eb3f5cd4a4a40acb98df76bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa1a3a21c504b386cecfb42d1c9e6bff"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff">features</a></td></tr>
+<tr class="separator:afa1a3a21c504b386cecfb42d1c9e6bff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d9e2f2eb2594411e6fe63cde443dfb2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2">init</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a3d9e2f2eb2594411e6fe63cde443dfb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2e965f3997d21a1e08d365c74e615bd"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd">open_connection</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad2e965f3997d21a1e08d365c74e615bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b21147a7592bf689c9f761d9e4fdc2"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2">close_connection</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad4b21147a7592bf689c9f761d9e4fdc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa49520ac95b505c111abfb7f3b7c55de"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de">query_feature</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:aa49520ac95b505c111abfb7f3b7c55de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4908abc6c70c59c42e2757aecaa25cf1"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1">call_feature</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a4908abc6c70c59c42e2757aecaa25cf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92bb5524267ad4fe682fc07f778500d7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7">send_keystrokes</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td></tr>
+<tr class="separator:a92bb5524267ad4fe682fc07f778500d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4778e62aa78baace7d46fb1c4a475c4"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4">get_plugin_screenshot</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td></tr>
+<tr class="separator:ad4778e62aa78baace7d46fb1c4a475c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00061">61</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aceb00d9dff794500ccb04a1373eb32db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aceb00d9dff794500ccb04a1373eb32db">&#9670;&nbsp;</a></span>advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>* _RemminaProtocolPlugin::advanced_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00071">71</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aae09a7e2c978cc36e85d0f295518978d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae09a7e2c978cc36e85d0f295518978d">&#9670;&nbsp;</a></span>basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>* _RemminaProtocolPlugin::basic_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00070">70</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4908abc6c70c59c42e2757aecaa25cf1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4908abc6c70c59c42e2757aecaa25cf1">&#9670;&nbsp;</a></span>call_feature</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolPlugin::call_feature) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00079">79</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad4b21147a7592bf689c9f761d9e4fdc2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4b21147a7592bf689c9f761d9e4fdc2">&#9670;&nbsp;</a></span>close_connection</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaProtocolPlugin::close_connection) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00077">77</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9bac82016e8b61d3c63b2e427be3ec70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9bac82016e8b61d3c63b2e427be3ec70">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00064">64</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a61bee777a81714c80bed22d0cf8e13ae"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a61bee777a81714c80bed22d0cf8e13ae">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00065">65</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="afa1a3a21c504b386cecfb42d1c9e6bff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa1a3a21c504b386cecfb42d1c9e6bff">&#9670;&nbsp;</a></span>features</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>* _RemminaProtocolPlugin::features</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00073">73</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad4778e62aa78baace7d46fb1c4a475c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4778e62aa78baace7d46fb1c4a475c4">&#9670;&nbsp;</a></span>get_plugin_screenshot</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaProtocolPlugin::get_plugin_screenshot) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00081">81</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9552c70a10eea2b8263dbc7d05e2fb10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9552c70a10eea2b8263dbc7d05e2fb10">&#9670;&nbsp;</a></span>icon_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::icon_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00068">68</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8a4c7d195e85a1428abf82e952ff4df3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a4c7d195e85a1428abf82e952ff4df3">&#9670;&nbsp;</a></span>icon_name_ssh</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::icon_name_ssh</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00069">69</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3d9e2f2eb2594411e6fe63cde443dfb2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3d9e2f2eb2594411e6fe63cde443dfb2">&#9670;&nbsp;</a></span>init</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolPlugin::init) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00075">75</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a6e04143450eeb71e3d0b2c14983860a4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e04143450eeb71e3d0b2c14983860a4">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00063">63</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad2e965f3997d21a1e08d365c74e615bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad2e965f3997d21a1e08d365c74e615bd">&#9670;&nbsp;</a></span>open_connection</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaProtocolPlugin::open_connection) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00076">76</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa49520ac95b505c111abfb7f3b7c55de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa49520ac95b505c111abfb7f3b7c55de">&#9670;&nbsp;</a></span>query_feature</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaProtocolPlugin::query_feature) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00078">78</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a92bb5524267ad4fe682fc07f778500d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92bb5524267ad4fe682fc07f778500d7">&#9670;&nbsp;</a></span>send_keystrokes</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolPlugin::send_keystrokes) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00080">80</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa5727804eb3f5cd4a4a40acb98df76bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa5727804eb3f5cd4a4a40acb98df76bb">&#9670;&nbsp;</a></span>ssh_setting</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> _RemminaProtocolPlugin::ssh_setting</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00072">72</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac783acfaf93007d0100bd02f1faff7f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac783acfaf93007d0100bd02f1faff7f0">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaProtocolPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00062">62</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3f3cd7ad27c78a1670de3f42414861ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f3cd7ad27c78a1670de3f42414861ff">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00066">66</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_plugin.js b/docs/struct___remmina_protocol_plugin.js
new file mode 100644
index 000000000..ee1841131
--- /dev/null
+++ b/docs/struct___remmina_protocol_plugin.js
@@ -0,0 +1,21 @@
+var struct___remmina_protocol_plugin =
+[
+ [ "advanced_settings", "struct___remmina_protocol_plugin.html#aceb00d9dff794500ccb04a1373eb32db", null ],
+ [ "basic_settings", "struct___remmina_protocol_plugin.html#aae09a7e2c978cc36e85d0f295518978d", null ],
+ [ "call_feature", "struct___remmina_protocol_plugin.html#a4908abc6c70c59c42e2757aecaa25cf1", null ],
+ [ "close_connection", "struct___remmina_protocol_plugin.html#ad4b21147a7592bf689c9f761d9e4fdc2", null ],
+ [ "description", "struct___remmina_protocol_plugin.html#a9bac82016e8b61d3c63b2e427be3ec70", null ],
+ [ "domain", "struct___remmina_protocol_plugin.html#a61bee777a81714c80bed22d0cf8e13ae", null ],
+ [ "features", "struct___remmina_protocol_plugin.html#afa1a3a21c504b386cecfb42d1c9e6bff", null ],
+ [ "get_plugin_screenshot", "struct___remmina_protocol_plugin.html#ad4778e62aa78baace7d46fb1c4a475c4", null ],
+ [ "icon_name", "struct___remmina_protocol_plugin.html#a9552c70a10eea2b8263dbc7d05e2fb10", null ],
+ [ "icon_name_ssh", "struct___remmina_protocol_plugin.html#a8a4c7d195e85a1428abf82e952ff4df3", null ],
+ [ "init", "struct___remmina_protocol_plugin.html#a3d9e2f2eb2594411e6fe63cde443dfb2", null ],
+ [ "name", "struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4", null ],
+ [ "open_connection", "struct___remmina_protocol_plugin.html#ad2e965f3997d21a1e08d365c74e615bd", null ],
+ [ "query_feature", "struct___remmina_protocol_plugin.html#aa49520ac95b505c111abfb7f3b7c55de", null ],
+ [ "send_keystrokes", "struct___remmina_protocol_plugin.html#a92bb5524267ad4fe682fc07f778500d7", null ],
+ [ "ssh_setting", "struct___remmina_protocol_plugin.html#aa5727804eb3f5cd4a4a40acb98df76bb", null ],
+ [ "type", "struct___remmina_protocol_plugin.html#ac783acfaf93007d0100bd02f1faff7f0", null ],
+ [ "version", "struct___remmina_protocol_plugin.html#a3f3cd7ad27c78a1670de3f42414861ff", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_setting.html b/docs/struct___remmina_protocol_setting.html
new file mode 100644
index 000000000..6327f7f86
--- /dev/null
+++ b/docs/struct___remmina_protocol_setting.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolSetting Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_setting.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolSetting Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="types_8h_source.html">types.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a6274d44b592a54162ff583135e55ffc9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a></td></tr>
+<tr class="separator:a6274d44b592a54162ff583135e55ffc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4cd339607204c5f478727e2a0c04857"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a></td></tr>
+<tr class="separator:ac4cd339607204c5f478727e2a0c04857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a5b063deb126422c461203c074a3dc4"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a></td></tr>
+<tr class="separator:a7a5b063deb126422c461203c074a3dc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab434990a6fe70b7e8a4a8b11129527a6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">compact</a></td></tr>
+<tr class="separator:ab434990a6fe70b7e8a4a8b11129527a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af533231bb1281d09d98a14d3d218fba0"><td class="memItemLeft" align="right" valign="top">const gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a></td></tr>
+<tr class="separator:af533231bb1281d09d98a14d3d218fba0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4d859a06af12d7ce5b20cc8ff815167"><td class="memItemLeft" align="right" valign="top">const gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a></td></tr>
+<tr class="separator:ac4d859a06af12d7ce5b20cc8ff815167"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00094">94</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ab434990a6fe70b7e8a4a8b11129527a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab434990a6fe70b7e8a4a8b11129527a6">&#9670;&nbsp;</a></span>compact</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolSetting::compact</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00098">98</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a7a5b063deb126422c461203c074a3dc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a5b063deb126422c461203c074a3dc4">&#9670;&nbsp;</a></span>label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolSetting::label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00097">97</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="ac4cd339607204c5f478727e2a0c04857"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4cd339607204c5f478727e2a0c04857">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolSetting::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00096">96</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="af533231bb1281d09d98a14d3d218fba0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af533231bb1281d09d98a14d3d218fba0">&#9670;&nbsp;</a></span>opt1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gpointer _RemminaProtocolSetting::opt1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00099">99</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="ac4d859a06af12d7ce5b20cc8ff815167"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac4d859a06af12d7ce5b20cc8ff815167">&#9670;&nbsp;</a></span>opt2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gpointer _RemminaProtocolSetting::opt2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00100">100</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a6274d44b592a54162ff583135e55ffc9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6274d44b592a54162ff583135e55ffc9">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a> _RemminaProtocolSetting::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00095">95</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="types_8h_source.html">types.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_setting.js b/docs/struct___remmina_protocol_setting.js
new file mode 100644
index 000000000..a2477711d
--- /dev/null
+++ b/docs/struct___remmina_protocol_setting.js
@@ -0,0 +1,9 @@
+var struct___remmina_protocol_setting =
+[
+ [ "compact", "struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6", null ],
+ [ "label", "struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4", null ],
+ [ "name", "struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857", null ],
+ [ "opt1", "struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0", null ],
+ [ "opt2", "struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167", null ],
+ [ "type", "struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_setting_opt.html b/docs/struct___remmina_protocol_setting_opt.html
new file mode 100644
index 000000000..0bdddde8a
--- /dev/null
+++ b/docs/struct___remmina_protocol_setting_opt.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolSettingOpt Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_setting_opt.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolSettingOpt Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a97876b0782030bdcba99839ba5e42f1a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a">type</a></td></tr>
+<tr class="separator:a97876b0782030bdcba99839ba5e42f1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4633900a166b397de7b8f276ac7e0fea"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea">name</a></td></tr>
+<tr class="separator:a4633900a166b397de7b8f276ac7e0fea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30495a4edaa2dacfb0dfcb906d68deed"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed">label</a></td></tr>
+<tr class="separator:a30495a4edaa2dacfb0dfcb906d68deed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d4d2d1c3aff12f60831e0b03afcd4dc"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc">compact</a></td></tr>
+<tr class="separator:a4d4d2d1c3aff12f60831e0b03afcd4dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bc14b4167bf3be572d404b941f15a20"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20">opt1</a></td></tr>
+<tr class="separator:a3bc14b4167bf3be572d404b941f15a20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a783e0ee287289146050b45add2f6d867"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867">opt2</a></td></tr>
+<tr class="separator:a783e0ee287289146050b45add2f6d867"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a4d4d2d1c3aff12f60831e0b03afcd4dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d4d2d1c3aff12f60831e0b03afcd4dc">&#9670;&nbsp;</a></span>compact</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolSettingOpt::compact</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a30495a4edaa2dacfb0dfcb906d68deed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30495a4edaa2dacfb0dfcb906d68deed">&#9670;&nbsp;</a></span>label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolSettingOpt::label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4633900a166b397de7b8f276ac7e0fea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4633900a166b397de7b8f276ac7e0fea">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolSettingOpt::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00049">49</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3bc14b4167bf3be572d404b941f15a20"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3bc14b4167bf3be572d404b941f15a20">&#9670;&nbsp;</a></span>opt1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaProtocolSettingOpt::opt1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00052">52</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a783e0ee287289146050b45add2f6d867"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a783e0ee287289146050b45add2f6d867">&#9670;&nbsp;</a></span>opt2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaProtocolSettingOpt::opt2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a97876b0782030bdcba99839ba5e42f1a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97876b0782030bdcba99839ba5e42f1a">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a> _RemminaProtocolSettingOpt::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh__plugin_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh__plugin_8h_source.html">remmina_ssh_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_setting_opt.html">_RemminaProtocolSettingOpt</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_setting_opt.js b/docs/struct___remmina_protocol_setting_opt.js
new file mode 100644
index 000000000..7595dca2b
--- /dev/null
+++ b/docs/struct___remmina_protocol_setting_opt.js
@@ -0,0 +1,9 @@
+var struct___remmina_protocol_setting_opt =
+[
+ [ "compact", "struct___remmina_protocol_setting_opt.html#a4d4d2d1c3aff12f60831e0b03afcd4dc", null ],
+ [ "label", "struct___remmina_protocol_setting_opt.html#a30495a4edaa2dacfb0dfcb906d68deed", null ],
+ [ "name", "struct___remmina_protocol_setting_opt.html#a4633900a166b397de7b8f276ac7e0fea", null ],
+ [ "opt1", "struct___remmina_protocol_setting_opt.html#a3bc14b4167bf3be572d404b941f15a20", null ],
+ [ "opt2", "struct___remmina_protocol_setting_opt.html#a783e0ee287289146050b45add2f6d867", null ],
+ [ "type", "struct___remmina_protocol_setting_opt.html#a97876b0782030bdcba99839ba5e42f1a", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_widget.html b/docs/struct___remmina_protocol_widget.html
new file mode 100644
index 000000000..2e630bb76
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolWidget Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_widget.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolWidget Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a95ded9fdbd7d1180d9172c9a1eeb9bfc"><td class="memItemLeft" align="right" valign="top">GtkEventBox&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc">event_box</a></td></tr>
+<tr class="separator:a95ded9fdbd7d1180d9172c9a1eeb9bfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae1dfb6ff52460c80a3adf80d4934f67"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67">cnnobj</a></td></tr>
+<tr class="separator:aae1dfb6ff52460c80a3adf80d4934f67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18a9b0b9c8e619b3bdee881d7601f6d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">RemminaProtocolWidgetPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6">priv</a></td></tr>
+<tr class="separator:a18a9b0b9c8e619b3bdee881d7601f6d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aae1dfb6ff52460c80a3adf80d4934f67"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae1dfb6ff52460c80a3adf80d4934f67">&#9670;&nbsp;</a></span>cnnobj</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a>* _RemminaProtocolWidget::cnnobj</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="a95ded9fdbd7d1180d9172c9a1eeb9bfc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95ded9fdbd7d1180d9172c9a1eeb9bfc">&#9670;&nbsp;</a></span>event_box</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEventBox _RemminaProtocolWidget::event_box</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="a18a9b0b9c8e619b3bdee881d7601f6d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18a9b0b9c8e619b3bdee881d7601f6d6">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__protocol__widget_8h.html#af0c9f34cf823d03994aacc083d832c19">RemminaProtocolWidgetPriv</a>* _RemminaProtocolWidget::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_widget.js b/docs/struct___remmina_protocol_widget.js
new file mode 100644
index 000000000..467d97623
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget.js
@@ -0,0 +1,6 @@
+var struct___remmina_protocol_widget =
+[
+ [ "cnnobj", "struct___remmina_protocol_widget.html#aae1dfb6ff52460c80a3adf80d4934f67", null ],
+ [ "event_box", "struct___remmina_protocol_widget.html#a95ded9fdbd7d1180d9172c9a1eeb9bfc", null ],
+ [ "priv", "struct___remmina_protocol_widget.html#a18a9b0b9c8e619b3bdee881d7601f6d6", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_widget_class.html b/docs/struct___remmina_protocol_widget_class.html
new file mode 100644
index 000000000..336ee9eaf
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_class.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolWidgetClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_widget_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolWidgetClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aa6b1be03dfc5554195f6fbc9bb4f50f2"><td class="memItemLeft" align="right" valign="top">GtkEventBoxClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2">parent_class</a></td></tr>
+<tr class="separator:aa6b1be03dfc5554195f6fbc9bb4f50f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cf457e2e48c9c2b831b0c8a4f88c760"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760">connect</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5cf457e2e48c9c2b831b0c8a4f88c760"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d723669f6520949e5e0b47e8f2c5213"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213">disconnect</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5d723669f6520949e5e0b47e8f2c5213"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afab4068813bba5630bed6b6000dacb1b"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b">desktop_resize</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:afab4068813bba5630bed6b6000dacb1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbb1fd035466ac82e208e76adfaf9e99"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99">update_align</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acbb1fd035466ac82e208e76adfaf9e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49409472ef2062977ac80f236de454d3"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3">unlock_dynres</a> )(<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a49409472ef2062977ac80f236de454d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a5cf457e2e48c9c2b831b0c8a4f88c760"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cf457e2e48c9c2b831b0c8a4f88c760">&#9670;&nbsp;</a></span>connect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolWidgetClass::connect) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00066">66</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="afab4068813bba5630bed6b6000dacb1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afab4068813bba5630bed6b6000dacb1b">&#9670;&nbsp;</a></span>desktop_resize</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolWidgetClass::desktop_resize) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d723669f6520949e5e0b47e8f2c5213"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d723669f6520949e5e0b47e8f2c5213">&#9670;&nbsp;</a></span>disconnect</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolWidgetClass::disconnect) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00067">67</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="aa6b1be03dfc5554195f6fbc9bb4f50f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6b1be03dfc5554195f6fbc9bb4f50f2">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEventBoxClass _RemminaProtocolWidgetClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="a49409472ef2062977ac80f236de454d3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a49409472ef2062977ac80f236de454d3">&#9670;&nbsp;</a></span>unlock_dynres</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolWidgetClass::unlock_dynres) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00070">70</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<a id="acbb1fd035466ac82e208e76adfaf9e99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acbb1fd035466ac82e208e76adfaf9e99">&#9670;&nbsp;</a></span>update_align</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaProtocolWidgetClass::update_align) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8h_source.html">remmina_protocol_widget.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_widget_class.js b/docs/struct___remmina_protocol_widget_class.js
new file mode 100644
index 000000000..0602352f6
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_class.js
@@ -0,0 +1,9 @@
+var struct___remmina_protocol_widget_class =
+[
+ [ "connect", "struct___remmina_protocol_widget_class.html#a5cf457e2e48c9c2b831b0c8a4f88c760", null ],
+ [ "desktop_resize", "struct___remmina_protocol_widget_class.html#afab4068813bba5630bed6b6000dacb1b", null ],
+ [ "disconnect", "struct___remmina_protocol_widget_class.html#a5d723669f6520949e5e0b47e8f2c5213", null ],
+ [ "parent_class", "struct___remmina_protocol_widget_class.html#aa6b1be03dfc5554195f6fbc9bb4f50f2", null ],
+ [ "unlock_dynres", "struct___remmina_protocol_widget_class.html#a49409472ef2062977ac80f236de454d3", null ],
+ [ "update_align", "struct___remmina_protocol_widget_class.html#acbb1fd035466ac82e208e76adfaf9e99", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_widget_priv.html b/docs/struct___remmina_protocol_widget_priv.html
new file mode 100644
index 000000000..22b9369b2
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_priv.html
@@ -0,0 +1,600 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolWidgetPriv Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_widget_priv.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolWidgetPriv Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a0f1ee4a3ddb7afe518588dce3046f5ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec">remmina_file</a></td></tr>
+<tr class="separator:a0f1ee4a3ddb7afe518588dce3046f5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2381772c96a26aafc98d347d210dbfe0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0">plugin</a></td></tr>
+<tr class="separator:a2381772c96a26aafc98d347d210dbfe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca49dce014d8471be0d3cfe29cc7a35d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d">features</a></td></tr>
+<tr class="separator:aca49dce014d8471be0d3cfe29cc7a35d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cbea00dcc608759fcf66186e6afde93"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93">width</a></td></tr>
+<tr class="separator:a5cbea00dcc608759fcf66186e6afde93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af72272c7e2f45d61130ab4e57eb86380"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380">height</a></td></tr>
+<tr class="separator:af72272c7e2f45d61130ab4e57eb86380"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa37ce53d4329aaaa7c4059c60882a533"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533">scalemode</a></td></tr>
+<tr class="separator:aa37ce53d4329aaaa7c4059c60882a533"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94ef3b8e64d6ced7cd639b7917026f4c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c">scaler_expand</a></td></tr>
+<tr class="separator:a94ef3b8e64d6ced7cd639b7917026f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75d5f7d146f04132de722d0b7d09bb7d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d">has_error</a></td></tr>
+<tr class="separator:a75d5f7d146f04132de722d0b7d09bb7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac57e5a1ac6fc21f95e0fb3e70745cf4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4">error_message</a></td></tr>
+<tr class="separator:aac57e5a1ac6fc21f95e0fb3e70745cf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a277fd3954a4f89c6ddddd68f4ffb5116"><td class="memItemLeft" align="right" valign="top">GPtrArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116">ssh_tunnels</a></td></tr>
+<tr class="separator:a277fd3954a4f89c6ddddd68f4ffb5116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41a28954660d2d3816630e2ef9bb4211"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211">init_func</a></td></tr>
+<tr class="separator:a41a28954660d2d3816630e2ef9bb4211"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a006867628dec1d7b23404a690c967f4e"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e">chat_window</a></td></tr>
+<tr class="separator:a006867628dec1d7b23404a690c967f4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8700f21cfca6167fc9c4abe37c2d99b6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6">closed</a></td></tr>
+<tr class="separator:a8700f21cfca6167fc9c4abe37c2d99b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac613cf4b362b9dfc25e66f9d265e9326"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326">hostkey_func</a></td></tr>
+<tr class="separator:ac613cf4b362b9dfc25e66f9d265e9326"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaab2e0d0706684150d0ee572e2490a10"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10">profile_remote_width</a></td></tr>
+<tr class="separator:aaab2e0d0706684150d0ee572e2490a10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93da102535413a0b3b1b740b582444ca"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca">profile_remote_height</a></td></tr>
+<tr class="separator:a93da102535413a0b3b1b740b582444ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a708ea5b5a9d1f5dcc5ab5bfb3d1a8483"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">connect_message_panel</a></td></tr>
+<tr class="separator:a708ea5b5a9d1f5dcc5ab5bfb3d1a8483"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70cdb4f879e8bb26b23d05cbbe685640"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640">listen_message_panel</a></td></tr>
+<tr class="separator:a70cdb4f879e8bb26b23d05cbbe685640"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a24677077c069fbbb1f17e747530e1b"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b">auth_message_panel</a></td></tr>
+<tr class="separator:a6a24677077c069fbbb1f17e747530e1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3feb5e5dad00109813fac890d913885"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885">username</a></td></tr>
+<tr class="separator:ae3feb5e5dad00109813fac890d913885"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11a8aa051088d48b389c8385d03a65f7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7">password</a></td></tr>
+<tr class="separator:a11a8aa051088d48b389c8385d03a65f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d7cf2572439242b4f70e97b7f71405f"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f">domain</a></td></tr>
+<tr class="separator:a1d7cf2572439242b4f70e97b7f71405f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c8675e38544a9c393b560b31d165791"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791">save_password</a></td></tr>
+<tr class="separator:a7c8675e38544a9c393b560b31d165791"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c5f3bd1f990157bef034920db49dc6e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e">cacert</a></td></tr>
+<tr class="separator:a2c5f3bd1f990157bef034920db49dc6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9db6b4306852214f3dc2cdc06a635b4"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4">cacrl</a></td></tr>
+<tr class="separator:af9db6b4306852214f3dc2cdc06a635b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37bd29fa334e378eff4367d61ee59e05"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05">clientcert</a></td></tr>
+<tr class="separator:a37bd29fa334e378eff4367d61ee59e05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae76f074f8613e3f3b01c26eb3ce194f0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0">clientkey</a></td></tr>
+<tr class="separator:ae76f074f8613e3f3b01c26eb3ce194f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6a24677077c069fbbb1f17e747530e1b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a24677077c069fbbb1f17e747530e1b">&#9670;&nbsp;</a></span>auth_message_panel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* _RemminaProtocolWidgetPriv::auth_message_panel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00090">90</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2c5f3bd1f990157bef034920db49dc6e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c5f3bd1f990157bef034920db49dc6e">&#9670;&nbsp;</a></span>cacert</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::cacert</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00098">98</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="af9db6b4306852214f3dc2cdc06a635b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9db6b4306852214f3dc2cdc06a635b4">&#9670;&nbsp;</a></span>cacrl</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::cacrl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00099">99</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a006867628dec1d7b23404a690c967f4e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a006867628dec1d7b23404a690c967f4e">&#9670;&nbsp;</a></span>chat_window</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaProtocolWidgetPriv::chat_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00079">79</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a37bd29fa334e378eff4367d61ee59e05"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37bd29fa334e378eff4367d61ee59e05">&#9670;&nbsp;</a></span>clientcert</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::clientcert</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00100">100</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae76f074f8613e3f3b01c26eb3ce194f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae76f074f8613e3f3b01c26eb3ce194f0">&#9670;&nbsp;</a></span>clientkey</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::clientkey</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00101">101</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a8700f21cfca6167fc9c4abe37c2d99b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8700f21cfca6167fc9c4abe37c2d99b6">&#9670;&nbsp;</a></span>closed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolWidgetPriv::closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00081">81</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a708ea5b5a9d1f5dcc5ab5bfb3d1a8483"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483">&#9670;&nbsp;</a></span>connect_message_panel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* _RemminaProtocolWidgetPriv::connect_message_panel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00088">88</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a1d7cf2572439242b4f70e97b7f71405f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1d7cf2572439242b4f70e97b7f71405f">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00095">95</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aac57e5a1ac6fc21f95e0fb3e70745cf4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac57e5a1ac6fc21f95e0fb3e70745cf4">&#9670;&nbsp;</a></span>error_message</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::error_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00073">73</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aca49dce014d8471be0d3cfe29cc7a35d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca49dce014d8471be0d3cfe29cc7a35d">&#9670;&nbsp;</a></span>features</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>* _RemminaProtocolWidgetPriv::features</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00065">65</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a75d5f7d146f04132de722d0b7d09bb7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75d5f7d146f04132de722d0b7d09bb7d">&#9670;&nbsp;</a></span>has_error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolWidgetPriv::has_error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00072">72</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="af72272c7e2f45d61130ab4e57eb86380"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af72272c7e2f45d61130ab4e57eb86380">&#9670;&nbsp;</a></span>height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaProtocolWidgetPriv::height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00068">68</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ac613cf4b362b9dfc25e66f9d265e9326"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac613cf4b362b9dfc25e66f9d265e9326">&#9670;&nbsp;</a></span>hostkey_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__protocol__widget_8h.html#ab89fba118812616a3e47504cfe4f3390">RemminaHostkeyFunc</a> _RemminaProtocolWidgetPriv::hostkey_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00083">83</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a41a28954660d2d3816630e2ef9bb4211"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41a28954660d2d3816630e2ef9bb4211">&#9670;&nbsp;</a></span>init_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a> _RemminaProtocolWidgetPriv::init_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a70cdb4f879e8bb26b23d05cbbe685640"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70cdb4f879e8bb26b23d05cbbe685640">&#9670;&nbsp;</a></span>listen_message_panel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* _RemminaProtocolWidgetPriv::listen_message_panel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00089">89</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a11a8aa051088d48b389c8385d03a65f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a11a8aa051088d48b389c8385d03a65f7">&#9670;&nbsp;</a></span>password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00094">94</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2381772c96a26aafc98d347d210dbfe0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2381772c96a26aafc98d347d210dbfe0">&#9670;&nbsp;</a></span>plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>* _RemminaProtocolWidgetPriv::plugin</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a93da102535413a0b3b1b740b582444ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93da102535413a0b3b1b740b582444ca">&#9670;&nbsp;</a></span>profile_remote_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaProtocolWidgetPriv::profile_remote_height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00086">86</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aaab2e0d0706684150d0ee572e2490a10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaab2e0d0706684150d0ee572e2490a10">&#9670;&nbsp;</a></span>profile_remote_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaProtocolWidgetPriv::profile_remote_width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00085">85</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a0f1ee4a3ddb7afe518588dce3046f5ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0f1ee4a3ddb7afe518588dce3046f5ec">&#9670;&nbsp;</a></span>remmina_file</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* _RemminaProtocolWidgetPriv::remmina_file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00063">63</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a7c8675e38544a9c393b560b31d165791"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c8675e38544a9c393b560b31d165791">&#9670;&nbsp;</a></span>save_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolWidgetPriv::save_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00096">96</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aa37ce53d4329aaaa7c4059c60882a533"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa37ce53d4329aaaa7c4059c60882a533">&#9670;&nbsp;</a></span>scalemode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> _RemminaProtocolWidgetPriv::scalemode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a94ef3b8e64d6ced7cd639b7917026f4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94ef3b8e64d6ced7cd639b7917026f4c">&#9670;&nbsp;</a></span>scaler_expand</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaProtocolWidgetPriv::scaler_expand</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00070">70</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a277fd3954a4f89c6ddddd68f4ffb5116"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a277fd3954a4f89c6ddddd68f4ffb5116">&#9670;&nbsp;</a></span>ssh_tunnels</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GPtrArray* _RemminaProtocolWidgetPriv::ssh_tunnels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ae3feb5e5dad00109813fac890d913885"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae3feb5e5dad00109813fac890d913885">&#9670;&nbsp;</a></span>username</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaProtocolWidgetPriv::username</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00093">93</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5cbea00dcc608759fcf66186e6afde93"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cbea00dcc608759fcf66186e6afde93">&#9670;&nbsp;</a></span>width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaProtocolWidgetPriv::width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_widget_priv.html">_RemminaProtocolWidgetPriv</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_widget_priv.js b/docs/struct___remmina_protocol_widget_priv.js
new file mode 100644
index 000000000..a0171b69d
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_priv.js
@@ -0,0 +1,30 @@
+var struct___remmina_protocol_widget_priv =
+[
+ [ "auth_message_panel", "struct___remmina_protocol_widget_priv.html#a6a24677077c069fbbb1f17e747530e1b", null ],
+ [ "cacert", "struct___remmina_protocol_widget_priv.html#a2c5f3bd1f990157bef034920db49dc6e", null ],
+ [ "cacrl", "struct___remmina_protocol_widget_priv.html#af9db6b4306852214f3dc2cdc06a635b4", null ],
+ [ "chat_window", "struct___remmina_protocol_widget_priv.html#a006867628dec1d7b23404a690c967f4e", null ],
+ [ "clientcert", "struct___remmina_protocol_widget_priv.html#a37bd29fa334e378eff4367d61ee59e05", null ],
+ [ "clientkey", "struct___remmina_protocol_widget_priv.html#ae76f074f8613e3f3b01c26eb3ce194f0", null ],
+ [ "closed", "struct___remmina_protocol_widget_priv.html#a8700f21cfca6167fc9c4abe37c2d99b6", null ],
+ [ "connect_message_panel", "struct___remmina_protocol_widget_priv.html#a708ea5b5a9d1f5dcc5ab5bfb3d1a8483", null ],
+ [ "domain", "struct___remmina_protocol_widget_priv.html#a1d7cf2572439242b4f70e97b7f71405f", null ],
+ [ "error_message", "struct___remmina_protocol_widget_priv.html#aac57e5a1ac6fc21f95e0fb3e70745cf4", null ],
+ [ "features", "struct___remmina_protocol_widget_priv.html#aca49dce014d8471be0d3cfe29cc7a35d", null ],
+ [ "has_error", "struct___remmina_protocol_widget_priv.html#a75d5f7d146f04132de722d0b7d09bb7d", null ],
+ [ "height", "struct___remmina_protocol_widget_priv.html#af72272c7e2f45d61130ab4e57eb86380", null ],
+ [ "hostkey_func", "struct___remmina_protocol_widget_priv.html#ac613cf4b362b9dfc25e66f9d265e9326", null ],
+ [ "init_func", "struct___remmina_protocol_widget_priv.html#a41a28954660d2d3816630e2ef9bb4211", null ],
+ [ "listen_message_panel", "struct___remmina_protocol_widget_priv.html#a70cdb4f879e8bb26b23d05cbbe685640", null ],
+ [ "password", "struct___remmina_protocol_widget_priv.html#a11a8aa051088d48b389c8385d03a65f7", null ],
+ [ "plugin", "struct___remmina_protocol_widget_priv.html#a2381772c96a26aafc98d347d210dbfe0", null ],
+ [ "profile_remote_height", "struct___remmina_protocol_widget_priv.html#a93da102535413a0b3b1b740b582444ca", null ],
+ [ "profile_remote_width", "struct___remmina_protocol_widget_priv.html#aaab2e0d0706684150d0ee572e2490a10", null ],
+ [ "remmina_file", "struct___remmina_protocol_widget_priv.html#a0f1ee4a3ddb7afe518588dce3046f5ec", null ],
+ [ "save_password", "struct___remmina_protocol_widget_priv.html#a7c8675e38544a9c393b560b31d165791", null ],
+ [ "scalemode", "struct___remmina_protocol_widget_priv.html#aa37ce53d4329aaaa7c4059c60882a533", null ],
+ [ "scaler_expand", "struct___remmina_protocol_widget_priv.html#a94ef3b8e64d6ced7cd639b7917026f4c", null ],
+ [ "ssh_tunnels", "struct___remmina_protocol_widget_priv.html#a277fd3954a4f89c6ddddd68f4ffb5116", null ],
+ [ "username", "struct___remmina_protocol_widget_priv.html#ae3feb5e5dad00109813fac890d913885", null ],
+ [ "width", "struct___remmina_protocol_widget_priv.html#a5cbea00dcc608759fcf66186e6afde93", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_protocol_widget_signal_data.html b/docs/struct___remmina_protocol_widget_signal_data.html
new file mode 100644
index 000000000..2ce9bc894
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_signal_data.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaProtocolWidgetSignalData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_protocol_widget_signal_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaProtocolWidgetSignalData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a7a8b9ad6fdff86250a5eef649693d64a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a">gp</a></td></tr>
+<tr class="separator:a7a8b9ad6fdff86250a5eef649693d64a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2dfdc85f32d5eeed1d183088ac2a4ada"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada">signal_name</a></td></tr>
+<tr class="separator:a2dfdc85f32d5eeed1d183088ac2a4ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00121">121</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a7a8b9ad6fdff86250a5eef649693d64a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a8b9ad6fdff86250a5eef649693d64a">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* _RemminaProtocolWidgetSignalData::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00122">122</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a2dfdc85f32d5eeed1d183088ac2a4ada"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2dfdc85f32d5eeed1d183088ac2a4ada">&#9670;&nbsp;</a></span>signal_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaProtocolWidgetSignalData::signal_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l00123">123</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_protocol_widget_signal_data.html">_RemminaProtocolWidgetSignalData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_protocol_widget_signal_data.js b/docs/struct___remmina_protocol_widget_signal_data.js
new file mode 100644
index 000000000..5cc39d754
--- /dev/null
+++ b/docs/struct___remmina_protocol_widget_signal_data.js
@@ -0,0 +1,5 @@
+var struct___remmina_protocol_widget_signal_data =
+[
+ [ "gp", "struct___remmina_protocol_widget_signal_data.html#a7a8b9ad6fdff86250a5eef649693d64a", null ],
+ [ "signal_name", "struct___remmina_protocol_widget_signal_data.html#a2dfdc85f32d5eeed1d183088ac2a4ada", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_f_t_p.html b/docs/struct___remmina_s_f_t_p.html
new file mode 100644
index 000000000..9024aba72
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSFTP Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_f_t_p.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSFTP Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a7dab48a7603f1dd6671a8dd1efe1958e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e">ssh</a></td></tr>
+<tr class="separator:a7dab48a7603f1dd6671a8dd1efe1958e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adef92bcfa7b9a86debf0531d0239a5df"><td class="memItemLeft" align="right" valign="top">sftp_session&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df">sftp_sess</a></td></tr>
+<tr class="separator:adef92bcfa7b9a86debf0531d0239a5df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00222">222</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="adef92bcfa7b9a86debf0531d0239a5df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adef92bcfa7b9a86debf0531d0239a5df">&#9670;&nbsp;</a></span>sftp_sess</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">sftp_session _RemminaSFTP::sftp_sess</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00225">225</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a7dab48a7603f1dd6671a8dd1efe1958e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7dab48a7603f1dd6671a8dd1efe1958e">&#9670;&nbsp;</a></span>ssh</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> _RemminaSFTP::ssh</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00223">223</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_f_t_p.html">_RemminaSFTP</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_f_t_p.js b/docs/struct___remmina_s_f_t_p.js
new file mode 100644
index 000000000..e77cc5a37
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p.js
@@ -0,0 +1,5 @@
+var struct___remmina_s_f_t_p =
+[
+ [ "sftp_sess", "struct___remmina_s_f_t_p.html#adef92bcfa7b9a86debf0531d0239a5df", null ],
+ [ "ssh", "struct___remmina_s_f_t_p.html#a7dab48a7603f1dd6671a8dd1efe1958e", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_f_t_p_client.html b/docs/struct___remmina_s_f_t_p_client.html
new file mode 100644
index 000000000..7de0e13c3
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p_client.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSFTPClient Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_f_t_p_client.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSFTPClient Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a42cfd0524388c2c05ea4b926dbe966e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1">client</a></td></tr>
+<tr class="separator:a42cfd0524388c2c05ea4b926dbe966e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab74654f5e47c939e1098c183a582023c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c">sftp</a></td></tr>
+<tr class="separator:ab74654f5e47c939e1098c183a582023c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95d95acad60636dd6c45ca93620d1f5b"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b">thread</a></td></tr>
+<tr class="separator:a95d95acad60636dd6c45ca93620d1f5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c056e13ab45261dc4f07720910f3270"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270">taskid</a></td></tr>
+<tr class="separator:a6c056e13ab45261dc4f07720910f3270"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6c612bb5172905eb63bfd5b672e1875"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875">thread_abort</a></td></tr>
+<tr class="separator:ad6c612bb5172905eb63bfd5b672e1875"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f66c9db34816532a1c12de30c57f210"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210">gp</a></td></tr>
+<tr class="separator:a1f66c9db34816532a1c12de30c57f210"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a42cfd0524388c2c05ea4b926dbe966e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42cfd0524388c2c05ea4b926dbe966e1">&#9670;&nbsp;</a></span>client</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> _RemminaSFTPClient::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a1f66c9db34816532a1c12de30c57f210"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f66c9db34816532a1c12de30c57f210">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* _RemminaSFTPClient::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="ab74654f5e47c939e1098c183a582023c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab74654f5e47c939e1098c183a582023c">&#9670;&nbsp;</a></span>sftp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a8853669690f71506f9fe04ff08e2eaca">RemminaSFTP</a>* _RemminaSFTPClient::sftp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a6c056e13ab45261dc4f07720910f3270"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c056e13ab45261dc4f07720910f3270">&#9670;&nbsp;</a></span>taskid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSFTPClient::taskid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="a95d95acad60636dd6c45ca93620d1f5b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a95d95acad60636dd6c45ca93620d1f5b">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaSFTPClient::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<a id="ad6c612bb5172905eb63bfd5b672e1875"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6c612bb5172905eb63bfd5b672e1875">&#9670;&nbsp;</a></span>thread_abort</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSFTPClient::thread_abort</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_f_t_p_client.html">_RemminaSFTPClient</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_f_t_p_client.js b/docs/struct___remmina_s_f_t_p_client.js
new file mode 100644
index 000000000..78bd2960d
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p_client.js
@@ -0,0 +1,9 @@
+var struct___remmina_s_f_t_p_client =
+[
+ [ "client", "struct___remmina_s_f_t_p_client.html#a42cfd0524388c2c05ea4b926dbe966e1", null ],
+ [ "gp", "struct___remmina_s_f_t_p_client.html#a1f66c9db34816532a1c12de30c57f210", null ],
+ [ "sftp", "struct___remmina_s_f_t_p_client.html#ab74654f5e47c939e1098c183a582023c", null ],
+ [ "taskid", "struct___remmina_s_f_t_p_client.html#a6c056e13ab45261dc4f07720910f3270", null ],
+ [ "thread", "struct___remmina_s_f_t_p_client.html#a95d95acad60636dd6c45ca93620d1f5b", null ],
+ [ "thread_abort", "struct___remmina_s_f_t_p_client.html#ad6c612bb5172905eb63bfd5b672e1875", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_f_t_p_client_class.html b/docs/struct___remmina_s_f_t_p_client_class.html
new file mode 100644
index 000000000..c5f3827eb
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p_client_class.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSFTPClientClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_f_t_p_client_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSFTPClientClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac7786b1cfca2fcc92c85f10e4939f80d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d">parent_class</a></td></tr>
+<tr class="separator:ac7786b1cfca2fcc92c85f10e4939f80d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ac7786b1cfca2fcc92c85f10e4939f80d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac7786b1cfca2fcc92c85f10e4939f80d">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a083febe7a0060bd3aab6de3df3528069">RemminaFTPClientClass</a> _RemminaSFTPClientClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__sftp__client_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__sftp__client_8h_source.html">remmina_sftp_client.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_f_t_p_client_class.html">_RemminaSFTPClientClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_f_t_p_client_class.js b/docs/struct___remmina_s_f_t_p_client_class.js
new file mode 100644
index 000000000..2c233864d
--- /dev/null
+++ b/docs/struct___remmina_s_f_t_p_client_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_s_f_t_p_client_class =
+[
+ [ "parent_class", "struct___remmina_s_f_t_p_client_class.html#ac7786b1cfca2fcc92c85f10e4939f80d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_s_h.html b/docs/struct___remmina_s_s_h.html
new file mode 100644
index 000000000..41af04535
--- /dev/null
+++ b/docs/struct___remmina_s_s_h.html
@@ -0,0 +1,512 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSSH Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_s_h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSSH Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a46cdb47db9c0ce8c1ac267cb3d10bbb3"><td class="memItemLeft" align="right" valign="top">ssh_session&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3">session</a></td></tr>
+<tr class="separator:a46cdb47db9c0ce8c1ac267cb3d10bbb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8e75d0a635b3390100218bee6b49378"><td class="memItemLeft" align="right" valign="top">ssh_callbacks&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378">callback</a></td></tr>
+<tr class="separator:aa8e75d0a635b3390100218bee6b49378"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac148c436afa70f426d665b4ddd2d8f4d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d">authenticated</a></td></tr>
+<tr class="separator:ac148c436afa70f426d665b4ddd2d8f4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae396f0b535e2e92d640a0eb971aa082b"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b">server</a></td></tr>
+<tr class="separator:ae396f0b535e2e92d640a0eb971aa082b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa064626a7fd528e7d8c1fc34d1bd8dfc"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc">port</a></td></tr>
+<tr class="separator:aa064626a7fd528e7d8c1fc34d1bd8dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a8dc7679e22208bbdf076c520f25bbb"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb">user</a></td></tr>
+<tr class="separator:a3a8dc7679e22208bbdf076c520f25bbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf5a73c3444790177635a6eab6417d03"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03">auth</a></td></tr>
+<tr class="separator:abf5a73c3444790177635a6eab6417d03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adedb385c39effff9c9dd5767250f8c89"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89">password</a></td></tr>
+<tr class="separator:adedb385c39effff9c9dd5767250f8c89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9f34b088c5af320708cf02dfc45d59e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e">privkeyfile</a></td></tr>
+<tr class="separator:af9f34b088c5af320708cf02dfc45d59e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b35a5a573abb5e8b8a27a91434a00a5"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5">charset</a></td></tr>
+<tr class="separator:a0b35a5a573abb5e8b8a27a91434a00a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a345d41b54490dd39e35280122d22feed"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed">kex_algorithms</a></td></tr>
+<tr class="separator:a345d41b54490dd39e35280122d22feed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b3e071eb2c6011efdcea3f65f8e7fa0"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0">ciphers</a></td></tr>
+<tr class="separator:a0b3e071eb2c6011efdcea3f65f8e7fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69e209a1ee77d6dfe5d87961e2a50a6a"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a">hostkeytypes</a></td></tr>
+<tr class="separator:a69e209a1ee77d6dfe5d87961e2a50a6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac03e015f09baa46d4a9a118c606736af"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af">proxycommand</a></td></tr>
+<tr class="separator:ac03e015f09baa46d4a9a118c606736af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62e6a209747daa65061273243e830ae9"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9">stricthostkeycheck</a></td></tr>
+<tr class="separator:a62e6a209747daa65061273243e830ae9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab017331f59fceff63bb33ff00d088870"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870">compression</a></td></tr>
+<tr class="separator:ab017331f59fceff63bb33ff00d088870"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3aaebd7f03b7d8601818fabc46b787ed"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed">error</a></td></tr>
+<tr class="separator:a3aaebd7f03b7d8601818fabc46b787ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a547feb6e46dfb8e37a4eb338c17d7b52"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52">ssh_mutex</a></td></tr>
+<tr class="separator:a547feb6e46dfb8e37a4eb338c17d7b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa34e103281dafaa073d2a676b3368529"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529">passphrase</a></td></tr>
+<tr class="separator:aa34e103281dafaa073d2a676b3368529"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace4bb7170f349bd7f127f72c9c7b6ac6"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6">is_tunnel</a></td></tr>
+<tr class="separator:ace4bb7170f349bd7f127f72c9c7b6ac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebc7525b6f72d22c1ce4df93c1576602"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602">tunnel_entrance_host</a></td></tr>
+<tr class="separator:aebc7525b6f72d22c1ce4df93c1576602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76ed92539dfe749a24a3a3b99f3a644f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f">tunnel_entrance_port</a></td></tr>
+<tr class="separator:a76ed92539dfe749a24a3a3b99f3a644f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="abf5a73c3444790177635a6eab6417d03"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abf5a73c3444790177635a6eab6417d03">&#9670;&nbsp;</a></span>auth</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSH::auth</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00067">67</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ac148c436afa70f426d665b4ddd2d8f4d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac148c436afa70f426d665b4ddd2d8f4d">&#9670;&nbsp;</a></span>authenticated</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSSH::authenticated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa8e75d0a635b3390100218bee6b49378"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa8e75d0a635b3390100218bee6b49378">&#9670;&nbsp;</a></span>callback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_callbacks _RemminaSSH::callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a0b35a5a573abb5e8b8a27a91434a00a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b35a5a573abb5e8b8a27a91434a00a5">&#9670;&nbsp;</a></span>charset</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::charset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00071">71</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a0b3e071eb2c6011efdcea3f65f8e7fa0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0b3e071eb2c6011efdcea3f65f8e7fa0">&#9670;&nbsp;</a></span>ciphers</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::ciphers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00073">73</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ab017331f59fceff63bb33ff00d088870"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab017331f59fceff63bb33ff00d088870">&#9670;&nbsp;</a></span>compression</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSSH::compression</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00077">77</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a3aaebd7f03b7d8601818fabc46b787ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3aaebd7f03b7d8601818fabc46b787ed">&#9670;&nbsp;</a></span>error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00079">79</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a69e209a1ee77d6dfe5d87961e2a50a6a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a69e209a1ee77d6dfe5d87961e2a50a6a">&#9670;&nbsp;</a></span>hostkeytypes</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::hostkeytypes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00074">74</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ace4bb7170f349bd7f127f72c9c7b6ac6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace4bb7170f349bd7f127f72c9c7b6ac6">&#9670;&nbsp;</a></span>is_tunnel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSSH::is_tunnel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00085">85</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a345d41b54490dd39e35280122d22feed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a345d41b54490dd39e35280122d22feed">&#9670;&nbsp;</a></span>kex_algorithms</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSSH::kex_algorithms</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00072">72</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa34e103281dafaa073d2a676b3368529"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa34e103281dafaa073d2a676b3368529">&#9670;&nbsp;</a></span>passphrase</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::passphrase</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00083">83</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="adedb385c39effff9c9dd5767250f8c89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adedb385c39effff9c9dd5767250f8c89">&#9670;&nbsp;</a></span>password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa064626a7fd528e7d8c1fc34d1bd8dfc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa064626a7fd528e7d8c1fc34d1bd8dfc">&#9670;&nbsp;</a></span>port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSH::port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="af9f34b088c5af320708cf02dfc45d59e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9f34b088c5af320708cf02dfc45d59e">&#9670;&nbsp;</a></span>privkeyfile</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::privkeyfile</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ac03e015f09baa46d4a9a118c606736af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac03e015f09baa46d4a9a118c606736af">&#9670;&nbsp;</a></span>proxycommand</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::proxycommand</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00075">75</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ae396f0b535e2e92d640a0eb971aa082b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae396f0b535e2e92d640a0eb971aa082b">&#9670;&nbsp;</a></span>server</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a46cdb47db9c0ce8c1ac267cb3d10bbb3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46cdb47db9c0ce8c1ac267cb3d10bbb3">&#9670;&nbsp;</a></span>session</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_session _RemminaSSH::session</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a547feb6e46dfb8e37a4eb338c17d7b52"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a547feb6e46dfb8e37a4eb338c17d7b52">&#9670;&nbsp;</a></span>ssh_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t _RemminaSSH::ssh_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00081">81</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a62e6a209747daa65061273243e830ae9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a62e6a209747daa65061273243e830ae9">&#9670;&nbsp;</a></span>stricthostkeycheck</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSH::stricthostkeycheck</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00076">76</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aebc7525b6f72d22c1ce4df93c1576602"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebc7525b6f72d22c1ce4df93c1576602">&#9670;&nbsp;</a></span>tunnel_entrance_host</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::tunnel_entrance_host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00086">86</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a76ed92539dfe749a24a3a3b99f3a644f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76ed92539dfe749a24a3a3b99f3a644f">&#9670;&nbsp;</a></span>tunnel_entrance_port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSH::tunnel_entrance_port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00087">87</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a3a8dc7679e22208bbdf076c520f25bbb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a8dc7679e22208bbdf076c520f25bbb">&#9670;&nbsp;</a></span>user</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSH::user</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00066">66</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_s_h.html">_RemminaSSH</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_s_h.js b/docs/struct___remmina_s_s_h.js
new file mode 100644
index 000000000..73564d0b4
--- /dev/null
+++ b/docs/struct___remmina_s_s_h.js
@@ -0,0 +1,25 @@
+var struct___remmina_s_s_h =
+[
+ [ "auth", "struct___remmina_s_s_h.html#abf5a73c3444790177635a6eab6417d03", null ],
+ [ "authenticated", "struct___remmina_s_s_h.html#ac148c436afa70f426d665b4ddd2d8f4d", null ],
+ [ "callback", "struct___remmina_s_s_h.html#aa8e75d0a635b3390100218bee6b49378", null ],
+ [ "charset", "struct___remmina_s_s_h.html#a0b35a5a573abb5e8b8a27a91434a00a5", null ],
+ [ "ciphers", "struct___remmina_s_s_h.html#a0b3e071eb2c6011efdcea3f65f8e7fa0", null ],
+ [ "compression", "struct___remmina_s_s_h.html#ab017331f59fceff63bb33ff00d088870", null ],
+ [ "error", "struct___remmina_s_s_h.html#a3aaebd7f03b7d8601818fabc46b787ed", null ],
+ [ "hostkeytypes", "struct___remmina_s_s_h.html#a69e209a1ee77d6dfe5d87961e2a50a6a", null ],
+ [ "is_tunnel", "struct___remmina_s_s_h.html#ace4bb7170f349bd7f127f72c9c7b6ac6", null ],
+ [ "kex_algorithms", "struct___remmina_s_s_h.html#a345d41b54490dd39e35280122d22feed", null ],
+ [ "passphrase", "struct___remmina_s_s_h.html#aa34e103281dafaa073d2a676b3368529", null ],
+ [ "password", "struct___remmina_s_s_h.html#adedb385c39effff9c9dd5767250f8c89", null ],
+ [ "port", "struct___remmina_s_s_h.html#aa064626a7fd528e7d8c1fc34d1bd8dfc", null ],
+ [ "privkeyfile", "struct___remmina_s_s_h.html#af9f34b088c5af320708cf02dfc45d59e", null ],
+ [ "proxycommand", "struct___remmina_s_s_h.html#ac03e015f09baa46d4a9a118c606736af", null ],
+ [ "server", "struct___remmina_s_s_h.html#ae396f0b535e2e92d640a0eb971aa082b", null ],
+ [ "session", "struct___remmina_s_s_h.html#a46cdb47db9c0ce8c1ac267cb3d10bbb3", null ],
+ [ "ssh_mutex", "struct___remmina_s_s_h.html#a547feb6e46dfb8e37a4eb338c17d7b52", null ],
+ [ "stricthostkeycheck", "struct___remmina_s_s_h.html#a62e6a209747daa65061273243e830ae9", null ],
+ [ "tunnel_entrance_host", "struct___remmina_s_s_h.html#aebc7525b6f72d22c1ce4df93c1576602", null ],
+ [ "tunnel_entrance_port", "struct___remmina_s_s_h.html#a76ed92539dfe749a24a3a3b99f3a644f", null ],
+ [ "user", "struct___remmina_s_s_h.html#a3a8dc7679e22208bbdf076c520f25bbb", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_s_h_shell.html b/docs/struct___remmina_s_s_h_shell.html
new file mode 100644
index 000000000..32950b2eb
--- /dev/null
+++ b/docs/struct___remmina_s_s_h_shell.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSSHShell Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_s_h_shell.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSSHShell Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:af347a2bbe1bf439695d181387042b098"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098">ssh</a></td></tr>
+<tr class="separator:af347a2bbe1bf439695d181387042b098"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab02f57e79ea0ba35f8a3788ef01a707f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f">master</a></td></tr>
+<tr class="separator:ab02f57e79ea0ba35f8a3788ef01a707f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78edb0cd27564e88b6c92b425a383df6"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6">slave</a></td></tr>
+<tr class="separator:a78edb0cd27564e88b6c92b425a383df6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d56befd61e28b83f90fe3eff0e6dfe7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7">exec</a></td></tr>
+<tr class="separator:a2d56befd61e28b83f90fe3eff0e6dfe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a878854125f24a8de520ec91066d0d226"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226">thread</a></td></tr>
+<tr class="separator:a878854125f24a8de520ec91066d0d226"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c546634f855c217faa75ab4d4c7c2e2"><td class="memItemLeft" align="right" valign="top">ssh_channel&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2">channel</a></td></tr>
+<tr class="separator:a7c546634f855c217faa75ab4d4c7c2e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b2e8c1d9705b4c5b64a0e07a1159e80"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80">closed</a></td></tr>
+<tr class="separator:a6b2e8c1d9705b4c5b64a0e07a1159e80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88090ecb372853a19640c883f5bf606a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a">exit_callback</a></td></tr>
+<tr class="separator:a88090ecb372853a19640c883f5bf606a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adedb04066148973fed2de9f04b80286d"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d">user_data</a></td></tr>
+<tr class="separator:adedb04066148973fed2de9f04b80286d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00245">245</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a7c546634f855c217faa75ab4d4c7c2e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c546634f855c217faa75ab4d4c7c2e2">&#9670;&nbsp;</a></span>channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_channel _RemminaSSHShell::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00252">252</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a6b2e8c1d9705b4c5b64a0e07a1159e80"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b2e8c1d9705b4c5b64a0e07a1159e80">&#9670;&nbsp;</a></span>closed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSSHShell::closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00253">253</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a2d56befd61e28b83f90fe3eff0e6dfe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d56befd61e28b83f90fe3eff0e6dfe7">&#9670;&nbsp;</a></span>exec</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSHShell::exec</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00250">250</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a88090ecb372853a19640c883f5bf606a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88090ecb372853a19640c883f5bf606a">&#9670;&nbsp;</a></span>exit_callback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a4c56936cde97775b102a3e7b48fe5a01">RemminaSSHExitFunc</a> _RemminaSSHShell::exit_callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00254">254</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ab02f57e79ea0ba35f8a3788ef01a707f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab02f57e79ea0ba35f8a3788ef01a707f">&#9670;&nbsp;</a></span>master</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHShell::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00248">248</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a78edb0cd27564e88b6c92b425a383df6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a78edb0cd27564e88b6c92b425a383df6">&#9670;&nbsp;</a></span>slave</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHShell::slave</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00249">249</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="af347a2bbe1bf439695d181387042b098"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af347a2bbe1bf439695d181387042b098">&#9670;&nbsp;</a></span>ssh</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> _RemminaSSHShell::ssh</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00246">246</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a878854125f24a8de520ec91066d0d226"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a878854125f24a8de520ec91066d0d226">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaSSHShell::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00251">251</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="adedb04066148973fed2de9f04b80286d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adedb04066148973fed2de9f04b80286d">&#9670;&nbsp;</a></span>user_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaSSHShell::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00255">255</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_s_h_shell.html">_RemminaSSHShell</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_s_h_shell.js b/docs/struct___remmina_s_s_h_shell.js
new file mode 100644
index 000000000..ac02a4f93
--- /dev/null
+++ b/docs/struct___remmina_s_s_h_shell.js
@@ -0,0 +1,12 @@
+var struct___remmina_s_s_h_shell =
+[
+ [ "channel", "struct___remmina_s_s_h_shell.html#a7c546634f855c217faa75ab4d4c7c2e2", null ],
+ [ "closed", "struct___remmina_s_s_h_shell.html#a6b2e8c1d9705b4c5b64a0e07a1159e80", null ],
+ [ "exec", "struct___remmina_s_s_h_shell.html#a2d56befd61e28b83f90fe3eff0e6dfe7", null ],
+ [ "exit_callback", "struct___remmina_s_s_h_shell.html#a88090ecb372853a19640c883f5bf606a", null ],
+ [ "master", "struct___remmina_s_s_h_shell.html#ab02f57e79ea0ba35f8a3788ef01a707f", null ],
+ [ "slave", "struct___remmina_s_s_h_shell.html#a78edb0cd27564e88b6c92b425a383df6", null ],
+ [ "ssh", "struct___remmina_s_s_h_shell.html#af347a2bbe1bf439695d181387042b098", null ],
+ [ "thread", "struct___remmina_s_s_h_shell.html#a878854125f24a8de520ec91066d0d226", null ],
+ [ "user_data", "struct___remmina_s_s_h_shell.html#adedb04066148973fed2de9f04b80286d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_s_s_h_tunnel.html b/docs/struct___remmina_s_s_h_tunnel.html
new file mode 100644
index 000000000..fd7a0cef8
--- /dev/null
+++ b/docs/struct___remmina_s_s_h_tunnel.html
@@ -0,0 +1,584 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSSHTunnel Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_s_s_h_tunnel.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSSHTunnel Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad9887ee0673a2b0b03b091746ae02d23"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23">ssh</a></td></tr>
+<tr class="separator:ad9887ee0673a2b0b03b091746ae02d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac86d0d359e5d97d8d60fac69c9af69df"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df">tunnel_type</a></td></tr>
+<tr class="separator:ac86d0d359e5d97d8d60fac69c9af69df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab11c1bcc8549ce8b154f65f9009c65d4"><td class="memItemLeft" align="right" valign="top">ssh_channel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4">channels</a></td></tr>
+<tr class="separator:ab11c1bcc8549ce8b154f65f9009c65d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9ab1684349da8bfd6b84cc135c053b3"><td class="memItemLeft" align="right" valign="top">gint *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3">sockets</a></td></tr>
+<tr class="separator:aa9ab1684349da8bfd6b84cc135c053b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27cb79f54113bb4aa46ea163717087b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1">socketbuffers</a></td></tr>
+<tr class="separator:a27cb79f54113bb4aa46ea163717087b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb17dc2972e189660c20eff7ec0fe513"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513">num_channels</a></td></tr>
+<tr class="separator:abb17dc2972e189660c20eff7ec0fe513"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a184c6ca8fa267012d86986dac396c6"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6">max_channels</a></td></tr>
+<tr class="separator:a6a184c6ca8fa267012d86986dac396c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a069b886ad870cb318693fe1022179b3d"><td class="memItemLeft" align="right" valign="top">ssh_channel&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d">x11_channel</a></td></tr>
+<tr class="separator:a069b886ad870cb318693fe1022179b3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa496acab4967f380e3520aeb9dae2bbd"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd">thread</a></td></tr>
+<tr class="separator:aa496acab4967f380e3520aeb9dae2bbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956cb7289e147875ae5f745b33514ebd"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd">running</a></td></tr>
+<tr class="separator:a956cb7289e147875ae5f745b33514ebd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a155d773294b0671aac4e710e97d90047"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047">buffer</a></td></tr>
+<tr class="separator:a155d773294b0671aac4e710e97d90047"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88ae4fb816713bd90d8e452b5e7ef0bb"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb">buffer_len</a></td></tr>
+<tr class="separator:a88ae4fb816713bd90d8e452b5e7ef0bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37244b9fafd3ab48c0f11ad0b8cfdf91"><td class="memItemLeft" align="right" valign="top">ssh_channel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91">channels_out</a></td></tr>
+<tr class="separator:a37244b9fafd3ab48c0f11ad0b8cfdf91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fd94fc8f610d86eb71a7a7fa1500d69"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69">server_sock</a></td></tr>
+<tr class="separator:a7fd94fc8f610d86eb71a7a7fa1500d69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d61f0c0926686f8451dcf49d2d857da"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da">dest</a></td></tr>
+<tr class="separator:a4d61f0c0926686f8451dcf49d2d857da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad883561d61ee8d32d2201e642b0ab9cc"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc">port</a></td></tr>
+<tr class="separator:ad883561d61ee8d32d2201e642b0ab9cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae41b6af92643cfbcd3e13275f4281260"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260">localport</a></td></tr>
+<tr class="separator:ae41b6af92643cfbcd3e13275f4281260"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af670e0b0960c3e71e9f0b8b797ef9c28"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28">remotedisplay</a></td></tr>
+<tr class="separator:af670e0b0960c3e71e9f0b8b797ef9c28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fa916d3736cb8e2a0e6541f608c209b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b">bindlocalhost</a></td></tr>
+<tr class="separator:a6fa916d3736cb8e2a0e6541f608c209b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a071153b511500c3faa6804ebd76aeba1"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1">localdisplay</a></td></tr>
+<tr class="separator:a071153b511500c3faa6804ebd76aeba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8066492c4a0181f1b39b2fb2098fb56d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d">init_func</a></td></tr>
+<tr class="separator:a8066492c4a0181f1b39b2fb2098fb56d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa904bb1d9f643f6fde2b0eea4a8b1660"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660">connect_func</a></td></tr>
+<tr class="separator:aa904bb1d9f643f6fde2b0eea4a8b1660"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19fed9a85494d40d3f2ae2ae1d1bc18c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c">disconnect_func</a></td></tr>
+<tr class="separator:a19fed9a85494d40d3f2ae2ae1d1bc18c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f2cd8a2535e180e7bd428e84030ffb6"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6">callback_data</a></td></tr>
+<tr class="separator:a6f2cd8a2535e180e7bd428e84030ffb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e1f1bfaec497b1365ea70ebe795d778"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778">destroy_func</a></td></tr>
+<tr class="separator:a1e1f1bfaec497b1365ea70ebe795d778"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33ae9b7cd8cb3dcd85223017dfd13795"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795">destroy_func_callback_data</a></td></tr>
+<tr class="separator:a33ae9b7cd8cb3dcd85223017dfd13795"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00143">143</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6fa916d3736cb8e2a0e6541f608c209b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6fa916d3736cb8e2a0e6541f608c209b">&#9670;&nbsp;</a></span>bindlocalhost</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSSHTunnel::bindlocalhost</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00169">169</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a155d773294b0671aac4e710e97d90047"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a155d773294b0671aac4e710e97d90047">&#9670;&nbsp;</a></span>buffer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSHTunnel::buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00159">159</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a88ae4fb816713bd90d8e452b5e7ef0bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88ae4fb816713bd90d8e452b5e7ef0bb">&#9670;&nbsp;</a></span>buffer_len</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::buffer_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00160">160</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a6f2cd8a2535e180e7bd428e84030ffb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f2cd8a2535e180e7bd428e84030ffb6">&#9670;&nbsp;</a></span>callback_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaSSHTunnel::callback_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00175">175</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ab11c1bcc8549ce8b154f65f9009c65d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab11c1bcc8549ce8b154f65f9009c65d4">&#9670;&nbsp;</a></span>channels</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_channel* _RemminaSSHTunnel::channels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00148">148</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a37244b9fafd3ab48c0f11ad0b8cfdf91"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37244b9fafd3ab48c0f11ad0b8cfdf91">&#9670;&nbsp;</a></span>channels_out</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_channel* _RemminaSSHTunnel::channels_out</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00161">161</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa904bb1d9f643f6fde2b0eea4a8b1660"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa904bb1d9f643f6fde2b0eea4a8b1660">&#9670;&nbsp;</a></span>connect_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> _RemminaSSHTunnel::connect_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00173">173</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a4d61f0c0926686f8451dcf49d2d857da"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d61f0c0926686f8451dcf49d2d857da">&#9670;&nbsp;</a></span>dest</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSHTunnel::dest</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00164">164</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a1e1f1bfaec497b1365ea70ebe795d778"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e1f1bfaec497b1365ea70ebe795d778">&#9670;&nbsp;</a></span>destroy_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> _RemminaSSHTunnel::destroy_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00177">177</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a33ae9b7cd8cb3dcd85223017dfd13795"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33ae9b7cd8cb3dcd85223017dfd13795">&#9670;&nbsp;</a></span>destroy_func_callback_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer _RemminaSSHTunnel::destroy_func_callback_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00178">178</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a19fed9a85494d40d3f2ae2ae1d1bc18c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19fed9a85494d40d3f2ae2ae1d1bc18c">&#9670;&nbsp;</a></span>disconnect_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> _RemminaSSHTunnel::disconnect_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00174">174</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a8066492c4a0181f1b39b2fb2098fb56d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8066492c4a0181f1b39b2fb2098fb56d">&#9670;&nbsp;</a></span>init_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#a5b2c22bb155eee623a0a1f22293c4924">RemminaSSHTunnelCallback</a> _RemminaSSHTunnel::init_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00172">172</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a071153b511500c3faa6804ebd76aeba1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a071153b511500c3faa6804ebd76aeba1">&#9670;&nbsp;</a></span>localdisplay</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaSSHTunnel::localdisplay</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00170">170</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ae41b6af92643cfbcd3e13275f4281260"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae41b6af92643cfbcd3e13275f4281260">&#9670;&nbsp;</a></span>localport</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::localport</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00166">166</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a6a184c6ca8fa267012d86986dac396c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6a184c6ca8fa267012d86986dac396c6">&#9670;&nbsp;</a></span>max_channels</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::max_channels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00152">152</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="abb17dc2972e189660c20eff7ec0fe513"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abb17dc2972e189660c20eff7ec0fe513">&#9670;&nbsp;</a></span>num_channels</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::num_channels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00151">151</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ad883561d61ee8d32d2201e642b0ab9cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad883561d61ee8d32d2201e642b0ab9cc">&#9670;&nbsp;</a></span>port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00165">165</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="af670e0b0960c3e71e9f0b8b797ef9c28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af670e0b0960c3e71e9f0b8b797ef9c28">&#9670;&nbsp;</a></span>remotedisplay</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::remotedisplay</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00168">168</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a956cb7289e147875ae5f745b33514ebd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a956cb7289e147875ae5f745b33514ebd">&#9670;&nbsp;</a></span>running</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaSSHTunnel::running</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00157">157</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a7fd94fc8f610d86eb71a7a7fa1500d69"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7fd94fc8f610d86eb71a7a7fa1500d69">&#9670;&nbsp;</a></span>server_sock</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::server_sock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00163">163</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a27cb79f54113bb4aa46ea163717087b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27cb79f54113bb4aa46ea163717087b1">&#9670;&nbsp;</a></span>socketbuffers</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#afd166711167c39b8c1f6e8be3eb0c4e0">RemminaSSHTunnelBuffer</a>** _RemminaSSHTunnel::socketbuffers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00150">150</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa9ab1684349da8bfd6b84cc135c053b3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa9ab1684349da8bfd6b84cc135c053b3">&#9670;&nbsp;</a></span>sockets</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint* _RemminaSSHTunnel::sockets</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00149">149</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ad9887ee0673a2b0b03b091746ae02d23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9887ee0673a2b0b03b091746ae02d23">&#9670;&nbsp;</a></span>ssh</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ssh_8h.html#af0f6d172a5ceae64f62ad54883666ccc">RemminaSSH</a> _RemminaSSHTunnel::ssh</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00144">144</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="aa496acab4967f380e3520aeb9dae2bbd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa496acab4967f380e3520aeb9dae2bbd">&#9670;&nbsp;</a></span>thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t _RemminaSSHTunnel::thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00156">156</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="ac86d0d359e5d97d8d60fac69c9af69df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac86d0d359e5d97d8d60fac69c9af69df">&#9670;&nbsp;</a></span>tunnel_type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaSSHTunnel::tunnel_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00146">146</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<a id="a069b886ad870cb318693fe1022179b3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a069b886ad870cb318693fe1022179b3d">&#9670;&nbsp;</a></span>x11_channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">ssh_channel _RemminaSSHTunnel::x11_channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ssh_8h_source.html#l00154">154</a> of file <a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ssh_8h_source.html">remmina_ssh.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_s_s_h_tunnel.html">_RemminaSSHTunnel</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_s_s_h_tunnel.js b/docs/struct___remmina_s_s_h_tunnel.js
new file mode 100644
index 000000000..35b3dffdb
--- /dev/null
+++ b/docs/struct___remmina_s_s_h_tunnel.js
@@ -0,0 +1,29 @@
+var struct___remmina_s_s_h_tunnel =
+[
+ [ "bindlocalhost", "struct___remmina_s_s_h_tunnel.html#a6fa916d3736cb8e2a0e6541f608c209b", null ],
+ [ "buffer", "struct___remmina_s_s_h_tunnel.html#a155d773294b0671aac4e710e97d90047", null ],
+ [ "buffer_len", "struct___remmina_s_s_h_tunnel.html#a88ae4fb816713bd90d8e452b5e7ef0bb", null ],
+ [ "callback_data", "struct___remmina_s_s_h_tunnel.html#a6f2cd8a2535e180e7bd428e84030ffb6", null ],
+ [ "channels", "struct___remmina_s_s_h_tunnel.html#ab11c1bcc8549ce8b154f65f9009c65d4", null ],
+ [ "channels_out", "struct___remmina_s_s_h_tunnel.html#a37244b9fafd3ab48c0f11ad0b8cfdf91", null ],
+ [ "connect_func", "struct___remmina_s_s_h_tunnel.html#aa904bb1d9f643f6fde2b0eea4a8b1660", null ],
+ [ "dest", "struct___remmina_s_s_h_tunnel.html#a4d61f0c0926686f8451dcf49d2d857da", null ],
+ [ "destroy_func", "struct___remmina_s_s_h_tunnel.html#a1e1f1bfaec497b1365ea70ebe795d778", null ],
+ [ "destroy_func_callback_data", "struct___remmina_s_s_h_tunnel.html#a33ae9b7cd8cb3dcd85223017dfd13795", null ],
+ [ "disconnect_func", "struct___remmina_s_s_h_tunnel.html#a19fed9a85494d40d3f2ae2ae1d1bc18c", null ],
+ [ "init_func", "struct___remmina_s_s_h_tunnel.html#a8066492c4a0181f1b39b2fb2098fb56d", null ],
+ [ "localdisplay", "struct___remmina_s_s_h_tunnel.html#a071153b511500c3faa6804ebd76aeba1", null ],
+ [ "localport", "struct___remmina_s_s_h_tunnel.html#ae41b6af92643cfbcd3e13275f4281260", null ],
+ [ "max_channels", "struct___remmina_s_s_h_tunnel.html#a6a184c6ca8fa267012d86986dac396c6", null ],
+ [ "num_channels", "struct___remmina_s_s_h_tunnel.html#abb17dc2972e189660c20eff7ec0fe513", null ],
+ [ "port", "struct___remmina_s_s_h_tunnel.html#ad883561d61ee8d32d2201e642b0ab9cc", null ],
+ [ "remotedisplay", "struct___remmina_s_s_h_tunnel.html#af670e0b0960c3e71e9f0b8b797ef9c28", null ],
+ [ "running", "struct___remmina_s_s_h_tunnel.html#a956cb7289e147875ae5f745b33514ebd", null ],
+ [ "server_sock", "struct___remmina_s_s_h_tunnel.html#a7fd94fc8f610d86eb71a7a7fa1500d69", null ],
+ [ "socketbuffers", "struct___remmina_s_s_h_tunnel.html#a27cb79f54113bb4aa46ea163717087b1", null ],
+ [ "sockets", "struct___remmina_s_s_h_tunnel.html#aa9ab1684349da8bfd6b84cc135c053b3", null ],
+ [ "ssh", "struct___remmina_s_s_h_tunnel.html#ad9887ee0673a2b0b03b091746ae02d23", null ],
+ [ "thread", "struct___remmina_s_s_h_tunnel.html#aa496acab4967f380e3520aeb9dae2bbd", null ],
+ [ "tunnel_type", "struct___remmina_s_s_h_tunnel.html#ac86d0d359e5d97d8d60fac69c9af69df", null ],
+ [ "x11_channel", "struct___remmina_s_s_h_tunnel.html#a069b886ad870cb318693fe1022179b3d", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_scrolled_viewport.html b/docs/struct___remmina_scrolled_viewport.html
new file mode 100644
index 000000000..35163c95d
--- /dev/null
+++ b/docs/struct___remmina_scrolled_viewport.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaScrolledViewport Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_scrolled_viewport.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaScrolledViewport Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a43804d9cf3852c56c18298a0ed312ded"><td class="memItemLeft" align="right" valign="top">GtkEventBox&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded">event_box</a></td></tr>
+<tr class="separator:a43804d9cf3852c56c18298a0ed312ded"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add486b5b8eb2bfe130e94e2a7a1275af"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af">viewport_motion</a></td></tr>
+<tr class="separator:add486b5b8eb2bfe130e94e2a7a1275af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed56f5dfabf67c663eeddbe154734966"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966">viewport_motion_handler</a></td></tr>
+<tr class="separator:aed56f5dfabf67c663eeddbe154734966"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a43804d9cf3852c56c18298a0ed312ded"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a43804d9cf3852c56c18298a0ed312ded">&#9670;&nbsp;</a></span>event_box</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEventBox _RemminaScrolledViewport::event_box</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+
+</div>
+</div>
+<a id="add486b5b8eb2bfe130e94e2a7a1275af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#add486b5b8eb2bfe130e94e2a7a1275af">&#9670;&nbsp;</a></span>viewport_motion</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaScrolledViewport::viewport_motion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+
+</div>
+</div>
+<a id="aed56f5dfabf67c663eeddbe154734966"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed56f5dfabf67c663eeddbe154734966">&#9670;&nbsp;</a></span>viewport_motion_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaScrolledViewport::viewport_motion_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_scrolled_viewport.html">_RemminaScrolledViewport</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_scrolled_viewport.js b/docs/struct___remmina_scrolled_viewport.js
new file mode 100644
index 000000000..17403da18
--- /dev/null
+++ b/docs/struct___remmina_scrolled_viewport.js
@@ -0,0 +1,6 @@
+var struct___remmina_scrolled_viewport =
+[
+ [ "event_box", "struct___remmina_scrolled_viewport.html#a43804d9cf3852c56c18298a0ed312ded", null ],
+ [ "viewport_motion", "struct___remmina_scrolled_viewport.html#add486b5b8eb2bfe130e94e2a7a1275af", null ],
+ [ "viewport_motion_handler", "struct___remmina_scrolled_viewport.html#aed56f5dfabf67c663eeddbe154734966", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_scrolled_viewport_class.html b/docs/struct___remmina_scrolled_viewport_class.html
new file mode 100644
index 000000000..467304abd
--- /dev/null
+++ b/docs/struct___remmina_scrolled_viewport_class.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaScrolledViewportClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_scrolled_viewport_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaScrolledViewportClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac5111bf98051e086d39385fb7e9d314f"><td class="memItemLeft" align="right" valign="top">GtkEventBoxClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f">parent_class</a></td></tr>
+<tr class="separator:ac5111bf98051e086d39385fb7e9d314f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ac5111bf98051e086d39385fb7e9d314f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac5111bf98051e086d39385fb7e9d314f">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEventBoxClass _RemminaScrolledViewportClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scrolled__viewport_8h_source.html#l00062">62</a> of file <a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__scrolled__viewport_8h_source.html">remmina_scrolled_viewport.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_scrolled_viewport_class.html">_RemminaScrolledViewportClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_scrolled_viewport_class.js b/docs/struct___remmina_scrolled_viewport_class.js
new file mode 100644
index 000000000..569fd45af
--- /dev/null
+++ b/docs/struct___remmina_scrolled_viewport_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_scrolled_viewport_class =
+[
+ [ "parent_class", "struct___remmina_scrolled_viewport_class.html#ac5111bf98051e086d39385fb7e9d314f", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_secret_plugin.html b/docs/struct___remmina_secret_plugin.html
new file mode 100644
index 000000000..23acae27e
--- /dev/null
+++ b/docs/struct___remmina_secret_plugin.html
@@ -0,0 +1,314 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaSecretPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_secret_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaSecretPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a3e49bae6984c9bfd714ea8c664ce33a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2">type</a></td></tr>
+<tr class="separator:a3e49bae6984c9bfd714ea8c664ce33a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a197b28d8b71ccb0c91ce8bf27690968a"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a">name</a></td></tr>
+<tr class="separator:a197b28d8b71ccb0c91ce8bf27690968a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a175d83898486e37aadd16279f559f659"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659">description</a></td></tr>
+<tr class="separator:a175d83898486e37aadd16279f559f659"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81ff30e7efe61fd0057184640baf545e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e">domain</a></td></tr>
+<tr class="separator:a81ff30e7efe61fd0057184640baf545e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6927c92267fdb786b01319aeade0daa"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa">version</a></td></tr>
+<tr class="separator:ac6927c92267fdb786b01319aeade0daa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0155c6684591e0dd843c7145792fef09"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09">init_order</a></td></tr>
+<tr class="separator:a0155c6684591e0dd843c7145792fef09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad433f24a09d962e66a336eb461cecd56"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56">init</a> )(void)</td></tr>
+<tr class="separator:ad433f24a09d962e66a336eb461cecd56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a519a411cb2091da2176258d87bcea6d4"><td class="memItemLeft" align="right" valign="top">gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4">is_service_available</a> )(void)</td></tr>
+<tr class="separator:a519a411cb2091da2176258d87bcea6d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a925730ef351cc44ddeebad6415c2e6"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6">store_password</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *password)</td></tr>
+<tr class="separator:a5a925730ef351cc44ddeebad6415c2e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa4bb101e0da125111dedf732a34b629"><td class="memItemLeft" align="right" valign="top">gchar *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629">get_password</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:aaa4bb101e0da125111dedf732a34b629"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c61bfd8ead834bcab75c643514171ef"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef">delete_password</a> )(<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td></tr>
+<tr class="separator:a5c61bfd8ead834bcab75c643514171ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00129">129</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a5c61bfd8ead834bcab75c643514171ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c61bfd8ead834bcab75c643514171ef">&#9670;&nbsp;</a></span>delete_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaSecretPlugin::delete_password) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00141">141</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a175d83898486e37aadd16279f559f659"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a175d83898486e37aadd16279f559f659">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSecretPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00132">132</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a81ff30e7efe61fd0057184640baf545e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81ff30e7efe61fd0057184640baf545e">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSecretPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00133">133</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa4bb101e0da125111dedf732a34b629"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa4bb101e0da125111dedf732a34b629">&#9670;&nbsp;</a></span>get_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar*(* _RemminaSecretPlugin::get_password) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00140">140</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad433f24a09d962e66a336eb461cecd56"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad433f24a09d962e66a336eb461cecd56">&#9670;&nbsp;</a></span>init</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaSecretPlugin::init) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00137">137</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0155c6684591e0dd843c7145792fef09"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0155c6684591e0dd843c7145792fef09">&#9670;&nbsp;</a></span>init_order</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int _RemminaSecretPlugin::init_order</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00135">135</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a519a411cb2091da2176258d87bcea6d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a519a411cb2091da2176258d87bcea6d4">&#9670;&nbsp;</a></span>is_service_available</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean(* _RemminaSecretPlugin::is_service_available) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00138">138</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a197b28d8b71ccb0c91ce8bf27690968a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a197b28d8b71ccb0c91ce8bf27690968a">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSecretPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00131">131</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5a925730ef351cc44ddeebad6415c2e6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a925730ef351cc44ddeebad6415c2e6">&#9670;&nbsp;</a></span>store_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaSecretPlugin::store_password) (<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile, const gchar *key, const gchar *password)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00139">139</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3e49bae6984c9bfd714ea8c664ce33a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e49bae6984c9bfd714ea8c664ce33a2">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaSecretPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00130">130</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac6927c92267fdb786b01319aeade0daa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6927c92267fdb786b01319aeade0daa">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaSecretPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00134">134</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_secret_plugin.html">_RemminaSecretPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_secret_plugin.js b/docs/struct___remmina_secret_plugin.js
new file mode 100644
index 000000000..9515ea30d
--- /dev/null
+++ b/docs/struct___remmina_secret_plugin.js
@@ -0,0 +1,14 @@
+var struct___remmina_secret_plugin =
+[
+ [ "delete_password", "struct___remmina_secret_plugin.html#a5c61bfd8ead834bcab75c643514171ef", null ],
+ [ "description", "struct___remmina_secret_plugin.html#a175d83898486e37aadd16279f559f659", null ],
+ [ "domain", "struct___remmina_secret_plugin.html#a81ff30e7efe61fd0057184640baf545e", null ],
+ [ "get_password", "struct___remmina_secret_plugin.html#aaa4bb101e0da125111dedf732a34b629", null ],
+ [ "init", "struct___remmina_secret_plugin.html#ad433f24a09d962e66a336eb461cecd56", null ],
+ [ "init_order", "struct___remmina_secret_plugin.html#a0155c6684591e0dd843c7145792fef09", null ],
+ [ "is_service_available", "struct___remmina_secret_plugin.html#a519a411cb2091da2176258d87bcea6d4", null ],
+ [ "name", "struct___remmina_secret_plugin.html#a197b28d8b71ccb0c91ce8bf27690968a", null ],
+ [ "store_password", "struct___remmina_secret_plugin.html#a5a925730ef351cc44ddeebad6415c2e6", null ],
+ [ "type", "struct___remmina_secret_plugin.html#a3e49bae6984c9bfd714ea8c664ce33a2", null ],
+ [ "version", "struct___remmina_secret_plugin.html#ac6927c92267fdb786b01319aeade0daa", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_string_list.html b/docs/struct___remmina_string_list.html
new file mode 100644
index 000000000..1863c2d86
--- /dev/null
+++ b/docs/struct___remmina_string_list.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaStringList Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_string_list.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaStringList Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a2dbca3443519d434c0f453c089d20bcd"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd">builder</a></td></tr>
+<tr class="separator:a2dbca3443519d434c0f453c089d20bcd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f0b41416987d00fdbd8bdd31f7ba558"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558">dialog</a></td></tr>
+<tr class="separator:a7f0b41416987d00fdbd8bdd31f7ba558"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adad14fc7d17767b3b1cdd94eca6b32ab"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab">liststore_items</a></td></tr>
+<tr class="separator:adad14fc7d17767b3b1cdd94eca6b32ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15c6a17a5d27cc36a3dd4c40df3311d2"><td class="memItemLeft" align="right" valign="top">GtkTreeView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2">treeview_items</a></td></tr>
+<tr class="separator:a15c6a17a5d27cc36a3dd4c40df3311d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a182e86dda236f5d780052e4a35da2ac3"><td class="memItemLeft" align="right" valign="top">GtkTreeViewColumn *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3">treeviewcolumn_item</a></td></tr>
+<tr class="separator:a182e86dda236f5d780052e4a35da2ac3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96d5b01b1d418b4373c54f02ab4c6c97"><td class="memItemLeft" align="right" valign="top">GtkTreeSelection *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97">treeview_selection</a></td></tr>
+<tr class="separator:a96d5b01b1d418b4373c54f02ab4c6c97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57ee0849e69606d61879c095b736b256"><td class="memItemLeft" align="right" valign="top">GtkCellRendererText *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256">cellrenderertext_item1</a></td></tr>
+<tr class="separator:a57ee0849e69606d61879c095b736b256"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fb48d319c2798f16123a8f0585e8bbe"><td class="memItemLeft" align="right" valign="top">GtkCellRendererText *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe">cellrenderertext_item2</a></td></tr>
+<tr class="separator:a7fb48d319c2798f16123a8f0585e8bbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60620e4231fe4c9a75c2468247488be4"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4">button_add</a></td></tr>
+<tr class="separator:a60620e4231fe4c9a75c2468247488be4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af41585699fdfd456f848177457cd3500"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500">button_remove</a></td></tr>
+<tr class="separator:af41585699fdfd456f848177457cd3500"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e12b99b6faad1a1f17fab96cf41ae65"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65">button_up</a></td></tr>
+<tr class="separator:a3e12b99b6faad1a1f17fab96cf41ae65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a071fad44be3691b3ec231a1d280e50c1"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1">button_down</a></td></tr>
+<tr class="separator:a071fad44be3691b3ec231a1d280e50c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2da90e0958036c4cfbb52ba05cf69933"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933">label_title</a></td></tr>
+<tr class="separator:a2da90e0958036c4cfbb52ba05cf69933"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad84558b018159257efd0969a4cd197c7"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7">label_status</a></td></tr>
+<tr class="separator:ad84558b018159257efd0969a4cd197c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76962f8e0b4a5dcbaf50790a3338faa3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3">priv</a></td></tr>
+<tr class="separator:a76962f8e0b4a5dcbaf50790a3338faa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00047">47</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a2dbca3443519d434c0f453c089d20bcd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2dbca3443519d434c0f453c089d20bcd">&#9670;&nbsp;</a></span>builder</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* _RemminaStringList::builder</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a60620e4231fe4c9a75c2468247488be4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a60620e4231fe4c9a75c2468247488be4">&#9670;&nbsp;</a></span>button_add</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaStringList::button_add</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a071fad44be3691b3ec231a1d280e50c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a071fad44be3691b3ec231a1d280e50c1">&#9670;&nbsp;</a></span>button_down</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaStringList::button_down</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="af41585699fdfd456f848177457cd3500"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af41585699fdfd456f848177457cd3500">&#9670;&nbsp;</a></span>button_remove</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaStringList::button_remove</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00059">59</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a3e12b99b6faad1a1f17fab96cf41ae65"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3e12b99b6faad1a1f17fab96cf41ae65">&#9670;&nbsp;</a></span>button_up</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaStringList::button_up</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00060">60</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a57ee0849e69606d61879c095b736b256"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a57ee0849e69606d61879c095b736b256">&#9670;&nbsp;</a></span>cellrenderertext_item1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCellRendererText* _RemminaStringList::cellrenderertext_item1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00055">55</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a7fb48d319c2798f16123a8f0585e8bbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7fb48d319c2798f16123a8f0585e8bbe">&#9670;&nbsp;</a></span>cellrenderertext_item2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkCellRendererText* _RemminaStringList::cellrenderertext_item2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00056">56</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a7f0b41416987d00fdbd8bdd31f7ba558"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f0b41416987d00fdbd8bdd31f7ba558">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* _RemminaStringList::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00049">49</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="ad84558b018159257efd0969a4cd197c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad84558b018159257efd0969a4cd197c7">&#9670;&nbsp;</a></span>label_status</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaStringList::label_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00064">64</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a2da90e0958036c4cfbb52ba05cf69933"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2da90e0958036c4cfbb52ba05cf69933">&#9670;&nbsp;</a></span>label_title</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* _RemminaStringList::label_title</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00063">63</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="adad14fc7d17767b3b1cdd94eca6b32ab"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adad14fc7d17767b3b1cdd94eca6b32ab">&#9670;&nbsp;</a></span>liststore_items</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* _RemminaStringList::liststore_items</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00051">51</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a76962f8e0b4a5dcbaf50790a3338faa3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76962f8e0b4a5dcbaf50790a3338faa3">&#9670;&nbsp;</a></span>priv</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__list_8h.html#a475c8b01c3e7b2c25109b62db2fd4349">RemminaStringListPriv</a>* _RemminaStringList::priv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00066">66</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a15c6a17a5d27cc36a3dd4c40df3311d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a15c6a17a5d27cc36a3dd4c40df3311d2">&#9670;&nbsp;</a></span>treeview_items</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeView* _RemminaStringList::treeview_items</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00052">52</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a96d5b01b1d418b4373c54f02ab4c6c97"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96d5b01b1d418b4373c54f02ab4c6c97">&#9670;&nbsp;</a></span>treeview_selection</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeSelection* _RemminaStringList::treeview_selection</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00054">54</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a182e86dda236f5d780052e4a35da2ac3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a182e86dda236f5d780052e4a35da2ac3">&#9670;&nbsp;</a></span>treeviewcolumn_item</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeViewColumn* _RemminaStringList::treeviewcolumn_item</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00053">53</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_string_list.html">_RemminaStringList</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_string_list.js b/docs/struct___remmina_string_list.js
new file mode 100644
index 000000000..31bc101ae
--- /dev/null
+++ b/docs/struct___remmina_string_list.js
@@ -0,0 +1,18 @@
+var struct___remmina_string_list =
+[
+ [ "builder", "struct___remmina_string_list.html#a2dbca3443519d434c0f453c089d20bcd", null ],
+ [ "button_add", "struct___remmina_string_list.html#a60620e4231fe4c9a75c2468247488be4", null ],
+ [ "button_down", "struct___remmina_string_list.html#a071fad44be3691b3ec231a1d280e50c1", null ],
+ [ "button_remove", "struct___remmina_string_list.html#af41585699fdfd456f848177457cd3500", null ],
+ [ "button_up", "struct___remmina_string_list.html#a3e12b99b6faad1a1f17fab96cf41ae65", null ],
+ [ "cellrenderertext_item1", "struct___remmina_string_list.html#a57ee0849e69606d61879c095b736b256", null ],
+ [ "cellrenderertext_item2", "struct___remmina_string_list.html#a7fb48d319c2798f16123a8f0585e8bbe", null ],
+ [ "dialog", "struct___remmina_string_list.html#a7f0b41416987d00fdbd8bdd31f7ba558", null ],
+ [ "label_status", "struct___remmina_string_list.html#ad84558b018159257efd0969a4cd197c7", null ],
+ [ "label_title", "struct___remmina_string_list.html#a2da90e0958036c4cfbb52ba05cf69933", null ],
+ [ "liststore_items", "struct___remmina_string_list.html#adad14fc7d17767b3b1cdd94eca6b32ab", null ],
+ [ "priv", "struct___remmina_string_list.html#a76962f8e0b4a5dcbaf50790a3338faa3", null ],
+ [ "treeview_items", "struct___remmina_string_list.html#a15c6a17a5d27cc36a3dd4c40df3311d2", null ],
+ [ "treeview_selection", "struct___remmina_string_list.html#a96d5b01b1d418b4373c54f02ab4c6c97", null ],
+ [ "treeviewcolumn_item", "struct___remmina_string_list.html#a182e86dda236f5d780052e4a35da2ac3", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_string_list_priv.html b/docs/struct___remmina_string_list_priv.html
new file mode 100644
index 000000000..72a4e877a
--- /dev/null
+++ b/docs/struct___remmina_string_list_priv.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaStringListPriv Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_string_list_priv.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaStringListPriv Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a5968b965b712f7e9c4223e3c26f25a24"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24">validation_func</a></td></tr>
+<tr class="separator:a5968b965b712f7e9c4223e3c26f25a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88500e692aef96da78bfb0091fc6f4a7"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7">fields_separator</a></td></tr>
+<tr class="separator:a88500e692aef96da78bfb0091fc6f4a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b7cfdd53c820f7e142631a7867c6bcb"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb">two_columns</a></td></tr>
+<tr class="separator:a5b7cfdd53c820f7e142631a7867c6bcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00041">41</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a88500e692aef96da78bfb0091fc6f4a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88500e692aef96da78bfb0091fc6f4a7">&#9670;&nbsp;</a></span>fields_separator</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaStringListPriv::fields_separator</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a5b7cfdd53c820f7e142631a7867c6bcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5b7cfdd53c820f7e142631a7867c6bcb">&#9670;&nbsp;</a></span>two_columns</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaStringListPriv::two_columns</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<a id="a5968b965b712f7e9c4223e3c26f25a24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5968b965b712f7e9c4223e3c26f25a24">&#9670;&nbsp;</a></span>validation_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__string__list_8h.html#a3112419c42db7e04347a3ba63778c7bb">RemminaStringListValidationFunc</a> _RemminaStringListPriv::validation_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__string__list_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__string__list_8h_source.html">remmina_string_list.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_string_list_priv.html">_RemminaStringListPriv</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_string_list_priv.js b/docs/struct___remmina_string_list_priv.js
new file mode 100644
index 000000000..825e5ab5e
--- /dev/null
+++ b/docs/struct___remmina_string_list_priv.js
@@ -0,0 +1,6 @@
+var struct___remmina_string_list_priv =
+[
+ [ "fields_separator", "struct___remmina_string_list_priv.html#a88500e692aef96da78bfb0091fc6f4a7", null ],
+ [ "two_columns", "struct___remmina_string_list_priv.html#a5b7cfdd53c820f7e142631a7867c6bcb", null ],
+ [ "validation_func", "struct___remmina_string_list_priv.html#a5968b965b712f7e9c4223e3c26f25a24", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_tool_plugin.html b/docs/struct___remmina_tool_plugin.html
new file mode 100644
index 000000000..46263a108
--- /dev/null
+++ b/docs/struct___remmina_tool_plugin.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaToolPlugin Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_tool_plugin.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaToolPlugin Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="plugin_8h_source.html">plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae812659a7e2bd72a7875a05193b88176"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176">type</a></td></tr>
+<tr class="separator:ae812659a7e2bd72a7875a05193b88176"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcdd7f3020665461c0a95a47ac6675af"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af">name</a></td></tr>
+<tr class="separator:adcdd7f3020665461c0a95a47ac6675af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02b12a1cbcb64caa5532196ddf5214e9"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9">description</a></td></tr>
+<tr class="separator:a02b12a1cbcb64caa5532196ddf5214e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c2d66a167a088f071e545c1d656139e"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e">domain</a></td></tr>
+<tr class="separator:a9c2d66a167a088f071e545c1d656139e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f57732269208cb7e6198c5f60f1da8b"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b">version</a></td></tr>
+<tr class="separator:a9f57732269208cb7e6198c5f60f1da8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafa38623d15ab10ab2fe23b262a8cd17"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17">exec_func</a> )(void)</td></tr>
+<tr class="separator:aafa38623d15ab10ab2fe23b262a8cd17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00108">108</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a02b12a1cbcb64caa5532196ddf5214e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02b12a1cbcb64caa5532196ddf5214e9">&#9670;&nbsp;</a></span>description</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaToolPlugin::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00111">111</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9c2d66a167a088f071e545c1d656139e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9c2d66a167a088f071e545c1d656139e">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaToolPlugin::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00112">112</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aafa38623d15ab10ab2fe23b262a8cd17"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafa38623d15ab10ab2fe23b262a8cd17">&#9670;&nbsp;</a></span>exec_func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* _RemminaToolPlugin::exec_func) (void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00115">115</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="adcdd7f3020665461c0a95a47ac6675af"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adcdd7f3020665461c0a95a47ac6675af">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaToolPlugin::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00110">110</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae812659a7e2bd72a7875a05193b88176"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae812659a7e2bd72a7875a05193b88176">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624a">RemminaPluginType</a> _RemminaToolPlugin::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00109">109</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9f57732269208cb7e6198c5f60f1da8b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f57732269208cb7e6198c5f60f1da8b">&#9670;&nbsp;</a></span>version</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* _RemminaToolPlugin::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="plugin_8h_source.html#l00113">113</a> of file <a class="el" href="plugin_8h_source.html">plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="plugin_8h_source.html">plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_tool_plugin.html">_RemminaToolPlugin</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_tool_plugin.js b/docs/struct___remmina_tool_plugin.js
new file mode 100644
index 000000000..6b05f67cf
--- /dev/null
+++ b/docs/struct___remmina_tool_plugin.js
@@ -0,0 +1,9 @@
+var struct___remmina_tool_plugin =
+[
+ [ "description", "struct___remmina_tool_plugin.html#a02b12a1cbcb64caa5532196ddf5214e9", null ],
+ [ "domain", "struct___remmina_tool_plugin.html#a9c2d66a167a088f071e545c1d656139e", null ],
+ [ "exec_func", "struct___remmina_tool_plugin.html#aafa38623d15ab10ab2fe23b262a8cd17", null ],
+ [ "name", "struct___remmina_tool_plugin.html#adcdd7f3020665461c0a95a47ac6675af", null ],
+ [ "type", "struct___remmina_tool_plugin.html#ae812659a7e2bd72a7875a05193b88176", null ],
+ [ "version", "struct___remmina_tool_plugin.html#a9f57732269208cb7e6198c5f60f1da8b", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_tp_channel_handler.html b/docs/struct___remmina_tp_channel_handler.html
new file mode 100644
index 000000000..d4a5a05ac
--- /dev/null
+++ b/docs/struct___remmina_tp_channel_handler.html
@@ -0,0 +1,366 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaTpChannelHandler Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_tp_channel_handler.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaTpChannelHandler Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a6799c3ddb6d8b4c3edeed94dfccc6213"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a></td></tr>
+<tr class="separator:a6799c3ddb6d8b4c3edeed94dfccc6213"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70118dbcd13ffba2652135859fd10769"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a></td></tr>
+<tr class="separator:a70118dbcd13ffba2652135859fd10769"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0fc6e931ac466c6a14f1974bf353632"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a></td></tr>
+<tr class="separator:ac0fc6e931ac466c6a14f1974bf353632"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36d9b29f36b9ea3fcc35ff2dfd8c0068"><td class="memItemLeft" align="right" valign="top">DBusGMethodInvocation *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a></td></tr>
+<tr class="separator:a36d9b29f36b9ea3fcc35ff2dfd8c0068"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1b190ba94678441ad2d7bbed484f545"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">proto_widget</a></td></tr>
+<tr class="separator:af1b190ba94678441ad2d7bbed484f545"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d9a415970ebf79ee85c0851042d2363"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a></td></tr>
+<tr class="separator:a2d9a415970ebf79ee85c0851042d2363"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad42b671632d6950a4da68fb84005efe3"><td class="memItemLeft" align="right" valign="top">TpDBusDaemon *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a></td></tr>
+<tr class="separator:ad42b671632d6950a4da68fb84005efe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af66988bddfcdc27db187ac48ddd8cac8"><td class="memItemLeft" align="right" valign="top">TpAccount *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a></td></tr>
+<tr class="separator:af66988bddfcdc27db187ac48ddd8cac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f0768975a5f826a22e8e57c2dd76981"><td class="memItemLeft" align="right" valign="top">TpConnection *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a></td></tr>
+<tr class="separator:a4f0768975a5f826a22e8e57c2dd76981"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3eb504e13624f27e97b61042554d2ece"><td class="memItemLeft" align="right" valign="top">TpChannel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a></td></tr>
+<tr class="separator:a3eb504e13624f27e97b61042554d2ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33e90ca614722a63d731a76793a23334"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a></td></tr>
+<tr class="separator:a33e90ca614722a63d731a76793a23334"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1d28bb82475f3e05a0cf6e3f50769ed"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a></td></tr>
+<tr class="separator:ac1d28bb82475f3e05a0cf6e3f50769ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6a0de9ed37b1554d96649c84c605107"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">port</a></td></tr>
+<tr class="separator:ab6a0de9ed37b1554d96649c84c605107"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe562deaa8bf08eff69e2de915b32659"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a></td></tr>
+<tr class="separator:abe562deaa8bf08eff69e2de915b32659"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00051">51</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="af66988bddfcdc27db187ac48ddd8cac8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af66988bddfcdc27db187ac48ddd8cac8">&#9670;&nbsp;</a></span>account</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">TpAccount* _RemminaTpChannelHandler::account</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00061">61</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a33e90ca614722a63d731a76793a23334"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a33e90ca614722a63d731a76793a23334">&#9670;&nbsp;</a></span>alias</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaTpChannelHandler::alias</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00065">65</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ad42b671632d6950a4da68fb84005efe3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad42b671632d6950a4da68fb84005efe3">&#9670;&nbsp;</a></span>bus</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">TpDBusDaemon* _RemminaTpChannelHandler::bus</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00060">60</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a3eb504e13624f27e97b61042554d2ece"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3eb504e13624f27e97b61042554d2ece">&#9670;&nbsp;</a></span>channel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">TpChannel* _RemminaTpChannelHandler::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00063">63</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a70118dbcd13ffba2652135859fd10769"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a70118dbcd13ffba2652135859fd10769">&#9670;&nbsp;</a></span>channel_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaTpChannelHandler::channel_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00053">53</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ac0fc6e931ac466c6a14f1974bf353632"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0fc6e931ac466c6a14f1974bf353632">&#9670;&nbsp;</a></span>channel_properties</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* _RemminaTpChannelHandler::channel_properties</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00054">54</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a4f0768975a5f826a22e8e57c2dd76981"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f0768975a5f826a22e8e57c2dd76981">&#9670;&nbsp;</a></span>connection</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">TpConnection* _RemminaTpChannelHandler::connection</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00062">62</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a6799c3ddb6d8b4c3edeed94dfccc6213"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6799c3ddb6d8b4c3edeed94dfccc6213">&#9670;&nbsp;</a></span>connection_path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaTpChannelHandler::connection_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00052">52</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a36d9b29f36b9ea3fcc35ff2dfd8c0068"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a36d9b29f36b9ea3fcc35ff2dfd8c0068">&#9670;&nbsp;</a></span>context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">DBusGMethodInvocation* _RemminaTpChannelHandler::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00055">55</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a2d9a415970ebf79ee85c0851042d2363"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2d9a415970ebf79ee85c0851042d2363">&#9670;&nbsp;</a></span>disconnect_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaTpChannelHandler::disconnect_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00058">58</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ac1d28bb82475f3e05a0cf6e3f50769ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1d28bb82475f3e05a0cf6e3f50769ed">&#9670;&nbsp;</a></span>host</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaTpChannelHandler::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00066">66</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ab6a0de9ed37b1554d96649c84c605107"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab6a0de9ed37b1554d96649c84c605107">&#9670;&nbsp;</a></span>port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint _RemminaTpChannelHandler::port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00067">67</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="af1b190ba94678441ad2d7bbed484f545"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1b190ba94678441ad2d7bbed484f545">&#9670;&nbsp;</a></span>proto_widget</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* _RemminaTpChannelHandler::proto_widget</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00057">57</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="abe562deaa8bf08eff69e2de915b32659"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe562deaa8bf08eff69e2de915b32659">&#9670;&nbsp;</a></span>protocol</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* _RemminaTpChannelHandler::protocol</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00068">68</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_tp_channel_handler.js b/docs/struct___remmina_tp_channel_handler.js
new file mode 100644
index 000000000..989ac7cf4
--- /dev/null
+++ b/docs/struct___remmina_tp_channel_handler.js
@@ -0,0 +1,17 @@
+var struct___remmina_tp_channel_handler =
+[
+ [ "account", "struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8", null ],
+ [ "alias", "struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334", null ],
+ [ "bus", "struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3", null ],
+ [ "channel", "struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece", null ],
+ [ "channel_path", "struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769", null ],
+ [ "channel_properties", "struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632", null ],
+ [ "connection", "struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981", null ],
+ [ "connection_path", "struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213", null ],
+ [ "context", "struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068", null ],
+ [ "disconnect_handler", "struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363", null ],
+ [ "host", "struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed", null ],
+ [ "port", "struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107", null ],
+ [ "proto_widget", "struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545", null ],
+ [ "protocol", "struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_tp_handler.html b/docs/struct___remmina_tp_handler.html
new file mode 100644
index 000000000..db6f74dc3
--- /dev/null
+++ b/docs/struct___remmina_tp_handler.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaTpHandler Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_tp_handler.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaTpHandler Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a63cf94617150370ee1ffd62595372510"><td class="memItemLeft" align="right" valign="top">GObject&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510">parent</a></td></tr>
+<tr class="separator:a63cf94617150370ee1ffd62595372510"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8h_source.html#l00047">47</a> of file <a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a63cf94617150370ee1ffd62595372510"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a63cf94617150370ee1ffd62595372510">&#9670;&nbsp;</a></span>parent</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GObject _RemminaTpHandler::parent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8h_source.html#l00048">48</a> of file <a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_tp_handler.js b/docs/struct___remmina_tp_handler.js
new file mode 100644
index 000000000..0372c0422
--- /dev/null
+++ b/docs/struct___remmina_tp_handler.js
@@ -0,0 +1,4 @@
+var struct___remmina_tp_handler =
+[
+ [ "parent", "struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_tp_handler_class.html b/docs/struct___remmina_tp_handler_class.html
new file mode 100644
index 000000000..b6315fadb
--- /dev/null
+++ b/docs/struct___remmina_tp_handler_class.html
@@ -0,0 +1,134 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaTpHandlerClass Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_tp_handler_class.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaTpHandlerClass Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a1c0861d534041d9bcf39c0621839482f"><td class="memItemLeft" align="right" valign="top">GObjectClass&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f">parent_class</a></td></tr>
+<tr class="separator:a1c0861d534041d9bcf39c0621839482f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8h_source.html#l00051">51</a> of file <a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a1c0861d534041d9bcf39c0621839482f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1c0861d534041d9bcf39c0621839482f">&#9670;&nbsp;</a></span>parent_class</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GObjectClass _RemminaTpHandlerClass::parent_class</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8h_source.html#l00052">52</a> of file <a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="telepathy__handler_8h_source.html">telepathy_handler.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_tp_handler_class.js b/docs/struct___remmina_tp_handler_class.js
new file mode 100644
index 000000000..ee3a2800f
--- /dev/null
+++ b/docs/struct___remmina_tp_handler_class.js
@@ -0,0 +1,4 @@
+var struct___remmina_tp_handler_class =
+[
+ [ "parent_class", "struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f", null ]
+]; \ No newline at end of file
diff --git a/docs/struct___remmina_unlock_dialog.html b/docs/struct___remmina_unlock_dialog.html
new file mode 100644
index 000000000..d22b31853
--- /dev/null
+++ b/docs/struct___remmina_unlock_dialog.html
@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: _RemminaUnlockDialog Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct___remmina_unlock_dialog.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">_RemminaUnlockDialog Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:adea2159828578aefa4d3833083b9de2b"><td class="memItemLeft" align="right" valign="top">GtkBuilder *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b">builder</a></td></tr>
+<tr class="separator:adea2159828578aefa4d3833083b9de2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2612295677b0f040e55470018c26628e"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e">dialog</a></td></tr>
+<tr class="separator:a2612295677b0f040e55470018c26628e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae104a7396def58ceb51949e73a9b5109"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109">entry_unlock</a></td></tr>
+<tr class="separator:ae104a7396def58ceb51949e73a9b5109"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a4303634a8342c96dd71e8d7d3e9e7d"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d">button_unlock</a></td></tr>
+<tr class="separator:a0a4303634a8342c96dd71e8d7d3e9e7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4d3370e923f377e8e0af96deabc5a44"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44">button_unlock_cancel</a></td></tr>
+<tr class="separator:af4d3370e923f377e8e0af96deabc5a44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ffac9bfa0017cd0e142adbba489274b"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b">unlock_init</a></td></tr>
+<tr class="separator:a3ffac9bfa0017cd0e142adbba489274b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a100f356b1eb9f6574b349e7573408235"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235">retval</a></td></tr>
+<tr class="separator:a100f356b1eb9f6574b349e7573408235"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="adea2159828578aefa4d3833083b9de2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adea2159828578aefa4d3833083b9de2b">&#9670;&nbsp;</a></span>builder</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkBuilder* _RemminaUnlockDialog::builder</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00041">41</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="a0a4303634a8342c96dd71e8d7d3e9e7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0a4303634a8342c96dd71e8d7d3e9e7d">&#9670;&nbsp;</a></span>button_unlock</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaUnlockDialog::button_unlock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00045">45</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="af4d3370e923f377e8e0af96deabc5a44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4d3370e923f377e8e0af96deabc5a44">&#9670;&nbsp;</a></span>button_unlock_cancel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* _RemminaUnlockDialog::button_unlock_cancel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00046">46</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="a2612295677b0f040e55470018c26628e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2612295677b0f040e55470018c26628e">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* _RemminaUnlockDialog::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="ae104a7396def58ceb51949e73a9b5109"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae104a7396def58ceb51949e73a9b5109">&#9670;&nbsp;</a></span>entry_unlock</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* _RemminaUnlockDialog::entry_unlock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="a100f356b1eb9f6574b349e7573408235"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a100f356b1eb9f6574b349e7573408235">&#9670;&nbsp;</a></span>retval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint _RemminaUnlockDialog::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00050">50</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<a id="a3ffac9bfa0017cd0e142adbba489274b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ffac9bfa0017cd0e142adbba489274b">&#9670;&nbsp;</a></span>unlock_init</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean _RemminaUnlockDialog::unlock_init</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__unlock_8h_source.html#l00048">48</a> of file <a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__unlock_8h_source.html">remmina_unlock.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct___remmina_unlock_dialog.html">_RemminaUnlockDialog</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct___remmina_unlock_dialog.js b/docs/struct___remmina_unlock_dialog.js
new file mode 100644
index 000000000..a1a3835c1
--- /dev/null
+++ b/docs/struct___remmina_unlock_dialog.js
@@ -0,0 +1,10 @@
+var struct___remmina_unlock_dialog =
+[
+ [ "builder", "struct___remmina_unlock_dialog.html#adea2159828578aefa4d3833083b9de2b", null ],
+ [ "button_unlock", "struct___remmina_unlock_dialog.html#a0a4303634a8342c96dd71e8d7d3e9e7d", null ],
+ [ "button_unlock_cancel", "struct___remmina_unlock_dialog.html#af4d3370e923f377e8e0af96deabc5a44", null ],
+ [ "dialog", "struct___remmina_unlock_dialog.html#a2612295677b0f040e55470018c26628e", null ],
+ [ "entry_unlock", "struct___remmina_unlock_dialog.html#ae104a7396def58ceb51949e73a9b5109", null ],
+ [ "retval", "struct___remmina_unlock_dialog.html#a100f356b1eb9f6574b349e7573408235", null ],
+ [ "unlock_init", "struct___remmina_unlock_dialog.html#a3ffac9bfa0017cd0e142adbba489274b", null ]
+]; \ No newline at end of file
diff --git a/docs/struct_mp_run_info.html b/docs/struct_mp_run_info.html
new file mode 100644
index 000000000..5e8b8f44b
--- /dev/null
+++ b/docs/struct_mp_run_info.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: MpRunInfo Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct_mp_run_info.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">MpRunInfo Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a5c72860dd91def572bad1443e2c188a5"><td class="memItemLeft" align="right" valign="top">RemminaMessagePanel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5">mp</a></td></tr>
+<tr class="separator:a5c72860dd91def572bad1443e2c188a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbbf3faafdfa1a05fd787730d1668079"><td class="memItemLeft" align="right" valign="top">GMainLoop *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079">loop</a></td></tr>
+<tr class="separator:acbbf3faafdfa1a05fd787730d1668079"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb8e8aaf721611a761541a325e2a5904"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904">response</a></td></tr>
+<tr class="separator:acb8e8aaf721611a761541a325e2a5904"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c8cb7c26289f2afa4fcd87fced6bb91"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91">destroyed</a></td></tr>
+<tr class="separator:a5c8cb7c26289f2afa4fcd87fced6bb91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01299">1299</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a5c8cb7c26289f2afa4fcd87fced6bb91"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c8cb7c26289f2afa4fcd87fced6bb91">&#9670;&nbsp;</a></span>destroyed</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean MpRunInfo::destroyed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01303">1303</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="acbbf3faafdfa1a05fd787730d1668079"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acbbf3faafdfa1a05fd787730d1668079">&#9670;&nbsp;</a></span>loop</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GMainLoop* MpRunInfo::loop</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01301">1301</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a5c72860dd91def572bad1443e2c188a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c72860dd91def572bad1443e2c188a5">&#9670;&nbsp;</a></span>mp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* MpRunInfo::mp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01300">1300</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="acb8e8aaf721611a761541a325e2a5904"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb8e8aaf721611a761541a325e2a5904">&#9670;&nbsp;</a></span>response</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint MpRunInfo::response</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01302">1302</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct_mp_run_info.html">MpRunInfo</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct_mp_run_info.js b/docs/struct_mp_run_info.js
new file mode 100644
index 000000000..cad1bb3c1
--- /dev/null
+++ b/docs/struct_mp_run_info.js
@@ -0,0 +1,7 @@
+var struct_mp_run_info =
+[
+ [ "destroyed", "struct_mp_run_info.html#a5c8cb7c26289f2afa4fcd87fced6bb91", null ],
+ [ "loop", "struct_mp_run_info.html#acbbf3faafdfa1a05fd787730d1668079", null ],
+ [ "mp", "struct_mp_run_info.html#a5c72860dd91def572bad1443e2c188a5", null ],
+ [ "response", "struct_mp_run_info.html#acb8e8aaf721611a761541a325e2a5904", null ]
+]; \ No newline at end of file
diff --git a/docs/struct_p_con___spinner.html b/docs/struct_p_con___spinner.html
new file mode 100644
index 000000000..d677203e9
--- /dev/null
+++ b/docs/struct_p_con___spinner.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: PCon_Spinner Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct_p_con___spinner.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">PCon_Spinner Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aa0004e88608c893e343a9a2b3e50f646"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646">dialog</a></td></tr>
+<tr class="separator:aa0004e88608c893e343a9a2b3e50f646"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7f4061ced82dace307fb70c08348281"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281">label_pleasewait</a></td></tr>
+<tr class="separator:ae7f4061ced82dace307fb70c08348281"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7322b598d596a57d8424d90762c588e"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e">button_cancel</a></td></tr>
+<tr class="separator:ab7322b598d596a57d8424d90762c588e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a895fd84ca4c0a4410b90b9690b5af046"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046">spinner</a></td></tr>
+<tr class="separator:a895fd84ca4c0a4410b90b9690b5af046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ab7322b598d596a57d8424d90762c588e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab7322b598d596a57d8424d90762c588e">&#9670;&nbsp;</a></span>button_cancel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* PCon_Spinner::button_cancel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="aa0004e88608c893e343a9a2b3e50f646"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa0004e88608c893e343a9a2b3e50f646">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* PCon_Spinner::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8h_source.html#l00041">41</a> of file <a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ae7f4061ced82dace307fb70c08348281"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae7f4061ced82dace307fb70c08348281">&#9670;&nbsp;</a></span>label_pleasewait</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* PCon_Spinner::label_pleasewait</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a895fd84ca4c0a4410b90b9690b5af046"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a895fd84ca4c0a4410b90b9690b5af046">&#9670;&nbsp;</a></span>spinner</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* PCon_Spinner::spinner</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__ext__exec_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__ext__exec_8h_source.html">remmina_ext_exec.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct_p_con___spinner.html">PCon_Spinner</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct_p_con___spinner.js b/docs/struct_p_con___spinner.js
new file mode 100644
index 000000000..af5617905
--- /dev/null
+++ b/docs/struct_p_con___spinner.js
@@ -0,0 +1,7 @@
+var struct_p_con___spinner =
+[
+ [ "button_cancel", "struct_p_con___spinner.html#ab7322b598d596a57d8424d90762c588e", null ],
+ [ "dialog", "struct_p_con___spinner.html#aa0004e88608c893e343a9a2b3e50f646", null ],
+ [ "label_pleasewait", "struct_p_con___spinner.html#ae7f4061ced82dace307fb70c08348281", null ],
+ [ "spinner", "struct_p_con___spinner.html#a895fd84ca4c0a4410b90b9690b5af046", null ]
+]; \ No newline at end of file
diff --git a/docs/struct_profiles_data.html b/docs/struct_profiles_data.html
new file mode 100644
index 000000000..55a1a4567
--- /dev/null
+++ b/docs/struct_profiles_data.html
@@ -0,0 +1,228 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: ProfilesData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct_profiles_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">ProfilesData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:af82cb4649acce0ce21aefca9eb6430ef"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef">proto_count</a></td></tr>
+<tr class="separator:af82cb4649acce0ce21aefca9eb6430ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a010a740c75d19daf63572f87565ae956"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#a010a740c75d19daf63572f87565ae956">proto_date</a></td></tr>
+<tr class="separator:a010a740c75d19daf63572f87565ae956"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d3134f43d61603be7b021e62305633a"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a">protocol</a></td></tr>
+<tr class="separator:a7d3134f43d61603be7b021e62305633a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1078e772be8dfc9aad54d3f14efd96c4"><td class="memItemLeft" align="right" valign="top">const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4">pdatestr</a></td></tr>
+<tr class="memdesc:a1078e772be8dfc9aad54d3f14efd96c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Key in the proto_count hash table. <a href="#a1078e772be8dfc9aad54d3f14efd96c4">More...</a><br /></td></tr>
+<tr class="separator:a1078e772be8dfc9aad54d3f14efd96c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc9e80a1835d8ec7e84ee74b82a0d680"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680">pcount</a></td></tr>
+<tr class="memdesc:afc9e80a1835d8ec7e84ee74b82a0d680"><td class="mdescLeft">&#160;</td><td class="mdescRight">Date in string format in the proto_date hash table. <a href="#afc9e80a1835d8ec7e84ee74b82a0d680">More...</a><br /></td></tr>
+<tr class="separator:afc9e80a1835d8ec7e84ee74b82a0d680"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16267e0d71d796422278afdeba50c13b"><td class="memItemLeft" align="right" valign="top">gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b">datestr</a></td></tr>
+<tr class="separator:a16267e0d71d796422278afdeba50c13b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00162">162</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a16267e0d71d796422278afdeba50c13b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a16267e0d71d796422278afdeba50c13b">&#9670;&nbsp;</a></span>datestr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar ProfilesData::datestr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00168">168</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="afc9e80a1835d8ec7e84ee74b82a0d680"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afc9e80a1835d8ec7e84ee74b82a0d680">&#9670;&nbsp;</a></span>pcount</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint ProfilesData::pcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Date in string format in the proto_date hash table. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00167">167</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a1078e772be8dfc9aad54d3f14efd96c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1078e772be8dfc9aad54d3f14efd96c4">&#9670;&nbsp;</a></span>pdatestr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* ProfilesData::pdatestr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Key in the proto_count hash table. </p>
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00166">166</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="af82cb4649acce0ce21aefca9eb6430ef"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af82cb4649acce0ce21aefca9eb6430ef">&#9670;&nbsp;</a></span>proto_count</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* ProfilesData::proto_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00163">163</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a010a740c75d19daf63572f87565ae956"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a010a740c75d19daf63572f87565ae956">&#9670;&nbsp;</a></span>proto_date</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* ProfilesData::proto_date</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00164">164</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<a id="a7d3134f43d61603be7b021e62305633a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d3134f43d61603be7b021e62305633a">&#9670;&nbsp;</a></span>protocol</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* ProfilesData::protocol</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats_8c_source.html#l00165">165</a> of file <a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__stats_8c_source.html">remmina_stats.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct_profiles_data.html">ProfilesData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct_profiles_data.js b/docs/struct_profiles_data.js
new file mode 100644
index 000000000..f25d356c8
--- /dev/null
+++ b/docs/struct_profiles_data.js
@@ -0,0 +1,9 @@
+var struct_profiles_data =
+[
+ [ "datestr", "struct_profiles_data.html#a16267e0d71d796422278afdeba50c13b", null ],
+ [ "pcount", "struct_profiles_data.html#afc9e80a1835d8ec7e84ee74b82a0d680", null ],
+ [ "pdatestr", "struct_profiles_data.html#a1078e772be8dfc9aad54d3f14efd96c4", null ],
+ [ "proto_count", "struct_profiles_data.html#af82cb4649acce0ce21aefca9eb6430ef", null ],
+ [ "proto_date", "struct_profiles_data.html#a010a740c75d19daf63572f87565ae956", null ],
+ [ "protocol", "struct_profiles_data.html#a7d3134f43d61603be7b021e62305633a", null ]
+]; \ No newline at end of file
diff --git a/docs/struct_remmina_message_panel_private.html b/docs/struct_remmina_message_panel_private.html
new file mode 100644
index 000000000..21cec13fc
--- /dev/null
+++ b/docs/struct_remmina_message_panel_private.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: RemminaMessagePanelPrivate Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('struct_remmina_message_panel_private.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">RemminaMessagePanelPrivate Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a9766a5c72bd815501e2ba0a5ac8cd283"><td class="memItemLeft" align="right" valign="top"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283">response_callback</a></td></tr>
+<tr class="separator:a9766a5c72bd815501e2ba0a5ac8cd283"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6595dbe739d97d82e36c6e0878bcf1d4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4">response_callback_data</a></td></tr>
+<tr class="separator:a6595dbe739d97d82e36c6e0878bcf1d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cbab11c19f590bf2ec253eb694b93f8"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8">w</a> [<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a>]</td></tr>
+<tr class="separator:a7cbab11c19f590bf2ec253eb694b93f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00047">47</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a9766a5c72bd815501e2ba0a5ac8cd283"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9766a5c72bd815501e2ba0a5ac8cd283">&#9670;&nbsp;</a></span>response_callback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> RemminaMessagePanelPrivate::response_callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00050">50</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a6595dbe739d97d82e36c6e0878bcf1d4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6595dbe739d97d82e36c6e0878bcf1d4">&#9670;&nbsp;</a></span>response_callback_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* RemminaMessagePanelPrivate::response_callback_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00051">51</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<a id="a7cbab11c19f590bf2ec253eb694b93f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7cbab11c19f590bf2ec253eb694b93f8">&#9670;&nbsp;</a></span>w</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* RemminaMessagePanelPrivate::w[<a class="el" href="remmina__message__panel_8h.html#ae4d5251432e1a9e6803c0240cc492e18ae335afb8ce18f75a427da98b1d84f10a">REMMINA_MESSAGE_PANEL_MAXWIDGETID</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__message__panel_8c_source.html#l00052">52</a> of file <a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__message__panel_8c_source.html">remmina_message_panel.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="struct_remmina_message_panel_private.html">RemminaMessagePanelPrivate</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/struct_remmina_message_panel_private.js b/docs/struct_remmina_message_panel_private.js
new file mode 100644
index 000000000..be8bb9391
--- /dev/null
+++ b/docs/struct_remmina_message_panel_private.js
@@ -0,0 +1,6 @@
+var struct_remmina_message_panel_private =
+[
+ [ "response_callback", "struct_remmina_message_panel_private.html#a9766a5c72bd815501e2ba0a5ac8cd283", null ],
+ [ "response_callback_data", "struct_remmina_message_panel_private.html#a6595dbe739d97d82e36c6e0878bcf1d4", null ],
+ [ "w", "struct_remmina_message_panel_private.html#a7cbab11c19f590bf2ec253eb694b93f8", null ]
+]; \ No newline at end of file
diff --git a/docs/structdistro__info.html b/docs/structdistro__info.html
new file mode 100644
index 000000000..47bc1c720
--- /dev/null
+++ b/docs/structdistro__info.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: distro_info Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structdistro__info.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">distro_info Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a27013edbc763fecb35337ca0affacfc2"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdistro__info.html#a27013edbc763fecb35337ca0affacfc2">name</a></td></tr>
+<tr class="separator:a27013edbc763fecb35337ca0affacfc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1999084b11586bdb56bc2453fce7f633"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdistro__info.html#a1999084b11586bdb56bc2453fce7f633">filename</a></td></tr>
+<tr class="separator:a1999084b11586bdb56bc2453fce7f633"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00074">74</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a1999084b11586bdb56bc2453fce7f633"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1999084b11586bdb56bc2453fce7f633">&#9670;&nbsp;</a></span>filename</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* distro_info::filename</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a27013edbc763fecb35337ca0affacfc2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a27013edbc763fecb35337ca0affacfc2">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* distro_info::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00075">75</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structdistro__info.html">distro_info</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structdistro__info.js b/docs/structdistro__info.js
new file mode 100644
index 000000000..14dd7c792
--- /dev/null
+++ b/docs/structdistro__info.js
@@ -0,0 +1,5 @@
+var structdistro__info =
+[
+ [ "filename", "structdistro__info.html#a1999084b11586bdb56bc2453fce7f633", null ],
+ [ "name", "structdistro__info.html#a27013edbc763fecb35337ca0affacfc2", null ]
+]; \ No newline at end of file
diff --git a/docs/structlsb__distro__info.html b/docs/structlsb__distro__info.html
new file mode 100644
index 000000000..c0c015aca
--- /dev/null
+++ b/docs/structlsb__distro__info.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: lsb_distro_info Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structlsb__distro__info.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">lsb_distro_info Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a251763a49054183774e2082595537e47"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlsb__distro__info.html#a251763a49054183774e2082595537e47">name</a></td></tr>
+<tr class="separator:a251763a49054183774e2082595537e47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7aba92d963bcaed1a5dda7b7be4fa6d7"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7">scanstring</a></td></tr>
+<tr class="separator:a7aba92d963bcaed1a5dda7b7be4fa6d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a251763a49054183774e2082595537e47"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a251763a49054183774e2082595537e47">&#9670;&nbsp;</a></span>name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* lsb_distro_info::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a7aba92d963bcaed1a5dda7b7be4fa6d7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7aba92d963bcaed1a5dda7b7be4fa6d7">&#9670;&nbsp;</a></span>scanstring</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* lsb_distro_info::scanstring</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__utils_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__utils_8c_source.html">remmina_utils.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structlsb__distro__info.html">lsb_distro_info</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structlsb__distro__info.js b/docs/structlsb__distro__info.js
new file mode 100644
index 000000000..4fb5fc7cf
--- /dev/null
+++ b/docs/structlsb__distro__info.js
@@ -0,0 +1,5 @@
+var structlsb__distro__info =
+[
+ [ "name", "structlsb__distro__info.html#a251763a49054183774e2082595537e47", null ],
+ [ "scanstring", "structlsb__distro__info.html#a7aba92d963bcaed1a5dda7b7be4fa6d7", null ]
+]; \ No newline at end of file
diff --git a/docs/structmpchanger__params.html b/docs/structmpchanger__params.html
new file mode 100644
index 000000000..df7fdc73f
--- /dev/null
+++ b/docs/structmpchanger__params.html
@@ -0,0 +1,438 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: mpchanger_params Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structmpchanger__params.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">mpchanger_params Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a634dd9d08486b2a435fba15119db6742"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742">username</a></td></tr>
+<tr class="separator:a634dd9d08486b2a435fba15119db6742"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90af95c96a92c2aff1c2ab4be2e40f5c"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c">domain</a></td></tr>
+<tr class="separator:a90af95c96a92c2aff1c2ab4be2e40f5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41f51745fc0e63d75d15fc80aaa4a29e"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e">password</a></td></tr>
+<tr class="separator:a41f51745fc0e63d75d15fc80aaa4a29e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a098952d194a183d4a505aa065797864b"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a098952d194a183d4a505aa065797864b">group</a></td></tr>
+<tr class="separator:a098952d194a183d4a505aa065797864b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab39b307ec320e66e34dd5b6a8c56d348"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348">eGroup</a></td></tr>
+<tr class="separator:ab39b307ec320e66e34dd5b6a8c56d348"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace846a15a537aecd0de2a17a1203c809"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809">eUsername</a></td></tr>
+<tr class="separator:ace846a15a537aecd0de2a17a1203c809"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae582e14f2f790ea6bfdf81d5920e51ed"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed">eDomain</a></td></tr>
+<tr class="separator:ae582e14f2f790ea6bfdf81d5920e51ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1af698dc2f5c11ef826938652fd0245"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245">ePassword1</a></td></tr>
+<tr class="separator:aa1af698dc2f5c11ef826938652fd0245"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c5b14d537a1b0685027d50d2a4cf9be"><td class="memItemLeft" align="right" valign="top">GtkEntry *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be">ePassword2</a></td></tr>
+<tr class="separator:a5c5b14d537a1b0685027d50d2a4cf9be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f0a338901d8e6195eb872b0f2098e73"><td class="memItemLeft" align="right" valign="top">GtkListStore *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73">store</a></td></tr>
+<tr class="separator:a3f0a338901d8e6195eb872b0f2098e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf52357ac6f70f8bead49111deff9568"><td class="memItemLeft" align="right" valign="top">GtkDialog *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568">dialog</a></td></tr>
+<tr class="separator:adf52357ac6f70f8bead49111deff9568"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87576a4dfe04c11686cf574669331bb2"><td class="memItemLeft" align="right" valign="top">GtkTreeView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2">table</a></td></tr>
+<tr class="separator:a87576a4dfe04c11686cf574669331bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaccae78b49c585d0a4d34776152ae5a2"><td class="memItemLeft" align="right" valign="top">GtkButton *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2">btnDoChange</a></td></tr>
+<tr class="separator:aaccae78b49c585d0a4d34776152ae5a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9c16b65f1d27a62e2622b79f1aaf7bd"><td class="memItemLeft" align="right" valign="top">GtkLabel *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd">statusLabel</a></td></tr>
+<tr class="separator:ac9c16b65f1d27a62e2622b79f1aaf7bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb4141ca61b0b9a5584239386dbbe46"><td class="memItemLeft" align="right" valign="top">GtkTreeIter&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46">iter</a></td></tr>
+<tr class="separator:a3cb4141ca61b0b9a5584239386dbbe46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44429b8b620590ed1e1e015af6191719"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719">changed_passwords_count</a></td></tr>
+<tr class="separator:a44429b8b620590ed1e1e015af6191719"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a170ffe7965540ab152a4a95945482c87"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87">sid</a></td></tr>
+<tr class="separator:a170ffe7965540ab152a4a95945482c87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8fdacd94418731904020ff679475918"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmpchanger__params.html#ac8fdacd94418731904020ff679475918">searchentrychange_timeout_source_id</a></td></tr>
+<tr class="separator:ac8fdacd94418731904020ff679475918"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00052">52</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="aaccae78b49c585d0a4d34776152ae5a2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaccae78b49c585d0a4d34776152ae5a2">&#9670;&nbsp;</a></span>btnDoChange</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkButton* mpchanger_params::btnDoChange</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00063">63</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a44429b8b620590ed1e1e015af6191719"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a44429b8b620590ed1e1e015af6191719">&#9670;&nbsp;</a></span>changed_passwords_count</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int mpchanger_params::changed_passwords_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00067">67</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="adf52357ac6f70f8bead49111deff9568"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf52357ac6f70f8bead49111deff9568">&#9670;&nbsp;</a></span>dialog</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkDialog* mpchanger_params::dialog</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00061">61</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a90af95c96a92c2aff1c2ab4be2e40f5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a90af95c96a92c2aff1c2ab4be2e40f5c">&#9670;&nbsp;</a></span>domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* mpchanger_params::domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00054">54</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ae582e14f2f790ea6bfdf81d5920e51ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae582e14f2f790ea6bfdf81d5920e51ed">&#9670;&nbsp;</a></span>eDomain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry * mpchanger_params::eDomain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ab39b307ec320e66e34dd5b6a8c56d348"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab39b307ec320e66e34dd5b6a8c56d348">&#9670;&nbsp;</a></span>eGroup</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* mpchanger_params::eGroup</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="aa1af698dc2f5c11ef826938652fd0245"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa1af698dc2f5c11ef826938652fd0245">&#9670;&nbsp;</a></span>ePassword1</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry* mpchanger_params::ePassword1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a5c5b14d537a1b0685027d50d2a4cf9be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c5b14d537a1b0685027d50d2a4cf9be">&#9670;&nbsp;</a></span>ePassword2</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry * mpchanger_params::ePassword2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00059">59</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ace846a15a537aecd0de2a17a1203c809"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ace846a15a537aecd0de2a17a1203c809">&#9670;&nbsp;</a></span>eUsername</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkEntry * mpchanger_params::eUsername</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00058">58</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a098952d194a183d4a505aa065797864b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a098952d194a183d4a505aa065797864b">&#9670;&nbsp;</a></span>group</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* mpchanger_params::group</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00056">56</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a3cb4141ca61b0b9a5584239386dbbe46"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3cb4141ca61b0b9a5584239386dbbe46">&#9670;&nbsp;</a></span>iter</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeIter mpchanger_params::iter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00066">66</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a41f51745fc0e63d75d15fc80aaa4a29e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41f51745fc0e63d75d15fc80aaa4a29e">&#9670;&nbsp;</a></span>password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* mpchanger_params::password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00055">55</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ac8fdacd94418731904020ff679475918"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8fdacd94418731904020ff679475918">&#9670;&nbsp;</a></span>searchentrychange_timeout_source_id</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint mpchanger_params::searchentrychange_timeout_source_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00069">69</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a170ffe7965540ab152a4a95945482c87"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a170ffe7965540ab152a4a95945482c87">&#9670;&nbsp;</a></span>sid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint mpchanger_params::sid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00068">68</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="ac9c16b65f1d27a62e2622b79f1aaf7bd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9c16b65f1d27a62e2622b79f1aaf7bd">&#9670;&nbsp;</a></span>statusLabel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* mpchanger_params::statusLabel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00064">64</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a3f0a338901d8e6195eb872b0f2098e73"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f0a338901d8e6195eb872b0f2098e73">&#9670;&nbsp;</a></span>store</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkListStore* mpchanger_params::store</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00060">60</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a87576a4dfe04c11686cf574669331bb2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a87576a4dfe04c11686cf574669331bb2">&#9670;&nbsp;</a></span>table</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTreeView* mpchanger_params::table</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00062">62</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<a id="a634dd9d08486b2a435fba15119db6742"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a634dd9d08486b2a435fba15119db6742">&#9670;&nbsp;</a></span>username</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* mpchanger_params::username</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__mpchange_8c_source.html#l00053">53</a> of file <a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__mpchange_8c_source.html">remmina_mpchange.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structmpchanger__params.html">mpchanger_params</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structmpchanger__params.js b/docs/structmpchanger__params.js
new file mode 100644
index 000000000..1adcbb15c
--- /dev/null
+++ b/docs/structmpchanger__params.js
@@ -0,0 +1,21 @@
+var structmpchanger__params =
+[
+ [ "btnDoChange", "structmpchanger__params.html#aaccae78b49c585d0a4d34776152ae5a2", null ],
+ [ "changed_passwords_count", "structmpchanger__params.html#a44429b8b620590ed1e1e015af6191719", null ],
+ [ "dialog", "structmpchanger__params.html#adf52357ac6f70f8bead49111deff9568", null ],
+ [ "domain", "structmpchanger__params.html#a90af95c96a92c2aff1c2ab4be2e40f5c", null ],
+ [ "eDomain", "structmpchanger__params.html#ae582e14f2f790ea6bfdf81d5920e51ed", null ],
+ [ "eGroup", "structmpchanger__params.html#ab39b307ec320e66e34dd5b6a8c56d348", null ],
+ [ "ePassword1", "structmpchanger__params.html#aa1af698dc2f5c11ef826938652fd0245", null ],
+ [ "ePassword2", "structmpchanger__params.html#a5c5b14d537a1b0685027d50d2a4cf9be", null ],
+ [ "eUsername", "structmpchanger__params.html#ace846a15a537aecd0de2a17a1203c809", null ],
+ [ "group", "structmpchanger__params.html#a098952d194a183d4a505aa065797864b", null ],
+ [ "iter", "structmpchanger__params.html#a3cb4141ca61b0b9a5584239386dbbe46", null ],
+ [ "password", "structmpchanger__params.html#a41f51745fc0e63d75d15fc80aaa4a29e", null ],
+ [ "searchentrychange_timeout_source_id", "structmpchanger__params.html#ac8fdacd94418731904020ff679475918", null ],
+ [ "sid", "structmpchanger__params.html#a170ffe7965540ab152a4a95945482c87", null ],
+ [ "statusLabel", "structmpchanger__params.html#ac9c16b65f1d27a62e2622b79f1aaf7bd", null ],
+ [ "store", "structmpchanger__params.html#a3f0a338901d8e6195eb872b0f2098e73", null ],
+ [ "table", "structmpchanger__params.html#a87576a4dfe04c11686cf574669331bb2", null ],
+ [ "username", "structmpchanger__params.html#a634dd9d08486b2a435fba15119db6742", null ]
+]; \ No newline at end of file
diff --git a/docs/structon_main_thread__cb__data.html b/docs/structon_main_thread__cb__data.html
new file mode 100644
index 000000000..7a72414a0
--- /dev/null
+++ b/docs/structon_main_thread__cb__data.html
@@ -0,0 +1,394 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: onMainThread_cb_data Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structon_main_thread__cb__data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">onMainThread_cb_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a8dce509d35266103147d929be769a8a3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc">FUNC_GTK_SOCKET_ADD_ID</a>
+ }</td></tr>
+<tr class="separator:a8dce509d35266103147d929be769a8a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a998d94200166f05e952e7130719799a7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">FUNC_UPDATE_SCALE</a>
+ }</td></tr>
+<tr class="separator:a998d94200166f05e952e7130719799a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ae1c4269d260792a4cdb1c160229d3172"><td class="memItemLeft" align="right" valign="top">enum onMainThread_cb_data:: { ... } &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a></td></tr>
+<tr class="separator:ae1c4269d260792a4cdb1c160229d3172"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b2f9914552d4323f98a60e6bdcc99c4"><td class="memItemLeft" align="right" valign="top">GtkSocket *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4">sk</a></td></tr>
+<tr class="separator:a6b2f9914552d4323f98a60e6bdcc99c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2819729ddf9ffa92927a4ef7d3a6e0f8"><td class="memItemLeft" align="right" valign="top">Window&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a></td></tr>
+<tr class="separator:a2819729ddf9ffa92927a4ef7d3a6e0f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd2e5f24279a00e0d426d67604dc8fbc"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a></td></tr>
+<tr class="separator:acd2e5f24279a00e0d426d67604dc8fbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75eab61445fbabacaa34f95e2437ea75"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a></td></tr>
+<tr class="separator:a75eab61445fbabacaa34f95e2437ea75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b555e0dc84d0475e25ec578ca05e19b"><td class="memItemLeft" align="right" valign="top">enum onMainThread_cb_data:: { ... } &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a2b555e0dc84d0475e25ec578ca05e19b">func</a></td></tr>
+<tr class="separator:a2b555e0dc84d0475e25ec578ca05e19b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0d50114cec8cfdd7692a39c1fdba783"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a></td></tr>
+<tr class="separator:af0d50114cec8cfdd7692a39c1fdba783"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92fd0bfc7715dcb8237a002850701222"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a></td></tr>
+<tr class="separator:a92fd0bfc7715dcb8237a002850701222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec2ab8de1fa3f948ada7bd70ce2b353f"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a></td></tr>
+<tr class="separator:aec2ab8de1fa3f948ada7bd70ce2b353f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bf0f89b3c961ac28ccae9a9e1060db4"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a></td></tr>
+<tr class="separator:a8bf0f89b3c961ac28ccae9a9e1060db4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa01cccfd573952ec0cd5df823e2d8f74"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a></td></tr>
+<tr class="separator:aa01cccfd573952ec0cd5df823e2d8f74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4019cdd5ac560eb1cd47d9f924831bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a></td></tr>
+<tr class="separator:ad4019cdd5ac560eb1cd47d9f924831bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af55aa025154991f8c762e93074eec242"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a></td></tr>
+<tr class="separator:af55aa025154991f8c762e93074eec242"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00068">68</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a id="a8dce509d35266103147d929be769a8a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8dce509d35266103147d929be769a8a3">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc"></a>FUNC_GTK_SOCKET_ADD_ID&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00069">69</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a998d94200166f05e952e7130719799a7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a998d94200166f05e952e7130719799a7">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41"></a>FUNC_UPDATE_SCALE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00065">65</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a id="a75eab61445fbabacaa34f95e2437ea75"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a75eab61445fbabacaa34f95e2437ea75">&#9670;&nbsp;</a></span>cancelled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean onMainThread_cb_data::cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00077">77</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b555e0dc84d0475e25ec578ca05e19b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b555e0dc84d0475e25ec578ca05e19b">&#9670;&nbsp;</a></span>func <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum { ... } onMainThread_cb_data::func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae1c4269d260792a4cdb1c160229d3172"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1c4269d260792a4cdb1c160229d3172">&#9670;&nbsp;</a></span>func <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum { ... } onMainThread_cb_data::func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad4019cdd5ac560eb1cd47d9f924831bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4019cdd5ac560eb1cd47d9f924831bb">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* onMainThread_cb_data::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00068">68</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa01cccfd573952ec0cd5df823e2d8f74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa01cccfd573952ec0cd5df823e2d8f74">&#9670;&nbsp;</a></span>height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint onMainThread_cb_data::height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00067">67</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acd2e5f24279a00e0d426d67604dc8fbc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd2e5f24279a00e0d426d67604dc8fbc">&#9670;&nbsp;</a></span>mu</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t onMainThread_cb_data::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00075">75</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af55aa025154991f8c762e93074eec242"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af55aa025154991f8c762e93074eec242">&#9670;&nbsp;</a></span>scale</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean onMainThread_cb_data::scale</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00069">69</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6b2f9914552d4323f98a60e6bdcc99c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6b2f9914552d4323f98a60e6bdcc99c4">&#9670;&nbsp;</a></span>sk</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkSocket* onMainThread_cb_data::sk</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00071">71</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2819729ddf9ffa92927a4ef7d3a6e0f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2819729ddf9ffa92927a4ef7d3a6e0f8">&#9670;&nbsp;</a></span>w</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Window onMainThread_cb_data::w</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="nx__plugin_8c_source.html#l00072">72</a> of file <a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af0d50114cec8cfdd7692a39c1fdba783"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0d50114cec8cfdd7692a39c1fdba783">&#9670;&nbsp;</a></span>widget</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* onMainThread_cb_data::widget</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00066">66</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8bf0f89b3c961ac28ccae9a9e1060db4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8bf0f89b3c961ac28ccae9a9e1060db4">&#9670;&nbsp;</a></span>width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint onMainThread_cb_data::width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00067">67</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a92fd0bfc7715dcb8237a002850701222"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92fd0bfc7715dcb8237a002850701222">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint onMainThread_cb_data::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00067">67</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aec2ab8de1fa3f948ada7bd70ce2b353f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aec2ab8de1fa3f948ada7bd70ce2b353f">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint onMainThread_cb_data::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00067">67</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li><a class="el" href="nx__plugin_8c_source.html">nx_plugin.c</a></li>
+<li><a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structon_main_thread__cb__data.js b/docs/structon_main_thread__cb__data.js
new file mode 100644
index 000000000..eafadded2
--- /dev/null
+++ b/docs/structon_main_thread__cb__data.js
@@ -0,0 +1,18 @@
+var structon_main_thread__cb__data =
+[
+ [ "FUNC_GTK_SOCKET_ADD_ID", "structon_main_thread__cb__data.html#a8dce509d35266103147d929be769a8a3adb238fcd1e49b305021c338178922fbc", null ],
+ [ "FUNC_UPDATE_SCALE", "structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41", null ],
+ [ "cancelled", "structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75", null ],
+ [ "func", "structon_main_thread__cb__data.html#a2b555e0dc84d0475e25ec578ca05e19b", null ],
+ [ "func", "structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172", null ],
+ [ "gp", "structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb", null ],
+ [ "height", "structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74", null ],
+ [ "mu", "structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc", null ],
+ [ "scale", "structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242", null ],
+ [ "sk", "structon_main_thread__cb__data.html#a6b2f9914552d4323f98a60e6bdcc99c4", null ],
+ [ "w", "structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8", null ],
+ [ "widget", "structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783", null ],
+ [ "width", "structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4", null ],
+ [ "x", "structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222", null ],
+ [ "y", "structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f", null ]
+]; \ No newline at end of file
diff --git a/docs/structregion.html b/docs/structregion.html
new file mode 100644
index 000000000..7c05f5083
--- /dev/null
+++ b/docs/structregion.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: region Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structregion.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">region Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad258e7b02e819b46656294de5e4bd8ad"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregion.html#ad258e7b02e819b46656294de5e4bd8ad">x</a></td></tr>
+<tr class="separator:ad258e7b02e819b46656294de5e4bd8ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97015e361d0cbedf7dcab10fbea95b10"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregion.html#a97015e361d0cbedf7dcab10fbea95b10">y</a></td></tr>
+<tr class="separator:a97015e361d0cbedf7dcab10fbea95b10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b8e9f37558f5a790945b9dc1cbcadb6"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6">w</a></td></tr>
+<tr class="separator:a3b8e9f37558f5a790945b9dc1cbcadb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a585e1a437e6e8f8a80785aec2f2762c8"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregion.html#a585e1a437e6e8f8a80785aec2f2762c8">h</a></td></tr>
+<tr class="separator:a585e1a437e6e8f8a80785aec2f2762c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00185">185</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a585e1a437e6e8f8a80785aec2f2762c8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a585e1a437e6e8f8a80785aec2f2762c8">&#9670;&nbsp;</a></span>h</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint region::h</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00186">186</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3b8e9f37558f5a790945b9dc1cbcadb6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b8e9f37558f5a790945b9dc1cbcadb6">&#9670;&nbsp;</a></span>w</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint region::w</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00186">186</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad258e7b02e819b46656294de5e4bd8ad"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad258e7b02e819b46656294de5e4bd8ad">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint region::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00186">186</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a97015e361d0cbedf7dcab10fbea95b10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97015e361d0cbedf7dcab10fbea95b10">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint region::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00186">186</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structregion.html">region</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structregion.js b/docs/structregion.js
new file mode 100644
index 000000000..6b5e98615
--- /dev/null
+++ b/docs/structregion.js
@@ -0,0 +1,7 @@
+var structregion =
+[
+ [ "h", "structregion.html#a585e1a437e6e8f8a80785aec2f2762c8", null ],
+ [ "w", "structregion.html#a3b8e9f37558f5a790945b9dc1cbcadb6", null ],
+ [ "x", "structregion.html#ad258e7b02e819b46656294de5e4bd8ad", null ],
+ [ "y", "structregion.html#a97015e361d0cbedf7dcab10fbea95b10", null ]
+]; \ No newline at end of file
diff --git a/docs/structremmina__masterthread__exec__data.html b/docs/structremmina__masterthread__exec__data.html
new file mode 100644
index 000000000..206de5f6f
--- /dev/null
+++ b/docs/structremmina__masterthread__exec__data.html
@@ -0,0 +1,960 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_masterthread_exec_data Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structremmina__masterthread__exec__data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_masterthread_exec_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ab9f3329d97b4fd177467566cb0c4e8e9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a">FUNC_GTK_LABEL_SET_TEXT</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d">FUNC_INIT_SAVE_CRED</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537">FUNC_CHAT_RECEIVE</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10">FUNC_FILE_GET_STRING</a>,
+<br />
+&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82">FUNC_FTP_CLIENT_UPDATE_TASK</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9">FUNC_FTP_CLIENT_GET_WAITING_TASK</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09">FUNC_SFTP_CLIENT_CONFIRM_RESUME</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567">FUNC_PROTOCOLWIDGET_EMIT_SIGNAL</a>,
+<br />
+&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197">FUNC_PROTOCOLWIDGET_MPPROGRESS</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809">FUNC_PROTOCOLWIDGET_MPDESTROY</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b">FUNC_PROTOCOLWIDGET_MPSHOWRETRY</a>,
+<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60">FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN</a>,
+<br />
+&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605">FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY</a>
+<br />
+ }</td></tr>
+<tr class="separator:ab9f3329d97b4fd177467566cb0c4e8e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a4d19c63b1984cdfc63f8216b0e521af1"><td class="memItemLeft" align="right" valign="top">enum remmina_masterthread_exec_data:: { ... } &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1">func</a></td></tr>
+<tr class="separator:a4d19c63b1984cdfc63f8216b0e521af1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53822565f3ba424c2d0332ce1767ed92"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a3fdcb2b5d6d54419ed0ed9ebfc172512"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:aaf9b6189eaf899bb89023d6783e7bb1f"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;GtkLabel *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6">label</a></td></tr>
+<tr class="separator:aaf9b6189eaf899bb89023d6783e7bb1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94570c577b1a2f86cfd6a40a6cd333e1"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea">str</a></td></tr>
+<tr class="separator:a94570c577b1a2f86cfd6a40a6cd333e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fdcb2b5d6d54419ed0ed9ebfc172512"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4">gtk_label_set_text</a></td></tr>
+<tr class="separator:a3fdcb2b5d6d54419ed0ed9ebfc172512"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e21f8542a6c5be948f22dc22193cb15"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a362e6a14c95d15135f7c62ac7d2c46ad"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a></td></tr>
+<tr class="separator:a362e6a14c95d15135f7c62ac7d2c46ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e21f8542a6c5be948f22dc22193cb15"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304">init_save_creds</a></td></tr>
+<tr class="separator:a5e21f8542a6c5be948f22dc22193cb15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab25b0a6fc7bb6e9e1ab1b346feeeb2fe"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a96a25b852df8c359589f84a92d6b5cdd"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a></td></tr>
+<tr class="separator:a96a25b852df8c359589f84a92d6b5cdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e7c4b165201c978793a1b560b526d2d"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de">text</a></td></tr>
+<tr class="separator:a5e7c4b165201c978793a1b560b526d2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab25b0a6fc7bb6e9e1ab1b346feeeb2fe"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020">chat_receive</a></td></tr>
+<tr class="separator:ab25b0a6fc7bb6e9e1ab1b346feeeb2fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab803c76ba84d92ed4b72b369b3bb1d1c"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:acecd762cad2f77a6f798e1a970e4a792"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9">remminafile</a></td></tr>
+<tr class="separator:acecd762cad2f77a6f798e1a970e4a792"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8ee0b460bc49762ddf81116489649a1"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b">setting</a></td></tr>
+<tr class="separator:ac8ee0b460bc49762ddf81116489649a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a055c448b45327fa2cc17ca9eb9b511"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15">retval</a></td></tr>
+<tr class="separator:a5a055c448b45327fa2cc17ca9eb9b511"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab803c76ba84d92ed4b72b369b3bb1d1c"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2">file_get_string</a></td></tr>
+<tr class="separator:ab803c76ba84d92ed4b72b369b3bb1d1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bad7d49da94b218c5357570258c0735"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a87e35b7146947d4a40fce533da0080b6"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">client</a></td></tr>
+<tr class="separator:a87e35b7146947d4a40fce533da0080b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acafa3207cbe401fab18988fe77c195e6"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1">task</a></td></tr>
+<tr class="separator:acafa3207cbe401fab18988fe77c195e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bad7d49da94b218c5357570258c0735"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493">ftp_client_update_task</a></td></tr>
+<tr class="separator:a8bad7d49da94b218c5357570258c0735"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbcb0acf13c24a30c092388648716d79"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a672f9faf701c241ab385f55e49df8c5f"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b">client</a></td></tr>
+<tr class="separator:a672f9faf701c241ab385f55e49df8c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfeff1a548be5fa17c87ffa47bbd22bf"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c">retval</a></td></tr>
+<tr class="separator:adfeff1a548be5fa17c87ffa47bbd22bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbcb0acf13c24a30c092388648716d79"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43">ftp_client_get_waiting_task</a></td></tr>
+<tr class="separator:afbcb0acf13c24a30c092388648716d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7078a8135ab2ab985e1878ac658bd235"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:aaf98026c3d5ee4adf2954cbbf20f8944"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a></td></tr>
+<tr class="separator:aaf98026c3d5ee4adf2954cbbf20f8944"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fd19840133e80df3e1db5319ff8b9ba"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910">signal_name</a></td></tr>
+<tr class="separator:a7fd19840133e80df3e1db5319ff8b9ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7078a8135ab2ab985e1878ac658bd235"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c">protocolwidget_emit_signal</a></td></tr>
+<tr class="separator:a7078a8135ab2ab985e1878ac658bd235"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab354783327b979527250e460b8b2c27a"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a0da0b7f4fcd2d1cab4c8730b9728c341"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">cnnobj</a></td></tr>
+<tr class="separator:a0da0b7f4fcd2d1cab4c8730b9728c341"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1d4e5c9cffcca2930fe7e19870a820e"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1">message</a></td></tr>
+<tr class="separator:ac1d4e5c9cffcca2930fe7e19870a820e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5412678126d979c4c679a3a73642a800"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a>&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543">response_callback</a></td></tr>
+<tr class="separator:a5412678126d979c4c679a3a73642a800"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a800f9f724a278ce046ec887314ef8c00"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gpointer&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658">response_callback_data</a></td></tr>
+<tr class="separator:a800f9f724a278ce046ec887314ef8c00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afae39da1e1eb147291afa18c18fc1021"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;RemminaMessagePanel *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1">ret_mp</a></td></tr>
+<tr class="separator:afae39da1e1eb147291afa18c18fc1021"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab354783327b979527250e460b8b2c27a"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6">protocolwidget_mpprogress</a></td></tr>
+<tr class="separator:ab354783327b979527250e460b8b2c27a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca0bdf082465be9d707a41c78b3db351"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:af6ea334d74f48adbea3d069c0a7f0374"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd">cnnobj</a></td></tr>
+<tr class="separator:af6ea334d74f48adbea3d069c0a7f0374"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3c5a2f6dfbb079ec7e3a018b96ac381"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;RemminaMessagePanel *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050">mp</a></td></tr>
+<tr class="separator:ab3c5a2f6dfbb079ec7e3a018b96ac381"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca0bdf082465be9d707a41c78b3db351"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">protocolwidget_mpdestroy</a></td></tr>
+<tr class="separator:aca0bdf082465be9d707a41c78b3db351"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b7ad8a50e547cb02c3988e3911dccd7"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ab6e07f0e4900388296b55a182152ceb7"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a></td></tr>
+<tr class="separator:ab6e07f0e4900388296b55a182152ceb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b7ad8a50e547cb02c3988e3911dccd7"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1">protocolwidget_mpshowretry</a></td></tr>
+<tr class="separator:a8b7ad8a50e547cb02c3988e3911dccd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d2592d0e8a3504385d6a909039b1097"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a43fb9e16073b6facfdc0218819e5e271"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c">gp</a></td></tr>
+<tr class="separator:a43fb9e16073b6facfdc0218819e5e271"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb679e3a1b04c8cf115d4c89092b5a4"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9">port</a></td></tr>
+<tr class="separator:accb679e3a1b04c8cf115d4c89092b5a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d2592d0e8a3504385d6a909039b1097"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95">protocolwidget_panelshowlisten</a></td></tr>
+<tr class="separator:a9d2592d0e8a3504385d6a909039b1097"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1105b0e5dbda3b9d81f751780353be03"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ad03b2e9eca6348ad6208770f191cf40b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a> *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d">client</a></td></tr>
+<tr class="separator:ad03b2e9eca6348ad6208770f191cf40b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3acba021d3cbfc579efdd646cbae4d8"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const gchar *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9">path</a></td></tr>
+<tr class="separator:ab3acba021d3cbfc579efdd646cbae4d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadf174c7e0b00555e9a547d6a3907c05"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07">retval</a></td></tr>
+<tr class="separator:aadf174c7e0b00555e9a547d6a3907c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1105b0e5dbda3b9d81f751780353be03"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077">sftp_client_confirm_resume</a></td></tr>
+<tr class="separator:a1105b0e5dbda3b9d81f751780353be03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad767cf1d870a5d27a63ec05b2de4b74"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:aea2bd8895c6ca1d5d40018059bf87338"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;VteTerminal *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1">terminal</a></td></tr>
+<tr class="separator:aea2bd8895c6ca1d5d40018059bf87338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80bfeb8bc8476071c4154c389c894a5e"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;const char *&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668">codeset</a></td></tr>
+<tr class="separator:a80bfeb8bc8476071c4154c389c894a5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d485a0dedc5f7fc67189c6b2698cafd"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61">master</a></td></tr>
+<tr class="separator:a2d485a0dedc5f7fc67189c6b2698cafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20fa93f80d7ebf971a5cfa6d99d98067"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e">slave</a></td></tr>
+<tr class="separator:a20fa93f80d7ebf971a5cfa6d99d98067"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad767cf1d870a5d27a63ec05b2de4b74"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327">vte_terminal_set_encoding_and_pty</a></td></tr>
+<tr class="separator:aad767cf1d870a5d27a63ec05b2de4b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53822565f3ba424c2d0332ce1767ed92"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92">p</a></td></tr>
+<tr class="separator:a53822565f3ba424c2d0332ce1767ed92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6766566c40f5265a8ec504e56951319"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319">pt_mutex</a></td></tr>
+<tr class="separator:ad6766566c40f5265a8ec504e56951319"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41d44d1cc03512701f61bb88a983e94b"><td class="memItemLeft" align="right" valign="top">pthread_cond_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b">pt_cond</a></td></tr>
+<tr class="separator:a41d44d1cc03512701f61bb88a983e94b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac390f60a6ecc7312c7e4cbc1c4de0a63"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63">cancelled</a></td></tr>
+<tr class="separator:ac390f60a6ecc7312c7e4cbc1c4de0a63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2609267a5c4dcf8b9cbe411ee51656d9"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9">complete</a></td></tr>
+<tr class="separator:a2609267a5c4dcf8b9cbe411ee51656d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00043">43</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a id="ab9f3329d97b4fd177467566cb0c4e8e9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9f3329d97b4fd177467566cb0c4e8e9">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a"></a>FUNC_GTK_LABEL_SET_TEXT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d"></a>FUNC_INIT_SAVE_CRED&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537"></a>FUNC_CHAT_RECEIVE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10"></a>FUNC_FILE_GET_STRING&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82"></a>FUNC_FTP_CLIENT_UPDATE_TASK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9"></a>FUNC_FTP_CLIENT_GET_WAITING_TASK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09"></a>FUNC_SFTP_CLIENT_CONFIRM_RESUME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567"></a>FUNC_PROTOCOLWIDGET_EMIT_SIGNAL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197"></a>FUNC_PROTOCOLWIDGET_MPPROGRESS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809"></a>FUNC_PROTOCOLWIDGET_MPDESTROY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b"></a>FUNC_PROTOCOLWIDGET_MPSHOWRETRY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60"></a>FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605"></a>FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00044">44</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a id="ac390f60a6ecc7312c7e4cbc1c4de0a63"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac390f60a6ecc7312c7e4cbc1c4de0a63">&#9670;&nbsp;</a></span>cancelled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_masterthread_exec_data::cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00123">123</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a384e675528400649161ea3ea41292020"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a384e675528400649161ea3ea41292020">&#9670;&nbsp;</a></span>chat_receive</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::chat_receive</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a0725f553412b93c289f10bd2a49a112b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0725f553412b93c289f10bd2a49a112b">&#9670;&nbsp;</a></span>client <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a8d6f5f9b47a1b842c4e8d246bafe7ab4">RemminaFTPClient</a>* remmina_masterthread_exec_data::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00073">73</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a02bfd27b9d74423a89c656e4ebbfa77d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02bfd27b9d74423a89c656e4ebbfa77d">&#9670;&nbsp;</a></span>client <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__sftp__client_8h.html#ae8f4eac867cf601e2eaf1e86f60726e6">RemminaSFTPClient</a>* remmina_masterthread_exec_data::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00104">104</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="aebeb1a8332f2e1ce5264bf73348bdffd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aebeb1a8332f2e1ce5264bf73348bdffd">&#9670;&nbsp;</a></span>cnnobj</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rcw_8c.html#a1cc1f656edfbe0d9c5483ac858b76517">RemminaConnectionObject</a>* remmina_masterthread_exec_data::cnnobj</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00085">85</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a8037aefe9dcee17afe1b14166800a668"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8037aefe9dcee17afe1b14166800a668">&#9670;&nbsp;</a></span>codeset</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* remmina_masterthread_exec_data::codeset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00112">112</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a2609267a5c4dcf8b9cbe411ee51656d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2609267a5c4dcf8b9cbe411ee51656d9">&#9670;&nbsp;</a></span>complete</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_masterthread_exec_data::complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00124">124</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a88f1cb3b53958da5786e5eebf31f95b2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a88f1cb3b53958da5786e5eebf31f95b2">&#9670;&nbsp;</a></span>file_get_string</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::file_get_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a38a38a1c8c466cd8ce8c6ddecff88b43"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38a38a1c8c466cd8ce8c6ddecff88b43">&#9670;&nbsp;</a></span>ftp_client_get_waiting_task</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::ftp_client_get_waiting_task</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3ed43cd2e4ff590774318ffddb8f1493"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ed43cd2e4ff590774318ffddb8f1493">&#9670;&nbsp;</a></span>ftp_client_update_task</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::ftp_client_update_task</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4d19c63b1984cdfc63f8216b0e521af1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d19c63b1984cdfc63f8216b0e521af1">&#9670;&nbsp;</a></span>func</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum { ... } remmina_masterthread_exec_data::func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="aca5558e097d2874a89f561a14bdd407c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca5558e097d2874a89f561a14bdd407c">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* remmina_masterthread_exec_data::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00061">61</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a56e0a400c4120f5394715811c83012f4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e0a400c4120f5394715811c83012f4">&#9670;&nbsp;</a></span>gtk_label_set_text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::gtk_label_set_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a6dd7314100e35804a8081e9837bd9304"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6dd7314100e35804a8081e9837bd9304">&#9670;&nbsp;</a></span>init_save_creds</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::init_save_creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a967491ec9115ba8e0d4603017fc439a6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a967491ec9115ba8e0d4603017fc439a6">&#9670;&nbsp;</a></span>label</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkLabel* remmina_masterthread_exec_data::label</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00057">57</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad967414b3a4f021b073529a6e9c48d61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad967414b3a4f021b073529a6e9c48d61">&#9670;&nbsp;</a></span>master</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_masterthread_exec_data::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00113">113</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a670e48a166439326cb75d31499b19ec1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a670e48a166439326cb75d31499b19ec1">&#9670;&nbsp;</a></span>message</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00086">86</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a83087d1f4af27c63ec04ee91cb85d050"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a83087d1f4af27c63ec04ee91cb85d050">&#9670;&nbsp;</a></span>mp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_masterthread_exec_data::mp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00093">93</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a53822565f3ba424c2d0332ce1767ed92"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a53822565f3ba424c2d0332ce1767ed92">&#9670;&nbsp;</a></span>p</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } remmina_masterthread_exec_data::p</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ab2d4a59a7498371e4a12516a4d4349c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab2d4a59a7498371e4a12516a4d4349c9">&#9670;&nbsp;</a></span>path</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00105">105</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad5d676070c4a9c71302eb6052b20b6d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5d676070c4a9c71302eb6052b20b6d9">&#9670;&nbsp;</a></span>port</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_masterthread_exec_data::port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00100">100</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="aefee02ed8a8fe629eda81151fc8fcc4c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aefee02ed8a8fe629eda81151fc8fcc4c">&#9670;&nbsp;</a></span>protocolwidget_emit_signal</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::protocolwidget_emit_signal</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a7efb3ca6b61f2eda0dbad7ad9bc6d09b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7efb3ca6b61f2eda0dbad7ad9bc6d09b">&#9670;&nbsp;</a></span>protocolwidget_mpdestroy</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::protocolwidget_mpdestroy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a633088cf0d1767a3c85852c1d4c625b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a633088cf0d1767a3c85852c1d4c625b6">&#9670;&nbsp;</a></span>protocolwidget_mpprogress</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::protocolwidget_mpprogress</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="abaf33a2c9ab6bcd73ba02bfe942a26a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abaf33a2c9ab6bcd73ba02bfe942a26a1">&#9670;&nbsp;</a></span>protocolwidget_mpshowretry</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::protocolwidget_mpshowretry</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a96c5eaa302251a13d318bd7d13ed0c95"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96c5eaa302251a13d318bd7d13ed0c95">&#9670;&nbsp;</a></span>protocolwidget_panelshowlisten</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::protocolwidget_panelshowlisten</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a41d44d1cc03512701f61bb88a983e94b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41d44d1cc03512701f61bb88a983e94b">&#9670;&nbsp;</a></span>pt_cond</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_cond_t remmina_masterthread_exec_data::pt_cond</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00121">121</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad6766566c40f5265a8ec504e56951319"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6766566c40f5265a8ec504e56951319">&#9670;&nbsp;</a></span>pt_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t remmina_masterthread_exec_data::pt_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00120">120</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad02dd3e2c0839ed5dda61b49a4377eb9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad02dd3e2c0839ed5dda61b49a4377eb9">&#9670;&nbsp;</a></span>remminafile</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>* remmina_masterthread_exec_data::remminafile</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00068">68</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad918fe1f14834f71a7a55bdee0c9a543"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad918fe1f14834f71a7a55bdee0c9a543">&#9670;&nbsp;</a></span>response_callback</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__message__panel_8h.html#ae2923c94c1caf1ac4a7eb48361d2670a">RemminaMessagePanelCallback</a> remmina_masterthread_exec_data::response_callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00087">87</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="aed4afd0ce7ecf117534076f500aa0658"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed4afd0ce7ecf117534076f500aa0658">&#9670;&nbsp;</a></span>response_callback_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer remmina_masterthread_exec_data::response_callback_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00088">88</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ab4a1d527225cf5a768814b02acb0e7a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab4a1d527225cf5a768814b02acb0e7a1">&#9670;&nbsp;</a></span>ret_mp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RemminaMessagePanel* remmina_masterthread_exec_data::ret_mp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00089">89</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a9d393b6e73a6971ac91cad231f796e15"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d393b6e73a6971ac91cad231f796e15">&#9670;&nbsp;</a></span>retval <span class="overload">[1/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00070">70</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ae203540a298d2f92459e740789e8799c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae203540a298d2f92459e740789e8799c">&#9670;&nbsp;</a></span>retval <span class="overload">[2/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>* remmina_masterthread_exec_data::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00078">78</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="aea0366c99f68b738f396678ea6b77e07"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea0366c99f68b738f396678ea6b77e07">&#9670;&nbsp;</a></span>retval <span class="overload">[3/3]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_masterthread_exec_data::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00106">106</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="abbe5b4e21ccb693a6505c958e150984b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbe5b4e21ccb693a6505c958e150984b">&#9670;&nbsp;</a></span>setting</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::setting</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00069">69</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a94ca25645f970c7eb2a78b0234c60077"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a94ca25645f970c7eb2a78b0234c60077">&#9670;&nbsp;</a></span>sftp_client_confirm_resume</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::sftp_client_confirm_resume</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a02cdefa13335a3bf35a16791b2af0910"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02cdefa13335a3bf35a16791b2af0910">&#9670;&nbsp;</a></span>signal_name</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::signal_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00082">82</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a41fe769268faa363a261ac4ce02ac35e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41fe769268faa363a261ac4ce02ac35e">&#9670;&nbsp;</a></span>slave</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_masterthread_exec_data::slave</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00114">114</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="ad52781108d6219754fdff16e0e1764ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad52781108d6219754fdff16e0e1764ea">&#9670;&nbsp;</a></span>str</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::str</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00058">58</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a0bf7d0588171676f9801e40ccea9e2f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0bf7d0588171676f9801e40ccea9e2f1">&#9670;&nbsp;</a></span>task</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="remmina__ftp__client_8h.html#a485c2042b93851c9e951829e1667a33b">RemminaFTPTask</a>* remmina_masterthread_exec_data::task</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00074">74</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a24956c80352de0631eed5e61138c55d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a24956c80352de0631eed5e61138c55d1">&#9670;&nbsp;</a></span>terminal</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">VteTerminal* remmina_masterthread_exec_data::terminal</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00111">111</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a9a7d8ee3e4b091baee9167892b18e0de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a7d8ee3e4b091baee9167892b18e0de">&#9670;&nbsp;</a></span>text</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* remmina_masterthread_exec_data::text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__masterthread__exec_8h_source.html#l00065">65</a> of file <a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a>.</p>
+
+</div>
+</div>
+<a id="a71c221eacb5898a24c4f8981bc14a327"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a71c221eacb5898a24c4f8981bc14a327">&#9670;&nbsp;</a></span>vte_terminal_set_encoding_and_pty</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_masterthread_exec_data::vte_terminal_set_encoding_and_pty</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__masterthread__exec_8h_source.html">remmina_masterthread_exec.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structremmina__masterthread__exec__data.html">remmina_masterthread_exec_data</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structremmina__masterthread__exec__data.js b/docs/structremmina__masterthread__exec__data.js
new file mode 100644
index 000000000..d571a04a1
--- /dev/null
+++ b/docs/structremmina__masterthread__exec__data.js
@@ -0,0 +1,60 @@
+var structremmina__masterthread__exec__data =
+[
+ [ "FUNC_GTK_LABEL_SET_TEXT", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aa9f7b90d8342bbf70596ff681807b06a", null ],
+ [ "FUNC_INIT_SAVE_CRED", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1331403ed8055144287216d142f28b8d", null ],
+ [ "FUNC_CHAT_RECEIVE", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a4fe813264ce7f8e0058367fb2aa6f537", null ],
+ [ "FUNC_FILE_GET_STRING", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a205a5666cfb0bc3b52f5a3381438fc10", null ],
+ [ "FUNC_FTP_CLIENT_UPDATE_TASK", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9aab4371b747f964dc6c16b0d1fffd2d82", null ],
+ [ "FUNC_FTP_CLIENT_GET_WAITING_TASK", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a71a775d97b8e9f6d65a55a39d44f8cf9", null ],
+ [ "FUNC_SFTP_CLIENT_CONFIRM_RESUME", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a03356bb429da6e0c543c2adfb847ee09", null ],
+ [ "FUNC_PROTOCOLWIDGET_EMIT_SIGNAL", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a1b51f5190ad4e06f321f04a2db473567", null ],
+ [ "FUNC_PROTOCOLWIDGET_MPPROGRESS", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab4dd05cf9f03d3aa0828011c3340a197", null ],
+ [ "FUNC_PROTOCOLWIDGET_MPDESTROY", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a5e804a7591adc595d0c2a7b71e5ae809", null ],
+ [ "FUNC_PROTOCOLWIDGET_MPSHOWRETRY", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ae671acc3a3fc86225289bc2614f52a8b", null ],
+ [ "FUNC_PROTOCOLWIDGET_PANELSHOWLISTEN", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9ab780338a09c368a8096c0718cdcdcc60", null ],
+ [ "FUNC_VTE_TERMINAL_SET_ENCODING_AND_PTY", "structremmina__masterthread__exec__data.html#ab9f3329d97b4fd177467566cb0c4e8e9a193782f6e0bc603b42a48f7d69695605", null ],
+ [ "cancelled", "structremmina__masterthread__exec__data.html#ac390f60a6ecc7312c7e4cbc1c4de0a63", null ],
+ [ "chat_receive", "structremmina__masterthread__exec__data.html#a384e675528400649161ea3ea41292020", null ],
+ [ "client", "structremmina__masterthread__exec__data.html#a0725f553412b93c289f10bd2a49a112b", null ],
+ [ "client", "structremmina__masterthread__exec__data.html#a02bfd27b9d74423a89c656e4ebbfa77d", null ],
+ [ "cnnobj", "structremmina__masterthread__exec__data.html#aebeb1a8332f2e1ce5264bf73348bdffd", null ],
+ [ "codeset", "structremmina__masterthread__exec__data.html#a8037aefe9dcee17afe1b14166800a668", null ],
+ [ "complete", "structremmina__masterthread__exec__data.html#a2609267a5c4dcf8b9cbe411ee51656d9", null ],
+ [ "file_get_string", "structremmina__masterthread__exec__data.html#a88f1cb3b53958da5786e5eebf31f95b2", null ],
+ [ "ftp_client_get_waiting_task", "structremmina__masterthread__exec__data.html#a38a38a1c8c466cd8ce8c6ddecff88b43", null ],
+ [ "ftp_client_update_task", "structremmina__masterthread__exec__data.html#a3ed43cd2e4ff590774318ffddb8f1493", null ],
+ [ "func", "structremmina__masterthread__exec__data.html#a4d19c63b1984cdfc63f8216b0e521af1", null ],
+ [ "gp", "structremmina__masterthread__exec__data.html#aca5558e097d2874a89f561a14bdd407c", null ],
+ [ "gtk_label_set_text", "structremmina__masterthread__exec__data.html#a56e0a400c4120f5394715811c83012f4", null ],
+ [ "init_save_creds", "structremmina__masterthread__exec__data.html#a6dd7314100e35804a8081e9837bd9304", null ],
+ [ "label", "structremmina__masterthread__exec__data.html#a967491ec9115ba8e0d4603017fc439a6", null ],
+ [ "master", "structremmina__masterthread__exec__data.html#ad967414b3a4f021b073529a6e9c48d61", null ],
+ [ "message", "structremmina__masterthread__exec__data.html#a670e48a166439326cb75d31499b19ec1", null ],
+ [ "mp", "structremmina__masterthread__exec__data.html#a83087d1f4af27c63ec04ee91cb85d050", null ],
+ [ "p", "structremmina__masterthread__exec__data.html#a53822565f3ba424c2d0332ce1767ed92", null ],
+ [ "path", "structremmina__masterthread__exec__data.html#ab2d4a59a7498371e4a12516a4d4349c9", null ],
+ [ "port", "structremmina__masterthread__exec__data.html#ad5d676070c4a9c71302eb6052b20b6d9", null ],
+ [ "protocolwidget_emit_signal", "structremmina__masterthread__exec__data.html#aefee02ed8a8fe629eda81151fc8fcc4c", null ],
+ [ "protocolwidget_mpdestroy", "structremmina__masterthread__exec__data.html#a7efb3ca6b61f2eda0dbad7ad9bc6d09b", null ],
+ [ "protocolwidget_mpprogress", "structremmina__masterthread__exec__data.html#a633088cf0d1767a3c85852c1d4c625b6", null ],
+ [ "protocolwidget_mpshowretry", "structremmina__masterthread__exec__data.html#abaf33a2c9ab6bcd73ba02bfe942a26a1", null ],
+ [ "protocolwidget_panelshowlisten", "structremmina__masterthread__exec__data.html#a96c5eaa302251a13d318bd7d13ed0c95", null ],
+ [ "pt_cond", "structremmina__masterthread__exec__data.html#a41d44d1cc03512701f61bb88a983e94b", null ],
+ [ "pt_mutex", "structremmina__masterthread__exec__data.html#ad6766566c40f5265a8ec504e56951319", null ],
+ [ "remminafile", "structremmina__masterthread__exec__data.html#ad02dd3e2c0839ed5dda61b49a4377eb9", null ],
+ [ "response_callback", "structremmina__masterthread__exec__data.html#ad918fe1f14834f71a7a55bdee0c9a543", null ],
+ [ "response_callback_data", "structremmina__masterthread__exec__data.html#aed4afd0ce7ecf117534076f500aa0658", null ],
+ [ "ret_mp", "structremmina__masterthread__exec__data.html#ab4a1d527225cf5a768814b02acb0e7a1", null ],
+ [ "retval", "structremmina__masterthread__exec__data.html#a9d393b6e73a6971ac91cad231f796e15", null ],
+ [ "retval", "structremmina__masterthread__exec__data.html#ae203540a298d2f92459e740789e8799c", null ],
+ [ "retval", "structremmina__masterthread__exec__data.html#aea0366c99f68b738f396678ea6b77e07", null ],
+ [ "setting", "structremmina__masterthread__exec__data.html#abbe5b4e21ccb693a6505c958e150984b", null ],
+ [ "sftp_client_confirm_resume", "structremmina__masterthread__exec__data.html#a94ca25645f970c7eb2a78b0234c60077", null ],
+ [ "signal_name", "structremmina__masterthread__exec__data.html#a02cdefa13335a3bf35a16791b2af0910", null ],
+ [ "slave", "structremmina__masterthread__exec__data.html#a41fe769268faa363a261ac4ce02ac35e", null ],
+ [ "str", "structremmina__masterthread__exec__data.html#ad52781108d6219754fdff16e0e1764ea", null ],
+ [ "task", "structremmina__masterthread__exec__data.html#a0bf7d0588171676f9801e40ccea9e2f1", null ],
+ [ "terminal", "structremmina__masterthread__exec__data.html#a24956c80352de0631eed5e61138c55d1", null ],
+ [ "text", "structremmina__masterthread__exec__data.html#a9a7d8ee3e4b091baee9167892b18e0de", null ],
+ [ "vte_terminal_set_encoding_and_pty", "structremmina__masterthread__exec__data.html#a71c221eacb5898a24c4f8981bc14a327", null ]
+]; \ No newline at end of file
diff --git a/docs/structremmina__plugin__rdp__event.html b/docs/structremmina__plugin__rdp__event.html
new file mode 100644
index 000000000..61aba9b31
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__event.html
@@ -0,0 +1,543 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_rdp_event Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structremmina__plugin__rdp__event.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin_rdp_event Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a84797e0cdf4484432740a8946325f126"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126">type</a></td></tr>
+<tr class="separator:a84797e0cdf4484432740a8946325f126"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1945f1a9cbfefe9c21943d6e45bd7ef1"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a08049e9a82c8c410fc9a4f5cc59e9d2d"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a407e325e73c57206bc13abedc87631a1"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;BOOL&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094">up</a></td></tr>
+<tr class="separator:a407e325e73c57206bc13abedc87631a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59515850731192113dff5b7911138fc0"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;BOOL&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">extended</a></td></tr>
+<tr class="separator:a59515850731192113dff5b7911138fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c10c496256dab2be1f28cf21931e46f"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT8&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151">key_code</a></td></tr>
+<tr class="separator:a7c10c496256dab2be1f28cf21931e46f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab517e003a4959bb8506f6ac3126e35fe"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT32&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b">unicode_code</a></td></tr>
+<tr class="separator:ab517e003a4959bb8506f6ac3126e35fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08049e9a82c8c410fc9a4f5cc59e9d2d"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2">key_event</a></td></tr>
+<tr class="separator:a08049e9a82c8c410fc9a4f5cc59e9d2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cb70666a26e81b67df56827bcdb70c9"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a8604389063f895ad302e4b8b83e9cdac"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT16&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c">flags</a></td></tr>
+<tr class="separator:a8604389063f895ad302e4b8b83e9cdac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f4b64bb4dacacd6376a68a72bac7b1d"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT16&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105">x</a></td></tr>
+<tr class="separator:a0f4b64bb4dacacd6376a68a72bac7b1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66e4abe8ebb7cd711efb48c077442f0f"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT16&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf">y</a></td></tr>
+<tr class="separator:a66e4abe8ebb7cd711efb48c077442f0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8731930679a9044b3f3776d1178f3254"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;BOOL&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e">extended</a></td></tr>
+<tr class="separator:a8731930679a9044b3f3776d1178f3254"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cb70666a26e81b67df56827bcdb70c9"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e">mouse_event</a></td></tr>
+<tr class="separator:a7cb70666a26e81b67df56827bcdb70c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad312b536e63259a53fd6429a62adbcce"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ab63810ef067ea948c5f96527d74c797b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;CLIPRDR_FORMAT_LIST *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082">pFormatList</a></td></tr>
+<tr class="separator:ab63810ef067ea948c5f96527d74c797b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad312b536e63259a53fd6429a62adbcce"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0">clipboard_formatlist</a></td></tr>
+<tr class="separator:ad312b536e63259a53fd6429a62adbcce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af68425c5a88aa3db3ea1eb2d6f9a764c"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a24846756ee09763c63de41ed2b42186d"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;BYTE *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624">data</a></td></tr>
+<tr class="separator:a24846756ee09763c63de41ed2b42186d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafdd150da4ef3a709eb50ee8879a2339"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba">size</a></td></tr>
+<tr class="separator:aafdd150da4ef3a709eb50ee8879a2339"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af68425c5a88aa3db3ea1eb2d6f9a764c"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6">clipboard_formatdataresponse</a></td></tr>
+<tr class="separator:af68425c5a88aa3db3ea1eb2d6f9a764c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab128db0c84fdca3d011758c05b7e7b37"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:acba38ee490ad1191c078ca2ea6d28a9b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;CLIPRDR_FORMAT_DATA_REQUEST *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c">pFormatDataRequest</a></td></tr>
+<tr class="separator:acba38ee490ad1191c078ca2ea6d28a9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab128db0c84fdca3d011758c05b7e7b37"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3">clipboard_formatdatarequest</a></td></tr>
+<tr class="separator:ab128db0c84fdca3d011758c05b7e7b37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66cd2d5f477200abb74c67f6dcaec1e4"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a5bbf9ed7b1c0c324f2ae0a84d0025946"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b">width</a></td></tr>
+<tr class="separator:a5bbf9ed7b1c0c324f2ae0a84d0025946"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefbcdb70419cdac1453fc5c7cbeea609"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649">height</a></td></tr>
+<tr class="separator:aefbcdb70419cdac1453fc5c7cbeea609"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a227be1b54e157b980bb5741792be3276"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0">desktopOrientation</a></td></tr>
+<tr class="separator:a227be1b54e157b980bb5741792be3276"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5834526be4bd861f4ce8e43c9ee05931"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985">desktopScaleFactor</a></td></tr>
+<tr class="separator:a5834526be4bd861f4ce8e43c9ee05931"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af875da4be280a746de78aeb2da0eea13"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57">deviceScaleFactor</a></td></tr>
+<tr class="separator:af875da4be280a746de78aeb2da0eea13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66cd2d5f477200abb74c67f6dcaec1e4"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948">monitor_layout</a></td></tr>
+<tr class="separator:a66cd2d5f477200abb74c67f6dcaec1e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1945f1a9cbfefe9c21943d6e45bd7ef1"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
+<tr class="separator:a1945f1a9cbfefe9c21943d6e45bd7ef1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00117">117</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a1945f1a9cbfefe9c21943d6e45bd7ef1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1945f1a9cbfefe9c21943d6e45bd7ef1">&#9670;&nbsp;</a></span>@41</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } </td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a20b531c3036273bb4f2de64ac33c9bf3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20b531c3036273bb4f2de64ac33c9bf3">&#9670;&nbsp;</a></span>clipboard_formatdatarequest</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::clipboard_formatdatarequest</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4ce27482e2571a90b222cbc9cb7f30f6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ce27482e2571a90b222cbc9cb7f30f6">&#9670;&nbsp;</a></span>clipboard_formatdataresponse</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::clipboard_formatdataresponse</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a663e2e70d2f51daa97666142fdde98d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a663e2e70d2f51daa97666142fdde98d0">&#9670;&nbsp;</a></span>clipboard_formatlist</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::clipboard_formatlist</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af9cd4e060d42600c8a9089b04612a624"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af9cd4e060d42600c8a9089b04612a624">&#9670;&nbsp;</a></span>data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BYTE* remmina_plugin_rdp_event::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00136">136</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acc5ea94958152ae483d269a28f34b0b0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc5ea94958152ae483d269a28f34b0b0">&#9670;&nbsp;</a></span>desktopOrientation</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_event::desktopOrientation</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00145">145</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad8c508c65e9f84c92f2f817eb7be2985"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad8c508c65e9f84c92f2f817eb7be2985">&#9670;&nbsp;</a></span>desktopScaleFactor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_event::desktopScaleFactor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00146">146</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a30115ccc01062368d9b1189a0f378f57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a30115ccc01062368d9b1189a0f378f57">&#9670;&nbsp;</a></span>deviceScaleFactor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_event::deviceScaleFactor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00147">147</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae1093ce4f4e4e4b632ca4704ecfa698e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae1093ce4f4e4e4b632ca4704ecfa698e">&#9670;&nbsp;</a></span>extended</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL remmina_plugin_rdp_event::extended</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00122">122</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7cee906e36975da3aadf6874da5da49c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7cee906e36975da3aadf6874da5da49c">&#9670;&nbsp;</a></span>flags</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT16 remmina_plugin_rdp_event::flags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00127">127</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0ff77bb8ed355ac55a7dc4ab28a02649"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ff77bb8ed355ac55a7dc4ab28a02649">&#9670;&nbsp;</a></span>height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_event::height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00144">144</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a6c91276b122d70b8e723e046f6dbd151"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c91276b122d70b8e723e046f6dbd151">&#9670;&nbsp;</a></span>key_code</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT8 remmina_plugin_rdp_event::key_code</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00123">123</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a32ad1700995dbad58d5003b06692a5f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a32ad1700995dbad58d5003b06692a5f2">&#9670;&nbsp;</a></span>key_event</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::key_event</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad73003335100c585e09497269b767948"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad73003335100c585e09497269b767948">&#9670;&nbsp;</a></span>monitor_layout</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::monitor_layout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a86feac33b8074773d97204a71a42151e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a86feac33b8074773d97204a71a42151e">&#9670;&nbsp;</a></span>mouse_event</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_event::mouse_event</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ad3b01f14f235b582b54aa9a0057d5c1c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad3b01f14f235b582b54aa9a0057d5c1c">&#9670;&nbsp;</a></span>pFormatDataRequest</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CLIPRDR_FORMAT_DATA_REQUEST* remmina_plugin_rdp_event::pFormatDataRequest</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00140">140</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a02c2d40efeac883dcc6294be9782e082"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a02c2d40efeac883dcc6294be9782e082">&#9670;&nbsp;</a></span>pFormatList</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CLIPRDR_FORMAT_LIST* remmina_plugin_rdp_event::pFormatList</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00133">133</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a81b19d4696e8a38139182113d5d741ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81b19d4696e8a38139182113d5d741ba">&#9670;&nbsp;</a></span>size</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_plugin_rdp_event::size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00137">137</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a84797e0cdf4484432740a8946325f126"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a84797e0cdf4484432740a8946325f126">&#9670;&nbsp;</a></span>type</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#adafbb901615d7fc9d8f31d5dbdae29d7">RemminaPluginRdpEventType</a> remmina_plugin_rdp_event::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00118">118</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7a1c9ce96d50f8902f7504bbfd0a057b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7a1c9ce96d50f8902f7504bbfd0a057b">&#9670;&nbsp;</a></span>unicode_code</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT32 remmina_plugin_rdp_event::unicode_code</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00124">124</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab834752f9089cbc4a8841fdc037aa094"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab834752f9089cbc4a8841fdc037aa094">&#9670;&nbsp;</a></span>up</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BOOL remmina_plugin_rdp_event::up</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00121">121</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac8972b1def0a956b7c36534da0e56b3b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac8972b1def0a956b7c36534da0e56b3b">&#9670;&nbsp;</a></span>width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_event::width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00143">143</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2f6b6cb00f2511b7849654b026cfd105"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f6b6cb00f2511b7849654b026cfd105">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT16 remmina_plugin_rdp_event::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00128">128</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af02b51a258600a3c4f6d57e868dc39cf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af02b51a258600a3c4f6d57e868dc39cf">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT16 remmina_plugin_rdp_event::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00129">129</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structremmina__plugin__rdp__event.html">remmina_plugin_rdp_event</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structremmina__plugin__rdp__event.js b/docs/structremmina__plugin__rdp__event.js
new file mode 100644
index 000000000..168fd4f19
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__event.js
@@ -0,0 +1,26 @@
+var structremmina__plugin__rdp__event =
+[
+ [ "clipboard_formatdatarequest", "structremmina__plugin__rdp__event.html#a20b531c3036273bb4f2de64ac33c9bf3", null ],
+ [ "clipboard_formatdataresponse", "structremmina__plugin__rdp__event.html#a4ce27482e2571a90b222cbc9cb7f30f6", null ],
+ [ "clipboard_formatlist", "structremmina__plugin__rdp__event.html#a663e2e70d2f51daa97666142fdde98d0", null ],
+ [ "data", "structremmina__plugin__rdp__event.html#af9cd4e060d42600c8a9089b04612a624", null ],
+ [ "desktopOrientation", "structremmina__plugin__rdp__event.html#acc5ea94958152ae483d269a28f34b0b0", null ],
+ [ "desktopScaleFactor", "structremmina__plugin__rdp__event.html#ad8c508c65e9f84c92f2f817eb7be2985", null ],
+ [ "deviceScaleFactor", "structremmina__plugin__rdp__event.html#a30115ccc01062368d9b1189a0f378f57", null ],
+ [ "extended", "structremmina__plugin__rdp__event.html#ae1093ce4f4e4e4b632ca4704ecfa698e", null ],
+ [ "flags", "structremmina__plugin__rdp__event.html#a7cee906e36975da3aadf6874da5da49c", null ],
+ [ "height", "structremmina__plugin__rdp__event.html#a0ff77bb8ed355ac55a7dc4ab28a02649", null ],
+ [ "key_code", "structremmina__plugin__rdp__event.html#a6c91276b122d70b8e723e046f6dbd151", null ],
+ [ "key_event", "structremmina__plugin__rdp__event.html#a32ad1700995dbad58d5003b06692a5f2", null ],
+ [ "monitor_layout", "structremmina__plugin__rdp__event.html#ad73003335100c585e09497269b767948", null ],
+ [ "mouse_event", "structremmina__plugin__rdp__event.html#a86feac33b8074773d97204a71a42151e", null ],
+ [ "pFormatDataRequest", "structremmina__plugin__rdp__event.html#ad3b01f14f235b582b54aa9a0057d5c1c", null ],
+ [ "pFormatList", "structremmina__plugin__rdp__event.html#a02c2d40efeac883dcc6294be9782e082", null ],
+ [ "size", "structremmina__plugin__rdp__event.html#a81b19d4696e8a38139182113d5d741ba", null ],
+ [ "type", "structremmina__plugin__rdp__event.html#a84797e0cdf4484432740a8946325f126", null ],
+ [ "unicode_code", "structremmina__plugin__rdp__event.html#a7a1c9ce96d50f8902f7504bbfd0a057b", null ],
+ [ "up", "structremmina__plugin__rdp__event.html#ab834752f9089cbc4a8841fdc037aa094", null ],
+ [ "width", "structremmina__plugin__rdp__event.html#ac8972b1def0a956b7c36534da0e56b3b", null ],
+ [ "x", "structremmina__plugin__rdp__event.html#a2f6b6cb00f2511b7849654b026cfd105", null ],
+ [ "y", "structremmina__plugin__rdp__event.html#af02b51a258600a3c4f6d57e868dc39cf", null ]
+]; \ No newline at end of file
diff --git a/docs/structremmina__plugin__rdp__keymap__entry.html b/docs/structremmina__plugin__rdp__keymap__entry.html
new file mode 100644
index 000000000..9e6d30b9a
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__keymap__entry.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_rdp_keymap_entry Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structremmina__plugin__rdp__keymap__entry.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin_rdp_keymap_entry Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a20d8c7c462c3cb173e3baedbc19a8a88"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88">orig_keycode</a></td></tr>
+<tr class="separator:a20d8c7c462c3cb173e3baedbc19a8a88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa63271d75f6dfda81584ddfb7c60b2a1"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1">translated_keycode</a></td></tr>
+<tr class="separator:aa63271d75f6dfda81584ddfb7c60b2a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00238">238</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a20d8c7c462c3cb173e3baedbc19a8a88"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a20d8c7c462c3cb173e3baedbc19a8a88">&#9670;&nbsp;</a></span>orig_keycode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned remmina_plugin_rdp_keymap_entry::orig_keycode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00239">239</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa63271d75f6dfda81584ddfb7c60b2a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa63271d75f6dfda81584ddfb7c60b2a1">&#9670;&nbsp;</a></span>translated_keycode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned remmina_plugin_rdp_keymap_entry::translated_keycode</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00240">240</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structremmina__plugin__rdp__keymap__entry.html">remmina_plugin_rdp_keymap_entry</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structremmina__plugin__rdp__keymap__entry.js b/docs/structremmina__plugin__rdp__keymap__entry.js
new file mode 100644
index 000000000..882ebbc79
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__keymap__entry.js
@@ -0,0 +1,5 @@
+var structremmina__plugin__rdp__keymap__entry =
+[
+ [ "orig_keycode", "structremmina__plugin__rdp__keymap__entry.html#a20d8c7c462c3cb173e3baedbc19a8a88", null ],
+ [ "translated_keycode", "structremmina__plugin__rdp__keymap__entry.html#aa63271d75f6dfda81584ddfb7c60b2a1", null ]
+]; \ No newline at end of file
diff --git a/docs/structremmina__plugin__rdp__ui__object.html b/docs/structremmina__plugin__rdp__ui__object.html
new file mode 100644
index 000000000..b19a03193
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__ui__object.html
@@ -0,0 +1,724 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_plugin_rdp_ui_object Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structremmina__plugin__rdp__ui__object.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_plugin_rdp_ui_object Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a46d939889fba73c1360f924efaa09262"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262">type</a></td></tr>
+<tr class="separator:a46d939889fba73c1360f924efaa09262"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66cdf13076e9a6b0c8d4e73a2e565c60"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60">sync</a></td></tr>
+<tr class="separator:a66cdf13076e9a6b0c8d4e73a2e565c60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64657b5e71205d98805ca66b01bfae3c"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c">complete</a></td></tr>
+<tr class="separator:a64657b5e71205d98805ca66b01bfae3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5375267e5c5285fbaf47ed22566e68c6"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6">sync_wait_mutex</a></td></tr>
+<tr class="separator:a5375267e5c5285fbaf47ed22566e68c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca09eff5589ea5440e4ecff99879a509"><td class="memItemLeft" align="right" valign="top">pthread_cond_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509">sync_wait_cond</a></td></tr>
+<tr class="separator:aca09eff5589ea5440e4ecff99879a509"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3235c49bd56377cf718a8bc01109888"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:af018ad822f59c4cfebba8382d2a0335c"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a2ba0feac330238af7a9f6b422291eff7"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structregion.html">region</a> *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d">ureg</a></td></tr>
+<tr class="separator:a2ba0feac330238af7a9f6b422291eff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec2b450d75629f68364cd497c2d4ca25"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb">ninvalid</a></td></tr>
+<tr class="separator:aec2b450d75629f68364cd497c2d4ca25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af018ad822f59c4cfebba8382d2a0335c"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0">reg</a></td></tr>
+<tr class="separator:af018ad822f59c4cfebba8382d2a0335c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36e5ecd2f586787386d97ad9ca94012a"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a89c9599a117f5ea1ca634926db0cd00a"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;rdpContext *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db">context</a></td></tr>
+<tr class="separator:a89c9599a117f5ea1ca634926db0cd00a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab84ea0ddbc3e70c3f9281acfacc48662"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a> *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed">pointer</a></td></tr>
+<tr class="separator:ab84ea0ddbc3e70c3f9281acfacc48662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34d9372b0e1ad180e72051d46f265b5b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a>&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589">type</a></td></tr>
+<tr class="separator:a34d9372b0e1ad180e72051d46f265b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36e5ecd2f586787386d97ad9ca94012a"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a">cursor</a></td></tr>
+<tr class="separator:a36e5ecd2f586787386d97ad9ca94012a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2588935a5e2b36ea66b75c1585be5f2"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a467657630dc049820855024072ea53fb"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">left</a></td></tr>
+<tr class="separator:a467657630dc049820855024072ea53fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adba222f9892205fc793bfdd8c567df66"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">top</a></td></tr>
+<tr class="separator:adba222f9892205fc793bfdd8c567df66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a180f9bf5f0f7efeb52c3d3dae12897b3"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;RFX_MESSAGE *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e">message</a></td></tr>
+<tr class="separator:a180f9bf5f0f7efeb52c3d3dae12897b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2588935a5e2b36ea66b75c1585be5f2"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7">rfx</a></td></tr>
+<tr class="separator:ae2588935a5e2b36ea66b75c1585be5f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3646505a511bea9e4ceae8572645476d"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a302654d7f43d5399a3b7e27d03afc1ed"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559">left</a></td></tr>
+<tr class="separator:a302654d7f43d5399a3b7e27d03afc1ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc8bcce0bce278de1490cf8e077b8163"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070">top</a></td></tr>
+<tr class="separator:adc8bcce0bce278de1490cf8e077b8163"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a323ef4962bb0dc722e3243d67808ddde"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f">width</a></td></tr>
+<tr class="separator:a323ef4962bb0dc722e3243d67808ddde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfcb70d575f7554d045b425fb06fa705"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849">height</a></td></tr>
+<tr class="separator:acfcb70d575f7554d045b425fb06fa705"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af09ae2fa463ffe35eeed813dafd3c6e7"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT8 *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1">bitmap</a></td></tr>
+<tr class="separator:af09ae2fa463ffe35eeed813dafd3c6e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3646505a511bea9e4ceae8572645476d"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34">nocodec</a></td></tr>
+<tr class="separator:a3646505a511bea9e4ceae8572645476d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9afe1732c9b92baff238e286f3d727ee"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ac28b7d8161a735b458e45a9da162bbef"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a>&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725">type</a></td></tr>
+<tr class="separator:ac28b7d8161a735b458e45a9da162bbef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa477d2ae3c81229f862b762e3391c81e"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;GtkTargetList *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475">targetlist</a></td></tr>
+<tr class="separator:aa477d2ae3c81229f862b762e3391c81e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7e872480c7e21487fe1da52927b4bb0"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;UINT32&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b">format</a></td></tr>
+<tr class="separator:ab7e872480c7e21487fe1da52927b4bb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa17f090d1924beab4c9dd34031d9b2e2"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> *&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a">clipboard</a></td></tr>
+<tr class="separator:aa17f090d1924beab4c9dd34031d9b2e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6de5d33de77f596f4219b812e704cb98"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gpointer&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181">data</a></td></tr>
+<tr class="separator:a6de5d33de77f596f4219b812e704cb98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9afe1732c9b92baff238e286f3d727ee"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a6c993ee64cd27392efb8bc6f53e0dca0">clipboard</a></td></tr>
+<tr class="separator:a9afe1732c9b92baff238e286f3d727ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dad5158ba12908734038c60386a5e7b"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:adf5d3717ce7104cc53f6c4b168f717e6"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a>&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b">type</a></td></tr>
+<tr class="separator:adf5d3717ce7104cc53f6c4b168f717e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dad5158ba12908734038c60386a5e7b"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d">event</a></td></tr>
+<tr class="separator:a0dad5158ba12908734038c60386a5e7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69a34110eb51d65dcbc86e28cda4206c"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a670edac00d71169ebd4fac9d33b4b15c"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9">x</a></td></tr>
+<tr class="separator:a670edac00d71169ebd4fac9d33b4b15c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab96fb2801db54656270abbac73d8e58c"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;gint&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c">y</a></td></tr>
+<tr class="separator:ab96fb2801db54656270abbac73d8e58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69a34110eb51d65dcbc86e28cda4206c"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e">pos</a></td></tr>
+<tr class="separator:a69a34110eb51d65dcbc86e28cda4206c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3235c49bd56377cf718a8bc01109888"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
+<tr class="separator:af3235c49bd56377cf718a8bc01109888"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f6aba25030b6859fbd57bee840feeee"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee">retval</a></td></tr>
+<tr class="separator:a9f6aba25030b6859fbd57bee840feeee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cdd472797d227d7ce79a312c0fa2a24"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24">retptr</a></td></tr>
+<tr class="separator:a6cdd472797d227d7ce79a312c0fa2a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00189">189</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="af3235c49bd56377cf718a8bc01109888"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af3235c49bd56377cf718a8bc01109888">&#9670;&nbsp;</a></span>@49</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } </td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a4957c6f98162b80c23f1915a0e46d0f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4957c6f98162b80c23f1915a0e46d0f1">&#9670;&nbsp;</a></span>bitmap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT8* remmina_plugin_rdp_ui_object::bitmap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00215">215</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab65c695a6089cb396a239ceb3b39416a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab65c695a6089cb396a239ceb3b39416a">&#9670;&nbsp;</a></span>clipboard <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a>* remmina_plugin_rdp_ui_object::clipboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00221">221</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a6c993ee64cd27392efb8bc6f53e0dca0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c993ee64cd27392efb8bc6f53e0dca0">&#9670;&nbsp;</a></span>clipboard <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::clipboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a64657b5e71205d98805ca66b01bfae3c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64657b5e71205d98805ca66b01bfae3c">&#9670;&nbsp;</a></span>complete</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_rdp_ui_object::complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00192">192</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab83d6365bee86707a38dc69cdb2e34db"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab83d6365bee86707a38dc69cdb2e34db">&#9670;&nbsp;</a></span>context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpContext* remmina_plugin_rdp_ui_object::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00201">201</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aba5a610f4114e7876e23d429b53f256a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aba5a610f4114e7876e23d429b53f256a">&#9670;&nbsp;</a></span>cursor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::cursor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af71a15df51ec1e4aeb4b2cd482f21181"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af71a15df51ec1e4aeb4b2cd482f21181">&#9670;&nbsp;</a></span>data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer remmina_plugin_rdp_ui_object::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00222">222</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="abd7690614b813952f560e56dd333ec0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abd7690614b813952f560e56dd333ec0d">&#9670;&nbsp;</a></span>event</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::event</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ac79fcbbcd9a64a242751bdf5bc0ba42b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac79fcbbcd9a64a242751bdf5bc0ba42b">&#9670;&nbsp;</a></span>format</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT32 remmina_plugin_rdp_ui_object::format</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00220">220</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a486522051c55c84a6f96e681a0a1d849"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a486522051c55c84a6f96e681a0a1d849">&#9670;&nbsp;</a></span>height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00214">214</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac89629727b6148bc512fdd788cc2a559"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac89629727b6148bc512fdd788cc2a559">&#9670;&nbsp;</a></span>left</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::left</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00206">206</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7e6c46b985270ee34b4347023a47612e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e6c46b985270ee34b4347023a47612e">&#9670;&nbsp;</a></span>message</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RFX_MESSAGE* remmina_plugin_rdp_ui_object::message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00208">208</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a80204884d38205f633551386e14d2ceb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80204884d38205f633551386e14d2ceb">&#9670;&nbsp;</a></span>ninvalid</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::ninvalid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00198">198</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2fbd883476dfcda31d040a64ffb06b34"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2fbd883476dfcda31d040a64ffb06b34">&#9670;&nbsp;</a></span>nocodec</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::nocodec</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a52a19044a33b92539c0da3ac415715ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52a19044a33b92539c0da3ac415715ed">&#9670;&nbsp;</a></span>pointer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a0d6cab75538bffa185b6d2b6f35f15cf">rfPointer</a>* remmina_plugin_rdp_ui_object::pointer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00202">202</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a389f976845c075e225ce1f2b4dac406e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a389f976845c075e225ce1f2b4dac406e">&#9670;&nbsp;</a></span>pos</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::pos</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a051b55da6e20ad868efecf007c737dc0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a051b55da6e20ad868efecf007c737dc0">&#9670;&nbsp;</a></span>reg</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::reg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a6cdd472797d227d7ce79a312c0fa2a24"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6cdd472797d227d7ce79a312c0fa2a24">&#9670;&nbsp;</a></span>retptr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* remmina_plugin_rdp_ui_object::retptr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00235">235</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9f6aba25030b6859fbd57bee840feeee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9f6aba25030b6859fbd57bee840feeee">&#9670;&nbsp;</a></span>retval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_plugin_rdp_ui_object::retval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00233">233</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa97996f0dc8907f00a5b45730898d9f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa97996f0dc8907f00a5b45730898d9f7">&#9670;&nbsp;</a></span>rfx</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } remmina_plugin_rdp_ui_object::rfx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a66cdf13076e9a6b0c8d4e73a2e565c60"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66cdf13076e9a6b0c8d4e73a2e565c60">&#9670;&nbsp;</a></span>sync</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_rdp_ui_object::sync</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00191">191</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aca09eff5589ea5440e4ecff99879a509"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca09eff5589ea5440e4ecff99879a509">&#9670;&nbsp;</a></span>sync_wait_cond</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_cond_t remmina_plugin_rdp_ui_object::sync_wait_cond</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00194">194</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5375267e5c5285fbaf47ed22566e68c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5375267e5c5285fbaf47ed22566e68c6">&#9670;&nbsp;</a></span>sync_wait_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t remmina_plugin_rdp_ui_object::sync_wait_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00193">193</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a66db9fbb717f51e73ef57698a0193475"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66db9fbb717f51e73ef57698a0193475">&#9670;&nbsp;</a></span>targetlist</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkTargetList* remmina_plugin_rdp_ui_object::targetlist</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00219">219</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8303068061e16a6a1878be52b6403070"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8303068061e16a6a1878be52b6403070">&#9670;&nbsp;</a></span>top</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::top</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00207">207</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a46d939889fba73c1360f924efaa09262"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a46d939889fba73c1360f924efaa09262">&#9670;&nbsp;</a></span>type <span class="overload">[1/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a1e2313a63a9cfd208ab722cc1e0ee072">RemminaPluginRdpUiType</a> remmina_plugin_rdp_ui_object::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00190">190</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2f43ecee45e4cd2313353fd596a7b589"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2f43ecee45e4cd2313353fd596a7b589">&#9670;&nbsp;</a></span>type <span class="overload">[2/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a4861d015f803612c279f463095cb97ed">RemminaPluginRdpUiPointerType</a> remmina_plugin_rdp_ui_object::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00203">203</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac598f6590d49658979b1de7bb57ab725"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac598f6590d49658979b1de7bb57ab725">&#9670;&nbsp;</a></span>type <span class="overload">[3/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a051d1d2ab58b0119d656f5036277b7c6">RemminaPluginRdpUiClipboardType</a> remmina_plugin_rdp_ui_object::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00218">218</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aaa49d1f558659bbf384142071a94991b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa49d1f558659bbf384142071a94991b">&#9670;&nbsp;</a></span>type <span class="overload">[4/4]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a70cc17b1d3603d036f962a0ae8496b35">RemminaPluginRdpUiEeventType</a> remmina_plugin_rdp_ui_object::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00225">225</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a74da66442390d9a11361ff3128f5b43d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74da66442390d9a11361ff3128f5b43d">&#9670;&nbsp;</a></span>ureg</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregion.html">region</a>* remmina_plugin_rdp_ui_object::ureg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00197">197</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a37ad07cb6de3640c693fd1871615aa4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37ad07cb6de3640c693fd1871615aa4f">&#9670;&nbsp;</a></span>width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00213">213</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab0223592e68f270b22632c83c300cac9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0223592e68f270b22632c83c300cac9">&#9670;&nbsp;</a></span>x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00228">228</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7cd6e67a6db5b187bb5e820e840b528c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7cd6e67a6db5b187bb5e820e840b528c">&#9670;&nbsp;</a></span>y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint remmina_plugin_rdp_ui_object::y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00229">229</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structremmina__plugin__rdp__ui__object.html">remmina_plugin_rdp_ui_object</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structremmina__plugin__rdp__ui__object.js b/docs/structremmina__plugin__rdp__ui__object.js
new file mode 100644
index 000000000..39eb5d20f
--- /dev/null
+++ b/docs/structremmina__plugin__rdp__ui__object.js
@@ -0,0 +1,36 @@
+var structremmina__plugin__rdp__ui__object =
+[
+ [ "bitmap", "structremmina__plugin__rdp__ui__object.html#a4957c6f98162b80c23f1915a0e46d0f1", null ],
+ [ "clipboard", "structremmina__plugin__rdp__ui__object.html#ab65c695a6089cb396a239ceb3b39416a", null ],
+ [ "clipboard", "structremmina__plugin__rdp__ui__object.html#a6c993ee64cd27392efb8bc6f53e0dca0", null ],
+ [ "complete", "structremmina__plugin__rdp__ui__object.html#a64657b5e71205d98805ca66b01bfae3c", null ],
+ [ "context", "structremmina__plugin__rdp__ui__object.html#ab83d6365bee86707a38dc69cdb2e34db", null ],
+ [ "cursor", "structremmina__plugin__rdp__ui__object.html#aba5a610f4114e7876e23d429b53f256a", null ],
+ [ "data", "structremmina__plugin__rdp__ui__object.html#af71a15df51ec1e4aeb4b2cd482f21181", null ],
+ [ "event", "structremmina__plugin__rdp__ui__object.html#abd7690614b813952f560e56dd333ec0d", null ],
+ [ "format", "structremmina__plugin__rdp__ui__object.html#ac79fcbbcd9a64a242751bdf5bc0ba42b", null ],
+ [ "height", "structremmina__plugin__rdp__ui__object.html#a486522051c55c84a6f96e681a0a1d849", null ],
+ [ "left", "structremmina__plugin__rdp__ui__object.html#ac89629727b6148bc512fdd788cc2a559", null ],
+ [ "message", "structremmina__plugin__rdp__ui__object.html#a7e6c46b985270ee34b4347023a47612e", null ],
+ [ "ninvalid", "structremmina__plugin__rdp__ui__object.html#a80204884d38205f633551386e14d2ceb", null ],
+ [ "nocodec", "structremmina__plugin__rdp__ui__object.html#a2fbd883476dfcda31d040a64ffb06b34", null ],
+ [ "pointer", "structremmina__plugin__rdp__ui__object.html#a52a19044a33b92539c0da3ac415715ed", null ],
+ [ "pos", "structremmina__plugin__rdp__ui__object.html#a389f976845c075e225ce1f2b4dac406e", null ],
+ [ "reg", "structremmina__plugin__rdp__ui__object.html#a051b55da6e20ad868efecf007c737dc0", null ],
+ [ "retptr", "structremmina__plugin__rdp__ui__object.html#a6cdd472797d227d7ce79a312c0fa2a24", null ],
+ [ "retval", "structremmina__plugin__rdp__ui__object.html#a9f6aba25030b6859fbd57bee840feeee", null ],
+ [ "rfx", "structremmina__plugin__rdp__ui__object.html#aa97996f0dc8907f00a5b45730898d9f7", null ],
+ [ "sync", "structremmina__plugin__rdp__ui__object.html#a66cdf13076e9a6b0c8d4e73a2e565c60", null ],
+ [ "sync_wait_cond", "structremmina__plugin__rdp__ui__object.html#aca09eff5589ea5440e4ecff99879a509", null ],
+ [ "sync_wait_mutex", "structremmina__plugin__rdp__ui__object.html#a5375267e5c5285fbaf47ed22566e68c6", null ],
+ [ "targetlist", "structremmina__plugin__rdp__ui__object.html#a66db9fbb717f51e73ef57698a0193475", null ],
+ [ "top", "structremmina__plugin__rdp__ui__object.html#a8303068061e16a6a1878be52b6403070", null ],
+ [ "type", "structremmina__plugin__rdp__ui__object.html#a46d939889fba73c1360f924efaa09262", null ],
+ [ "type", "structremmina__plugin__rdp__ui__object.html#a2f43ecee45e4cd2313353fd596a7b589", null ],
+ [ "type", "structremmina__plugin__rdp__ui__object.html#ac598f6590d49658979b1de7bb57ab725", null ],
+ [ "type", "structremmina__plugin__rdp__ui__object.html#aaa49d1f558659bbf384142071a94991b", null ],
+ [ "ureg", "structremmina__plugin__rdp__ui__object.html#a74da66442390d9a11361ff3128f5b43d", null ],
+ [ "width", "structremmina__plugin__rdp__ui__object.html#a37ad07cb6de3640c693fd1871615aa4f", null ],
+ [ "x", "structremmina__plugin__rdp__ui__object.html#ab0223592e68f270b22632c83c300cac9", null ],
+ [ "y", "structremmina__plugin__rdp__ui__object.html#a7cd6e67a6db5b187bb5e820e840b528c", null ]
+]; \ No newline at end of file
diff --git a/docs/structremmina__protocol__widget__dialog__mt__data__t.html b/docs/structremmina__protocol__widget__dialog__mt__data__t.html
new file mode 100644
index 000000000..a0cf1c3ed
--- /dev/null
+++ b/docs/structremmina__protocol__widget__dialog__mt__data__t.html
@@ -0,0 +1,330 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: remmina_protocol_widget_dialog_mt_data_t Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structremmina__protocol__widget__dialog__mt__data__t.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">remmina_protocol_widget_dialog_mt_data_t Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aac83645c5474683d37a9a61fcd640b7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a">gp</a></td></tr>
+<tr class="separator:aac83645c5474683d37a9a61fcd640b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f67e6ca406ec87db6ae6a3582770c74"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74">title</a></td></tr>
+<tr class="separator:a3f67e6ca406ec87db6ae6a3582770c74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9460e6c8e837ce941568d74499e0b28"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28">default_username</a></td></tr>
+<tr class="separator:ad9460e6c8e837ce941568d74499e0b28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a650c926c67ed4ec841cf8553d6454850"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850">default_password</a></td></tr>
+<tr class="separator:a650c926c67ed4ec841cf8553d6454850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14655c577c6f070ee28f4211baf05361"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361">default_domain</a></td></tr>
+<tr class="separator:a14655c577c6f070ee28f4211baf05361"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72561ca7477a62e8c7234409205e6544"><td class="memItemLeft" align="right" valign="top">gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544">strpasswordlabel</a></td></tr>
+<tr class="separator:a72561ca7477a62e8c7234409205e6544"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13fd74ca385ce7f7a4d6094a65bd17f7"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7">dtype</a></td></tr>
+<tr class="separator:a13fd74ca385ce7f7a4d6094a65bd17f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92d8a08aba2743f081e22f39fcaf0df8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8">pflags</a></td></tr>
+<tr class="separator:a92d8a08aba2743f081e22f39fcaf0df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81eb96409c1543bcf2d9474d4d89907f"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f">called_from_subthread</a></td></tr>
+<tr class="separator:a81eb96409c1543bcf2d9474d4d89907f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ecf120415414844ebcf07a1c86e9cdf"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf">pt_mutex</a></td></tr>
+<tr class="separator:a3ecf120415414844ebcf07a1c86e9cdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee011a8e1d09de188018e634aa2bbda"><td class="memItemLeft" align="right" valign="top">pthread_cond_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda">pt_cond</a></td></tr>
+<tr class="separator:a9ee011a8e1d09de188018e634aa2bbda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29b8f44a7f4514422d3a5e04e0b8f0b5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5">rcbutton</a></td></tr>
+<tr class="separator:a29b8f44a7f4514422d3a5e04e0b8f0b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01210">1210</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a81eb96409c1543bcf2d9474d4d89907f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a81eb96409c1543bcf2d9474d4d89907f">&#9670;&nbsp;</a></span>called_from_subthread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_protocol_widget_dialog_mt_data_t::called_from_subthread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01220">1220</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a14655c577c6f070ee28f4211baf05361"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14655c577c6f070ee28f4211baf05361">&#9670;&nbsp;</a></span>default_domain</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_dialog_mt_data_t::default_domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01216">1216</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a650c926c67ed4ec841cf8553d6454850"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a650c926c67ed4ec841cf8553d6454850">&#9670;&nbsp;</a></span>default_password</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_dialog_mt_data_t::default_password</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01215">1215</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="ad9460e6c8e837ce941568d74499e0b28"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad9460e6c8e837ce941568d74499e0b28">&#9670;&nbsp;</a></span>default_username</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_dialog_mt_data_t::default_username</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01214">1214</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a13fd74ca385ce7f7a4d6094a65bd17f7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a13fd74ca385ce7f7a4d6094a65bd17f7">&#9670;&nbsp;</a></span>dtype</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="remmina__protocol__widget_8c.html#a9275874ac61d3750aa677a36da714373">panel_type</a> remmina_protocol_widget_dialog_mt_data_t::dtype</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01218">1218</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="aac83645c5474683d37a9a61fcd640b7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aac83645c5474683d37a9a61fcd640b7a">&#9670;&nbsp;</a></span>gp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* remmina_protocol_widget_dialog_mt_data_t::gp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01212">1212</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a92d8a08aba2743f081e22f39fcaf0df8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a92d8a08aba2743f081e22f39fcaf0df8">&#9670;&nbsp;</a></span>pflags</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> remmina_protocol_widget_dialog_mt_data_t::pflags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01219">1219</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ee011a8e1d09de188018e634aa2bbda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ee011a8e1d09de188018e634aa2bbda">&#9670;&nbsp;</a></span>pt_cond</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_cond_t remmina_protocol_widget_dialog_mt_data_t::pt_cond</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01223">1223</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a3ecf120415414844ebcf07a1c86e9cdf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ecf120415414844ebcf07a1c86e9cdf">&#9670;&nbsp;</a></span>pt_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t remmina_protocol_widget_dialog_mt_data_t::pt_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01222">1222</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a29b8f44a7f4514422d3a5e04e0b8f0b5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29b8f44a7f4514422d3a5e04e0b8f0b5">&#9670;&nbsp;</a></span>rcbutton</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int remmina_protocol_widget_dialog_mt_data_t::rcbutton</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01225">1225</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a72561ca7477a62e8c7234409205e6544"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72561ca7477a62e8c7234409205e6544">&#9670;&nbsp;</a></span>strpasswordlabel</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_dialog_mt_data_t::strpasswordlabel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01217">1217</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<a id="a3f67e6ca406ec87db6ae6a3582770c74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3f67e6ca406ec87db6ae6a3582770c74">&#9670;&nbsp;</a></span>title</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar* remmina_protocol_widget_dialog_mt_data_t::title</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__protocol__widget_8c_source.html#l01213">1213</a> of file <a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__protocol__widget_8c_source.html">remmina_protocol_widget.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structremmina__protocol__widget__dialog__mt__data__t.html">remmina_protocol_widget_dialog_mt_data_t</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structremmina__protocol__widget__dialog__mt__data__t.js b/docs/structremmina__protocol__widget__dialog__mt__data__t.js
new file mode 100644
index 000000000..31dea64d2
--- /dev/null
+++ b/docs/structremmina__protocol__widget__dialog__mt__data__t.js
@@ -0,0 +1,15 @@
+var structremmina__protocol__widget__dialog__mt__data__t =
+[
+ [ "called_from_subthread", "structremmina__protocol__widget__dialog__mt__data__t.html#a81eb96409c1543bcf2d9474d4d89907f", null ],
+ [ "default_domain", "structremmina__protocol__widget__dialog__mt__data__t.html#a14655c577c6f070ee28f4211baf05361", null ],
+ [ "default_password", "structremmina__protocol__widget__dialog__mt__data__t.html#a650c926c67ed4ec841cf8553d6454850", null ],
+ [ "default_username", "structremmina__protocol__widget__dialog__mt__data__t.html#ad9460e6c8e837ce941568d74499e0b28", null ],
+ [ "dtype", "structremmina__protocol__widget__dialog__mt__data__t.html#a13fd74ca385ce7f7a4d6094a65bd17f7", null ],
+ [ "gp", "structremmina__protocol__widget__dialog__mt__data__t.html#aac83645c5474683d37a9a61fcd640b7a", null ],
+ [ "pflags", "structremmina__protocol__widget__dialog__mt__data__t.html#a92d8a08aba2743f081e22f39fcaf0df8", null ],
+ [ "pt_cond", "structremmina__protocol__widget__dialog__mt__data__t.html#a9ee011a8e1d09de188018e634aa2bbda", null ],
+ [ "pt_mutex", "structremmina__protocol__widget__dialog__mt__data__t.html#a3ecf120415414844ebcf07a1c86e9cdf", null ],
+ [ "rcbutton", "structremmina__protocol__widget__dialog__mt__data__t.html#a29b8f44a7f4514422d3a5e04e0b8f0b5", null ],
+ [ "strpasswordlabel", "structremmina__protocol__widget__dialog__mt__data__t.html#a72561ca7477a62e8c7234409205e6544", null ],
+ [ "title", "structremmina__protocol__widget__dialog__mt__data__t.html#a3f67e6ca406ec87db6ae6a3582770c74", null ]
+]; \ No newline at end of file
diff --git a/docs/structrf__bitmap.html b/docs/structrf__bitmap.html
new file mode 100644
index 000000000..36eb91a12
--- /dev/null
+++ b/docs/structrf__bitmap.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rf_bitmap Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrf__bitmap.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rf_bitmap Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a08e94dc9aafd15be33ce3094dd77f507"><td class="memItemLeft" align="right" valign="top">rdpBitmap&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507">bitmap</a></td></tr>
+<tr class="separator:a08e94dc9aafd15be33ce3094dd77f507"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6210ab69c4338e23396f6838a255a50b"><td class="memItemLeft" align="right" valign="top">Pixmap&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b">pixmap</a></td></tr>
+<tr class="separator:a6210ab69c4338e23396f6838a255a50b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52c9e53fa5dd0b9ab9be3622196ca80b"><td class="memItemLeft" align="right" valign="top">cairo_surface_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b">surface</a></td></tr>
+<tr class="separator:a52c9e53fa5dd0b9ab9be3622196ca80b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00093">93</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a08e94dc9aafd15be33ce3094dd77f507"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a08e94dc9aafd15be33ce3094dd77f507">&#9670;&nbsp;</a></span>bitmap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpBitmap rf_bitmap::bitmap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00094">94</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a6210ab69c4338e23396f6838a255a50b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6210ab69c4338e23396f6838a255a50b">&#9670;&nbsp;</a></span>pixmap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Pixmap rf_bitmap::pixmap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00095">95</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a52c9e53fa5dd0b9ab9be3622196ca80b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52c9e53fa5dd0b9ab9be3622196ca80b">&#9670;&nbsp;</a></span>surface</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">cairo_surface_t* rf_bitmap::surface</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00096">96</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrf__bitmap.html">rf_bitmap</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrf__bitmap.js b/docs/structrf__bitmap.js
new file mode 100644
index 000000000..403e9405e
--- /dev/null
+++ b/docs/structrf__bitmap.js
@@ -0,0 +1,6 @@
+var structrf__bitmap =
+[
+ [ "bitmap", "structrf__bitmap.html#a08e94dc9aafd15be33ce3094dd77f507", null ],
+ [ "pixmap", "structrf__bitmap.html#a6210ab69c4338e23396f6838a255a50b", null ],
+ [ "surface", "structrf__bitmap.html#a52c9e53fa5dd0b9ab9be3622196ca80b", null ]
+]; \ No newline at end of file
diff --git a/docs/structrf__clipboard.html b/docs/structrf__clipboard.html
new file mode 100644
index 000000000..aee884cb1
--- /dev/null
+++ b/docs/structrf__clipboard.html
@@ -0,0 +1,325 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rf_clipboard Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrf__clipboard.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rf_clipboard Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a772cb891c0d40e145cce5ffdd1b2f438"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1">SCDW_NONE</a>,
+<a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e">SCDW_BUSY_WAIT</a>,
+<a class="el" href="structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b">SCDW_ABORTING</a>
+ }</td></tr>
+<tr class="separator:a772cb891c0d40e145cce5ffdd1b2f438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a268b5336ae92d8d2f54c5ee441325d68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68">rfi</a></td></tr>
+<tr class="separator:a268b5336ae92d8d2f54c5ee441325d68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a773214c0bb4f351a609a085f786304aa"><td class="memItemLeft" align="right" valign="top">CliprdrClientContext *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa">context</a></td></tr>
+<tr class="separator:a773214c0bb4f351a609a085f786304aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7541d40ba2e4463c36ffab12cfe3adf"><td class="memItemLeft" align="right" valign="top">wClipboard *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf">system</a></td></tr>
+<tr class="separator:ad7541d40ba2e4463c36ffab12cfe3adf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66caa2e83dfdc4655df71d81502f93e3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3">requestedFormatId</a></td></tr>
+<tr class="separator:a66caa2e83dfdc4655df71d81502f93e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad22c0f3cd325db2746e9ca42cca0d65b"><td class="memItemLeft" align="right" valign="top">UINT32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b">format</a></td></tr>
+<tr class="separator:ad22c0f3cd325db2746e9ca42cca0d65b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52ca364a1902d7f4095234923feed724"><td class="memItemLeft" align="right" valign="top">gulong&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#a52ca364a1902d7f4095234923feed724">clipboard_handler</a></td></tr>
+<tr class="separator:a52ca364a1902d7f4095234923feed724"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c6be1637ed9e2ce72ffde2ed5400205"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205">transfer_clip_mutex</a></td></tr>
+<tr class="separator:a5c6be1637ed9e2ce72ffde2ed5400205"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf5bf9da1a18e21409c4b10368f8dfd7"><td class="memItemLeft" align="right" valign="top">pthread_cond_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7">transfer_clip_cond</a></td></tr>
+<tr class="separator:acf5bf9da1a18e21409c4b10368f8dfd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2405c3546b91c1ae200b14ef0e68026"><td class="memItemLeft" align="right" valign="top">enum rf_clipboard:: { ... } &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026">srv_clip_data_wait</a></td></tr>
+<tr class="separator:ae2405c3546b91c1ae200b14ef0e68026"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae14721fd73459cc2be441c96f5a96be7"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7">srv_data</a></td></tr>
+<tr class="separator:ae14721fd73459cc2be441c96f5a96be7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00070">70</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a id="a772cb891c0d40e145cce5ffdd1b2f438"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a772cb891c0d40e145cce5ffdd1b2f438">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1"></a>SCDW_NONE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e"></a>SCDW_BUSY_WAIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b"></a>SCDW_ABORTING&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00081">81</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a id="a52ca364a1902d7f4095234923feed724"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a52ca364a1902d7f4095234923feed724">&#9670;&nbsp;</a></span>clipboard_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gulong rf_clipboard::clipboard_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00077">77</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a773214c0bb4f351a609a085f786304aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a773214c0bb4f351a609a085f786304aa">&#9670;&nbsp;</a></span>context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CliprdrClientContext* rf_clipboard::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00072">72</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad22c0f3cd325db2746e9ca42cca0d65b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad22c0f3cd325db2746e9ca42cca0d65b">&#9670;&nbsp;</a></span>format</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">UINT32 rf_clipboard::format</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00076">76</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a66caa2e83dfdc4655df71d81502f93e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66caa2e83dfdc4655df71d81502f93e3">&#9670;&nbsp;</a></span>requestedFormatId</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int rf_clipboard::requestedFormatId</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00074">74</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a268b5336ae92d8d2f54c5ee441325d68"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a268b5336ae92d8d2f54c5ee441325d68">&#9670;&nbsp;</a></span>rfi</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#a0e50aeabb34e9e653933d081e74c5c16">rfContext</a>* rf_clipboard::rfi</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00071">71</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae2405c3546b91c1ae200b14ef0e68026"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae2405c3546b91c1ae200b14ef0e68026">&#9670;&nbsp;</a></span>srv_clip_data_wait</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum { ... } rf_clipboard::srv_clip_data_wait</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ae14721fd73459cc2be441c96f5a96be7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae14721fd73459cc2be441c96f5a96be7">&#9670;&nbsp;</a></span>srv_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer rf_clipboard::srv_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00082">82</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad7541d40ba2e4463c36ffab12cfe3adf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7541d40ba2e4463c36ffab12cfe3adf">&#9670;&nbsp;</a></span>system</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">wClipboard* rf_clipboard::system</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00073">73</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acf5bf9da1a18e21409c4b10368f8dfd7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acf5bf9da1a18e21409c4b10368f8dfd7">&#9670;&nbsp;</a></span>transfer_clip_cond</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_cond_t rf_clipboard::transfer_clip_cond</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00080">80</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5c6be1637ed9e2ce72ffde2ed5400205"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5c6be1637ed9e2ce72ffde2ed5400205">&#9670;&nbsp;</a></span>transfer_clip_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t rf_clipboard::transfer_clip_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00079">79</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrf__clipboard.html">rf_clipboard</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrf__clipboard.js b/docs/structrf__clipboard.js
new file mode 100644
index 000000000..81f222fad
--- /dev/null
+++ b/docs/structrf__clipboard.js
@@ -0,0 +1,16 @@
+var structrf__clipboard =
+[
+ [ "SCDW_NONE", "structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438a4b0fb5c70fe8ee6bbd80cb085f8571a1", null ],
+ [ "SCDW_BUSY_WAIT", "structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438aac2dccc58111570a94b8ec7475a8110e", null ],
+ [ "SCDW_ABORTING", "structrf__clipboard.html#a772cb891c0d40e145cce5ffdd1b2f438af9766a14efb1de3fd44ed4fb71622e5b", null ],
+ [ "clipboard_handler", "structrf__clipboard.html#a52ca364a1902d7f4095234923feed724", null ],
+ [ "context", "structrf__clipboard.html#a773214c0bb4f351a609a085f786304aa", null ],
+ [ "format", "structrf__clipboard.html#ad22c0f3cd325db2746e9ca42cca0d65b", null ],
+ [ "requestedFormatId", "structrf__clipboard.html#a66caa2e83dfdc4655df71d81502f93e3", null ],
+ [ "rfi", "structrf__clipboard.html#a268b5336ae92d8d2f54c5ee441325d68", null ],
+ [ "srv_clip_data_wait", "structrf__clipboard.html#ae2405c3546b91c1ae200b14ef0e68026", null ],
+ [ "srv_data", "structrf__clipboard.html#ae14721fd73459cc2be441c96f5a96be7", null ],
+ [ "system", "structrf__clipboard.html#ad7541d40ba2e4463c36ffab12cfe3adf", null ],
+ [ "transfer_clip_cond", "structrf__clipboard.html#acf5bf9da1a18e21409c4b10368f8dfd7", null ],
+ [ "transfer_clip_mutex", "structrf__clipboard.html#a5c6be1637ed9e2ce72ffde2ed5400205", null ]
+]; \ No newline at end of file
diff --git a/docs/structrf__context.html b/docs/structrf__context.html
new file mode 100644
index 000000000..fa9768d1e
--- /dev/null
+++ b/docs/structrf__context.html
@@ -0,0 +1,1051 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rf_context Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrf__context.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rf_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a881dfa933c45f7533fa3840ae883b5ec"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68">REMMINA_POSTCONNECT_ERROR_OK</a> = 0,
+<a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6">REMMINA_POSTCONNECT_ERROR_GDI_INIT</a> = 1,
+<a class="el" href="structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982">REMMINA_POSTCONNECT_ERROR_NO_H264</a>
+ }</td></tr>
+<tr class="separator:a881dfa933c45f7533fa3840ae883b5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a48f00dfd27805003509b1ab1ebc791b7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7">DEFINE_RDP_CLIENT_COMMON</a> ()</td></tr>
+<tr class="separator:a48f00dfd27805003509b1ab1ebc791b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a23192b58404d1dc629d5e7db3fb103be"><td class="memItemLeft" align="right" valign="top">rdpContext&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a23192b58404d1dc629d5e7db3fb103be">context</a></td></tr>
+<tr class="separator:a23192b58404d1dc629d5e7db3fb103be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05f37c213b04dfb9ae9b38c12bcdf7e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3">protocol_widget</a></td></tr>
+<tr class="separator:a05f37c213b04dfb9ae9b38c12bcdf7e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28d215e4ddb5decc543c3c6578df5e3d"><td class="memItemLeft" align="right" valign="top">rdpSettings *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d">settings</a></td></tr>
+<tr class="separator:a28d215e4ddb5decc543c3c6578df5e3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a32bbd599b6684a3c41db9281863362"><td class="memItemLeft" align="right" valign="top">freerdp *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a3a32bbd599b6684a3c41db9281863362">instance</a></td></tr>
+<tr class="separator:a3a32bbd599b6684a3c41db9281863362"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa79909e0ac140a3404151a40bed6a6ec"><td class="memItemLeft" align="right" valign="top">pthread_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec">remmina_plugin_thread</a></td></tr>
+<tr class="separator:aa79909e0ac140a3404151a40bed6a6ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96c4689f6bc062482536038cb3b24e78"><td class="memItemLeft" align="right" valign="top"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a96c4689f6bc062482536038cb3b24e78">scale</a></td></tr>
+<tr class="separator:a96c4689f6bc062482536038cb3b24e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acacad775c2c168f900deaa6c90481319"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#acacad775c2c168f900deaa6c90481319">user_cancelled</a></td></tr>
+<tr class="separator:acacad775c2c168f900deaa6c90481319"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa574515edb4966117f539d26e26f0a62"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aa574515edb4966117f539d26e26f0a62">thread_cancelled</a></td></tr>
+<tr class="separator:aa574515edb4966117f539d26e26f0a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8"><td class="memItemLeft" align="right" valign="top">CliprdrClientContext *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">cliprdr</a></td></tr>
+<tr class="separator:a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a660a5c5ea7256ab6a6486f3e831a9174"><td class="memItemLeft" align="right" valign="top">DispClientContext *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174">dispcontext</a></td></tr>
+<tr class="separator:a660a5c5ea7256ab6a6486f3e831a9174"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93dd55d1f081496959f1051d04cc3ba4"><td class="memItemLeft" align="right" valign="top">RDP_PLUGIN_DATA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4">rdpdr_data</a> [5]</td></tr>
+<tr class="separator:a93dd55d1f081496959f1051d04cc3ba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a708b989f3e12af802ab4266af39363"><td class="memItemLeft" align="right" valign="top">RDP_PLUGIN_DATA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a2a708b989f3e12af802ab4266af39363">drdynvc_data</a> [5]</td></tr>
+<tr class="separator:a2a708b989f3e12af802ab4266af39363"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ae7b9fee3a645d77cf90c8a22f0d90f"><td class="memItemLeft" align="right" valign="top">gchar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f">rdpsnd_options</a> [20]</td></tr>
+<tr class="separator:a0ae7b9fee3a645d77cf90c8a22f0d90f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73a760b5eeaaf7d2a0684b1145d5d706"><td class="memItemLeft" align="right" valign="top">RFX_CONTEXT *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706">rfx_context</a></td></tr>
+<tr class="separator:a73a760b5eeaaf7d2a0684b1145d5d706"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5ffc4d8ba9d3d8a298414dc8e4efd2a"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">rdpgfxchan</a></td></tr>
+<tr class="separator:ab5ffc4d8ba9d3d8a298414dc8e4efd2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c2ffa55ba97bc70324d61b8cc838e73"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73">connected</a></td></tr>
+<tr class="separator:a3c2ffa55ba97bc70324d61b8cc838e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af40c80ff8296b9bcc3ac437bf0be55f8"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8">is_reconnecting</a></td></tr>
+<tr class="separator:af40c80ff8296b9bcc3ac437bf0be55f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4ea260ce64d09deea422b9067ee70b4"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4">orphaned</a></td></tr>
+<tr class="separator:ad4ea260ce64d09deea422b9067ee70b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0b949ab1e2f06b7d5efeccc924efaee"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee">reconnect_maxattempts</a></td></tr>
+<tr class="separator:aa0b949ab1e2f06b7d5efeccc924efaee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c35800dba8da687f7f56e3bb7a23413"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413">reconnect_nattempt</a></td></tr>
+<tr class="separator:a4c35800dba8da687f7f56e3bb7a23413"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91f20005b39ad9e1073cf25bf6d7c2f2"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2">sw_gdi</a></td></tr>
+<tr class="separator:a91f20005b39ad9e1073cf25bf6d7c2f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acee2095e72fb2428c498f62e21800026"><td class="memItemLeft" align="right" valign="top">GtkWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#acee2095e72fb2428c498f62e21800026">drawing_area</a></td></tr>
+<tr class="separator:acee2095e72fb2428c498f62e21800026"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedf6fcd090e6ba788956565ce312ab70"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aedf6fcd090e6ba788956565ce312ab70">scale_width</a></td></tr>
+<tr class="separator:aedf6fcd090e6ba788956565ce312ab70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76ff7add3727e4a8b82f7b4615f09169"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169">scale_height</a></td></tr>
+<tr class="separator:a76ff7add3727e4a8b82f7b4615f09169"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a584505347366c40e6efa710353d4264f"><td class="memItemLeft" align="right" valign="top">gdouble&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a584505347366c40e6efa710353d4264f">scale_x</a></td></tr>
+<tr class="separator:a584505347366c40e6efa710353d4264f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a310c8fad5daf6b9f4d8f854b04a764"><td class="memItemLeft" align="right" valign="top">gdouble&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764">scale_y</a></td></tr>
+<tr class="separator:a8a310c8fad5daf6b9f4d8f854b04a764"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a957e6f6867170470689210d55770342e"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a957e6f6867170470689210d55770342e">delayed_monitor_layout_handler</a></td></tr>
+<tr class="separator:a957e6f6867170470689210d55770342e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1f3330674d320c9d0ae408c551be6b8"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8">use_client_keymap</a></td></tr>
+<tr class="separator:ac1f3330674d320c9d0ae408c551be6b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d28c775fe1ee90ad48941d753564a76"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a9d28c775fe1ee90ad48941d753564a76">srcBpp</a></td></tr>
+<tr class="separator:a9d28c775fe1ee90ad48941d753564a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c4234646c4b584e41e36521b7eab889"><td class="memItemLeft" align="right" valign="top">GdkDisplay *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a7c4234646c4b584e41e36521b7eab889">display</a></td></tr>
+<tr class="separator:a7c4234646c4b584e41e36521b7eab889"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7343f17d1aa3e70e112a9c20d6c6a999"><td class="memItemLeft" align="right" valign="top">GdkVisual *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999">visual</a></td></tr>
+<tr class="separator:a7343f17d1aa3e70e112a9c20d6c6a999"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3aead7f4d2c4580fcbd25e15679e19c6"><td class="memItemLeft" align="right" valign="top">cairo_surface_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6">surface</a></td></tr>
+<tr class="separator:a3aead7f4d2c4580fcbd25e15679e19c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa13bb4f72f3024d81e9051de4bd65ec0"><td class="memItemLeft" align="right" valign="top">cairo_format_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0">cairo_format</a></td></tr>
+<tr class="separator:aa13bb4f72f3024d81e9051de4bd65ec0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40e89e126e5dd96a3f67e6f945a8867b"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b">bpp</a></td></tr>
+<tr class="separator:a40e89e126e5dd96a3f67e6f945a8867b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a538399f42e4454d5a44effbc59ea9091"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a538399f42e4454d5a44effbc59ea9091">scanline_pad</a></td></tr>
+<tr class="separator:a538399f42e4454d5a44effbc59ea9091"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad06c1d1a2295fbdf455df0250dfb2523"><td class="memItemLeft" align="right" valign="top">gint *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523">colormap</a></td></tr>
+<tr class="separator:ad06c1d1a2295fbdf455df0250dfb2523"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adeee1ea1db2e19b99e4deb80b8a6a960"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960">object_id_seq</a></td></tr>
+<tr class="separator:adeee1ea1db2e19b99e4deb80b8a6a960"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafce196b029d2578151275acd07ccb82"><td class="memItemLeft" align="right" valign="top">GHashTable *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#aafce196b029d2578151275acd07ccb82">object_table</a></td></tr>
+<tr class="separator:aafce196b029d2578151275acd07ccb82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6190d1c82045bcd08e22ff6e98148a3"><td class="memItemLeft" align="right" valign="top">GAsyncQueue *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3">ui_queue</a></td></tr>
+<tr class="separator:ae6190d1c82045bcd08e22ff6e98148a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3836f3c9bc575a05d5b35dbdb3186329"><td class="memItemLeft" align="right" valign="top">pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329">ui_queue_mutex</a></td></tr>
+<tr class="separator:a3836f3c9bc575a05d5b35dbdb3186329"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae62cc5547984bf11865f93c7d63afdf0"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0">ui_handler</a></td></tr>
+<tr class="separator:ae62cc5547984bf11865f93c7d63afdf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a335c40ccb90ae472525b203c832e7701"><td class="memItemLeft" align="right" valign="top">GArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a335c40ccb90ae472525b203c832e7701">pressed_keys</a></td></tr>
+<tr class="separator:a335c40ccb90ae472525b203c832e7701"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d119b1f108fe84c74e6484d48c2a565"><td class="memItemLeft" align="right" valign="top">GAsyncQueue *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565">event_queue</a></td></tr>
+<tr class="separator:a5d119b1f108fe84c74e6484d48c2a565"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a539feef609228a91c5e54d5da837bb7a"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a539feef609228a91c5e54d5da837bb7a">event_pipe</a> [2]</td></tr>
+<tr class="separator:a539feef609228a91c5e54d5da837bb7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a522c742a333cf0603dfa7d06a7376669"><td class="memItemLeft" align="right" valign="top">HANDLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a522c742a333cf0603dfa7d06a7376669">event_handle</a></td></tr>
+<tr class="separator:a522c742a333cf0603dfa7d06a7376669"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72d2a3d60347327237692947df93aea7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a72d2a3d60347327237692947df93aea7">clipboard</a></td></tr>
+<tr class="separator:a72d2a3d60347327237692947df93aea7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3712f6b20462e62a6bb87038e5f10d9d"><td class="memItemLeft" align="right" valign="top">GArray *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d">keymap</a></td></tr>
+<tr class="separator:a3712f6b20462e62a6bb87038e5f10d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9134f0b8a6352cc257e1e91e162efea3"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3">attempt_interactive_authentication</a></td></tr>
+<tr class="separator:a9134f0b8a6352cc257e1e91e162efea3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac62be9cdb6f40912b2a45729a052ad48"><td class="memItemLeft" align="right" valign="top">enum rf_context:: { ... } &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48">postconnect_error</a></td></tr>
+<tr class="separator:ac62be9cdb6f40912b2a45729a052ad48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00243">243</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Member Enumeration Documentation</h2>
+<a id="a881dfa933c45f7533fa3840ae883b5ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a881dfa933c45f7533fa3840ae883b5ec">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68"></a>REMMINA_POSTCONNECT_ERROR_OK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6"></a>REMMINA_POSTCONNECT_ERROR_GDI_INIT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982"></a>REMMINA_POSTCONNECT_ERROR_NO_H264&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00314">314</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a48f00dfd27805003509b1ab1ebc791b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48f00dfd27805003509b1ab1ebc791b7">&#9670;&nbsp;</a></span>DEFINE_RDP_CLIENT_COMMON()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rf_context::DEFINE_RDP_CLIENT_COMMON </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a id="a9134f0b8a6352cc257e1e91e162efea3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9134f0b8a6352cc257e1e91e162efea3">&#9670;&nbsp;</a></span>attempt_interactive_authentication</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::attempt_interactive_authentication</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00312">312</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a40e89e126e5dd96a3f67e6f945a8867b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a40e89e126e5dd96a3f67e6f945a8867b">&#9670;&nbsp;</a></span>bpp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::bpp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00292">292</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa13bb4f72f3024d81e9051de4bd65ec0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa13bb4f72f3024d81e9051de4bd65ec0">&#9670;&nbsp;</a></span>cairo_format</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">cairo_format_t rf_context::cairo_format</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00291">291</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a72d2a3d60347327237692947df93aea7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72d2a3d60347327237692947df93aea7">&#9670;&nbsp;</a></span>clipboard</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="rdp__plugin_8h.html#aaa49bc23157cbb28b9afd8d5566a15ea">rfClipboard</a> rf_context::clipboard</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00308">308</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8">&#9670;&nbsp;</a></span>cliprdr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CliprdrClientContext* rf_context::cliprdr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00258">258</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad06c1d1a2295fbdf455df0250dfb2523"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad06c1d1a2295fbdf455df0250dfb2523">&#9670;&nbsp;</a></span>colormap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint* rf_context::colormap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00294">294</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3c2ffa55ba97bc70324d61b8cc838e73"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3c2ffa55ba97bc70324d61b8cc838e73">&#9670;&nbsp;</a></span>connected</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::connected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00268">268</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a23192b58404d1dc629d5e7db3fb103be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a23192b58404d1dc629d5e7db3fb103be">&#9670;&nbsp;</a></span>context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpContext rf_context::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00244">244</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a957e6f6867170470689210d55770342e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a957e6f6867170470689210d55770342e">&#9670;&nbsp;</a></span>delayed_monitor_layout_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rf_context::delayed_monitor_layout_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00284">284</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a660a5c5ea7256ab6a6486f3e831a9174"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a660a5c5ea7256ab6a6486f3e831a9174">&#9670;&nbsp;</a></span>dispcontext</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">DispClientContext* rf_context::dispcontext</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00259">259</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7c4234646c4b584e41e36521b7eab889"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c4234646c4b584e41e36521b7eab889">&#9670;&nbsp;</a></span>display</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GdkDisplay* rf_context::display</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00288">288</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acee2095e72fb2428c498f62e21800026"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acee2095e72fb2428c498f62e21800026">&#9670;&nbsp;</a></span>drawing_area</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GtkWidget* rf_context::drawing_area</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00279">279</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a2a708b989f3e12af802ab4266af39363"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2a708b989f3e12af802ab4266af39363">&#9670;&nbsp;</a></span>drdynvc_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RDP_PLUGIN_DATA rf_context::drdynvc_data[5]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00262">262</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a522c742a333cf0603dfa7d06a7376669"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a522c742a333cf0603dfa7d06a7376669">&#9670;&nbsp;</a></span>event_handle</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">HANDLE rf_context::event_handle</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00306">306</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a539feef609228a91c5e54d5da837bb7a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a539feef609228a91c5e54d5da837bb7a">&#9670;&nbsp;</a></span>event_pipe</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::event_pipe[2]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00305">305</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a5d119b1f108fe84c74e6484d48c2a565"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5d119b1f108fe84c74e6484d48c2a565">&#9670;&nbsp;</a></span>event_queue</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GAsyncQueue* rf_context::event_queue</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00304">304</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3a32bbd599b6684a3c41db9281863362"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3a32bbd599b6684a3c41db9281863362">&#9670;&nbsp;</a></span>instance</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">freerdp* rf_context::instance</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00251">251</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="af40c80ff8296b9bcc3ac437bf0be55f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af40c80ff8296b9bcc3ac437bf0be55f8">&#9670;&nbsp;</a></span>is_reconnecting</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::is_reconnecting</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00269">269</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3712f6b20462e62a6bb87038e5f10d9d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3712f6b20462e62a6bb87038e5f10d9d">&#9670;&nbsp;</a></span>keymap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GArray* rf_context::keymap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00310">310</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="adeee1ea1db2e19b99e4deb80b8a6a960"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adeee1ea1db2e19b99e4deb80b8a6a960">&#9670;&nbsp;</a></span>object_id_seq</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rf_context::object_id_seq</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00296">296</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aafce196b029d2578151275acd07ccb82"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafce196b029d2578151275acd07ccb82">&#9670;&nbsp;</a></span>object_table</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GHashTable* rf_context::object_table</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00297">297</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ad4ea260ce64d09deea422b9067ee70b4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad4ea260ce64d09deea422b9067ee70b4">&#9670;&nbsp;</a></span>orphaned</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::orphaned</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00274">274</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac62be9cdb6f40912b2a45729a052ad48"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac62be9cdb6f40912b2a45729a052ad48">&#9670;&nbsp;</a></span>postconnect_error</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum { ... } rf_context::postconnect_error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a335c40ccb90ae472525b203c832e7701"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a335c40ccb90ae472525b203c832e7701">&#9670;&nbsp;</a></span>pressed_keys</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GArray* rf_context::pressed_keys</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00303">303</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a05f37c213b04dfb9ae9b38c12bcdf7e3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05f37c213b04dfb9ae9b38c12bcdf7e3">&#9670;&nbsp;</a></span>protocol_widget</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a>* rf_context::protocol_widget</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00247">247</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a93dd55d1f081496959f1051d04cc3ba4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a93dd55d1f081496959f1051d04cc3ba4">&#9670;&nbsp;</a></span>rdpdr_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RDP_PLUGIN_DATA rf_context::rdpdr_data[5]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00261">261</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ab5ffc4d8ba9d3d8a298414dc8e4efd2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab5ffc4d8ba9d3d8a298414dc8e4efd2a">&#9670;&nbsp;</a></span>rdpgfxchan</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::rdpgfxchan</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00266">266</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a0ae7b9fee3a645d77cf90c8a22f0d90f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0ae7b9fee3a645d77cf90c8a22f0d90f">&#9670;&nbsp;</a></span>rdpsnd_options</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gchar rf_context::rdpsnd_options[20]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00263">263</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa0b949ab1e2f06b7d5efeccc924efaee"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa0b949ab1e2f06b7d5efeccc924efaee">&#9670;&nbsp;</a></span>reconnect_maxattempts</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int rf_context::reconnect_maxattempts</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00275">275</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a4c35800dba8da687f7f56e3bb7a23413"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4c35800dba8da687f7f56e3bb7a23413">&#9670;&nbsp;</a></span>reconnect_nattempt</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int rf_context::reconnect_nattempt</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00276">276</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa79909e0ac140a3404151a40bed6a6ec"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa79909e0ac140a3404151a40bed6a6ec">&#9670;&nbsp;</a></span>remmina_plugin_thread</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_t rf_context::remmina_plugin_thread</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00253">253</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a73a760b5eeaaf7d2a0684b1145d5d706"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73a760b5eeaaf7d2a0684b1145d5d706">&#9670;&nbsp;</a></span>rfx_context</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RFX_CONTEXT* rf_context::rfx_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00265">265</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a96c4689f6bc062482536038cb3b24e78"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a96c4689f6bc062482536038cb3b24e78">&#9670;&nbsp;</a></span>scale</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> rf_context::scale</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00254">254</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a76ff7add3727e4a8b82f7b4615f09169"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a76ff7add3727e4a8b82f7b4615f09169">&#9670;&nbsp;</a></span>scale_height</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::scale_height</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00281">281</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aedf6fcd090e6ba788956565ce312ab70"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedf6fcd090e6ba788956565ce312ab70">&#9670;&nbsp;</a></span>scale_width</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::scale_width</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00280">280</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a584505347366c40e6efa710353d4264f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a584505347366c40e6efa710353d4264f">&#9670;&nbsp;</a></span>scale_x</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gdouble rf_context::scale_x</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00282">282</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a8a310c8fad5daf6b9f4d8f854b04a764"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a310c8fad5daf6b9f4d8f854b04a764">&#9670;&nbsp;</a></span>scale_y</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gdouble rf_context::scale_y</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00283">283</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a538399f42e4454d5a44effbc59ea9091"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a538399f42e4454d5a44effbc59ea9091">&#9670;&nbsp;</a></span>scanline_pad</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::scanline_pad</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00293">293</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a28d215e4ddb5decc543c3c6578df5e3d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a28d215e4ddb5decc543c3c6578df5e3d">&#9670;&nbsp;</a></span>settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpSettings* rf_context::settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00250">250</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a9d28c775fe1ee90ad48941d753564a76"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9d28c775fe1ee90ad48941d753564a76">&#9670;&nbsp;</a></span>srcBpp</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint rf_context::srcBpp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00287">287</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3aead7f4d2c4580fcbd25e15679e19c6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3aead7f4d2c4580fcbd25e15679e19c6">&#9670;&nbsp;</a></span>surface</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">cairo_surface_t* rf_context::surface</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00290">290</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a91f20005b39ad9e1073cf25bf6d7c2f2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91f20005b39ad9e1073cf25bf6d7c2f2">&#9670;&nbsp;</a></span>sw_gdi</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::sw_gdi</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00278">278</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="aa574515edb4966117f539d26e26f0a62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa574515edb4966117f539d26e26f0a62">&#9670;&nbsp;</a></span>thread_cancelled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::thread_cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00256">256</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae62cc5547984bf11865f93c7d63afdf0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae62cc5547984bf11865f93c7d63afdf0">&#9670;&nbsp;</a></span>ui_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rf_context::ui_handler</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00301">301</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ae6190d1c82045bcd08e22ff6e98148a3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6190d1c82045bcd08e22ff6e98148a3">&#9670;&nbsp;</a></span>ui_queue</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GAsyncQueue* rf_context::ui_queue</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00299">299</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a3836f3c9bc575a05d5b35dbdb3186329"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3836f3c9bc575a05d5b35dbdb3186329">&#9670;&nbsp;</a></span>ui_queue_mutex</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_mutex_t rf_context::ui_queue_mutex</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00300">300</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="ac1f3330674d320c9d0ae408c551be6b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac1f3330674d320c9d0ae408c551be6b8">&#9670;&nbsp;</a></span>use_client_keymap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::use_client_keymap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00285">285</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="acacad775c2c168f900deaa6c90481319"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acacad775c2c168f900deaa6c90481319">&#9670;&nbsp;</a></span>user_cancelled</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean rf_context::user_cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00255">255</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a7343f17d1aa3e70e112a9c20d6c6a999"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7343f17d1aa3e70e112a9c20d6c6a999">&#9670;&nbsp;</a></span>visual</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GdkVisual* rf_context::visual</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00289">289</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrf__context.html">rf_context</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrf__context.js b/docs/structrf__context.js
new file mode 100644
index 000000000..8085004d1
--- /dev/null
+++ b/docs/structrf__context.js
@@ -0,0 +1,56 @@
+var structrf__context =
+[
+ [ "REMMINA_POSTCONNECT_ERROR_OK", "structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca6fd8f1c40304866e0168e9d496c26a68", null ],
+ [ "REMMINA_POSTCONNECT_ERROR_GDI_INIT", "structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca2266700ffb95b7f2c38eea7294f6fba6", null ],
+ [ "REMMINA_POSTCONNECT_ERROR_NO_H264", "structrf__context.html#a881dfa933c45f7533fa3840ae883b5eca0b7e911f34ade078b572b43780fc6982", null ],
+ [ "DEFINE_RDP_CLIENT_COMMON", "structrf__context.html#a48f00dfd27805003509b1ab1ebc791b7", null ],
+ [ "attempt_interactive_authentication", "structrf__context.html#a9134f0b8a6352cc257e1e91e162efea3", null ],
+ [ "bpp", "structrf__context.html#a40e89e126e5dd96a3f67e6f945a8867b", null ],
+ [ "cairo_format", "structrf__context.html#aa13bb4f72f3024d81e9051de4bd65ec0", null ],
+ [ "clipboard", "structrf__context.html#a72d2a3d60347327237692947df93aea7", null ],
+ [ "cliprdr", "structrf__context.html#a1bb1d1fcc3e6e813ee98f4fe4ce4f3b8", null ],
+ [ "colormap", "structrf__context.html#ad06c1d1a2295fbdf455df0250dfb2523", null ],
+ [ "connected", "structrf__context.html#a3c2ffa55ba97bc70324d61b8cc838e73", null ],
+ [ "context", "structrf__context.html#a23192b58404d1dc629d5e7db3fb103be", null ],
+ [ "delayed_monitor_layout_handler", "structrf__context.html#a957e6f6867170470689210d55770342e", null ],
+ [ "dispcontext", "structrf__context.html#a660a5c5ea7256ab6a6486f3e831a9174", null ],
+ [ "display", "structrf__context.html#a7c4234646c4b584e41e36521b7eab889", null ],
+ [ "drawing_area", "structrf__context.html#acee2095e72fb2428c498f62e21800026", null ],
+ [ "drdynvc_data", "structrf__context.html#a2a708b989f3e12af802ab4266af39363", null ],
+ [ "event_handle", "structrf__context.html#a522c742a333cf0603dfa7d06a7376669", null ],
+ [ "event_pipe", "structrf__context.html#a539feef609228a91c5e54d5da837bb7a", null ],
+ [ "event_queue", "structrf__context.html#a5d119b1f108fe84c74e6484d48c2a565", null ],
+ [ "instance", "structrf__context.html#a3a32bbd599b6684a3c41db9281863362", null ],
+ [ "is_reconnecting", "structrf__context.html#af40c80ff8296b9bcc3ac437bf0be55f8", null ],
+ [ "keymap", "structrf__context.html#a3712f6b20462e62a6bb87038e5f10d9d", null ],
+ [ "object_id_seq", "structrf__context.html#adeee1ea1db2e19b99e4deb80b8a6a960", null ],
+ [ "object_table", "structrf__context.html#aafce196b029d2578151275acd07ccb82", null ],
+ [ "orphaned", "structrf__context.html#ad4ea260ce64d09deea422b9067ee70b4", null ],
+ [ "postconnect_error", "structrf__context.html#ac62be9cdb6f40912b2a45729a052ad48", null ],
+ [ "pressed_keys", "structrf__context.html#a335c40ccb90ae472525b203c832e7701", null ],
+ [ "protocol_widget", "structrf__context.html#a05f37c213b04dfb9ae9b38c12bcdf7e3", null ],
+ [ "rdpdr_data", "structrf__context.html#a93dd55d1f081496959f1051d04cc3ba4", null ],
+ [ "rdpgfxchan", "structrf__context.html#ab5ffc4d8ba9d3d8a298414dc8e4efd2a", null ],
+ [ "rdpsnd_options", "structrf__context.html#a0ae7b9fee3a645d77cf90c8a22f0d90f", null ],
+ [ "reconnect_maxattempts", "structrf__context.html#aa0b949ab1e2f06b7d5efeccc924efaee", null ],
+ [ "reconnect_nattempt", "structrf__context.html#a4c35800dba8da687f7f56e3bb7a23413", null ],
+ [ "remmina_plugin_thread", "structrf__context.html#aa79909e0ac140a3404151a40bed6a6ec", null ],
+ [ "rfx_context", "structrf__context.html#a73a760b5eeaaf7d2a0684b1145d5d706", null ],
+ [ "scale", "structrf__context.html#a96c4689f6bc062482536038cb3b24e78", null ],
+ [ "scale_height", "structrf__context.html#a76ff7add3727e4a8b82f7b4615f09169", null ],
+ [ "scale_width", "structrf__context.html#aedf6fcd090e6ba788956565ce312ab70", null ],
+ [ "scale_x", "structrf__context.html#a584505347366c40e6efa710353d4264f", null ],
+ [ "scale_y", "structrf__context.html#a8a310c8fad5daf6b9f4d8f854b04a764", null ],
+ [ "scanline_pad", "structrf__context.html#a538399f42e4454d5a44effbc59ea9091", null ],
+ [ "settings", "structrf__context.html#a28d215e4ddb5decc543c3c6578df5e3d", null ],
+ [ "srcBpp", "structrf__context.html#a9d28c775fe1ee90ad48941d753564a76", null ],
+ [ "surface", "structrf__context.html#a3aead7f4d2c4580fcbd25e15679e19c6", null ],
+ [ "sw_gdi", "structrf__context.html#a91f20005b39ad9e1073cf25bf6d7c2f2", null ],
+ [ "thread_cancelled", "structrf__context.html#aa574515edb4966117f539d26e26f0a62", null ],
+ [ "ui_handler", "structrf__context.html#ae62cc5547984bf11865f93c7d63afdf0", null ],
+ [ "ui_queue", "structrf__context.html#ae6190d1c82045bcd08e22ff6e98148a3", null ],
+ [ "ui_queue_mutex", "structrf__context.html#a3836f3c9bc575a05d5b35dbdb3186329", null ],
+ [ "use_client_keymap", "structrf__context.html#ac1f3330674d320c9d0ae408c551be6b8", null ],
+ [ "user_cancelled", "structrf__context.html#acacad775c2c168f900deaa6c90481319", null ],
+ [ "visual", "structrf__context.html#a7343f17d1aa3e70e112a9c20d6c6a999", null ]
+]; \ No newline at end of file
diff --git a/docs/structrf__glyph.html b/docs/structrf__glyph.html
new file mode 100644
index 000000000..c1c70ae78
--- /dev/null
+++ b/docs/structrf__glyph.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rf_glyph Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrf__glyph.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rf_glyph Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ac258216d1331ac44afc01a3329357e94"><td class="memItemLeft" align="right" valign="top">rdpGlyph&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__glyph.html#ac258216d1331ac44afc01a3329357e94">glyph</a></td></tr>
+<tr class="separator:ac258216d1331ac44afc01a3329357e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19abe408a1c2a4c0c27ecddafb60cc22"><td class="memItemLeft" align="right" valign="top">Pixmap&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22">pixmap</a></td></tr>
+<tr class="separator:a19abe408a1c2a4c0c27ecddafb60cc22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00100">100</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="ac258216d1331ac44afc01a3329357e94"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac258216d1331ac44afc01a3329357e94">&#9670;&nbsp;</a></span>glyph</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpGlyph rf_glyph::glyph</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00101">101</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a19abe408a1c2a4c0c27ecddafb60cc22"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a19abe408a1c2a4c0c27ecddafb60cc22">&#9670;&nbsp;</a></span>pixmap</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">Pixmap rf_glyph::pixmap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00102">102</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrf__glyph.html">rf_glyph</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrf__glyph.js b/docs/structrf__glyph.js
new file mode 100644
index 000000000..06e200002
--- /dev/null
+++ b/docs/structrf__glyph.js
@@ -0,0 +1,5 @@
+var structrf__glyph =
+[
+ [ "glyph", "structrf__glyph.html#ac258216d1331ac44afc01a3329357e94", null ],
+ [ "pixmap", "structrf__glyph.html#a19abe408a1c2a4c0c27ecddafb60cc22", null ]
+]; \ No newline at end of file
diff --git a/docs/structrf__pointer.html b/docs/structrf__pointer.html
new file mode 100644
index 000000000..0d353c00a
--- /dev/null
+++ b/docs/structrf__pointer.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rf_pointer Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrf__pointer.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rf_pointer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a38bbbd6f1e1505c3c04c120d83998bbf"><td class="memItemLeft" align="right" valign="top">rdpPointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf">pointer</a></td></tr>
+<tr class="separator:a38bbbd6f1e1505c3c04c120d83998bbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e960686357ad03c023712bdfcef1cf0"><td class="memItemLeft" align="right" valign="top">GdkCursor *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0">cursor</a></td></tr>
+<tr class="separator:a6e960686357ad03c023712bdfcef1cf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00087">87</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6e960686357ad03c023712bdfcef1cf0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6e960686357ad03c023712bdfcef1cf0">&#9670;&nbsp;</a></span>cursor</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GdkCursor* rf_pointer::cursor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00089">89</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<a id="a38bbbd6f1e1505c3c04c120d83998bbf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a38bbbd6f1e1505c3c04c120d83998bbf">&#9670;&nbsp;</a></span>pointer</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">rdpPointer rf_pointer::pointer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="rdp__plugin_8h_source.html#l00088">88</a> of file <a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="rdp__plugin_8h_source.html">rdp_plugin.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrf__pointer.html">rf_pointer</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrf__pointer.js b/docs/structrf__pointer.js
new file mode 100644
index 000000000..b29f846ea
--- /dev/null
+++ b/docs/structrf__pointer.js
@@ -0,0 +1,5 @@
+var structrf__pointer =
+[
+ [ "cursor", "structrf__pointer.html#a6e960686357ad03c023712bdfcef1cf0", null ],
+ [ "pointer", "structrf__pointer.html#a38bbbd6f1e1505c3c04c120d83998bbf", null ]
+]; \ No newline at end of file
diff --git a/docs/structrs_sched_data.html b/docs/structrs_sched_data.html
new file mode 100644
index 000000000..c233ab3c3
--- /dev/null
+++ b/docs/structrs_sched_data.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: rsSchedData Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structrs_sched_data.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">rsSchedData Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aa3dd8912a9d32cb7e5600caea5cc2646"><td class="memItemLeft" align="right" valign="top">GSourceFunc&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646">cb_func_ptr</a></td></tr>
+<tr class="separator:aa3dd8912a9d32cb7e5600caea5cc2646"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f5ced4584fcb4e1f6379249ef967a6b"><td class="memItemLeft" align="right" valign="top">gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b">cb_func_data</a></td></tr>
+<tr class="separator:a6f5ced4584fcb4e1f6379249ef967a6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34966a9585c2e38ec36b3ea41517356f"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f">interval</a></td></tr>
+<tr class="separator:a34966a9585c2e38ec36b3ea41517356f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a758a3750f1e3d5e412daf35344f47688"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688">source</a></td></tr>
+<tr class="separator:a758a3750f1e3d5e412daf35344f47688"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1747344f64896feb08c863ec2cf2528e"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e">count</a></td></tr>
+<tr class="separator:a1747344f64896feb08c863ec2cf2528e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00037">37</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a6f5ced4584fcb4e1f6379249ef967a6b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f5ced4584fcb4e1f6379249ef967a6b">&#9670;&nbsp;</a></span>cb_func_data</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer rsSchedData::cb_func_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00039">39</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+
+</div>
+</div>
+<a id="aa3dd8912a9d32cb7e5600caea5cc2646"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa3dd8912a9d32cb7e5600caea5cc2646">&#9670;&nbsp;</a></span>cb_func_ptr</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">GSourceFunc rsSchedData::cb_func_ptr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00038">38</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+
+</div>
+</div>
+<a id="a1747344f64896feb08c863ec2cf2528e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1747344f64896feb08c863ec2cf2528e">&#9670;&nbsp;</a></span>count</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rsSchedData::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00042">42</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+
+</div>
+</div>
+<a id="a34966a9585c2e38ec36b3ea41517356f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a34966a9585c2e38ec36b3ea41517356f">&#9670;&nbsp;</a></span>interval</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rsSchedData::interval</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00040">40</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+
+</div>
+</div>
+<a id="a758a3750f1e3d5e412daf35344f47688"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a758a3750f1e3d5e412daf35344f47688">&#9670;&nbsp;</a></span>source</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint rsSchedData::source</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__scheduler_8h_source.html#l00041">41</a> of file <a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__scheduler_8h_source.html">remmina_scheduler.h</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structrs_sched_data.html">rsSchedData</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structrs_sched_data.js b/docs/structrs_sched_data.js
new file mode 100644
index 000000000..b983aa0ae
--- /dev/null
+++ b/docs/structrs_sched_data.js
@@ -0,0 +1,8 @@
+var structrs_sched_data =
+[
+ [ "cb_func_data", "structrs_sched_data.html#a6f5ced4584fcb4e1f6379249ef967a6b", null ],
+ [ "cb_func_ptr", "structrs_sched_data.html#aa3dd8912a9d32cb7e5600caea5cc2646", null ],
+ [ "count", "structrs_sched_data.html#a1747344f64896feb08c863ec2cf2528e", null ],
+ [ "interval", "structrs_sched_data.html#a34966a9585c2e38ec36b3ea41517356f", null ],
+ [ "source", "structrs_sched_data.html#a758a3750f1e3d5e412daf35344f47688", null ]
+]; \ No newline at end of file
diff --git a/docs/structsc__tdata.html b/docs/structsc__tdata.html
new file mode 100644
index 000000000..86cce24c7
--- /dev/null
+++ b/docs/structsc__tdata.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: sc_tdata Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('structsc__tdata.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">sc_tdata Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a8eb91802a809569acddc7c4c9d321e23"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23">show_only</a></td></tr>
+<tr class="separator:a8eb91802a809569acddc7c4c9d321e23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d4fa4f117c67c3cd9b80b5bdf4c088b"><td class="memItemLeft" align="right" valign="top">JsonNode *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b">statsroot</a></td></tr>
+<tr class="separator:a6d4fa4f117c67c3cd9b80b5bdf4c088b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock">
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00075">75</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a id="a8eb91802a809569acddc7c4c9d321e23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8eb91802a809569acddc7c4c9d321e23">&#9670;&nbsp;</a></span>show_only</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean sc_tdata::show_only</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00076">76</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<a id="a6d4fa4f117c67c3cd9b80b5bdf4c088b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6d4fa4f117c67c3cd9b80b5bdf4c088b">&#9670;&nbsp;</a></span>statsroot</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">JsonNode* sc_tdata::statsroot</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="remmina__stats__sender_8c_source.html#l00077">77</a> of file <a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li><a class="el" href="remmina__stats__sender_8c_source.html">remmina_stats_sender.c</a></li>
+</ul>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="structsc__tdata.html">sc_tdata</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/structsc__tdata.js b/docs/structsc__tdata.js
new file mode 100644
index 000000000..2a1570d62
--- /dev/null
+++ b/docs/structsc__tdata.js
@@ -0,0 +1,5 @@
+var structsc__tdata =
+[
+ [ "show_only", "structsc__tdata.html#a8eb91802a809569acddc7c4c9d321e23", null ],
+ [ "statsroot", "structsc__tdata.html#a6d4fa4f117c67c3cd9b80b5bdf4c088b", null ]
+]; \ No newline at end of file
diff --git a/docs/sync_off.png b/docs/sync_off.png
new file mode 100644
index 000000000..3b443fc62
--- /dev/null
+++ b/docs/sync_off.png
Binary files differ
diff --git a/docs/sync_on.png b/docs/sync_on.png
new file mode 100644
index 000000000..e08320fb6
--- /dev/null
+++ b/docs/sync_on.png
Binary files differ
diff --git a/docs/tab_a.png b/docs/tab_a.png
new file mode 100644
index 000000000..3b725c41c
--- /dev/null
+++ b/docs/tab_a.png
Binary files differ
diff --git a/docs/tab_b.png b/docs/tab_b.png
new file mode 100644
index 000000000..e2b4a8638
--- /dev/null
+++ b/docs/tab_b.png
Binary files differ
diff --git a/docs/tab_h.png b/docs/tab_h.png
new file mode 100644
index 000000000..fd5cb7054
--- /dev/null
+++ b/docs/tab_h.png
Binary files differ
diff --git a/docs/tab_s.png b/docs/tab_s.png
new file mode 100644
index 000000000..ab478c95b
--- /dev/null
+++ b/docs/tab_s.png
Binary files differ
diff --git a/docs/tabs.css b/docs/tabs.css
new file mode 100644
index 000000000..bbde11ed9
--- /dev/null
+++ b/docs/tabs.css
@@ -0,0 +1 @@
+.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:transparent}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}
diff --git a/docs/telepathy__channel__handler_8c.html b/docs/telepathy__channel__handler_8c.html
new file mode 100644
index 000000000..c5162939e
--- /dev/null
+++ b/docs/telepathy__channel__handler_8c.html
@@ -0,0 +1,732 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_channel_handler.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__channel__handler_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">telepathy_channel_handler.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="telepathy__channel__handler_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5609768cd191b759e2e1c3204daf0f84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a></td></tr>
+<tr class="separator:a5609768cd191b759e2e1c3204daf0f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2ef527ef268168e872486a8d929fa8c9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a> (<a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *chandler)</td></tr>
+<tr class="separator:a2ef527ef268168e872486a8d929fa8c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac355eb5905cbdca302a7939e36bbdc6f"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">remmina_tp_channel_handler_channel_closed</a> (TpChannel *channel, gpointer user_data, GObject *self)</td></tr>
+<tr class="separator:ac355eb5905cbdca302a7939e36bbdc6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af46516580c333fdea97f6de9dc0b81f8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">remmina_tp_channel_handler_on_disconnect</a> (GtkWidget *widget, <a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *chandler)</td></tr>
+<tr class="separator:af46516580c333fdea97f6de9dc0b81f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae760fbe6b71a12b70e01b636943550d6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">remmina_tp_channel_handler_connect</a> (<a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *chandler)</td></tr>
+<tr class="separator:ae760fbe6b71a12b70e01b636943550d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad357875c68745a28847486b622e1ce3e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">remmina_tp_channel_handler_get_service</a> (TpProxy *channel, const GValue *service, const GError *error, gpointer user_data, GObject *weak_object)</td></tr>
+<tr class="separator:ad357875c68745a28847486b622e1ce3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ede5d9d191e9d1b906054429a36e1bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">remmina_tp_channel_handler_accept</a> (TpChannel *channel, const GValue *address, const GError *error, gpointer user_data, GObject *weak_object)</td></tr>
+<tr class="separator:a4ede5d9d191e9d1b906054429a36e1bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8242994e64988a4a18b162b7d837f98e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">remmina_tp_channel_handler_on_response</a> (GtkDialog *dialog, gint response_id, <a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *chandler)</td></tr>
+<tr class="separator:a8242994e64988a4a18b162b7d837f98e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b30990f1b0ed8b69a6a81dd597d17bb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">remmina_tp_channel_handler_get_contacts</a> (TpConnection *connection, guint n_contacts, TpContact *const *contacts, guint n_failed, const TpHandle *failed, const GError *error, gpointer user_data, GObject *weak_object)</td></tr>
+<tr class="separator:a2b30990f1b0ed8b69a6a81dd597d17bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c4c20f7e570ff32e5ed7b6a41285e2b"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">remmina_tp_channel_handler_channel_ready</a> (TpChannel *channel, const GError *channel_error, gpointer user_data)</td></tr>
+<tr class="separator:a6c4c20f7e570ff32e5ed7b6a41285e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9119f529c6953951fedc06c7983fe61e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">remmina_tp_channel_handler_connection_ready</a> (TpConnection *connection, const GError *connection_error, gpointer user_data)</td></tr>
+<tr class="separator:a9119f529c6953951fedc06c7983fe61e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5596ef18518b35ac215d1dafe7f5537"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">remmina_tp_channel_handler_account_ready</a> (GObject *account, GAsyncResult *res, gpointer user_data)</td></tr>
+<tr class="separator:ae5596ef18518b35ac215d1dafe7f5537"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74693af8c8cbff4c2fb54908d3fee404"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">remmina_tp_channel_handler_new</a> (const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context)</td></tr>
+<tr class="separator:a74693af8c8cbff4c2fb54908d3fee404"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ad6a9e111bcd9487a6215c417ea70e052"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a></td></tr>
+<tr class="separator:ad6a9e111bcd9487a6215c417ea70e052"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a5609768cd191b759e2e1c3204daf0f84"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5609768cd191b759e2e1c3204daf0f84">&#9670;&nbsp;</a></span>RemminaTpChannelHandler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a> <a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a4ede5d9d191e9d1b906054429a36e1bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4ede5d9d191e9d1b906054429a36e1bb">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_accept()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_accept </td>
+ <td>(</td>
+ <td class="paramtype">TpChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>address</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GError *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>weak_object</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00169">169</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5596ef18518b35ac215d1dafe7f5537"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5596ef18518b35ac215d1dafe7f5537">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_account_ready()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_account_ready </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>account</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GAsyncResult *&#160;</td>
+ <td class="paramname"><em>res</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00319">319</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ac355eb5905cbdca302a7939e36bbdc6f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac355eb5905cbdca302a7939e36bbdc6f">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_channel_closed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_channel_closed </td>
+ <td>(</td>
+ <td class="paramtype">TpChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>self</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00105">105</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a6c4c20f7e570ff32e5ed7b6a41285e2b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6c4c20f7e570ff32e5ed7b6a41285e2b">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_channel_ready()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_channel_ready </td>
+ <td>(</td>
+ <td class="paramtype">TpChannel *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GError *&#160;</td>
+ <td class="paramname"><em>channel_error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00268">268</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ae760fbe6b71a12b70e01b636943550d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae760fbe6b71a12b70e01b636943550d6">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_connect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_connect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *&#160;</td>
+ <td class="paramname"><em>chandler</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00123">123</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a9119f529c6953951fedc06c7983fe61e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9119f529c6953951fedc06c7983fe61e">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_connection_ready()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_connection_ready </td>
+ <td>(</td>
+ <td class="paramtype">TpConnection *&#160;</td>
+ <td class="paramname"><em>connection</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GError *&#160;</td>
+ <td class="paramname"><em>connection_error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00296">296</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a2ef527ef268168e872486a8d929fa8c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ef527ef268168e872486a8d929fa8c9">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *&#160;</td>
+ <td class="paramname"><em>chandler</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00071">71</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b30990f1b0ed8b69a6a81dd597d17bb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b30990f1b0ed8b69a6a81dd597d17bb">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_get_contacts()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_get_contacts </td>
+ <td>(</td>
+ <td class="paramtype">TpConnection *&#160;</td>
+ <td class="paramname"><em>connection</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_contacts</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">TpContact *const *&#160;</td>
+ <td class="paramname"><em>contacts</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint&#160;</td>
+ <td class="paramname"><em>n_failed</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const TpHandle *&#160;</td>
+ <td class="paramname"><em>failed</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GError *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>weak_object</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00209">209</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ad357875c68745a28847486b622e1ce3e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad357875c68745a28847486b622e1ce3e">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_get_service()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_get_service </td>
+ <td>(</td>
+ <td class="paramtype">TpProxy *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GValue *&#160;</td>
+ <td class="paramname"><em>service</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GError *&#160;</td>
+ <td class="paramname"><em>error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>weak_object</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00146">146</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a74693af8c8cbff4c2fb54908d3fee404"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74693af8c8cbff4c2fb54908d3fee404">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_tp_channel_handler_new </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>account_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>connection_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>channel_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GHashTable *&#160;</td>
+ <td class="paramname"><em>channel_properties</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">DBusGMethodInvocation *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00340">340</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="af46516580c333fdea97f6de9dc0b81f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af46516580c333fdea97f6de9dc0b81f8">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_on_disconnect()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_on_disconnect </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *&#160;</td>
+ <td class="paramname"><em>chandler</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00114">114</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a8242994e64988a4a18b162b7d837f98e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8242994e64988a4a18b162b7d837f98e">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_on_response()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_channel_handler_on_response </td>
+ <td>(</td>
+ <td class="paramtype">GtkDialog *&#160;</td>
+ <td class="paramname"><em>dialog</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>response_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a> *&#160;</td>
+ <td class="paramname"><em>chandler</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00187">187</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ad6a9e111bcd9487a6215c417ea70e052"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6a9e111bcd9487a6215c417ea70e052">&#9670;&nbsp;</a></span>remmina_plugin_telepathy_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_telepathy_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00040">40</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__channel__handler_8c.html">telepathy_channel_handler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__channel__handler_8c.js b/docs/telepathy__channel__handler_8c.js
new file mode 100644
index 000000000..a5170a0d0
--- /dev/null
+++ b/docs/telepathy__channel__handler_8c.js
@@ -0,0 +1,18 @@
+var telepathy__channel__handler_8c =
+[
+ [ "_RemminaTpChannelHandler", "struct___remmina_tp_channel_handler.html", "struct___remmina_tp_channel_handler" ],
+ [ "RemminaTpChannelHandler", "telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84", null ],
+ [ "remmina_tp_channel_handler_accept", "telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb", null ],
+ [ "remmina_tp_channel_handler_account_ready", "telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537", null ],
+ [ "remmina_tp_channel_handler_channel_closed", "telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f", null ],
+ [ "remmina_tp_channel_handler_channel_ready", "telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b", null ],
+ [ "remmina_tp_channel_handler_connect", "telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6", null ],
+ [ "remmina_tp_channel_handler_connection_ready", "telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e", null ],
+ [ "remmina_tp_channel_handler_free", "telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9", null ],
+ [ "remmina_tp_channel_handler_get_contacts", "telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb", null ],
+ [ "remmina_tp_channel_handler_get_service", "telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e", null ],
+ [ "remmina_tp_channel_handler_new", "telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404", null ],
+ [ "remmina_tp_channel_handler_on_disconnect", "telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8", null ],
+ [ "remmina_tp_channel_handler_on_response", "telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e", null ],
+ [ "remmina_plugin_telepathy_service", "telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052", null ]
+]; \ No newline at end of file
diff --git a/docs/telepathy__channel__handler_8c_source.html b/docs/telepathy__channel__handler_8c_source.html
new file mode 100644
index 000000000..2c87c90f5
--- /dev/null
+++ b/docs/telepathy__channel__handler_8c_source.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_channel_handler.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__channel__handler_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy_channel_handler.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="telepathy__channel__handler_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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/account.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/channel.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/contact.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/dbus.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/defs.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/handle.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/interfaces.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/svc-client.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/util.h&gt;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a>&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a> {</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213"> 52</a></span>&#160; gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769"> 53</a></span>&#160; gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632"> 54</a></span>&#160; GHashTable *<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068"> 55</a></span>&#160; DBusGMethodInvocation *<a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545"> 57</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">proto_widget</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363"> 58</a></span>&#160; guint <a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3"> 60</a></span>&#160; TpDBusDaemon *<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8"> 61</a></span>&#160; TpAccount *<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981"> 62</a></span>&#160; TpConnection *<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece"> 63</a></span>&#160; TpChannel *<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334"> 65</a></span>&#160; gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed"> 66</a></span>&#160; gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107"> 67</a></span>&#160; guint <a class="code" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">port</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659"> 68</a></span>&#160; gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;} <a class="code" href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</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"><a class="line" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9"> 71</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a>) {</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; g_signal_handler_disconnect(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">proto_widget</a>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a>);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a> = 0;</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"> 78</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a>);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; g_hash_table_destroy(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a>);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>) {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; g_object_unref(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>) {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; g_object_unref(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>) {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; g_object_unref(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; }</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>) {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; g_object_unref(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>);</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="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a>) {</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</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="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>) {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>);</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="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>) {</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>);</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_free(chandler);</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;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f"> 105</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">remmina_tp_channel_handler_channel_closed</a>(TpChannel *<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, gpointer user_data, GObject *<span class="keyword">self</span>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</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; g_print(<span class="stringliteral">&quot;%s: %s\n&quot;</span>, __func__, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</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;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8"> 114</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">remmina_tp_channel_handler_on_disconnect</a>(GtkWidget *widget, <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s\n&quot;</span>, __func__, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; g_signal_handler_disconnect(widget, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a>);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a> = 0;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; tp_cli_channel_call_close(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, -1, NULL, NULL, NULL, NULL);</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="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6"> 123</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">remmina_tp_channel_handler_connect</a>(<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler)</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; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; gchar *s;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; remminafile = remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">file_new</a>();</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a>);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;protocol&quot;</span>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; s = g_strdup_printf(<span class="stringliteral">&quot;[%s]:%i&quot;</span>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">port</a>);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>, s);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; g_free(s);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">file_set_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 8);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a>);</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a> = NULL;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; g_free(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a> = NULL;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">proto_widget</a> = remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">open_connection</a>(remminafile,</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; G_CALLBACK(<a class="code" href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">remmina_tp_channel_handler_on_disconnect</a>), chandler, &amp;chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">disconnect_handler</a>);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e"> 146</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">remmina_tp_channel_handler_get_service</a>(TpProxy *<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, <span class="keyword">const</span> GValue *service, <span class="keyword">const</span> GError *error,</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gpointer user_data, GObject *weak_object)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">const</span> gchar *svc;</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; <span class="keywordflow">if</span> (error != NULL) {</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s&quot;</span>, __func__, error-&gt;message);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; }</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; svc = g_value_get_string(service);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s %s:%u\n&quot;</span>, __func__, svc, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">port</a>);</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(svc, <span class="stringliteral">&quot;rfb&quot;</span>) == 0) {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a> = g_strdup(<span class="stringliteral">&quot;VNC&quot;</span>);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a> = g_ascii_strup(svc, -1);</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; <a class="code" href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">remmina_tp_channel_handler_connect</a>(chandler);</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;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb"> 169</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">remmina_tp_channel_handler_accept</a>(TpChannel *<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, <span class="keyword">const</span> GValue *address, <span class="keyword">const</span> GError *error,</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; gpointer user_data, GObject *weak_object)</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;{</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</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; <span class="keywordflow">if</span> (error != NULL) {</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s&quot;</span>, __func__, error-&gt;message);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; }</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; dbus_g_type_struct_get(address, 0, &amp;chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">host</a>, 1, &amp;chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">port</a>, G_MAXUINT);</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; tp_cli_dbus_properties_call_get(channel, -1, TP_IFACE_CHANNEL_TYPE_STREAM_TUBE, <span class="stringliteral">&quot;Service&quot;</span>,</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">remmina_tp_channel_handler_get_service</a>, chandler, NULL, NULL);</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;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e"> 187</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">remmina_tp_channel_handler_on_response</a>(GtkDialog *dialog, gint response_id, <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler)</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;{</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; GValue noop =</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; { 0 };</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; GError *error;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">if</span> (response_id == GTK_RESPONSE_YES) {</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; g_value_init(&amp;noop, G_TYPE_INT);</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; tp_cli_channel_type_stream_tube_call_accept(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, -1, TP_SOCKET_ADDRESS_TYPE_IPV4,</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; TP_SOCKET_ACCESS_CONTROL_LOCALHOST, &amp;noop, <a class="code" href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">remmina_tp_channel_handler_accept</a>, chandler, NULL,</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; NULL);</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; g_value_unset(&amp;noop);</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; tp_svc_client_handler_return_from_handle_channels(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a>);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; error = g_error_new(TP_ERROR, TP_ERROR_NOT_AVAILABLE, <span class="stringliteral">&quot;Channel rejected by user.&quot;</span>);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; dbus_g_method_return_error(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a>, error);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; g_error_free(error);</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</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"><a class="line" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb"> 209</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">remmina_tp_channel_handler_get_contacts</a>(TpConnection *<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>, guint n_contacts, TpContact * <span class="keyword">const</span> *contacts,</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; guint n_failed, <span class="keyword">const</span> TpHandle *failed, <span class="keyword">const</span> GError *error, gpointer user_data, GObject *weak_object)</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; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; TpContact *contact;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; gchar *token;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keyword">const</span> gchar *cm;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">protocol</a>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; gchar *filename;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; GdkPixbuf *pixbuf;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; GtkWidget *image;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; GtkWidget *dialog;</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; <span class="keywordflow">if</span> (error != NULL) {</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s&quot;</span>, __func__, error-&gt;message);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">if</span> (n_contacts &lt;= 0) {</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; g_print(<span class="stringliteral">&quot;%s: no contacts\n&quot;</span>, __func__);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; contact = contacts[0];</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a> = g_strdup(tp_contact_get_alias(contact));</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; dialog = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO,</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; _(<span class="stringliteral">&quot;%s wants to share their desktop.\nDo you accept?&quot;</span>), chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">alias</a>);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; g_signal_connect(G_OBJECT(dialog), <span class="stringliteral">&quot;response&quot;</span>, G_CALLBACK(<a class="code" href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">remmina_tp_channel_handler_on_response</a>), chandler);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</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="l00240"></a><span class="lineno"> 240</span>&#160; gtk_window_set_title(GTK_WINDOW(dialog), _(<span class="stringliteral">&quot;Desktop sharing invitation&quot;</span>));</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; remmina_plugin_telepathy_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524">ui_register</a>(dialog);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; gtk_widget_show(dialog);</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; token = (gchar*)tp_contact_get_avatar_token(contact);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (token == NULL) {</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; protocol = tp_connection_get_protocol_name(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; cm = tp_connection_get_cm_name(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">if</span> (!protocol || !cm) {</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; token = tp_escape_as_identifier(token);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; filename = g_build_filename(g_get_user_cache_dir(), <span class="stringliteral">&quot;telepathy&quot;</span>, <span class="stringliteral">&quot;avatars&quot;</span>, cm, protocol, token, NULL);</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; g_free(token);</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (g_file_test(filename, G_FILE_TEST_EXISTS)) {</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; pixbuf = gdk_pixbuf_new_from_file(filename, NULL);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">if</span> (pixbuf) {</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; image = gtk_image_new_from_pixbuf(pixbuf);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; gtk_widget_show(image);</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; g_object_unref(pixbuf);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gtk_message_dialog_set_image(GTK_MESSAGE_DIALOG(dialog), image);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; }</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; g_free(filename);</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;</div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b"> 268</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">remmina_tp_channel_handler_channel_ready</a>(TpChannel *<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, <span class="keyword">const</span> GError *channel_error, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; TpHandle handle;</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; TpContactFeature features[] =</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; { TP_CONTACT_FEATURE_ALIAS, TP_CONTACT_FEATURE_AVATAR_TOKEN };</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordflow">if</span> (channel_error != NULL) {</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s\n&quot;</span>, __func__, channel_error-&gt;message);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; <span class="keywordflow">if</span> (tp_cli_channel_connect_to_closed(channel, <a class="code" href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">remmina_tp_channel_handler_channel_closed</a>, chandler, NULL, NULL, &amp;error)</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; == NULL) {</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; g_print(<span class="stringliteral">&quot;tp_cli_channel_connect_to_closed: %s\n&quot;</span>, channel_error-&gt;message);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; }</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s\n&quot;</span>, __func__, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; handle = tp_channel_get_handle(channel, NULL);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; tp_connection_get_contacts_by_handle(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>, 1, &amp;handle, G_N_ELEMENTS(features), features,</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">remmina_tp_channel_handler_get_contacts</a>, chandler, NULL, NULL);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;}</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e"> 296</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">remmina_tp_channel_handler_connection_ready</a>(TpConnection *<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>, <span class="keyword">const</span> GError *connection_error,</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">if</span> (connection_error != NULL) {</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; g_print(<span class="stringliteral">&quot;%s: %s\n&quot;</span>, __func__, connection_error-&gt;message);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; }</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a> = tp_channel_new_from_properties(connection, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a>,</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; &amp;error);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a> == NULL) {</div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; g_print(<span class="stringliteral">&quot;tp_channel_new_from_properties: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; }</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; tp_channel_call_when_ready(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">channel</a>, <a class="code" href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">remmina_tp_channel_handler_channel_ready</a>, chandler);</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"><a class="line" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537"> 319</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">remmina_tp_channel_handler_account_ready</a>(GObject *<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>, GAsyncResult *res, gpointer user_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler = (<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>*)user_data;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; GError *error = NULL;</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; <span class="keywordflow">if</span> (!tp_account_prepare_finish(TP_ACCOUNT(account), res, &amp;error)) {</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; g_print(<span class="stringliteral">&quot;tp_account_prepare_finish: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a> = tp_connection_new(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>, NULL, chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a>, &amp;error);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a> == NULL) {</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; g_print(<span class="stringliteral">&quot;tp_connection_new: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a>(chandler);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; }</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; tp_connection_call_when_ready(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">connection</a>, <a class="code" href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">remmina_tp_channel_handler_connection_ready</a>, chandler);</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;</div><div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c"> 340</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">remmina_tp_channel_handler_new</a>(<span class="keyword">const</span> gchar *account_path, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a>, <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a>,</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; GHashTable *<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a>, DBusGMethodInvocation *<a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; TpDBusDaemon *<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; TpAccount *<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a> *chandler;</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; bus = tp_dbus_daemon_dup(&amp;error);</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keywordflow">if</span> (bus == NULL) {</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; g_print(<span class="stringliteral">&quot;tp_dbus_daemon_dup: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">return</span>;</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; account = tp_account_new(bus, account_path, &amp;error);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">if</span> (account == NULL) {</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; g_object_unref(bus);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; g_print(<span class="stringliteral">&quot;tp_account_new: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; }</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; chandler = g_new0(<a class="code" href="struct___remmina_tp_channel_handler.html">RemminaTpChannelHandler</a>, 1);</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a> = <a class="code" href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">bus</a>;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a> = <a class="code" href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">account</a>;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">connection_path</a> = g_strdup(connection_path);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">channel_path</a> = g_strdup(channel_path);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a> = tp_asv_new(NULL, NULL);</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; tp_g_hash_table_update(chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">channel_properties</a>, channel_properties, (GBoxedCopyFunc)g_strdup,</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; (GBoxedCopyFunc)tp_g_value_slice_dup);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; chandler-&gt;<a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a> = <a class="code" href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">context</a>;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; tp_account_prepare_async(account, NULL, <a class="code" href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">remmina_tp_channel_handler_account_ready</a>, chandler);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;}</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div><div class="ttc" id="struct___remmina_tp_channel_handler_html_a2d9a415970ebf79ee85c0851042d2363"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a2d9a415970ebf79ee85c0851042d2363">_RemminaTpChannelHandler::disconnect_handler</a></div><div class="ttdeci">guint disconnect_handler</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00058">telepathy_channel_handler.c:58</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_af1b190ba94678441ad2d7bbed484f545"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#af1b190ba94678441ad2d7bbed484f545">_RemminaTpChannelHandler::proto_widget</a></div><div class="ttdeci">GtkWidget * proto_widget</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00057">telepathy_channel_handler.c:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4da50fa364ddf1fcf22def341f61a7cb"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4da50fa364ddf1fcf22def341f61a7cb">_RemminaPluginService::file_set_int</a></div><div class="ttdeci">void(* file_set_int)(RemminaFile *remminafile, const gchar *setting, gint value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00202">plugin.h:202</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_ad6a9e111bcd9487a6215c417ea70e052"><div class="ttname"><a href="telepathy__channel__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_telepathy_service</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00040">telepathy_plugin.c:40</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_ac1d28bb82475f3e05a0cf6e3f50769ed"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#ac1d28bb82475f3e05a0cf6e3f50769ed">_RemminaTpChannelHandler::host</a></div><div class="ttdeci">gchar * host</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00066">telepathy_channel_handler.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_ab6a0de9ed37b1554d96649c84c605107"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#ab6a0de9ed37b1554d96649c84c605107">_RemminaTpChannelHandler::port</a></div><div class="ttdeci">guint port</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00067">telepathy_channel_handler.c:67</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_ae5596ef18518b35ac215d1dafe7f5537"><div class="ttname"><a href="telepathy__channel__handler_8c.html#ae5596ef18518b35ac215d1dafe7f5537">remmina_tp_channel_handler_account_ready</a></div><div class="ttdeci">static void remmina_tp_channel_handler_account_ready(GObject *account, GAsyncResult *res, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00319">telepathy_channel_handler.c:319</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html">_RemminaTpChannelHandler</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00051">telepathy_channel_handler.c:51</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a9119f529c6953951fedc06c7983fe61e"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a9119f529c6953951fedc06c7983fe61e">remmina_tp_channel_handler_connection_ready</a></div><div class="ttdeci">static void remmina_tp_channel_handler_connection_ready(TpConnection *connection, const GError *connection_error, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00296">telepathy_channel_handler.c:296</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a6799c3ddb6d8b4c3edeed94dfccc6213"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a6799c3ddb6d8b4c3edeed94dfccc6213">_RemminaTpChannelHandler::connection_path</a></div><div class="ttdeci">gchar * connection_path</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00052">telepathy_channel_handler.c:52</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a2b30990f1b0ed8b69a6a81dd597d17bb"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a2b30990f1b0ed8b69a6a81dd597d17bb">remmina_tp_channel_handler_get_contacts</a></div><div class="ttdeci">static void remmina_tp_channel_handler_get_contacts(TpConnection *connection, guint n_contacts, TpContact *const *contacts, guint n_failed, const TpHandle *failed, const GError *error, gpointer user_data, GObject *weak_object)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00209">telepathy_channel_handler.c:209</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a33e90ca614722a63d731a76793a23334"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a33e90ca614722a63d731a76793a23334">_RemminaTpChannelHandler::alias</a></div><div class="ttdeci">gchar * alias</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00065">telepathy_channel_handler.c:65</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_abe562deaa8bf08eff69e2de915b32659"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#abe562deaa8bf08eff69e2de915b32659">_RemminaTpChannelHandler::protocol</a></div><div class="ttdeci">gchar * protocol</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00068">telepathy_channel_handler.c:68</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a2ef527ef268168e872486a8d929fa8c9"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a2ef527ef268168e872486a8d929fa8c9">remmina_tp_channel_handler_free</a></div><div class="ttdeci">static void remmina_tp_channel_handler_free(RemminaTpChannelHandler *chandler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00071">telepathy_channel_handler.c:71</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a6c4c20f7e570ff32e5ed7b6a41285e2b"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a6c4c20f7e570ff32e5ed7b6a41285e2b">remmina_tp_channel_handler_channel_ready</a></div><div class="ttdeci">static void remmina_tp_channel_handler_channel_ready(TpChannel *channel, const GError *channel_error, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00268">telepathy_channel_handler.c:268</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a8242994e64988a4a18b162b7d837f98e"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a8242994e64988a4a18b162b7d837f98e">remmina_tp_channel_handler_on_response</a></div><div class="ttdeci">static void remmina_tp_channel_handler_on_response(GtkDialog *dialog, gint response_id, RemminaTpChannelHandler *chandler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00187">telepathy_channel_handler.c:187</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a70118dbcd13ffba2652135859fd10769"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a70118dbcd13ffba2652135859fd10769">_RemminaTpChannelHandler::channel_path</a></div><div class="ttdeci">gchar * channel_path</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00053">telepathy_channel_handler.c:53</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_ad42b671632d6950a4da68fb84005efe3"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#ad42b671632d6950a4da68fb84005efe3">_RemminaTpChannelHandler::bus</a></div><div class="ttdeci">TpDBusDaemon * bus</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00060">telepathy_channel_handler.c:60</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a4ede5d9d191e9d1b906054429a36e1bb"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a4ede5d9d191e9d1b906054429a36e1bb">remmina_tp_channel_handler_accept</a></div><div class="ttdeci">static void remmina_tp_channel_handler_accept(TpChannel *channel, const GValue *address, const GError *error, gpointer user_data, GObject *weak_object)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00169">telepathy_channel_handler.c:169</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8h_html"><div class="ttname"><a href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a3eb504e13624f27e97b61042554d2ece"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a3eb504e13624f27e97b61042554d2ece">_RemminaTpChannelHandler::channel</a></div><div class="ttdeci">TpChannel * channel</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00063">telepathy_channel_handler.c:63</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_ae760fbe6b71a12b70e01b636943550d6"><div class="ttname"><a href="telepathy__channel__handler_8c.html#ae760fbe6b71a12b70e01b636943550d6">remmina_tp_channel_handler_connect</a></div><div class="ttdeci">static void remmina_tp_channel_handler_connect(RemminaTpChannelHandler *chandler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00123">telepathy_channel_handler.c:123</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_af66988bddfcdc27db187ac48ddd8cac8"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#af66988bddfcdc27db187ac48ddd8cac8">_RemminaTpChannelHandler::account</a></div><div class="ttdeci">TpAccount * account</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00061">telepathy_channel_handler.c:61</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a74693af8c8cbff4c2fb54908d3fee404"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">remmina_tp_channel_handler_new</a></div><div class="ttdeci">void remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00340">telepathy_channel_handler.c:340</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7120dead43af37f0128ef273aaa99524"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7120dead43af37f0128ef273aaa99524">_RemminaPluginService::ui_register</a></div><div class="ttdeci">void(* ui_register)(GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00218">plugin.h:218</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_ad357875c68745a28847486b622e1ce3e"><div class="ttname"><a href="telepathy__channel__handler_8c.html#ad357875c68745a28847486b622e1ce3e">remmina_tp_channel_handler_get_service</a></div><div class="ttdeci">static void remmina_tp_channel_handler_get_service(TpProxy *channel, const GValue *service, const GError *error, gpointer user_data, GObject *weak_object)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00146">telepathy_channel_handler.c:146</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a4f0768975a5f826a22e8e57c2dd76981"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a4f0768975a5f826a22e8e57c2dd76981">_RemminaTpChannelHandler::connection</a></div><div class="ttdeci">TpConnection * connection</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00062">telepathy_channel_handler.c:62</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_ac355eb5905cbdca302a7939e36bbdc6f"><div class="ttname"><a href="telepathy__channel__handler_8c.html#ac355eb5905cbdca302a7939e36bbdc6f">remmina_tp_channel_handler_channel_closed</a></div><div class="ttdeci">static void remmina_tp_channel_handler_channel_closed(TpChannel *channel, gpointer user_data, GObject *self)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00105">telepathy_channel_handler.c:105</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a8cc8cc627e22e71e257afa9c74d373ef"><div class="ttname"><a href="struct___remmina_plugin_service.html#a8cc8cc627e22e71e257afa9c74d373ef">_RemminaPluginService::open_connection</a></div><div class="ttdeci">GtkWidget *(* open_connection)(RemminaFile *remminafile, GCallback disconnect_cb, gpointer data, guint *handler)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00220">plugin.h:220</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a5609768cd191b759e2e1c3204daf0f84"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a5609768cd191b759e2e1c3204daf0f84">RemminaTpChannelHandler</a></div><div class="ttdeci">struct _RemminaTpChannelHandler RemminaTpChannelHandler</div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_ac0fc6e931ac466c6a14f1974bf353632"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#ac0fc6e931ac466c6a14f1974bf353632">_RemminaTpChannelHandler::channel_properties</a></div><div class="ttdeci">GHashTable * channel_properties</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00054">telepathy_channel_handler.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_tp_channel_handler_html_a36d9b29f36b9ea3fcc35ff2dfd8c0068"><div class="ttname"><a href="struct___remmina_tp_channel_handler.html#a36d9b29f36b9ea3fcc35ff2dfd8c0068">_RemminaTpChannelHandler::context</a></div><div class="ttdeci">DBusGMethodInvocation * context</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00055">telepathy_channel_handler.c:55</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad0c0e810cad311a80cb73746bc299895"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad0c0e810cad311a80cb73746bc299895">_RemminaPluginService::file_new</a></div><div class="ttdeci">RemminaFile *(* file_new)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00197">plugin.h:197</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_af46516580c333fdea97f6de9dc0b81f8"><div class="ttname"><a href="telepathy__channel__handler_8c.html#af46516580c333fdea97f6de9dc0b81f8">remmina_tp_channel_handler_on_disconnect</a></div><div class="ttdeci">static void remmina_tp_channel_handler_on_disconnect(GtkWidget *widget, RemminaTpChannelHandler *chandler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00114">telepathy_channel_handler.c:114</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__channel__handler_8c.html">telepathy_channel_handler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__channel__handler_8h.html b/docs/telepathy__channel__handler_8h.html
new file mode 100644
index 000000000..6147cda72
--- /dev/null
+++ b/docs/telepathy__channel__handler_8h.html
@@ -0,0 +1,160 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_channel_handler.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__channel__handler_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">telepathy_channel_handler.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="telepathy__channel__handler_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3b6b67c39029f39b2eee1cd37b29f13c"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c">remmina_tp_channel_handler_new</a> (const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context)</td></tr>
+<tr class="separator:a3b6b67c39029f39b2eee1cd37b29f13c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a3b6b67c39029f39b2eee1cd37b29f13c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b6b67c39029f39b2eee1cd37b29f13c">&#9670;&nbsp;</a></span>remmina_tp_channel_handler_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_tp_channel_handler_new </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>account_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>connection_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>channel_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GHashTable *&#160;</td>
+ <td class="paramname"><em>channel_properties</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">DBusGMethodInvocation *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__channel__handler_8c_source.html#l00340">340</a> of file <a class="el" href="telepathy__channel__handler_8c_source.html">telepathy_channel_handler.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__channel__handler_8h.js b/docs/telepathy__channel__handler_8h.js
new file mode 100644
index 000000000..64e9f2aba
--- /dev/null
+++ b/docs/telepathy__channel__handler_8h.js
@@ -0,0 +1,4 @@
+var telepathy__channel__handler_8h =
+[
+ [ "remmina_tp_channel_handler_new", "telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c", null ]
+]; \ No newline at end of file
diff --git a/docs/telepathy__channel__handler_8h_source.html b/docs/telepathy__channel__handler_8h_source.html
new file mode 100644
index 000000000..cd84a29f9
--- /dev/null
+++ b/docs/telepathy__channel__handler_8h_source.html
@@ -0,0 +1,102 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_channel_handler.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__channel__handler_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy_channel_handler.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="telepathy__channel__handler_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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="keywordtype">void</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c">remmina_tp_channel_handler_new</a>(<span class="keyword">const</span> gchar *account_path, <span class="keyword">const</span> gchar *connection_path, <span class="keyword">const</span> gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;G_END_DECLS</div><div class="ttc" id="telepathy__channel__handler_8h_html_a3b6b67c39029f39b2eee1cd37b29f13c"><div class="ttname"><a href="telepathy__channel__handler_8h.html#a3b6b67c39029f39b2eee1cd37b29f13c">remmina_tp_channel_handler_new</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00340">telepathy_channel_handler.c:340</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__handler_8c.html b/docs/telepathy__handler_8c.html
new file mode 100644
index 000000000..1eac917d1
--- /dev/null
+++ b/docs/telepathy__handler_8c.html
@@ -0,0 +1,403 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_handler.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__handler_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">telepathy_handler.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="telepathy__handler_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8cfb173567d432b97cb622475009abf4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a> (gpointer g_iface, gpointer iface_data)</td></tr>
+<tr class="separator:a8cfb173567d432b97cb622475009abf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6697621c25bec4b85a7e4c8691a72ef8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8">G_DEFINE_TYPE_WITH_CODE</a> (<a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>, <a class="el" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a>, G_TYPE_OBJECT, G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT, NULL);G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT_HANDLER, <a class="el" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a>);)</td></tr>
+<tr class="separator:a6697621c25bec4b85a7e4c8691a72ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a619278e5d5280fb57065bf11014e81bc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc">remmina_tp_handler_class_init</a> (<a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a> *klass)</td></tr>
+<tr class="separator:a619278e5d5280fb57065bf11014e81bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74b0c331f63ae06d690d26a9ab6aa67c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c">remmina_tp_handler_init</a> (<a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *handler)</td></tr>
+<tr class="separator:a74b0c331f63ae06d690d26a9ab6aa67c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a06517aa54c7e917f0358a66565f0013a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a">remmina_tp_handler_handle_channels</a> (TpSvcClientHandler *handler, const char *account_path, const char *connection_path, const GPtrArray *channels, const GPtrArray *requests_satisfied, guint64 user_action_time, GHashTable *handler_info, DBusGMethodInvocation *context)</td></tr>
+<tr class="separator:a06517aa54c7e917f0358a66565f0013a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae71fa1e8591ba79daedb9ad8bc5714c9"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">remmina_tp_handler_register</a> (<a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *handler)</td></tr>
+<tr class="separator:ae71fa1e8591ba79daedb9ad8bc5714c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a0d7f717ce6b2d808b18d5da290f3d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a> (void)</td></tr>
+<tr class="separator:a9a0d7f717ce6b2d808b18d5da290f3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ad6a9e111bcd9487a6215c417ea70e052"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a></td></tr>
+<tr class="separator:ad6a9e111bcd9487a6215c417ea70e052"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a6697621c25bec4b85a7e4c8691a72ef8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6697621c25bec4b85a7e4c8691a72ef8">&#9670;&nbsp;</a></span>G_DEFINE_TYPE_WITH_CODE()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_DEFINE_TYPE_WITH_CODE </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a>&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">G_TYPE_OBJECT&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT, NULL);G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT_HANDLER, <a class="el" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a>);&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a619278e5d5280fb57065bf11014e81bc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a619278e5d5280fb57065bf11014e81bc">&#9670;&nbsp;</a></span>remmina_tp_handler_class_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_handler_class_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a> *&#160;</td>
+ <td class="paramname"><em>klass</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00057">57</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a06517aa54c7e917f0358a66565f0013a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a06517aa54c7e917f0358a66565f0013a">&#9670;&nbsp;</a></span>remmina_tp_handler_handle_channels()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_handler_handle_channels </td>
+ <td>(</td>
+ <td class="paramtype">TpSvcClientHandler *&#160;</td>
+ <td class="paramname"><em>handler</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>account_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>connection_path</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GPtrArray *&#160;</td>
+ <td class="paramname"><em>channels</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const GPtrArray *&#160;</td>
+ <td class="paramname"><em>requests_satisfied</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint64&#160;</td>
+ <td class="paramname"><em>user_action_time</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GHashTable *&#160;</td>
+ <td class="paramname"><em>handler_info</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">DBusGMethodInvocation *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00067">67</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a8cfb173567d432b97cb622475009abf4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8cfb173567d432b97cb622475009abf4">&#9670;&nbsp;</a></span>remmina_tp_handler_iface_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_handler_iface_init </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>g_iface</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>iface_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00083">83</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a74b0c331f63ae06d690d26a9ab6aa67c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74b0c331f63ae06d690d26a9ab6aa67c">&#9670;&nbsp;</a></span>remmina_tp_handler_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_tp_handler_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *&#160;</td>
+ <td class="paramname"><em>handler</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00062">62</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="a9a0d7f717ce6b2d808b18d5da290f3d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a0d7f717ce6b2d808b18d5da290f3d6">&#9670;&nbsp;</a></span>remmina_tp_handler_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>* remmina_tp_handler_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00119">119</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<a id="ae71fa1e8591ba79daedb9ad8bc5714c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae71fa1e8591ba79daedb9ad8bc5714c9">&#9670;&nbsp;</a></span>remmina_tp_handler_register()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_tp_handler_register </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *&#160;</td>
+ <td class="paramname"><em>handler</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00093">93</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="ad6a9e111bcd9487a6215c417ea70e052"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6a9e111bcd9487a6215c417ea70e052">&#9670;&nbsp;</a></span>remmina_plugin_telepathy_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_telepathy_service</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00040">40</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__handler_8c.html">telepathy_handler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__handler_8c.js b/docs/telepathy__handler_8c.js
new file mode 100644
index 000000000..24b7e4155
--- /dev/null
+++ b/docs/telepathy__handler_8c.js
@@ -0,0 +1,11 @@
+var telepathy__handler_8c =
+[
+ [ "G_DEFINE_TYPE_WITH_CODE", "telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8", null ],
+ [ "remmina_tp_handler_class_init", "telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc", null ],
+ [ "remmina_tp_handler_handle_channels", "telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a", null ],
+ [ "remmina_tp_handler_iface_init", "telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4", null ],
+ [ "remmina_tp_handler_init", "telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c", null ],
+ [ "remmina_tp_handler_new", "telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6", null ],
+ [ "remmina_tp_handler_register", "telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9", null ],
+ [ "remmina_plugin_telepathy_service", "telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052", null ]
+]; \ No newline at end of file
diff --git a/docs/telepathy__handler_8c_source.html b/docs/telepathy__handler_8c_source.html
new file mode 100644
index 000000000..b7cb38a1e
--- /dev/null
+++ b/docs/telepathy__handler_8c_source.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_handler.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__handler_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy_handler.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="telepathy__handler_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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/dbus.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/defs.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;telepathy-glib/svc-client.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="telepathy__channel__handler_8h.html">telepathy_channel_handler.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="telepathy__handler_8h.html">telepathy_handler.h</a>&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">extern</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_TP_BUS_NAME TP_CLIENT_BUS_NAME_BASE &quot;Remmina&quot;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define REMMINA_TP_OBJECT_PATH TP_CLIENT_OBJECT_PATH_BASE &quot;Remmina&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a>(gpointer g_iface, gpointer iface_data);</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8">G_DEFINE_TYPE_WITH_CODE</a>(<a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a>, <a class="code" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a>, G_TYPE_OBJECT,</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT, NULL);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; G_IMPLEMENT_INTERFACE( TP_TYPE_SVC_CLIENT_HANDLER, <a class="code" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a>);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; );</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc"> 57</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc">remmina_tp_handler_class_init</a>(<a class="code" href="struct___remmina_tp_handler_class.html">RemminaTpHandlerClass</a> *klass)</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; TRACE_CALL(__func__);</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;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c"> 62</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c">remmina_tp_handler_init</a>(<a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a> *handler)</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</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="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a"> 67</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a">remmina_tp_handler_handle_channels</a>(TpSvcClientHandler *handler, <span class="keyword">const</span> <span class="keywordtype">char</span> *account_path,</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *connection_path, <span class="keyword">const</span> GPtrArray *channels, <span class="keyword">const</span> GPtrArray *requests_satisfied,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; guint64 user_action_time, GHashTable *handler_info, DBusGMethodInvocation *context)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; gint i;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; GArray *array;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; channels-&gt;len; i++) {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; array = g_ptr_array_index(channels, i);</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">remmina_tp_channel_handler_new</a>(account_path, connection_path,</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; (<span class="keyword">const</span> gchar*)g_value_get_boxed(&amp;g_array_index(array, GValue, 0)),</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; (GHashTable*)g_value_get_boxed(&amp;g_array_index(array, GValue, 1)), context);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;}</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4"> 83</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a>(gpointer g_iface, gpointer iface_data)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; TpSvcClientHandlerClass *klass = (TpSvcClientHandlerClass*)g_iface;</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;<span class="preprocessor">#define IMPLEMENT(x) tp_svc_client_handler_implement_ ## x(klass, remmina_tp_handler_ ## x)</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; IMPLEMENT(handle_channels);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#undef IMPLEMENT</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;}</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"><a class="line" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9"> 93</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">remmina_tp_handler_register</a>(<a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a> *handler)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; TpDBusDaemon *bus;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; GError *error = 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; bus = tp_dbus_daemon_dup(&amp;error);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (bus == NULL) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; g_print(<span class="stringliteral">&quot;tp_dbus_daemon_dup: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">return</span> FALSE;</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="keywordflow">if</span> (!tp_dbus_daemon_request_name(bus, REMMINA_TP_BUS_NAME, FALSE, &amp;error)) {</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; g_object_unref(bus);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; g_print(<span class="stringliteral">&quot;tp_dbus_daemon_request_name: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">return</span> FALSE;</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; dbus_g_connection_register_g_object(</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; tp_proxy_get_dbus_connection(TP_PROXY(bus)),</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; REMMINA_TP_OBJECT_PATH, G_OBJECT(handler));</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; g_object_unref(bus);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; g_print(<span class="stringliteral">&quot;%s: bus_name &quot;</span> REMMINA_TP_BUS_NAME</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="stringliteral">&quot; object_path &quot;</span> REMMINA_TP_OBJECT_PATH <span class="stringliteral">&quot;\n&quot;</span>, __func__);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a>*</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6"> 119</a></span>&#160;<a class="code" href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a>(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;{</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a> *handler;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; handler = REMMINA_TP_HANDLER(g_object_new(REMMINA_TYPE_TP_HANDLER, NULL));</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">remmina_tp_handler_register</a>(handler);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> handler;</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;</div><div class="ttc" id="telepathy__handler_8c_html_a06517aa54c7e917f0358a66565f0013a"><div class="ttname"><a href="telepathy__handler_8c.html#a06517aa54c7e917f0358a66565f0013a">remmina_tp_handler_handle_channels</a></div><div class="ttdeci">static void remmina_tp_handler_handle_channels(TpSvcClientHandler *handler, const char *account_path, const char *connection_path, const GPtrArray *channels, const GPtrArray *requests_satisfied, guint64 user_action_time, GHashTable *handler_info, DBusGMethodInvocation *context)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00067">telepathy_handler.c:67</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a619278e5d5280fb57065bf11014e81bc"><div class="ttname"><a href="telepathy__handler_8c.html#a619278e5d5280fb57065bf11014e81bc">remmina_tp_handler_class_init</a></div><div class="ttdeci">static void remmina_tp_handler_class_init(RemminaTpHandlerClass *klass)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00057">telepathy_handler.c:57</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a6697621c25bec4b85a7e4c8691a72ef8"><div class="ttname"><a href="telepathy__handler_8c.html#a6697621c25bec4b85a7e4c8691a72ef8">G_DEFINE_TYPE_WITH_CODE</a></div><div class="ttdeci">G_DEFINE_TYPE_WITH_CODE(RemminaTpHandler, remmina_tp_handler, G_TYPE_OBJECT, G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT, NULL);G_IMPLEMENT_INTERFACE(TP_TYPE_SVC_CLIENT_HANDLER, remmina_tp_handler_iface_init);)</div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a9a0d7f717ce6b2d808b18d5da290f3d6"><div class="ttname"><a href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a></div><div class="ttdeci">RemminaTpHandler * remmina_tp_handler_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00119">telepathy_handler.c:119</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_class_html"><div class="ttname"><a href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00051">telepathy_handler.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_html"><div class="ttname"><a href="struct___remmina_tp_handler.html">_RemminaTpHandler</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00047">telepathy_handler.h:47</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_a1e255408ada3d8096a2bc959a55ae5c0"><div class="ttname"><a href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a></div><div class="ttdeci">static RemminaTpHandler * remmina_tp_handler</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00042">telepathy_plugin.c:42</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_ad6a9e111bcd9487a6215c417ea70e052"><div class="ttname"><a href="telepathy__handler_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_telepathy_service</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00040">telepathy_plugin.c:40</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8h_html"><div class="ttname"><a href="telepathy__channel__handler_8h.html">telepathy_channel_handler.h</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_ae71fa1e8591ba79daedb9ad8bc5714c9"><div class="ttname"><a href="telepathy__handler_8c.html#ae71fa1e8591ba79daedb9ad8bc5714c9">remmina_tp_handler_register</a></div><div class="ttdeci">static gboolean remmina_tp_handler_register(RemminaTpHandler *handler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00093">telepathy_handler.c:93</a></div></div>
+<div class="ttc" id="telepathy__handler_8h_html"><div class="ttname"><a href="telepathy__handler_8h.html">telepathy_handler.h</a></div></div>
+<div class="ttc" id="telepathy__channel__handler_8c_html_a74693af8c8cbff4c2fb54908d3fee404"><div class="ttname"><a href="telepathy__channel__handler_8c.html#a74693af8c8cbff4c2fb54908d3fee404">remmina_tp_channel_handler_new</a></div><div class="ttdeci">void remmina_tp_channel_handler_new(const gchar *account_path, const gchar *connection_path, const gchar *channel_path, GHashTable *channel_properties, DBusGMethodInvocation *context)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__channel__handler_8c_source.html#l00340">telepathy_channel_handler.c:340</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a8cfb173567d432b97cb622475009abf4"><div class="ttname"><a href="telepathy__handler_8c.html#a8cfb173567d432b97cb622475009abf4">remmina_tp_handler_iface_init</a></div><div class="ttdeci">static void remmina_tp_handler_iface_init(gpointer g_iface, gpointer iface_data)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00083">telepathy_handler.c:83</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a74b0c331f63ae06d690d26a9ab6aa67c"><div class="ttname"><a href="telepathy__handler_8c.html#a74b0c331f63ae06d690d26a9ab6aa67c">remmina_tp_handler_init</a></div><div class="ttdeci">static void remmina_tp_handler_init(RemminaTpHandler *handler)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00062">telepathy_handler.c:62</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__handler_8c.html">telepathy_handler.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__handler_8h.html b/docs/telepathy__handler_8h.html
new file mode 100644
index 000000000..895dc9bd8
--- /dev/null
+++ b/docs/telepathy__handler_8h.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_handler.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__handler_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">telepathy_handler.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="telepathy__handler_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:abbc770ec8bf7b54b51010a5afcdfe7d0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a></td></tr>
+<tr class="separator:abbc770ec8bf7b54b51010a5afcdfe7d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0b97ca50d22ae4c7f4150f7dfaec924"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a></td></tr>
+<tr class="separator:af0b97ca50d22ae4c7f4150f7dfaec924"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9a0d7f717ce6b2d808b18d5da290f3d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a> (void)</td></tr>
+<tr class="separator:a9a0d7f717ce6b2d808b18d5da290f3d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="abbc770ec8bf7b54b51010a5afcdfe7d0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbc770ec8bf7b54b51010a5afcdfe7d0">&#9670;&nbsp;</a></span>RemminaTpHandler</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a> <a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="af0b97ca50d22ae4c7f4150f7dfaec924"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af0b97ca50d22ae4c7f4150f7dfaec924">&#9670;&nbsp;</a></span>RemminaTpHandlerClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a> <a class="el" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a9a0d7f717ce6b2d808b18d5da290f3d6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9a0d7f717ce6b2d808b18d5da290f3d6">&#9670;&nbsp;</a></span>remmina_tp_handler_new()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>* remmina_tp_handler_new </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__handler_8c_source.html#l00119">119</a> of file <a class="el" href="telepathy__handler_8c_source.html">telepathy_handler.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__handler_8h.html">telepathy_handler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__handler_8h.js b/docs/telepathy__handler_8h.js
new file mode 100644
index 000000000..88d8d02b6
--- /dev/null
+++ b/docs/telepathy__handler_8h.js
@@ -0,0 +1,8 @@
+var telepathy__handler_8h =
+[
+ [ "_RemminaTpHandler", "struct___remmina_tp_handler.html", "struct___remmina_tp_handler" ],
+ [ "_RemminaTpHandlerClass", "struct___remmina_tp_handler_class.html", "struct___remmina_tp_handler_class" ],
+ [ "RemminaTpHandler", "telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0", null ],
+ [ "RemminaTpHandlerClass", "telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924", null ],
+ [ "remmina_tp_handler_new", "telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6", null ]
+]; \ No newline at end of file
diff --git a/docs/telepathy__handler_8h_source.html b/docs/telepathy__handler_8h_source.html
new file mode 100644
index 000000000..0c4be0dcb
--- /dev/null
+++ b/docs/telepathy__handler_8h_source.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_handler.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__handler_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy_handler.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="telepathy__handler_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) 2010 Vic Lee</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Copyright (C) 2017-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</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="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</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="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#pragma once</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;G_BEGIN_DECLS</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">#define REMMINA_TYPE_TP_HANDLER (remmina_tp_handler_get_type())</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define REMMINA_TP_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), REMMINA_TYPE_TP_HANDLER, RemminaTpHandler))</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_TP_HANDLER_CLASS(obj) (G_TYPE_CHECK_CLASS_CAST((obj), REMMINA_TYPE_TP_HANDLER, RemminaTpHandlerClass))</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_IS_TP_HANDLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), REMMINA_TYPE_TP_HANDLER))</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_IS_TP_HANDLER_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((obj), REMMINA_TYPE_TP_HANDLER))</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_TP_HANDLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), REMMINA_TYPE_TP_HANDLER, RemminaTpHandlerClass))</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="struct___remmina_tp_handler.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_tp_handler.html">_RemminaTpHandler</a> {</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510"> 48</a></span>&#160; GObject <a class="code" href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510">parent</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;} <a class="code" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_tp_handler_class.html"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a> {</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f"> 52</a></span>&#160; GObjectClass <a class="code" href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f">parent_class</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a> *<a class="code" href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;G_END_DECLS</div><div class="ttc" id="telepathy__handler_8h_html_abbc770ec8bf7b54b51010a5afcdfe7d0"><div class="ttname"><a href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a></div><div class="ttdeci">struct _RemminaTpHandler RemminaTpHandler</div></div>
+<div class="ttc" id="telepathy__handler_8h_html_a9a0d7f717ce6b2d808b18d5da290f3d6"><div class="ttname"><a href="telepathy__handler_8h.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a></div><div class="ttdeci">RemminaTpHandler * remmina_tp_handler_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00119">telepathy_handler.c:119</a></div></div>
+<div class="ttc" id="telepathy__handler_8h_html_af0b97ca50d22ae4c7f4150f7dfaec924"><div class="ttname"><a href="telepathy__handler_8h.html#af0b97ca50d22ae4c7f4150f7dfaec924">RemminaTpHandlerClass</a></div><div class="ttdeci">struct _RemminaTpHandlerClass RemminaTpHandlerClass</div></div>
+<div class="ttc" id="struct___remmina_tp_handler_class_html"><div class="ttname"><a href="struct___remmina_tp_handler_class.html">_RemminaTpHandlerClass</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00051">telepathy_handler.h:51</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_html_a63cf94617150370ee1ffd62595372510"><div class="ttname"><a href="struct___remmina_tp_handler.html#a63cf94617150370ee1ffd62595372510">_RemminaTpHandler::parent</a></div><div class="ttdeci">GObject parent</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00048">telepathy_handler.h:48</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_html"><div class="ttname"><a href="struct___remmina_tp_handler.html">_RemminaTpHandler</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00047">telepathy_handler.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_class_html_a1c0861d534041d9bcf39c0621839482f"><div class="ttname"><a href="struct___remmina_tp_handler_class.html#a1c0861d534041d9bcf39c0621839482f">_RemminaTpHandlerClass::parent_class</a></div><div class="ttdeci">GObjectClass parent_class</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00052">telepathy_handler.h:52</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__handler_8h.html">telepathy_handler.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__plugin_8c.html b/docs/telepathy__plugin_8c.html
new file mode 100644
index 000000000..cbf780c80
--- /dev/null
+++ b/docs/telepathy__plugin_8c.html
@@ -0,0 +1,232 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">telepathy_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="telepathy__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abe272567d07c7d9bd59c819ab545c356"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a> (void)</td></tr>
+<tr class="separator:abe272567d07c7d9bd59c819ab545c356"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ad6a9e111bcd9487a6215c417ea70e052"><td class="memItemLeft" align="right" valign="top"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a> = NULL</td></tr>
+<tr class="separator:ad6a9e111bcd9487a6215c417ea70e052"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e255408ada3d8096a2bc959a55ae5c0"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a> = NULL</td></tr>
+<tr class="separator:a1e255408ada3d8096a2bc959a55ae5c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a509c855e1783653e907f8dfe290a5b58"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58">remmina_plugin_telepathy</a></td></tr>
+<tr class="separator:a509c855e1783653e907f8dfe290a5b58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00064">64</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="abe272567d07c7d9bd59c819ab545c356"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abe272567d07c7d9bd59c819ab545c356">&#9670;&nbsp;</a></span>remmina_plugin_telepathy_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_telepathy_entry </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00044">44</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a509c855e1783653e907f8dfe290a5b58"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a509c855e1783653e907f8dfe290a5b58">&#9670;&nbsp;</a></span>remmina_plugin_telepathy</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a3dee6a0774488524b232ab1eeeb939bb">RemminaEntryPlugin</a> remmina_plugin_telepathy</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a>, </div><div class="line"> <span class="stringliteral">&quot;telepathy&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Telepathy - Desktop Sharing&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <a class="code" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a> </div><div class="line">}</div><div class="ttc" id="telepathy__plugin_8c_html_abe272567d07c7d9bd59c819ab545c356"><div class="ttname"><a href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a></div><div class="ttdeci">void remmina_plugin_telepathy_entry(void)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00044">telepathy_plugin.c:44</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00046">plugin.h:46</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00053">53</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad6a9e111bcd9487a6215c417ea70e052"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad6a9e111bcd9487a6215c417ea70e052">&#9670;&nbsp;</a></span>remmina_plugin_telepathy_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_telepathy_service = NULL</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00040">40</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1e255408ada3d8096a2bc959a55ae5c0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1e255408ada3d8096a2bc959a55ae5c0">&#9670;&nbsp;</a></span>remmina_tp_handler</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="telepathy__handler_8h.html#abbc770ec8bf7b54b51010a5afcdfe7d0">RemminaTpHandler</a>* remmina_tp_handler = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="telepathy__plugin_8c_source.html#l00042">42</a> of file <a class="el" href="telepathy__plugin_8c_source.html">telepathy_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__plugin_8c.html">telepathy_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/telepathy__plugin_8c.js b/docs/telepathy__plugin_8c.js
new file mode 100644
index 000000000..6440cd3c9
--- /dev/null
+++ b/docs/telepathy__plugin_8c.js
@@ -0,0 +1,8 @@
+var telepathy__plugin_8c =
+[
+ [ "remmina_plugin_entry", "telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_telepathy_entry", "telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356", null ],
+ [ "remmina_plugin_telepathy", "telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58", null ],
+ [ "remmina_plugin_telepathy_service", "telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052", null ],
+ [ "remmina_tp_handler", "telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0", null ]
+]; \ No newline at end of file
diff --git a/docs/telepathy__plugin_8c_source.html b/docs/telepathy__plugin_8c_source.html
new file mode 100644
index 000000000..7240b584c
--- /dev/null
+++ b/docs/telepathy__plugin_8c_source.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: telepathy_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('telepathy__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">telepathy_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="telepathy__plugin_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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="telepathy__handler_8h.html">telepathy_handler.h</a>&quot;</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"><a class="line" href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052"> 40</a></span>&#160;<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a> = NULL;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0"> 42</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_tp_handler.html">RemminaTpHandler</a> *<a class="code" href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a> = NULL;</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"><a class="line" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356"> 44</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a>(<span class="keywordtype">void</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"> 46</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">if</span> (remmina_tp_handler == NULL) {</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; remmina_tp_handler = <a class="code" href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a>();</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; }</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* Entry plugin definition and features */</span></div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58"> 53</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_entry_plugin.html">RemminaEntryPlugin</a> <a class="code" href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58">remmina_plugin_telepathy</a> =</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;{</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="stringliteral">&quot;telepathy&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Telepathy - Desktop Sharing&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a> <span class="comment">// Plugin entry function</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 64</a></span>&#160;<a class="code" href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;{</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; remmina_plugin_telepathy_service = service;</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; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_telepathy)) {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; }</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="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="telepathy__handler_8c_html_a9a0d7f717ce6b2d808b18d5da290f3d6"><div class="ttname"><a href="telepathy__handler_8c.html#a9a0d7f717ce6b2d808b18d5da290f3d6">remmina_tp_handler_new</a></div><div class="ttdeci">RemminaTpHandler * remmina_tp_handler_new(void)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8c_source.html#l00119">telepathy_handler.c:119</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_ad6a9e111bcd9487a6215c417ea70e052"><div class="ttname"><a href="telepathy__plugin_8c.html#ad6a9e111bcd9487a6215c417ea70e052">remmina_plugin_telepathy_service</a></div><div class="ttdeci">RemminaPluginService * remmina_plugin_telepathy_service</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00040">telepathy_plugin.c:40</a></div></div>
+<div class="ttc" id="struct___remmina_entry_plugin_html"><div class="ttname"><a href="struct___remmina_entry_plugin.html">_RemminaEntryPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00084">plugin.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_tp_handler_html"><div class="ttname"><a href="struct___remmina_tp_handler.html">_RemminaTpHandler</a></div><div class="ttdef"><b>Definition:</b> <a href="telepathy__handler_8h_source.html#l00047">telepathy_handler.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_abe272567d07c7d9bd59c819ab545c356"><div class="ttname"><a href="telepathy__plugin_8c.html#abe272567d07c7d9bd59c819ab545c356">remmina_plugin_telepathy_entry</a></div><div class="ttdeci">void remmina_plugin_telepathy_entry(void)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00044">telepathy_plugin.c:44</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="telepathy__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00064">telepathy_plugin.c:64</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_a1e255408ada3d8096a2bc959a55ae5c0"><div class="ttname"><a href="telepathy__plugin_8c.html#a1e255408ada3d8096a2bc959a55ae5c0">remmina_tp_handler</a></div><div class="ttdeci">static RemminaTpHandler * remmina_tp_handler</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00042">telepathy_plugin.c:42</a></div></div>
+<div class="ttc" id="telepathy__plugin_8c_html_a509c855e1783653e907f8dfe290a5b58"><div class="ttname"><a href="telepathy__plugin_8c.html#a509c855e1783653e907f8dfe290a5b58">remmina_plugin_telepathy</a></div><div class="ttdeci">static RemminaEntryPlugin remmina_plugin_telepathy</div><div class="ttdef"><b>Definition:</b> <a href="telepathy__plugin_8c_source.html#l00053">telepathy_plugin.c:53</a></div></div>
+<div class="ttc" id="telepathy__handler_8h_html"><div class="ttname"><a href="telepathy__handler_8h.html">telepathy_handler.h</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aae2648710d57bdd48a15a95e9c4cc234e">REMMINA_PLUGIN_TYPE_ENTRY</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00046">plugin.h:46</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_96b2009824cf1ba1b83e0aec485e7d03.html">telepathy</a></li><li class="navelem"><a class="el" href="telepathy__plugin_8c.html">telepathy_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/todo.html b/docs/todo.html
new file mode 100644
index 000000000..6d72fee5a
--- /dev/null
+++ b/docs/todo.html
@@ -0,0 +1,136 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: Todo List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('todo.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Todo List </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><dl class="reflist">
+<dt><a class="anchor" id="_todo000017"></a>Global <a class="el" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a> ("Unable to connect to VNC server")</dt>
+<dd>We only store the last message at this moment. </dd>
+<dt><a class="anchor" id="_todo000001"></a>Global <a class="el" href="rcw_8c.html#acb1b2ab629603837e08f8d8de542316d">rcw_hostkey_func</a> (RemminaProtocolWidget *gp, guint keyval, gboolean release)</dt>
+<dd>Add callback for hostname transparent overlay #832 </dd>
+<dt><a class="anchor" id="_todo000003"></a>Global <a class="el" href="remmina__avahi_8h.html#a1ec851b22607dd1171ecdd5cca735b71">remmina_avahi_start</a> (RemminaAvahi *ga)</dt>
+<dd>Customize the default domain here </dd>
+<dt><a class="anchor" id="_todo000004"></a>Global <a class="el" href="remmina__exec_8h.html#a424cabdcff647797061e7482049d62a7">remmina_exec_command</a> (RemminaCommandType command, const gchar *data)</dt>
+<dd>This should be a G_OPTION_ARG_FILENAME_ARRAY (^aay) so that we can implement multi profile connection: <a href="https://gitlab.com/Remmina/Remmina/issues/915">https://gitlab.com/Remmina/Remmina/issues/915</a> </dd>
+<dt><a class="anchor" id="_todo000005"></a>Global <a class="el" href="remmina__file_8h.html#a96abbfdc183d1e82fdffd6445d611ffe">remmina_file_get_datetime</a> (RemminaFile *remminafile)</dt>
+<dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd>
+<dt><a class="anchor" id="_todo000007"></a>Global <a class="el" href="remmina__file__manager_8c.html#a4d6280ce5d9e70ceb43dd24639d843d3">remmina_file_manager_do_copy</a> (const char *src_path, const char *dst_path)</dt>
+<dd>remmina_pref_file_do_copy and remmina_file_manager_do_copy to remmina_files_copy </dd>
+<dt><a class="anchor" id="_todo000006"></a>Global <a class="el" href="remmina__file_8h.html#a3d19095f74e9b7c92d74f11bd5a39a8c">remmina_file_touch</a> (RemminaFile *remminafile)</dt>
+<dd>This should be moved to <a class="el" href="remmina__utils_8c.html">remmina_utils.c</a> </dd>
+<dt><a class="anchor" id="_todo000008"></a>Global <a class="el" href="remmina__main_8c.html#afefc1b651e1c546e949dbe6df72b0300">remmina_main_init</a> (void)</dt>
+<dd>Set entry_quick_connect_server as default search entry. Weirdly. This does not work yet. </dd>
+<dt><a class="anchor" id="_todo000002"></a>Global <a class="el" href="remmina_8c.html#aeb286fc5bd52ab5382ab8cb495dc2914">remmina_on_command_line</a> (GApplication *app, GApplicationCommandLine *cmdline)</dt>
+<dd>This should be a G_OPTION_ARG_FILENAME_ARRAY (^aay) so that we can implement multi profile connection: <a href="https://gitlab.com/Remmina/Remmina/issues/915">https://gitlab.com/Remmina/Remmina/issues/915</a> </dd>
+<dt><a class="anchor" id="_todo000012"></a>Global <a class="el" href="remmina__ssh__plugin_8c.html#ac5670df701b44384b5acd61aeac016dc">remmina_plugin_ssh_call_feature</a> (RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</dt>
+<dd>start the direct tunnel here </dd>
+<dt><a class="anchor" id="_todo000011"></a>Global <a class="el" href="remmina__ssh__plugin_8h.html#a3290489a1ff9e51fbc013424fbfc8505">remmina_plugin_ssh_vte_select_all</a> (GtkMenuItem *menuitem, gpointer vte)</dt>
+<dd>we should add the vte_terminal_unselect_all as well </dd>
+<dt><a class="anchor" id="_todo000009"></a>Global <a class="el" href="remmina__pref_8c.html#a7829d615a6c5b8a6f6c759043fb2ac81">remmina_pref_file_do_copy</a> (const char *src_path, const char *dst_path)</dt>
+<dd>remmina_pref_file_do_copy and remmina_file_manager_do_copy to remmina_files_copy </dd>
+<dt><a class="anchor" id="_todo000014"></a>Global <a class="el" href="remmina__stats_8c.html#a1dff2b06d5acefc9bd2f25508ab45328">remmina_profiles_get_data</a> (RemminaFile *remminafile, gpointer user_data)</dt>
+<dd>Move this in a separate file. </dd>
+<dt><a class="anchor" id="_todo000016"></a>Global <a class="el" href="rdp__plugin_8c.html#a910327fd7b1f969868a746aeb5578d30">remmina_rdp_get_screenshot</a> (RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</dt>
+<dd>we should lock FreeRDP subthread to update rfi-&gt;primary_buffer, rfi-&gt;gdi and w/h, from here to memcpy, but… how ? </dd>
+<dt><a class="anchor" id="_todo000015"></a>Global <a class="el" href="rdp__plugin_8c.html#ab05af9675485e3192847e1936d131d31">remmina_rdp_set_printers</a> (void *user_data, unsigned flags, cups_dest_t *dest)</dt>
+<dd>Ask CUPS mailing list for help. </dd>
+<dt><a class="anchor" id="_todo000010"></a>Global <a class="el" href="remmina__ssh_8h.html#aad84c6609cb431d48121ae5e0902441b">remmina_ssh_auth</a> (RemminaSSH *ssh, const gchar *password, RemminaProtocolWidget *gp, RemminaFile *remminafile)</dt>
+<dd>Here we should call gint method; method = ssh_userauth_list(ssh-&gt;session, NULL); </dd>
+<dt><a class="anchor" id="_todo000013"></a>Global <a class="el" href="remmina__stats_8c.html#a43133d5e00f481d315ef0d58cb52e70a">remmina_stats_get_os_info</a> ()</dt>
+<dd>Add other means to identify a release name/description to cover as much OS as possible, like /etc/issue </dd>
+</dl>
+</div></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/travis-build_8sh.html b/docs/travis-build_8sh.html
new file mode 100644
index 000000000..f83c58531
--- /dev/null
+++ b/docs/travis-build_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: travis-build.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('travis-build_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">travis-build.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="travis-build_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="travis-build_8sh.html">travis-build.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/travis-build_8sh_source.html b/docs/travis-build_8sh_source.html
new file mode 100644
index 000000000..804471df7
--- /dev/null
+++ b/docs/travis-build_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: travis-build.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('travis-build_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">travis-build.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="travis-build_8sh.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;#!/bin/bash</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;# Remmina - The GTK+ Remote Desktop Client</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;# Copyright (C) 2017-2018 Marco Trevisan</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;#</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;# This program is free software; you can redistribute it and/or modify</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;# it under the terms of the GNU General Public License as published by</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;# the Free Software Foundation; either version 2 of the License, or</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;# (at your option) any later version.</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;#</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;# This program is distributed in the hope that it will be useful,</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;# but WITHOUT ANY WARRANTY; without even the implied warranty of</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;# GNU General Public License for more details.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;#</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;# You should have received a copy of the GNU General Public License</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;# along with this program; if not, write to the Free Software</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;# Foundation, Inc., 51 Franklin Street, Fifth Floor,</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# Boston, MA 02110-1301, USA.</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;#</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;# In addition, as a special exception, the copyright holders give</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;# permission to link the code of portions of this program with the</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;# OpenSSL library under certain conditions as described in each</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;# individual source file, and distribute linked combinations</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;# including the two.</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;# You must obey the GNU General Public License in all respects</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;# for all of the code used other than OpenSSL.# If you modify</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;# file(s) with this exception, you may extend this exception to your</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;# version of the file(s), but you are not obligated to do so.# If you</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;# do not wish to do so, delete this exception statement from your</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;# version.# If you delete this exception statement from all source</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;# files in the program, then also delete it here.</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;#</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;#</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;set -xe</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;TRAVIS_BUILD_STEP=&quot;$1&quot;</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;if [ -z &quot;$TRAVIS_BUILD_STEP&quot; ]; then</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; echo &quot;No travis build step defined&quot;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; exit 0</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;fi</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;if [ &quot;$BUILD_TYPE&quot; == &quot;deb&quot; ]; then</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; if [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;before_install&quot; ]; then</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; sudo apt-add-repository $DEB_PPA -y</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; sudo apt-get update -q</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; sudo apt-get install -y devscripts equivs</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; elif [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;install&quot; ]; then</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; sudo mk-build-deps -ir remmina</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; if [ -n &quot;$DEB_EXTRA_DEPS&quot; ]; then</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; sudo apt-get install -y $DEB_EXTRA_DEPS</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; fi</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; elif [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;script&quot; ]; then</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; git clean -f</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; mkdir $BUILD_FOLDER</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; cmake -B$BUILD_FOLDER -H. $DEB_BUILD_OPTIONS</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; make VERBOSE=1 -C $BUILD_FOLDER</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; fi</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;elif [ &quot;$BUILD_TYPE&quot; == &quot;cmake&quot; ]; then</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; echo &quot;TRAVIS_EVENT_TYPE=&quot; $TRAVIS_EVENT_TYPE</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; if [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;before_install&quot; ]; then</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; # We use our freerdp-daily PPA to get freerdp precompiled packages</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; # travis builds are for ubuntu trusty 14.04</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; sudo apt-add-repository $FREERDP_DAILY_PPA -y</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; sudo apt-get update -qq</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; sudo apt-get install -y build-essential git-core cmake \</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; libssl-dev libx11-dev libxext-dev libxinerama-dev \</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; libxcursor-dev libxdamage-dev libxv-dev libxkbfile-dev libasound2-dev libcups2-dev libxml2 libxml2-dev \</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; libxrandr-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev \</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libxi-dev libavutil-dev \</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; libavcodec-dev libxtst-dev libgtk-3-dev libgcrypt11-dev libssh-dev libpulse-dev \</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; libvte-2.90-dev libxkbfile-dev libfreerdp-dev libtelepathy-glib-dev libjpeg-dev \</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; libgnutls-dev libgnome-keyring-dev libavahi-ui-gtk3-dev libvncserver-dev \</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; libappindicator3-dev intltool libsecret-1-dev libwebkit2gtk-3.0-dev \</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; libsoup2.4-dev libjson-glib-dev \</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; libfreerdp-dev</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; elif [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;script&quot; ]; then</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; git clean -f</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; mkdir $BUILD_FOLDER</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; cmake -B$BUILD_FOLDER -H. $CMAKE_BUILD_OPTIONS</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; make VERBOSE=1 -C $BUILD_FOLDER</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; fi</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;elif [ &quot;$BUILD_TYPE&quot; == &quot;flatpak&quot; ]; then</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; echo &quot;TRAVIS_EVENT_TYPE=&quot; $TRAVIS_EVENT_TYPE</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; if [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;before_install&quot; ]; then</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; sudo service docker start || true</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; elif [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;install&quot; ]; then</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; docker build -t flatpak -f ./flatpak/Dockerfile .</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; elif [ &quot;$TRAVIS_BUILD_STEP&quot; == &quot;script&quot; ]; then</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; docker run --privileged --env=FLATPAK_ARCH=$FLATPAK_ARCH flatpak</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; fi</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;else</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; echo &#39;No $BUILD_TYPE defined&#39; &gt;&amp;2</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; exit 1</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;fi</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="travis-build_8sh.html">travis-build.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/types_8h.html b/docs/types_8h.html
new file mode 100644
index 000000000..f451e4842
--- /dev/null
+++ b/docs/types_8h.html
@@ -0,0 +1,487 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: types.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('types_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">types.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="types_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a112d7cc6c755209cabb68cf2a62ad515"><td class="memItemLeft" align="right" valign="top">typedef typedefG_BEGIN_DECLS struct <a class="el" href="struct___remmina_file.html">_RemminaFile</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a></td></tr>
+<tr class="separator:a112d7cc6c755209cabb68cf2a62ad515"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade886ceb4d246765dc78cdc7fbabeb74"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a></td></tr>
+<tr class="separator:ade886ceb4d246765dc78cdc7fbabeb74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f1322421fba36f6efb1a01e0626b2b1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a></td></tr>
+<tr class="separator:a8f1322421fba36f6efb1a01e0626b2b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8d4366a0a98ae5f9b20ead637e73ac8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">RemminaProtocolWidgetClass</a></td></tr>
+<tr class="separator:ae8d4366a0a98ae5f9b20ead637e73ac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc3247f5a12b842032241d0cdde9cf4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a></td></tr>
+<tr class="separator:a3fc3247f5a12b842032241d0cdde9cf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ace68e95e55a30fcf8b991f52332501"><td class="memItemLeft" align="right" valign="top">typedef gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a></td></tr>
+<tr class="separator:a1ace68e95e55a30fcf8b991f52332501"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afae2f546eaf9ef8a816a804e830055bf"><td class="memItemLeft" align="right" valign="top">typedef gboolean(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a>) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint remotedisplay, const gchar *server, gint port)</td></tr>
+<tr class="separator:afae2f546eaf9ef8a816a804e830055bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41c04d02e6a15ad17be8065453cc4933"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a></td></tr>
+<tr class="separator:a41c04d02e6a15ad17be8065453cc4933"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a77ae46c4fd739dcd8e819fe9cdae27c5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> { <br />
+&#160;&#160;<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>,
+<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>,
+<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>,
+<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>,
+<br />
+&#160;&#160;<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>,
+<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a>,
+<a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>
+<br />
+ }</td></tr>
+<tr class="separator:a77ae46c4fd739dcd8e819fe9cdae27c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee1a3e130e6991978acd907b52204350"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a> { <br />
+&#160;&#160;<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>,
+<br />
+&#160;&#160;<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>,
+<br />
+&#160;&#160;<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>,
+<a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a>
+<br />
+ }</td></tr>
+<tr class="separator:aee1a3e130e6991978acd907b52204350"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64c62354cc2b7baa50e1d73dcd3df9c7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a> { <br />
+&#160;&#160;<a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>,
+<a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>,
+<a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">REMMINA_PROTOCOL_SSH_SETTING_SSH</a>,
+<a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>,
+<br />
+&#160;&#160;<a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a>
+<br />
+ }</td></tr>
+<tr class="separator:a64c62354cc2b7baa50e1d73dcd3df9c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72194e64fa2cf72405bda49a9ea3e8e5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">RemminaAuthpwdType</a> { <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2">REMMINA_AUTHPWD_TYPE_PROTOCOL</a>,
+<a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d">REMMINA_AUTHPWD_TYPE_SSH_PWD</a>,
+<a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920">REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY</a>
+ }</td></tr>
+<tr class="separator:a72194e64fa2cf72405bda49a9ea3e8e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeea5ee1e675368413b6f6ab09883e7de"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a> { <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a> = 0,
+<a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> = 1,
+<a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a> = 2
+ }</td></tr>
+<tr class="separator:aeea5ee1e675368413b6f6ab09883e7de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a373ddef8221457d86c64830c26d3f78a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a> { <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a> = -1,
+<a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a> = 0,
+<a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a> = 1,
+<a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a> = 2
+ }</td></tr>
+<tr class="separator:a373ddef8221457d86c64830c26d3f78a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341a0a8b6509633809d99348cc3ba486"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a> { <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a> = 1,
+<a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a> = 2,
+<a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a> = 4,
+<a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a> = 8
+ }</td></tr>
+<tr class="separator:a341a0a8b6509633809d99348cc3ba486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a112d7cc6c755209cabb68cf2a62ad515"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a112d7cc6c755209cabb68cf2a62ad515">&#9670;&nbsp;</a></span>RemminaFile</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef typedefG_BEGIN_DECLS struct <a class="el" href="struct___remmina_file.html">_RemminaFile</a> <a class="el" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00041">41</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a8f1322421fba36f6efb1a01e0626b2b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8f1322421fba36f6efb1a01e0626b2b1">&#9670;&nbsp;</a></span>RemminaPluginScreenshotData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a> <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="ade886ceb4d246765dc78cdc7fbabeb74"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade886ceb4d246765dc78cdc7fbabeb74">&#9670;&nbsp;</a></span>RemminaProtocolFeature</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a> <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a41c04d02e6a15ad17be8065453cc4933"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a41c04d02e6a15ad17be8065453cc4933">&#9670;&nbsp;</a></span>RemminaProtocolSetting</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a> <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a3fc3247f5a12b842032241d0cdde9cf4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3fc3247f5a12b842032241d0cdde9cf4">&#9670;&nbsp;</a></span>RemminaProtocolWidget</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a> <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00074">74</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="ae8d4366a0a98ae5f9b20ead637e73ac8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8d4366a0a98ae5f9b20ead637e73ac8">&#9670;&nbsp;</a></span>RemminaProtocolWidgetClass</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a> <a class="el" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8">RemminaProtocolWidgetClass</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00073">73</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a1ace68e95e55a30fcf8b991f52332501"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1ace68e95e55a30fcf8b991f52332501">&#9670;&nbsp;</a></span>RemminaTunnelInitFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gpointer <a class="el" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00075">75</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="afae2f546eaf9ef8a816a804e830055bf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afae2f546eaf9ef8a816a804e830055bf">&#9670;&nbsp;</a></span>RemminaXPortTunnelInitFunc</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef gboolean(* RemminaXPortTunnelInitFunc) (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint remotedisplay, const gchar *server, gint port)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00076">76</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="a72194e64fa2cf72405bda49a9ea3e8e5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a72194e64fa2cf72405bda49a9ea3e8e5">&#9670;&nbsp;</a></span>RemminaAuthpwdType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">RemminaAuthpwdType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2"></a>REMMINA_AUTHPWD_TYPE_PROTOCOL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d"></a>REMMINA_AUTHPWD_TYPE_SSH_PWD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920"></a>REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00111">111</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a341a0a8b6509633809d99348cc3ba486"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a341a0a8b6509633809d99348cc3ba486">&#9670;&nbsp;</a></span>RemminaMessagePanelFlags</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"></a>REMMINA_MESSAGE_PANEL_FLAG_USERNAME&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a"></a>REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"></a>REMMINA_MESSAGE_PANEL_FLAG_DOMAIN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"></a>REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00131">131</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a77ae46c4fd739dcd8e819fe9cdae27c5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a77ae46c4fd739dcd8e819fe9cdae27c5">&#9670;&nbsp;</a></span>RemminaProtocolFeatureType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"></a>REMMINA_PROTOCOL_FEATURE_TYPE_END&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"></a>REMMINA_PROTOCOL_FEATURE_TYPE_PREF&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"></a>REMMINA_PROTOCOL_FEATURE_TYPE_TOOL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"></a>REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"></a>REMMINA_PROTOCOL_FEATURE_TYPE_SCALE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf"></a>REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"></a>REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00043">43</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="aee1a3e130e6991978acd907b52204350"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee1a3e130e6991978acd907b52204350">&#9670;&nbsp;</a></span>RemminaProtocolSettingType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"></a>REMMINA_PROTOCOL_SETTING_TYPE_END&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"></a>REMMINA_PROTOCOL_SETTING_TYPE_SERVER&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"></a>REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"></a>REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"></a>REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"></a>REMMINA_PROTOCOL_SETTING_TYPE_TEXT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"></a>REMMINA_PROTOCOL_SETTING_TYPE_SELECT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"></a>REMMINA_PROTOCOL_SETTING_TYPE_COMBO&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f"></a>REMMINA_PROTOCOL_SETTING_TYPE_CHECK&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"></a>REMMINA_PROTOCOL_SETTING_TYPE_FILE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f"></a>REMMINA_PROTOCOL_SETTING_TYPE_FOLDER&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00078">78</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a64c62354cc2b7baa50e1d73dcd3df9c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64c62354cc2b7baa50e1d73dcd3df9c7">&#9670;&nbsp;</a></span>RemminaProtocolSSHSetting</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"></a>REMMINA_PROTOCOL_SSH_SETTING_NONE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"></a>REMMINA_PROTOCOL_SSH_SETTING_TUNNEL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371"></a>REMMINA_PROTOCOL_SSH_SETTING_SSH&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"></a>REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3"></a>REMMINA_PROTOCOL_SSH_SETTING_SFTP&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00103">103</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="a373ddef8221457d86c64830c26d3f78a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a373ddef8221457d86c64830c26d3f78a">&#9670;&nbsp;</a></span>RemminaProtocolWidgetResolutionMode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724"></a>RES_INVALID&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd"></a>RES_USE_CUSTOM&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d"></a>RES_USE_CLIENT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef"></a>RES_USE_INITIAL_WINDOW_SIZE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00123">123</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+<a id="aeea5ee1e675368413b6f6ab09883e7de"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeea5ee1e675368413b6f6ab09883e7de">&#9670;&nbsp;</a></span>RemminaScaleMode</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"></a>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20"></a>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"></a>REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="types_8h_source.html#l00117">117</a> of file <a class="el" href="types_8h_source.html">types.h</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="types_8h.html">types.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/types_8h.js b/docs/types_8h.js
new file mode 100644
index 000000000..8626fd4b9
--- /dev/null
+++ b/docs/types_8h.js
@@ -0,0 +1,65 @@
+var types_8h =
+[
+ [ "_RemminaProtocolFeature", "struct___remmina_protocol_feature.html", "struct___remmina_protocol_feature" ],
+ [ "_RemminaPluginScreenshotData", "struct___remmina_plugin_screenshot_data.html", "struct___remmina_plugin_screenshot_data" ],
+ [ "_RemminaProtocolSetting", "struct___remmina_protocol_setting.html", "struct___remmina_protocol_setting" ],
+ [ "RemminaFile", "types_8h.html#a112d7cc6c755209cabb68cf2a62ad515", null ],
+ [ "RemminaPluginScreenshotData", "types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1", null ],
+ [ "RemminaProtocolFeature", "types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74", null ],
+ [ "RemminaProtocolSetting", "types_8h.html#a41c04d02e6a15ad17be8065453cc4933", null ],
+ [ "RemminaProtocolWidget", "types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4", null ],
+ [ "RemminaProtocolWidgetClass", "types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8", null ],
+ [ "RemminaTunnelInitFunc", "types_8h.html#a1ace68e95e55a30fcf8b991f52332501", null ],
+ [ "RemminaXPortTunnelInitFunc", "types_8h.html#afae2f546eaf9ef8a816a804e830055bf", null ],
+ [ "RemminaAuthpwdType", "types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5", [
+ [ "REMMINA_AUTHPWD_TYPE_PROTOCOL", "types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2", null ],
+ [ "REMMINA_AUTHPWD_TYPE_SSH_PWD", "types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d", null ],
+ [ "REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY", "types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920", null ]
+ ] ],
+ [ "RemminaMessagePanelFlags", "types_8h.html#a341a0a8b6509633809d99348cc3ba486", [
+ [ "REMMINA_MESSAGE_PANEL_FLAG_USERNAME", "types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a", null ],
+ [ "REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY", "types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a", null ],
+ [ "REMMINA_MESSAGE_PANEL_FLAG_DOMAIN", "types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c", null ],
+ [ "REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD", "types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c", null ]
+ ] ],
+ [ "RemminaProtocolFeatureType", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5", [
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_END", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_PREF", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_TOOL", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_SCALE", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf", null ],
+ [ "REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET", "types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7", null ]
+ ] ],
+ [ "RemminaProtocolSettingType", "types_8h.html#aee1a3e130e6991978acd907b52204350", [
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_END", "types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_SERVER", "types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD", "types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION", "types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP", "types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_TEXT", "types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_SELECT", "types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_COMBO", "types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_CHECK", "types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_FILE", "types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da", null ],
+ [ "REMMINA_PROTOCOL_SETTING_TYPE_FOLDER", "types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f", null ]
+ ] ],
+ [ "RemminaProtocolSSHSetting", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7", [
+ [ "REMMINA_PROTOCOL_SSH_SETTING_NONE", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093", null ],
+ [ "REMMINA_PROTOCOL_SSH_SETTING_TUNNEL", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a", null ],
+ [ "REMMINA_PROTOCOL_SSH_SETTING_SSH", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371", null ],
+ [ "REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd", null ],
+ [ "REMMINA_PROTOCOL_SSH_SETTING_SFTP", "types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3", null ]
+ ] ],
+ [ "RemminaProtocolWidgetResolutionMode", "types_8h.html#a373ddef8221457d86c64830c26d3f78a", [
+ [ "RES_INVALID", "types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724", null ],
+ [ "RES_USE_CUSTOM", "types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd", null ],
+ [ "RES_USE_CLIENT", "types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d", null ],
+ [ "RES_USE_INITIAL_WINDOW_SIZE", "types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef", null ]
+ ] ],
+ [ "RemminaScaleMode", "types_8h.html#aeea5ee1e675368413b6f6ab09883e7de", [
+ [ "REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE", "types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd", null ],
+ [ "REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED", "types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20", null ],
+ [ "REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES", "types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946", null ]
+ ] ]
+]; \ No newline at end of file
diff --git a/docs/types_8h_source.html b/docs/types_8h_source.html
new file mode 100644
index 000000000..a7819b757
--- /dev/null
+++ b/docs/types_8h_source.html
@@ -0,0 +1,173 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: types.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('types_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">types.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="types_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) 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-2020 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">#pragma once</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_file.html">_RemminaFile</a> <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"> 44</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"> 45</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"> 46</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"> 47</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>,</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"> 48</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>,</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf"> 49</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a>,</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"> 50</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_FEATURE_PREF_RADIO 1</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define REMMINA_PROTOCOL_FEATURE_PREF_CHECK 2</span></div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html"> 56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a> {</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9"> 57</a></span>&#160; <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a> <a class="code" href="struct___remmina_protocol_feature.html#a1826baafd2d7b5dc8a009ef4fcad77e9">type</a>;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20"> 58</a></span>&#160; gint <a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952"> 59</a></span>&#160; gpointer <a class="code" href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">opt1</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d"> 60</a></span>&#160; gpointer <a class="code" href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">opt2</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190"> 61</a></span>&#160; gpointer <a class="code" href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">opt3</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <a class="code" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html"> 64</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a> {</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c"> 65</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> * <a class="code" href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">buffer</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d"> 66</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">bitsPerPixel</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44"> 67</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">bytesPerPixel</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6"> 68</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">width</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e"> 69</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">height</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;} <a class="code" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</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"><a class="line" href="types_8h.html#ae8d4366a0a98ae5f9b20ead637e73ac8"> 73</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a> <a class="code" href="struct___remmina_protocol_widget_class.html">RemminaProtocolWidgetClass</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4"> 74</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a> <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501"> 75</a></span>&#160;<span class="keyword">typedef</span> gpointer <a class="code" href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf"> 76</a></span>&#160;<span class="keyword">typedef</span> gboolean (*<a class="code" href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a>) (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint remotedisplay, <span class="keyword">const</span> gchar *server, gint port);</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="types_8h.html#aee1a3e130e6991978acd907b52204350"> 78</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"> 79</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"> 81</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>,</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"> 82</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>,</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"> 83</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>,</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"> 84</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>,</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"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"> 86</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>,</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"> 87</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>,</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"> 88</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a>,</div><div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f"> 89</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>,</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"> 90</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a>,</div><div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f"> 91</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a68b440d346168aadb6fd728ea394607f">REMMINA_PROTOCOL_SETTING_TYPE_FOLDER</a></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;} <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</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_protocol_setting.html"> 94</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a> {</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9"> 95</a></span>&#160; <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a> <a class="code" href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">type</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857"> 96</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">name</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4"> 97</a></span>&#160; <span class="keyword">const</span> gchar * <a class="code" href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">label</a>;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6"> 98</a></span>&#160; gboolean <a class="code" href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">compact</a>;</div><div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0"> 99</a></span>&#160; <span class="keyword">const</span> gpointer <a class="code" href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">opt1</a>;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167"> 100</a></span>&#160; <span class="keyword">const</span> gpointer <a class="code" href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">opt2</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;} <a class="code" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7"> 103</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"> 104</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>,</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"> 105</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>,</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371"> 106</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">REMMINA_PROTOCOL_SSH_SETTING_SSH</a>,</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"> 107</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>,</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3"> 108</a></span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;} <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a>;</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="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5"> 111</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2"> 112</a></span>&#160; <a class="code" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2">REMMINA_AUTHPWD_TYPE_PROTOCOL</a>,</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d"> 113</a></span>&#160; <a class="code" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d">REMMINA_AUTHPWD_TYPE_SSH_PWD</a>,</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920"> 114</a></span>&#160; <a class="code" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920">REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY</a></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;} <a class="code" href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">RemminaAuthpwdType</a>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de"> 117</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"> 118</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a> = 0,</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20"> 119</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a> = 1,</div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"> 120</a></span>&#160; <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a> = 2</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;} <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a>;</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="types_8h.html#a373ddef8221457d86c64830c26d3f78a"> 123</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724"> 124</a></span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a> = -1,</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd"> 125</a></span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a> = 0,</div><div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d"> 126</a></span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a> = 1,</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef"> 127</a></span>&#160; <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a> = 2</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;} <a class="code" href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a>;</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;<span class="comment">/* pflags field for remmina_protocol_widget_panel_auth() */</span></div><div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486"> 131</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"> 132</a></span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a> = 1, <span class="comment">/* require username in auth panel */</span></div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a"> 133</a></span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a> = 2, <span class="comment">/* Username, if required, is readonly */</span></div><div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"> 134</a></span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a> = 4, <span class="comment">/* require domain in auth panel */</span></div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"> 135</a></span>&#160; <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a> = 8 <span class="comment">/* require savepassword switch in auth panel */</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;} <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;G_END_DECLS</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a23e854b5f2eb0c8d3efa54cac0acb6cf">REMMINA_PROTOCOL_FEATURE_TYPE_DYNRESUPDATE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00049">types.h:49</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#l00089">types.h:89</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#l00091">types.h:91</a></div></div>
+<div class="ttc" id="types_8h_html_a72194e64fa2cf72405bda49a9ea3e8e5"><div class="ttname"><a href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5">RemminaAuthpwdType</a></div><div class="ttdeci">RemminaAuthpwdType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00111">types.h:111</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dea4d22c6eed721b661d618098159a20946">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00120">types.h:120</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a1f63bf86b8f6da71137cf0a28ebf024a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME_READONLY</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00133">types.h:133</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_ade886ceb4d246765dc78cdc7fbabeb74"><div class="ttname"><a href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a></div><div class="ttdeci">struct _RemminaProtocolFeature RemminaProtocolFeature</div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="types_8h_html_a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2"><div class="ttname"><a href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5aa2fd1ccd641986130bf9333b760d7ff2">REMMINA_AUTHPWD_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00112">types.h:112</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae2237632b23d3c90a842bc5bc8302ec5">REMMINA_PROTOCOL_SETTING_TYPE_COMBO</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00088">types.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ac4d859a06af12d7ce5b20cc8ff815167"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ac4d859a06af12d7ce5b20cc8ff815167">_RemminaProtocolSetting::opt2</a></div><div class="ttdeci">const gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00100">types.h:100</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350">RemminaProtocolSettingType</a></div><div class="ttdeci">RemminaProtocolSettingType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00078">types.h:78</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_protocol_setting_html_ab434990a6fe70b7e8a4a8b11129527a6"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ab434990a6fe70b7e8a4a8b11129527a6">_RemminaProtocolSetting::compact</a></div><div class="ttdeci">gboolean compact</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00098">types.h:98</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78a"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78a">RemminaProtocolWidgetResolutionMode</a></div><div class="ttdeci">RemminaProtocolWidgetResolutionMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00123">types.h:123</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a9274a9d62e527ca25683af512505242e"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a9274a9d62e527ca25683af512505242e">_RemminaPluginScreenshotData::height</a></div><div class="ttdeci">int height</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00069">types.h:69</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aaf5ff7e2cd480eb2acc5e1520e409202d">RES_USE_CLIENT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00126">types.h:126</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7deac7786e2cea7d9bf95026069ed774ea20">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_SCALED</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00119">types.h:119</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a113aff9a0339ebe347ddf738d8c1f371">REMMINA_PROTOCOL_SSH_SETTING_SSH</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00106">types.h:106</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486">RemminaMessagePanelFlags</a></div><div class="ttdeci">RemminaMessagePanelFlags</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00131">types.h:131</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_aa0f78eb9b36ba248c2e368684903ae44"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#aa0f78eb9b36ba248c2e368684903ae44">_RemminaPluginScreenshotData::bytesPerPixel</a></div><div class="ttdeci">int bytesPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00067">types.h:67</a></div></div>
+<div class="ttc" id="types_8h_html_a8f1322421fba36f6efb1a01e0626b2b1"><div class="ttname"><a href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a></div><div class="ttdeci">struct _RemminaPluginScreenshotData RemminaPluginScreenshotData</div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_af533231bb1281d09d98a14d3d218fba0"><div class="ttname"><a href="struct___remmina_protocol_setting.html#af533231bb1281d09d98a14d3d218fba0">_RemminaProtocolSetting::opt1</a></div><div class="ttdeci">const gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00099">types.h:99</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_ab5d115d8f9fc675f2419d38cdd424ce6"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#ab5d115d8f9fc675f2419d38cdd424ce6">_RemminaPluginScreenshotData::width</a></div><div class="ttdeci">int width</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00068">types.h:68</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#l00057">types.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_ab3c15094a16418c5951c5382c8a44190"><div class="ttname"><a href="struct___remmina_protocol_feature.html#ab3c15094a16418c5951c5382c8a44190">_RemminaProtocolFeature::opt3</a></div><div class="ttdeci">gpointer opt3</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00061">types.h:61</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa60de6896fa451ca072d23fab21dbfeef">RES_USE_INITIAL_WINDOW_SIZE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00127">types.h:127</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7">RemminaProtocolSSHSetting</a></div><div class="ttdeci">RemminaProtocolSSHSetting</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00103">types.h:103</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="types_8h_html_a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d"><div class="ttname"><a href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a0f06852a7bb0c4d6611a5eb259b1130d">REMMINA_AUTHPWD_TYPE_SSH_PWD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00113">types.h:113</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_acc352444c31929a1ef7aee2a0e37827d"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#acc352444c31929a1ef7aee2a0e37827d">_RemminaPluginScreenshotData::bitsPerPixel</a></div><div class="ttdeci">int bitsPerPixel</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00066">types.h:66</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7aef0536e2d0186b8cb8d8ba7a4a1a51c3">REMMINA_PROTOCOL_SSH_SETTING_SFTP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00108">types.h:108</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aafe10effd553a16b9bac60b6d9b64c2cd">RES_USE_CUSTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00125">types.h:125</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5">RemminaProtocolFeatureType</a></div><div class="ttdeci">RemminaProtocolFeatureType</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00043">types.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a6274d44b592a54162ff583135e55ffc9"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a6274d44b592a54162ff583135e55ffc9">_RemminaProtocolSetting::type</a></div><div class="ttdeci">RemminaProtocolSettingType type</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00095">types.h:95</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_class_html"><div class="ttname"><a href="struct___remmina_protocol_widget_class.html">_RemminaProtocolWidgetClass</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00063">remmina_protocol_widget.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00118">types.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aa7ac5ec9d95867734619583a2049e952"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aa7ac5ec9d95867734619583a2049e952">_RemminaProtocolFeature::opt1</a></div><div class="ttdeci">gpointer opt1</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00059">types.h:59</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7de"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7de">RemminaScaleMode</a></div><div class="ttdeci">RemminaScaleMode</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00117">types.h:117</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a46ac68f2dea71082d090ae63c5c4505c">REMMINA_MESSAGE_PANEL_FLAG_DOMAIN</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00134">types.h:134</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_aab44850c13a7e5e20a02603ae173d53d"><div class="ttname"><a href="struct___remmina_protocol_feature.html#aab44850c13a7e5e20a02603ae173d53d">_RemminaProtocolFeature::opt2</a></div><div class="ttdeci">gpointer opt2</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00060">types.h:60</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00084">types.h:84</a></div></div>
+<div class="ttc" id="types_8h_html_a1ace68e95e55a30fcf8b991f52332501"><div class="ttname"><a href="types_8h.html#a1ace68e95e55a30fcf8b991f52332501">RemminaTunnelInitFunc</a></div><div class="ttdeci">gpointer RemminaTunnelInitFunc</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00075">types.h:75</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a31ee66fffaa245ae411aba0c296ad9da">REMMINA_PROTOCOL_SETTING_TYPE_FILE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00090">types.h:90</a></div></div>
+<div class="ttc" id="types_8h_html_a41c04d02e6a15ad17be8065453cc4933"><div class="ttname"><a href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a></div><div class="ttdeci">struct _RemminaProtocolSetting RemminaProtocolSetting</div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00107">types.h:107</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="types_8h_html_a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724"><div class="ttname"><a href="types_8h.html#a373ddef8221457d86c64830c26d3f78aa415945752acf7689df7cb602ae4e1724">RES_INVALID</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00124">types.h:124</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_file_html"><div class="ttname"><a href="struct___remmina_file.html">_RemminaFile</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__file_8h_source.html#l00043">remmina_file.h:43</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html_a757f692624e3e110eaa5bf0c05ac2a6c"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html#a757f692624e3e110eaa5bf0c05ac2a6c">_RemminaPluginScreenshotData::buffer</a></div><div class="ttdeci">unsigned char * buffer</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00065">types.h:65</a></div></div>
+<div class="ttc" id="types_8h_html_a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920"><div class="ttname"><a href="types_8h.html#a72194e64fa2cf72405bda49a9ea3e8e5a28a07360db0262bf2b4777bc5a36c920">REMMINA_AUTHPWD_TYPE_SSH_PRIVKEY</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00114">types.h:114</a></div></div>
+<div class="ttc" id="types_8h_html_afae2f546eaf9ef8a816a804e830055bf"><div class="ttname"><a href="types_8h.html#afae2f546eaf9ef8a816a804e830055bf">RemminaXPortTunnelInitFunc</a></div><div class="ttdeci">gboolean(* RemminaXPortTunnelInitFunc)(RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00076">types.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_a7a5b063deb126422c461203c074a3dc4"><div class="ttname"><a href="struct___remmina_protocol_setting.html#a7a5b063deb126422c461203c074a3dc4">_RemminaProtocolSetting::label</a></div><div class="ttdeci">const gchar * label</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00097">types.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html_ac4cd339607204c5f478727e2a0c04857"><div class="ttname"><a href="struct___remmina_protocol_setting.html#ac4cd339607204c5f478727e2a0c04857">_RemminaProtocolSetting::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00096">types.h:96</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_b0856f6b0d80ccb263b2f415c91f9e17.html">include</a></li><li class="navelem"><a class="el" href="dir_a8375b506f1bd5852742b6f9cedbe093.html">remmina</a></li><li class="navelem"><a class="el" href="types_8h.html">types.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/ubuntu-build_8sh.html b/docs/ubuntu-build_8sh.html
new file mode 100644
index 000000000..41b835811
--- /dev/null
+++ b/docs/ubuntu-build_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: ubuntu-build.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('ubuntu-build_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">ubuntu-build.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="ubuntu-build_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="ubuntu-build_8sh.html">ubuntu-build.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/ubuntu-build_8sh_source.html b/docs/ubuntu-build_8sh_source.html
new file mode 100644
index 000000000..97512a5a0
--- /dev/null
+++ b/docs/ubuntu-build_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: ubuntu-build.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('ubuntu-build_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">ubuntu-build.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="ubuntu-build_8sh.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;#!/bin/bash</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;# set -x</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;set -e</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;usage () {</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160; echo &quot;$0 [&lt;-s|--sersfx&gt; &lt;numerical_series_suffix&gt;] [-d|--dev]&quot;</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160; exit $1</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;}</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;#</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;# MAIN</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;#</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;BDIR=build-ubuntu</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;SER_SFX=1</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;# a development release build automatically the new &#39;changelog&#39; chapter</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;# an official release use &#39;changelog&#39; as is except for change serie name</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;IS_DEV_RELEASE=n</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;while [ &quot;$1&quot; != &quot;&quot; ]; do</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; case $1 in</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; -d|--dev)</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; IS_DEV_RELEASE=y</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; ;;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; -s|--sersfx)</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; SER_SFX=$2</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; shift</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; ;;</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; *)</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; usage 1</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; ;;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; esac</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; shift</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;done</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;if [ &quot;$DEBEMAIL&quot; == &quot;&quot; ] || [ &quot;$DEBFULLNAME&quot; == &quot;&quot; ]; then</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; echo &quot;DEBEMAIL and DEBFULLNAME variables must be set before run this script&quot;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; exit 1</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;fi</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;if ! gpg --list-secret-keys &quot;${DEBFULLNAME} &lt;${DEBEMAIL}&gt;&quot; &gt;/dev/null 2&gt;&amp;1 ; then</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; echo &quot;gpg secret key not found for &#39;${DEBFULLNAME} &lt;${DEBEMAIL}&gt;&#39; address&quot;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; exit 2</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;fi</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;PKG_NAME=remmina</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;PKG_DATE=&quot;$(date -R)&quot;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;VER_MAJ=&quot;$(grep &#39;set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_MAJOR&#39; CMakeLists.txt \</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; | sed &#39;s/set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_[^&quot;]*&quot;//g;s/&quot;.*//g&#39;)&quot;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;VER_MIN=&quot;$(grep &#39;set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_MINOR&#39; CMakeLists.txt \</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; | sed &#39;s/set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_[^&quot;]*&quot;//g;s/&quot;.*//g&#39;)&quot;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;VER_REV=&quot;$(grep &#39;set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_REVISION&#39; CMakeLists.txt \</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; | sed &#39;s/set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_[^&quot;]*&quot;//g;s/&quot;.*//g&#39;)&quot;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;VER_SFX=&quot;$(grep &#39;set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_SUFFIX&#39; CMakeLists.txt \</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; | sed &#39;s/set(&#39;&quot;${PKG_NAME^^}&quot;&#39;_VERSION_[^&quot;]*&quot;//g;s/&quot;.*//g&#39;)&quot;</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;VER_BRANCH=&quot;$(git branch | grep &#39;^\*&#39; | cut -c 3-)&quot;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;test &quot;$VER_BRANCH&quot; &amp;&amp; VER_BRANCH=&quot;+${VER_BRANCH}&quot;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;VER_DATE=&quot;$(date +%Y%m%d%H%M)&quot;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;PKG_VER=&quot;${VER_MAJ}.${VER_MIN}.${VER_REV}~${VER_SFX}${VER_BRANCH}+${VER_DATE}&quot;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;PKG_DIR=&quot;${PKG_NAME}_${PKG_VER}&quot;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;echo $PKG_VER</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;mkdir -p ${BDIR}</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;rm -rf &quot;${BDIR:?}/&quot;*</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;# exports repo without .git folder and other operative system clients</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;git archive --format tar --prefix &quot;${BDIR}/${PKG_DIR}/&quot; HEAD | \</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; tar xv</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;# Override original ChangeLog with git logs (maybe necessary for debian policy ?</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;git --no-pager log --format=&quot;%ai %aN (%h) %n%n%x09*%w(68,0,10) %s%d%n&quot; &gt; &quot;${BDIR}/${PKG_DIR}/ChangeLog&quot;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;# NOTE: artificially files date reconstruction is skipped</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;mv ${BDIR}/${PKG_DIR}/debian/changelog ${BDIR}/changelog.orig</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;cd ${BDIR}/${PKG_DIR}/</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;tar zcvf &quot;../${PKG_NAME}_${PKG_VER}.orig.tar.gz&quot; .</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;for serie in yakkety wily xenial trusty; do</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; if [ &quot;$IS_DEV_RELEASE&quot; = &quot;y&quot; ]; then</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; cat &lt;&lt;EOF &gt;debian/changelog</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;${PKG_NAME} (${PKG_VER}-1${serie}${SER_SFX}) ${serie}; urgency=medium</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; * New upstream release.</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; -- ${DEBFULLNAME} &lt;${DEBEMAIL}&gt; ${PKG_DATE}</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;EOF</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; else</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; rm -f debian/changelog</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; touch debian/changelog</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; fi</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; cat ../changelog.orig &gt;&gt;debian/changelog</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; debuild -eUBUNTU_SERIE=&quot;$serie&quot; -S -sa # add &#39; -us -uc&#39; flags to avoid signing</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; rm -rf -- *</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; tar zxf &quot;../${PKG_NAME}_${PKG_VER}.orig.tar.gz&quot;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;done</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;cd -</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;mv ${BDIR}/changelog.orig ${BDIR}/${PKG_DIR}/debian/changelog</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;echo &quot;now cd in ${BDIR} directory and run:&quot;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;echo &quot;dput &lt;your-ppa-address&gt; *.changes&quot;</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;exit 0</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="ubuntu-build_8sh.html">ubuntu-build.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/update-translations_8sh.html b/docs/update-translations_8sh.html
new file mode 100644
index 000000000..889ee96eb
--- /dev/null
+++ b/docs/update-translations_8sh.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: update-translations.sh File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('update-translations_8sh.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">update-translations.sh File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="update-translations_8sh_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="update-translations_8sh.html">update-translations.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/update-translations_8sh_source.html b/docs/update-translations_8sh_source.html
new file mode 100644
index 000000000..7420e192d
--- /dev/null
+++ b/docs/update-translations_8sh_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: update-translations.sh Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('update-translations_8sh_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">update-translations.sh</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="update-translations_8sh.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;#!/bin/bash -</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;# --------------------------------------------------------------------------</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;# Remmina - The GTK+ Remote Desktop Client</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;# Copyright (C) 2016-2020 Antenore Gatta, Giovanni Panozzo</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;#</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;# This program is free software; you can redistribute it and/or modify</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;# it under the terms of the GNU General Public License as published by</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;# the Free Software Foundation; either version 2 of the License, or</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;# (at your option) any later version.</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;#</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;SCRIPTPATH=&quot;$( cd &quot;$(dirname &quot;$0&quot;)&quot; ; pwd -P )&quot;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;REMMINATOP=&quot;$(dirname &quot;$SCRIPTPATH&quot;)&quot;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;#===============================================================================</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;# FUNCTION DEFINITIONS</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;#===============================================================================</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;rem_varhasvalue () {</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; if [[ -n ${!1:-} ]]; then</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; return 0</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; fi</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; return 1</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;} # ---------- end of function rem_varhasvalue ----------</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;rem_varisdefined () {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; typeset -p ${1:-} &gt;/dev/null 2&gt;&amp;1 # Not portable, bash specific</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;} # ---------- end of function rem_varisdefined ----------</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;rem_log () {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; local _cmnhead=&quot;${HOSTNAME:=$(hostname)}&quot;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; local _header=&quot;&quot;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; local _message=&quot;$*&quot;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; #local _stdout=&quot;&quot;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; local _msgdate=&quot;&quot;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; case &quot;$1&quot; in</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; CRITICAL)</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; _header=&quot;CRITICAL&quot;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; shift</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; ;;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; ERROR)</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; _header=&quot;ERROR&quot;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; shift</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; ;;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; WARNING)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; _header=&quot;WARNING&quot;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; shift</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; ;;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; DEBUG)</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; _header=&quot;DEBUG&quot;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; shift</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; ;;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; INFO)</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; # We can add color support adding colors in the beginning</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; # GREEN=&quot;\033[0;32m&quot;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; # RESET=&quot;\033[0m&quot;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; # _reset=${RESET:-&#39;\033[0m&#39;}</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; # _color=${_reset}</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; #_color=${GREEN}</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; _header=&quot;INFO&quot;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; shift</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; _message=&quot;$*&quot;</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; *)</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; _header=&quot;INFO&quot;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; _message=&quot;$*&quot;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; ;;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; esac</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; if ! rem_varisdefined DFORMAT ; then</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; local _dateformat=&#39;%d/%m/%y %H:%M:%S&#39;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; else</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; local _dateformat=${DFORMAT:-}</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; fi</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; _msgdate=&quot;$(date +&quot;$_dateformat&quot;)&quot;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; # printf &quot;%s%s - [%s] - %s - %s%s\n&quot; &quot;$_color&quot; &quot;$_header&quot; &quot;$_msgdate&quot; &quot;${_cmnhead}&quot; &quot;$_message&quot; &quot;$_reset&quot;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; printf &quot;%s - [%s] - %s - %s\n&quot; &quot;$_header&quot; &quot;$_msgdate&quot; &quot;${_cmnhead}&quot; &quot;$_message&quot;</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;} # ---------- end of function rem_log ----------</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;# rem_which a poorman which function</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;# Return 0 un success or 1 in case of failure</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;rem_which () {</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; local _tool=()</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; local _ret=</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; for _tool in &quot;$@&quot; ; do</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; if type &quot;$_tool&quot; &gt;/dev/null 2&gt;&amp;1 ; then</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; _ret=0</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; else</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; _ret=1</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; fi</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; case $_ret in</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; 0)</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; rem_log INFO &quot;$_tool found&quot;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; ;;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; 83)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; rem_log ERROR &quot;$_tool not found&quot;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; ;;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; esac</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; done</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; unset _tool</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; return &quot;$_ret&quot;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;} # ---------- end of function rem_which ----------</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;if ! rem_which &quot;xgettext&quot; &quot;msgmerge&quot; &quot;git&quot; &quot;diff&quot; ; then</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; rem_log ERROR &quot;Some tools have not been found&quot;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; exit 1</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;fi</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;cd &quot;$REMMINATOP&quot; || exit 1</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;GIT_TAG=&quot;$(git describe --abbrev=0 )&quot;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;rem_log INFO &quot;GIT_TAG is set to $GIT_TAG&quot;</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;if ! rem_varhasvalue GIT_TAG ; then</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; rem_log ERROR &quot;GIT_TAG is either empty or not set. Probably you are not in a git repository&quot;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; exit 1</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;fi</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;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;if ! find src plugins -name &quot;*\.c&quot; -o -name &quot;*\.h&quot; | sed &#39;s/^.\///&#39; &gt;| po/POTFILES.in ; then</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; exit 1</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;fi</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;if ! find data -name &quot;*.glade&quot; | sed &#39;s/^.\///&#39; &gt;&gt; po/POTFILES.in ; then</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; exit 1</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;fi</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;xgettext --from-code=UTF-8 \</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; --keyword=_ \</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; --keyword=N_ \</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; --keyword=translatable \</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; --keyword=C_:1c,2 \</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; --keyword=NC_:1c,2 \</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; --keyword=g_dngettext:2,3 \</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; --add-comments=TRANSLATORS: \</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; --files-from=po/POTFILES.in \</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; --output=po/remmina.temp.pot \</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; --package-version=&quot;$GIT_TAG&quot; \</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; --package-name=&quot;Remmina&quot; \</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; --msgid-bugs-address=&quot;l10n@lists.remmina.org&quot;</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;cd &quot;$REMMINATOP&quot;/po || exit 1</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;# Set charset to UTF-8</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;sed -i -e &#39;s/charset=CHARSET/charset=UTF-8/g&#39; remmina.temp.pot</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;if diff -qI &quot;POT-Creation-Date&quot; remmina.temp.pot remmina.pot ; then</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; rem_log INFO &quot;No new strings to be translated&quot;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; rm remmina.temp.pot</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; exit 0</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;fi</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;mv remmina.temp.pot remmina.pot</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;for i in *.po; do</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; msgmerge --backup=off --update &quot;$i&quot; remmina.pot</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;done</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;for i in &quot;$REMMINATOP&quot;/po/*.po ; do</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; TMPF=/tmp/f$$.txt</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; sed &#39;/^#~/d&#39; &quot;$i&quot; &gt; &quot;$TMPF&quot;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; awk &#39;BEGIN{bl=0}/^$/{bl++;if(bl==1)print;else next}/^..*$/{bl=0;print}&#39; $TMPF &gt;| &quot;$i&quot;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; rm $TMPF</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;done</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_53e6fa9553ac22a5646d2a2b2d7b97a1.html">scripts</a></li><li class="navelem"><a class="el" href="update-translations_8sh.html">update-translations.sh</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc-key-mapping-configuration_8md.html b/docs/vnc-key-mapping-configuration_8md.html
new file mode 100644
index 000000000..9f93c488a
--- /dev/null
+++ b/docs/vnc-key-mapping-configuration_8md.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc-key-mapping-configuration.md File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc-key-mapping-configuration_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">vnc-key-mapping-configuration.md File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="vnc-key-mapping-configuration_8md_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="vnc-key-mapping-configuration_8md.html">vnc-key-mapping-configuration.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc-key-mapping-configuration_8md_source.html b/docs/vnc-key-mapping-configuration_8md_source.html
new file mode 100644
index 000000000..b2cf22c40
--- /dev/null
+++ b/docs/vnc-key-mapping-configuration_8md_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc-key-mapping-configuration.md Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc-key-mapping-configuration_8md.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">vnc-key-mapping-configuration.md</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="vnc-key-mapping-configuration_8md.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;# How to configure key mapping with the VNC plugin.</div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;Remmina has an hidden feature with which you can configure custom key mappings, this is useful if you need, for example, to map the local *Super* key to the remote macOS *Option* key *(leaving theexisting local *Alt* key to the remote macOS* Command *key map alone.)*</div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;</div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;See #1716 for a long discussion about this.</div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;</div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;Keys can be mapped according to a configurable map. There is a predefined map called &quot;Map Meta Key&quot; that seems to be exactly what we need for macOS.</div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;</div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;Edit your connection profile, under &quot;Basic settings&quot;, you will find &quot;Keyboard mapping&quot;. Choose &quot;Map Meta Keys&quot;.</div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;</div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;![image](https://gitlab.com/Remmina/Remmina/uploads/e990c8826e534df01d62ea58589cf192/image.png)</div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;Save and connect.</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;</div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;**Map Meta Keys** is the following map:</div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;```</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;[Map Meta Keys]</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;Super_L = Meta_L</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;Super_R = Meta_R</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;Meta_L = Super_L</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;Meta_R = Super_R</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;```</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;Other maps, using the same syntax, can be created in the `remmina.keymap` file, located in the same directory as the remmina.pref file, usually `~/.config/remmina/remmina.keymap` Key symbol names can be found on the GDK file [gdk/gdkkeysyms.h](https://gitlab.gnome.org/GNOME/gtk/raw/master/gdk/gdkkeysyms.h).</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="vnc-key-mapping-configuration_8md.html">vnc-key-mapping-configuration.md</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc__plugin_8c.html b/docs/vnc__plugin_8c.html
new file mode 100644
index 000000000..89be58e33
--- /dev/null
+++ b/docs/vnc__plugin_8c.html
@@ -0,0 +1,2710 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">vnc_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="vnc__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_key_val.html">_RemminaKeyVal</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2ec48a513b23088125e7363a1832437e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_key_val.html">_RemminaKeyVal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">RemminaKeyVal</a></td></tr>
+<tr class="separator:a2ec48a513b23088125e7363a1832437e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a058e64c8178484c3c76da43b9b80d307"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a></td></tr>
+<tr class="separator:a058e64c8178484c3c76da43b9b80d307"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9ba8e968998b64b3832e484a2ca7dfc1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a> (struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</td></tr>
+<tr class="separator:a9ba8e968998b64b3832e484a2ca7dfc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dea604d34a804e23a5cd8a6683d9e49"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a> (gpointer data)</td></tr>
+<tr class="separator:a5dea604d34a804e23a5cd8a6683d9e49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a390e3b371156197feb518b737a31cc53"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a> (struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</td></tr>
+<tr class="separator:a390e3b371156197feb518b737a31cc53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a781dfc8cb5371260bbf358fa7d9e3751"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">check_for_endianness</a> ()</td></tr>
+<tr class="memdesc:a781dfc8cb5371260bbf358fa7d9e3751"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function <a class="el" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751" title="Function check_for_endianness() returns 1, if architecture is little endian, 0 in case of big endian...">check_for_endianness()</a> returns 1, if architecture is little endian, 0 in case of big endian. <a href="#a781dfc8cb5371260bbf358fa7d9e3751">More...</a><br /></td></tr>
+<tr class="separator:a781dfc8cb5371260bbf358fa7d9e3751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a885240d470f95a89ac67051da38fa01d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint event_type, gpointer p1, gpointer p2, gpointer p3)</td></tr>
+<tr class="separator:a885240d470f95a89ac67051da38fa01d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeba06240e996cdffb95cf9ca4c461449"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">remmina_plugin_vnc_event_free</a> (<a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a> *event)</td></tr>
+<tr class="separator:aeba06240e996cdffb95cf9ca4c461449"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b47331cd4f72ee2c69573ffb3142c10"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">remmina_plugin_vnc_event_free_all</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a2b47331cd4f72ee2c69573ffb3142c10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0d402aa12eeef76a267a3b27e85fbb0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">remmina_plugin_vnc_scale_area</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint *x, gint *y, gint *w, gint *h)</td></tr>
+<tr class="separator:ac0d402aa12eeef76a267a3b27e85fbb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f57bda271e77f086885101650e8d82c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean scale)</td></tr>
+<tr class="separator:a1f57bda271e77f086885101650e8d82c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca3ee6dd15dd0da8017a1560e0dc7e0d"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">remmina_plugin_vnc_setcursor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aca3ee6dd15dd0da8017a1560e0dc7e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80cd2a03f3f695edbb1ac9ee8c680a5c"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">remmina_plugin_vnc_queuecursor</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, cairo_surface_t *surface, gint x, gint y)</td></tr>
+<tr class="separator:a80cd2a03f3f695edbb1ac9ee8c680a5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae185dbf1d0a8f2f2d225b7f7a2d1deb8"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">remmina_plugin_vnc_event_queue_pop_head</a> (<a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</a> *gpdata)</td></tr>
+<tr class="separator:ae185dbf1d0a8f2f2d225b7f7a2d1deb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee8a8cf42ad03be152f4f5a751798383"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">remmina_plugin_vnc_process_vnc_event</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aee8a8cf42ad03be152f4f5a751798383"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa09286b99e12ea23e6a6ea14c5488469"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">remmina_plugin_vnc_update_quality</a> (rfbClient *cl, gint quality)</td></tr>
+<tr class="separator:aa09286b99e12ea23e6a6ea14c5488469"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7149c702b5beec6fccbf5d4207e0ff55"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">remmina_plugin_vnc_update_colordepth</a> (rfbClient *cl, gint colordepth)</td></tr>
+<tr class="separator:a7149c702b5beec6fccbf5d4207e0ff55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91cf510208363f5678c65f420d2d0586"><td class="memItemLeft" align="right" valign="top">static rfbBool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">remmina_plugin_vnc_rfb_allocfb</a> (rfbClient *cl)</td></tr>
+<tr class="separator:a91cf510208363f5678c65f420d2d0586"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1a91949fa5f1c5ff978046e8186a5f8"><td class="memItemLeft" align="right" valign="top">static gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a> (gint n)</td></tr>
+<tr class="separator:af1a91949fa5f1c5ff978046e8186a5f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8908f48e85693e75dc871ed7e2eb1ddc"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">remmina_plugin_vnc_queue_draw_area_real</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8908f48e85693e75dc871ed7e2eb1ddc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf7b4c8b2fa3722af25cc40dc66a83b9"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">remmina_plugin_vnc_queue_draw_area</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint x, gint y, gint w, gint h)</td></tr>
+<tr class="separator:adf7b4c8b2fa3722af25cc40dc66a83b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1266cacd4af9e75fb043669f88fbd108"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">remmina_plugin_vnc_rfb_fill_buffer</a> (rfbClient *cl, guchar *dest, gint dest_rowstride, guchar *src, gint src_rowstride, guchar *mask, gint w, gint h)</td></tr>
+<tr class="separator:a1266cacd4af9e75fb043669f88fbd108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af77b4e3099a5d382aa4b840e4aecaadc"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">remmina_plugin_vnc_rfb_updatefb</a> (rfbClient *cl, int x, int y, int w, int h)</td></tr>
+<tr class="separator:af77b4e3099a5d382aa4b840e4aecaadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0b52e3e065b5042bed7cd9eb0561c5d"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">remmina_plugin_vnc_queue_cuttext</a> (<a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a> *param)</td></tr>
+<tr class="separator:aa0b52e3e065b5042bed7cd9eb0561c5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad67a66a0788c440bd755e300645155c1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">remmina_plugin_vnc_rfb_cuttext</a> (rfbClient *cl, const char *text, int textlen)</td></tr>
+<tr class="separator:ad67a66a0788c440bd755e300645155c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab553977a035eea4d913b2cfaaf49a003"><td class="memItemLeft" align="right" valign="top">static char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">remmina_plugin_vnc_rfb_password</a> (rfbClient *cl)</td></tr>
+<tr class="separator:ab553977a035eea4d913b2cfaaf49a003"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3bb0ef97fadc9782e47cf1dd011a19d"><td class="memItemLeft" align="right" valign="top">static rfbCredential *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">remmina_plugin_vnc_rfb_credential</a> (rfbClient *cl, int credentialType)</td></tr>
+<tr class="separator:ab3bb0ef97fadc9782e47cf1dd011a19d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f128e63501e5f28aaf50c6d77111b14"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">remmina_plugin_vnc_rfb_cursor_shape</a> (rfbClient *cl, int xhot, int yhot, int width, int height, int bytesPerPixel)</td></tr>
+<tr class="separator:a7f128e63501e5f28aaf50c6d77111b14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea5839c1087d585275c487093112f2ac"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">remmina_plugin_vnc_rfb_bell</a> (rfbClient *cl)</td></tr>
+<tr class="separator:aea5839c1087d585275c487093112f2ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab96ef9227ecef94018f2729f72e7651e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a> (&quot;Unable to connect to VNC server&quot;)</td></tr>
+<tr class="separator:ab96ef9227ecef94018f2729f72e7651e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae9ff42cb268892f94cf7ed3070d4b5a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">remmina_plugin_vnc_chat_on_send</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const gchar *text)</td></tr>
+<tr class="separator:aae9ff42cb268892f94cf7ed3070d4b5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad43b46448de165f501529d6b203ca8ca"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">remmina_plugin_vnc_chat_on_destroy</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad43b46448de165f501529d6b203ca8ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb2067d0a9a7a7e6d9f26b0357fbf0e1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">remmina_plugin_vnc_send_ctrlaltdel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acb2067d0a9a7a7e6d9f26b0357fbf0e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e82957848c696045b21f365827e11c7"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">remmina_plugin_vnc_close_chat</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5e82957848c696045b21f365827e11c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d672e305030849447b5b8b522d82242"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">remmina_plugin_vnc_open_chat</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4d672e305030849447b5b8b522d82242"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1aaa1353346af3f9e18347768d5dc5b1"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">remmina_plugin_vnc_rfb_chat</a> (rfbClient *cl, int value, char *text)</td></tr>
+<tr class="separator:a1aaa1353346af3f9e18347768d5dc5b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50903bb7e69828cee9c16e8367715a42"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">remmina_plugin_vnc_incoming_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, rfbClient *cl)</td></tr>
+<tr class="separator:a50903bb7e69828cee9c16e8367715a42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a093245037037f681c4ffe6356d916a02"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">remmina_plugin_vnc_main_loop</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a093245037037f681c4ffe6356d916a02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8648ba06e3c1b7093147ae9a1c576452"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">remmina_plugin_vnc_main</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a8648ba06e3c1b7093147ae9a1c576452"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14c13d425ace0c90144b0e486e6893b8"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">remmina_plugin_vnc_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a14c13d425ace0c90144b0e486e6893b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a317c3aca2102f38bc876c95413701a80"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a> (GtkWidget *widget, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint x, gint y)</td></tr>
+<tr class="separator:a317c3aca2102f38bc876c95413701a80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47762f374c697476aed0a36ed26a0aa1"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">remmina_plugin_vnc_on_motion</a> (GtkWidget *widget, GdkEventMotion *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a47762f374c697476aed0a36ed26a0aa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4dc4f7fbf26336d69aa468e6d81d9b0a"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">remmina_plugin_vnc_on_button</a> (GtkWidget *widget, GdkEventButton *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4dc4f7fbf26336d69aa468e6d81d9b0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f8fd3a6a5f00aef49bd4e3404be5697"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">remmina_plugin_vnc_on_scroll</a> (GtkWidget *widget, GdkEventScroll *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a6f8fd3a6a5f00aef49bd4e3404be5697"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ba650386c03a1daa8a46546c81820c4"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">remmina_plugin_vnc_release_key</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, guint16 keycode)</td></tr>
+<tr class="separator:a3ba650386c03a1daa8a46546c81820c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f528272dda8a3538cbdce39254ecc81"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">remmina_plugin_vnc_on_key</a> (GtkWidget *widget, GdkEventKey *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a4f528272dda8a3538cbdce39254ecc81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a987d6ebfa00d29578dada803f33d6a99"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">remmina_plugin_vnc_on_cuttext_request</a> (GtkClipboard *clipboard, const gchar *text, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a987d6ebfa00d29578dada803f33d6a99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bce24c89cf4554a664693a6b5e1a78d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">remmina_plugin_vnc_on_cuttext</a> (GtkClipboard *clipboard, GdkEvent *event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7bce24c89cf4554a664693a6b5e1a78d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18ba6738d4a3d84a4a38e45ecc0e704a"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">remmina_plugin_vnc_on_realize</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gpointer data)</td></tr>
+<tr class="separator:a18ba6738d4a3d84a4a38e45ecc0e704a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29fb120041bcace9f201cbdf3a3f6f2f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a29fb120041bcace9f201cbdf3a3f6f2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a66b50e38de8f8f7ff4c47455145a61"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">remmina_plugin_vnc_close_connection_timeout</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5a66b50e38de8f8f7ff4c47455145a61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fa113e651e76230f66ca23135f2c688"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7fa113e651e76230f66ca23135f2c688"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6497b38386d6de20157b0baf75dcbf44"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a6497b38386d6de20157b0baf75dcbf44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a626a6a09f076b133df208d5bc04233b6"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a626a6a09f076b133df208d5bc04233b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacfc4c3693cace69153a6ad95a69495e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const guint keystrokes[], const gint keylen)</td></tr>
+<tr class="separator:aacfc4c3693cace69153a6ad95a69495e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5321b08f070c51b58669fe2187f35bc4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">remmina_plugin_vnc_on_draw</a> (GtkWidget *widget, cairo_t *context, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a5321b08f070c51b58669fe2187f35bc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58be4b85cfe9050078599d73df2c21f0"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a58be4b85cfe9050078599d73df2c21f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeb18a588e3d003bf3adcaa6eb1697ff"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">dot_cursor_x_hot</a> = 2</td></tr>
+<tr class="separator:aeeb18a588e3d003bf3adcaa6eb1697ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01923764292c3ab42dbcb43a9bb438a5"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">dot_cursor_y_hot</a> = 2</td></tr>
+<tr class="separator:a01923764292c3ab42dbcb43a9bb438a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade7041eba0e97ab146e2bc418982f100"><td class="memItemLeft" align="right" valign="top">static const gchar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">dot_cursor_xpm</a> []</td></tr>
+<tr class="separator:ade7041eba0e97ab146e2bc418982f100"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6380a77d4119e8ce70c2d46fd60aece"><td class="memItemLeft" align="right" valign="top">static const uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">remmina_plugin_vnc_no_encrypt_auth_types</a> []</td></tr>
+<tr class="separator:aa6380a77d4119e8ce70c2d46fd60aece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a> []</td></tr>
+<tr class="separator:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a> []</td></tr>
+<tr class="separator:a64254af45bb17a5a40a3a0383daa3fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b2de0c8917cafa414c0b9ed4c29aee3"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a> []</td></tr>
+<tr class="separator:a8b2de0c8917cafa414c0b9ed4c29aee3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac25782cb49710754854863dc9500bd57"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a> []</td></tr>
+<tr class="separator:ac25782cb49710754854863dc9500bd57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8525912fbb407209875f84448abec8c7"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a> []</td></tr>
+<tr class="separator:a8525912fbb407209875f84448abec8c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9cd44cc6ac7467e6c31c3d5fe77ac21"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a> []</td></tr>
+<tr class="separator:ab9cd44cc6ac7467e6c31c3d5fe77ac21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a954db5d93dbd612c1f64c3a3b05b97ea"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea">remmina_plugin_vnc</a></td></tr>
+<tr class="separator:a954db5d93dbd612c1f64c3a3b05b97ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a289d56662190215fffd46338a57133d9"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9">remmina_plugin_vnci</a></td></tr>
+<tr class="separator:a289d56662190215fffd46338a57133d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a2ec48a513b23088125e7363a1832437e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2ec48a513b23088125e7363a1832437e">&#9670;&nbsp;</a></span>RemminaKeyVal</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_key_val.html">_RemminaKeyVal</a> <a class="el" href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">RemminaKeyVal</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a058e64c8178484c3c76da43b9b80d307"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a058e64c8178484c3c76da43b9b80d307">&#9670;&nbsp;</a></span>RemminaPluginVncCuttextParam</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a> <a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a781dfc8cb5371260bbf358fa7d9e3751"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a781dfc8cb5371260bbf358fa7d9e3751">&#9670;&nbsp;</a></span>check_for_endianness()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean check_for_endianness </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Function <a class="el" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751" title="Function check_for_endianness() returns 1, if architecture is little endian, 0 in case of big endian...">check_for_endianness()</a> returns 1, if architecture is little endian, 0 in case of big endian. </p>
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00123">123</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab96ef9227ecef94018f2729f72e7651e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab96ef9227ecef94018f2729f72e7651e">&#9670;&nbsp;</a></span>N_()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">N_ </td>
+ <td>(</td>
+ <td class="paramtype">&quot;Unable to connect to VNC server&quot;&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00907">907</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9ba8e968998b64b3832e484a2ca7dfc1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9ba8e968998b64b3832e484a2ca7dfc1">&#9670;&nbsp;</a></span>onMainThread_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean onMainThread_cb </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00077">77</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5dea604d34a804e23a5cd8a6683d9e49"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5dea604d34a804e23a5cd8a6683d9e49">&#9670;&nbsp;</a></span>onMainThread_cleanup_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void onMainThread_cleanup_handler </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00095">95</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a390e3b371156197feb518b737a31cc53"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a390e3b371156197feb518b737a31cc53">&#9670;&nbsp;</a></span>onMainThread_schedule_callback_and_wait()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void onMainThread_schedule_callback_and_wait </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *&#160;</td>
+ <td class="paramname"><em>d</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00103">103</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01967">1967</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af1a91949fa5f1c5ff978046e8186a5f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1a91949fa5f1c5ff978046e8186a5f8">&#9670;&nbsp;</a></span>remmina_plugin_vnc_bits()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gint remmina_plugin_vnc_bits </td>
+ <td>(</td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>n</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00515">515</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a626a6a09f076b133df208d5bc04233b6"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a626a6a09f076b133df208d5bc04233b6">&#9670;&nbsp;</a></span>remmina_plugin_vnc_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01698">1698</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad43b46448de165f501529d6b203ca8ca"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad43b46448de165f501529d6b203ca8ca">&#9670;&nbsp;</a></span>remmina_plugin_vnc_chat_on_destroy()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_chat_on_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00963">963</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aae9ff42cb268892f94cf7ed3070d4b5a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae9ff42cb268892f94cf7ed3070d4b5a">&#9670;&nbsp;</a></span>remmina_plugin_vnc_chat_on_send()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_chat_on_send </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00952">952</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5e82957848c696045b21f365827e11c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5e82957848c696045b21f365827e11c7">&#9670;&nbsp;</a></span>remmina_plugin_vnc_close_chat()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_close_chat </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00980">980</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7fa113e651e76230f66ca23135f2c688"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7fa113e651e76230f66ca23135f2c688">&#9670;&nbsp;</a></span>remmina_plugin_vnc_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01664">1664</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5a66b50e38de8f8f7ff4c47455145a61"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a66b50e38de8f8f7ff4c47455145a61">&#9670;&nbsp;</a></span>remmina_plugin_vnc_close_connection_timeout()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_close_connection_timeout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01608">1608</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aeba06240e996cdffb95cf9ca4c461449"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeba06240e996cdffb95cf9ca4c461449">&#9670;&nbsp;</a></span>remmina_plugin_vnc_event_free()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_event_free </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a> *&#160;</td>
+ <td class="paramname"><em>event</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00165">165</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2b47331cd4f72ee2c69573ffb3142c10"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2b47331cd4f72ee2c69573ffb3142c10">&#9670;&nbsp;</a></span>remmina_plugin_vnc_event_free_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_event_free_all </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00179">179</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a885240d470f95a89ac67051da38fa01d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a885240d470f95a89ac67051da38fa01d">&#9670;&nbsp;</a></span>remmina_plugin_vnc_event_push()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_event_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>event_type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>p1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>p2</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>p3</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00130">130</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae185dbf1d0a8f2f2d225b7f7a2d1deb8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">&#9670;&nbsp;</a></span>remmina_plugin_vnc_event_queue_pop_head()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a>* remmina_plugin_vnc_event_queue_pop_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</a> *&#160;</td>
+ <td class="paramname"><em>gpdata</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00303">303</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a50903bb7e69828cee9c16e8367715a42"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a50903bb7e69828cee9c16e8367715a42">&#9670;&nbsp;</a></span>remmina_plugin_vnc_incoming_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_incoming_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>This may fail or not working as expected with multiple network interfaces, change with ListenAtTcpPortAndAddress</p>
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01024">1024</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a58be4b85cfe9050078599d73df2c21f0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a58be4b85cfe9050078599d73df2c21f0">&#9670;&nbsp;</a></span>remmina_plugin_vnc_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01785">1785</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aacfc4c3693cace69153a6ad95a69495e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aacfc4c3693cace69153a6ad95a69495e">&#9670;&nbsp;</a></span>remmina_plugin_vnc_keystroke()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_keystroke </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const guint&#160;</td>
+ <td class="paramname"><em>keystrokes</em>[], </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gint&#160;</td>
+ <td class="paramname"><em>keylen</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01742">1742</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8648ba06e3c1b7093147ae9a1c576452"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8648ba06e3c1b7093147ae9a1c576452">&#9670;&nbsp;</a></span>remmina_plugin_vnc_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_main </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01123">1123</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a093245037037f681c4ffe6356d916a02"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a093245037037f681c4ffe6356d916a02">&#9670;&nbsp;</a></span>remmina_plugin_vnc_main_loop()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_main_loop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01067">1067</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a14c13d425ace0c90144b0e486e6893b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a14c13d425ace0c90144b0e486e6893b8">&#9670;&nbsp;</a></span>remmina_plugin_vnc_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_plugin_vnc_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01297">1297</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4dc4f7fbf26336d69aa468e6d81d9b0a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4dc4f7fbf26336d69aa468e6d81d9b0a">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_button()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_on_button </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventButton *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01344">1344</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7bce24c89cf4554a664693a6b5e1a78d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7bce24c89cf4554a664693a6b5e1a78d">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_cuttext()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_on_cuttext </td>
+ <td>(</td>
+ <td class="paramtype">GtkClipboard *&#160;</td>
+ <td class="paramname"><em>clipboard</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEvent *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01537">1537</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a987d6ebfa00d29578dada803f33d6a99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a987d6ebfa00d29578dada803f33d6a99">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_cuttext_request()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_on_cuttext_request </td>
+ <td>(</td>
+ <td class="paramtype">GtkClipboard *&#160;</td>
+ <td class="paramname"><em>clipboard</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01509">1509</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a5321b08f070c51b58669fe2187f35bc4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5321b08f070c51b58669fe2187f35bc4">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_draw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_on_draw </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">cairo_t *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01751">1751</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4f528272dda8a3538cbdce39254ecc81"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4f528272dda8a3538cbdce39254ecc81">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_on_key </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventKey *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01461">1461</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a47762f374c697476aed0a36ed26a0aa1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a47762f374c697476aed0a36ed26a0aa1">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_motion()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_on_motion </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventMotion *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01325">1325</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a18ba6738d4a3d84a4a38e45ecc0e704a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18ba6738d4a3d84a4a38e45ecc0e704a">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_realize()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_on_realize </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01552">1552</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6f8fd3a6a5f00aef49bd4e3404be5697"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6f8fd3a6a5f00aef49bd4e3404be5697">&#9670;&nbsp;</a></span>remmina_plugin_vnc_on_scroll()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_on_scroll </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GdkEventScroll *&#160;</td>
+ <td class="paramname"><em>event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01375">1375</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a4d672e305030849447b5b8b522d82242"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d672e305030849447b5b8b522d82242">&#9670;&nbsp;</a></span>remmina_plugin_vnc_open_chat()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_open_chat </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00987">987</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a29fb120041bcace9f201cbdf3a3f6f2f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a29fb120041bcace9f201cbdf3a3f6f2f">&#9670;&nbsp;</a></span>remmina_plugin_vnc_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01573">1573</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aee8a8cf42ad03be152f4f5a751798383"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aee8a8cf42ad03be152f4f5a751798383">&#9670;&nbsp;</a></span>remmina_plugin_vnc_process_vnc_event()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_process_vnc_event </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00318">318</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a6497b38386d6de20157b0baf75dcbf44"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a6497b38386d6de20157b0baf75dcbf44">&#9670;&nbsp;</a></span>remmina_plugin_vnc_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01683">1683</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa0b52e3e065b5042bed7cd9eb0561c5d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa0b52e3e065b5042bed7cd9eb0561c5d">&#9670;&nbsp;</a></span>remmina_plugin_vnc_queue_cuttext()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_queue_cuttext </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a> *&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00688">688</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adf7b4c8b2fa3722af25cc40dc66a83b9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adf7b4c8b2fa3722af25cc40dc66a83b9">&#9670;&nbsp;</a></span>remmina_plugin_vnc_queue_draw_area()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_queue_draw_area </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00546">546</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8908f48e85693e75dc871ed7e2eb1ddc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8908f48e85693e75dc871ed7e2eb1ddc">&#9670;&nbsp;</a></span>remmina_plugin_vnc_queue_draw_area_real()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_vnc_queue_draw_area_real </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00526">526</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a80cd2a03f3f695edbb1ac9ee8c680a5c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a80cd2a03f3f695edbb1ac9ee8c680a5c">&#9670;&nbsp;</a></span>remmina_plugin_vnc_queuecursor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_queuecursor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">cairo_surface_t *&#160;</td>
+ <td class="paramname"><em>surface</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00279">279</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3ba650386c03a1daa8a46546c81820c4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3ba650386c03a1daa8a46546c81820c4">&#9670;&nbsp;</a></span>remmina_plugin_vnc_release_key()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_release_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guint16&#160;</td>
+ <td class="paramname"><em>keycode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01429">1429</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a91cf510208363f5678c65f420d2d0586"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a91cf510208363f5678c65f420d2d0586">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_allocfb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static rfbBool remmina_plugin_vnc_rfb_allocfb </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00466">466</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aea5839c1087d585275c487093112f2ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aea5839c1087d585275c487093112f2ac">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_bell()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_bell </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00892">892</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1aaa1353346af3f9e18347768d5dc5b1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1aaa1353346af3f9e18347768d5dc5b1">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_chat()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_chat </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01001">1001</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab3bb0ef97fadc9782e47cf1dd011a19d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab3bb0ef97fadc9782e47cf1dd011a19d">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_credential()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static rfbCredential* remmina_plugin_vnc_rfb_credential </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>credentialType</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00771">771</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7f128e63501e5f28aaf50c6d77111b14"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f128e63501e5f28aaf50c6d77111b14">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_cursor_shape()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_cursor_shape </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>xhot</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>yhot</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>width</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>height</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>bytesPerPixel</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00859">859</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ad67a66a0788c440bd755e300645155c1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad67a66a0788c440bd755e300645155c1">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_cuttext()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_cuttext </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>textlen</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00717">717</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1266cacd4af9e75fb043669f88fbd108"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1266cacd4af9e75fb043669f88fbd108">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_fill_buffer()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_fill_buffer </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guchar *&#160;</td>
+ <td class="paramname"><em>dest</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>dest_rowstride</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guchar *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>src_rowstride</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">guchar *&#160;</td>
+ <td class="paramname"><em>mask</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00572">572</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab553977a035eea4d913b2cfaaf49a003"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab553977a035eea4d913b2cfaaf49a003">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_password()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static char* remmina_plugin_vnc_rfb_password </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00731">731</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af77b4e3099a5d382aa4b840e4aecaadc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af77b4e3099a5d382aa4b840e4aecaadc">&#9670;&nbsp;</a></span>remmina_plugin_vnc_rfb_updatefb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_rfb_updatefb </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00658">658</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac0d402aa12eeef76a267a3b27e85fbb0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac0d402aa12eeef76a267a3b27e85fbb0">&#9670;&nbsp;</a></span>remmina_plugin_vnc_scale_area()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_scale_area </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>y</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>w</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint *&#160;</td>
+ <td class="paramname"><em>h</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00191">191</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a317c3aca2102f38bc876c95413701a80"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a317c3aca2102f38bc876c95413701a80">&#9670;&nbsp;</a></span>remmina_plugin_vnc_scale_coordinates()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a> remmina_plugin_vnc_scale_coordinates </td>
+ <td>(</td>
+ <td class="paramtype">GtkWidget *&#160;</td>
+ <td class="paramname"><em>widget</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>y</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01308">1308</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acb2067d0a9a7a7e6d9f26b0357fbf0e1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acb2067d0a9a7a7e6d9f26b0357fbf0e1">&#9670;&nbsp;</a></span>remmina_plugin_vnc_send_ctrlaltdel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_send_ctrlaltdel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00970">970</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aca3ee6dd15dd0da8017a1560e0dc7e0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aca3ee6dd15dd0da8017a1560e0dc7e0d">&#9670;&nbsp;</a></span>remmina_plugin_vnc_setcursor()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_vnc_setcursor </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00255">255</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7149c702b5beec6fccbf5d4207e0ff55"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7149c702b5beec6fccbf5d4207e0ff55">&#9670;&nbsp;</a></span>remmina_plugin_vnc_update_colordepth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_update_colordepth </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>colordepth</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00409">409</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa09286b99e12ea23e6a6ea14c5488469"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa09286b99e12ea23e6a6ea14c5488469">&#9670;&nbsp;</a></span>remmina_plugin_vnc_update_quality()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_update_quality </td>
+ <td>(</td>
+ <td class="paramtype">rfbClient *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>quality</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>"0", "Poor (fastest)
+"1", "Medium"
+"2", "Good"
+"9", "Best</p>
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00371">371</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1f57bda271e77f086885101650e8d82c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1f57bda271e77f086885101650e8d82c">&#9670;&nbsp;</a></span>remmina_plugin_vnc_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_vnc_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>scale</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00222">222</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a7d6c92b318e43b96efddbcaa9400c1f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d6c92b318e43b96efddbcaa9400c1f1">&#9670;&nbsp;</a></span>colordepth_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer colordepth_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;32&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True color (32 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High color (16 bpp)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colors (8 bpp)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01825">1825</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aeeb18a588e3d003bf3adcaa6eb1697ff"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeeb18a588e3d003bf3adcaa6eb1697ff">&#9670;&nbsp;</a></span>dot_cursor_x_hot</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int dot_cursor_x_hot = 2</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00055">55</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ade7041eba0e97ab146e2bc418982f100"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ade7041eba0e97ab146e2bc418982f100">&#9670;&nbsp;</a></span>dot_cursor_xpm</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gchar* dot_cursor_xpm[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </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;5 5 3 1&quot;</span>, <span class="stringliteral">&quot; c None&quot;</span>, <span class="stringliteral">&quot;. c #000000&quot;</span>, <span class="stringliteral">&quot;+ c #FFFFFF&quot;</span>, <span class="stringliteral">&quot; ... &quot;</span>, <span class="stringliteral">&quot;.+++.&quot;</span>, <span class="stringliteral">&quot;.+ +.&quot;</span>, <span class="stringliteral">&quot;.+++.&quot;</span>, <span class="stringliteral">&quot; ... &quot;</span> }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00057">57</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a01923764292c3ab42dbcb43a9bb438a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a01923764292c3ab42dbcb43a9bb438a5">&#9670;&nbsp;</a></span>dot_cursor_y_hot</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int dot_cursor_y_hot = 2</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00056">56</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a64254af45bb17a5a40a3a0383daa3fe7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a64254af45bb17a5a40a3a0383daa3fe7">&#9670;&nbsp;</a></span>quality_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer quality_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01834">1834</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00053">53</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a954db5d93dbd612c1f64c3a3b05b97ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a954db5d93dbd612c1f64c3a3b05b97ea">&#9670;&nbsp;</a></span>remmina_plugin_vnc</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_vnc</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> VNC_PLUGIN_NAME, </div><div class="line"> VNC_PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VNC_PLUGIN_VERSION, </div><div class="line"> VNC_PLUGIN_APPICON, </div><div class="line"> VNC_PLUGIN_SSH_APPICON, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a> </div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_a58be4b85cfe9050078599d73df2c21f0"><div class="ttname"><a href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a></div><div class="ttdeci">static void remmina_plugin_vnc_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01785">vnc_plugin.c:1785</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab9cd44cc6ac7467e6c31c3d5fe77ac21"><div class="ttname"><a href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_vnc_features[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01906">vnc_plugin.c:1906</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a29fb120041bcace9f201cbdf3a3f6f2f"><div class="ttname"><a href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01573">vnc_plugin.c:1573</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8525912fbb407209875f84448abec8c7"><div class="ttname"><a href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnc_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01893">vnc_plugin.c:1893</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a626a6a09f076b133df208d5bc04233b6"><div class="ttname"><a href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a></div><div class="ttdeci">static void remmina_plugin_vnc_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01698">vnc_plugin.c:1698</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7fa113e651e76230f66ca23135f2c688"><div class="ttname"><a href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01664">vnc_plugin.c:1664</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a6497b38386d6de20157b0baf75dcbf44"><div class="ttname"><a href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01683">vnc_plugin.c:1683</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8b2de0c8917cafa414c0b9ed4c29aee3"><div class="ttname"><a href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnc_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01852">vnc_plugin.c:1852</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aacfc4c3693cace69153a6ad95a69495e"><div class="ttname"><a href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a></div><div class="ttdeci">static void remmina_plugin_vnc_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01742">vnc_plugin.c:1742</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01922">1922</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8525912fbb407209875f84448abec8c7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8525912fbb407209875f84448abec8c7">&#9670;&nbsp;</a></span>remmina_plugin_vnc_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_vnc_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show remote cursor&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;viewonly&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableencryption&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable encryption&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableserverinput&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable server input&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01893">1893</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a8b2de0c8917cafa414c0b9ed4c29aee3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8b2de0c8917cafa414c0b9ed4c29aee3">&#9670;&nbsp;</a></span>remmina_plugin_vnc_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_vnc_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_rfb._tcp&quot;</span>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;proxy&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Repeater&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Color depth&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>, <span class="stringliteral">&quot;keymap&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01825">vnc_plugin.c:1825</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00084">types.h:84</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01834">vnc_plugin.c:1834</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01852">1852</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab9cd44cc6ac7467e6c31c3d5fe77ac21"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab9cd44cc6ac7467e6c31c3d5fe77ac21">&#9670;&nbsp;</a></span>remmina_plugin_vnc_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_vnc_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_QUALITY, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_RADIO), <span class="stringliteral">&quot;quality&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a> },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_VIEWONLY, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;viewonly&quot;</span>,</div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_DISABLESERVERINPUT, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;disableserverinput&quot;</span>,<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable server input&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_REFRESH, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Refresh&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_CHAT, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Open Chat…&quot;</span>), <span class="stringliteral">&quot;face-smile&quot;</span>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, REMMINA_PLUGIN_VNC_FEATURE_SCALE, NULL, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>, REMMINA_PLUGIN_VNC_FEATURE_UNFOCUS, NULL, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01834">vnc_plugin.c:1834</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01906">1906</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aa6380a77d4119e8ce70c2d46fd60aece"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6380a77d4119e8ce70c2d46fd60aece">&#9670;&nbsp;</a></span>remmina_plugin_vnc_no_encrypt_auth_types</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const uint32_t remmina_plugin_vnc_no_encrypt_auth_types[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{ rfbNoAuth, rfbVncAuth, rfbMSLogon, 0 }</div></div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l00300">300</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a289d56662190215fffd46338a57133d9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a289d56662190215fffd46338a57133d9">&#9670;&nbsp;</a></span>remmina_plugin_vnci</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_vnci</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> VNCI_PLUGIN_NAME, </div><div class="line"> VNCI_PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> VNCI_PLUGIN_APPICON, </div><div class="line"> VNCI_PLUGIN_SSH_APPICON, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a>, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_a58be4b85cfe9050078599d73df2c21f0"><div class="ttname"><a href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a></div><div class="ttdeci">static void remmina_plugin_vnc_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01785">vnc_plugin.c:1785</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab9cd44cc6ac7467e6c31c3d5fe77ac21"><div class="ttname"><a href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_vnc_features[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01906">vnc_plugin.c:1906</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a29fb120041bcace9f201cbdf3a3f6f2f"><div class="ttname"><a href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01573">vnc_plugin.c:1573</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8525912fbb407209875f84448abec8c7"><div class="ttname"><a href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnc_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01893">vnc_plugin.c:1893</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a626a6a09f076b133df208d5bc04233b6"><div class="ttname"><a href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a></div><div class="ttdeci">static void remmina_plugin_vnc_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01698">vnc_plugin.c:1698</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7fa113e651e76230f66ca23135f2c688"><div class="ttname"><a href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01664">vnc_plugin.c:1664</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a6497b38386d6de20157b0baf75dcbf44"><div class="ttname"><a href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01683">vnc_plugin.c:1683</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00107">types.h:107</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ac25782cb49710754854863dc9500bd57"><div class="ttname"><a href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnci_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01873">vnc_plugin.c:1873</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aacfc4c3693cace69153a6ad95a69495e"><div class="ttname"><a href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a></div><div class="ttdeci">static void remmina_plugin_vnc_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01742">vnc_plugin.c:1742</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01944">1944</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac25782cb49710754854863dc9500bd57"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac25782cb49710754854863dc9500bd57">&#9670;&nbsp;</a></span>remmina_plugin_vnci_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_vnci_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;listenport&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Listen on port&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Color depth&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>, <span class="stringliteral">&quot;keymap&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01825">vnc_plugin.c:1825</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00084">types.h:84</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01834">vnc_plugin.c:1834</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8c_source.html#l01873">1873</a> of file <a class="el" href="vnc__plugin_8c_source.html">vnc_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></li><li class="navelem"><a class="el" href="vnc__plugin_8c.html">vnc_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc__plugin_8c.js b/docs/vnc__plugin_8c.js
new file mode 100644
index 000000000..c6e8b588b
--- /dev/null
+++ b/docs/vnc__plugin_8c.js
@@ -0,0 +1,77 @@
+var vnc__plugin_8c =
+[
+ [ "onMainThread_cb_data", "structon_main_thread__cb__data.html", "structon_main_thread__cb__data" ],
+ [ "_RemminaKeyVal", "struct___remmina_key_val.html", "struct___remmina_key_val" ],
+ [ "_RemminaPluginVncCuttextParam", "struct___remmina_plugin_vnc_cuttext_param.html", "struct___remmina_plugin_vnc_cuttext_param" ],
+ [ "RemminaKeyVal", "vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e", null ],
+ [ "RemminaPluginVncCuttextParam", "vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307", null ],
+ [ "check_for_endianness", "vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751", null ],
+ [ "N_", "vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e", null ],
+ [ "onMainThread_cb", "vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1", null ],
+ [ "onMainThread_cleanup_handler", "vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49", null ],
+ [ "onMainThread_schedule_callback_and_wait", "vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53", null ],
+ [ "remmina_plugin_entry", "vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_vnc_bits", "vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8", null ],
+ [ "remmina_plugin_vnc_call_feature", "vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6", null ],
+ [ "remmina_plugin_vnc_chat_on_destroy", "vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca", null ],
+ [ "remmina_plugin_vnc_chat_on_send", "vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a", null ],
+ [ "remmina_plugin_vnc_close_chat", "vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7", null ],
+ [ "remmina_plugin_vnc_close_connection", "vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688", null ],
+ [ "remmina_plugin_vnc_close_connection_timeout", "vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61", null ],
+ [ "remmina_plugin_vnc_event_free", "vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449", null ],
+ [ "remmina_plugin_vnc_event_free_all", "vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10", null ],
+ [ "remmina_plugin_vnc_event_push", "vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d", null ],
+ [ "remmina_plugin_vnc_event_queue_pop_head", "vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8", null ],
+ [ "remmina_plugin_vnc_incoming_connection", "vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42", null ],
+ [ "remmina_plugin_vnc_init", "vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0", null ],
+ [ "remmina_plugin_vnc_keystroke", "vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e", null ],
+ [ "remmina_plugin_vnc_main", "vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452", null ],
+ [ "remmina_plugin_vnc_main_loop", "vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02", null ],
+ [ "remmina_plugin_vnc_main_thread", "vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8", null ],
+ [ "remmina_plugin_vnc_on_button", "vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a", null ],
+ [ "remmina_plugin_vnc_on_cuttext", "vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d", null ],
+ [ "remmina_plugin_vnc_on_cuttext_request", "vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99", null ],
+ [ "remmina_plugin_vnc_on_draw", "vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4", null ],
+ [ "remmina_plugin_vnc_on_key", "vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81", null ],
+ [ "remmina_plugin_vnc_on_motion", "vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1", null ],
+ [ "remmina_plugin_vnc_on_realize", "vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a", null ],
+ [ "remmina_plugin_vnc_on_scroll", "vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697", null ],
+ [ "remmina_plugin_vnc_open_chat", "vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242", null ],
+ [ "remmina_plugin_vnc_open_connection", "vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f", null ],
+ [ "remmina_plugin_vnc_process_vnc_event", "vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383", null ],
+ [ "remmina_plugin_vnc_query_feature", "vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44", null ],
+ [ "remmina_plugin_vnc_queue_cuttext", "vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d", null ],
+ [ "remmina_plugin_vnc_queue_draw_area", "vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9", null ],
+ [ "remmina_plugin_vnc_queue_draw_area_real", "vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc", null ],
+ [ "remmina_plugin_vnc_queuecursor", "vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c", null ],
+ [ "remmina_plugin_vnc_release_key", "vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4", null ],
+ [ "remmina_plugin_vnc_rfb_allocfb", "vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586", null ],
+ [ "remmina_plugin_vnc_rfb_bell", "vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac", null ],
+ [ "remmina_plugin_vnc_rfb_chat", "vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1", null ],
+ [ "remmina_plugin_vnc_rfb_credential", "vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d", null ],
+ [ "remmina_plugin_vnc_rfb_cursor_shape", "vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14", null ],
+ [ "remmina_plugin_vnc_rfb_cuttext", "vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1", null ],
+ [ "remmina_plugin_vnc_rfb_fill_buffer", "vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108", null ],
+ [ "remmina_plugin_vnc_rfb_password", "vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003", null ],
+ [ "remmina_plugin_vnc_rfb_updatefb", "vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc", null ],
+ [ "remmina_plugin_vnc_scale_area", "vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0", null ],
+ [ "remmina_plugin_vnc_scale_coordinates", "vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80", null ],
+ [ "remmina_plugin_vnc_send_ctrlaltdel", "vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1", null ],
+ [ "remmina_plugin_vnc_setcursor", "vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d", null ],
+ [ "remmina_plugin_vnc_update_colordepth", "vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55", null ],
+ [ "remmina_plugin_vnc_update_quality", "vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469", null ],
+ [ "remmina_plugin_vnc_update_scale", "vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c", null ],
+ [ "colordepth_list", "vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1", null ],
+ [ "dot_cursor_x_hot", "vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff", null ],
+ [ "dot_cursor_xpm", "vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100", null ],
+ [ "dot_cursor_y_hot", "vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5", null ],
+ [ "quality_list", "vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7", null ],
+ [ "remmina_plugin_service", "vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_vnc", "vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea", null ],
+ [ "remmina_plugin_vnc_advanced_settings", "vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7", null ],
+ [ "remmina_plugin_vnc_basic_settings", "vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3", null ],
+ [ "remmina_plugin_vnc_features", "vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21", null ],
+ [ "remmina_plugin_vnc_no_encrypt_auth_types", "vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece", null ],
+ [ "remmina_plugin_vnci", "vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9", null ],
+ [ "remmina_plugin_vnci_basic_settings", "vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57", null ]
+]; \ No newline at end of file
diff --git a/docs/vnc__plugin_8c_source.html b/docs/vnc__plugin_8c_source.html
new file mode 100644
index 000000000..66c135719
--- /dev/null
+++ b/docs/vnc__plugin_8c_source.html
@@ -0,0 +1,303 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">vnc_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="vnc__plugin_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-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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gmodule.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="vnc__plugin_8h.html">vnc_plugin.h</a>&quot;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;rfb/rfbclient.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_PREF_QUALITY 1</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_PREF_VIEWONLY 2</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_PREF_DISABLESERVERINPUT 3</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_TOOL_REFRESH 4</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_TOOL_CHAT 5</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_SCALE 6</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_UNFOCUS 7</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_VNC_FEATURE_TOOL_SENDCTRLALTDEL 8</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginVncData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;)</span></div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 53</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff"> 55</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">dot_cursor_x_hot</a> = 2;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5"> 56</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">dot_cursor_y_hot</a> = 2;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100"> 57</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> gchar *<a class="code" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">dot_cursor_xpm</a>[] =</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{ <span class="stringliteral">&quot;5 5 3 1&quot;</span>, <span class="stringliteral">&quot; c None&quot;</span>, <span class="stringliteral">&quot;. c #000000&quot;</span>, <span class="stringliteral">&quot;+ c #FFFFFF&quot;</span>, <span class="stringliteral">&quot; ... &quot;</span>, <span class="stringliteral">&quot;.+++.&quot;</span>, <span class="stringliteral">&quot;.+ +.&quot;</span>, <span class="stringliteral">&quot;.+++.&quot;</span>, <span class="stringliteral">&quot; ... &quot;</span> };</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</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">#define LOCK_BUFFER(t) if (t) { CANCEL_DEFER } pthread_mutex_lock(&amp;gpdata-&gt;buffer_mutex);</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#define UNLOCK_BUFFER(t) pthread_mutex_unlock(&amp;gpdata-&gt;buffer_mutex); if (t) { CANCEL_ASYNC }</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> {</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41"> 65</a></span>&#160; <span class="keyword">enum</span> { <a class="code" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">FUNC_UPDATE_SCALE</a> } <a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783"> 66</a></span>&#160; GtkWidget * <a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f"> 67</a></span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>, <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb"> 68</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242"> 69</a></span>&#160; gboolean <a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</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="comment">/* Mutex for thread synchronization */</span></div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; pthread_mutex_t <a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* Flag to catch cancellations */</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; gboolean <a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;};</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"><a class="line" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1"> 77</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a>(<span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;{</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span> (!d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a>) {</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">switch</span> (d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a>) {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">case</span> <a class="code" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">FUNC_UPDATE_SCALE</a>:</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a>(d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, d-&gt;<a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a>);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">break</span>;</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; pthread_mutex_unlock(&amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">/* thread has been cancelled, so we must free d memory here */</span></div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; g_free(d);</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; <span class="keywordflow">return</span> G_SOURCE_REMOVE;</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;</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"><a class="line" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49"> 95</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a>(gpointer data)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d = data;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a> = TRUE;</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;</div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53"> 103</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a>(<span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d)</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;{</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">cancelled</a> = FALSE;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; pthread_cleanup_push(<a class="code" href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a>, d);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; pthread_mutex_init(&amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>, NULL);</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; pthread_mutex_lock(&amp;d-&gt;<a class="code" href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">mu</a>);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; gdk_threads_add_idle((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a>, (gpointer)d);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; pthread_mutex_lock(&amp;d-&gt;mu);</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; pthread_cleanup_pop(0);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; pthread_mutex_unlock(&amp;d-&gt;mu);</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; pthread_mutex_destroy(&amp;d-&gt;mu);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;}</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751"> 123</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">check_for_endianness</a>()</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; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a> = 1;</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">char</span> *c = (<span class="keywordtype">char</span>*) &amp;x;</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">int</span>)*c;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d"> 130</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gint event_type, gpointer p1, gpointer p2, gpointer p3)</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;{</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *event;</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">event</span> = g_new(<a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a>, 1);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">event</span>-&gt;event_type = event_type;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">switch</span> (event_type) {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>:</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">event</span>-&gt;event_data.key.keyval = GPOINTER_TO_UINT(p1);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">event</span>-&gt;event_data.key.pressed = GPOINTER_TO_INT(p2);</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>:</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">event</span>-&gt;event_data.pointer.x = GPOINTER_TO_INT(p1);</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">event</span>-&gt;event_data.pointer.y = GPOINTER_TO_INT(p2);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">event</span>-&gt;event_data.pointer.button_mask = GPOINTER_TO_INT(p3);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>:</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>:</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keyword">event</span>-&gt;event_data.text.text = g_strdup((<span class="keywordtype">char</span> *)p1);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">break</span>;</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"> 155</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; pthread_mutex_lock(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>);</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; g_queue_push_tail(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a>, event);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; pthread_mutex_unlock(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (write(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[1], <span class="stringliteral">&quot;\0&quot;</span>, 1)) {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="comment">/* Ignore */</span></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"> 164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449"> 165</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">remmina_plugin_vnc_event_free</a>(<a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *event)</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;{</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">switch</span> (event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">event_type</a>) {</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>:</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>:</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; g_free(event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text);</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keywordflow">break</span>;</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; g_free(event);</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;</div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10"> 179</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">remmina_plugin_vnc_event_free_all</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *event;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="comment">/* This is called from main thread after plugin thread has</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> * been closed, so no queue locking is necessary here */</span></div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">while</span> ((event = g_queue_pop_head(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a>)) != NULL)</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">remmina_plugin_vnc_event_free</a>(event);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;}</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0"> 191</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">remmina_plugin_vnc_scale_area</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gint *<a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, gint *<a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>, gint *<a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>, gint *h)</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"> 193</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; GtkAllocation widget_allocation;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>;</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; gint sx, sy, sw, sh;</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a> == NULL)</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">return</span>;</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; width = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; height = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; gtk_widget_get_allocation(GTK_WIDGET(gp), &amp;widget_allocation);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span> (widget_allocation.width == width &amp;&amp; widget_allocation.height == height)</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">return</span>; <span class="comment">/* Same size, no scaling */</span></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"> 210</span>&#160; <span class="comment">/* We have to extend the scaled region 2 scaled pixels, to avoid gaps */</span></div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; sx = MIN(MAX(0, (*x) * widget_allocation.width / width - widget_allocation.width / width - 2), widget_allocation.width - 1);</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; sy = MIN(MAX(0, (*y) * widget_allocation.height / height - widget_allocation.height / height - 2), widget_allocation.height - 1);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; sw = MIN(widget_allocation.width - sx, (*w) * widget_allocation.width / width + widget_allocation.width / width + 4);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; sh = MIN(widget_allocation.height - sy, (*h) * widget_allocation.height / height + widget_allocation.height / height + 4);</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; *x = sx;</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; *y = sy;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; *w = sw;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; *h = sh;</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"> 221</span>&#160;</div><div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c"> 222</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gboolean <a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="comment">/* This function can be called from a non main thread */</span></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; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</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; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">is_main_thread</a>()) {</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *d;</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; d = (<span class="keyword">struct </span><a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a> *)g_malloc(<span class="keyword">sizeof</span>(<span class="keyword">struct</span> <a class="code" href="structon_main_thread__cb__data.html">onMainThread_cb_data</a>));</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">func</a> = <a class="code" href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">FUNC_UPDATE_SCALE</a>;</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = <a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; d-&gt;<a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a> = <a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a>;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <a class="code" href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a>(d);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; g_free(d);</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; }</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; width = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; height = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">if</span> (scale)</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="comment">/* In scaled mode, drawing_area will get its dimensions from its parent */</span></div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), -1, -1);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="comment">/* In non scaled mode, the plugins forces dimensions of drawing area */</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), width, height);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">protocol_plugin_update_align</a>(gp);</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;}</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d"> 255</a></span>&#160;gboolean <a class="code" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">remmina_plugin_vnc_setcursor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;{</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; GdkCursor *cur;</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; LOCK_BUFFER(FALSE);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a> = 0;</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>) {</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; cur = gdk_cursor_new_from_surface(gdk_display_get_default(), gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">queuecursor_x</a>,</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">queuecursor_y</a>);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), cur);</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; g_object_unref(cur);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; cairo_surface_destroy(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a> = NULL;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), NULL);</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; UNLOCK_BUFFER(FALSE);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c"> 279</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">remmina_plugin_vnc_queuecursor</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, cairo_surface_t *surface, gint <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, gint <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>)</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;{</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>)</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; cairo_surface_destroy(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>);</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a> = surface;</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">queuecursor_x</a> = <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">queuecursor_y</a> = <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>;</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a>)</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a> = IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">remmina_plugin_vnc_setcursor</a>, gp);</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;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="struct___remmina_key_val.html"> 293</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_key_val.html">_RemminaKeyVal</a> {</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712"> 294</a></span>&#160; guint <a class="code" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">keyval</a>;</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8"> 295</a></span>&#160; guint16 <a class="code" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">keycode</a>;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;} <a class="code" href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">RemminaKeyVal</a>;</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;<span class="comment">/***************************** LibVNCClient related codes *********************************/</span></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"><a class="line" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece"> 300</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> uint32_t <a class="code" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">remmina_plugin_vnc_no_encrypt_auth_types</a>[] =</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;{ rfbNoAuth, rfbVncAuth, rfbMSLogon, 0 };</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8"> 303</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *<a class="code" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">remmina_plugin_vnc_event_queue_pop_head</a>(<a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata)</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; <a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *event;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; CANCEL_DEFER;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; pthread_mutex_lock(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keyword">event</span> = g_queue_pop_head(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a>);</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; pthread_mutex_unlock(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>);</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; CANCEL_ASYNC;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">return</span> event;</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"><a class="line" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383"> 318</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">remmina_plugin_vnc_process_vnc_event</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_event.html">RemminaPluginVncEvent</a> *event;</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; rfbClient *cl;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; gchar buf[100];</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; cl = (rfbClient *)gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; while ((event = <a class="code" href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">remmina_plugin_vnc_event_queue_pop_head</a>(gpdata)) != NULL) {</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <span class="keywordflow">if</span> (cl) {</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">switch</span> (event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">event_type</a>) {</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>:</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; SendKeyEvent(cl, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">key</a>.keyval, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">key</a>.pressed);</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>:</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; SendPointerEvent(cl, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">pointer</a>.x, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">pointer</a>.y,</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">pointer</a>.button_mask);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>:</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">if</span> (event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text) {</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; rfbClientLog(<span class="stringliteral">&quot;sending clipboard text &#39;%s&#39;\n&quot;</span>, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text);</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; SendClientCutText(cl, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text, strlen(event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text));</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a>:</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; TextChatOpen(cl);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>:</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; TextChatSend(cl, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">event_data</a>.<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>.text);</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">case</span> <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a>:</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; TextChatClose(cl);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; TextChatFinish(cl);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; rfbClientLog(<span class="stringliteral">&quot;Ignoring VNC event: 0x%x\n&quot;</span>, event-&gt;<a class="code" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">event_type</a>);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">break</span>;</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; }</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <a class="code" href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">remmina_plugin_vnc_event_free</a>(event);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; }</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">if</span> (read(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0], buf, <span class="keyword">sizeof</span>(buf))) {</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="comment">/* Ignore */</span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; }</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;</div><div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_cuttext_param.html"> 365</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a> {</div><div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09"> 366</a></span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * <a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">gp</a>;</div><div class="line"><a name="l00367"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30"> 367</a></span>&#160; gchar * <a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a>;</div><div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76"> 368</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">textlen</a>;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;} <a class="code" href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a>;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div><div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469"> 371</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">remmina_plugin_vnc_update_quality</a>(rfbClient *cl, gint quality)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;{</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">switch</span> (quality) {</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">case</span> 9:</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; cl-&gt;appData.useBGR233 = 0;</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;copyrect zlib hextile raw&quot;</span>;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; cl-&gt;appData.compressLevel = 1;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; cl-&gt;appData.qualityLevel = 9;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keywordflow">case</span> 2:</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; cl-&gt;appData.useBGR233 = 0;</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;tight zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; cl-&gt;appData.compressLevel = 2;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; cl-&gt;appData.qualityLevel = 7;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="keywordflow">case</span> 1:</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; cl-&gt;appData.useBGR233 = 0;</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;tight zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; cl-&gt;appData.compressLevel = 3;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; cl-&gt;appData.qualityLevel = 5;</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">case</span> 0:</div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; cl-&gt;appData.useBGR233 = 1;</div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;tight zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; cl-&gt;appData.compressLevel = 9;</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; cl-&gt;appData.qualityLevel = 1;</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">break</span>;</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"> 407</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55"> 409</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">remmina_plugin_vnc_update_colordepth</a>(rfbClient *cl, gint colordepth)</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;{</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; cl-&gt;format.depth = colordepth;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; cl-&gt;appData.requestedDepth = colordepth;</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; cl-&gt;format.trueColour = 1;</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; cl-&gt;format.bigEndian = <a class="code" href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">check_for_endianness</a>()?FALSE:TRUE;</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; <span class="keywordflow">switch</span> (colordepth) {</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">case</span> 8:</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; cl-&gt;format.depth = 8;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; cl-&gt;format.bitsPerPixel = 8;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; cl-&gt;format.blueMax = 3;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; cl-&gt;format.blueShift = 6;</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; cl-&gt;format.greenMax = 7;</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; cl-&gt;format.greenShift = 3;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; cl-&gt;format.redMax = 7;</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; cl-&gt;format.redShift = 0;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <span class="keywordflow">case</span> 16:</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; cl-&gt;format.depth = 15;</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; cl-&gt;format.bitsPerPixel = 16;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; cl-&gt;format.redShift = 11;</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; cl-&gt;format.greenShift = 6;</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; cl-&gt;format.blueShift = 1;</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; cl-&gt;format.redMax = 31;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; cl-&gt;format.greenMax = 31;</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; cl-&gt;format.blueMax = 31;</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; <span class="keywordflow">case</span> 32:</div><div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; cl-&gt;format.depth = 24;</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; cl-&gt;format.bitsPerPixel = 32;</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; cl-&gt;format.blueShift = 0;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; cl-&gt;format.redShift = 16;</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; cl-&gt;format.greenShift = 8;</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; cl-&gt;format.blueMax = 0xff;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; cl-&gt;format.redMax = 0xff;</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; cl-&gt;format.greenMax = 0xff;</div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; }</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; rfbClientLog (<span class="stringliteral">&quot;colordepth = %d\n&quot;</span>, colordepth);</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.depth = %d\n&quot;</span>, cl-&gt;format.depth);</div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.bitsPerPixel = %d\n&quot;</span>, cl-&gt;format.bitsPerPixel);</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.blueShift = %d\n&quot;</span>, cl-&gt;format.blueShift);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.redShift = %d\n&quot;</span>, cl-&gt;format.redShift);</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.trueColour = %d\n&quot;</span>, cl-&gt;format.trueColour);</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.greenShift = %d\n&quot;</span>, cl-&gt;format.greenShift);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.blueMax = %d\n&quot;</span>, cl-&gt;format.blueMax);</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.redMax = %d\n&quot;</span>, cl-&gt;format.redMax);</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.greenMax = %d\n&quot;</span>, cl-&gt;format.greenMax);</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; rfbClientLog (<span class="stringliteral">&quot;format.bigEndian = %d\n&quot;</span>, cl-&gt;format.bigEndian);</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586"> 466</a></span>&#160;<span class="keyword">static</span> rfbBool <a class="code" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">remmina_plugin_vnc_rfb_allocfb</a>(rfbClient *cl)</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;{</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>, depth, size;</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; gboolean <a class="code" href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">scale</a>;</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; cairo_surface_t *new_surface, *old_surface;</div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; width = cl-&gt;width;</div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; height = cl-&gt;height;</div><div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; depth = cl-&gt;format.bitsPerPixel;</div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; size = width * height * (depth / 8);</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; new_surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, width, height);</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <span class="keywordflow">if</span> (cairo_surface_status(new_surface) != CAIRO_STATUS_SUCCESS)</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; old_surface = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>;</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; LOCK_BUFFER(TRUE);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, width);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, height);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a> = new_surface;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>)</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; g_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a> = (guchar *)g_malloc(size);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; cl-&gt;frameBuffer = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; UNLOCK_BUFFER(TRUE);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <span class="keywordflow">if</span> (old_surface)</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; cairo_surface_destroy(old_surface);</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; scale = (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp) != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a>(gp, scale);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="comment">/* Notify window of change so that scroll border can be hidden or shown if needed */</span></div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">protocol_plugin_desktop_resize</a>(gp);</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; <span class="comment">/* Refresh the client’s updateRect - bug in xvncclient */</span></div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; cl-&gt;updateRect.w = <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; cl-&gt;updateRect.h = <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>;</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">return</span> TRUE;</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="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8"> 515</a></span>&#160;<span class="keyword">static</span> gint <a class="code" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a>(gint n)</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 b = 0;</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <span class="keywordflow">while</span> (n) {</div><div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; b++;</div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; n &gt;&gt;= 1;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; }</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <span class="keywordflow">return</span> b ? b : 1;</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc"> 526</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">remmina_plugin_vnc_queue_draw_area_real</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160;{</div><div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>, <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>, h;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">if</span> (GTK_IS_WIDGET(gp) &amp;&amp; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>) {</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; LOCK_BUFFER(FALSE);</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; x = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a>;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; y = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a>;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; w = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a>;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; h = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a>;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a> = 0;</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; UNLOCK_BUFFER(FALSE);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; gtk_widget_queue_draw_area(GTK_WIDGET(gp), x, y, w, h);</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; }</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;}</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div><div class="line"><a name="l00546"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9"> 546</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">remmina_plugin_vnc_queue_draw_area</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gint <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, gint <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>, gint <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>, gint h)</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;{</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; gint nx2, ny2, ox2, oy2;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; LOCK_BUFFER(TRUE);</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a>) {</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; nx2 = x + <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; ny2 = y + h;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; ox2 = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a> + gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a>;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; oy2 = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a> + gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a>;</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a> = MIN(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a>, x);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a> = MIN(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a>, y);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a> = MAX(ox2, nx2) - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a>;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a> = MAX(oy2, ny2) - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a>;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a> = <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>;</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a> = <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a> = <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>;</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a> = h;</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a> = IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">remmina_plugin_vnc_queue_draw_area_real</a>, gp);</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; UNLOCK_BUFFER(TRUE);</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;}</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108"> 572</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">remmina_plugin_vnc_rfb_fill_buffer</a>(rfbClient *cl, guchar *dest, gint dest_rowstride, guchar *src,</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; gint src_rowstride, guchar *mask, gint <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>, gint h)</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;{</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; guchar *srcptr;</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; gint bytesPerPixel;</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; guint32 src_pixel;</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; gint ix, iy;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; gint i;</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; guchar c;</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; gint rs, gs, bs, rm, gm, bm, rl, gl, bl, rr, gr, br;</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; gint r;</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; guint32 *destptr;</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <span class="keyword">union </span>{</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; guchar a, r, g, b;</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; } colors;</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; guint32 argb;</div><div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; } dst_pixel;</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; bytesPerPixel = cl-&gt;format.bitsPerPixel / 8;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; <span class="keywordflow">switch</span> (cl-&gt;format.bitsPerPixel) {</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keywordflow">case</span> 32:</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="comment">/* The following codes fill in the Alpha channel swap red/green value */</span></div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; <span class="keywordflow">for</span> (iy = 0; iy &lt; h; iy++) {</div><div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; destptr = (guint32 *)(dest + iy * dest_rowstride);</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; srcptr = src + iy * src_rowstride;</div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordflow">for</span> (ix = 0; ix &lt; <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>; ix++) {</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <span class="keywordflow">if</span> (!mask || *mask++) {</div><div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; dst_pixel.colors.a = 0xff;</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; dst_pixel.colors.r = *(srcptr + 2);</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; dst_pixel.colors.g = *(srcptr + 1);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; dst_pixel.colors.b = *srcptr;</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; *destptr++ = ntohl(dst_pixel.argb);</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; *destptr++ = 0;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; }</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; srcptr += 4;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; }</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; }</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; rm = cl-&gt;format.redMax;</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gm = cl-&gt;format.greenMax;</div><div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; bm = cl-&gt;format.blueMax;</div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; rr = <a class="code" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a>(rm);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; gr = <a class="code" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a>(gm);</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; br = <a class="code" href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a>(bm);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; rl = 8 - rr;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; gl = 8 - gr;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; bl = 8 - br;</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; rs = cl-&gt;format.redShift;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; gs = cl-&gt;format.greenShift;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; bs = cl-&gt;format.blueShift;</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <span class="keywordflow">for</span> (iy = 0; iy &lt; h; iy++) {</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; destptr = (guint32 *)(dest + iy * dest_rowstride);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; srcptr = src + iy * src_rowstride;</div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">for</span> (ix = 0; ix &lt; <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>; ix++) {</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; src_pixel = 0;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; bytesPerPixel; i++)</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; src_pixel += (*srcptr++) &lt;&lt; (8 * i);</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; <span class="keywordflow">if</span> (!mask || *mask++) {</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; dst_pixel.colors.a = 0xff;</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; c = (guchar)((src_pixel &gt;&gt; rs) &amp; rm) &lt;&lt; rl;</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="keywordflow">for</span> (r = rr; r &lt; 8; r *= 2)</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; c |= c &gt;&gt; r;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; dst_pixel.colors.r = c;</div><div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; c = (guchar)((src_pixel &gt;&gt; gs) &amp; gm) &lt;&lt; gl;</div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordflow">for</span> (r = gr; r &lt; 8; r *= 2)</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; c |= c &gt;&gt; r;</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; dst_pixel.colors.g = c;</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; c = (guchar)((src_pixel &gt;&gt; bs) &amp; bm) &lt;&lt; bl;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordflow">for</span> (r = br; r &lt; 8; r *= 2)</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; c |= c &gt;&gt; r;</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; dst_pixel.colors.b = c;</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; *destptr++ = ntohl(dst_pixel.argb);</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; *destptr++ = 0;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; }</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; }</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; }</div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; }</div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;}</div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;</div><div class="line"><a name="l00658"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc"> 658</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">remmina_plugin_vnc_rfb_updatefb</a>(rfbClient *cl, <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>, <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">w</a>, <span class="keywordtype">int</span> h)</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;{</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; gint bytesPerPixel;</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; gint rowstride;</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>;</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; LOCK_BUFFER(TRUE);</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">if</span> (w &gt;= 1 || h &gt;= 1) {</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; width = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; bytesPerPixel = cl-&gt;format.bitsPerPixel / 8;</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; rowstride = cairo_image_surface_get_stride(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; cairo_surface_flush(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>);</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">remmina_plugin_vnc_rfb_fill_buffer</a>(cl, cairo_image_surface_get_data(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>) + y * rowstride + x * 4,</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; rowstride, gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a> + ((y * width + x) * bytesPerPixel), width * bytesPerPixel, NULL,</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; w, h);</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; cairo_surface_mark_dirty(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>);</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; }</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">if</span> ((remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp) != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>))</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <a class="code" href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">remmina_plugin_vnc_scale_area</a>(gp, &amp;x, &amp;y, &amp;w, &amp;h);</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; UNLOCK_BUFFER(TRUE);</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; <a class="code" href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">remmina_plugin_vnc_queue_draw_area</a>(gp, x, y, w, h);</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d"> 688</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">remmina_plugin_vnc_queue_cuttext</a>(<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html">RemminaPluginVncCuttextParam</a> *param)</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;{</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">gp</a>;</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; GTimeVal t;</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; glong diff;</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *cur_charset;</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; gchar *text;</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; gsize br, bw;</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="keywordflow">if</span> (GTK_IS_WIDGET(gp) &amp;&amp; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>) {</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; diff = (t.tv_sec - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>.tv_sec) * 10</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; + (t.tv_usec - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>.tv_usec) / 100000;</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">if</span> (diff &gt;= 10) {</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a> = t;</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="comment">/* Convert text from VNC latin-1 to current GTK charset (usually UTF-8) */</span></div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; g_get_charset(&amp;cur_charset);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; text = g_convert_with_fallback(param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a>, param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">textlen</a>, cur_charset, <span class="stringliteral">&quot;ISO-8859-1&quot;</span>, <span class="stringliteral">&quot;?&quot;</span>, &amp;br, &amp;bw, NULL);</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; gtk_clipboard_set_text(gtk_clipboard_get(GDK_SELECTION_CLIPBOARD), text, bw);</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; g_free(text);</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; }</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; g_free(param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a>);</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; g_free(param);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;}</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;</div><div class="line"><a name="l00717"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1"> 717</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">remmina_plugin_vnc_rfb_cuttext</a>(rfbClient *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *text, <span class="keywordtype">int</span> textlen)</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;{</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html">RemminaPluginVncCuttextParam</a> *param;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; param = g_new(<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html">RemminaPluginVncCuttextParam</a>, 1);</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">gp</a> = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a> = g_malloc(textlen);</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; memcpy(param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">text</a>, text, textlen);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; param-&gt;<a class="code" href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">textlen</a> = textlen;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">remmina_plugin_vnc_queue_cuttext</a>, param);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;}</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;<span class="keyword">static</span> <span class="keywordtype">char</span> *</div><div class="line"><a name="l00731"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003"> 731</a></span>&#160;<a class="code" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">remmina_plugin_vnc_rfb_password</a>(rfbClient *cl)</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;{</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; gint ret;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; gchar *pwd = NULL;</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a> = TRUE;</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a>)</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; pwd = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>));</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; <span class="keywordflow">if</span> (!pwd) {</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; gboolean save;</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>),</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; _(<span class="stringliteral">&quot;Enter VNC password&quot;</span>),</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; NULL,</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; NULL,</div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; NULL);</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="keywordflow">if</span> (ret != GTK_RESPONSE_OK) {</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; <span class="keywordflow">return</span> NULL;</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; pwd = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="keywordflow">if</span> (save)</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, pwd);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</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; <span class="keywordflow">return</span> pwd;</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160;}</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;<span class="keyword">static</span> rfbCredential *</div><div class="line"><a name="l00771"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d"> 771</a></span>&#160;<a class="code" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">remmina_plugin_vnc_rfb_credential</a>(rfbClient *cl, <span class="keywordtype">int</span> credentialType)</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;{</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; rfbCredential *cred;</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; gint ret;</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160; gchar *s1, *s2;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; gboolean disablepasswordstoring;</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a> = TRUE;</div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; cred = g_new0(rfbCredential, 1);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <span class="keywordflow">switch</span> (credentialType) {</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="keywordflow">case</span> rfbCredentialTypeUser:</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; s1 = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>));</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; s2 = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>));</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a> &amp;&amp; s1 &amp;&amp; s2) {</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; cred-&gt;userCredential.username = s1;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; cred-&gt;userCredential.password = s2;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; g_free(s1);</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; g_free(s2);</div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160;</div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span>&#160; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00802"></a><span class="lineno"> 802</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a>,</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span>&#160; _(<span class="stringliteral">&quot;Enter VNC authentication credentials&quot;</span>),</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>),</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; NULL,</div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; NULL);</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; gboolean save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; cred-&gt;userCredential.username = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a>(gp);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; cred-&gt;userCredential.password = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, cred-&gt;userCredential.username);</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, cred-&gt;userCredential.password);</div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, NULL);</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; }</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; g_free(cred);</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; cred = NULL;</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</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; }</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <span class="keywordflow">case</span> rfbCredentialTypeX509:</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a> &amp;&amp;</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacert&quot;</span>)) {</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; cred-&gt;x509Credential.x509CACertFile = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacert&quot;</span>));</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; cred-&gt;x509Credential.x509CACrlFile = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;cacrl&quot;</span>));</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; cred-&gt;x509Credential.x509ClientCertFile = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientcert&quot;</span>));</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; cred-&gt;x509Credential.x509ClientKeyFile = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;clientkey&quot;</span>));</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999">protocol_plugin_init_authx509</a>(gp);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; cred-&gt;x509Credential.x509CACertFile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d">protocol_plugin_init_get_cacert</a>(gp);</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; cred-&gt;x509Credential.x509CACrlFile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5">protocol_plugin_init_get_cacrl</a>(gp);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; cred-&gt;x509Credential.x509ClientCertFile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24">protocol_plugin_init_get_clientcert</a>(gp);</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; cred-&gt;x509Credential.x509ClientKeyFile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834">protocol_plugin_init_get_clientkey</a>(gp);</div><div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; g_free(cred);</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; cred = NULL;</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; }</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; }</div><div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <span class="keywordflow">break</span>;</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"> 851</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; g_free(cred);</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; cred = NULL;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; }</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; <span class="keywordflow">return</span> cred;</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;</div><div class="line"><a name="l00859"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14"> 859</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">remmina_plugin_vnc_rfb_cursor_shape</a>(rfbClient *cl, <span class="keywordtype">int</span> xhot, <span class="keywordtype">int</span> yhot, <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <span class="keywordtype">int</span> <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>, <span class="keywordtype">int</span> bytesPerPixel)</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160;{</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a> = rfbClientGetClientData(cl, NULL);</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160; <span class="keywordtype">int</span> stride;</div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160; guchar *data;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;</div><div class="line"><a name="l00868"></a><span class="lineno"> 868</span>&#160; <span class="keywordflow">if</span> (!gtk_widget_get_window(GTK_WIDGET(gp)))</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>&#160;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; <span class="keywordflow">if</span> (width &amp;&amp; height) {</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; stride = cairo_format_stride_for_width(CAIRO_FORMAT_ARGB32, width);</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; data = g_malloc(stride * height);</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160; <a class="code" href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">remmina_plugin_vnc_rfb_fill_buffer</a>(cl, data, stride, cl-&gt;rcSource,</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; width * cl-&gt;format.bitsPerPixel / 8, cl-&gt;rcMask, width, height);</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160; surface = cairo_image_surface_create_for_data(data, CAIRO_FORMAT_ARGB32, width, height, stride);</div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160; <span class="keywordflow">if</span> (cairo_surface_status(surface) != CAIRO_STATUS_SUCCESS) {</div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160; g_free(data);</div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160; <span class="keywordflow">return</span>;</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"> 881</span>&#160; <span class="keywordflow">if</span> (cairo_surface_set_user_data(surface, NULL, NULL, g_free) != CAIRO_STATUS_SUCCESS) {</div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160; g_free(data);</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160; }</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>&#160;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160; LOCK_BUFFER(TRUE);</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; <a class="code" href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">remmina_plugin_vnc_queuecursor</a>(gp, surface, xhot, yhot);</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; UNLOCK_BUFFER(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"> 891</span>&#160;</div><div class="line"><a name="l00892"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac"> 892</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">remmina_plugin_vnc_rfb_bell</a>(rfbClient *cl)</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160;{</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; GdkWindow *window;</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160;</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)(rfbClientGetClientData(cl, NULL));</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160; window = gtk_widget_get_window(GTK_WIDGET(gp));</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160;</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160; <span class="keywordflow">if</span> (window)</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160; gdk_window_beep(window);</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;}</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>&#160;<span class="comment">/* Translate known VNC messages. It’s for intltool only, not for gcc */</span></div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>&#160;<span class="preprocessor">#ifdef __DO_NOT_COMPILE_ME__</span></div><div class="line"><a name="l00907"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e"> 907</a></span>&#160;<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Unable to connect to VNC server&quot;</span>)</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>&#160;<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(&quot;Couldn’t convert &#39;%s&#39; to host address&quot;)</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>&#160;<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(&quot;VNC connection failed: %s&quot;)</div><div class="line"><a name="l00910"></a><span class="lineno"> 910</span>&#160;<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(&quot;Your connection has been rejected.&quot;)</div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160;<span class="preprocessor">#define MAX_ERROR_LENGTH 1000</span></div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160;<span class="keyword">static</span> gchar vnc_error[MAX_ERROR_LENGTH + 1];</div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160;<span class="keyword">static</span> gboolean vnc_encryption_disable_requested;</div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160;</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> remmina_plugin_vnc_rfb_output(<span class="keyword">const</span> <span class="keywordtype">char</span> *format, ...)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; va_list args;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; va_start(args, format);</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; gchar *f, *p, *ff;</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>(!rfbEnableClientLogging)</div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; <span class="comment">/* eliminate the last \n */</span></div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; f = g_strdup(format);</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; <span class="keywordflow">if</span> (f[strlen(f) - 1] == <span class="charliteral">&#39;\n&#39;</span>) f[strlen(f) - 1] = <span class="charliteral">&#39;\0&#39;</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> (g_strcmp0(f, <span class="stringliteral">&quot;VNC connection failed: %s&quot;</span>) == 0) {</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160; p = va_arg(args, gchar *);</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160; g_snprintf(vnc_error, MAX_ERROR_LENGTH, _(f), _(p));</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (g_strcmp0(f, <span class="stringliteral">&quot;The VNC server requested an unknown authentication method. %s&quot;</span>) == 0) {</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>&#160; p = va_arg(args, gchar *);</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>&#160; <span class="keywordflow">if</span> (vnc_encryption_disable_requested) {</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; ff = g_strconcat(_(<span class="stringliteral">&quot;The VNC server requested an unknown authentication method. %s&quot;</span>),</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160; <span class="stringliteral">&quot;. &quot;</span>,</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; _(<span class="stringliteral">&quot;Please retry after turning on encryption for this profile.&quot;</span>),</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; NULL);</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>&#160; g_snprintf(vnc_error, MAX_ERROR_LENGTH, ff, p);</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span>&#160; g_free(ff);</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; g_snprintf(vnc_error, MAX_ERROR_LENGTH, _(f), p);</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; } <span class="keywordflow">else</span></div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160; g_vsnprintf(vnc_error, MAX_ERROR_LENGTH, _(f), args);</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>&#160; g_free(f);</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>&#160; va_end(args);</div><div class="line"><a name="l00948"></a><span class="lineno"> 948</span>&#160;</div><div class="line"><a name="l00949"></a><span class="lineno"> 949</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;VNC returned: %s&quot;</span>, vnc_error);</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;</div><div class="line"><a name="l00952"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a"> 952</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">remmina_plugin_vnc_chat_on_send</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> gchar *text)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00955"></a><span class="lineno"> 955</span>&#160; gchar *ptr;</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>&#160;</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>&#160; <span class="comment">/* Need to add a line-feed for UltraVNC */</span></div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>&#160; ptr = g_strdup_printf(<span class="stringliteral">&quot;%s\n&quot;</span>, text);</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>, ptr, NULL, NULL);</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>&#160; g_free(ptr);</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;</div><div class="line"><a name="l00963"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca"> 963</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">remmina_plugin_vnc_chat_on_destroy</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>&#160;{</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00966"></a><span class="lineno"> 966</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a>, NULL, NULL, NULL);</div><div class="line"><a name="l00967"></a><span class="lineno"> 967</span>&#160;}</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>&#160;</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>&#160;<span class="comment">/* Send CTRL+ALT+DEL keys keystrokes to the plugin drawing_area widget */</span></div><div class="line"><a name="l00970"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1"> 970</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">remmina_plugin_vnc_send_ctrlaltdel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>&#160; guint keys[] = { GDK_KEY_Control_L, GDK_KEY_Alt_L, GDK_KEY_Delete };</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>,</div><div class="line"><a name="l00977"></a><span class="lineno"> 977</span>&#160; keys, G_N_ELEMENTS(keys), GDK_KEY_PRESS | GDK_KEY_RELEASE);</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;</div><div class="line"><a name="l00980"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7"> 980</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">remmina_plugin_vnc_close_chat</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053">protocol_plugin_chat_close</a>(gp);</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242"> 987</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">remmina_plugin_vnc_open_chat</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l00988"></a><span class="lineno"> 988</span>&#160;{</div><div class="line"><a name="l00989"></a><span class="lineno"> 989</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00990"></a><span class="lineno"> 990</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00991"></a><span class="lineno"> 991</span>&#160; rfbClient *cl;</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; cl = (rfbClient *)gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>;</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>&#160;</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030">protocol_plugin_chat_open</a>(gp, cl-&gt;desktopName, <a class="code" href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">remmina_plugin_vnc_chat_on_send</a>,</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>&#160; <a class="code" href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">remmina_plugin_vnc_chat_on_destroy</a>);</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a>, NULL, NULL, NULL);</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>&#160;}</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;</div><div class="line"><a name="l01001"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1"> 1001</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">remmina_plugin_vnc_rfb_chat</a>(rfbClient *cl, <span class="keywordtype">int</span> value, <span class="keywordtype">char</span> *text)</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;{</div><div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>;</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160; gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)(rfbClientGetClientData(cl, NULL));</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160; <span class="keywordflow">switch</span> (value) {</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160; <span class="keywordflow">case</span> rfbTextChatOpen:</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160; IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">remmina_plugin_vnc_open_chat</a>, gp);</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160; <span class="keywordflow">case</span> rfbTextChatClose:</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160; <span class="comment">/* Do nothing… but wait for the next rfbTextChatFinished signal */</span></div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>&#160; <span class="keywordflow">case</span> rfbTextChatFinished:</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160; IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">remmina_plugin_vnc_close_chat</a>, gp);</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160; <span class="comment">/* value is the text length */</span></div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a">protocol_plugin_chat_receive</a>(gp, text);</div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160; }</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;</div><div class="line"><a name="l01024"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42"> 1024</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">remmina_plugin_vnc_incoming_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, rfbClient *cl)</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;{</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160; fd_set fds;</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;</div><div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> = ListenAtTcpPort(cl-&gt;listenPort);</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> &lt; 0)</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160;</div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550">protocol_plugin_init_show_listen</a>(gp, cl-&gt;listenPort);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749">protocol_plugin_start_reverse_tunnel</a>(gp, cl-&gt;listenPort);</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;</div><div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>&#160; FD_ZERO(&amp;fds);</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> &gt;= 0)</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160; FD_SET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>, &amp;fds);</div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160; select(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> + 1, &amp;fds, NULL, NULL, NULL);</div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>&#160;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>&#160; <span class="keywordflow">if</span> (!FD_ISSET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>, &amp;fds)) {</div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>);</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> = -1;</div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160; }</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160; <span class="keywordflow">if</span> (FD_ISSET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>, &amp;fds))</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160; cl-&gt;sock = AcceptTcpConnection(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>);</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160; <span class="keywordflow">if</span> (cl-&gt;sock &gt;= 0) {</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>);</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> = -1;</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; }</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160; <span class="keywordflow">if</span> (cl-&gt;sock &lt; 0 || !SetNonBlocking(cl-&gt;sock))</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;</div><div class="line"><a name="l01067"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02"> 1067</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">remmina_plugin_vnc_main_loop</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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"> 1069</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160; gint ret;</div><div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160; gint i;</div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160; rfbClient *cl;</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; fd_set fds;</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160; <span class="keyword">struct </span>timeval timeout;</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"> 1077</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>) {</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = FALSE;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; }</div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160; cl = (rfbClient *)gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>;</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; <span class="comment">/*</span></div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;<span class="comment"> * Do not explicitly wait while data is on the buffer, see:</span></div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;<span class="comment"> * - https://jira.glyptodon.com/browse/GUAC-1056</span></div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;<span class="comment"> * - https://jira.glyptodon.com/browse/GUAC-1056?focusedCommentId=14348&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14348</span></div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;<span class="comment"> * - https://github.com/apache/guacamole-server/blob/67680bd2d51e7949453f0f7ffc7f4234a1136715/src/protocols/vnc/vnc.c#L155</span></div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160; if (cl-&gt;buffered)</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; <span class="keywordflow">goto</span> handle_buffered;</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; timeout.tv_sec = 10;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160; timeout.tv_usec = 0;</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160; FD_ZERO(&amp;fds);</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160; FD_SET(cl-&gt;sock, &amp;fds);</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160; FD_SET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0], &amp;fds);</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160; ret = select(MAX(cl-&gt;sock, gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0]) + 1, &amp;fds, NULL, NULL, &amp;timeout);</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; <span class="comment">/* Sometimes it returns &lt;0 when opening a modal dialog in other window. Absolutely weird */</span></div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; <span class="comment">/* So we continue looping anyway */</span></div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160; <span class="keywordflow">if</span> (ret &lt;= 0)</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160; <span class="keywordflow">return</span> TRUE;</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; <span class="keywordflow">if</span> (FD_ISSET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0], &amp;fds))</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160; <a class="code" href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">remmina_plugin_vnc_process_vnc_event</a>(gp);</div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160; <span class="keywordflow">if</span> (FD_ISSET(cl-&gt;sock, &amp;fds)) {</div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160; i = WaitForMessage(cl, 500);</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; <span class="keywordflow">if</span> (i &lt; 0)</div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;handle_buffered:</div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160; <span class="keywordflow">if</span> (!HandleRFBServerMessage(cl)) {</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = FALSE;</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> &amp;&amp; !remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189">protocol_plugin_is_closed</a>(gp))</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160; }</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; }</div><div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l01123"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452"> 1123</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">remmina_plugin_vnc_main</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160; rfbClient *cl = NULL;</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160; gchar *host;</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160; gchar *s = NULL;</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;</div><div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = TRUE;</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;</div><div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; rfbClientLog = rfbClientErr = remmina_plugin_vnc_rfb_output;</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; gint colordepth = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 32);</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160; gint quality = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;quality&quot;</span>, 9);</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="keywordflow">while</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>) {</div><div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a> = FALSE;</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"> 1143</span>&#160; host = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">protocol_plugin_start_direct_tunnel</a>(gp, 5900, TRUE);</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="keywordflow">if</span> (host == NULL) {</div><div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160; }</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="comment">/* int bitsPerSample,int samplesPerPixel, int bytesPerPixel */</span></div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160; <span class="keywordflow">switch</span> (colordepth) {</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160; <span class="keywordflow">case</span> 8:</div><div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160; cl = rfbGetClient(2, 3, 1);</div><div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160; <span class="keywordflow">case</span> 15:</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160; <span class="keywordflow">case</span> 16:</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160; cl = rfbGetClient(5, 3, 2);</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160; <span class="keywordflow">case</span> 24:</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160; cl = rfbGetClient(6, 3, 3);</div><div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160; <span class="keywordflow">case</span> 32:</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160; cl = rfbGetClient(8, 3, 4);</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160; }</div><div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160; cl-&gt;MallocFrameBuffer = <a class="code" href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">remmina_plugin_vnc_rfb_allocfb</a>;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160; cl-&gt;canHandleNewFBSize = TRUE;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160; cl-&gt;GetPassword = <a class="code" href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">remmina_plugin_vnc_rfb_password</a>;</div><div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160; cl-&gt;GetCredential = <a class="code" href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">remmina_plugin_vnc_rfb_credential</a>;</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160; cl-&gt;GotFrameBufferUpdate = <a class="code" href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">remmina_plugin_vnc_rfb_updatefb</a>;</div><div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160; cl-&gt;GotXCutText = (</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE) ?</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160; NULL : <a class="code" href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">remmina_plugin_vnc_rfb_cuttext</a>);</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; cl-&gt;GotCursorShape = <a class="code" href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">remmina_plugin_vnc_rfb_cursor_shape</a>;</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160; cl-&gt;Bell = <a class="code" href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">remmina_plugin_vnc_rfb_bell</a>;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160; cl-&gt;HandleTextChat = <a class="code" href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">remmina_plugin_vnc_rfb_chat</a>;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160; rfbClientSetClientData(cl, NULL, gp);</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;</div><div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>&#160; <span class="keywordflow">if</span> (host[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>&#160; cl-&gt;serverHost = g_strdup(host);</div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160; cl-&gt;listenSpecified = TRUE;</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE))</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160; <span class="comment">/* When we use reverse tunnel, the local port does not really matter.</span></div><div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;<span class="comment"> * Hardcode a default port just in case the remote port is customized</span></div><div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160;<span class="comment"> * to a privilege port then we will have problem listening. */</span></div><div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160; cl-&gt;listenPort = 5500;</div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>&#160; cl-&gt;listenPort = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;listenport&quot;</span>, 5500);</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; <a class="code" href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">remmina_plugin_vnc_incoming_connection</a>(gp, cl);</div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(host, 5900, &amp;s, &amp;cl-&gt;serverPort);</div><div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160; cl-&gt;serverHost = g_strdup(s);</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160; g_free(s);</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;</div><div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; <span class="comment">/* Support short-form (:0, :1) */</span></div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160; <span class="keywordflow">if</span> (cl-&gt;serverPort &lt; 100)</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160; cl-&gt;serverPort += 5900;</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"> 1201</span>&#160; g_free(host);</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160; host = NULL;</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"> 1204</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy&quot;</span>)) {</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160; cl-&gt;destHost = cl-&gt;serverHost;</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160; cl-&gt;destPort = cl-&gt;serverPort;</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy&quot;</span>), 5900,</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; &amp;s, &amp;cl-&gt;serverPort);</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160; cl-&gt;serverHost = g_strdup(s);</div><div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160; g_free(s);</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"> 1213</span>&#160; cl-&gt;appData.useRemoteCursor = (</div><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;showcursor&quot;</span>, FALSE) ? FALSE : TRUE);</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"> 1216</span>&#160; <a class="code" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">remmina_plugin_vnc_update_quality</a>(cl, quality);</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160; <a class="code" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">remmina_plugin_vnc_update_colordepth</a>(cl, colordepth);</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160; <span class="keywordflow">if</span> ((cl-&gt;format.depth == 8) &amp;&amp; (quality == 9))</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;copyrect zlib hextile raw&quot;</span>;</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((cl-&gt;format.depth == 8) &amp;&amp; (quality == 2))</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((cl-&gt;format.depth == 8) &amp;&amp; (quality == 1))</div><div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((cl-&gt;format.depth == 8) &amp;&amp; (quality == 0))</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; cl-&gt;appData.encodingsString = <span class="stringliteral">&quot;zrle ultra copyrect hextile zlib corre rre raw&quot;</span>;</div><div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160; SetFormatAndEncodings(cl);</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"> 1228</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableencryption&quot;</span>, FALSE)) {</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160; vnc_encryption_disable_requested = TRUE;</div><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160; SetClientAuthSchemes(cl, <a class="code" href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">remmina_plugin_vnc_no_encrypt_auth_types</a>, -1);</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; vnc_encryption_disable_requested = FALSE;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160; }</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> (rfbInitClient(cl, NULL, NULL))</div><div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160; <span class="keywordflow">break</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; <span class="comment">/* If the authentication is not called, it has to be a fatel error and must quit */</span></div><div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a>) {</div><div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; }</div><div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;</div><div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160; <span class="comment">/* vnc4server reports &quot;already in use&quot; after authentication. Workaround here */</span></div><div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160; <span class="keywordflow">if</span> (strstr(vnc_error, <span class="stringliteral">&quot;The server is already in use&quot;</span>)) {</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = FALSE;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a> = FALSE;</div><div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160; }</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; <span class="comment">/* Otherwise, it’s a password error. Try to clear saved password if any */</span></div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>)</div><div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160; <span class="keywordflow">break</span>;</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"> 1257</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3">protocol_plugin_init_show_retry</a>(gp);</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; <span class="comment">/* It’s safer to sleep a while before reconnect */</span></div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>&#160; sleep(2);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a> = FALSE;</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160; }</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>) {</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160; <span class="keywordflow">if</span> (cl &amp;&amp; !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a> &amp;&amp; !(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">protocol_plugin_has_error</a>(gp)))</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, vnc_error);</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = FALSE;</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;</div><div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>&#160; }</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">protocol_plugin_init_save_cred</a>(gp);</div><div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>&#160;</div><div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a> = cl;</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"> 1279</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableserverinput&quot;</span>, FALSE))</div><div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>&#160; PermitServerInput(cl, 1);</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>) {</div><div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>&#160; <span class="keywordflow">while</span> (<a class="code" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">remmina_plugin_vnc_main_loop</a>(gp)) {</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = FALSE;</div><div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160; IDLE_ADD((GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">remmina_plugin_vnc_main_loop</a>, gp);</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"> 1291</span>&#160;</div><div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 1294</span>&#160;</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;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l01297"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8"> 1297</a></span>&#160;<a class="code" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">remmina_plugin_vnc_main_thread</a>(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; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, 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; CANCEL_ASYNC</div><div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>&#160; <a class="code" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">remmina_plugin_vnc_main</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)data);</div><div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 1306</span>&#160;</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"><a class="line" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80"> 1308</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_vnc_coordinates.html">RemminaPluginVncCoordinates</a> <a class="code" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gint <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>, gint <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>)</div><div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>&#160;{</div><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160; GtkAllocation widget_allocation;</div><div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_coordinates.html">RemminaPluginVncCoordinates</a> result;</div><div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160;</div><div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>&#160; <span class="keywordflow">if</span> ((remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp) != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>)) {</div><div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>&#160; gtk_widget_get_allocation(widget, &amp;widget_allocation);</div><div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>&#160; result.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a> = x * remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp) / widget_allocation.width;</div><div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>&#160; result.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a> = y * remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp) / widget_allocation.height;</div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>&#160; result.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a> = <a class="code" href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">x</a>;</div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>&#160; result.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a> = <a class="code" href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">y</a>;</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;</div><div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>&#160; <span class="keywordflow">return</span> result;</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;</div><div class="line"><a name="l01325"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1"> 1325</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">remmina_plugin_vnc_on_motion</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, GdkEventMotion *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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"> 1327</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_coordinates.html">RemminaPluginVncCoordinates</a> coordinates;</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> || !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>)</div><div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE))</div><div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;</div><div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160; coordinates = <a class="code" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a>(widget, gp, event-&gt;x, event-&gt;y);</div><div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>, GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a>), GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a>),</div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160; GINT_TO_POINTER(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a>));</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160; <span class="keywordflow">return</span> TRUE;</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"><a class="line" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a"> 1344</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">remmina_plugin_vnc_on_button</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, GdkEventButton *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;{</div><div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_coordinates.html">RemminaPluginVncCoordinates</a> coordinates;</div><div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160; gint mask;</div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> || !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>)</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE))</div><div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;</div><div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160; <span class="comment">/* We only accept 3 buttons */</span></div><div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160; <span class="keywordflow">if</span> (event-&gt;button &lt; 1 || event-&gt;button &gt; 3)</div><div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160; <span class="comment">/* We bypass 2button-press and 3button-press events */</span></div><div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160; <span class="keywordflow">if</span> (event-&gt;type != GDK_BUTTON_PRESS &amp;&amp; event-&gt;type != GDK_BUTTON_RELEASE)</div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>&#160; <span class="keywordflow">return</span> TRUE;</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; mask = (1 &lt;&lt; (<span class="keyword">event</span>-&gt;button - 1));</div><div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a> = (<span class="keyword">event</span>-&gt;type == GDK_BUTTON_PRESS ? (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a> | mask) :</div><div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>&#160; (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a> &amp; (0xff - mask)));</div><div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>&#160;</div><div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>&#160; coordinates = <a class="code" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a>(widget, gp, event-&gt;x, event-&gt;y);</div><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>, GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a>), GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a>),</div><div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160; GINT_TO_POINTER(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a>));</div><div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697"> 1375</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">remmina_plugin_vnc_on_scroll</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, GdkEventScroll *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_coordinates.html">RemminaPluginVncCoordinates</a> coordinates;</div><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160; gint mask;</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> || !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>)</div><div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE))</div><div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160; <span class="keywordflow">return</span> FALSE;</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">switch</span> (event-&gt;direction) {</div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_UP:</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160; mask = (1 &lt;&lt; 3);</div><div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_DOWN:</div><div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160; mask = (1 &lt;&lt; 4);</div><div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_LEFT:</div><div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160; mask = (1 &lt;&lt; 5);</div><div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_RIGHT:</div><div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160; mask = (1 &lt;&lt; 6);</div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;<span class="preprocessor">#ifdef GDK_SCROLL_SMOOTH</span></div><div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160; <span class="keywordflow">case</span> GDK_SCROLL_SMOOTH:</div><div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &lt; 0)</div><div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160; mask = (1 &lt;&lt; 3);</div><div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_y &gt; 0)</div><div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160; mask = (1 &lt;&lt; 4);</div><div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_x &lt; 0)</div><div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160; mask = (1 &lt;&lt; 5);</div><div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160; <span class="keywordflow">if</span> (event-&gt;delta_x &gt; 0)</div><div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160; mask = (1 &lt;&lt; 6);</div><div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160; <span class="keywordflow">if</span> (!mask)</div><div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160; coordinates = <a class="code" href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a>(widget, gp, event-&gt;x, event-&gt;y);</div><div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>, GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a>), GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a>),</div><div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160; GINT_TO_POINTER(mask | gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a>));</div><div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>, GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">x</a>), GINT_TO_POINTER(coordinates.<a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a>),</div><div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160; GINT_TO_POINTER(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a>));</div><div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;</div><div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160; <span class="keywordflow">return</span> TRUE;</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"><a class="line" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4"> 1429</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">remmina_plugin_vnc_release_key</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, guint16 keycode)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160; <a class="code" href="struct___remmina_key_val.html">RemminaKeyVal</a> *k;</div><div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; gint i;</div><div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;</div><div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; <span class="keywordflow">if</span> (!gpdata)</div><div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;</div><div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160; <span class="keywordflow">if</span> (keycode == 0) {</div><div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160; <span class="comment">/* Send all release key events for previously pressed keys */</span></div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>-&gt;len; i++) {</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160; k = g_ptr_array_index(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, i);</div><div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>, GUINT_TO_POINTER(k-&gt;<a class="code" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">keyval</a>),</div><div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; GINT_TO_POINTER(FALSE), NULL);</div><div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160; g_free(k);</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; g_ptr_array_set_size(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, 0);</div><div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160; <span class="comment">/* Unregister the keycode only */</span></div><div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>-&gt;len; i++) {</div><div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160; k = g_ptr_array_index(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, i);</div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160; <span class="keywordflow">if</span> (k-&gt;<a class="code" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">keycode</a> == keycode) {</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160; g_free(k);</div><div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160; g_ptr_array_remove_index_fast(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, i);</div><div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160; }</div><div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160; }</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;}</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"><a class="line" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81"> 1461</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">remmina_plugin_vnc_on_key</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, GdkEventKey *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;{</div><div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160; <a class="code" href="struct___remmina_key_val.html">RemminaKeyVal</a> *k;</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160; guint event_keyval;</div><div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160; guint keyval;</div><div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160; <span class="keywordtype">int</span> i;</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> || !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>)</div><div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE))</div><div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;</div><div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>&#160; <span class="comment">/* When sending key release, try first to find out a previously sent keyval</span></div><div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>&#160;<span class="comment"> * to workaround bugs like https://bugs.freedesktop.org/show_bug.cgi?id=7430 */</span></div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>&#160;</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span>&#160; event_keyval = <span class="keyword">event</span>-&gt;keyval;</div><div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>&#160; <span class="keywordflow">if</span> (event-&gt;type == GDK_KEY_RELEASE) {</div><div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>-&gt;len; i++) {</div><div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>&#160; k = g_ptr_array_index(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, i);</div><div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>&#160; <span class="keywordflow">if</span> (k-&gt;<a class="code" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">keycode</a> == event-&gt;hardware_keycode) {</div><div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>&#160; event_keyval = k-&gt;<a class="code" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">keyval</a>;</div><div class="line"><a name="l01486"></a><span class="lineno"> 1486</span>&#160; <span class="keywordflow">break</span>;</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; }</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;</div><div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>&#160; keyval = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2">pref_keymap_get_keyval</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;keymap&quot;</span>),</div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>&#160; event_keyval);</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; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>, GUINT_TO_POINTER(keyval),</div><div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>&#160; GINT_TO_POINTER(event-&gt;type == GDK_KEY_PRESS ? TRUE : FALSE), NULL);</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; <span class="comment">/* Register/unregister the pressed key */</span></div><div class="line"><a name="l01498"></a><span class="lineno"> 1498</span>&#160; <span class="keywordflow">if</span> (event-&gt;type == GDK_KEY_PRESS) {</div><div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>&#160; k = g_new(<a class="code" href="struct___remmina_key_val.html">RemminaKeyVal</a>, 1);</div><div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>&#160; k-&gt;<a class="code" href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">keyval</a> = keyval;</div><div class="line"><a name="l01501"></a><span class="lineno"> 1501</span>&#160; k-&gt;<a class="code" href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">keycode</a> = <span class="keyword">event</span>-&gt;hardware_keycode;</div><div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>&#160; g_ptr_array_add(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, k);</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; <a class="code" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">remmina_plugin_vnc_release_key</a>(gp, event-&gt;hardware_keycode);</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160; }</div><div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;}</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"><a class="line" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99"> 1509</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">remmina_plugin_vnc_on_cuttext_request</a>(GtkClipboard *clipboard, <span class="keyword">const</span> gchar *text, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160; GTimeVal t;</div><div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; glong diff;</div><div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160; gsize br, bw;</div><div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; gchar *latin1_text;</div><div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *cur_charset;</div><div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160;</div><div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160; <span class="keywordflow">if</span> (text) {</div><div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160; <span class="comment">/* A timer (1 second) to avoid clipboard &quot;loopback&quot;: text cut out from VNC won’t paste back into VNC */</span></div><div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160; g_get_current_time(&amp;t);</div><div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; diff = (t.tv_sec - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>.tv_sec) * 10</div><div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160; + (t.tv_usec - gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>.tv_usec) / 100000;</div><div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160; <span class="keywordflow">if</span> (diff &lt; 10)</div><div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160; <span class="keywordflow">return</span>;</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a> = t;</div><div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; <span class="comment">/* Convert text from current charset to latin-1 before sending to remote server.</span></div><div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;<span class="comment"> * See RFC6143 7.5.6 */</span></div><div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; g_get_charset(&amp;cur_charset);</div><div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160; latin1_text = g_convert_with_fallback(text, -1, <span class="stringliteral">&quot;ISO-8859-1&quot;</span>, cur_charset, <span class="stringliteral">&quot;?&quot;</span>, &amp;br, &amp;bw, NULL);</div><div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160; <a class="code" href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a>(gp, <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>, (gpointer)latin1_text, NULL, NULL);</div><div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160; g_free(latin1_text);</div><div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160; }</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;</div><div class="line"><a name="l01537"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d"> 1537</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">remmina_plugin_vnc_on_cuttext</a>(GtkClipboard *clipboard, GdkEvent *event, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;{</div><div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</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; <span class="keywordflow">if</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> || !gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>)</div><div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;viewonly&quot;</span>, FALSE))</div><div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160; <span class="keywordflow">return</span>;</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; gtk_clipboard_request_text(clipboard, (GtkClipboardTextReceivedFunc)<a class="code" href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">remmina_plugin_vnc_on_cuttext_request</a>, gp);</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"><a class="line" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a"> 1552</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">remmina_plugin_vnc_on_realize</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, gpointer data)</div><div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160;{</div><div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160; GdkCursor *cursor;</div><div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; GdkPixbuf *pixbuf;</div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160;</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;</div><div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;showcursor&quot;</span>, FALSE)) {</div><div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160; <span class="comment">/* Hide local cursor (show a small dot instead) */</span></div><div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160; pixbuf = gdk_pixbuf_new_from_xpm_data(<a class="code" href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">dot_cursor_xpm</a>);</div><div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; cursor = gdk_cursor_new_from_pixbuf(gdk_display_get_default(), pixbuf, <a class="code" href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">dot_cursor_x_hot</a>, <a class="code" href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">dot_cursor_y_hot</a>);</div><div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160; g_object_unref(pixbuf);</div><div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160; gdk_window_set_cursor(gtk_widget_get_window(GTK_WIDGET(gp)), cursor);</div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; g_object_unref(cursor);</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160; }</div><div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;}</div><div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;</div><div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;<span class="comment">/******************************************************************************************/</span></div><div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;</div><div class="line"><a name="l01573"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f"> 1573</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160;{</div><div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;</div><div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160;</div><div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a> = TRUE;</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>);</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; g_signal_connect(G_OBJECT(gp), <span class="stringliteral">&quot;realize&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">remmina_plugin_vnc_on_realize</a>), NULL);</div><div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;motion-notify-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">remmina_plugin_vnc_on_motion</a>), gp);</div><div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;button-press-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">remmina_plugin_vnc_on_button</a>), gp);</div><div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;button-release-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">remmina_plugin_vnc_on_button</a>), gp);</div><div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;scroll-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">remmina_plugin_vnc_on_scroll</a>), gp);</div><div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;key-press-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">remmina_plugin_vnc_on_key</a>), gp);</div><div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;key-release-event&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">remmina_plugin_vnc_on_key</a>), gp);</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; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableclipboard&quot;</span>, FALSE))</div><div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a> = g_signal_connect(G_OBJECT(gtk_clipboard_get(GDK_SELECTION_CLIPBOARD)),</div><div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160; <span class="stringliteral">&quot;owner-change&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">remmina_plugin_vnc_on_cuttext</a>), <a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>);</div><div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160;</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="keywordflow">if</span> (pthread_create(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>, NULL, <a class="code" href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">remmina_plugin_vnc_main_thread</a>, gp)) {</div><div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; <span class="comment">/* I don’t think this will ever happen… */</span></div><div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160; g_print(<span class="stringliteral">&quot;Failed to initialize pthread. Falling back to non-thread mode…\n&quot;</span>);</div><div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; g_timeout_add(0, (GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">remmina_plugin_vnc_main</a>, gp);</div><div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a> = 0;</div><div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160; }</div><div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;</div><div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160;}</div><div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160;</div><div class="line"><a name="l01608"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61"> 1608</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">remmina_plugin_vnc_close_connection_timeout</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160;{</div><div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</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">/* wait until the running attribute is set to false by the VNC thread */</span></div><div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a>)</div><div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160; <span class="keywordflow">return</span> 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">/* unregister the clipboard monitor */</span></div><div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a>) {</div><div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160; g_signal_handler_disconnect(G_OBJECT(gtk_clipboard_get(GDK_SELECTION_CLIPBOARD)), gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a>);</div><div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a> = 0;</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;</div><div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a>) {</div><div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160; g_source_remove(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a>);</div><div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a> = 0;</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>) {</div><div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160; cairo_surface_destroy(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>);</div><div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a> = NULL;</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;</div><div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a>) {</div><div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160; g_source_remove(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a>);</div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a> = 0;</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> &gt;= 0)</div><div class="line"><a name="l01637"></a><span class="lineno"> 1637</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>);</div><div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>) {</div><div class="line"><a name="l01639"></a><span class="lineno"> 1639</span>&#160; rfbClientCleanup((rfbClient *)gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>);</div><div class="line"><a name="l01640"></a><span class="lineno"> 1640</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a> = NULL;</div><div class="line"><a name="l01641"></a><span class="lineno"> 1641</span>&#160; }</div><div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>) {</div><div class="line"><a name="l01643"></a><span class="lineno"> 1643</span>&#160; cairo_surface_destroy(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>);</div><div class="line"><a name="l01644"></a><span class="lineno"> 1644</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a> = NULL;</div><div class="line"><a name="l01645"></a><span class="lineno"> 1645</span>&#160; }</div><div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>) {</div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160; g_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>);</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a> = NULL;</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; g_ptr_array_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>, TRUE);</div><div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160; <a class="code" href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">remmina_plugin_vnc_event_free_all</a>(gp);</div><div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160; g_queue_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a>);</div><div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160; pthread_mutex_destroy(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>);</div><div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0]);</div><div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160; close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[1]);</div><div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;</div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160; pthread_mutex_destroy(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">buffer_mutex</a>);</div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>&#160;</div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span>&#160;}</div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>&#160;</div><div class="line"><a name="l01664"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688"> 1664</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>&#160;{</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</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="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>) {</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160; pthread_cancel(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>);</div><div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>) pthread_join(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>, NULL);</div><div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a> = FALSE;</div><div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160; <a class="code" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">remmina_plugin_vnc_close_connection_timeout</a>(gp);</div><div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160; g_timeout_add(200, (GSourceFunc)<a class="code" href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">remmina_plugin_vnc_close_connection_timeout</a>, gp);</div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160; }</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;</div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;}</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span>&#160;</div><div class="line"><a name="l01683"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44"> 1683</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>&#160;{</div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>&#160;</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_PREF_DISABLESERVERINPUT:</div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>&#160; <span class="keywordflow">return</span> SupportsClient2Server((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>), rfbSetServerInput) ? TRUE : FALSE;</div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_TOOL_CHAT:</div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>&#160; <span class="keywordflow">return</span> SupportsClient2Server((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>), rfbTextChat) ? TRUE : FALSE;</div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>&#160; }</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>&#160;}</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>&#160;</div><div class="line"><a name="l01698"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6"> 1698</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;{</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160;</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_PREF_QUALITY:</div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160; <a class="code" href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">remmina_plugin_vnc_update_quality</a>((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>),</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;quality&quot;</span>, 9));</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160; <a class="code" href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">remmina_plugin_vnc_update_colordepth</a>((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>),</div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 32));</div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160; SetFormatAndEncodings((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>));</div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_PREF_VIEWONLY:</div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_PREF_DISABLESERVERINPUT:</div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>&#160; PermitServerInput((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>),</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disableserverinput&quot;</span>, FALSE) ? 1 : 0);</div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_UNFOCUS:</div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>&#160; <a class="code" href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">remmina_plugin_vnc_release_key</a>(gp, 0);</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_SCALE:</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>&#160; <a class="code" href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a>(gp, remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;scale&quot;</span>, FALSE));</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_TOOL_REFRESH:</div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>&#160; SendFramebufferUpdateRequest((rfbClient *)(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>), 0, 0,</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp),</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp), FALSE);</div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_TOOL_CHAT:</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160; <a class="code" href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">remmina_plugin_vnc_open_chat</a>(gp);</div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_VNC_FEATURE_TOOL_SENDCTRLALTDEL:</div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160; <a class="code" href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">remmina_plugin_vnc_send_ctrlaltdel</a>(gp);</div><div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160; }</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;</div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>&#160;<span class="comment">/* Send a keystroke to the plugin window */</span></div><div class="line"><a name="l01742"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e"> 1742</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>, <span class="keyword">const</span> guint keystrokes[], <span class="keyword">const</span> gint keylen)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>,</div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>&#160; keystrokes, keylen, GDK_KEY_PRESS | GDK_KEY_RELEASE);</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span>&#160; <span class="keywordflow">return</span>;</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;</div><div class="line"><a name="l01751"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4"> 1751</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">remmina_plugin_vnc_on_draw</a>(GtkWidget *<a class="code" href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">widget</a>, cairo_t *context, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01752"></a><span class="lineno"> 1752</span>&#160;{</div><div class="line"><a name="l01753"></a><span class="lineno"> 1753</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160; gint <a class="code" href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">width</a>, <a class="code" href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">height</a>;</div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160; GtkAllocation widget_allocation;</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160; LOCK_BUFFER(FALSE);</div><div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160;</div><div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160; surface = gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>;</div><div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160; <span class="keywordflow">if</span> (!surface) {</div><div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160; UNLOCK_BUFFER(FALSE);</div><div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160; }</div><div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160;</div><div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160; width = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">protocol_plugin_get_width</a>(gp);</div><div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160; height = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">protocol_plugin_get_height</a>(gp);</div><div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;</div><div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160; <span class="keywordflow">if</span> ((remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">remmina_protocol_widget_get_current_scale_mode</a>(gp) != <a class="code" href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a>)) {</div><div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160; gtk_widget_get_allocation(widget, &amp;widget_allocation);</div><div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160; cairo_scale(context,</div><div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160; (<span class="keywordtype">double</span>)widget_allocation.width / width,</div><div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160; (<span class="keywordtype">double</span>)widget_allocation.height / height);</div><div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160; }</div><div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160;</div><div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160; cairo_rectangle(context, 0, 0, width, height);</div><div class="line"><a name="l01778"></a><span class="lineno"> 1778</span>&#160; cairo_set_source_surface(context, surface, 0, 0);</div><div class="line"><a name="l01779"></a><span class="lineno"> 1779</span>&#160; cairo_fill(context);</div><div class="line"><a name="l01780"></a><span class="lineno"> 1780</span>&#160;</div><div class="line"><a name="l01781"></a><span class="lineno"> 1781</span>&#160; UNLOCK_BUFFER(FALSE);</div><div class="line"><a name="l01782"></a><span class="lineno"> 1782</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01783"></a><span class="lineno"> 1783</span>&#160;}</div><div class="line"><a name="l01784"></a><span class="lineno"> 1784</span>&#160;</div><div class="line"><a name="l01785"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0"> 1785</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *<a class="code" href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">gp</a>)</div><div class="line"><a name="l01786"></a><span class="lineno"> 1786</span>&#160;{</div><div class="line"><a name="l01787"></a><span class="lineno"> 1787</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01788"></a><span class="lineno"> 1788</span>&#160; <a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a> *gpdata;</div><div class="line"><a name="l01789"></a><span class="lineno"> 1789</span>&#160; gint flags;</div><div class="line"><a name="l01790"></a><span class="lineno"> 1790</span>&#160;</div><div class="line"><a name="l01791"></a><span class="lineno"> 1791</span>&#160; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_vnc_data.html">RemminaPluginVncData</a>, 1);</div><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;</div><div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a> = gtk_drawing_area_new();</div><div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>);</div><div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>);</div><div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;</div><div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160; gtk_widget_add_events(</div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>,</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160; GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160; | GDK_KEY_RELEASE_MASK | GDK_SCROLL_MASK);</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160; gtk_widget_set_can_focus(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>, TRUE);</div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160;</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160;</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>), <span class="stringliteral">&quot;draw&quot;</span>, G_CALLBACK(<a class="code" href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">remmina_plugin_vnc_on_draw</a>), gp);</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;</div><div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a> = TRUE;</div><div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160; g_get_current_time(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>);</div><div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a> = -1;</div><div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a> = g_ptr_array_new();</div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a> = g_queue_new();</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160; pthread_mutex_init(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>, NULL);</div><div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160; <span class="keywordflow">if</span> (pipe(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>)) {</div><div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160; g_print(<span class="stringliteral">&quot;Error creating pipes.\n&quot;</span>);</div><div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0] = 0;</div><div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[1] = 0;</div><div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160; }</div><div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160; flags = fcntl(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0], F_GETFL, 0);</div><div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160; fcntl(gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[0], F_SETFL, flags | O_NONBLOCK);</div><div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;</div><div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160; pthread_mutex_init(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">buffer_mutex</a>, NULL);</div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160;}</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160;<span class="comment">/* Array of key/value pairs for color depths */</span></div><div class="line"><a name="l01825"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1"> 1825</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>[] =</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160;{</div><div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160; <span class="stringliteral">&quot;32&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True color (32 bpp)&quot;</span>),</div><div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160; <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High color (16 bpp)&quot;</span>),</div><div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160; <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colors (8 bpp)&quot;</span>),</div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160; NULL</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160;};</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;<span class="comment">/* Array of key/value pairs for quality selection */</span></div><div class="line"><a name="l01834"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7"> 1834</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>[] =</div><div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160;{</div><div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160; <span class="stringliteral">&quot;9&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Best (slowest)&quot;</span>),</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Good&quot;</span>),</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160; <span class="stringliteral">&quot;1&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Medium&quot;</span>),</div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Poor (fastest)&quot;</span>),</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160; NULL</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160;};</div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160;</div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01852"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3"> 1852</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a>[] =</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>&#160;{</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, <span class="stringliteral">&quot;_rfb._tcp&quot;</span>, NULL },</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;proxy&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Repeater&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01856"></a><span class="lineno"> 1856</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Color depth&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>, <span class="stringliteral">&quot;keymap&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160;};</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160;</div><div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l01872"></a><span class="lineno"> 1872</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01873"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57"> 1873</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a>[] =</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span>&#160;{</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;listenport&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Listen on port&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01876"></a><span class="lineno"> 1876</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Color depth&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;quality&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Quality&quot;</span>), FALSE, <a class="code" href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a>, NULL },</div><div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a>, <span class="stringliteral">&quot;keymap&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160;};</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160;</div><div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l01893"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7"> 1893</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a>[] =</div><div class="line"><a name="l01894"></a><span class="lineno"> 1894</span>&#160;{</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Show remote cursor&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;viewonly&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableclipboard&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable clipboard sync&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableencryption&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable encryption&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disableserverinput&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable server input&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160;};</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;</div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l01906"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21"> 1906</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a>[] =</div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160;{</div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_QUALITY, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_RADIO), <span class="stringliteral">&quot;quality&quot;</span>,</div><div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160; quality_list },</div><div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_VIEWONLY, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;viewonly&quot;</span>,</div><div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;View only&quot;</span>) },</div><div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a>, REMMINA_PLUGIN_VNC_FEATURE_PREF_DISABLESERVERINPUT, GINT_TO_POINTER(REMMINA_PROTOCOL_FEATURE_PREF_CHECK), <span class="stringliteral">&quot;disableserverinput&quot;</span>,<a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disable server input&quot;</span>) },</div><div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_REFRESH, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Refresh&quot;</span>), NULL, NULL },</div><div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_CHAT, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Open Chat…&quot;</span>), <span class="stringliteral">&quot;face-smile&quot;</span>, NULL },</div><div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_VNC_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a>, REMMINA_PLUGIN_VNC_FEATURE_SCALE, NULL, NULL, NULL },</div><div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a>, REMMINA_PLUGIN_VNC_FEATURE_UNFOCUS, NULL, NULL, NULL },</div><div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160;};</div><div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160;</div><div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l01922"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea"> 1922</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea">remmina_plugin_vnc</a> =</div><div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;{</div><div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160; VNC_PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; VNC_PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160; VNC_PLUGIN_VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160; VNC_PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160; VNC_PLUGIN_SSH_APPICON, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160; <a class="code" href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160; <a class="code" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160; <a class="code" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160; <a class="code" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160; <a class="code" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160; <a class="code" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160; <a class="code" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160; <a class="code" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a> <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160;};</div><div class="line"><a name="l01942"></a><span class="lineno"> 1942</span>&#160;</div><div class="line"><a name="l01943"></a><span class="lineno"> 1943</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l01944"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9"> 1944</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9">remmina_plugin_vnci</a> =</div><div class="line"><a name="l01945"></a><span class="lineno"> 1945</span>&#160;{</div><div class="line"><a name="l01946"></a><span class="lineno"> 1946</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160; VNCI_PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160; VNCI_PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160; VNCI_PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160; VNCI_PLUGIN_SSH_APPICON, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; <a class="code" href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160; <a class="code" href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160; <a class="code" href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160; <a class="code" href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160; <a class="code" href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l01960"></a><span class="lineno"> 1960</span>&#160; <a class="code" href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l01961"></a><span class="lineno"> 1961</span>&#160; <a class="code" href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l01962"></a><span class="lineno"> 1962</span>&#160; <a class="code" href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a>, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l01963"></a><span class="lineno"> 1963</span>&#160; NULL <span class="comment">// No screenshot support available</span></div><div class="line"><a name="l01964"></a><span class="lineno"> 1964</span>&#160;};</div><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;</div><div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l01967"></a><span class="lineno"><a class="line" href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 1967</a></span>&#160;<a class="code" href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</div><div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160;{</div><div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160;</div><div class="line"><a name="l01972"></a><span class="lineno"> 1972</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l01973"></a><span class="lineno"> 1973</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l01974"></a><span class="lineno"> 1974</span>&#160;</div><div class="line"><a name="l01975"></a><span class="lineno"> 1975</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_plugin_vnc))</div><div class="line"><a name="l01976"></a><span class="lineno"> 1976</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01977"></a><span class="lineno"> 1977</span>&#160;</div><div class="line"><a name="l01978"></a><span class="lineno"> 1978</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_plugin_vnci))</div><div class="line"><a name="l01979"></a><span class="lineno"> 1979</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l01980"></a><span class="lineno"> 1980</span>&#160;</div><div class="line"><a name="l01981"></a><span class="lineno"> 1981</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l01982"></a><span class="lineno"> 1982</span>&#160;}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7bce24c89cf4554a664693a6b5e1a78d"><div class="ttname"><a href="vnc__plugin_8c.html#a7bce24c89cf4554a664693a6b5e1a78d">remmina_plugin_vnc_on_cuttext</a></div><div class="ttdeci">static void remmina_plugin_vnc_on_cuttext(GtkClipboard *clipboard, GdkEvent *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01537">vnc_plugin.c:1537</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a782a902d036e12eb08bfcd1006c12b97"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">_RemminaPluginVncData::auth_called</a></div><div class="ttdeci">gboolean auth_called</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00058">vnc_plugin.h:58</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_af1a91949fa5f1c5ff978046e8186a5f8"><div class="ttname"><a href="vnc__plugin_8c.html#af1a91949fa5f1c5ff978046e8186a5f8">remmina_plugin_vnc_bits</a></div><div class="ttdeci">static gint remmina_plugin_vnc_bits(gint n)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00515">vnc_plugin.c:515</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_acb2067d0a9a7a7e6d9f26b0357fbf0e1"><div class="ttname"><a href="vnc__plugin_8c.html#acb2067d0a9a7a7e6d9f26b0357fbf0e1">remmina_plugin_vnc_send_ctrlaltdel</a></div><div class="ttdeci">static void remmina_plugin_vnc_send_ctrlaltdel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00970">vnc_plugin.c:970</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_acf12d2c89046160dddcae35af84e5e57"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">_RemminaPluginVncData::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00062">vnc_plugin.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9e481e56c9970b741a109c0af04c650d"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9e481e56c9970b741a109c0af04c650d">_RemminaPluginService::protocol_plugin_init_get_cacert</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_cacert)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00180">plugin.h:180</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00100">vnc_plugin.h:100</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a83f3c05d16949a06cdddb5c7432b5053"><div class="ttname"><a href="struct___remmina_plugin_service.html#a83f3c05d16949a06cdddb5c7432b5053">_RemminaPluginService::protocol_plugin_chat_close</a></div><div class="ttdeci">void(* protocol_plugin_chat_close)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00191">plugin.h:191</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a18ba6738d4a3d84a4a38e45ecc0e704a"><div class="ttname"><a href="vnc__plugin_8c.html#a18ba6738d4a3d84a4a38e45ecc0e704a">remmina_plugin_vnc_on_realize</a></div><div class="ttdeci">static void remmina_plugin_vnc_on_realize(RemminaProtocolWidget *gp, gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01552">vnc_plugin.c:1552</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a464a014fb0aef74b464587f351cdf49f"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a464a014fb0aef74b464587f351cdf49f">_RemminaPluginVncEvent::key</a></div><div class="ttdeci">struct _RemminaPluginVncEvent::@61::@62 key</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_aeae081d32acaa79294cba7adaf6c57dd"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">_RemminaPluginVncData::queuecursor_y</a></div><div class="ttdeci">gint queuecursor_y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00073">vnc_plugin.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae97f4052c4bbda628682ae071ada27ed"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae97f4052c4bbda628682ae071ada27ed">_RemminaPluginService::remmina_protocol_widget_get_current_scale_mode</a></div><div class="ttdeci">RemminaScaleMode(* remmina_protocol_widget_get_current_scale_mode)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00154">plugin.h:154</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_af0d50114cec8cfdd7692a39c1fdba783"><div class="ttname"><a href="structon_main_thread__cb__data.html#af0d50114cec8cfdd7692a39c1fdba783">onMainThread_cb_data::widget</a></div><div class="ttdeci">GtkWidget * widget</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00066">vnc_plugin.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a58be4b85cfe9050078599d73df2c21f0"><div class="ttname"><a href="vnc__plugin_8c.html#a58be4b85cfe9050078599d73df2c21f0">remmina_plugin_vnc_init</a></div><div class="ttdeci">static void remmina_plugin_vnc_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01785">vnc_plugin.c:1785</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a2819729ddf9ffa92927a4ef7d3a6e0f8"><div class="ttname"><a href="structon_main_thread__cb__data.html#a2819729ddf9ffa92927a4ef7d3a6e0f8">onMainThread_cb_data::w</a></div><div class="ttdeci">Window w</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00072">nx_plugin.c:72</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a79891d24c0e6257efceeefb3c10d8c65"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">_RemminaPluginVncEvent::text</a></div><div class="ttdeci">gchar * text</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00113">vnc_plugin.h:113</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_af77b4e3099a5d382aa4b840e4aecaadc"><div class="ttname"><a href="vnc__plugin_8c.html#af77b4e3099a5d382aa4b840e4aecaadc">remmina_plugin_vnc_rfb_updatefb</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_updatefb(rfbClient *cl, int x, int y, int w, int h)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00658">vnc_plugin.c:658</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a093245037037f681c4ffe6356d916a02"><div class="ttname"><a href="vnc__plugin_8c.html#a093245037037f681c4ffe6356d916a02">remmina_plugin_vnc_main_loop</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_main_loop(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01067">vnc_plugin.c:1067</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac432221a82ead6babe045cbf18061a0b"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac432221a82ead6babe045cbf18061a0b">_RemminaPluginService::protocol_plugin_init_save_cred</a></div><div class="ttdeci">void(* protocol_plugin_init_save_cred)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00184">plugin.h:184</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab9cd44cc6ac7467e6c31c3d5fe77ac21"><div class="ttname"><a href="vnc__plugin_8c.html#ab9cd44cc6ac7467e6c31c3d5fe77ac21">remmina_plugin_vnc_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_vnc_features[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01906">vnc_plugin.c:1906</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a01923764292c3ab42dbcb43a9bb438a5"><div class="ttname"><a href="vnc__plugin_8c.html#a01923764292c3ab42dbcb43a9bb438a5">dot_cursor_y_hot</a></div><div class="ttdeci">static int dot_cursor_y_hot</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00056">vnc_plugin.c:56</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="vnc__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01825">vnc_plugin.c:1825</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00096">vnc_plugin.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a63683e6046384d902a573e150801e0d3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a63683e6046384d902a573e150801e0d3">_RemminaPluginService::protocol_plugin_init_show_retry</a></div><div class="ttdeci">void(* protocol_plugin_init_show_retry)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00186">plugin.h:186</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aa09286b99e12ea23e6a6ea14c5488469"><div class="ttname"><a href="vnc__plugin_8c.html#aa09286b99e12ea23e6a6ea14c5488469">remmina_plugin_vnc_update_quality</a></div><div class="ttdeci">static void remmina_plugin_vnc_update_quality(rfbClient *cl, gint quality)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00371">vnc_plugin.c:371</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a0e175ab5a31b720d9d7dfc6923ce3c6a"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">_RemminaPluginVncData::vnc_event_queue</a></div><div class="ttdeci">GQueue * vnc_event_queue</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00084">vnc_plugin.h:84</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a390e3b371156197feb518b737a31cc53"><div class="ttname"><a href="vnc__plugin_8c.html#a390e3b371156197feb518b737a31cc53">onMainThread_schedule_callback_and_wait</a></div><div class="ttdeci">static void onMainThread_schedule_callback_and_wait(struct onMainThread_cb_data *d)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00103">vnc_plugin.c:103</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a317c3aca2102f38bc876c95413701a80"><div class="ttname"><a href="vnc__plugin_8c.html#a317c3aca2102f38bc876c95413701a80">remmina_plugin_vnc_scale_coordinates</a></div><div class="ttdeci">static RemminaPluginVncCoordinates remmina_plugin_vnc_scale_coordinates(GtkWidget *widget, RemminaProtocolWidget *gp, gint x, gint y)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01308">vnc_plugin.c:1308</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00097">vnc_plugin.h:97</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ad67a66a0788c440bd755e300645155c1"><div class="ttname"><a href="vnc__plugin_8c.html#ad67a66a0788c440bd755e300645155c1">remmina_plugin_vnc_rfb_cuttext</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_cuttext(rfbClient *cl, const char *text, int textlen)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00717">vnc_plugin.c:717</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5d655f538f7a29657c664bdd0117dcfb"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">_RemminaPluginVncData::queuecursor_surface</a></div><div class="ttdeci">cairo_surface_t * queuecursor_surface</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00072">vnc_plugin.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a5dea604d34a804e23a5cd8a6683d9e49"><div class="ttname"><a href="vnc__plugin_8c.html#a5dea604d34a804e23a5cd8a6683d9e49">onMainThread_cleanup_handler</a></div><div class="ttdeci">static void onMainThread_cleanup_handler(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00095">vnc_plugin.c:95</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7149c702b5beec6fccbf5d4207e0ff55"><div class="ttname"><a href="vnc__plugin_8c.html#a7149c702b5beec6fccbf5d4207e0ff55">remmina_plugin_vnc_update_colordepth</a></div><div class="ttdeci">static void remmina_plugin_vnc_update_colordepth(rfbClient *cl, gint colordepth)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00409">vnc_plugin.c:409</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ae185dbf1d0a8f2f2d225b7f7a2d1deb8"><div class="ttname"><a href="vnc__plugin_8c.html#ae185dbf1d0a8f2f2d225b7f7a2d1deb8">remmina_plugin_vnc_event_queue_pop_head</a></div><div class="ttdeci">static RemminaPluginVncEvent * remmina_plugin_vnc_event_queue_pop_head(RemminaPluginVncData *gpdata)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00303">vnc_plugin.c:303</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a80cd2a03f3f695edbb1ac9ee8c680a5c"><div class="ttname"><a href="vnc__plugin_8c.html#a80cd2a03f3f695edbb1ac9ee8c680a5c">remmina_plugin_vnc_queuecursor</a></div><div class="ttdeci">static void remmina_plugin_vnc_queuecursor(RemminaProtocolWidget *gp, cairo_surface_t *surface, gint x, gint y)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00279">vnc_plugin.c:279</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a1f57bda271e77f086885101650e8d82c"><div class="ttname"><a href="vnc__plugin_8c.html#a1f57bda271e77f086885101650e8d82c">remmina_plugin_vnc_update_scale</a></div><div class="ttdeci">static void remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00222">vnc_plugin.c:222</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a14aaefd3fdb0038689972d672a87f6d2"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">_RemminaPluginVncData::queuedraw_w</a></div><div class="ttdeci">gint queuedraw_w</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7c5de526e0adaee6df2654987d92a834"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7c5de526e0adaee6df2654987d92a834">_RemminaPluginService::protocol_plugin_init_get_clientkey</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_clientkey)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00183">plugin.h:183</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a2b47331cd4f72ee2c69573ffb3142c10"><div class="ttname"><a href="vnc__plugin_8c.html#a2b47331cd4f72ee2c69573ffb3142c10">remmina_plugin_vnc_event_free_all</a></div><div class="ttdeci">static void remmina_plugin_vnc_event_free_all(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00179">vnc_plugin.c:179</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41"><div class="ttname"><a href="structon_main_thread__cb__data.html#a998d94200166f05e952e7130719799a7af505d0b00d46515c4ab37b643567af41">onMainThread_cb_data::FUNC_UPDATE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00065">vnc_plugin.c:65</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aea5839c1087d585275c487093112f2ac"><div class="ttname"><a href="vnc__plugin_8c.html#aea5839c1087d585275c487093112f2ac">remmina_plugin_vnc_rfb_bell</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_bell(rfbClient *cl)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00892">vnc_plugin.c:892</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ad43b46448de165f501529d6b203ca8ca"><div class="ttname"><a href="vnc__plugin_8c.html#ad43b46448de165f501529d6b203ca8ca">remmina_plugin_vnc_chat_on_destroy</a></div><div class="ttdeci">static void remmina_plugin_vnc_chat_on_destroy(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00963">vnc_plugin.c:963</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a29fb120041bcace9f201cbdf3a3f6f2f"><div class="ttname"><a href="vnc__plugin_8c.html#a29fb120041bcace9f201cbdf3a3f6f2f">remmina_plugin_vnc_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01573">vnc_plugin.c:1573</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_af7838da89b30d194de8d5571e2130364"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">_RemminaPluginVncData::queuecursor_handler</a></div><div class="ttdeci">guint queuecursor_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00074">vnc_plugin.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0884b2124ba4ea3f747f00bbe91135d2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0884b2124ba4ea3f747f00bbe91135d2">_RemminaPluginService::pref_keymap_get_keyval</a></div><div class="ttdeci">guint(* pref_keymap_get_keyval)(const gchar *keymap, guint keyval)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00212">plugin.h:212</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad0f29c76e2ec9ea145faab2313e94749"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad0f29c76e2ec9ea145faab2313e94749">_RemminaPluginService::protocol_plugin_start_reverse_tunnel</a></div><div class="ttdeci">gboolean(* protocol_plugin_start_reverse_tunnel)(RemminaProtocolWidget *gp, gint local_port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00164">plugin.h:164</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_coordinates_html_ad385abd59c1f49bdb244fd679efb5b3e"><div class="ttname"><a href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">_RemminaPluginVncCoordinates::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00119">vnc_plugin.h:119</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a5e82957848c696045b21f365827e11c7"><div class="ttname"><a href="vnc__plugin_8c.html#a5e82957848c696045b21f365827e11c7">remmina_plugin_vnc_close_chat</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_close_chat(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00980">vnc_plugin.c:980</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8908f48e85693e75dc871ed7e2eb1ddc"><div class="ttname"><a href="vnc__plugin_8c.html#a8908f48e85693e75dc871ed7e2eb1ddc">remmina_plugin_vnc_queue_draw_area_real</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_queue_draw_area_real(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00526">vnc_plugin.c:526</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aa6380a77d4119e8ce70c2d46fd60aece"><div class="ttname"><a href="vnc__plugin_8c.html#aa6380a77d4119e8ce70c2d46fd60aece">remmina_plugin_vnc_no_encrypt_auth_types</a></div><div class="ttdeci">static const uint32_t remmina_plugin_vnc_no_encrypt_auth_types[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00300">vnc_plugin.c:300</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a289d56662190215fffd46338a57133d9"><div class="ttname"><a href="vnc__plugin_8c.html#a289d56662190215fffd46338a57133d9">remmina_plugin_vnci</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_vnci</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01944">vnc_plugin.c:1944</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_a4eac7cd317ef677917c2fa7b1859a189"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4eac7cd317ef677917c2fa7b1859a189">_RemminaPluginService::protocol_plugin_is_closed</a></div><div class="ttdeci">gboolean(* protocol_plugin_is_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00159">plugin.h:159</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a885240d470f95a89ac67051da38fa01d"><div class="ttname"><a href="vnc__plugin_8c.html#a885240d470f95a89ac67051da38fa01d">remmina_plugin_vnc_event_push</a></div><div class="ttdeci">static void remmina_plugin_vnc_event_push(RemminaProtocolWidget *gp, gint event_type, gpointer p1, gpointer p2, gpointer p3)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00130">vnc_plugin.c:130</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2d6704aa58ecc18ecc178ea418addd87"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService::protocol_plugin_send_keys_signals</a></div><div class="ttdeci">void(* protocol_plugin_send_keys_signals)(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00193">plugin.h:193</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_cuttext_param_html_a3623cf203470ce741397e972fb12ab76"><div class="ttname"><a href="struct___remmina_plugin_vnc_cuttext_param.html#a3623cf203470ce741397e972fb12ab76">_RemminaPluginVncCuttextParam::textlen</a></div><div class="ttdeci">gint textlen</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00368">vnc_plugin.c:368</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_adf255b7ceaec6a51fc9269cf824a02ce"><div class="ttname"><a href="struct___remmina_plugin_service.html#adf255b7ceaec6a51fc9269cf824a02ce">_RemminaPluginService::protocol_plugin_get_width</a></div><div class="ttdeci">gint(* protocol_plugin_get_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00150">plugin.h:150</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a1aaa1353346af3f9e18347768d5dc5b1"><div class="ttname"><a href="vnc__plugin_8c.html#a1aaa1353346af3f9e18347768d5dc5b1">remmina_plugin_vnc_rfb_chat</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_chat(rfbClient *cl, int value, char *text)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01001">vnc_plugin.c:1001</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab553977a035eea4d913b2cfaaf49a003"><div class="ttname"><a href="vnc__plugin_8c.html#ab553977a035eea4d913b2cfaaf49a003">remmina_plugin_vnc_rfb_password</a></div><div class="ttdeci">static char * remmina_plugin_vnc_rfb_password(rfbClient *cl)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00731">vnc_plugin.c:731</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8525912fbb407209875f84448abec8c7"><div class="ttname"><a href="vnc__plugin_8c.html#a8525912fbb407209875f84448abec8c7">remmina_plugin_vnc_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnc_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01893">vnc_plugin.c:1893</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a8bf0f89b3c961ac28ccae9a9e1060db4"><div class="ttname"><a href="structon_main_thread__cb__data.html#a8bf0f89b3c961ac28ccae9a9e1060db4">onMainThread_cb_data::width</a></div><div class="ttdeci">gint width</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aaadab3f5fde957f5faa7ee6347bb1c6d"><div class="ttname"><a href="struct___remmina_plugin_service.html#aaadab3f5fde957f5faa7ee6347bb1c6d">_RemminaPluginService::protocol_plugin_update_align</a></div><div class="ttdeci">void(* protocol_plugin_update_align)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00169">plugin.h:169</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a881a79477d6e122c0aed7d5528ab6b9a"><div class="ttname"><a href="struct___remmina_plugin_service.html#a881a79477d6e122c0aed7d5528ab6b9a">_RemminaPluginService::protocol_plugin_chat_receive</a></div><div class="ttdeci">void(* protocol_plugin_chat_receive)(RemminaProtocolWidget *gp, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00192">plugin.h:192</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a626a6a09f076b133df208d5bc04233b6"><div class="ttname"><a href="vnc__plugin_8c.html#a626a6a09f076b133df208d5bc04233b6">remmina_plugin_vnc_call_feature</a></div><div class="ttdeci">static void remmina_plugin_vnc_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01698">vnc_plugin.c:1698</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_af55aa025154991f8c762e93074eec242"><div class="ttname"><a href="structon_main_thread__cb__data.html#af55aa025154991f8c762e93074eec242">onMainThread_cb_data::scale</a></div><div class="ttdeci">gboolean scale</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00069">vnc_plugin.c:69</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7f128e63501e5f28aaf50c6d77111b14"><div class="ttname"><a href="vnc__plugin_8c.html#a7f128e63501e5f28aaf50c6d77111b14">remmina_plugin_vnc_rfb_cursor_shape</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_cursor_shape(rfbClient *cl, int xhot, int yhot, int width, int height, int bytesPerPixel)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00859">vnc_plugin.c:859</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5b85e81358d36bc4772b95cb9856e2ca"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">_RemminaPluginVncData::vnc_buffer</a></div><div class="ttdeci">guchar * vnc_buffer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00063">vnc_plugin.h:63</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a954db5d93dbd612c1f64c3a3b05b97ea"><div class="ttname"><a href="vnc__plugin_8c.html#a954db5d93dbd612c1f64c3a3b05b97ea">remmina_plugin_vnc</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_vnc</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01922">vnc_plugin.c:1922</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a26774624e955f451f7e4270c36622527">REMMINA_PROTOCOL_FEATURE_TYPE_PREF</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00045">types.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_key_val_html_a9d3b8298be454a8f6d9a678e2a14e2e8"><div class="ttname"><a href="struct___remmina_key_val.html#a9d3b8298be454a8f6d9a678e2a14e2e8">_RemminaKeyVal::keycode</a></div><div class="ttdeci">guint16 keycode</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00295">vnc_plugin.c:295</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a673281e9b313ad358b1a426dcf6238c2"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">_RemminaPluginVncData::queuecursor_x</a></div><div class="ttdeci">gint queuecursor_x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00073">vnc_plugin.h:73</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5affe302f5d3151bfe99607edf308c3c9f">REMMINA_PROTOCOL_FEATURE_TYPE_SCALE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00048">types.h:48</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a7fa113e651e76230f66ca23135f2c688"><div class="ttname"><a href="vnc__plugin_8c.html#a7fa113e651e76230f66ca23135f2c688">remmina_plugin_vnc_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01664">vnc_plugin.c:1664</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aeeb18a588e3d003bf3adcaa6eb1697ff"><div class="ttname"><a href="vnc__plugin_8c.html#aeeb18a588e3d003bf3adcaa6eb1697ff">dot_cursor_x_hot</a></div><div class="ttdeci">static int dot_cursor_x_hot</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00055">vnc_plugin.c:55</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a09a73e5d8e44a505154432e91cc8af4e"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">_RemminaPluginVncData::queuedraw_y</a></div><div class="ttdeci">gint queuedraw_y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af2b857b2de1af3621f543b810f68b17b"><div class="ttname"><a href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService::protocol_plugin_init_get_savepassword</a></div><div class="ttdeci">gboolean(* protocol_plugin_init_get_savepassword)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00178">plugin.h:178</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_ac4e1f4b6fc95c31896cc50f315312f93"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">_RemminaPluginVncData::running</a></div><div class="ttdeci">gboolean running</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00056">vnc_plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a83e35d80f04cb3d6a8cc883f6a089a24"><div class="ttname"><a href="struct___remmina_plugin_service.html#a83e35d80f04cb3d6a8cc883f6a089a24">_RemminaPluginService::protocol_plugin_init_get_clientcert</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_clientcert)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00182">plugin.h:182</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a0453c0a0676675e91ba19318dc9b06e0"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">_RemminaPluginVncData::pressed_keys</a></div><div class="ttdeci">GPtrArray * pressed_keys</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00081">vnc_plugin.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a4de43e091ed0b511921b87f2d456e990"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">_RemminaPluginVncData::queuedraw_h</a></div><div class="ttdeci">gint queuedraw_h</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a0ffbaa26908fd25e653dfaf5ad8ccff0"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">_RemminaPluginVncEvent::event_type</a></div><div class="ttdeci">gint event_type</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00101">vnc_plugin.h:101</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a2ec48a513b23088125e7363a1832437e"><div class="ttname"><a href="vnc__plugin_8c.html#a2ec48a513b23088125e7363a1832437e">RemminaKeyVal</a></div><div class="ttdeci">struct _RemminaKeyVal RemminaKeyVal</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5412ada4c656d0053f0656bed890c030"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">_RemminaPluginVncData::rgb_buffer</a></div><div class="ttdeci">cairo_surface_t * rgb_buffer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00064">vnc_plugin.h:64</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a1266cacd4af9e75fb043669f88fbd108"><div class="ttname"><a href="vnc__plugin_8c.html#a1266cacd4af9e75fb043669f88fbd108">remmina_plugin_vnc_rfb_fill_buffer</a></div><div class="ttdeci">static void remmina_plugin_vnc_rfb_fill_buffer(rfbClient *cl, guchar *dest, gint dest_rowstride, guchar *src, gint src_rowstride, guchar *mask, gint w, gint h)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00572">vnc_plugin.c:572</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ac0d402aa12eeef76a267a3b27e85fbb0"><div class="ttname"><a href="vnc__plugin_8c.html#ac0d402aa12eeef76a267a3b27e85fbb0">remmina_plugin_vnc_scale_area</a></div><div class="ttdeci">static void remmina_plugin_vnc_scale_area(RemminaProtocolWidget *gp, gint *x, gint *y, gint *w, gint *h)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00191">vnc_plugin.c:191</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_coordinates_html_a33c99179134cf900b66103767766ed3a"><div class="ttname"><a href="struct___remmina_plugin_vnc_coordinates.html#a33c99179134cf900b66103767766ed3a">_RemminaPluginVncCoordinates::x</a></div><div class="ttdeci">gint x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00119">vnc_plugin.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a2958d10774cc6fc28a0bfa0b1c843095"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">_RemminaPluginVncData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00087">vnc_plugin.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aae9ff42cb268892f94cf7ed3070d4b5a"><div class="ttname"><a href="vnc__plugin_8c.html#aae9ff42cb268892f94cf7ed3070d4b5a">remmina_plugin_vnc_chat_on_send</a></div><div class="ttdeci">static void remmina_plugin_vnc_chat_on_send(RemminaProtocolWidget *gp, const gchar *text)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00952">vnc_plugin.c:952</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abfb79da3d96ca4aa219eae9c73b0b53f"><div class="ttname"><a href="struct___remmina_plugin_service.html#abfb79da3d96ca4aa219eae9c73b0b53f">_RemminaPluginService::protocol_plugin_has_error</a></div><div class="ttdeci">gboolean(* protocol_plugin_has_error)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00157">plugin.h:157</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_ab105fe07330946ed3687ad2d06fabe95"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">_RemminaPluginVncData::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00054">vnc_plugin.h:54</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_cuttext_param_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_cuttext_param.html">_RemminaPluginVncCuttextParam</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00365">vnc_plugin.c:365</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a14c13d425ace0c90144b0e486e6893b8"><div class="ttname"><a href="vnc__plugin_8c.html#a14c13d425ace0c90144b0e486e6893b8">remmina_plugin_vnc_main_thread</a></div><div class="ttdeci">static gpointer remmina_plugin_vnc_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01297">vnc_plugin.c:1297</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a625ea21fb2d92cb8489d3c9e5a2477ea"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">_RemminaPluginVncData::vnc_event_pipe</a></div><div class="ttdeci">gint vnc_event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00085">vnc_plugin.h:85</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a4f528272dda8a3538cbdce39254ecc81"><div class="ttname"><a href="vnc__plugin_8c.html#a4f528272dda8a3538cbdce39254ecc81">remmina_plugin_vnc_on_key</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_on_key(GtkWidget *widget, GdkEventKey *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01461">vnc_plugin.c:1461</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab8bbe7ce317cb9e97da8bf0e34459030"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab8bbe7ce317cb9e97da8bf0e34459030">_RemminaPluginService::protocol_plugin_chat_open</a></div><div class="ttdeci">void(* protocol_plugin_chat_open)(RemminaProtocolWidget *gp, const gchar *name, void(*on_send)(RemminaProtocolWidget *gp, const gchar *text), void(*on_destroy)(RemminaProtocolWidget *gp))</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00190">plugin.h:190</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00093">vnc_plugin.h:93</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00094">vnc_plugin.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a54c773d5581087b272a9377893b92999"><div class="ttname"><a href="struct___remmina_plugin_service.html#a54c773d5581087b272a9377893b92999">_RemminaPluginService::protocol_plugin_init_authx509</a></div><div class="ttdeci">gint(* protocol_plugin_init_authx509)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00179">plugin.h:179</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a987d6ebfa00d29578dada803f33d6a99"><div class="ttname"><a href="vnc__plugin_8c.html#a987d6ebfa00d29578dada803f33d6a99">remmina_plugin_vnc_on_cuttext_request</a></div><div class="ttdeci">static void remmina_plugin_vnc_on_cuttext_request(GtkClipboard *clipboard, const gchar *text, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01509">vnc_plugin.c:1509</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a92fd0bfc7715dcb8237a002850701222"><div class="ttname"><a href="structon_main_thread__cb__data.html#a92fd0bfc7715dcb8237a002850701222">onMainThread_cb_data::x</a></div><div class="ttdeci">gint x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_ab96d7c0c53fbe95aa88610b319aad895"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#ab96d7c0c53fbe95aa88610b319aad895">_RemminaPluginVncEvent::pointer</a></div><div class="ttdeci">struct _RemminaPluginVncEvent::@61::@63 pointer</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5b17067fb2b9437f1fdf607334dfade3"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">_RemminaPluginVncData::auth_first</a></div><div class="ttdeci">gboolean auth_first</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00060">vnc_plugin.h:60</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_aec2ab8de1fa3f948ada7bd70ce2b353f"><div class="ttname"><a href="structon_main_thread__cb__data.html#aec2ab8de1fa3f948ada7bd70ce2b353f">onMainThread_cb_data::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa159850f20499e5bc1067f533d2fa820"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa159850f20499e5bc1067f533d2fa820">_RemminaPluginService::protocol_plugin_get_height</a></div><div class="ttdeci">gint(* protocol_plugin_get_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00152">plugin.h:152</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9b4cfe0a97a34260e58784feef693704"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService::protocol_plugin_init_auth</a></div><div class="ttdeci">gint(* protocol_plugin_init_auth)(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00172">plugin.h:172</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_acd2e5f24279a00e0d426d67604dc8fbc"><div class="ttname"><a href="structon_main_thread__cb__data.html#acd2e5f24279a00e0d426d67604dc8fbc">onMainThread_cb_data::mu</a></div><div class="ttdeci">pthread_mutex_t mu</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00075">nx_plugin.c:75</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a3ba650386c03a1daa8a46546c81820c4"><div class="ttname"><a href="vnc__plugin_8c.html#a3ba650386c03a1daa8a46546c81820c4">remmina_plugin_vnc_release_key</a></div><div class="ttdeci">static void remmina_plugin_vnc_release_key(RemminaProtocolWidget *gp, guint16 keycode)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01429">vnc_plugin.c:1429</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_ae1c4269d260792a4cdb1c160229d3172"><div class="ttname"><a href="structon_main_thread__cb__data.html#ae1c4269d260792a4cdb1c160229d3172">onMainThread_cb_data::func</a></div><div class="ttdeci">enum onMainThread_cb_data::@37 func</div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aa0b52e3e065b5042bed7cd9eb0561c5d"><div class="ttname"><a href="vnc__plugin_8c.html#aa0b52e3e065b5042bed7cd9eb0561c5d">remmina_plugin_vnc_queue_cuttext</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_queue_cuttext(RemminaPluginVncCuttextParam *param)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00688">vnc_plugin.c:688</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a6f8fd3a6a5f00aef49bd4e3404be5697"><div class="ttname"><a href="vnc__plugin_8c.html#a6f8fd3a6a5f00aef49bd4e3404be5697">remmina_plugin_vnc_on_scroll</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_on_scroll(GtkWidget *widget, GdkEventScroll *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01375">vnc_plugin.c:1375</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_adf7b4c8b2fa3722af25cc40dc66a83b9"><div class="ttname"><a href="vnc__plugin_8c.html#adf7b4c8b2fa3722af25cc40dc66a83b9">remmina_plugin_vnc_queue_draw_area</a></div><div class="ttdeci">static void remmina_plugin_vnc_queue_draw_area(RemminaProtocolWidget *gp, gint x, gint y, gint w, gint h)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00546">vnc_plugin.c:546</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_cuttext_param_html_a3acb975cf5fb33970f68bed221978a09"><div class="ttname"><a href="struct___remmina_plugin_vnc_cuttext_param.html#a3acb975cf5fb33970f68bed221978a09">_RemminaPluginVncCuttextParam::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00366">vnc_plugin.c:366</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a9ba8e968998b64b3832e484a2ca7dfc1"><div class="ttname"><a href="vnc__plugin_8c.html#a9ba8e968998b64b3832e484a2ca7dfc1">onMainThread_cb</a></div><div class="ttdeci">static gboolean onMainThread_cb(struct onMainThread_cb_data *d)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00077">vnc_plugin.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a3c4413fdc098cf2dd9a1ff336c20356e"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">_RemminaPluginVncData::queuedraw_x</a></div><div class="ttdeci">gint queuedraw_x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a4047890129d7177dc5f813f2947e7a3c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">_RemminaPluginVncData::button_mask</a></div><div class="ttdeci">gint button_mask</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00079">vnc_plugin.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a734f491f20072acdcbebb41e36bafe2f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a734f491f20072acdcbebb41e36bafe2f">_RemminaPluginService::protocol_plugin_desktop_resize</a></div><div class="ttdeci">void(* protocol_plugin_desktop_resize)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00171">plugin.h:171</a></div></div>
+<div class="ttc" id="types_8h_html_aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd"><div class="ttname"><a href="types_8h.html#aeea5ee1e675368413b6f6ab09883e7dead50ff64ad1e14caf78956850f03871bd">REMMINA_PROTOCOL_WIDGET_SCALE_MODE_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00118">types.h:118</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00092">vnc_plugin.h:92</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a4d672e305030849447b5b8b522d82242"><div class="ttname"><a href="vnc__plugin_8c.html#a4d672e305030849447b5b8b522d82242">remmina_plugin_vnc_open_chat</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_open_chat(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00987">vnc_plugin.c:987</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a33bc751b1d5728b624bfa57814504f90"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">_RemminaPluginVncData::client</a></div><div class="ttdeci">gpointer client</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00076">vnc_plugin.h:76</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a6497b38386d6de20157b0baf75dcbf44"><div class="ttname"><a href="vnc__plugin_8c.html#a6497b38386d6de20157b0baf75dcbf44">remmina_plugin_vnc_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01683">vnc_plugin.c:1683</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8648ba06e3c1b7093147ae9a1c576452"><div class="ttname"><a href="vnc__plugin_8c.html#a8648ba06e3c1b7093147ae9a1c576452">remmina_plugin_vnc_main</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_main(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01123">vnc_plugin.c:1123</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_cuttext_param_html_a435d7b845e1d90c3bfbe5e5a7be19b30"><div class="ttname"><a href="struct___remmina_plugin_vnc_cuttext_param.html#a435d7b845e1d90c3bfbe5e5a7be19b30">_RemminaPluginVncCuttextParam::text</a></div><div class="ttdeci">gchar * text</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00367">vnc_plugin.c:367</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a8b2de0c8917cafa414c0b9ed4c29aee3"><div class="ttname"><a href="vnc__plugin_8c.html#a8b2de0c8917cafa414c0b9ed4c29aee3">remmina_plugin_vnc_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnc_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01852">vnc_plugin.c:1852</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac892dd297fae87868752a1f86e07937d"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService::protocol_plugin_init_get_username</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_username)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00175">plugin.h:175</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a781dfc8cb5371260bbf358fa7d9e3751"><div class="ttname"><a href="vnc__plugin_8c.html#a781dfc8cb5371260bbf358fa7d9e3751">check_for_endianness</a></div><div class="ttdeci">static gboolean check_for_endianness()</div><div class="ttdoc">Function check_for_endianness() returns 1, if architecture is little endian, 0 in case of big endian...</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00123">vnc_plugin.c:123</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad98eaa3efc0214bc701dc66b5730e174"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService::protocol_plugin_init_get_password</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_password)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00176">plugin.h:176</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ade7041eba0e97ab146e2bc418982f100"><div class="ttname"><a href="vnc__plugin_8c.html#ade7041eba0e97ab146e2bc418982f100">dot_cursor_xpm</a></div><div class="ttdeci">static const gchar * dot_cursor_xpm[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00057">vnc_plugin.c:57</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab3bb0ef97fadc9782e47cf1dd011a19d"><div class="ttname"><a href="vnc__plugin_8c.html#ab3bb0ef97fadc9782e47cf1dd011a19d">remmina_plugin_vnc_rfb_credential</a></div><div class="ttdeci">static rfbCredential * remmina_plugin_vnc_rfb_credential(rfbClient *cl, int credentialType)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00771">vnc_plugin.c:771</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a0658dd6adcfaf5cb52d6d99c97c352d1">REMMINA_PROTOCOL_FEATURE_TYPE_UNFOCUS</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00047">types.h:47</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a91cf510208363f5678c65f420d2d0586"><div class="ttname"><a href="vnc__plugin_8c.html#a91cf510208363f5678c65f420d2d0586">remmina_plugin_vnc_rfb_allocfb</a></div><div class="ttdeci">static rfbBool remmina_plugin_vnc_rfb_allocfb(rfbClient *cl)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00466">vnc_plugin.c:466</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_coordinates_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00118">vnc_plugin.h:118</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad9418344a7f597351e3cc5639be78425">REMMINA_PROTOCOL_SETTING_TYPE_KEYMAP</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00084">types.h:84</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a8c3e9e03bc8b3ed04ee93a2c0281b5c6"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">_RemminaPluginVncData::queuedraw_handler</a></div><div class="ttdeci">guint queuedraw_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00067">vnc_plugin.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_af834392929e0be100534bcc4a4d6df3c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">_RemminaPluginVncData::clipboard_handler</a></div><div class="ttdeci">gulong clipboard_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00069">vnc_plugin.h:69</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aee8a8cf42ad03be152f4f5a751798383"><div class="ttname"><a href="vnc__plugin_8c.html#aee8a8cf42ad03be152f4f5a751798383">remmina_plugin_vnc_process_vnc_event</a></div><div class="ttdeci">static void remmina_plugin_vnc_process_vnc_event(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00318">vnc_plugin.c:318</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00052">vnc_plugin.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a41dc885437b90c87b6a8b4367b0ba63c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">_RemminaPluginVncData::listen_sock</a></div><div class="ttdeci">gint listen_sock</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00077">vnc_plugin.h:77</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_aa01cccfd573952ec0cd5df823e2d8f74"><div class="ttname"><a href="structon_main_thread__cb__data.html#aa01cccfd573952ec0cd5df823e2d8f74">onMainThread_cb_data::height</a></div><div class="ttdeci">gint height</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00067">vnc_plugin.c:67</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a058e64c8178484c3c76da43b9b80d307"><div class="ttname"><a href="vnc__plugin_8c.html#a058e64c8178484c3c76da43b9b80d307">RemminaPluginVncCuttextParam</a></div><div class="ttdeci">struct _RemminaPluginVncCuttextParam RemminaPluginVncCuttextParam</div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_ad4019cdd5ac560eb1cd47d9f924831bb"><div class="ttname"><a href="structon_main_thread__cb__data.html#ad4019cdd5ac560eb1cd47d9f924831bb">onMainThread_cb_data::gp</a></div><div class="ttdeci">RemminaProtocolWidget * gp</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00068">vnc_plugin.c:68</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a824b3ab6d51d0ba65abdbd0e788edb89"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">_RemminaPluginVncData::buffer_mutex</a></div><div class="ttdeci">pthread_mutex_t buffer_mutex</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00088">vnc_plugin.h:88</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="vnc__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00053">vnc_plugin.c:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae95121f8f944c058d4f0683073f79183"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae95121f8f944c058d4f0683073f79183">_RemminaPluginService::protocol_plugin_start_direct_tunnel</a></div><div class="ttdeci">gchar *(* protocol_plugin_start_direct_tunnel)(RemminaProtocolWidget *gp, gint default_port, gboolean port_plus)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00163">plugin.h:163</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html"><div class="ttname"><a href="vnc__plugin_8h.html">vnc_plugin.h</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a2f71ac2987eeec94430308f6f36840cd">REMMINA_PROTOCOL_SSH_SETTING_REVERSE_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00107">types.h:107</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a8d1c34496a6def21e5ad7d871cd581b5"><div class="ttname"><a href="struct___remmina_plugin_service.html#a8d1c34496a6def21e5ad7d871cd581b5">_RemminaPluginService::protocol_plugin_init_get_cacrl</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_cacrl)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00181">plugin.h:181</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a64254af45bb17a5a40a3a0383daa3fe7"><div class="ttname"><a href="vnc__plugin_8c.html#a64254af45bb17a5a40a3a0383daa3fe7">quality_list</a></div><div class="ttdeci">static gpointer quality_list[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01834">vnc_plugin.c:1834</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a47762f374c697476aed0a36ed26a0aa1"><div class="ttname"><a href="vnc__plugin_8c.html#a47762f374c697476aed0a36ed26a0aa1">remmina_plugin_vnc_on_motion</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_on_motion(GtkWidget *widget, GdkEventMotion *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01325">vnc_plugin.c:1325</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a9fc1c7e877a675b10282918e418c9bbc"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">_RemminaPluginVncData::clipboard_timer</a></div><div class="ttdeci">GTimeVal clipboard_timer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00070">vnc_plugin.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00095">vnc_plugin.h:95</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a5a66b50e38de8f8f7ff4c47455145a61"><div class="ttname"><a href="vnc__plugin_8c.html#a5a66b50e38de8f8f7ff4c47455145a61">remmina_plugin_vnc_close_connection_timeout</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_close_connection_timeout(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01608">vnc_plugin.c:1608</a></div></div>
+<div class="ttc" id="struct___remmina_key_val_html"><div class="ttname"><a href="struct___remmina_key_val.html">_RemminaKeyVal</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00293">vnc_plugin.c:293</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a50903bb7e69828cee9c16e8367715a42"><div class="ttname"><a href="vnc__plugin_8c.html#a50903bb7e69828cee9c16e8367715a42">remmina_plugin_vnc_incoming_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_incoming_connection(RemminaProtocolWidget *gp, rfbClient *cl)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01024">vnc_plugin.c:1024</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aca3ee6dd15dd0da8017a1560e0dc7e0d"><div class="ttname"><a href="vnc__plugin_8c.html#aca3ee6dd15dd0da8017a1560e0dc7e0d">remmina_plugin_vnc_setcursor</a></div><div class="ttdeci">gboolean remmina_plugin_vnc_setcursor(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00255">vnc_plugin.c:255</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a997a36825f2338b8e06bcd59becef61b"><div class="ttname"><a href="struct___remmina_plugin_service.html#a997a36825f2338b8e06bcd59becef61b">_RemminaPluginService::is_main_thread</a></div><div class="ttdeci">gboolean(* is_main_thread)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00222">plugin.h:222</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html"><div class="ttname"><a href="structon_main_thread__cb__data.html">onMainThread_cb_data</a></div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00068">nx_plugin.c:68</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5f8bcbfe873d4949852e9624e1c43063"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">_RemminaPluginVncData::vnc_event_queue_mutex</a></div><div class="ttdeci">pthread_mutex_t vnc_event_queue_mutex</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00083">vnc_plugin.h:83</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="vnc__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01967">vnc_plugin.c:1967</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a4dc4f7fbf26336d69aa468e6d81d9b0a"><div class="ttname"><a href="vnc__plugin_8c.html#a4dc4f7fbf26336d69aa468e6d81d9b0a">remmina_plugin_vnc_on_button</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_on_button(GtkWidget *widget, GdkEventButton *event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01344">vnc_plugin.c:1344</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2a2ce8e15512459b816ce22cfe5c0550"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2a2ce8e15512459b816ce22cfe5c0550">_RemminaPluginService::protocol_plugin_init_show_listen</a></div><div class="ttdeci">void(* protocol_plugin_init_show_listen)(RemminaProtocolWidget *gp, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00185">plugin.h:185</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ac25782cb49710754854863dc9500bd57"><div class="ttname"><a href="vnc__plugin_8c.html#ac25782cb49710754854863dc9500bd57">remmina_plugin_vnci_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_vnci_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01873">vnc_plugin.c:1873</a></div></div>
+<div class="ttc" id="structon_main_thread__cb__data_html_a75eab61445fbabacaa34f95e2437ea75"><div class="ttname"><a href="structon_main_thread__cb__data.html#a75eab61445fbabacaa34f95e2437ea75">onMainThread_cb_data::cancelled</a></div><div class="ttdeci">gboolean cancelled</div><div class="ttdef"><b>Definition:</b> <a href="nx__plugin_8c_source.html#l00077">nx_plugin.c:77</a></div></div>
+<div class="ttc" id="struct___remmina_key_val_html_a682fb6be0c09c0dd457b279796eec712"><div class="ttname"><a href="struct___remmina_key_val.html#a682fb6be0c09c0dd457b279796eec712">_RemminaKeyVal::keyval</a></div><div class="ttdeci">guint keyval</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00294">vnc_plugin.c:294</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aeba06240e996cdffb95cf9ca4c461449"><div class="ttname"><a href="vnc__plugin_8c.html#aeba06240e996cdffb95cf9ca4c461449">remmina_plugin_vnc_event_free</a></div><div class="ttdeci">static void remmina_plugin_vnc_event_free(RemminaPluginVncEvent *event)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00165">vnc_plugin.c:165</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_aacfc4c3693cace69153a6ad95a69495e"><div class="ttname"><a href="vnc__plugin_8c.html#aacfc4c3693cace69153a6ad95a69495e">remmina_plugin_vnc_keystroke</a></div><div class="ttdeci">static void remmina_plugin_vnc_keystroke(RemminaProtocolWidget *gp, const guint keystrokes[], const gint keylen)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01742">vnc_plugin.c:1742</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a3eb3f92397d52e5e8c8e778450d1dcd6"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a3eb3f92397d52e5e8c8e778450d1dcd6">_RemminaPluginVncEvent::event_data</a></div><div class="ttdeci">union _RemminaPluginVncEvent::@61 event_data</div></div>
+<div class="ttc" id="vnc__plugin_8c_html_a5321b08f070c51b58669fe2187f35bc4"><div class="ttname"><a href="vnc__plugin_8c.html#a5321b08f070c51b58669fe2187f35bc4">remmina_plugin_vnc_on_draw</a></div><div class="ttdeci">static gboolean remmina_plugin_vnc_on_draw(GtkWidget *widget, cairo_t *context, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l01751">vnc_plugin.c:1751</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></li><li class="navelem"><a class="el" href="vnc__plugin_8c.html">vnc_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc__plugin_8h.html b/docs/vnc__plugin_8h.html
new file mode 100644
index 000000000..19b34fb5a
--- /dev/null
+++ b/docs/vnc__plugin_8h.html
@@ -0,0 +1,251 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">vnc_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="vnc__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a323c38c39503620cba03053c071e4ae9"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</a></td></tr>
+<tr class="separator:a323c38c39503620cba03053c071e4ae9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74ce33a323bd943b8c6749ddc18faa18"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a></td></tr>
+<tr class="separator:a74ce33a323bd943b8c6749ddc18faa18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a674a2c4ec1a9f84a5104f171cd60cc18"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a></td></tr>
+<tr class="separator:a674a2c4ec1a9f84a5104f171cd60cc18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aa156d1cebb38c8a65846c4d9c006012a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br />
+&#160;&#160;<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>,
+<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>,
+<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>,
+<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a>,
+<br />
+&#160;&#160;<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>,
+<a class="el" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a>
+<br />
+ }</td></tr>
+<tr class="separator:aa156d1cebb38c8a65846c4d9c006012a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8a70c9cdaf6821611a3311c0d4797db9"><td class="memItemLeft" align="right" valign="top">static G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9">remmina_plugin_vnc_update_scale</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gboolean scale)</td></tr>
+<tr class="separator:a8a70c9cdaf6821611a3311c0d4797db9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a674a2c4ec1a9f84a5104f171cd60cc18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a674a2c4ec1a9f84a5104f171cd60cc18">&#9670;&nbsp;</a></span>RemminaPluginVncCoordinates</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a> <a class="el" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a323c38c39503620cba03053c071e4ae9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a323c38c39503620cba03053c071e4ae9">&#9670;&nbsp;</a></span>RemminaPluginVncData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a> <a class="el" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a id="a74ce33a323bd943b8c6749ddc18faa18"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a74ce33a323bd943b8c6749ddc18faa18">&#9670;&nbsp;</a></span>RemminaPluginVncEvent</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a> <a class="el" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="aa156d1cebb38c8a65846c4d9c006012a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa156d1cebb38c8a65846c4d9c006012a">&#9670;&nbsp;</a></span>anonymous enum</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540"></a>REMMINA_PLUGIN_VNC_EVENT_KEY&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f"></a>REMMINA_PLUGIN_VNC_EVENT_POINTER&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd"></a>REMMINA_PLUGIN_VNC_EVENT_CUTTEXT&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718"></a>REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee"></a>REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df"></a>REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="vnc__plugin_8h_source.html#l00091">91</a> of file <a class="el" href="vnc__plugin_8h_source.html">vnc_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a8a70c9cdaf6821611a3311c0d4797db9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a8a70c9cdaf6821611a3311c0d4797db9">&#9670;&nbsp;</a></span>remmina_plugin_vnc_update_scale()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static G_BEGIN_DECLS void remmina_plugin_vnc_update_scale </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gboolean&#160;</td>
+ <td class="paramname"><em>scale</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></li><li class="navelem"><a class="el" href="vnc__plugin_8h.html">vnc_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/vnc__plugin_8h.js b/docs/vnc__plugin_8h.js
new file mode 100644
index 000000000..6b7341cac
--- /dev/null
+++ b/docs/vnc__plugin_8h.js
@@ -0,0 +1,16 @@
+var vnc__plugin_8h =
+[
+ [ "_RemminaPluginVncData", "struct___remmina_plugin_vnc_data.html", "struct___remmina_plugin_vnc_data" ],
+ [ "_RemminaPluginVncEvent", "struct___remmina_plugin_vnc_event.html", "struct___remmina_plugin_vnc_event" ],
+ [ "_RemminaPluginVncCoordinates", "struct___remmina_plugin_vnc_coordinates.html", "struct___remmina_plugin_vnc_coordinates" ],
+ [ "RemminaPluginVncCoordinates", "vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18", null ],
+ [ "RemminaPluginVncData", "vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9", null ],
+ [ "RemminaPluginVncEvent", "vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_KEY", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_POINTER", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_CUTTEXT", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee", null ],
+ [ "REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE", "vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df", null ],
+ [ "remmina_plugin_vnc_update_scale", "vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9", null ]
+]; \ No newline at end of file
diff --git a/docs/vnc__plugin_8h_source.html b/docs/vnc__plugin_8h_source.html
new file mode 100644
index 000000000..223829e67
--- /dev/null
+++ b/docs/vnc__plugin_8h_source.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: vnc_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('vnc__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">vnc_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="vnc__plugin_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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">#ifndef __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#define __PLUGIN_CONFIG_H</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">#define VNC_PLUGIN_NAME &quot;VNC&quot;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#define VNC_PLUGIN_DESCRIPTION N_(&quot;Remmina VNC Plugin&quot;)</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define VNC_PLUGIN_VERSION VERSION</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define VNC_PLUGIN_APPICON &quot;remmina-vnc-symbolic&quot;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define VNC_PLUGIN_SSH_APPICON &quot;remmina-vnc-ssh-symbolic&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define VNCI_PLUGIN_NAME &quot;VNCI&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#define VNCI_PLUGIN_DESCRIPTION N_(&quot;Remmina VNC listener Plugin&quot;)</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define VNCI_PLUGIN_VERSION VERSION</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define VNCI_PLUGIN_APPICON &quot;remmina-vnc-symbolic&quot;</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define VNCI_PLUGIN_SSH_APPICON &quot;remmina-vnc-ssh-symbolic&quot;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html"> 52</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a> {</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/* Whether the user requests to connect/disconnect */</span></div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95"> 54</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">connected</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* Whether the vnc process is running */</span></div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93"> 56</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">running</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* Whether the initialization calls the authentication process */</span></div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97"> 58</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">auth_called</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* Whether it is the first attempt for authentication. Only first attempt will try to use cached credentials */</span></div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3"> 60</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">auth_first</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57"> 62</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">drawing_area</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca"> 63</a></span>&#160; guchar * <a class="code" href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">vnc_buffer</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030"> 64</a></span>&#160; cairo_surface_t * <a class="code" href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">rgb_buffer</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e"> 66</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">queuedraw_x</a>, <a class="code" href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">queuedraw_y</a>, <a class="code" href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">queuedraw_w</a>, <a class="code" href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">queuedraw_h</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6"> 67</a></span>&#160; guint <a class="code" href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">queuedraw_handler</a>;</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="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c"> 69</a></span>&#160; gulong <a class="code" href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">clipboard_handler</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc"> 70</a></span>&#160; GTimeVal <a class="code" href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">clipboard_timer</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb"> 72</a></span>&#160; cairo_surface_t * <a class="code" href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">queuecursor_surface</a>;</div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd"> 73</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">queuecursor_x</a>, <a class="code" href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">queuecursor_y</a>;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364"> 74</a></span>&#160; guint <a class="code" href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">queuecursor_handler</a>;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90"> 76</a></span>&#160; gpointer <a class="code" href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">client</a>;</div><div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c"> 77</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">listen_sock</a>;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c"> 79</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">button_mask</a>;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0"> 81</a></span>&#160; GPtrArray * <a class="code" href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">pressed_keys</a>;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063"> 83</a></span>&#160; pthread_mutex_t <a class="code" href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">vnc_event_queue_mutex</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a"> 84</a></span>&#160; GQueue * <a class="code" href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">vnc_event_queue</a>;</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea"> 85</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">vnc_event_pipe</a>[2];</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095"> 87</a></span>&#160; pthread_t <a class="code" href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">thread</a>;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89"> 88</a></span>&#160; pthread_mutex_t <a class="code" href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">buffer_mutex</a>;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;} <a class="code" href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</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;<span class="keyword">enum</span> {</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540"> 92</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a>,</div><div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f"> 93</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a>,</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd"> 94</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a>,</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718"> 95</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a>,</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee"> 96</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a>,</div><div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df"> 97</a></span>&#160; <a class="code" href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a></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;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html"> 100</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a> {</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0"> 101</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">event_type</a>;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">union </span>{</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87"> 104</a></span>&#160; guint <a class="code" href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87">keyval</a>;</div><div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8"> 105</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8">pressed</a>;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; } key;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8"> 108</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8">x</a>;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11"> 109</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11">y</a>;</div><div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32"> 110</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32">button_mask</a>;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; } pointer;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">struct </span>{</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65"> 113</a></span>&#160; gchar *<a class="code" href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">text</a>;</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; } text;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; } event_data;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;} <a class="code" href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a>;</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_coordinates.html"> 118</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a> {</div><div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e"> 119</a></span>&#160; gint x, <a class="code" href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">y</a>;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;} <a class="code" href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a>;</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;G_BEGIN_DECLS</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">/* --------- Support for execution on main thread of GUI functions -------------- */</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9">remmina_plugin_vnc_update_scale</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gboolean scale);</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;G_END_DECLS</div><div class="ttc" id="vnc__plugin_8h_html_a74ce33a323bd943b8c6749ddc18faa18"><div class="ttname"><a href="vnc__plugin_8h.html#a74ce33a323bd943b8c6749ddc18faa18">RemminaPluginVncEvent</a></div><div class="ttdeci">struct _RemminaPluginVncEvent RemminaPluginVncEvent</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a782a902d036e12eb08bfcd1006c12b97"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a782a902d036e12eb08bfcd1006c12b97">_RemminaPluginVncData::auth_called</a></div><div class="ttdeci">gboolean auth_called</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00058">vnc_plugin.h:58</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_acf12d2c89046160dddcae35af84e5e57"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#acf12d2c89046160dddcae35af84e5e57">_RemminaPluginVncData::drawing_area</a></div><div class="ttdeci">GtkWidget * drawing_area</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00062">vnc_plugin.h:62</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html">_RemminaPluginVncEvent</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00100">vnc_plugin.h:100</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_aeae081d32acaa79294cba7adaf6c57dd"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#aeae081d32acaa79294cba7adaf6c57dd">_RemminaPluginVncData::queuecursor_y</a></div><div class="ttdeci">gint queuecursor_y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00073">vnc_plugin.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a79891d24c0e6257efceeefb3c10d8c65"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a79891d24c0e6257efceeefb3c10d8c65">_RemminaPluginVncEvent::text</a></div><div class="ttdeci">gchar * text</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00113">vnc_plugin.h:113</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0723d566806911ca2ed79d03214fe4ee">REMMINA_PLUGIN_VNC_EVENT_CHAT_SEND</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00096">vnc_plugin.h:96</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a0e175ab5a31b720d9d7dfc6923ce3c6a"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a0e175ab5a31b720d9d7dfc6923ce3c6a">_RemminaPluginVncData::vnc_event_queue</a></div><div class="ttdeci">GQueue * vnc_event_queue</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00084">vnc_plugin.h:84</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa4588937e7ecca9c67f043eabff7de4df">REMMINA_PLUGIN_VNC_EVENT_CHAT_CLOSE</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00097">vnc_plugin.h:97</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5d655f538f7a29657c664bdd0117dcfb"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5d655f538f7a29657c664bdd0117dcfb">_RemminaPluginVncData::queuecursor_surface</a></div><div class="ttdeci">cairo_surface_t * queuecursor_surface</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00072">vnc_plugin.h:72</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a14aaefd3fdb0038689972d672a87f6d2"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a14aaefd3fdb0038689972d672a87f6d2">_RemminaPluginVncData::queuedraw_w</a></div><div class="ttdeci">gint queuedraw_w</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_af7838da89b30d194de8d5571e2130364"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#af7838da89b30d194de8d5571e2130364">_RemminaPluginVncData::queuecursor_handler</a></div><div class="ttdeci">guint queuecursor_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00074">vnc_plugin.h:74</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_coordinates_html_ad385abd59c1f49bdb244fd679efb5b3e"><div class="ttname"><a href="struct___remmina_plugin_vnc_coordinates.html#ad385abd59c1f49bdb244fd679efb5b3e">_RemminaPluginVncCoordinates::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00119">vnc_plugin.h:119</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a35d3190915553df1cfc65fb951403c11"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a35d3190915553df1cfc65fb951403c11">_RemminaPluginVncEvent::y</a></div><div class="ttdeci">gint y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00109">vnc_plugin.h:109</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5b85e81358d36bc4772b95cb9856e2ca"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5b85e81358d36bc4772b95cb9856e2ca">_RemminaPluginVncData::vnc_buffer</a></div><div class="ttdeci">guchar * vnc_buffer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00063">vnc_plugin.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a673281e9b313ad358b1a426dcf6238c2"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a673281e9b313ad358b1a426dcf6238c2">_RemminaPluginVncData::queuecursor_x</a></div><div class="ttdeci">gint queuecursor_x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00073">vnc_plugin.h:73</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a09a73e5d8e44a505154432e91cc8af4e"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a09a73e5d8e44a505154432e91cc8af4e">_RemminaPluginVncData::queuedraw_y</a></div><div class="ttdeci">gint queuedraw_y</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_a323c38c39503620cba03053c071e4ae9"><div class="ttname"><a href="vnc__plugin_8h.html#a323c38c39503620cba03053c071e4ae9">RemminaPluginVncData</a></div><div class="ttdeci">struct _RemminaPluginVncData RemminaPluginVncData</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_ac4e1f4b6fc95c31896cc50f315312f93"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#ac4e1f4b6fc95c31896cc50f315312f93">_RemminaPluginVncData::running</a></div><div class="ttdeci">gboolean running</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00056">vnc_plugin.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a0453c0a0676675e91ba19318dc9b06e0"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a0453c0a0676675e91ba19318dc9b06e0">_RemminaPluginVncData::pressed_keys</a></div><div class="ttdeci">GPtrArray * pressed_keys</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00081">vnc_plugin.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a4de43e091ed0b511921b87f2d456e990"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a4de43e091ed0b511921b87f2d456e990">_RemminaPluginVncData::queuedraw_h</a></div><div class="ttdeci">gint queuedraw_h</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a0ffbaa26908fd25e653dfaf5ad8ccff0"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a0ffbaa26908fd25e653dfaf5ad8ccff0">_RemminaPluginVncEvent::event_type</a></div><div class="ttdeci">gint event_type</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00101">vnc_plugin.h:101</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5412ada4c656d0053f0656bed890c030"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5412ada4c656d0053f0656bed890c030">_RemminaPluginVncData::rgb_buffer</a></div><div class="ttdeci">cairo_surface_t * rgb_buffer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00064">vnc_plugin.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a2958d10774cc6fc28a0bfa0b1c843095"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a2958d10774cc6fc28a0bfa0b1c843095">_RemminaPluginVncData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00087">vnc_plugin.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a264ea1e41624de1e4a0e9cad031f0ac8"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a264ea1e41624de1e4a0e9cad031f0ac8">_RemminaPluginVncEvent::pressed</a></div><div class="ttdeci">gboolean pressed</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00105">vnc_plugin.h:105</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_ab105fe07330946ed3687ad2d06fabe95"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#ab105fe07330946ed3687ad2d06fabe95">_RemminaPluginVncData::connected</a></div><div class="ttdeci">gboolean connected</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00054">vnc_plugin.h:54</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_a674a2c4ec1a9f84a5104f171cd60cc18"><div class="ttname"><a href="vnc__plugin_8h.html#a674a2c4ec1a9f84a5104f171cd60cc18">RemminaPluginVncCoordinates</a></div><div class="ttdeci">struct _RemminaPluginVncCoordinates RemminaPluginVncCoordinates</div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a625ea21fb2d92cb8489d3c9e5a2477ea"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a625ea21fb2d92cb8489d3c9e5a2477ea">_RemminaPluginVncData::vnc_event_pipe</a></div><div class="ttdeci">gint vnc_event_pipe[2]</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00085">vnc_plugin.h:85</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa1897cf83244e2e2e25c7f32e50a4964f">REMMINA_PLUGIN_VNC_EVENT_POINTER</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00093">vnc_plugin.h:93</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa0662a5bd411f37922da376de06e8fbfd">REMMINA_PLUGIN_VNC_EVENT_CUTTEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00094">vnc_plugin.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_ae2a04bad3d386a453554a431f9e9ad87"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#ae2a04bad3d386a453554a431f9e9ad87">_RemminaPluginVncEvent::keyval</a></div><div class="ttdeci">guint keyval</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00104">vnc_plugin.h:104</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5b17067fb2b9437f1fdf607334dfade3"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5b17067fb2b9437f1fdf607334dfade3">_RemminaPluginVncData::auth_first</a></div><div class="ttdeci">gboolean auth_first</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00060">vnc_plugin.h:60</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a03809ddab0aea8b6d2796641d4ccda32"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a03809ddab0aea8b6d2796641d4ccda32">_RemminaPluginVncEvent::button_mask</a></div><div class="ttdeci">gint button_mask</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00110">vnc_plugin.h:110</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_a8a70c9cdaf6821611a3311c0d4797db9"><div class="ttname"><a href="vnc__plugin_8h.html#a8a70c9cdaf6821611a3311c0d4797db9">remmina_plugin_vnc_update_scale</a></div><div class="ttdeci">static G_BEGIN_DECLS void remmina_plugin_vnc_update_scale(RemminaProtocolWidget *gp, gboolean scale)</div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a3c4413fdc098cf2dd9a1ff336c20356e"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a3c4413fdc098cf2dd9a1ff336c20356e">_RemminaPluginVncData::queuedraw_x</a></div><div class="ttdeci">gint queuedraw_x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00066">vnc_plugin.h:66</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a4047890129d7177dc5f813f2947e7a3c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a4047890129d7177dc5f813f2947e7a3c">_RemminaPluginVncData::button_mask</a></div><div class="ttdeci">gint button_mask</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00079">vnc_plugin.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aa98fec12a2047bf22ce4d44b9e0905540">REMMINA_PLUGIN_VNC_EVENT_KEY</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00092">vnc_plugin.h:92</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a33bc751b1d5728b624bfa57814504f90"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a33bc751b1d5728b624bfa57814504f90">_RemminaPluginVncData::client</a></div><div class="ttdeci">gpointer client</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00076">vnc_plugin.h:76</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_coordinates_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_coordinates.html">_RemminaPluginVncCoordinates</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00118">vnc_plugin.h:118</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a8c3e9e03bc8b3ed04ee93a2c0281b5c6"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a8c3e9e03bc8b3ed04ee93a2c0281b5c6">_RemminaPluginVncData::queuedraw_handler</a></div><div class="ttdeci">guint queuedraw_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00067">vnc_plugin.h:67</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_af834392929e0be100534bcc4a4d6df3c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#af834392929e0be100534bcc4a4d6df3c">_RemminaPluginVncData::clipboard_handler</a></div><div class="ttdeci">gulong clipboard_handler</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00069">vnc_plugin.h:69</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html">_RemminaPluginVncData</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00052">vnc_plugin.h:52</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a41dc885437b90c87b6a8b4367b0ba63c"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a41dc885437b90c87b6a8b4367b0ba63c">_RemminaPluginVncData::listen_sock</a></div><div class="ttdeci">gint listen_sock</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00077">vnc_plugin.h:77</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a824b3ab6d51d0ba65abdbd0e788edb89"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a824b3ab6d51d0ba65abdbd0e788edb89">_RemminaPluginVncData::buffer_mutex</a></div><div class="ttdeci">pthread_mutex_t buffer_mutex</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00088">vnc_plugin.h:88</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a9fc1c7e877a675b10282918e418c9bbc"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a9fc1c7e877a675b10282918e418c9bbc">_RemminaPluginVncData::clipboard_timer</a></div><div class="ttdeci">GTimeVal clipboard_timer</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00070">vnc_plugin.h:70</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_event_html_a66390bbb63e42d25f8fa8e0be7f7dee8"><div class="ttname"><a href="struct___remmina_plugin_vnc_event.html#a66390bbb63e42d25f8fa8e0be7f7dee8">_RemminaPluginVncEvent::x</a></div><div class="ttdeci">gint x</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00108">vnc_plugin.h:108</a></div></div>
+<div class="ttc" id="vnc__plugin_8h_html_aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718"><div class="ttname"><a href="vnc__plugin_8h.html#aa156d1cebb38c8a65846c4d9c006012aaa818c3e00b67a01cdee20db2136a7718">REMMINA_PLUGIN_VNC_EVENT_CHAT_OPEN</a></div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00095">vnc_plugin.h:95</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_vnc_data_html_a5f8bcbfe873d4949852e9624e1c43063"><div class="ttname"><a href="struct___remmina_plugin_vnc_data.html#a5f8bcbfe873d4949852e9624e1c43063">_RemminaPluginVncData::vnc_event_queue_mutex</a></div><div class="ttdeci">pthread_mutex_t vnc_event_queue_mutex</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8h_source.html#l00083">vnc_plugin.h:83</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_ff91815d22ef8e3219147b7ca619fdb5.html">vnc</a></li><li class="navelem"><a class="el" href="vnc__plugin_8h.html">vnc_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__config_8h.html b/docs/www__config_8h.html
new file mode 100644
index 000000000..1616b7eec
--- /dev/null
+++ b/docs/www__config_8h.html
@@ -0,0 +1,103 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__config_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="www__config_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__config_8h.html">www_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__config_8h_source.html b/docs/www__config_8h_source.html
new file mode 100644
index 000000000..c4a6d818d
--- /dev/null
+++ b/docs/www__config_8h_source.html
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_config.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__config_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="www__config_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) 2019-2020 Antenore Gatta</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Initially based on the plugin &quot;Remmina Plugin EXEC&quot;, created and written by</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Fabio Castelli (Muflone) &lt;muflone@vbsimple.net&gt;.</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;<span class="preprocessor">#ifndef __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#define __PLUGIN_CONFIG_H</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define PLUGIN_NAME &quot;WWW&quot;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define PLUGIN_DESCRIPTION N_(&quot;Remmina web-browser plugin&quot;)</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define PLUGIN_VERSION &quot;0.1.0&quot;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define PLUGIN_APPICON &quot;remmina-www-symbolic&quot;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div></div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__config_8h.html">www_config.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__plugin_8c.html b/docs/www__plugin_8c.html
new file mode 100644
index 000000000..530e40a9f
--- /dev/null
+++ b/docs/www__plugin_8c.html
@@ -0,0 +1,1026 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">www_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="www__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a73ffad7289c2476a04d7270fa340bee9"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">RemminaPluginWWWData</a></td></tr>
+<tr class="separator:a73ffad7289c2476a04d7270fa340bee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af4c8fa778acc2d2f7dd9418e48c99f19"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">remmina_plugin_www_download_started</a> (WebKitWebContext *context, WebKitDownload *download, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af4c8fa778acc2d2f7dd9418e48c99f19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98eddc35144b89bce2e247d5ea49177b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a> (WebKitDownload *download, GParamSpec *ps, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a98eddc35144b89bce2e247d5ea49177b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae91c9382d5bb29416eab7de18c6d6b8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a> (WebKitDownload *download, gchar *destination, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae91c9382d5bb29416eab7de18c6d6b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa970cf06dde51601b91b8d6f936b7ed"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">remmina_plugin_www_decide_policy_cb</a> (WebKitWebView *webview, WebKitPolicyDecision *decision, WebKitPolicyDecisionType decision_type, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aaa970cf06dde51601b91b8d6f936b7ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18fa028449a5d5d455ce6cde7bfd2ef2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">remmina_plugin_www_decide_nav</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a18fa028449a5d5d455ce6cde7bfd2ef2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0a82693798a5534d8657ba9f7634057"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">remmina_plugin_www_on_create</a> (WebKitWebView *webview, WebKitNavigationAction *a, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab0a82693798a5534d8657ba9f7634057"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05218b821edab542795439a87ad9d909"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a05218b821edab542795439a87ad9d909"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab3ceb1ae095823fcbee98ce2811b374"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aab3ceb1ae095823fcbee98ce2811b374"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a298678121c7123265e772c0b060f5dcb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">remmina_www_web_view_js_finished</a> (GObject *object, GAsyncResult *result, gpointer user_data)</td></tr>
+<tr class="separator:a298678121c7123265e772c0b060f5dcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae38b4f2efc412b6256221d9a33a03cd4"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:ae38b4f2efc412b6256221d9a33a03cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a591d1cc396cb66112cb17462a882ef4f"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f">remmina_plugin_www_load_failed_tls_cb</a> (WebKitWebView *webview, gchar *failing_uri, GTlsCertificate *certificate, GTlsCertificateFlags errors, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a591d1cc396cb66112cb17462a882ef4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6ccaf3df9ea3201521eb62dd9943b00"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae6ccaf3df9ea3201521eb62dd9943b00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9973fcef32044b1238648c4695c3f23"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">remmina_plugin_www_on_auth</a> (WebKitWebView *webview, WebKitAuthenticationRequest *request, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae9973fcef32044b1238648c4695c3f23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb58ee650d75d952dd5802fbba9e9b0e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">remmina_plugin_www_form_auth</a> (WebKitWebView *webview, WebKitLoadEvent load_event, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:adb58ee650d75d952dd5802fbba9e9b0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1e5c3cccf8fcfb51c4518462b9b61ea"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:af1e5c3cccf8fcfb51c4518462b9b61ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a282f3f57584e24a15a8a5d5cf5aa8d72"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a282f3f57584e24a15a8a5d5cf5aa8d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a152b9760d6b4808393569b0409f8b8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">remmina_plugin_www_save_snapshot</a> (GObject *object, GAsyncResult *result, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a1a152b9760d6b4808393569b0409f8b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9323d1142816fbac8f87545a398a0f71"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, <a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *rpsd)</td></tr>
+<tr class="separator:a9323d1142816fbac8f87545a398a0f71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3874a40164919bc5389d166df691bfdb"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a> []</td></tr>
+<tr class="separator:a3874a40164919bc5389d166df691bfdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6b72af8913086b2ec590a675473f2a1"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a> []</td></tr>
+<tr class="separator:ac6b72af8913086b2ec590a675473f2a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8ced85169ca68aae1ed7f14b488e5b8"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</a> []</td></tr>
+<tr class="separator:ae8ced85169ca68aae1ed7f14b488e5b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></td></tr>
+<tr class="separator:a3b53d8bbfcf5bdf5564c8804d211cf99"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="a73ffad7289c2476a04d7270fa340bee9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73ffad7289c2476a04d7270fa340bee9">&#9670;&nbsp;</a></span>RemminaPluginWWWData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a> <a class="el" href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">RemminaPluginWWWData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00933">933</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af1e5c3cccf8fcfb51c4518462b9b61ea"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af1e5c3cccf8fcfb51c4518462b9b61ea">&#9670;&nbsp;</a></span>remmina_plugin_www_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00707">707</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a18fa028449a5d5d455ce6cde7bfd2ef2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a18fa028449a5d5d455ce6cde7bfd2ef2">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_nav()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_decide_nav </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00128">128</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a05218b821edab542795439a87ad9d909"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05218b821edab542795439a87ad9d909">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_newwin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_decide_newwin </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00228">228</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aaa970cf06dde51601b91b8d6f936b7ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aaa970cf06dde51601b91b8d6f936b7ed">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_policy_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_decide_policy_cb </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebView *&#160;</td>
+ <td class="paramname"><em>webview</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitPolicyDecisionType&#160;</td>
+ <td class="paramname"><em>decision_type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00102">102</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aab3ceb1ae095823fcbee98ce2811b374"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab3ceb1ae095823fcbee98ce2811b374">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_resource()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_www_decide_resource </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00288">288</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="af4c8fa778acc2d2f7dd9418e48c99f19"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#af4c8fa778acc2d2f7dd9418e48c99f19">&#9670;&nbsp;</a></span>remmina_plugin_www_download_started()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_download_started </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitDownload *&#160;</td>
+ <td class="paramname"><em>download</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00075">75</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="adb58ee650d75d952dd5802fbba9e9b0e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adb58ee650d75d952dd5802fbba9e9b0e">&#9670;&nbsp;</a></span>remmina_plugin_www_form_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_www_form_auth </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebView *&#160;</td>
+ <td class="paramname"><em>webview</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitLoadEvent&#160;</td>
+ <td class="paramname"><em>load_event</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00601">601</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9323d1142816fbac8f87545a398a0f71"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9323d1142816fbac8f87545a398a0f71">&#9670;&nbsp;</a></span>remmina_plugin_www_get_snapshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_get_snapshot </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a8f1322421fba36f6efb1a01e0626b2b1">RemminaPluginScreenshotData</a> *&#160;</td>
+ <td class="paramname"><em>rpsd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00844">844</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae6ccaf3df9ea3201521eb62dd9943b00"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6ccaf3df9ea3201521eb62dd9943b00">&#9670;&nbsp;</a></span>remmina_plugin_www_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_www_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<p>Frames flattening Some websites engage in embedding frames-inside-of-frames. WebKit has the ability to flatten them so they behave, when scrolling, as one big frame. If for some reason it is not enabled, go ahead and turn it on.</p>
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00402">402</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a591d1cc396cb66112cb17462a882ef4f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a591d1cc396cb66112cb17462a882ef4f">&#9670;&nbsp;</a></span>remmina_plugin_www_load_failed_tls_cb()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_load_failed_tls_cb </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebView *&#160;</td>
+ <td class="paramname"><em>webview</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>failing_uri</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTlsCertificate *&#160;</td>
+ <td class="paramname"><em>certificate</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GTlsCertificateFlags&#160;</td>
+ <td class="paramname"><em>errors</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00392">392</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae91c9382d5bb29416eab7de18c6d6b8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae91c9382d5bb29416eab7de18c6d6b8d">&#9670;&nbsp;</a></span>remmina_plugin_www_notify_download()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_notify_download </td>
+ <td>(</td>
+ <td class="paramtype">WebKitDownload *&#160;</td>
+ <td class="paramname"><em>download</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>destination</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00092">92</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae9973fcef32044b1238648c4695c3f23"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae9973fcef32044b1238648c4695c3f23">&#9670;&nbsp;</a></span>remmina_plugin_www_on_auth()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_on_auth </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebView *&#160;</td>
+ <td class="paramname"><em>webview</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitAuthenticationRequest *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00546">546</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab0a82693798a5534d8657ba9f7634057"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab0a82693798a5534d8657ba9f7634057">&#9670;&nbsp;</a></span>remmina_plugin_www_on_create()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_on_create </td>
+ <td>(</td>
+ <td class="paramtype">WebKitWebView *&#160;</td>
+ <td class="paramname"><em>webview</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">WebKitNavigationAction *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00174">174</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a282f3f57584e24a15a8a5d5cf5aa8d72"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a282f3f57584e24a15a8a5d5cf5aa8d72">&#9670;&nbsp;</a></span>remmina_plugin_www_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_www_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00731">731</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a98eddc35144b89bce2e247d5ea49177b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98eddc35144b89bce2e247d5ea49177b">&#9670;&nbsp;</a></span>remmina_plugin_www_response_received()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_response_received </td>
+ <td>(</td>
+ <td class="paramtype">WebKitDownload *&#160;</td>
+ <td class="paramname"><em>download</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GParamSpec *&#160;</td>
+ <td class="paramname"><em>ps</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00086">86</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a1a152b9760d6b4808393569b0409f8b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a1a152b9760d6b4808393569b0409f8b8">&#9670;&nbsp;</a></span>remmina_plugin_www_save_snapshot()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_www_save_snapshot </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GAsyncResult *&#160;</td>
+ <td class="paramname"><em>result</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00783">783</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae38b4f2efc412b6256221d9a33a03cd4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae38b4f2efc412b6256221d9a33a03cd4">&#9670;&nbsp;</a></span>remmina_www_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_www_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00386">386</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a298678121c7123265e772c0b060f5dcb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a298678121c7123265e772c0b060f5dcb">&#9670;&nbsp;</a></span>remmina_www_web_view_js_finished()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_www_web_view_js_finished </td>
+ <td>(</td>
+ <td class="paramtype">GObject *&#160;</td>
+ <td class="paramname"><em>object</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GAsyncResult *&#160;</td>
+ <td class="paramname"><em>result</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00347">347</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a3b53d8bbfcf5bdf5564c8804d211cf99"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3b53d8bbfcf5bdf5564c8804d211cf99">&#9670;&nbsp;</a></span>remmina_plugin</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> PLUGIN_NAME, </div><div class="line"> PLUGIN_DESCRIPTION, </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> PLUGIN_VERSION, </div><div class="line"> PLUGIN_APPICON, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a>, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a>, </div><div class="line"> <a class="code" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a>, </div><div class="line"> NULL, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a> </div><div class="line">}</div><div class="ttc" id="www__plugin_8c_html_ae6ccaf3df9ea3201521eb62dd9943b00"><div class="ttname"><a href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a></div><div class="ttdeci">static void remmina_plugin_www_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00402">www_plugin.c:402</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_af1e5c3cccf8fcfb51c4518462b9b61ea"><div class="ttname"><a href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_www_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00707">www_plugin.c:707</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a9323d1142816fbac8f87545a398a0f71"><div class="ttname"><a href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a></div><div class="ttdeci">static gboolean remmina_plugin_www_get_snapshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00844">www_plugin.c:844</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a282f3f57584e24a15a8a5d5cf5aa8d72"><div class="ttname"><a href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_www_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00731">www_plugin.c:731</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae8ced85169ca68aae1ed7f14b488e5b8"><div class="ttname"><a href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_www_features[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00905">www_plugin.c:905</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a3874a40164919bc5389d166df691bfdb"><div class="ttname"><a href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_www_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00868">www_plugin.c:868</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ac6b72af8913086b2ec590a675473f2a1"><div class="ttname"><a href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_www_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00885">www_plugin.c:885</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae38b4f2efc412b6256221d9a33a03cd4"><div class="ttname"><a href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a></div><div class="ttdeci">static gboolean remmina_www_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00386">www_plugin.c:386</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00911">911</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00073">73</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac6b72af8913086b2ec590a675473f2a1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac6b72af8913086b2ec590a675473f2a1">&#9670;&nbsp;</a></span>remmina_plugin_www_advanced_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_www_advanced_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;user-agent&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User agent&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;proxy-url&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Proxy URL&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;E.g. https://example.org, socks://mysocks:1080&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-java&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on Java support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-smooth-scrolling&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on smooth scrolling&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-spatial-navigation&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on spatial navigation&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-plugins&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on plugin support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webgl&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on WebGL support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webaudio&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on HTML5 audio support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ignore-tls-errors&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Ignore TLS errors&quot;</span>), TRUE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><span class="preprocessor">#ifdef DEBUG</span></div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webinspector&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on Web Inspector&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><span class="preprocessor">#endif</span></div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00885">885</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3874a40164919bc5389d166df691bfdb"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3874a40164919bc5389d166df691bfdb">&#9670;&nbsp;</a></span>remmina_plugin_www_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_www_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;server&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;URL&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;http://address or https://address&quot;</span>) },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00868">868</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae8ced85169ca68aae1ed7f14b488e5b8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae8ced85169ca68aae1ed7f14b488e5b8">&#9670;&nbsp;</a></span>remmina_www_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_www_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00905">905</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__plugin_8c.html">www_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__plugin_8c.js b/docs/www__plugin_8c.js
new file mode 100644
index 000000000..536c0674f
--- /dev/null
+++ b/docs/www__plugin_8c.js
@@ -0,0 +1,29 @@
+var www__plugin_8c =
+[
+ [ "_RemminaPluginWWWData", "struct___remmina_plugin_w_w_w_data.html", "struct___remmina_plugin_w_w_w_data" ],
+ [ "RemminaPluginWWWData", "www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9", null ],
+ [ "remmina_plugin_entry", "www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_www_close_connection", "www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea", null ],
+ [ "remmina_plugin_www_decide_nav", "www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2", null ],
+ [ "remmina_plugin_www_decide_newwin", "www__plugin_8c.html#a05218b821edab542795439a87ad9d909", null ],
+ [ "remmina_plugin_www_decide_policy_cb", "www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed", null ],
+ [ "remmina_plugin_www_decide_resource", "www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374", null ],
+ [ "remmina_plugin_www_download_started", "www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19", null ],
+ [ "remmina_plugin_www_form_auth", "www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e", null ],
+ [ "remmina_plugin_www_get_snapshot", "www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71", null ],
+ [ "remmina_plugin_www_init", "www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00", null ],
+ [ "remmina_plugin_www_load_failed_tls_cb", "www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f", null ],
+ [ "remmina_plugin_www_notify_download", "www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d", null ],
+ [ "remmina_plugin_www_on_auth", "www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23", null ],
+ [ "remmina_plugin_www_on_create", "www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057", null ],
+ [ "remmina_plugin_www_open_connection", "www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72", null ],
+ [ "remmina_plugin_www_response_received", "www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b", null ],
+ [ "remmina_plugin_www_save_snapshot", "www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8", null ],
+ [ "remmina_www_query_feature", "www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4", null ],
+ [ "remmina_www_web_view_js_finished", "www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb", null ],
+ [ "remmina_plugin", "www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99", null ],
+ [ "remmina_plugin_service", "www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_www_advanced_settings", "www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1", null ],
+ [ "remmina_plugin_www_basic_settings", "www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb", null ],
+ [ "remmina_www_features", "www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8", null ]
+]; \ No newline at end of file
diff --git a/docs/www__plugin_8c_source.html b/docs/www__plugin_8c_source.html
new file mode 100644
index 000000000..e1ff04ae0
--- /dev/null
+++ b/docs/www__plugin_8c_source.html
@@ -0,0 +1,184 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="www__plugin_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) 2016-2020 Antenore Gatta &amp; Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * If you modify file(s) with this exception, you may extend this exception</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * to your version of the file(s), but you are not obligated to do so.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * If you do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version.</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * If you delete this exception statement from all source</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> *</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;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="www__config_8h.html">www_config.h</a>&quot;</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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</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 &lt;gdk/gdkkeysyms.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;gtk/gtk.h&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;glib/gprintf.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;webkit2/webkit2.h&gt;</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#if WEBKIT_CHECK_VERSION(2, 21, 1)</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;jsc/jsc.h&gt;</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="www__utils_8h.html">www_utils.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="www__plugin_8h.html">www_plugin.h</a>&quot;</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginWWWData *)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;)</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html"> 57</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a> {</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db"> 58</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a> <a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">document_type</a>;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db"> 59</a></span>&#160; GtkWidget * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a>;</div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54"> 60</a></span>&#160; WebKitSettings * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e"> 61</a></span>&#160; WebKitWebContext * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab"> 62</a></span>&#160; WebKitWebsiteDataManager * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a>;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959"> 63</a></span>&#160; WebKitCredential * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">credentials</a>;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0"> 64</a></span>&#160; WebKitAuthenticationRequest * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">request</a>;</div><div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690"> 65</a></span>&#160; WebKitWebView * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436"> 66</a></span>&#160; WebKitLoadEvent <a class="code" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">load_event</a>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb"> 68</a></span>&#160; gchar * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a>;</div><div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd"> 69</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84"> 70</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;} <a class="code" href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">RemminaPluginWWWData</a>;</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"><a class="line" href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 73</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19"> 75</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">remmina_plugin_www_download_started</a>(WebKitWebContext *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; WebKitDownload *download, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 78</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; webkit_download_set_allow_overwrite(download, TRUE);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; g_signal_connect(G_OBJECT(download), <span class="stringliteral">&quot;notify::response&quot;</span>,</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; G_CALLBACK(<a class="code" href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a>), gp);</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; g_signal_connect(download, <span class="stringliteral">&quot;created-destination&quot;</span>,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; G_CALLBACK(<a class="code" href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a>), gp);</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"><a class="line" href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b"> 86</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a>(WebKitDownload *download, GParamSpec *ps, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Download response received&quot;</span>);</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;</div><div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d"> 92</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a>(WebKitDownload *download, gchar *destination, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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"> 94</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Download is finished&quot;</span>);</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> gchar *dest = webkit_download_get_destination(download);</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a>(<span class="stringliteral">&quot;www-plugin-download-completed-id&quot;</span>, _(<span class="stringliteral">&quot;File downloaded&quot;</span>), dest);</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">//download(gp, webkit_download_get_response(download));</span></div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">//webkit_download_cancel(download);</span></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"><a class="line" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed"> 102</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">remmina_plugin_www_decide_policy_cb</a>(</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; WebKitWebView * <a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; WebKitPolicyDecision * decision,</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; WebKitPolicyDecisionType decision_type,</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> * gp)</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;{</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; TRACE_CALL(__func__);</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; gboolean res = TRUE;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">switch</span> (decision_type) {</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">case</span> WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION:</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">remmina_plugin_www_decide_nav</a>(decision, gp);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">case</span> WEBKIT_POLICY_DECISION_TYPE_NEW_WINDOW_ACTION:</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a>(decision, gp);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">case</span> WEBKIT_POLICY_DECISION_TYPE_RESPONSE:</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; res = <a class="code" href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a>(decision, gp);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; webkit_policy_decision_ignore(decision);</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">break</span>;</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"> 126</span>&#160; <span class="keywordflow">return</span> res;</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"><a class="line" href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32"> 128</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">remmina_plugin_www_decide_nav</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Policy decision navigation&quot;</span>);</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a> = NULL;</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; WebKitNavigationAction *a =</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; webkit_navigation_policy_decision_get_navigation_action(</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; WEBKIT_NAVIGATION_POLICY_DECISION(decision));</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">switch</span> (webkit_navigation_action_get_navigation_type(a)) {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_LINK_CLICKED&quot;</span>);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;url is %s &quot;</span>, url);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED&quot;</span>);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_BACK_FORWARD&quot;</span>);</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_RELOAD:</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_RELOAD&quot;</span>);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED&quot;</span>);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_OTHER:</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_OTHER&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="comment">/* Do not navigate to links with a &quot;_blank&quot; target (popup) */</span></div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordflow">if</span> (webkit_navigation_policy_decision_get_frame_name(</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; WEBKIT_NAVIGATION_POLICY_DECISION(decision))) {</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; webkit_policy_decision_ignore(decision);</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="comment">/* Filter out navigation to different domain ? */</span></div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="comment">/* get action→urirequest, copy and load in new window+view</span></div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> * on Ctrl+Click ? */</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; webkit_policy_decision_use(decision);</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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"><a class="line" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057"> 174</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">remmina_plugin_www_on_create</a>(WebKitWebView *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, WebKitNavigationAction *a, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;New web-view&quot;</span>);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a> = NULL;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">switch</span> (webkit_navigation_action_get_navigation_type(a)) {</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_LINK_CLICKED&quot;</span>);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Downloading url %s &quot;</span>, url);</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; WebKitDownload *d = webkit_web_view_download_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</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; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED&quot;</span>);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_BACK_FORWARD&quot;</span>);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_RELOAD:</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_RELOAD&quot;</span>);</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED&quot;</span>);</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="comment">/* Filter domains here */</span></div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="comment">/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.</span></div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> * test for link clicked but no button ? */</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Trying to open url: %s&quot;</span>, url);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; webkit_web_view_load_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_OTHER: <span class="comment">/* fallthrough */</span></div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_OTHER&quot;</span>);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="comment">/* Filter domains here */</span></div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="comment">/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.</span></div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="comment"> * test for link clicked but no button ? */</span></div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Trying to open url: %s&quot;</span>, url);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; webkit_web_view_load_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">break</span>;</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE is %d&quot;</span>, webkit_navigation_action_get_navigation_type(a));</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;</div><div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909"> 228</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Policy decision new window&quot;</span>);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keyword">const</span> gchar *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a> = NULL;</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"> 235</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; WebKitNavigationAction *a =</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; webkit_navigation_policy_decision_get_navigation_action(</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; WEBKIT_NAVIGATION_POLICY_DECISION(decision));</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">switch</span> (webkit_navigation_action_get_navigation_type(a)) {</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_LINK_CLICKED&quot;</span>);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Downloading url %s &quot;</span>, url);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; WebKitDownload *d = webkit_web_view_download_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</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;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED&quot;</span>);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_BACK_FORWARD&quot;</span>);</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_RELOAD:</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_RELOAD&quot;</span>);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED&quot;</span>);</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <span class="comment">/* Filter domains here */</span></div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="comment">/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.</span></div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> * test for link clicked but no button ? */</span></div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Trying to open url: %s&quot;</span>, url);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; webkit_web_view_load_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">case</span> WEBKIT_NAVIGATION_TYPE_OTHER: <span class="comment">/* fallthrough */</span></div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE_OTHER&quot;</span>);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="comment">/* Filter domains here */</span></div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="comment">/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.</span></div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> * test for link clicked but no button ? */</span></div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; url = webkit_uri_request_get_uri(</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; webkit_navigation_action_get_request(a));</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Trying to open url: %s&quot;</span>, url);</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; webkit_web_view_load_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, url);</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; }</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WEBKIT_NAVIGATION_TYPE is %d&quot;</span>, webkit_navigation_action_get_navigation_type(a));</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; webkit_policy_decision_ignore(decision);</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"><a class="line" href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374"> 288</a></span>&#160;gboolean <a class="code" href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Policy decision resource&quot;</span>);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; WebKitResponsePolicyDecision *response_decision =</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; WEBKIT_RESPONSE_POLICY_DECISION(decision);</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; WebKitURIResponse *response =</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; webkit_response_policy_decision_get_response(response_decision);;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="keyword">const</span> gchar *request_uri = webkit_uri_response_get_uri(response);</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; WebKitURIRequest *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">request</a>;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; WebKitWebResource *main_resource;</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a> type;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type;</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; mime_type = webkit_uri_response_get_mime_type(response);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;The media type is %s&quot;</span>, mime_type);</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="comment">/* If WebKit can&#39;t handle the media type, start the download</span></div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment"> * process */</span></div><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">if</span> (webkit_response_policy_decision_is_mime_type_supported(response_decision))</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="comment">/* If it&#39;s not the main resource we don&#39;t need to set the document type. */</span></div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; request = webkit_response_policy_decision_get_request(response_decision);</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; request_uri = webkit_uri_request_get_uri(request);</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; main_resource = webkit_web_view_get_main_resource(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">if</span> (g_strcmp0(webkit_web_resource_get_uri(main_resource), request_uri) != 0)</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">return</span> FALSE;</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"> 322</span>&#160; type = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">WWW_WEB_VIEW_DOCUMENT_OTHER</a>;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">if</span> (!strcmp(mime_type, <span class="stringliteral">&quot;text/html&quot;</span>) || !strcmp(mime_type, <span class="stringliteral">&quot;text/plain&quot;</span>))</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; type = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a>;</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!strcmp(mime_type, <span class="stringliteral">&quot;application/xhtml+xml&quot;</span>))</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; type = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">WWW_WEB_VIEW_DOCUMENT_XML</a>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!strncmp(mime_type, <span class="stringliteral">&quot;image/&quot;</span>, 6))</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; type = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">WWW_WEB_VIEW_DOCUMENT_IMAGE</a>;</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (!strncmp(mime_type, <span class="stringliteral">&quot;application/octet-stream&quot;</span>, 6))</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; type = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM</a>;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Document type is %i&quot;</span>, type);</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="comment">/* FIXME: Maybe it makes more sense to have an API to query the media</span></div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="comment"> * type when the load of a page starts than doing this here.</span></div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">document_type</a> != type) {</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">document_type</a> = type;</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="comment">//g_object_notify_by_pspec (G_OBJECT (webview), obj_properties[PROP_DOCUMENT_TYPE]);</span></div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</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; webkit_policy_decision_download(decision);</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;}</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div><div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb"> 347</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">remmina_www_web_view_js_finished</a>(GObject *<span class="keywordtype">object</span>, GAsyncResult *result, gpointer user_data)</div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;{</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp = (<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *)user_data;</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; WebKitJavascriptResult *js_result;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; js_result = webkit_web_view_run_javascript_finish(WEBKIT_WEB_VIEW(<span class="keywordtype">object</span>), result, &amp;error);</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span> (!js_result) {</div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; g_warning(<span class="stringliteral">&quot;Could not run JavaScript code: %s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; g_error_free(error);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; }</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="preprocessor">#if WEBKIT_CHECK_VERSION(2, 21, 1)</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; gchar *str_value;</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; JSCValue *value = webkit_javascript_result_get_js_value(js_result);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">if</span> (jsc_value_is_string(value) || jsc_value_is_boolean(value)) {</div><div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; JSCException *exception;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; str_value = jsc_value_to_string(value);</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; exception = jsc_context_get_exception(jsc_value_get_context(value));</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (exception)</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; g_warning(<span class="stringliteral">&quot;Could not run JavaScript code: %s&quot;</span>, jsc_exception_get_message(exception));</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; g_print(<span class="stringliteral">&quot;Script result: %s\n&quot;</span>, str_value);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; g_free(str_value);</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; str_value = jsc_value_to_string(value);</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; g_warning(<span class="stringliteral">&quot;Received something other than a string from JavaScript: %s&quot;</span>, str_value);</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; g_free(str_value);</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; }</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; <span class="keywordflow">if</span> (js_result) webkit_javascript_result_unref(js_result);</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a> = TRUE;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;}</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4"> 386</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;{</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;}</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f"> 392</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f">remmina_plugin_www_load_failed_tls_cb</a>(WebKitWebView *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>,</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; gchar *failing_uri, GTlsCertificate *certificate,</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; GTlsCertificateFlags errors, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;{</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="comment">/* Avoid failing if certificate is not good. TODO: Add widgets to let the user decide */</span></div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Ignoring certificate and return TRUE&quot;</span>);</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00"> 402</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;{</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; TRACE_CALL(__func__);</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; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; gchar *datapath;</div><div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; gchar *cache_dir;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a>, 1);</div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; <span class="comment">/* RemminaPluginWWWData initialization */</span></div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a> = FALSE;</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a> = FALSE;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">document_type</a> = <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a>;</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; datapath = g_build_path(<span class="stringliteral">&quot;/&quot;</span>,</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; g_path_get_dirname(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">file_get_path</a>(remminafile)),</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; PLUGIN_NAME,</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; NULL);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; cache_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, datapath, <span class="stringliteral">&quot;cache&quot;</span>, NULL);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WWW data path is %s&quot;</span>, datapath);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordflow">if</span> (datapath) {</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; gchar *indexeddb_dir = g_build_filename(datapath, <span class="stringliteral">&quot;indexeddb&quot;</span>, NULL);</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; gchar *local_storage_dir = g_build_filename(datapath, <span class="stringliteral">&quot;local_storage&quot;</span>, NULL);</div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; gchar *applications_dir = g_build_filename(datapath, <span class="stringliteral">&quot;applications&quot;</span>, NULL);</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; gchar *websql_dir = g_build_filename(datapath, <span class="stringliteral">&quot;websql&quot;</span>, NULL);</div><div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a> = webkit_website_data_manager_new(</div><div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="stringliteral">&quot;disk-cache-directory&quot;</span>, cache_dir,</div><div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="stringliteral">&quot;indexeddb-directory&quot;</span>, indexeddb_dir,</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="stringliteral">&quot;local-storage-directory&quot;</span>, local_storage_dir,</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="stringliteral">&quot;offline-application-cache-directory&quot;</span>, applications_dir,</div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="stringliteral">&quot;websql-directory&quot;</span>, websql_dir,</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; NULL</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; g_free(indexeddb_dir);</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; g_free(local_storage_dir);</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; g_free(applications_dir);</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; g_free(websql_dir);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; g_free(datapath);</div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a> = webkit_website_data_manager_new_ephemeral();</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; }</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;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>))</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a> = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>));</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keywordflow">else</span></div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a> = <span class="stringliteral">&quot;https://remmina.org&quot;</span>;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; g_info(<span class="stringliteral">&quot;URL is set to %s&quot;</span>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a>);</div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a> = webkit_settings_new();</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a> = webkit_web_context_new_with_website_data_manager(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a>);</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="comment">/* enable-fullscreen, default TRUE, TODO: Try FALSE */</span></div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="comment">/* Turn on the developer extras */</span></div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; webkit_settings_set_enable_developer_extras(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; webkit_settings_set_enable_write_console_messages_to_stdout(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="preprocessor">#endif</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="comment">/* allow-file-access-from-file-urls */</span></div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; webkit_settings_set_allow_file_access_from_file_urls(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="comment">/* allow-modal-dialogs */</span></div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; webkit_settings_set_allow_modal_dialogs(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="comment">/* enable-caret-browsing */</span></div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; webkit_settings_set_enable_caret_browsing(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="comment">/* enable-html5-database */</span></div><div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; webkit_settings_set_enable_html5_database(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</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; <span class="comment">/* user-agent. */</span></div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;user-agent&quot;</span>)) {</div><div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; gchar *useragent = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;user-agent&quot;</span>));</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; webkit_settings_set_user_agent(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, useragent);</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; g_info(<span class="stringliteral">&quot;User Agent set to: %s&quot;</span>, useragent);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; g_free(useragent);</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="comment">/* enable-java */</span></div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-java&quot;</span>, FALSE)) {</div><div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; webkit_settings_set_enable_java(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; g_info(<span class="stringliteral">&quot;Enable Java&quot;</span>);</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; }</div><div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="comment">/* enable-smooth-scrolling */</span></div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-smooth-scrolling&quot;</span>, FALSE)) {</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; webkit_settings_set_enable_smooth_scrolling(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; g_info(<span class="stringliteral">&quot;enable-smooth-scrolling enabled&quot;</span>);</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; }</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="comment">/* enable-spatial-navigation */</span></div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-spatial-navigation&quot;</span>, FALSE)) {</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; webkit_settings_set_enable_spatial_navigation(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; g_info(<span class="stringliteral">&quot;enable-spatial-navigation enabled&quot;</span>);</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; }</div><div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="comment">/* enable-webaudio */</span></div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-webaudio&quot;</span>, FALSE)) {</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; webkit_settings_set_enable_webaudio(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; g_info(<span class="stringliteral">&quot;enable-webaudio enabled&quot;</span>);</div><div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; }</div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="comment">/* enable-plugins */</span></div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-plugins&quot;</span>, FALSE)) {</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; webkit_settings_set_enable_plugins(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; g_info(<span class="stringliteral">&quot;Enable plugins&quot;</span>);</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; }</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="comment">/* enable-webgl */</span></div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-webgl&quot;</span>, FALSE)) {</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; webkit_settings_set_enable_webgl(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; webkit_settings_set_enable_accelerated_2d_canvas(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; g_info(<span class="stringliteral">&quot;enable-webgl enabled&quot;</span>);</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; }</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ignore-tls-errors&quot;</span>, FALSE)) {</div><div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; webkit_web_context_set_tls_errors_policy(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>, WEBKIT_TLS_ERRORS_POLICY_IGNORE);</div><div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; g_info(<span class="stringliteral">&quot;Ignore TLS errors&quot;</span>);</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy-url&quot;</span>)) {</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; gchar *proxyurl = g_strdup(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;proxy-url&quot;</span>));</div><div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; WebKitNetworkProxySettings *proxy_settings = webkit_network_proxy_settings_new (proxyurl, NULL);</div><div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; webkit_web_context_set_network_proxy_settings(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>, WEBKIT_NETWORK_PROXY_MODE_CUSTOM, proxy_settings);</div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; webkit_network_proxy_settings_free(proxy_settings);</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; g_free(proxyurl);</div><div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; }</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; webkit_web_context_set_automation_allowed(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>, TRUE);</div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; webkit_settings_set_javascript_can_open_windows_automatically(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; webkit_settings_set_allow_modal_dialogs(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, TRUE);</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keywordflow">if</span> (!webkit_settings_get_enable_frame_flattening(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>)) {</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; webkit_settings_set_enable_frame_flattening(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, <span class="keyword">true</span>);</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; }</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; webkit_settings_set_enable_resizable_text_areas(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>, <span class="keyword">true</span>);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>), <span class="stringliteral">&quot;download-started&quot;</span>,</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; G_CALLBACK(<a class="code" href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">remmina_plugin_www_download_started</a>), gp);</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;}</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div><div class="line"><a name="l00546"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23"> 546</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">remmina_plugin_www_on_auth</a>(WebKitWebView *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, WebKitAuthenticationRequest *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">request</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;{</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; gchar *s_username, *s_password;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; gint ret;</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; gboolean save;</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; gboolean disablepasswordstoring;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; g_info(<span class="stringliteral">&quot;Authenticate&quot;</span>);</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; disablepasswordstoring = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, FALSE);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; ret = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">protocol_plugin_init_auth</a>(gp,</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; (disablepasswordstoring ? 0 : <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a>) | <a class="code" href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a>,</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; _(<span class="stringliteral">&quot;Enter WWW authentication credentials&quot;</span>),</div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>),</div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>),</div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; NULL,</div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; NULL);</div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keywordflow">if</span> (ret == GTK_RESPONSE_OK) {</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; s_username = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">protocol_plugin_init_get_username</a>(gp);</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; s_password = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">protocol_plugin_init_get_password</a>(gp);</div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; save = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">protocol_plugin_init_get_savepassword</a>(gp);</div><div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordflow">if</span> (save) {</div><div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, s_username);</div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, s_password);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>, NULL);</div><div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">file_set_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>, NULL);</div><div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; }</div><div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">if</span> (request) {</div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">credentials</a> = webkit_credential_new(</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; g_strdup(s_username),</div><div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; g_strdup(s_password),</div><div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; WEBKIT_CREDENTIAL_PERSISTENCE_FOR_SESSION);</div><div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; webkit_authentication_request_authenticate(request, gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">credentials</a>);</div><div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; webkit_credential_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">credentials</a>);</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; <span class="keywordflow">if</span> (s_username) g_free(s_username);</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; <span class="keywordflow">if</span> (s_password) g_free(s_password);</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a> = TRUE;</div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a> = FALSE;</div><div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; }</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; <span class="keywordflow">return</span> gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a>;</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;</div><div class="line"><a name="l00601"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e"> 601</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">remmina_plugin_www_form_auth</a>(WebKitWebView *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>,</div><div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; WebKitLoadEvent <a class="code" href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">load_event</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;{</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; gchar *s_js;</div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; GString *jsstr;</div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; gchar *remmina_dir;</div><div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; gchar *www_js_file = NULL;</div><div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div><div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="keywordflow">if</span> (gpdata &amp;&amp; !gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a>)</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a> = FALSE;</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;</div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;load-changed emitted&quot;</span>);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;</div><div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160;</div><div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; <span class="keyword">const</span> gchar *<span class="keyword">const</span> *dirs = g_get_system_data_dirs();</div><div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;</div><div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160; <span class="keywordflow">for</span> (i = 0; dirs[i] != NULL; ++i) {</div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; remmina_dir = g_build_path(<span class="stringliteral">&quot;/&quot;</span>, dirs[i], <span class="stringliteral">&quot;remmina&quot;</span>, <span class="stringliteral">&quot;res&quot;</span>, NULL);</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; GDir *system_data_dir = g_dir_open(remmina_dir, 0, &amp;error);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="comment">// ignoring this error is ok, because the folder may not exists</span></div><div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; g_error_free(error);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; error = NULL;</div><div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">if</span> (system_data_dir) {</div><div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; g_dir_close(system_data_dir);</div><div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; g_free(www_js_file);</div><div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; www_js_file = g_strdup_printf(<span class="stringliteral">&quot;%s/www-js.js&quot;</span>, remmina_dir);</div><div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="keywordflow">if</span> (g_file_test(www_js_file, G_FILE_TEST_EXISTS))</div><div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; }</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; g_free(remmina_dir);</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; }</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; <span class="keywordflow">switch</span> (load_event) {</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; <span class="keywordflow">case</span> WEBKIT_LOAD_STARTED:</div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Load started&quot;</span>);</div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordflow">case</span> WEBKIT_LOAD_REDIRECTED:</div><div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Load redirected&quot;</span>);</div><div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">case</span> WEBKIT_LOAD_COMMITTED:</div><div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; <span class="comment">/* The load is being performed. Current URI is</span></div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="comment"> * the final one and it won&#39;t change unless a new</span></div><div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;<span class="comment"> * load is requested or a navigation within the</span></div><div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;<span class="comment"> * same page is performed</span></div><div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;<span class="comment"> * uri = webkit_web_view_get_uri (webview); */</span></div><div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Load committed&quot;</span>);</div><div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keywordflow">case</span> WEBKIT_LOAD_FINISHED:</div><div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="comment">/* Load finished, we can now set user/password</span></div><div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;<span class="comment"> * in the HTML form */</span></div><div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Load finished&quot;</span>);</div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; <span class="keywordflow">if</span> (gpdata &amp;&amp; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a> == TRUE)</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keywordflow">break</span>;</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">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>) ||</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>)) {</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Authentication is enabled&quot;</span>);</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordflow">if</span> (www_js_file) {</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; error = NULL;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordflow">if</span> (g_file_get_contents(www_js_file, &amp;s_js, NULL, &amp;error)) {</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; jsstr = g_string_new(s_js);</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>))</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(jsstr, <span class="stringliteral">&quot;USRPLACEHOLDER&quot;</span>,</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>));</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>))</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(jsstr, <span class="stringliteral">&quot;PWDPLACEHOLDER&quot;</span>,</div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>));</div><div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; s_js = g_string_free(jsstr, FALSE);</div><div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;</div><div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordflow">if</span> (!s_js || s_js[0] == <span class="charliteral">&#39;\0&#39;</span>) {</div><div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Trying to send this JavaScript: %s&quot;</span>, s_js);</div><div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160; webkit_web_view_run_javascript(</div><div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; webview,</div><div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; s_js,</div><div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; NULL,</div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; <a class="code" href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">remmina_www_web_view_js_finished</a>,</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; gp);</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; g_free(s_js);</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; }</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; <span class="keywordflow">if</span> (error) {</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Unable to read file: %s\n&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; g_error_free(error);</div><div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Unable to read file. No error returned from glib.\n&quot;</span>);</div><div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; }</div><div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; }</div><div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; }</div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; }</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordflow">break</span>;</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;}</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div><div class="line"><a name="l00707"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea"> 707</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;{</div><div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;</div><div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; webkit_web_view_stop_loading(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>);</div><div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; webkit_web_view_try_close(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>);</div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a>) g_free(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a>);</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">authenticated</a> = FALSE;</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">formauthenticated</a> = FALSE;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a> = NULL;</div><div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">data_mgr</a> = NULL;</div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a> = NULL;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a> = NULL;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;</div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="comment">/* Remove instance-&gt;context from gp object data to avoid double free */</span></div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; g_object_steal_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</div><div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00731"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72"> 731</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;{</div><div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;</div><div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a> = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a>);</div><div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div><div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a>);</div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a> = WEBKIT_WEB_VIEW(webkit_web_view_new_with_context(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">context</a>));</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; webkit_web_view_set_settings(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">settings</a>);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;username&quot;</span>) ||</div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;password&quot;</span>)) {</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Authentication is enabled&quot;</span>);</div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; <a class="code" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">remmina_plugin_www_on_auth</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, NULL, gp);</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;</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="comment">//&quot;signal::load-failed-with-tls-errors&quot;, G_CALLBACK(remmina_plugin_www_load_failed_tls_cb), gp,</span></div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; g_object_connect(</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>),</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; <span class="stringliteral">&quot;signal::create&quot;</span>, G_CALLBACK(<a class="code" href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">remmina_plugin_www_on_create</a>), gp,</div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; <span class="stringliteral">&quot;signal::load-changed&quot;</span>, G_CALLBACK(<a class="code" href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">remmina_plugin_www_form_auth</a>), gp,</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160; <span class="stringliteral">&quot;signal::authenticate&quot;</span>, G_CALLBACK(<a class="code" href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">remmina_plugin_www_on_auth</a>), gp,</div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="stringliteral">&quot;signal::decide-policy&quot;</span>, G_CALLBACK(<a class="code" href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">remmina_plugin_www_decide_policy_cb</a>), gp,</div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; NULL);</div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;</div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; gtk_widget_set_hexpand(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>), TRUE);</div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; gtk_widget_set_vexpand(GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>), TRUE);</div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; gtk_container_add(GTK_CONTAINER(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a>), GTK_WIDGET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>));</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; webkit_web_view_load_uri(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">url</a>);</div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;enable-webinspector&quot;</span>, FALSE)) {</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160; g_info(<span class="stringliteral">&quot;WebInspector enabled&quot;</span>);</div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160; WebKitWebInspector *inspector = webkit_web_view_get_inspector(WEBKIT_WEB_VIEW(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>));</div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160; webkit_web_inspector_attach(inspector);</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160; webkit_web_inspector_show(WEBKIT_WEB_INSPECTOR(inspector));</div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; }</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160; gtk_widget_show_all(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">box</a>);</div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160; <span class="keywordflow">return</span> TRUE;</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;</div><div class="line"><a name="l00783"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8"> 783</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">remmina_plugin_www_save_snapshot</a>(GObject *<span class="keywordtype">object</span>, GAsyncResult *result, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160;{</div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160;</div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; WebKitWebView *<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a> = WEBKIT_WEB_VIEW(<span class="keywordtype">object</span>);</div><div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160;</div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160; GError *err = NULL;</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; cairo_surface_t *surface;</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160; <span class="comment">//unsigned char* buffer;</span></div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160; <span class="keywordtype">int</span> width;</div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160; <span class="keywordtype">int</span> height;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160; GdkPixbuf *screenshot;</div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160; GString *pngstr;</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160; gchar *pngname;</div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160; <span class="comment">//cairo_forma_t* cairo_format;</span></div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span>&#160; GDateTime *date = g_date_time_new_now_utc();</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; surface = webkit_web_view_get_snapshot_finish(WEBKIT_WEB_VIEW(webview), result, &amp;err);</div><div class="line"><a name="l00805"></a><span class="lineno"> 805</span>&#160; <span class="keywordflow">if</span> (err)</div><div class="line"><a name="l00806"></a><span class="lineno"> 806</span>&#160; g_warning(<span class="stringliteral">&quot;An error happened generating the snapshot: %s\n&quot;</span>, err-&gt;message);</div><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160; <span class="comment">//buffer = cairo_image_surface_get_data (surface);</span></div><div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; width = cairo_image_surface_get_width(surface);</div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; height = cairo_image_surface_get_height(surface);</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; <span class="comment">//cairo_format = cairo_image_surface_get_format (surface);</span></div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160;</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; screenshot = gdk_pixbuf_get_from_surface(surface, 0, 0, width, height);</div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160; <span class="keywordflow">if</span> (screenshot == NULL)</div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;WWW: gdk_pixbuf_get_from_surface failed&quot;</span>);</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; pngstr = g_string_new(g_strdup_printf(<span class="stringliteral">&quot;%s/%s.png&quot;</span>,</div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;screenshot_path&quot;</span>),</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">pref_get_value</a>(<span class="stringliteral">&quot;screenshot_name&quot;</span>)));</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%p&quot;</span>,</div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;name&quot;</span>));</div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%h&quot;</span>, <span class="stringliteral">&quot;URL&quot;</span>);</div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%Y&quot;</span>,</div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_year(date)));</div><div class="line"><a name="l00824"></a><span class="lineno"> 824</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%m&quot;</span>, g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>,</div><div class="line"><a name="l00825"></a><span class="lineno"> 825</span>&#160; g_date_time_get_month(date)));</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%d&quot;</span>,</div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_day_of_month(date)));</div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%H&quot;</span>,</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_hour(date)));</div><div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%M&quot;</span>,</div><div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%d&quot;</span>, g_date_time_get_minute(date)));</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(pngstr, <span class="stringliteral">&quot;%S&quot;</span>,</div><div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160; g_strdup_printf(<span class="stringliteral">&quot;%f&quot;</span>, g_date_time_get_seconds(date)));</div><div class="line"><a name="l00834"></a><span class="lineno"> 834</span>&#160; g_date_time_unref(date);</div><div class="line"><a name="l00835"></a><span class="lineno"> 835</span>&#160; pngname = g_string_free(pngstr, FALSE);</div><div class="line"><a name="l00836"></a><span class="lineno"> 836</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">debug</a>(<span class="stringliteral">&quot;Saving screenshot as %s&quot;</span>, pngname);</div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; cairo_surface_write_to_png(surface, pngname);</div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; <span class="keywordflow">if</span> (g_file_test(pngname, G_FILE_TEST_EXISTS))</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <a class="code" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a>(<span class="stringliteral">&quot;www-plugin-screenshot-is-ready-id&quot;</span>, _(<span class="stringliteral">&quot;Screenshot taken&quot;</span>), pngname);</div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160;</div><div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; cairo_surface_destroy(surface);</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"><a class="line" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71"> 844</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <a class="code" href="struct___remmina_plugin_screenshot_data.html">RemminaPluginScreenshotData</a> *rpsd)</div><div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160;{</div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *gpdata;</div><div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; gpdata = (<a class="code" href="struct___remmina_plugin_w_w_w_data.html">RemminaPluginWWWData</a> *)g_object_get_data(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>);</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; webkit_web_view_get_snapshot(gpdata-&gt;<a class="code" href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">webview</a>,</div><div class="line"><a name="l00851"></a><span class="lineno"> 851</span>&#160; WEBKIT_SNAPSHOT_REGION_FULL_DOCUMENT,</div><div class="line"><a name="l00852"></a><span class="lineno"> 852</span>&#160; WEBKIT_SNAPSHOT_OPTIONS_NONE,</div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>&#160; NULL,</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span>&#160; (GAsyncReadyCallback)<a class="code" href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">remmina_plugin_www_save_snapshot</a>,</div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>&#160; gp);</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00868"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb"> 868</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a>[] =</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"> 870</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;server&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;URL&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;http://address or https://address&quot;</span>) },</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;username&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Username&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a>, <span class="stringliteral">&quot;password&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Password&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;};</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160;</div><div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for advanced settings.</span></div><div class="line"><a name="l00877"></a><span class="lineno"> 877</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00878"></a><span class="lineno"> 878</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>&#160;<span class="comment"> * f) Setting Tooltip</span></div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00885"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1"> 885</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a>[] =</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>&#160;{</div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;user-agent&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;User agent&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00888"></a><span class="lineno"> 888</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;proxy-url&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Proxy URL&quot;</span>), FALSE, NULL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;E.g. https://example.org, socks://mysocks:1080&quot;</span>) },</div><div class="line"><a name="l00889"></a><span class="lineno"> 889</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-java&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on Java support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-smooth-scrolling&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on smooth scrolling&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00891"></a><span class="lineno"> 891</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-spatial-navigation&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on spatial navigation&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00892"></a><span class="lineno"> 892</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-plugins&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on plugin support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webgl&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on WebGL support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webaudio&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on HTML5 audio support&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;ignore-tls-errors&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Ignore TLS errors&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;disablepasswordstoring&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Forget passwords after use&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;enable-webinspector&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Turn on Web Inspector&quot;</span>), TRUE, NULL, NULL },</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>&#160;};</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>&#160;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00905"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8"> 905</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</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; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</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"> 910</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00911"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99"> 911</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a> =</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span>&#160;{</div><div class="line"><a name="l00913"></a><span class="lineno"> 913</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00914"></a><span class="lineno"> 914</span>&#160; PLUGIN_NAME, <span class="comment">// Name</span></div><div class="line"><a name="l00915"></a><span class="lineno"> 915</span>&#160; PLUGIN_DESCRIPTION, <span class="comment">// Description</span></div><div class="line"><a name="l00916"></a><span class="lineno"> 916</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>&#160; PLUGIN_VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>&#160; PLUGIN_APPICON, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>&#160; NULL, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>&#160; <a class="code" href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>&#160; <a class="code" href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a>, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00923"></a><span class="lineno"> 923</span>&#160; <a class="code" href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00924"></a><span class="lineno"> 924</span>&#160; <a class="code" href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00925"></a><span class="lineno"> 925</span>&#160; <a class="code" href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00926"></a><span class="lineno"> 926</span>&#160; <a class="code" href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>&#160; <a class="code" href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span>&#160; NULL, <span class="comment">// Call feature</span></div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>&#160; NULL, <span class="comment">// Send keystroke</span></div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>&#160; <a class="code" href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a> <span class="comment">// Capture screenshot</span></div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>&#160;};</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>&#160;</div><div class="line"><a name="l00933"></a><span class="lineno"><a class="line" href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 933</a></span>&#160;G_MODULE_EXPORT gboolean <a class="code" href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00937"></a><span class="lineno"> 937</span>&#160;</div><div class="line"><a name="l00938"></a><span class="lineno"> 938</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</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;</div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a> *)&amp;remmina_plugin))</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>&#160;}</div><div class="ttc" id="www__plugin_8c_html_a1a152b9760d6b4808393569b0409f8b8"><div class="ttname"><a href="www__plugin_8c.html#a1a152b9760d6b4808393569b0409f8b8">remmina_plugin_www_save_snapshot</a></div><div class="ttdeci">static void remmina_plugin_www_save_snapshot(GObject *object, GAsyncResult *result, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00783">www_plugin.c:783</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a6d2341e2d7c157b0ff64835d1ade6fbb"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a6d2341e2d7c157b0ff64835d1ade6fbb">_RemminaPluginWWWData::url</a></div><div class="ttdeci">gchar * url</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00068">www_plugin.c:68</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae6ccaf3df9ea3201521eb62dd9943b00"><div class="ttname"><a href="www__plugin_8c.html#ae6ccaf3df9ea3201521eb62dd9943b00">remmina_plugin_www_init</a></div><div class="ttdeci">static void remmina_plugin_www_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00402">www_plugin.c:402</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a05218b821edab542795439a87ad9d909"><div class="ttname"><a href="www__plugin_8c.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a></div><div class="ttdeci">void remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00228">www_plugin.c:228</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_aa8ef80ab8bb8cae8d56890720dd58959"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#aa8ef80ab8bb8cae8d56890720dd58959">_RemminaPluginWWWData::credentials</a></div><div class="ttdeci">WebKitCredential * credentials</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00063">www_plugin.c:63</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a80b04541339086a453fad32295806f84"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a80b04541339086a453fad32295806f84">_RemminaPluginWWWData::formauthenticated</a></div><div class="ttdeci">gboolean formauthenticated</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00070">www_plugin.c:70</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_af1e5c3cccf8fcfb51c4518462b9b61ea"><div class="ttname"><a href="www__plugin_8c.html#af1e5c3cccf8fcfb51c4518462b9b61ea">remmina_plugin_www_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_www_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00707">www_plugin.c:707</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a9323d1142816fbac8f87545a398a0f71"><div class="ttname"><a href="www__plugin_8c.html#a9323d1142816fbac8f87545a398a0f71">remmina_plugin_www_get_snapshot</a></div><div class="ttdeci">static gboolean remmina_plugin_www_get_snapshot(RemminaProtocolWidget *gp, RemminaPluginScreenshotData *rpsd)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00844">www_plugin.c:844</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6d7133e80857fc6cbed99b8c42ff0081"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6d7133e80857fc6cbed99b8c42ff0081">_RemminaPluginService::debug</a></div><div class="ttdeci">void(* debug)(const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00214">plugin.h:214</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a></div><div class="ttdeci">WWWWebViewDocumentType</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00042">www_plugin.h:42</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae9973fcef32044b1238648c4695c3f23"><div class="ttname"><a href="www__plugin_8c.html#ae9973fcef32044b1238648c4695c3f23">remmina_plugin_www_on_auth</a></div><div class="ttdeci">static gboolean remmina_plugin_www_on_auth(WebKitWebView *webview, WebKitAuthenticationRequest *request, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00546">www_plugin.c:546</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="www__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00073">www_plugin.c:73</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="www__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00933">www_plugin.c:933</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ae76d06b6e313971e5f420dd6e7f4c5aa">REMMINA_PROTOCOL_SETTING_TYPE_PASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00082">types.h:82</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00043">www_plugin.h:43</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_adb58ee650d75d952dd5802fbba9e9b0e"><div class="ttname"><a href="www__plugin_8c.html#adb58ee650d75d952dd5802fbba9e9b0e">remmina_plugin_www_form_auth</a></div><div class="ttdeci">static void remmina_plugin_www_form_auth(WebKitWebView *webview, WebKitLoadEvent load_event, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00601">www_plugin.c:601</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">WWW_WEB_VIEW_DOCUMENT_OTHER</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00047">www_plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a22010474535695604f1e05498e726f3e"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a22010474535695604f1e05498e726f3e">_RemminaPluginWWWData::context</a></div><div class="ttdeci">WebKitWebContext * context</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00061">www_plugin.c:61</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></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_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a591d1cc396cb66112cb17462a882ef4f"><div class="ttname"><a href="www__plugin_8c.html#a591d1cc396cb66112cb17462a882ef4f">remmina_plugin_www_load_failed_tls_cb</a></div><div class="ttdeci">static gboolean remmina_plugin_www_load_failed_tls_cb(WebKitWebView *webview, gchar *failing_uri, GTlsCertificate *certificate, GTlsCertificateFlags errors, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00392">www_plugin.c:392</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a282f3f57584e24a15a8a5d5cf5aa8d72"><div class="ttname"><a href="www__plugin_8c.html#a282f3f57584e24a15a8a5d5cf5aa8d72">remmina_plugin_www_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_www_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00731">www_plugin.c:731</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a32adefd1fb55dd7237b907923d2a3690"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a32adefd1fb55dd7237b907923d2a3690">_RemminaPluginWWWData::webview</a></div><div class="ttdeci">WebKitWebView * webview</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00065">www_plugin.c:65</a></div></div>
+<div class="ttc" id="www__utils_8c_html_a800f6ee754dd01e00951447c51a9723c"><div class="ttname"><a href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a></div><div class="ttdeci">guint www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00137">www_utils.c:137</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_aa3e07f92f32ee3bab1b0e33c33e619db"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#aa3e07f92f32ee3bab1b0e33c33e619db">_RemminaPluginWWWData::document_type</a></div><div class="ttdeci">WWWWebViewDocumentType document_type</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00058">www_plugin.c:58</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae8ced85169ca68aae1ed7f14b488e5b8"><div class="ttname"><a href="www__plugin_8c.html#ae8ced85169ca68aae1ed7f14b488e5b8">remmina_www_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_www_features[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00905">www_plugin.c:905</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_af2b857b2de1af3621f543b810f68b17b"><div class="ttname"><a href="struct___remmina_plugin_service.html#af2b857b2de1af3621f543b810f68b17b">_RemminaPluginService::protocol_plugin_init_get_savepassword</a></div><div class="ttdeci">gboolean(* protocol_plugin_init_get_savepassword)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00178">plugin.h:178</a></div></div>
+<div class="ttc" id="www__plugin_8h_html"><div class="ttname"><a href="www__plugin_8h.html">www_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a3874a40164919bc5389d166df691bfdb"><div class="ttname"><a href="www__plugin_8c.html#a3874a40164919bc5389d166df691bfdb">remmina_plugin_www_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_www_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00868">www_plugin.c:868</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ac6b72af8913086b2ec590a675473f2a1"><div class="ttname"><a href="www__plugin_8c.html#ac6b72af8913086b2ec590a675473f2a1">remmina_plugin_www_advanced_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_www_advanced_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00885">www_plugin.c:885</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae38b4f2efc412b6256221d9a33a03cd4"><div class="ttname"><a href="www__plugin_8c.html#ae38b4f2efc412b6256221d9a33a03cd4">remmina_www_query_feature</a></div><div class="ttdeci">static gboolean remmina_www_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00386">www_plugin.c:386</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_af4c8fa778acc2d2f7dd9418e48c99f19"><div class="ttname"><a href="www__plugin_8c.html#af4c8fa778acc2d2f7dd9418e48c99f19">remmina_plugin_www_download_started</a></div><div class="ttdeci">void remmina_plugin_www_download_started(WebKitWebContext *context, WebKitDownload *download, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00075">www_plugin.c:75</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a860dc4e2fc1479ec1cbdcc53236df9e9"><div class="ttname"><a href="struct___remmina_plugin_service.html#a860dc4e2fc1479ec1cbdcc53236df9e9">_RemminaPluginService::pref_get_value</a></div><div class="ttdeci">gchar *(* pref_get_value)(const gchar *key)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00207">plugin.h:207</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_ab4e4fcc5e49437cb5c2c1d949aaa9436"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#ab4e4fcc5e49437cb5c2c1d949aaa9436">_RemminaPluginWWWData::load_event</a></div><div class="ttdeci">WebKitLoadEvent load_event</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00066">www_plugin.c:66</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_aab3ceb1ae095823fcbee98ce2811b374"><div class="ttname"><a href="www__plugin_8c.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a></div><div class="ttdeci">gboolean remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00288">www_plugin.c:288</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a9b4cfe0a97a34260e58784feef693704"><div class="ttname"><a href="struct___remmina_plugin_service.html#a9b4cfe0a97a34260e58784feef693704">_RemminaPluginService::protocol_plugin_init_auth</a></div><div class="ttdeci">gint(* protocol_plugin_init_auth)(RemminaProtocolWidget *gp, RemminaMessagePanelFlags pflags, const gchar *title, const gchar *default_username, const gchar *default_password, const gchar *default_domain, const gchar *password_prompt)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00172">plugin.h:172</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7a8f910597287a73453a5f09ca0037d093">REMMINA_PROTOCOL_SSH_SETTING_NONE</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00104">types.h:104</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a73ffad7289c2476a04d7270fa340bee9"><div class="ttname"><a href="www__plugin_8c.html#a73ffad7289c2476a04d7270fa340bee9">RemminaPluginWWWData</a></div><div class="ttdeci">struct _RemminaPluginWWWData RemminaPluginWWWData</div></div>
+<div class="ttc" id="www__config_8h_html"><div class="ttname"><a href="www__config_8h.html">www_config.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_aa413711beeac32a453068c0faf75f164"><div class="ttname"><a href="struct___remmina_plugin_service.html#aa413711beeac32a453068c0faf75f164">_RemminaPluginService::file_get_path</a></div><div class="ttdeci">const gchar *(* file_get_path)(RemminaFile *remminafile)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00198">plugin.h:198</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a18fa028449a5d5d455ce6cde7bfd2ef2"><div class="ttname"><a href="www__plugin_8c.html#a18fa028449a5d5d455ce6cde7bfd2ef2">remmina_plugin_www_decide_nav</a></div><div class="ttdeci">void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00128">www_plugin.c:128</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a98eddc35144b89bce2e247d5ea49177b"><div class="ttname"><a href="www__plugin_8c.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a></div><div class="ttdeci">void remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00086">www_plugin.c:86</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a10be0730fc3ea326856019ae139a922a">REMMINA_MESSAGE_PANEL_FLAG_USERNAME</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00132">types.h:132</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a3b53d8bbfcf5bdf5564c8804d211cf99"><div class="ttname"><a href="www__plugin_8c.html#a3b53d8bbfcf5bdf5564c8804d211cf99">remmina_plugin</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00911">www_plugin.c:911</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac892dd297fae87868752a1f86e07937d"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac892dd297fae87868752a1f86e07937d">_RemminaPluginService::protocol_plugin_init_get_username</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_username)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00175">plugin.h:175</a></div></div>
+<div class="ttc" id="types_8h_html_a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c"><div class="ttname"><a href="types_8h.html#a341a0a8b6509633809d99348cc3ba486a9b734c324722cf2982768feaeeb15c7c">REMMINA_MESSAGE_PANEL_FLAG_SAVEPASSWORD</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00135">types.h:135</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ad98eaa3efc0214bc701dc66b5730e174"><div class="ttname"><a href="struct___remmina_plugin_service.html#ad98eaa3efc0214bc701dc66b5730e174">_RemminaPluginService::protocol_plugin_init_get_password</a></div><div class="ttdeci">gchar *(* protocol_plugin_init_get_password)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00176">plugin.h:176</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a3f740cb467c00cb8f17ff2546498fa54"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a3f740cb467c00cb8f17ff2546498fa54">_RemminaPluginWWWData::settings</a></div><div class="ttdeci">WebKitSettings * settings</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00060">www_plugin.c:60</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">WWW_WEB_VIEW_DOCUMENT_XML</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00044">www_plugin.h:44</a></div></div>
+<div class="ttc" id="www__utils_8c_html_abeb378938ab3e0b74430601ebc8639aa"><div class="ttname"><a href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a></div><div class="ttdeci">void www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00053">www_utils.c:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a4880fb57479708bc1cb47bf6b4dcabc3"><div class="ttname"><a href="struct___remmina_plugin_service.html#a4880fb57479708bc1cb47bf6b4dcabc3">_RemminaPluginService::file_set_string</a></div><div class="ttdeci">void(* file_set_string)(RemminaFile *remminafile, const gchar *setting, const gchar *value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00199">plugin.h:199</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_aaaf9e6e616dea9d366b151e575ddedcd"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#aaaf9e6e616dea9d366b151e575ddedcd">_RemminaPluginWWWData::authenticated</a></div><div class="ttdeci">gboolean authenticated</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00069">www_plugin.c:69</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_aaa970cf06dde51601b91b8d6f936b7ed"><div class="ttname"><a href="www__plugin_8c.html#aaa970cf06dde51601b91b8d6f936b7ed">remmina_plugin_www_decide_policy_cb</a></div><div class="ttdeci">static gboolean remmina_plugin_www_decide_policy_cb(WebKitWebView *webview, WebKitPolicyDecision *decision, WebKitPolicyDecisionType decision_type, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00102">www_plugin.c:102</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ae91c9382d5bb29416eab7de18c6d6b8d"><div class="ttname"><a href="www__plugin_8c.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a></div><div class="ttdeci">void remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00092">www_plugin.c:92</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">WWW_WEB_VIEW_DOCUMENT_IMAGE</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00045">www_plugin.h:45</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00046">www_plugin.h:46</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html">_RemminaPluginWWWData</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00057">www_plugin.c:57</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a6ff4ea7c6ceb2351c6248427cf83a4db"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a6ff4ea7c6ceb2351c6248427cf83a4db">_RemminaPluginWWWData::box</a></div><div class="ttdeci">GtkWidget * box</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00059">www_plugin.c:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_screenshot_data_html"><div class="ttname"><a href="struct___remmina_plugin_screenshot_data.html">_RemminaPluginScreenshotData</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00064">types.h:64</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_ac7390cf88e14b015713ea1f0980909f0"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#ac7390cf88e14b015713ea1f0980909f0">_RemminaPluginWWWData::request</a></div><div class="ttdeci">WebKitAuthenticationRequest * request</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00064">www_plugin.c:64</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_a298678121c7123265e772c0b060f5dcb"><div class="ttname"><a href="www__plugin_8c.html#a298678121c7123265e772c0b060f5dcb">remmina_www_web_view_js_finished</a></div><div class="ttdeci">static void remmina_www_web_view_js_finished(GObject *object, GAsyncResult *result, gpointer user_data)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00347">www_plugin.c:347</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_w_w_w_data_html_a9d54a3dc838528c104eaea91d4f777ab"><div class="ttname"><a href="struct___remmina_plugin_w_w_w_data.html#a9d54a3dc838528c104eaea91d4f777ab">_RemminaPluginWWWData::data_mgr</a></div><div class="ttdeci">WebKitWebsiteDataManager * data_mgr</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00062">www_plugin.c:62</a></div></div>
+<div class="ttc" id="www__plugin_8c_html_ab0a82693798a5534d8657ba9f7634057"><div class="ttname"><a href="www__plugin_8c.html#ab0a82693798a5534d8657ba9f7634057">remmina_plugin_www_on_create</a></div><div class="ttdeci">void remmina_plugin_www_on_create(WebKitWebView *webview, WebKitNavigationAction *a, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00174">www_plugin.c:174</a></div></div>
+<div class="ttc" id="www__utils_8h_html"><div class="ttname"><a href="www__utils_8h.html">www_utils.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__plugin_8c.html">www_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__plugin_8h.html b/docs/www__plugin_8h.html
new file mode 100644
index 000000000..2044aa317
--- /dev/null
+++ b/docs/www__plugin_8h.html
@@ -0,0 +1,320 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_plugin.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__plugin_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">www_plugin.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="www__plugin_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:accff0b8fc090986bc39b32ed358f03c9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a> { <br />
+&#160;&#160;<a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a>,
+<a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">WWW_WEB_VIEW_DOCUMENT_XML</a>,
+<a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">WWW_WEB_VIEW_DOCUMENT_IMAGE</a>,
+<a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM</a>,
+<br />
+&#160;&#160;<a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">WWW_WEB_VIEW_DOCUMENT_OTHER</a>
+<br />
+ }</td></tr>
+<tr class="separator:accff0b8fc090986bc39b32ed358f03c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad7744b6ffed0a7250dad8d73a1bbdb32"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32">remmina_plugin_www_decide_nav</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ad7744b6ffed0a7250dad8d73a1bbdb32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05218b821edab542795439a87ad9d909"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a05218b821edab542795439a87ad9d909"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab3ceb1ae095823fcbee98ce2811b374"><td class="memItemLeft" align="right" valign="top">gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a> (WebKitPolicyDecision *decision, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aab3ceb1ae095823fcbee98ce2811b374"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98eddc35144b89bce2e247d5ea49177b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a> (WebKitDownload *download, GParamSpec *ps, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a98eddc35144b89bce2e247d5ea49177b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae91c9382d5bb29416eab7de18c6d6b8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a> (WebKitDownload *download, gchar *destination, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae91c9382d5bb29416eab7de18c6d6b8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a id="accff0b8fc090986bc39b32ed358f03c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#accff0b8fc090986bc39b32ed358f03c9">&#9670;&nbsp;</a></span>WWWWebViewDocumentType</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c"></a>WWW_WEB_VIEW_DOCUMENT_HTML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569"></a>WWW_WEB_VIEW_DOCUMENT_XML&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd"></a>WWW_WEB_VIEW_DOCUMENT_IMAGE&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4"></a>WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM&#160;</td><td class="fielddoc"></td></tr>
+<tr><td class="fieldname"><a id="accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b"></a>WWW_WEB_VIEW_DOCUMENT_OTHER&#160;</td><td class="fielddoc"></td></tr>
+</table>
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8h_source.html#l00042">42</a> of file <a class="el" href="www__plugin_8h_source.html">www_plugin.h</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="ad7744b6ffed0a7250dad8d73a1bbdb32"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ad7744b6ffed0a7250dad8d73a1bbdb32">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_nav()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS void remmina_plugin_www_decide_nav </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00128">128</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a05218b821edab542795439a87ad9d909"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05218b821edab542795439a87ad9d909">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_newwin()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_decide_newwin </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00228">228</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aab3ceb1ae095823fcbee98ce2811b374"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aab3ceb1ae095823fcbee98ce2811b374">&#9670;&nbsp;</a></span>remmina_plugin_www_decide_resource()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gboolean remmina_plugin_www_decide_resource </td>
+ <td>(</td>
+ <td class="paramtype">WebKitPolicyDecision *&#160;</td>
+ <td class="paramname"><em>decision</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00288">288</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae91c9382d5bb29416eab7de18c6d6b8d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae91c9382d5bb29416eab7de18c6d6b8d">&#9670;&nbsp;</a></span>remmina_plugin_www_notify_download()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_notify_download </td>
+ <td>(</td>
+ <td class="paramtype">WebKitDownload *&#160;</td>
+ <td class="paramname"><em>download</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gchar *&#160;</td>
+ <td class="paramname"><em>destination</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00092">92</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a98eddc35144b89bce2e247d5ea49177b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a98eddc35144b89bce2e247d5ea49177b">&#9670;&nbsp;</a></span>remmina_plugin_www_response_received()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void remmina_plugin_www_response_received </td>
+ <td>(</td>
+ <td class="paramtype">WebKitDownload *&#160;</td>
+ <td class="paramname"><em>download</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">GParamSpec *&#160;</td>
+ <td class="paramname"><em>ps</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__plugin_8c_source.html#l00086">86</a> of file <a class="el" href="www__plugin_8c_source.html">www_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__plugin_8h.html">www_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__plugin_8h.js b/docs/www__plugin_8h.js
new file mode 100644
index 000000000..9b6d2547b
--- /dev/null
+++ b/docs/www__plugin_8h.js
@@ -0,0 +1,15 @@
+var www__plugin_8h =
+[
+ [ "WWWWebViewDocumentType", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9", [
+ [ "WWW_WEB_VIEW_DOCUMENT_HTML", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c", null ],
+ [ "WWW_WEB_VIEW_DOCUMENT_XML", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569", null ],
+ [ "WWW_WEB_VIEW_DOCUMENT_IMAGE", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd", null ],
+ [ "WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4", null ],
+ [ "WWW_WEB_VIEW_DOCUMENT_OTHER", "www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b", null ]
+ ] ],
+ [ "remmina_plugin_www_decide_nav", "www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32", null ],
+ [ "remmina_plugin_www_decide_newwin", "www__plugin_8h.html#a05218b821edab542795439a87ad9d909", null ],
+ [ "remmina_plugin_www_decide_resource", "www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374", null ],
+ [ "remmina_plugin_www_notify_download", "www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d", null ],
+ [ "remmina_plugin_www_response_received", "www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b", null ]
+]; \ No newline at end of file
diff --git a/docs/www__plugin_8h_source.html b/docs/www__plugin_8h_source.html
new file mode 100644
index 000000000..b1122b88c
--- /dev/null
+++ b/docs/www__plugin_8h_source.html
@@ -0,0 +1,114 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_plugin.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__plugin_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_plugin.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="www__plugin_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#pragma once</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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;webkit2/webkit2.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c"> 43</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a>,</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569"> 44</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">WWW_WEB_VIEW_DOCUMENT_XML</a>,</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd"> 45</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">WWW_WEB_VIEW_DOCUMENT_IMAGE</a>,</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4"> 46</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM</a>,</div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b"> 47</a></span>&#160; <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">WWW_WEB_VIEW_DOCUMENT_OTHER</a></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;} <a class="code" href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;G_BEGIN_DECLS</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32">remmina_plugin_www_decide_nav</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;gboolean <a class="code" href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a>(WebKitPolicyDecision *decision, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a>(WebKitDownload *download, GParamSpec *ps, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a>(WebKitDownload *download, gchar *destination, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;G_END_DECLS</div><div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9">WWWWebViewDocumentType</a></div><div class="ttdeci">WWWWebViewDocumentType</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00042">www_plugin.h:42</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9ad8a3ee80054a920b92a193c6e84d7b9c">WWW_WEB_VIEW_DOCUMENT_HTML</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00043">www_plugin.h:43</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a94ddb3245efc2e8ee4e5944d3d50055b">WWW_WEB_VIEW_DOCUMENT_OTHER</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00047">www_plugin.h:47</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_a98eddc35144b89bce2e247d5ea49177b"><div class="ttname"><a href="www__plugin_8h.html#a98eddc35144b89bce2e247d5ea49177b">remmina_plugin_www_response_received</a></div><div class="ttdeci">void remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00086">www_plugin.c:86</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_aab3ceb1ae095823fcbee98ce2811b374"><div class="ttname"><a href="www__plugin_8h.html#aab3ceb1ae095823fcbee98ce2811b374">remmina_plugin_www_decide_resource</a></div><div class="ttdeci">gboolean remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00288">www_plugin.c:288</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_ad7744b6ffed0a7250dad8d73a1bbdb32"><div class="ttname"><a href="www__plugin_8h.html#ad7744b6ffed0a7250dad8d73a1bbdb32">remmina_plugin_www_decide_nav</a></div><div class="ttdeci">G_BEGIN_DECLS void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00128">www_plugin.c:128</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a3312508c6e879d0bdda13baf651bc569">WWW_WEB_VIEW_DOCUMENT_XML</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00044">www_plugin.h:44</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a665fa26d2235022f11a2b36b06a885dd">WWW_WEB_VIEW_DOCUMENT_IMAGE</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00045">www_plugin.h:45</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4"><div class="ttname"><a href="www__plugin_8h.html#accff0b8fc090986bc39b32ed358f03c9a20be7f0ccef7d70651347889eba498a4">WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM</a></div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8h_source.html#l00046">www_plugin.h:46</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_a05218b821edab542795439a87ad9d909"><div class="ttname"><a href="www__plugin_8h.html#a05218b821edab542795439a87ad9d909">remmina_plugin_www_decide_newwin</a></div><div class="ttdeci">void remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00228">www_plugin.c:228</a></div></div>
+<div class="ttc" id="www__plugin_8h_html_ae91c9382d5bb29416eab7de18c6d6b8d"><div class="ttname"><a href="www__plugin_8h.html#ae91c9382d5bb29416eab7de18c6d6b8d">remmina_plugin_www_notify_download</a></div><div class="ttdeci">void remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="www__plugin_8c_source.html#l00092">www_plugin.c:92</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__plugin_8h.html">www_plugin.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__utils_8c.html b/docs/www__utils_8c.html
new file mode 100644
index 000000000..a45d1dee2
--- /dev/null
+++ b/docs/www__utils_8c.html
@@ -0,0 +1,318 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_utils.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__utils_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">www_utils.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="www__utils_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abeb378938ab3e0b74430601ebc8639aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a> (const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</td></tr>
+<tr class="separator:abeb378938ab3e0b74430601ebc8639aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc2fcc46779fcd3f0fa20dd0e7679069"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils_strpos</a> (const gchar *haystack, const gchar *needle)</td></tr>
+<tr class="separator:adc2fcc46779fcd3f0fa20dd0e7679069"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f5e50e645f4c1c068cd5791080abbbf"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils_string_find</a> (GString *haystack, gint start, gint end, const gchar *needle)</td></tr>
+<tr class="separator:a7f5e50e645f4c1c068cd5791080abbbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedac74feb0f847081efc43429d5b51cc"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a> (GString *str, gint pos, gint len, const gchar *replace)</td></tr>
+<tr class="separator:aedac74feb0f847081efc43429d5b51cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a800f6ee754dd01e00951447c51a9723c"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a> (GString *haystack, const gchar *needle, const gchar *replace)</td></tr>
+<tr class="memdesc:a800f6ee754dd01e00951447c51a9723c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. <a href="#a800f6ee754dd01e00951447c51a9723c">More...</a><br /></td></tr>
+<tr class="separator:a800f6ee754dd01e00951447c51a9723c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abeb378938ab3e0b74430601ebc8639aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abeb378938ab3e0b74430601ebc8639aa">&#9670;&nbsp;</a></span>www_utils_send_notification()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void www_utils_send_notification </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00053">53</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a7f5e50e645f4c1c068cd5791080abbbf"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7f5e50e645f4c1c068cd5791080abbbf">&#9670;&nbsp;</a></span>www_utils_string_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint www_utils_string_find </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>end</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00085">85</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aedac74feb0f847081efc43429d5b51cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedac74feb0f847081efc43429d5b51cc">&#9670;&nbsp;</a></span>www_utils_string_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint www_utils_string_replace </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00117">117</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a800f6ee754dd01e00951447c51a9723c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a800f6ee754dd01e00951447c51a9723c">&#9670;&nbsp;</a></span>www_utils_string_replace_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint www_utils_string_replace_all </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">haystack</td><td>The input string to operate on. This string is modified in place. </td></tr>
+ <tr><td class="paramname">needle</td><td>The string which should be replaced. </td></tr>
+ <tr><td class="paramname">replace</td><td>The replacement for <em>needle</em>.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Number of replacements made. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00137">137</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="adc2fcc46779fcd3f0fa20dd0e7679069"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#adc2fcc46779fcd3f0fa20dd0e7679069">&#9670;&nbsp;</a></span>www_utils_strpos()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint www_utils_strpos </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00067">67</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__utils_8c.html">www_utils.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__utils_8c.js b/docs/www__utils_8c.js
new file mode 100644
index 000000000..ae5883f0b
--- /dev/null
+++ b/docs/www__utils_8c.js
@@ -0,0 +1,8 @@
+var www__utils_8c =
+[
+ [ "www_utils_send_notification", "www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa", null ],
+ [ "www_utils_string_find", "www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf", null ],
+ [ "www_utils_string_replace", "www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc", null ],
+ [ "www_utils_string_replace_all", "www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c", null ],
+ [ "www_utils_strpos", "www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069", null ]
+]; \ No newline at end of file
diff --git a/docs/www__utils_8c_source.html b/docs/www__utils_8c_source.html
new file mode 100644
index 000000000..de5da314f
--- /dev/null
+++ b/docs/www__utils_8c_source.html
@@ -0,0 +1,107 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_utils.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__utils_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_utils.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="www__utils_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">/* Some utils taken form remmina_utils</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">* TODO: use directly remmina_utils */</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 &lt;stdlib.h&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;sys/utsname.h&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;glib.h&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;glib/gi18n.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;glib/gstdio.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;gio/gio.h&gt;</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__trace__calls_8h.html">remmina/remmina_trace_calls.h</a>&quot;</span></div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define EMPTY(ptr) \</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"> (!(ptr) || !*(ptr))</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* Used to send desktop notifications */</span></div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa"> 53</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a>(<span class="keyword">const</span> gchar *notification_id,</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">const</span> gchar *notification_title, <span class="keyword">const</span> gchar *notification_message)</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;{</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; GNotification *notification = g_notification_new(notification_title);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; g_notification_set_body(notification, notification_message);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#if GLIB_CHECK_VERSION(2, 42, 0)</span></div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; g_notification_set_priority(notification, G_NOTIFICATION_PRIORITY_NORMAL);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; g_application_send_notification(g_application_get_default(), notification_id, notification);</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; g_object_unref(notification);</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</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="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069"> 67</a></span>&#160;gint <a class="code" href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils_strpos</a>(<span class="keyword">const</span> gchar *haystack, <span class="keyword">const</span> gchar *needle)</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="keyword">const</span> gchar *sub;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (!*needle)</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; sub = strstr(haystack, needle);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">if</span> (!sub)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> sub - haystack;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;}</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* end can be -1 for haystack-&gt;len.</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * returns: position of found text or -1.</span></div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> * (C) Taken from geany */</span></div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27"> 85</a></span>&#160;gint <a class="code" href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils_string_find</a>(GString *haystack, gint start, gint end, <span class="keyword">const</span> gchar *needle)</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;{</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; gint pos;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; g_return_val_if_fail(haystack != NULL, -1);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span> (haystack-&gt;len == 0)</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> -1;</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"> 94</span>&#160; g_return_val_if_fail(start &gt;= 0, -1);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (start &gt;= (gint)haystack-&gt;len)</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; g_return_val_if_fail(!EMPTY(needle), -1);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (end &lt; 0)</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; end = haystack-&gt;len;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; pos = <a class="code" href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils_strpos</a>(haystack-&gt;str + start, needle);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">if</span> (pos == -1)</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> -1;</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; pos += start;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (pos &gt;= end)</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> pos;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;}</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;<span class="comment">/* Replaces @len characters from offset @a pos.</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> * len can be -1 to replace the remainder of @a str.</span></div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> * returns: pos + strlen(replace).</span></div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> * (C) Taken from geany */</span></div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc"> 117</a></span>&#160;gint <a class="code" href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a>(GString *str, gint pos, gint len, <span class="keyword">const</span> gchar *replace)</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;{</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; g_string_erase(str, pos, len);</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">if</span> (replace) {</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; g_string_insert(str, pos, replace);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; pos += strlen(replace);</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; <span class="keywordflow">return</span> pos;</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;</div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c"> 137</a></span>&#160;guint <a class="code" href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(GString *haystack, <span class="keyword">const</span> gchar *needle, <span class="keyword">const</span> gchar *replace)</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;{</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; guint count = 0;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; gint pos = 0;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; gsize needle_length = strlen(needle);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">while</span> (1) {</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; pos = <a class="code" href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils_string_find</a>(haystack, pos, -1, needle);</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordflow">if</span> (pos == -1)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">break</span>;</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"> 150</span>&#160; pos = <a class="code" href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a>(haystack, pos, needle_length, replace);</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; count++;</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; <span class="keywordflow">return</span> count;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;}</div><div class="ttc" id="remmina__trace__calls_8h_html"><div class="ttname"><a href="remmina__trace__calls_8h.html">remmina_trace_calls.h</a></div></div>
+<div class="ttc" id="www__utils_8c_html_adc2fcc46779fcd3f0fa20dd0e7679069"><div class="ttname"><a href="www__utils_8c.html#adc2fcc46779fcd3f0fa20dd0e7679069">www_utils_strpos</a></div><div class="ttdeci">gint www_utils_strpos(const gchar *haystack, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00067">www_utils.c:67</a></div></div>
+<div class="ttc" id="www__utils_8c_html_a800f6ee754dd01e00951447c51a9723c"><div class="ttname"><a href="www__utils_8c.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a></div><div class="ttdeci">guint www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00137">www_utils.c:137</a></div></div>
+<div class="ttc" id="www__utils_8c_html_a7f5e50e645f4c1c068cd5791080abbbf"><div class="ttname"><a href="www__utils_8c.html#a7f5e50e645f4c1c068cd5791080abbbf">www_utils_string_find</a></div><div class="ttdeci">gint www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00085">www_utils.c:85</a></div></div>
+<div class="ttc" id="www__utils_8c_html_aedac74feb0f847081efc43429d5b51cc"><div class="ttname"><a href="www__utils_8c.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a></div><div class="ttdeci">gint www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00117">www_utils.c:117</a></div></div>
+<div class="ttc" id="www__utils_8c_html_abeb378938ab3e0b74430601ebc8639aa"><div class="ttname"><a href="www__utils_8c.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a></div><div class="ttdeci">void www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00053">www_utils.c:53</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__utils_8c.html">www_utils.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__utils_8h.html b/docs/www__utils_8h.html
new file mode 100644
index 000000000..ce42d1535
--- /dev/null
+++ b/docs/www__utils_8h.html
@@ -0,0 +1,286 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_utils.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__utils_8h.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">www_utils.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="www__utils_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac464a5cfc7cbce478de11e894a9dea27"><td class="memItemLeft" align="right" valign="top">G_BEGIN_DECLS gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27">www_utils_string_find</a> (GString *haystack, gint start, gint end, const gchar *needle)</td></tr>
+<tr class="separator:ac464a5cfc7cbce478de11e894a9dea27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedac74feb0f847081efc43429d5b51cc"><td class="memItemLeft" align="right" valign="top">gint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a> (GString *str, gint pos, gint len, const gchar *replace)</td></tr>
+<tr class="separator:aedac74feb0f847081efc43429d5b51cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a800f6ee754dd01e00951447c51a9723c"><td class="memItemLeft" align="right" valign="top">guint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a> (GString *haystack, const gchar *needle, const gchar *replace)</td></tr>
+<tr class="memdesc:a800f6ee754dd01e00951447c51a9723c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. <a href="#a800f6ee754dd01e00951447c51a9723c">More...</a><br /></td></tr>
+<tr class="separator:a800f6ee754dd01e00951447c51a9723c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeb378938ab3e0b74430601ebc8639aa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a> (const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</td></tr>
+<tr class="separator:abeb378938ab3e0b74430601ebc8639aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="abeb378938ab3e0b74430601ebc8639aa"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abeb378938ab3e0b74430601ebc8639aa">&#9670;&nbsp;</a></span>www_utils_send_notification()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void www_utils_send_notification </td>
+ <td>(</td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_title</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>notification_message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00053">53</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="ac464a5cfc7cbce478de11e894a9dea27"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac464a5cfc7cbce478de11e894a9dea27">&#9670;&nbsp;</a></span>www_utils_string_find()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_BEGIN_DECLS gint www_utils_string_find </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>end</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00085">85</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="aedac74feb0f847081efc43429d5b51cc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aedac74feb0f847081efc43429d5b51cc">&#9670;&nbsp;</a></span>www_utils_string_replace()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">gint www_utils_string_replace </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>pos</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00117">117</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+<a id="a800f6ee754dd01e00951447c51a9723c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a800f6ee754dd01e00951447c51a9723c">&#9670;&nbsp;</a></span>www_utils_string_replace_all()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">guint www_utils_string_replace_all </td>
+ <td>(</td>
+ <td class="paramtype">GString *&#160;</td>
+ <td class="paramname"><em>haystack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>needle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>replace</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Replaces all occurrences of <em>needle</em> in <em>haystack</em> with <em>replace</em>. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">haystack</td><td>The input string to operate on. This string is modified in place. </td></tr>
+ <tr><td class="paramname">needle</td><td>The string which should be replaced. </td></tr>
+ <tr><td class="paramname">replace</td><td>The replacement for <em>needle</em>.</td></tr>
+ </table>
+ </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>Number of replacements made. </dd></dl>
+
+<p class="definition">Definition at line <a class="el" href="www__utils_8c_source.html#l00137">137</a> of file <a class="el" href="www__utils_8c_source.html">www_utils.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__utils_8h.html">www_utils.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/www__utils_8h.js b/docs/www__utils_8h.js
new file mode 100644
index 000000000..4476edcbe
--- /dev/null
+++ b/docs/www__utils_8h.js
@@ -0,0 +1,7 @@
+var www__utils_8h =
+[
+ [ "www_utils_send_notification", "www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa", null ],
+ [ "www_utils_string_find", "www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27", null ],
+ [ "www_utils_string_replace", "www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc", null ],
+ [ "www_utils_string_replace_all", "www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c", null ]
+]; \ No newline at end of file
diff --git a/docs/www__utils_8h_source.html b/docs/www__utils_8h_source.html
new file mode 100644
index 000000000..a0e7c6554
--- /dev/null
+++ b/docs/www__utils_8h_source.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: www_utils.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('www__utils_8h_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">www_utils.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="www__utils_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) 2016-2020 Antenore Gatta, Giovanni Panozzo</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</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="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * (at your option) any later version.</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin Street, Fifth Floor,</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * In addition, as a special exception, the copyright holders give</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * permission to link the code of portions of this program with the</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * OpenSSL library under certain conditions as described in each</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * individual source file, and distribute linked combinations</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * including the two.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * You must obey the GNU General Public License in all respects</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * for all of the code used other than OpenSSL. * If you modify</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * file(s) with this exception, you may extend this exception to your</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</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="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * do not wish to do so, delete this exception statement from your</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * version. * If you delete this exception statement from all source</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> * files in the program, then also delete it here.</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">/* Some utils taken form remmina_utils</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">* TODO: use directly remmina_utils */</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;G_BEGIN_DECLS</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;gint <a class="code" href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27">www_utils_string_find</a>(GString *haystack, gint start, gint end, <span class="keyword">const</span> gchar *needle);</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;gint <a class="code" href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a>(GString *str, gint pos, gint len, <span class="keyword">const</span> gchar *replace);</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;guint <a class="code" href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a>(GString *haystack, <span class="keyword">const</span> gchar *needle, <span class="keyword">const</span> gchar *replace);</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a>(<span class="keyword">const</span> gchar *notification_id, <span class="keyword">const</span> gchar *notification_title, <span class="keyword">const</span> gchar *notification_message);</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;G_END_DECLS</div><div class="ttc" id="www__utils_8h_html_aedac74feb0f847081efc43429d5b51cc"><div class="ttname"><a href="www__utils_8h.html#aedac74feb0f847081efc43429d5b51cc">www_utils_string_replace</a></div><div class="ttdeci">gint www_utils_string_replace(GString *str, gint pos, gint len, const gchar *replace)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00117">www_utils.c:117</a></div></div>
+<div class="ttc" id="www__utils_8h_html_a800f6ee754dd01e00951447c51a9723c"><div class="ttname"><a href="www__utils_8h.html#a800f6ee754dd01e00951447c51a9723c">www_utils_string_replace_all</a></div><div class="ttdeci">guint www_utils_string_replace_all(GString *haystack, const gchar *needle, const gchar *replace)</div><div class="ttdoc">Replaces all occurrences of needle in haystack with replace. </div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00137">www_utils.c:137</a></div></div>
+<div class="ttc" id="www__utils_8h_html_abeb378938ab3e0b74430601ebc8639aa"><div class="ttname"><a href="www__utils_8h.html#abeb378938ab3e0b74430601ebc8639aa">www_utils_send_notification</a></div><div class="ttdeci">void www_utils_send_notification(const gchar *notification_id, const gchar *notification_title, const gchar *notification_message)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00053">www_utils.c:53</a></div></div>
+<div class="ttc" id="www__utils_8h_html_ac464a5cfc7cbce478de11e894a9dea27"><div class="ttname"><a href="www__utils_8h.html#ac464a5cfc7cbce478de11e894a9dea27">www_utils_string_find</a></div><div class="ttdeci">G_BEGIN_DECLS gint www_utils_string_find(GString *haystack, gint start, gint end, const gchar *needle)</div><div class="ttdef"><b>Definition:</b> <a href="www__utils_8c_source.html#l00085">www_utils.c:85</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_4050fc95b5648853ed3ab4946fbaca56.html">www</a></li><li class="navelem"><a class="el" href="www__utils_8h.html">www_utils.h</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/xdmcp__plugin_8c.html b/docs/xdmcp__plugin_8c.html
new file mode 100644
index 000000000..07913ebb1
--- /dev/null
+++ b/docs/xdmcp__plugin_8c.html
@@ -0,0 +1,739 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: xdmcp_plugin.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('xdmcp__plugin_8c.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">xdmcp_plugin.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="xdmcp__plugin_8c_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aae253598e26aefaa6dbf8b3e9454cbbe"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">RemminaPluginXdmcpData</a></td></tr>
+<tr class="separator:aae253598e26aefaa6dbf8b3e9454cbbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acd32ced333bbc15aad93a20f19cf7277"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">remmina_plugin_xdmcp_on_plug_added</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:acd32ced333bbc15aad93a20f19cf7277"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7acd735b6cf8c094479df760c61e78b7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">remmina_plugin_xdmcp_on_plug_removed</a> (GtkSocket *socket, <a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7acd735b6cf8c094479df760c61e78b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab70492afa4dd7e3057d18341dfe6ffb5"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">remmina_plugin_xdmcp_start_xephyr</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ab70492afa4dd7e3057d18341dfe6ffb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7665092e175fe8af02f5e2df7d6dd632"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">remmina_plugin_xdmcp_tunnel_init_callback</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, gint remotedisplay, const gchar *server, gint port)</td></tr>
+<tr class="separator:a7665092e175fe8af02f5e2df7d6dd632"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dade278b46f4e40fad8cebad339a2ba"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">remmina_plugin_xdmcp_main</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a0dade278b46f4e40fad8cebad339a2ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c3552e5aef4eb415e5cc0d4131323e0"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">remmina_plugin_xdmcp_main_thread</a> (gpointer data)</td></tr>
+<tr class="separator:a2c3552e5aef4eb415e5cc0d4131323e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25e551a299d079ea2284cf3bb173ca26"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a25e551a299d079ea2284cf3bb173ca26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7afe88899cc91a4454fce5240228b86c"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:a7afe88899cc91a4454fce5240228b86c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5d6630e713576f37dfedce6a1492903"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:ae5d6630e713576f37dfedce6a1492903"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed4b19300ad6acc9a23eb22f737510d2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">remmina_plugin_xdmcp_send_ctrlaltdel</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp)</td></tr>
+<tr class="separator:aed4b19300ad6acc9a23eb22f737510d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66eb3437f42e934e4b5405e20708d694"><td class="memItemLeft" align="right" valign="top">static gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a66eb3437f42e934e4b5405e20708d694"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42e18171d023a93791dc7a84cd28f2f8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a> (<a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *gp, const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *feature)</td></tr>
+<tr class="separator:a42e18171d023a93791dc7a84cd28f2f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56e5020de11446dbc23f3480e313f208"><td class="memItemLeft" align="right" valign="top">G_MODULE_EXPORT gboolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a> (<a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *service)</td></tr>
+<tr class="separator:a56e5020de11446dbc23f3480e313f208"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a3898216f03a8f3aad9e93d2f9ef6136f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f">remmina_plugin_xdmcp</a></td></tr>
+<tr class="separator:a3898216f03a8f3aad9e93d2f9ef6136f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL</td></tr>
+<tr class="separator:a9493664f6bdafe3f5b593c3e5e1eacc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memItemLeft" align="right" valign="top">static gpointer&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a> []</td></tr>
+<tr class="separator:a7d6c92b318e43b96efddbcaa9400c1f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a105f3cbe86826bb563e0fa44e33e1c7d"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a> []</td></tr>
+<tr class="separator:a105f3cbe86826bb563e0fa44e33e1c7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9e946c3e11a699ffc35df843d04292a"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a> []</td></tr>
+<tr class="separator:ac9e946c3e11a699ffc35df843d04292a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a id="aae253598e26aefaa6dbf8b3e9454cbbe"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aae253598e26aefaa6dbf8b3e9454cbbe">&#9670;&nbsp;</a></span>RemminaPluginXdmcpData</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a> <a class="el" href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">RemminaPluginXdmcpData</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a56e5020de11446dbc23f3480e313f208"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a56e5020de11446dbc23f3480e313f208">&#9670;&nbsp;</a></span>remmina_plugin_entry()</h2>
+
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">G_MODULE_EXPORT gboolean remmina_plugin_entry </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00410">410</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a42e18171d023a93791dc7a84cd28f2f8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a42e18171d023a93791dc7a84cd28f2f8">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_call_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_xdmcp_call_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00332">332</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ae5d6630e713576f37dfedce6a1492903"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae5d6630e713576f37dfedce6a1492903">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_close_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_close_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00294">294</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a25e551a299d079ea2284cf3bb173ca26"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a25e551a299d079ea2284cf3bb173ca26">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_init()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_xdmcp_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00236">236</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a0dade278b46f4e40fad8cebad339a2ba"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a0dade278b46f4e40fad8cebad339a2ba">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_main()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_main </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00199">199</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a2c3552e5aef4eb415e5cc0d4131323e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a2c3552e5aef4eb415e5cc0d4131323e0">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_main_thread()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gpointer remmina_plugin_xdmcp_main_thread </td>
+ <td>(</td>
+ <td class="paramtype">gpointer&#160;</td>
+ <td class="paramname"><em>data</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00224">224</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="acd32ced333bbc15aad93a20f19cf7277"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acd32ced333bbc15aad93a20f19cf7277">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_on_plug_added()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_xdmcp_on_plug_added </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00066">66</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7acd735b6cf8c094479df760c61e78b7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7acd735b6cf8c094479df760c61e78b7">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_on_plug_removed()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_xdmcp_on_plug_removed </td>
+ <td>(</td>
+ <td class="paramtype">GtkSocket *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00075">75</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7afe88899cc91a4454fce5240228b86c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7afe88899cc91a4454fce5240228b86c">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_open_connection()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_open_connection </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00255">255</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a66eb3437f42e934e4b5405e20708d694"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a66eb3437f42e934e4b5405e20708d694">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_query_feature()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_query_feature </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> *&#160;</td>
+ <td class="paramname"><em>feature</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00326">326</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="aed4b19300ad6acc9a23eb22f737510d2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aed4b19300ad6acc9a23eb22f737510d2">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_send_ctrlaltdel()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static void remmina_plugin_xdmcp_send_ctrlaltdel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00316">316</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ab70492afa4dd7e3057d18341dfe6ffb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ab70492afa4dd7e3057d18341dfe6ffb5">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_start_xephyr()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_start_xephyr </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00081">81</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a7665092e175fe8af02f5e2df7d6dd632"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7665092e175fe8af02f5e2df7d6dd632">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_tunnel_init_callback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static gboolean remmina_plugin_xdmcp_tunnel_init_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="types_8h.html#a3fc3247f5a12b842032241d0cdde9cf4">RemminaProtocolWidget</a> *&#160;</td>
+ <td class="paramname"><em>gp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>remotedisplay</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const gchar *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gint&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00174">174</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a id="a7d6c92b318e43b96efddbcaa9400c1f1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7d6c92b318e43b96efddbcaa9400c1f1">&#9670;&nbsp;</a></span>colordepth_list</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpointer colordepth_list[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Default&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Grayscale&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colours&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (16 bit)&quot;</span>),</div><div class="line"> <span class="stringliteral">&quot;24&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (24 bit)&quot;</span>),</div><div class="line"> NULL</div><div class="line">}</div><div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00346">346</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a9493664f6bdafe3f5b593c3e5e1eacc7"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a9493664f6bdafe3f5b593c3e5e1eacc7">&#9670;&nbsp;</a></span>remmina_plugin_service</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="plugin_8h.html#a078ccfc19f738c83e58bf7a81259eaff">RemminaPluginService</a>* remmina_plugin_service = NULL</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00063">63</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a3898216f03a8f3aad9e93d2f9ef6136f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a3898216f03a8f3aad9e93d2f9ef6136f">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="plugin_8h.html#a52531fe685f868ce2bf593ed7328e8fd">RemminaProtocolPlugin</a> remmina_plugin_xdmcp</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, </div><div class="line"> <span class="stringliteral">&quot;XDMCP&quot;</span>, </div><div class="line"> <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;XDMCP - X Remote Session&quot;</span>), </div><div class="line"> GETTEXT_PACKAGE, </div><div class="line"> VERSION, </div><div class="line"> <span class="stringliteral">&quot;remmina-xdmcp-symbolic&quot;</span>, </div><div class="line"> <span class="stringliteral">&quot;remmina-xdmcp-ssh-symbolic&quot;</span>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a>, </div><div class="line"> NULL, </div><div class="line"> <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a>, </div><div class="line"> <a class="code" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a>, </div><div class="line"> NULL, </div><div class="line"> NULL </div><div class="line">}</div><div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_ac9e946c3e11a699ffc35df843d04292a"><div class="ttname"><a href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_xdmcp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00379">xdmcp_plugin.c:379</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a66eb3437f42e934e4b5405e20708d694"><div class="ttname"><a href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00326">xdmcp_plugin.c:326</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a42e18171d023a93791dc7a84cd28f2f8"><div class="ttname"><a href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00332">xdmcp_plugin.c:332</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7afe88899cc91a4454fce5240228b86c"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00255">xdmcp_plugin.c:255</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_ae5d6630e713576f37dfedce6a1492903"><div class="ttname"><a href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00294">xdmcp_plugin.c:294</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a105f3cbe86826bb563e0fa44e33e1c7d"><div class="ttname"><a href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_xdmcp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00365">xdmcp_plugin.c:365</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a25e551a299d079ea2284cf3bb173ca26"><div class="ttname"><a href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00236">xdmcp_plugin.c:236</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00048">48</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="a105f3cbe86826bb563e0fa44e33e1c7d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a105f3cbe86826bb563e0fa44e33e1c7d">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_basic_settings</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#a41c04d02e6a15ad17be8065453cc4933">RemminaProtocolSetting</a> remmina_plugin_xdmcp_basic_settings[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Colour depth&quot;</span>), FALSE, <a class="code" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use local cursor&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;once&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disconnect after first session&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;listen_on_tcp&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Listen for TCP connections&quot;</span>), FALSE, NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00346">xdmcp_plugin.c:346</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00365">365</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+<a id="ac9e946c3e11a699ffc35df843d04292a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac9e946c3e11a699ffc35df843d04292a">&#9670;&nbsp;</a></span>remmina_plugin_xdmcp_features</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="types_8h.html#ade886ceb4d246765dc78cdc7fbabeb74">RemminaProtocolFeature</a> remmina_plugin_xdmcp_features[]</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">=</div><div class="line">{</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_XDMCP_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_XDMCP_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"> { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line">}</div><div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+</div><!-- fragment -->
+<p class="definition">Definition at line <a class="el" href="xdmcp__plugin_8c_source.html#l00379">379</a> of file <a class="el" href="xdmcp__plugin_8c_source.html">xdmcp_plugin.c</a>.</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_d1989cceabdfad53225af373aeeb6953.html">xdmcp</a></li><li class="navelem"><a class="el" href="xdmcp__plugin_8c.html">xdmcp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>
diff --git a/docs/xdmcp__plugin_8c.js b/docs/xdmcp__plugin_8c.js
new file mode 100644
index 000000000..9c843ab65
--- /dev/null
+++ b/docs/xdmcp__plugin_8c.js
@@ -0,0 +1,23 @@
+var xdmcp__plugin_8c =
+[
+ [ "_RemminaPluginXdmcpData", "struct___remmina_plugin_xdmcp_data.html", "struct___remmina_plugin_xdmcp_data" ],
+ [ "RemminaPluginXdmcpData", "xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe", null ],
+ [ "remmina_plugin_entry", "xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208", null ],
+ [ "remmina_plugin_xdmcp_call_feature", "xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8", null ],
+ [ "remmina_plugin_xdmcp_close_connection", "xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903", null ],
+ [ "remmina_plugin_xdmcp_init", "xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26", null ],
+ [ "remmina_plugin_xdmcp_main", "xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba", null ],
+ [ "remmina_plugin_xdmcp_main_thread", "xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0", null ],
+ [ "remmina_plugin_xdmcp_on_plug_added", "xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277", null ],
+ [ "remmina_plugin_xdmcp_on_plug_removed", "xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7", null ],
+ [ "remmina_plugin_xdmcp_open_connection", "xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c", null ],
+ [ "remmina_plugin_xdmcp_query_feature", "xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694", null ],
+ [ "remmina_plugin_xdmcp_send_ctrlaltdel", "xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2", null ],
+ [ "remmina_plugin_xdmcp_start_xephyr", "xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5", null ],
+ [ "remmina_plugin_xdmcp_tunnel_init_callback", "xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632", null ],
+ [ "colordepth_list", "xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1", null ],
+ [ "remmina_plugin_service", "xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7", null ],
+ [ "remmina_plugin_xdmcp", "xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f", null ],
+ [ "remmina_plugin_xdmcp_basic_settings", "xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d", null ],
+ [ "remmina_plugin_xdmcp_features", "xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a", null ]
+]; \ No newline at end of file
diff --git a/docs/xdmcp__plugin_8c_source.html b/docs/xdmcp__plugin_8c_source.html
new file mode 100644
index 000000000..8b4815c41
--- /dev/null
+++ b/docs/xdmcp__plugin_8c_source.html
@@ -0,0 +1,169 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Remmina - The GTK+ Remote Desktop Client: xdmcp_plugin.c Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtreedata.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.js"></script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td id="projectlogo"><img alt="Logo" src="org.remmina.Remmina.png"/></td>
+ <td id="projectalign" style="padding-left: 0.5em;">
+ <div id="projectname">Remmina - The GTK+ Remote Desktop Client
+ &#160;<span id="projectnumber">v1.4.2</span>
+ </div>
+ <div id="projectbrief">Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.13 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+$(function() {
+ initMenu('',true,false,'search.php','Search');
+ $(document).ready(function() { init_search(); });
+});
+</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('xdmcp__plugin_8c_source.html','');});
+</script>
+<div id="doc-content">
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+</div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">xdmcp_plugin.c</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="xdmcp__plugin_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-2020 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;<a class="code" href="remmina__plugin_8h.html">common/remmina_plugin.h</a>&quot;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;gtk/gtkx.h&gt;</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;INCLUDE_GET_AVAILABLE_XDISPLAY</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_XDMCP_FEATURE_TOOL_SENDCTRLALTDEL 1</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define REMMINA_PLUGIN_XDMCP_FEATURE_GTKSOCKET 1</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#define GET_PLUGIN_DATA(gp) (RemminaPluginXdmcpData*)g_object_get_data(G_OBJECT(gp), &quot;plugin-data&quot;);</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Forward declaration */</span></div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f"> 48</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> <a class="code" href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f">remmina_plugin_xdmcp</a>;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a> {</div><div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f"> 51</a></span>&#160; GtkWidget *<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>;</div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496"> 52</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">socket_id</a>;</div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca"> 53</a></span>&#160; GPid <a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a>;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223"> 54</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223">output_fd</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d"> 55</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d">error_fd</a>;</div><div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f"> 56</a></span>&#160; gint <a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a>;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f"> 57</a></span>&#160; gboolean <a class="code" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">ready</a>;</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"><a class="line" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb"> 59</a></span>&#160; pthread_t <a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>;</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;} <a class="code" href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">RemminaPluginXdmcpData</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7"> 63</a></span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *<a class="code" href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a> = NULL;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277"> 66</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">remmina_plugin_xdmcp_on_plug_added</a>(GtkSocket *<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;{</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">protocol_plugin_signal_connection_opened</a>(gp);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">ready</a> = TRUE;</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;}</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7"> 75</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">remmina_plugin_xdmcp_on_plug_removed</a>(GtkSocket *<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>, <a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</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;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5"> 81</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">remmina_plugin_xdmcp_start_xephyr</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; gchar *argv[50];</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; gint argc;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; gchar *host;</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; gint i;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; GError *error = NULL;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; gboolean ret;</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a> = remmina_get_available_xdisplay();</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a> == 0) {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, _(<span class="stringliteral">&quot;Ran out of available local X display numbers.&quot;</span>));</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</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; argc = 0;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;Xephyr&quot;</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; argv[argc++] = g_strdup_printf(<span class="stringliteral">&quot;:%i&quot;</span>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a>);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-parent&quot;</span>);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; argv[argc++] = g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">socket_id</a>);</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="comment">/* All Xephyr version between 1.5.0 and 1.6.4 will break when &quot;-screen&quot; argument is specified with &quot;-parent&quot;.</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> * It’s not possible to support colour depth if you have those Xephyr version. Please see this bug</span></div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> * http://bugs.freedesktop.org/show_bug.cgi?id=24144</span></div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> * As a workaround, a &quot;Default&quot; colour depth will not add the &quot;-screen&quot; argument.</span></div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; i = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;colordepth&quot;</span>, 8);</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">if</span> (i &gt;= 8) {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-screen&quot;</span>);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; argv[argc++] = g_strdup_printf(<span class="stringliteral">&quot;%ix%ix%i&quot;</span>,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a>(gp),</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a>(gp), i);</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</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; <span class="keywordflow">if</span> (i == 2) {</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-grayscale&quot;</span>);</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"> 126</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;showcursor&quot;</span>, FALSE)) {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-host-cursor&quot;</span>);</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;once&quot;</span>, FALSE)) {</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-once&quot;</span>);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">/* Listen on TCP protocol */</span></div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;listen_on_tcp&quot;</span>, FALSE)) {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-listen&quot;</span>);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;tcp&quot;</span>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; }</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE)) {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">get_server_port</a>(remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;server&quot;</span>), 0,</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; &amp;host, &amp;i);</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-query&quot;</span>);</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; argv[argc++] = host;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span> (i) {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-port&quot;</span>);</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; argv[argc++] = g_strdup_printf(<span class="stringliteral">&quot;%i&quot;</span>, i);</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">/* When the connection is through an SSH tunnel, it connects back to local Unix socket,</span></div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> * so for security we can disable TCP listening */</span></div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-nolisten&quot;</span>);</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;tcp&quot;</span>);</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"> 155</span>&#160; <span class="comment">/* FIXME: It’s better to get the magic cookie back from xqproxy, then call xauth,</span></div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> * instead of disable access control */</span></div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; argv[argc++] = g_strdup(<span class="stringliteral">&quot;-ac&quot;</span>);</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; }</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; argv[argc++] = NULL;</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; ret = g_spawn_async(NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, &amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a>, &amp;error);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; argc; i++)</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; g_free(argv[i]);</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; <span class="keywordflow">if</span> (!ret) {</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp, <span class="stringliteral">&quot;%s&quot;</span>, error-&gt;message);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; }</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;}</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"><a class="line" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632"> 174</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">remmina_plugin_xdmcp_tunnel_init_callback</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, gint remotedisplay, <span class="keyword">const</span> gchar *server,</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; gint port)</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</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">if</span> (!<a class="code" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">remmina_plugin_xdmcp_start_xephyr</a>(gp))</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">while</span> (!gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">ready</a>)</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; sleep(1);</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72">protocol_plugin_set_display</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">display</a>);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>)) {</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">protocol_plugin_ssh_exec</a>(gp, FALSE, <span class="stringliteral">&quot;DISPLAY=localhost:%i.0 %s&quot;</span>, remotedisplay,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">file_get_string</a>(remminafile, <span class="stringliteral">&quot;exec&quot;</span>));</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordflow">return</span> remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">protocol_plugin_ssh_exec</a>(gp, TRUE,</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="stringliteral">&quot;xqproxy -display %i -host %s -port %i -query -manage&quot;</span>, remotedisplay, server, port);</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;}</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba"> 199</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">remmina_plugin_xdmcp_main</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE)) {</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordflow">if</span> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d">protocol_plugin_start_xport_tunnel</a>(gp, <a class="code" href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">remmina_plugin_xdmcp_tunnel_init_callback</a>)) {</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a> = 0;</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="keywordflow">return</span> FALSE;</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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">remmina_plugin_xdmcp_start_xephyr</a>(gp)) {</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a> = 0;</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a> = 0;</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;}</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;<span class="keyword">static</span> gpointer</div><div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0"> 224</a></span>&#160;<a class="code" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">remmina_plugin_xdmcp_main_thread</a>(gpointer data)</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;{</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; CANCEL_ASYNC</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">remmina_plugin_xdmcp_main</a>((<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a>*)data)) {</div><div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; IDLE_ADD((GSourceFunc)remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>, data);</div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span> NULL;</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"> 235</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26"> 236</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;{</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; gpdata = g_new0(<a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a>, 1);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; g_object_set_data_full(G_OBJECT(gp), <span class="stringliteral">&quot;plugin-data&quot;</span>, gpdata, g_free);</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; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a> = gtk_socket_new();</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">protocol_plugin_register_hostkey</a>(gp, gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; gtk_widget_show(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>);</div><div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>), <span class="stringliteral">&quot;plug-added&quot;</span>, G_CALLBACK(<a class="code" href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">remmina_plugin_xdmcp_on_plug_added</a>), gp);</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; g_signal_connect(G_OBJECT(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>), <span class="stringliteral">&quot;plug-removed&quot;</span>, G_CALLBACK(<a class="code" href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">remmina_plugin_xdmcp_on_plug_removed</a>), gp);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; gtk_container_add(GTK_CONTAINER(gp), gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>);</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</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;</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c"> 255</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;{</div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <a class="code" href="types_8h.html#a112d7cc6c755209cabb68cf2a62ad515">RemminaFile</a> *remminafile;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; gint width, height;</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> (!remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">gtksocket_available</a>()) {</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; _(<span class="stringliteral">&quot;The protocol \&quot;%s\&quot; is unavailable because GtkSocket only works under X.Org.&quot;</span>),</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; remmina_plugin_xdmcp.<a class="code" href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">name</a>);</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</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; remminafile = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">protocol_plugin_get_file</a>(gp);</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; width = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">get_profile_remote_width</a>(gp);</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; height = remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">get_profile_remote_height</a>(gp);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">protocol_plugin_set_width</a>(gp, width);</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">protocol_plugin_set_height</a>(gp, height);</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; gtk_widget_set_size_request(GTK_WIDGET(gp), width, height);</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">socket_id</a> = gtk_socket_get_id(GTK_SOCKET(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>));</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</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; <span class="keywordflow">if</span> (remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">file_get_int</a>(remminafile, <span class="stringliteral">&quot;ssh_tunnel_enabled&quot;</span>, FALSE)) {</div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keywordflow">if</span> (pthread_create(&amp;gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>, NULL, <a class="code" href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">remmina_plugin_xdmcp_main_thread</a>, gp)) {</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">protocol_plugin_set_error</a>(gp,</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="stringliteral">&quot;Could not start pthread. Using non-threaded mode instead…&quot;</span>);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a> = 0;</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordflow">return</span> FALSE;</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; <span class="keywordflow">return</span> 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; }<span class="keywordflow">else</span> {</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordflow">return</span> <a class="code" href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">remmina_plugin_xdmcp_main</a>(gp);</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; }</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;}</div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;</div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903"> 294</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;{</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>) {</div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; pthread_cancel(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>) pthread_join(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">thread</a>, NULL);</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; }</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; <span class="keywordflow">if</span> (gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a>) {</div><div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; kill(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a>, SIGTERM);</div><div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; g_spawn_close_pid(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a>);</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">pid</a> = 0;</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; }</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">protocol_plugin_signal_connection_closed</a>(gp);</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; <span class="keywordflow">return</span> FALSE;</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;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment">/* Send Ctrl+Alt+Del keystrokes to the plugin socket widget */</span></div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2"> 316</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">remmina_plugin_xdmcp_send_ctrlaltdel</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; guint keys[] = { GDK_KEY_Control_L, GDK_KEY_Alt_L, GDK_KEY_Delete };</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <a class="code" href="struct___remmina_plugin_xdmcp_data.html">RemminaPluginXdmcpData</a> *gpdata = GET_PLUGIN_DATA(gp);</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"> 322</span>&#160; remmina_plugin_service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">protocol_plugin_send_keys_signals</a>(gpdata-&gt;<a class="code" href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">socket</a>,</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; keys, G_N_ELEMENTS(keys), GDK_KEY_PRESS | GDK_KEY_RELEASE);</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;</div><div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694"> 326</a></span>&#160;<span class="keyword">static</span> gboolean <a class="code" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;{</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; TRACE_CALL(__func__);</div><div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;}</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8"> 332</a></span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a>(<a class="code" href="struct___remmina_protocol_widget.html">RemminaProtocolWidget</a> *gp, <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> *feature)</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;{</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; TRACE_CALL(__func__);</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; <span class="keywordflow">switch</span> (feature-&gt;<a class="code" href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">id</a>) {</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">case</span> REMMINA_PLUGIN_XDMCP_FEATURE_TOOL_SENDCTRLALTDEL:</div><div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">remmina_plugin_xdmcp_send_ctrlaltdel</a>(gp);</div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">break</span>;</div><div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">default</span>:</div><div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordflow">break</span>;</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;}</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;<span class="comment">/* Array of key/value pairs for colour depths */</span></div><div class="line"><a name="l00346"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1"> 346</a></span>&#160;<span class="keyword">static</span> gpointer <a class="code" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>[] =</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; <span class="stringliteral">&quot;0&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Default&quot;</span>),</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="stringliteral">&quot;2&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Grayscale&quot;</span>),</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="stringliteral">&quot;8&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;256 colours&quot;</span>),</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="stringliteral">&quot;16&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;High colour (16 bit)&quot;</span>),</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="stringliteral">&quot;24&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;True colour (24 bit)&quot;</span>),</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; NULL</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"> 355</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="comment">/* Array of RemminaProtocolSetting for basic settings.</span></div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<span class="comment"> * Each item is composed by:</span></div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="comment"> * a) RemminaProtocolSettingType for setting type</span></div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="comment"> * b) Setting name</span></div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="comment"> * c) Setting description</span></div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="comment"> * d) Compact disposition</span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="comment"> * e) Values for REMMINA_PROTOCOL_SETTING_TYPE_SELECT or REMMINA_PROTOCOL_SETTING_TYPE_COMBO</span></div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="comment"> * f) Setting tooltip</span></div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00365"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d"> 365</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_setting.html">RemminaProtocolSetting</a> <a class="code" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a>[] =</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; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a>, <span class="stringliteral">&quot;server&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a>, <span class="stringliteral">&quot;resolution&quot;</span>, NULL, FALSE, NULL, NULL },</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a>, <span class="stringliteral">&quot;colordepth&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Colour depth&quot;</span>), FALSE, <a class="code" href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a>, NULL },</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a>, <span class="stringliteral">&quot;exec&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Startup program&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;showcursor&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Use local cursor&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;once&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Disconnect after first session&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350a52a80f3f9b84e9e0d0bf3335cfd7527f">REMMINA_PROTOCOL_SETTING_TYPE_CHECK</a>, <span class="stringliteral">&quot;listen_on_tcp&quot;</span>, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Listen for TCP connections&quot;</span>), FALSE, NULL, NULL },</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; { <a class="code" href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a>, NULL, NULL, FALSE, NULL, NULL }</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;};</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="comment">/* Array for available features.</span></div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="comment"> * The last element of the array must be REMMINA_PROTOCOL_FEATURE_TYPE_END. */</span></div><div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a"> 379</a></span>&#160;<span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="struct___remmina_protocol_feature.html">RemminaProtocolFeature</a> <a class="code" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a>[] =</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;{</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a>, REMMINA_PLUGIN_XDMCP_FEATURE_TOOL_SENDCTRLALTDEL, <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;Send Ctrl+Alt+Delete&quot;</span>), NULL, NULL },</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a>, REMMINA_PLUGIN_XDMCP_FEATURE_GTKSOCKET, NULL, NULL, NULL},</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; { <a class="code" href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a>, 0, NULL, NULL, NULL }</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;};</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;<span class="comment">/* Protocol plugin definition and features */</span></div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="keyword">static</span> <a class="code" href="struct___remmina_protocol_plugin.html">RemminaProtocolPlugin</a> remmina_plugin_xdmcp =</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;{</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <a class="code" href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a>, <span class="comment">// Type</span></div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="stringliteral">&quot;XDMCP&quot;</span>, <span class="comment">// Name</span></div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <a class="code" href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a>(<span class="stringliteral">&quot;XDMCP - X Remote Session&quot;</span>), <span class="comment">// Description</span></div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; GETTEXT_PACKAGE, <span class="comment">// Translation domain</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; VERSION, <span class="comment">// Version number</span></div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="stringliteral">&quot;remmina-xdmcp-symbolic&quot;</span>, <span class="comment">// Icon for normal connection</span></div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="stringliteral">&quot;remmina-xdmcp-ssh-symbolic&quot;</span>, <span class="comment">// Icon for SSH connection</span></div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a>, <span class="comment">// Array for basic settings</span></div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; NULL, <span class="comment">// Array for advanced settings</span></div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <a class="code" href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a>, <span class="comment">// SSH settings type</span></div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a>, <span class="comment">// Array for available features</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a>, <span class="comment">// Plugin initialization</span></div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a>, <span class="comment">// Plugin open connection</span></div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a>, <span class="comment">// Plugin close connection</span></div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a>, <span class="comment">// Query for available features</span></div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <a class="code" href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a>, <span class="comment">// Call a feature</span></div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; NULL, <span class="comment">// Send a keystroke</span></div><div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; NULL <span class="comment">// No screenshot support available</span></div><div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;};</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;G_MODULE_EXPORT gboolean</div><div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208"> 410</a></span>&#160;<a class="code" href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a>(<a class="code" href="struct___remmina_plugin_service.html">RemminaPluginService</a> *service)</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; TRACE_CALL(__func__);</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; remmina_plugin_service = service;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; bindtextdomain(GETTEXT_PACKAGE, REMMINA_RUNTIME_LOCALEDIR);</div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; bind_textdomain_codeset(GETTEXT_PACKAGE, <span class="stringliteral">&quot;UTF-8&quot;</span>);</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordflow">if</span> (!service-&gt;<a class="code" href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">register_plugin</a>((<a class="code" href="struct___remmina_plugin.html">RemminaPlugin</a>*)&amp;remmina_plugin_xdmcp)) {</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span> FALSE;</div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; }</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <span class="keywordflow">return</span> TRUE;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;}</div><div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_a3d69bc84bea67c73c99b6d7eaba05b8f"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#a3d69bc84bea67c73c99b6d7eaba05b8f">_RemminaPluginXdmcpData::display</a></div><div class="ttdeci">gint display</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00056">xdmcp_plugin.c:56</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a579ed0f0f6624dd55a25665693c92a92">REMMINA_PROTOCOL_SETTING_TYPE_SERVER</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00081">types.h:81</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_abd39d173751fe0c5035439d0abbda223"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#abd39d173751fe0c5035439d0abbda223">_RemminaPluginXdmcpData::output_fd</a></div><div class="ttdeci">gint output_fd</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00054">xdmcp_plugin.c:54</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_html"><div class="ttname"><a href="struct___remmina_plugin.html">_RemminaPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00053">plugin.h:53</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_ae6a009bdb4dfe6a4106cb6a39be7844f"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#ae6a009bdb4dfe6a4106cb6a39be7844f">_RemminaPluginXdmcpData::socket</a></div><div class="ttdeci">GtkWidget * socket</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00051">xdmcp_plugin.c:51</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a7ac875d202f1ccd0ae85bb60ee3222c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a7ac875d202f1ccd0ae85bb60ee3222c1">_RemminaPluginService::protocol_plugin_set_error</a></div><div class="ttdeci">void(* protocol_plugin_set_error)(RemminaProtocolWidget *gp, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00158">plugin.h:158</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_aae253598e26aefaa6dbf8b3e9454cbbe"><div class="ttname"><a href="xdmcp__plugin_8c.html#aae253598e26aefaa6dbf8b3e9454cbbe">RemminaPluginXdmcpData</a></div><div class="ttdeci">struct _RemminaPluginXdmcpData RemminaPluginXdmcpData</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#l00089">types.h:89</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a832a6822f6aa011f476300d14e738d72"><div class="ttname"><a href="struct___remmina_plugin_service.html#a832a6822f6aa011f476300d14e738d72">_RemminaPluginService::protocol_plugin_set_display</a></div><div class="ttdeci">void(* protocol_plugin_set_display)(RemminaProtocolWidget *gp, gint display)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00166">plugin.h:166</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_acd32ced333bbc15aad93a20f19cf7277"><div class="ttname"><a href="xdmcp__plugin_8c.html#acd32ced333bbc15aad93a20f19cf7277">remmina_plugin_xdmcp_on_plug_added</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_on_plug_added(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00066">xdmcp_plugin.c:66</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a8be3f210c609fde31f68e607c41de296">REMMINA_PROTOCOL_SETTING_TYPE_TEXT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00086">types.h:86</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#l00041">types.h:41</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_abaf7f57e2336f6e5c257e9c30fedc047"><div class="ttname"><a href="struct___remmina_plugin_service.html#abaf7f57e2336f6e5c257e9c30fedc047">_RemminaPluginService::protocol_plugin_set_width</a></div><div class="ttdeci">void(* protocol_plugin_set_width)(RemminaProtocolWidget *gp, gint width)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00151">plugin.h:151</a></div></div>
+<div class="ttc" id="remmina__plugin_8h_html"><div class="ttname"><a href="remmina__plugin_8h.html">remmina_plugin.h</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html_a36b55faeba78528ac9708dfa66667e20"><div class="ttname"><a href="struct___remmina_protocol_feature.html#a36b55faeba78528ac9708dfa66667e20">_RemminaProtocolFeature::id</a></div><div class="ttdeci">gint id</div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00058">types.h:58</a></div></div>
+<div class="ttc" id="plugin_8h_html_aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24"><div class="ttname"><a href="plugin_8h.html#aaf53c620d115a4642130227cff4a624aa45e094c248384c12cdafd9d088e4aa24">REMMINA_PLUGIN_TYPE_PROTOCOL</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00045">plugin.h:45</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_a033837f5ffbe75e7f945528830e1578f"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#a033837f5ffbe75e7f945528830e1578f">_RemminaPluginXdmcpData::ready</a></div><div class="ttdeci">gboolean ready</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00057">xdmcp_plugin.c:57</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a2c3552e5aef4eb415e5cc0d4131323e0"><div class="ttname"><a href="xdmcp__plugin_8c.html#a2c3552e5aef4eb415e5cc0d4131323e0">remmina_plugin_xdmcp_main_thread</a></div><div class="ttdeci">static gpointer remmina_plugin_xdmcp_main_thread(gpointer data)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00224">xdmcp_plugin.c:224</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_a3720e11a9a646f6f2558e84e8d8e0f6d"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#a3720e11a9a646f6f2558e84e8d8e0f6d">_RemminaPluginXdmcpData::error_fd</a></div><div class="ttdeci">gint error_fd</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00055">xdmcp_plugin.c:55</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7d6c92b318e43b96efddbcaa9400c1f1"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7d6c92b318e43b96efddbcaa9400c1f1">colordepth_list</a></div><div class="ttdeci">static gpointer colordepth_list[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00346">xdmcp_plugin.c:346</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_aed4b19300ad6acc9a23eb22f737510d2"><div class="ttname"><a href="xdmcp__plugin_8c.html#aed4b19300ad6acc9a23eb22f737510d2">remmina_plugin_xdmcp_send_ctrlaltdel</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_send_ctrlaltdel(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00316">xdmcp_plugin.c:316</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a4a9b04df122e3a20c3ae51d90280fea7">REMMINA_PROTOCOL_FEATURE_TYPE_GTKSOCKET</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00050">types.h:50</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a07b9812071a528428d200e2ddc295f8e"><div class="ttname"><a href="struct___remmina_plugin_service.html#a07b9812071a528428d200e2ddc295f8e">_RemminaPluginService::protocol_plugin_ssh_exec</a></div><div class="ttdeci">gboolean(* protocol_plugin_ssh_exec)(RemminaProtocolWidget *gp, gboolean wait, const gchar *fmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00189">plugin.h:189</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a311d2a8dae8d3d7b9045b4b704f94fe4">REMMINA_PROTOCOL_FEATURE_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00044">types.h:44</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_ac9e946c3e11a699ffc35df843d04292a"><div class="ttname"><a href="xdmcp__plugin_8c.html#ac9e946c3e11a699ffc35df843d04292a">remmina_plugin_xdmcp_features</a></div><div class="ttdeci">static const RemminaProtocolFeature remmina_plugin_xdmcp_features[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00379">xdmcp_plugin.c:379</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2d6704aa58ecc18ecc178ea418addd87"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2d6704aa58ecc18ecc178ea418addd87">_RemminaPluginService::protocol_plugin_send_keys_signals</a></div><div class="ttdeci">void(* protocol_plugin_send_keys_signals)(GtkWidget *widget, const guint *keyvals, int length, GdkEventType action)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00193">plugin.h:193</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab58b7bf5f91c5f60349a8242e6322f7f"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab58b7bf5f91c5f60349a8242e6322f7f">_RemminaPluginService::protocol_plugin_signal_connection_closed</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_closed)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00167">plugin.h:167</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html">_RemminaPluginXdmcpData</a></div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00050">xdmcp_plugin.c:50</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a0dade278b46f4e40fad8cebad339a2ba"><div class="ttname"><a href="xdmcp__plugin_8c.html#a0dade278b46f4e40fad8cebad339a2ba">remmina_plugin_xdmcp_main</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_main(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00199">xdmcp_plugin.c:199</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html"><div class="ttname"><a href="struct___remmina_protocol_plugin.html">_RemminaProtocolPlugin</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00061">plugin.h:61</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_ab70492afa4dd7e3057d18341dfe6ffb5"><div class="ttname"><a href="xdmcp__plugin_8c.html#ab70492afa4dd7e3057d18341dfe6ffb5">remmina_plugin_xdmcp_start_xephyr</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_start_xephyr(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00081">xdmcp_plugin.c:81</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a6fdfd3063906f49157225f536537bb0f"><div class="ttname"><a href="struct___remmina_plugin_service.html#a6fdfd3063906f49157225f536537bb0f">_RemminaPluginService::get_server_port</a></div><div class="ttdeci">void(* get_server_port)(const gchar *server, gint defaultport, gchar **host, gint *port)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00221">plugin.h:221</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a0c7eab256e1b1fdf84be44e28cddc3de"><div class="ttname"><a href="struct___remmina_plugin_service.html#a0c7eab256e1b1fdf84be44e28cddc3de">_RemminaPluginService::file_get_int</a></div><div class="ttdeci">gint(* file_get_int)(RemminaFile *remminafile, const gchar *setting, gint default_value)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00203">plugin.h:203</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a66eb3437f42e934e4b5405e20708d694"><div class="ttname"><a href="xdmcp__plugin_8c.html#a66eb3437f42e934e4b5405e20708d694">remmina_plugin_xdmcp_query_feature</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_query_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00326">xdmcp_plugin.c:326</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a3898216f03a8f3aad9e93d2f9ef6136f"><div class="ttname"><a href="xdmcp__plugin_8c.html#a3898216f03a8f3aad9e93d2f9ef6136f">remmina_plugin_xdmcp</a></div><div class="ttdeci">static RemminaProtocolPlugin remmina_plugin_xdmcp</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00048">xdmcp_plugin.c:48</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ab212bed4baf8cba148fadb5773148ad6"><div class="ttname"><a href="struct___remmina_plugin_service.html#ab212bed4baf8cba148fadb5773148ad6">_RemminaPluginService::protocol_plugin_signal_connection_opened</a></div><div class="ttdeci">void(* protocol_plugin_signal_connection_opened)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00168">plugin.h:168</a></div></div>
+<div class="ttc" id="types_8h_html_a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507"><div class="ttname"><a href="types_8h.html#a77ae46c4fd739dcd8e819fe9cdae27c5a645d9a32b55325b3672e265a64d0a507">REMMINA_PROTOCOL_FEATURE_TYPE_TOOL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00046">types.h:46</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a9493664f6bdafe3f5b593c3e5e1eacc7"><div class="ttname"><a href="xdmcp__plugin_8c.html#a9493664f6bdafe3f5b593c3e5e1eacc7">remmina_plugin_service</a></div><div class="ttdeci">static RemminaPluginService * remmina_plugin_service</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00063">xdmcp_plugin.c:63</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1205c4396dc54b38e572f8e01a5c560d"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1205c4396dc54b38e572f8e01a5c560d">_RemminaPluginService::protocol_plugin_start_xport_tunnel</a></div><div class="ttdeci">gboolean(* protocol_plugin_start_xport_tunnel)(RemminaProtocolWidget *gp, RemminaXPortTunnelInitFunc init_func)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00165">plugin.h:165</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a529cc64f67b16f13f0445add690a8df2"><div class="ttname"><a href="struct___remmina_plugin_service.html#a529cc64f67b16f13f0445add690a8df2">_RemminaPluginService::register_plugin</a></div><div class="ttdeci">gboolean(* register_plugin)(RemminaPlugin *plugin)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00148">plugin.h:148</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ae990775845392eace305018b4cd87662"><div class="ttname"><a href="struct___remmina_plugin_service.html#ae990775845392eace305018b4cd87662">_RemminaPluginService::gtksocket_available</a></div><div class="ttdeci">gboolean(* gtksocket_available)(void)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00223">plugin.h:223</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7665092e175fe8af02f5e2df7d6dd632"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7665092e175fe8af02f5e2df7d6dd632">remmina_plugin_xdmcp_tunnel_init_callback</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_tunnel_init_callback(RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00174">xdmcp_plugin.c:174</a></div></div>
+<div class="ttc" id="types_8h_html_a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a"><div class="ttname"><a href="types_8h.html#a64c62354cc2b7baa50e1d73dcd3df9c7ab0449f571d03e46b99b301792a5d8e1a">REMMINA_PROTOCOL_SSH_SETTING_TUNNEL</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00105">types.h:105</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a42e18171d023a93791dc7a84cd28f2f8"><div class="ttname"><a href="xdmcp__plugin_8c.html#a42e18171d023a93791dc7a84cd28f2f8">remmina_plugin_xdmcp_call_feature</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_call_feature(RemminaProtocolWidget *gp, const RemminaProtocolFeature *feature)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00332">xdmcp_plugin.c:332</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7acd735b6cf8c094479df760c61e78b7"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7acd735b6cf8c094479df760c61e78b7">remmina_plugin_xdmcp_on_plug_removed</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_on_plug_removed(GtkSocket *socket, RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00075">xdmcp_plugin.c:75</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_widget_html"><div class="ttname"><a href="struct___remmina_protocol_widget.html">_RemminaProtocolWidget</a></div><div class="ttdef"><b>Definition:</b> <a href="remmina__protocol__widget_8h_source.html#l00057">remmina_protocol_widget.h:57</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350a04da01eead7904a55d1c813950609b2d">REMMINA_PROTOCOL_SETTING_TYPE_SELECT</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00087">types.h:87</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_feature_html"><div class="ttname"><a href="struct___remmina_protocol_feature.html">_RemminaProtocolFeature</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00056">types.h:56</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a2b75137f9d7739c0d7881ee16e2aabfa"><div class="ttname"><a href="struct___remmina_plugin_service.html#a2b75137f9d7739c0d7881ee16e2aabfa">_RemminaPluginService::get_profile_remote_height</a></div><div class="ttdeci">gint(* get_profile_remote_height)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00225">plugin.h:225</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_setting_html"><div class="ttname"><a href="struct___remmina_protocol_setting.html">_RemminaProtocolSetting</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00094">types.h:94</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350aa045109309280606ff11a9de1862e2ba">REMMINA_PROTOCOL_SETTING_TYPE_RESOLUTION</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00083">types.h:83</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a1409dcc143ddc35de86b792df095cfc4"><div class="ttname"><a href="struct___remmina_plugin_service.html#a1409dcc143ddc35de86b792df095cfc4">_RemminaPluginService::protocol_plugin_get_file</a></div><div class="ttdeci">RemminaFile *(* protocol_plugin_get_file)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00160">plugin.h:160</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a7afe88899cc91a4454fce5240228b86c"><div class="ttname"><a href="xdmcp__plugin_8c.html#a7afe88899cc91a4454fce5240228b86c">remmina_plugin_xdmcp_open_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_open_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00255">xdmcp_plugin.c:255</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_aa98de02bb0de59df23792d3055558aca"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#aa98de02bb0de59df23792d3055558aca">_RemminaPluginXdmcpData::pid</a></div><div class="ttdeci">GPid pid</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00053">xdmcp_plugin.c:53</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_ae5d6630e713576f37dfedce6a1492903"><div class="ttname"><a href="xdmcp__plugin_8c.html#ae5d6630e713576f37dfedce6a1492903">remmina_plugin_xdmcp_close_connection</a></div><div class="ttdeci">static gboolean remmina_plugin_xdmcp_close_connection(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00294">xdmcp_plugin.c:294</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a105f3cbe86826bb563e0fa44e33e1c7d"><div class="ttname"><a href="xdmcp__plugin_8c.html#a105f3cbe86826bb563e0fa44e33e1c7d">remmina_plugin_xdmcp_basic_settings</a></div><div class="ttdeci">static const RemminaProtocolSetting remmina_plugin_xdmcp_basic_settings[]</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00365">xdmcp_plugin.c:365</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_afe3c32a421cd5dcc735b99318ff8844a"><div class="ttname"><a href="struct___remmina_plugin_service.html#afe3c32a421cd5dcc735b99318ff8844a">_RemminaPluginService::get_profile_remote_width</a></div><div class="ttdeci">gint(* get_profile_remote_width)(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00224">plugin.h:224</a></div></div>
+<div class="ttc" id="struct___remmina_protocol_plugin_html_a6e04143450eeb71e3d0b2c14983860a4"><div class="ttname"><a href="struct___remmina_protocol_plugin.html#a6e04143450eeb71e3d0b2c14983860a4">_RemminaProtocolPlugin::name</a></div><div class="ttdeci">const gchar * name</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00063">plugin.h:63</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_a9a05b19cdc0d2833bb951e5ae53a3beb"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#a9a05b19cdc0d2833bb951e5ae53a3beb">_RemminaPluginXdmcpData::thread</a></div><div class="ttdeci">pthread_t thread</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00059">xdmcp_plugin.c:59</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_xdmcp_data_html_a97724f69f01a2198b840af7573b49496"><div class="ttname"><a href="struct___remmina_plugin_xdmcp_data.html#a97724f69f01a2198b840af7573b49496">_RemminaPluginXdmcpData::socket_id</a></div><div class="ttdeci">gint socket_id</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00052">xdmcp_plugin.c:52</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_ac3fc04c8c7b20c35122e2786d9e8fc34"><div class="ttname"><a href="struct___remmina_plugin_service.html#ac3fc04c8c7b20c35122e2786d9e8fc34">_RemminaPluginService::protocol_plugin_register_hostkey</a></div><div class="ttdeci">void(* protocol_plugin_register_hostkey)(RemminaProtocolWidget *gp, GtkWidget *widget)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00162">plugin.h:162</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a258d391bcfff1409d27bee0743aec6c1"><div class="ttname"><a href="struct___remmina_plugin_service.html#a258d391bcfff1409d27bee0743aec6c1">_RemminaPluginService::protocol_plugin_set_height</a></div><div class="ttdeci">void(* protocol_plugin_set_height)(RemminaProtocolWidget *gp, gint height)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00153">plugin.h:153</a></div></div>
+<div class="ttc" id="types_8h_html_aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3"><div class="ttname"><a href="types_8h.html#aee1a3e130e6991978acd907b52204350ad898beb6ae625dee1ae27de75f1ab4e3">REMMINA_PROTOCOL_SETTING_TYPE_END</a></div><div class="ttdef"><b>Definition:</b> <a href="types_8h_source.html#l00079">types.h:79</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html_a673ff4320377c3b440dfd24a796c69fc"><div class="ttname"><a href="struct___remmina_plugin_service.html#a673ff4320377c3b440dfd24a796c69fc">_RemminaPluginService::file_get_string</a></div><div class="ttdeci">const gchar *(* file_get_string)(RemminaFile *remminafile, const gchar *setting)</div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00200">plugin.h:200</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a25e551a299d079ea2284cf3bb173ca26"><div class="ttname"><a href="xdmcp__plugin_8c.html#a25e551a299d079ea2284cf3bb173ca26">remmina_plugin_xdmcp_init</a></div><div class="ttdeci">static void remmina_plugin_xdmcp_init(RemminaProtocolWidget *gp)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00236">xdmcp_plugin.c:236</a></div></div>
+<div class="ttc" id="vnc__plugin_8c_html_ab96ef9227ecef94018f2729f72e7651e"><div class="ttname"><a href="vnc__plugin_8c.html#ab96ef9227ecef94018f2729f72e7651e">N_</a></div><div class="ttdeci">N_(&quot;Unable to connect to VNC server&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="vnc__plugin_8c_source.html#l00907">vnc_plugin.c:907</a></div></div>
+<div class="ttc" id="struct___remmina_plugin_service_html"><div class="ttname"><a href="struct___remmina_plugin_service.html">_RemminaPluginService</a></div><div class="ttdef"><b>Definition:</b> <a href="plugin_8h_source.html#l00147">plugin.h:147</a></div></div>
+<div class="ttc" id="xdmcp__plugin_8c_html_a56e5020de11446dbc23f3480e313f208"><div class="ttname"><a href="xdmcp__plugin_8c.html#a56e5020de11446dbc23f3480e313f208">remmina_plugin_entry</a></div><div class="ttdeci">G_MODULE_EXPORT gboolean remmina_plugin_entry(RemminaPluginService *service)</div><div class="ttdef"><b>Definition:</b> <a href="xdmcp__plugin_8c_source.html#l00410">xdmcp_plugin.c:410</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_38c8d24aef3972a7f87b834274e76e31.html">plugins</a></li><li class="navelem"><a class="el" href="dir_d1989cceabdfad53225af373aeeb6953.html">xdmcp</a></li><li class="navelem"><a class="el" href="xdmcp__plugin_8c.html">xdmcp_plugin.c</a></li>
+ <li class="footer">Generated by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
+ </ul>
+</div>
+</body>
+</html>